Electric Cloud: Brings Analytics to Software Mgmt

Electric Cloud continues to focus on pushing the state-of-the-art for software production management. Last week, EC brought in Bill Schmidt from Borland to recruit more EC partners, and last summer the company launched the first analytics for software build and release management. IDN talks with EC execs.

Tags: ElectricCommander, Management, Analytics, Reporting, Agile, Cloud, Automating,

Electric Cloud continues to focus on pushing the state-of-the-art for software production management by offering devs more insight, information and flexibility. Last week, EC brought in Bill Schmidt from Borland to recruit more EC partners, and last summer the company launched the first analytics for software build and release management.

IDN talks about EC's recent moves Erin Curtis, EC's director of product marketing, along with EC founder and chairman John Ousterhout. Before we get to the interview, here's a quick word about EC's latest hire and analytics upgrade.

EC Hires Borland Exec To Expand Ecosystem
Prior to joining Electric Cloud, Bill Schmitt was vice president Borland's corporate business development group, and also served in management positions at Autodesk and Agile Software. At EC, Schmitt will help build and grow the company's ecosystem of strategic partners in software development and accelerate their expansion into vertical markets.

"Software production is ripe for optimization as it is a serious bottleneck in many large and small software development organizations. Electric Cloud… is in an ideal position to partner with a broad set of companies to comprehensively address critical software development challenges for customers," Schmitt said in a statement

EC Brings Analytics to SDLC
On the technology front, EC added analytics and multi-level reporting to all 3 of its core products -- ElectricCommander ElectricAccelerato, and ElectricInsight. EC execs said their goal is to provide "business intelligence" to software architects and developers during just about all points of the SDLC (software development life-cycle). EC's new analytics capabilities provide devs these advantages:

  • Management Reports: ElectricCommander now includes management-level reports that provide cross-project summaries, variant trends, and daily summaries, to provide managers with information on key project trends for better predictability and informed decision-making.
  • Production Process Reports: ElectricCommander and ElectricAccelerator deliver new reporting capabilities for production processes that provide information such as how many tests were run, how many failed and which step caused the build to fail.
  • Individual Build Intelligence: ElectricAccelerator and ElectricInsight provide new detailed analytics about specific builds, such as how long each step in a build takes to run, exactly where dependencies exist (whether explicit or not), and a complete manifest of the components of a particular build.

  • Now, IDN's interview with EC's Erin Curtis and John Ousterhout.

    Integration Developer News interview with
    Erin Curtis, director of product marketing,
    John Ousterhout, founder and chairman
    Electric Cloud, Inc.

    TOPIC: Trends in SDLC, Builds
    IDN: What are today's most common causes of software "breaks" or long builds? Is it the same as 5 years ago?

    Curtis: We've definitely seen growth in build length and complexity over the past five years. Of 350+ software professionals we polled last year, almost half reported longer builds than they had a year earlier. One of the main drivers behind this growth is simply software complexity.

    Applications keep getting larger so builds take longer. Embedded application builds, for example, have grown in two ways. First - they've gotten longer. One customer had 30+ hour builds before using ElectricAccelerator. There's a lot of software in something like a mobile phone. The second way builds are growing is in number of targets. In the semiconductor space for example, you might have just a 20-minute build, but have to do that build for a dozen or more chipsets. This phenomenon does seem to be growing.

    TOPIC: Other Factors Impacting SDLC, Builds
    IDN: Interesting. Are there other factors you're finding that are impacting the length and complexity of a software build?

    Curtis: Yes, two in particular: Geographically distributed development, and the move toward more agile, iterative development. Let me briefly describe them:
  • Distributed development: as organizations become more distributed it is more important to automate the back-end processes. You can't have a single central build-meister fixing all of the problems when half of the team is in India and half is in Silicon Valley: the Silicon Valley build-meister isn't even awake when something breaks in India.
  • Agile development: one of the key principles of Agile Development is frequent integration and testing, both of which depend on reliable and efficient back-end processes. Many organizations are trying to become more agile, but discover that they cannot do it without major improvements in their back-end processes.

    TOPIC: Impact of Services, SOA on SDLC
    IDN: IDN: How is the move to services changing the overall SDLC (Software Development Lifecycle) for architects and devs?

    Curtis: It's interesting - software builds are basically orthogonal to what it is you are building. Building software for a mobile phone and building software for a service-enabled application is very similar, but each may have some unique challenges.

    For example, legacy C/C++ projects tend to have very long builds because they have grown into very large applications. Web services projects have more of a process challenge, where managing the build and release workflow is essential. The shift that really impacts builds is the shift of focus to the back end of ALM. We've already tinkered with tools and processes on the front end, so how do we continue to improve, and deliver better software faster? The next key to unlocking productivity is improving builds.

    TOPIC: Impact of Ajax, RIA on Builds, Tools
    IDN: How are Ajax and RIA effecting software builds or tools?
    Curtis: As software developers ourselves, we've leveraged Ajax in our ElectricCommander product. It allows us to deliver build management capabilities through a powerful web interface, so it can support developers working from anywhere.

    TOPIC: Jolt-Award Winning EC's ElectricCommander
    IDN: Let talk about ElectricCommander, which recently won a Jolt award for its approach to automating the software production management process (build/package/test/deploy tasks). How is that product changing the 'conceive-build-deploy' process for software?

    Curtis:Let me answer that in 3 parts:

    1. Frequent integration: The best indicator of software development success is working code. This is an idea that extends beyond the Agile methodology world - more and more teams, from ISVs to enterprise IT, are recognizing the quality and productivity benefits of integrating early and often. But you really can't do that if you have long builds or just many builds that are manually executed. So teams are increasingly shifting their focus and process/tool investments from just the front end of the development process (debuggers, IDEs, SCM tools) to the back end (build and release) and looking at tools like ElectricCommander.

    If you think about it, it wasn't too long ago that teams were "rolling their own" SCM systems or version control approaches. Now, you wouldn't dream of doing that, since there are great commercial and open source solutions available. Software builds are at that stage now - increasing numbers of organizations are seeing the value and cost savings of commercial build tools.

    2. Centralization: With very few exceptions, most of our enterprise customers come from a world where build infrastructures (scripts, hardware resources, whatever) are completely isolated. One ISV told us that there were probably 20-30 "build systems" throughout the company. They had no way of reusing processes or limiting duplicate work. By allowing multiple teams or locations to share the same system, ElectricCommander solves this build management problem.

    3. Analytics and Data:Development teams are also starting to leverage data from the build and release process as important metrics around project success. The build-and-release process is where all the pieces come together -- or not -- and thus it becomes the definitive measure of a project's overall health. The builds become the "heartbeat" of software development. Providing reporting and visibility into build processes (via dashboards, reports, etc.) is an important way ElectricCommander is changing the development process.

    TOPIC: Productivity from Parallelization
    IDN: Much of Electric Cloud's productivity originally came from parallelizing functions across clusters. Is that still the case, or is the underlying architecture changing?

    Curtis: Parallelization is still a key competency for Electric Cloud. Our ElectricAccelerator tool delivers dramatic build speed improvements, along the lines of 10-20x, with fine-grained parallelization across a cluster of machines. The "secret sauce," if you will, behind this approach is dependency management. We can monitor and manage dependencies at the file level to make sure they always run in the correct order.

    Our newest product, ElectricCommander, provides coarse-grained concurrency while automating and managing build and release processes. Coarse-grained concurrency means that the units of work that get run in parallel are fairly large, such as the complete build for one target platform or a test suite. This contrasts with ElectricAccelerator, which provides fine-grained concurrency: the units of work are very small tasks such as compiling an individual source file.

    ElectricCommander delivers speed improvements by 2-3x, but its primary benefit is automating manual tasks and enabling standardization and reuse of build and release processes.

    TOPIC: Updates on Tcl/Tk
    IDN: Given there is so much interest in the enterprise in Open Source and dynamic languages, what is the latest on Tcl?

    John Ousterhout: Several years ago I handed off responsibility for the ongoing development of Tcl/Tk to a collection of hard-core Tcl developers called the "Tcl Core Team". This group continues to evolve and improve Tcl/Tk, and there is still quite a large group of users that they support.