For years, software development and IT organizations have found themselves at odds, struggling to reconcile competing goals. In the past, technology limitations kept organizations from fully resolving this dilemma, but today, with new cloud computing technologies at our disposal, we are closer than ever to bridging the gap between development and IT. A dedicated development operations team can be the final piece of the puzzle, and I think 2011 will be the year that organizations recognize its value and development operations goes mainstream.
We hear it all the time from our customers: IT is overwhelmed by supporting the diverse tools developers demand, and hard-pressed to maintain security as multiple teams require access to many machines. Meanwhile, developers feel the pressure of meeting deadlines without adequate access to the resources they need, and are frustrated by jumping through hoops to obtain permission for resources that should already be at their fingertips.
Software development has an insatiable appetite for compute resources. Whether it is vast clusters for testing, dozens of machines to run ALM tools, or requests for “just one more box,” development teams are always asking for something. Multiply this by the number of development teams in your company, and it is easy to see why this is a big job for IT.
Development teams are striving for software output and quality, not resource efficiency. Each development group within an organization has unique needs to optimize its productivity and quality. If environment customizations and optimizations make development more effective, as they often do, they want their own resources, even if it means they get fewer of them.
IT’s response to these demands is to centralize where development tasks are run. The logic is that with a cloud of development resources, they can be shared across groups more efficiently, offering development additional resources.
IT’s goals differ from those of the development teams it supports. IT measures success by the efficiency, smoothness and cost effectiveness of the compute environment. A large, identically configured, scalable, uninterruptible environment that consistently delivers established levels of performance is ideal. In other words, the more IT can make things the same, the more efficient it can be.
Taken as a whole, the demands of IT and development make for an imposing list of requirements:
- Self-service – direct access to resources when developers need them
- Elasticity – resources that adjust to fluctuating demands
- Shareable – available to multiple individuals and groups without compromising anyone’s work
- Automation – development processes that are fast and easily repeatable
- Speed – capacity for parallel development to accelerate time to market
- Manageability – simple monitoring and control over access, allocation and performance of resources
- Security – privacy, and reporting for legal and regulatory compliance
Here is where a development operations team composed of people with developer savvy who know what developers need becomes essential. A skilled development operations team is uniquely positioned to recognize the needs of both development and IT, and thus able to create an environment that serves everyone well.
Once established, a development operations team can begin to implement change, beginning with building a private cloud of compute resources using virtual machines. Because it meets IT’s need for homogeneity and development’s need for configuration specialization, virtualization is a good first step, but it isn’t enough. What is really needed to bridge the gap is a framework that allows development to maintain control of what processes get run, who runs them, and how and when they end up on the compute cloud. The promise of self-service unlimited resources via the private cloud means the technology finally exists to create cooperation and cohesiveness between IT and development.
A development operations team proved invaluable for one of our customers, a financial services company with a development department composed of dozens of small teams dispersed around the globe. Because the development operations team was able to recognize the disparate needs of IT and developers, and assign ownership, the company was able to tackle the problem in a way that gave everyone the results they were looking for.
This development operations department implemented a private development cloud that enabled self-service for all of its teams and a fully automated software development cycle. The result is that the company’s developers now have access to exactly the resources they need, when they need them, and the automated process allows IT to precisely manage the entire development cycle, while keeping the whole system on a private cloud behind the company’s firewall allowed them to maintain the tight security required in the financial industry. This private development cloud has proved so effective that the company’s development teams have overwhelmingly adopted it voluntarily, with no corporate mandate.
This kind of progress is only possible with a dedicated development operations team that understands the needs of both development and IT, combined with technology that enables development on the private cloud. As more organizations recognize the inherent value of development operations and the potential of the private cloud, we can expect to see more success in bridging the gap between development and IT in 2011.
About the Author Mike Maciag is CEO of Electric Cloud, Inc. Prior to joining Electric Cloud, Mike was vice president of marketing and business development at MS2 (acquired by Agile Software (AGIL)), an enterprise software company he founded in 1998 where he established a new application category Product Lifecycle Automation (PLA). Prior to MS2, Mike played an essential role in establishing new markets at Electronics for Imaging and NetFrame Systems, Inc., which led both companies to successful public offerings. Mike also served as executive director of corporate development for Informix Software (acquired by IBM) where he managed the corporate venture fund, mergers and acquisitions, product marketing strategy and venture community relationship management.