Agile ALM: Oxymoron No More AgileCycle Review By: Uttam Narsu
The Problem with Agile Tools A decade ago, most agile practitioners scoffed at the idea of agile tools. Traditional development and project management tools had been increasing their feature footprint for over a decade, and yet projects were still over budget, late, or lacking in quality. Tools weren't the solution; they were part of the problem, as the Agile Manifesto made clear: value Individuals and interactions over processes and tools. Agilists set out to develop new point tools that attacked the overhead in software development methods, tools and processes. Armed with these new tools, passion, and rigorous practices such as Extreme Programming, Scrum and Lean development, agilists stormed the gates of Enterprise development. The Agile movement, the biggest revolution in software development over the last twenty years, delivered large, industry-wide, time-to to-market and productivity gains. The result: the Agile movement, the biggest revolution in software development over the last twenty years, delivered large, industry-wide, time-to-market and productivity gains. Fast forward to today, and it's hard to find any mainstream IT shops without some Agile development. Yet Agile development's growth is slowing; further productivity gains are proving difficult without integrated tools, and growth into highly regulated industries governed by regulations such as HIPAA, BASEL II, LSF, and 21 CFR Part 11 are impossible without full traceability. Agile teams face an unappetizing choice: distinctly un-agile Application Lifecycle Management (ALM) solutions, or unconnected and unconsolidated point tools with adhoc integrations. AgileCycle's Compelling Value Today's announcement of AgileCycle offers a third choice: best-of-breed Agile Application Lifecycle Management (ALM), integrated, implemented and sold as a product suite. AgileCycle consists of AccuRev Enterprise Edition for Software Configuration Management (SCM), Rally Software's Rally Enterprise for Agile project and requirements management, and Urbancode's AnthillPro for build and release management. Normally, bestof-breed integrations are problematic for customers as each integration may be from a different vendor, making full traceability of artifacts difficult. However, AgileCycle's compelling value derives from: (1) the maturity of the core products; (2) having a single vendor for implementation, integration, training, and support; and (3) support for full traceability of artifacts across the lifecycle, from requirements to product release. All three companies have dedicated resources to ensure that the suite has full product management so that the integration and capabilities of the suite grow over time, yet remain focused on the needs of the Agile market. 2
Product Maturity AccuRev has been a leader in parallel and geographically distributed SCM for many years. Their product architecture fits well with companies moving to Agile development, since it supports a wide range of development methodologies from waterfall to iterative to Agile. The Enterprise Edition included in AgileCycle includes integrated issue-based workflow, process automation, refactoring support through full merge and rename tracking, private workspaces, and audit control and safety through fully atomic transactions. AccuRev's Enterprise Edition is in its fourth major release. AccuRev's products are used in over 600 global enterprises including Polycom, Texas Instruments, American Airlines, Orbitz, Thomson Financial, Verizon Wireless and Lockheed Martin. Rally Software's Rally Enterprise pioneered the use of Software as a Service (SaaS) for Agile ALM. Its products, Rally Enterprise and Rally Community were designed as Agile tools from the start, helping software organizations of all sizes incrementally adopt practices that shorten development cycles and collaborate across distributed teams and silos. Rally Enterprise provides rich project and program management, requirements management, and test and defect management. Rally's products, from the free community edition to the Enterprise edition, are used by 2,000 global customers including Cisco, HP, Standard & Poors, John Hancock and Intuit. Urbancode's AnthillPro was one of the first commercial Continuous Integration Servers, allowing consistent builds to be triggered upon any and every developer commit. AnthillPro has evolved to be become a Build Management and Application Lifecycle Automation Server, supporting rich process automation. Full automated deployments are supported with rolebased security, strict auditability, and traceability. Test Orchestration allows testing to be executed in parallel across multiple platforms either through the included test support or through integrations with HP Quality Center or Borland's SilkCentral. AnthillPro 3, the third major release, is used by hundreds of companies worldwide including Prudential, Fidelity, Nokia, Accenture, and Kraft. What's notable about all three companies, is that they all began at the time when the Agile movement was just getting traction in 2001-2002. Consequently, the principles of the Agile manifesto are deeply embedded in the culture of the companies and their products. 3
The Devil's in the Integration Unlike existing integrations being offered by AccuRev, Rally and Urbancode, AgileCycle is designed to be a single product, with further releases refining the features, user interaction and dashboards. Customer support will be through AccuRev Inc., and all three companies have committed support resources to the product suite. Customer implementation starts with a recommended set of best practices for Agile Product Management, Agile SCM, and Agile Build and Release Management. AccuRev's service offerings will then map the customer's processes and best practices using the existing product integrations. Given that typical implementation times for the core products are typically from one week to a month (depending on the project size), the service offerings should result in a quick, tight fit to the customer's needs. Such implementation flexibility is necessary to accommodate the common case where a customer prefers to use their existing defect and issue tracking systems, rather than the ones included with AgileCycle. By design, AgileCycle lets an organization decide where to implement issue tracking. A customer could choose to manage all issues in Rally, or in AccuRev, or in an external system like Bugzilla. AgileCycle reflects necessary pragmatism here, as most enterprises have widely varying development, build, and deployment practices and would reject a completely turn-key solution. As the AgileCycle suite evolves, AccuRev plans to refine all product integrations to minimize implementation time. One Vendor to Rule Them All AgileCycle is a very promising start due to the strength and maturity of the core products, and AccuRev's willingness to be the single source for sale, product implementation, and training/coaching/mentoring, leveraging strong service partners where needed. The key to making any integrated product suite work is strong product management, across all ownership boundaries to ensure that the product has its own identity, and its customer's needs are met. The key to making an Agile product work is to respect the ideas and motivations of the Agile movement, yet understand the needs of the Enterprise market. Agilists value individuals and interactions over processes and tools, working software over comprehensive documentation, customer collaboration over contract negotiation, and responding to change over following a plan. Yet implicit in these valuations are questions. How does Joe's water cooler discussion about a buffer overflow get logged as a defect, not as a vague interaction? What is working software anyway is it measured by test coverage? How is customer collaboration ensured by 4
visibility into the status of features, quality, priorities, roadblocks and risks? How do feature changes at iteration boundaries impact ship dates? All these questions (and many, many more) must be quickly answered by any development tools, not just Agile tools. Traditional ALM tools provide answers but disrespect agility through added ceremony and cost. Disconnected or partially integrated agile tools provide partial answers and don't meet enterprise needs for automation, security and compliance. AgileCycle, alone, promises to meet the needs of agile teams from small business to fully distributed, global enterprises. About the Author A well-known SCM analyst formerly with Forrester Research and Giga Information Group, Uttam Narsu has more than twenty years of experience as an analyst, speaker, architect, software developer, trainer, and consultant. 5