At this year’s Electric Cloud Summit there was big focus on Agile software development practices. Even a casual look at Electric Cloud’s product line, which includes ElectricAccelerator, ElectricCommander, and most recently ElectricDeploy, will make it obvious that the company is firmly committed to the Agile and Continuous Delivery philosophies of software production.
While Accelerator optimizes builds and Deploy standardizes the deployment process, ElectricCommander is the tool that can actually make Agile a reality within an organization. This isn’t just because of how it automates vast chunks of the typical build/test/deploy workflow, but because it can help provide greater visibility over the entire software development lifecycle. Commander does many things out of the box, but the real value lies in its ability to be customized to the exact needs of your organization.
That said, just purchasing and installing Commander won’t transform your organization overnight. During the EC Summit, I heard the same kinds of questions over and over: “How do I get my team to adopt Agile?”, “How do I get the developers to stop using their old build systems and transition to Commander?”
The secret to Agile is NOT simply the tools — although they are a big part — it’s the people and the culture of the group that make Agile succeed or fail.
Reshaping the mindset of your employees is notoriously…squishy. Nothing is clear-cut and what works for one group may not work for another. Let’s consider common problems with Agile implementation and then discuss how using custom dashboards and user interfaces can resolve or alleviate them.
Agile implementation roadblocks:
- Developers have their favorite tools and are reluctant to give them up. While it’s true that a strong manager can simply mandate the use of new tools and that’s that, sometimes it’s not so simple. Office politics, personalities, and other complications can get in the way.
- Unfamiliarity with the new tool can result in costly errors, slow adoption, and time wasted retraining.
- Poor visibility across departments can result in slow iterations, making your Agile process not so agile.
How custom dashboards and user interfaces can help:
The point of a user interface is to abstract the inner workings of the software and present it in a way that is intuitive and relevant to the task the user is trying to accomplish. If your developers are reluctant to give up their old tools in favor of fully utilizing ElectricCommander there are a couple routes you can take to get them on-board:
- Create a Commander interface that mimics the old tool and its behavior. Recently, a client of SPK tried convincing his department to implement ElectricCommander across his organization. Change happens slowly at this client’s company, so SPK designed a user interface that approximated their existing build process.This reduced the learning curve for new users and added value by simplifying the overall process of using the system. As a result, resistance to adopting the new system plummeted as the custom UI required very little training to bring users up to speed.
- If mimicking the old system is impractical, a second option is to create a user interface that outperforms the old tool. This could mean that it’s tailored to the specific needs of your system and leaves out unnecessary features or, going in the opposite direction, it affords more features, making it a one-stop-shop for accomplishing related tasks.
The Agile process adapts quickly in order to closely align daily activities with an end goal of producing software that matches the customer’s changing requirements. In order to be adaptive, managers and developers need accurate information. Commander produces a large volume of data as it runs and unless that data is distilled into relevant information, it’s difficult to provide responsive leadership to your Agile team. By creating custom reporting dashboards, managers on multiple levels can have real-time information about their builds, resulting in earlier problem detection and faster resolution.
As previously mentioned, SPK had the opportunity to design a custom reporting dashboard for a client at the beginning of 2012. After catching up with this client at the end of the year, they marveled at how often their developers use their custom dashboard on a daily basis, and how the information it provides has resulted in significantly faster build times and higher quality system maintenance.
If you’re trying to implement Agile or simply convert your team over to Commander, custom interfaces and reporting dashboards can be the missing link to fully realize the goal of quick builds and responsive development. If you invest the money in a state-of-the-art build automation tool like ElectricCommander, you need your people to use it. If they aren’t, you’re not getting your money’s worth and you aren’t being as agile as you could. You also need to know how it is being used and the results it is producing. You can’t be responsive if you don’t know precisely what’s going on.