Knocking Down Silos: Transitioning the Enterprise to Agile


effort is led by the silo of requirements experts. These highly trained business systems analysts represent an organizational attempt to enhance communication between heavily multi-tasked development teams, and the business clients that they serve. This particular silo has a weakness that is difficult to recognize, particularly in long project delivery cycles that result in infrequent feedback to the overall enterprise. That weakness is, bluntly, that the requirements experts ultimately have no skin in the game. By the time the long-lived project effort is completed, the originators of the requirements maze have long moved on to other projects, leaving the implementers to deal with backlogs efficiently gathered requirement specifications.

The Art of "Thrashing"
As the project planning cycle progresses, attempts must be made to maximize the number of projects each resource can simultaneously handle. This is a fundamental flaw of prioritizing projects, as opposed to individual business needs, and leads to the brittle state of the organization, which is poorly equipped to make changes based on business value and changing markets. The yearly budget cycle forces unproven efforts to predict precisely what market forces will occur over the next 18 months, and even more challenging are the technology changes that are anticipated over the same long period. The brittleness and change-intolerant state of the legacy enterprise is demonstrated by the rigorous change control boards that are in place to protect the over-committed project teams from more thrashing.

As project portfolio planning unfolds, the legacy waterfall life-cycle begins. Teams struggle to understand requirements during an analysis phase, and a backed-up queue appears with issues to be tracked to closure as analysis models are instantiated to vaguely represent the team's understanding of the requirements specifications. In order to track progress, well-meaning project managers report status on analysis models while the team attempts to interpret the system to be built. These analysis models are typically reviewed by the client in a formal inspection, but real progress in architecture and design cannot truly be made until implementation, when the real limitations and constraints are uncovered. The enterprise reacts to this dilemma with a silo of architects who attempt to enforce compliance based on last year's architecture mistakes. These groups typically are conservative and result in legacy code and applications existing well past there useful state, creating untestable code and infrastructures that further complicate the team's ability to deliver quality technical solutions that are unconstrained by infrastructure limitations. Legacy enterprise architecture silos tend to become ivory towers of idealists, who over time, lose collaboration with the project teams struggling to meet business needs while being forced to meet architecture requirements.

The Promise of Agile
The promise of Agile is that collaborative teams empowered to deliver business value are free to replace wasteful, over-engineered designs with working applications, backed up with automated testing, and fueled by rapid feedback from business clients and rapid technical validation. Well-formed Agile teams empowered to refactor at the appropriate time, can rapidly build trust from their clients without large up-front design efforts. Productivity gains expected from Agile are well established and representative expected metric gains are shown in Figure 2.[4] The next thrust for Agile evolution is now in transforming organizations to a scaled Agile structure.




Figure 2. Productivity (functional and test lines of code) expected from Agile (top) and Waterfall (below) software development approaches. By focusing on business value in short-cycle, incremental sprints, the Agile team quickly establishes a sustainable code growth rate, backed up by periods of refactoring. By keeping test code (and automated test counts) visible, the Agile team can show a growth rate that is

About the author

AgileConnection is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.