BY PETER FRETTY * PHOTOS BY CHARLES SHEARN
ONE PROJECT AT A TIME, SOFTWARE DEVELOPERS ARE PROVING THAT AGILE TECHNIQUES HAVE A PLACE ALONGSIDE TRADITIONAL PROCESSES.
ON THE SURFACE, project management and agile development processes seem to bump heads. However, the two can be happily married to produce impressive offspring: In 2003, Shine Technologies found 93 percent of its clients reported improved productivity as a result of using agile methods, 88 percent found the quality of software applications better and 83 percent experienced better business satisfaction with the results, but also that agile methods should be utilized at least 88.5 percent of the time.
Analyst, Hyland Software,
Reading, Berkshire, U.K.
While project management and agile methods may initially seem contradictory, many software developers have found ways to prove that the two actually can work hand in hand.
Customer inclusion on the development team improves overall customer satisfaction with the product.
A rapid but sensible pace allows the customer to hit the marketplace with a premium proven product in place.
Using a story-based approach helps developers steer the client toward a living and highly scalable development.
“Traditionalists advocate using extensive planning, codified processes and rigorous reuse to make development an efficient and predictable activity that gradually matures toward perfection,” Barry Boehm, director of the USC Center for Software Engineering (USC-CFSE), wrote in “Get Ready for Agile Methods, with Care,” (Computer magazine, January 2002). This study was supported by the National Science Foundation, the Department of Defense Software Intensive Systems Directorate and USC-CFSE. “Meanwhile, a new generation of developers cites the crushing weight of corporate bureaucracy, the rapid pace of information technology change and the dehumanizing efforts of detailed plan-driven development as cause for revolution.” According to Boehm, this revolution has led to the “Manifesto for Agile Software Development.”
By keeping the basic project management framework at the forefront while adding adaptability and contingency, project managers can intimately involve the client during execution, rather than simply during planning and implementation. The result of this approach appears to be a higher level of user buy-in, which is crucial throughout the implementation of any project.
|The prime benefit of a |
blended approach was in the
flexibility that we brought to a
new business. A traditional
waterfall process would not
have allowed that flexibility.
|Matt Culbreth, |
Managing Partner, Development Practice, Intellinet Corp.,
Atlanta, Ga., USA
Company: Stratus Rewards
Business Need: An interactive means of lifestyle management for Stratus’ wealthy client base.
Solution: Produce an attractive and functional Web site and e-commerce application for Stratus’ credit card product.
ROI: Well-received application for a demanding clientele.
To provide Stratus Rewards, Santa Monica, Calif., USA, with a new financial service and lifestyle management product for wealthy individuals, Atlanta, Ga., USA-based Intellinet Corp. took a structured but flexible approach.
”[Stratus] needed a first-class Web site and e-commerce application for its credit card product,” says Matt Culbreth, Intellinet Corp.‘s managing partner, Development Practice. “The prime benefit of a blended approach was in the flexibility that we brought to a new business. A traditional waterfall process would not have allowed that flexibility.”
With FOCUS, an agile-oriented software program, a team develops a project in iterations but on an accelerated schedule, Mr. Culbreth says. “We spend the first iteration conducting a light analysis and design phase called Iteration Zero. We stress the importance of discovering the highest level and most important requirements and accepting the fact that we will uncover more requirements as the project progresses.”
During this process, Intellinet creates a series of three documents, or “artifacts,” to serve as a guide throughout the balance of the project. The artifacts include a project charter, a system requirements document and a system models document. The charter, written for the project manager and the executive sponsor, routinely covers the schedule and other high-level objectives. The requirements document lists the actors and goals as well as the high-level use cases and the models document diagrams the system.
Intellinet then designs the major components of the application and works with the client to schedule the release of application features, which allow the client to prioritize different elements. “With a traditional process, it might be six to nine months before users are seeing production code,” Mr. Culbreth says. “We like to get code in front of users in four weeks and release new versions of the code or develop new features four weeks after that. We keep going until we have addressed all of the important, high-level features documented in Iteration Zero.”
However, any agile method could be too flexible. “Although the agile method enables business functionality and an accelerated time to market, structured project management ensures repeatability,” Mr. Culbreth says. “That's why we use the Iteration Zero phase at the beginning and a set of deliverables that come out of it.”
Company: The Metropolitan Borough of Rochdale, U.K.
Business Need: Move away from paper-based management system to improve efficiency in meeting resident demands.
Solution: Fully computerized document management system.
ROI: Government Service Targets were achieved with access times reduced from 30 minutes to under five seconds per document.
While it is important to leave a paper trail—especially in a governmental environment—paper was beginning to overtake the U.K.‘s Metropolitan Borough of Rochdale, located 10 miles north of Manchester, and an old microfilm system was costly and cumbersome to maintain.
As a result, the Borough Council asked Reading, Berkshire, U.K.-based Hyland Software to design and implement a software system to meet the government's strict local authority tendering process, provide Web-oriented access, integrate a desktop Web mapping system with the local authority's back office and allow for rapid file retrieval for more than 200 users. In addition, the Borough wanted to provide a total imaged land history as well as flexible, scalable needs, such as integration to GIS, CRM and call-center technology.
Hyland focused on the governmental entity's planning and regulation department with an integrated document management system, including modules, document imaging from Kofax, a document import processor, CD-authoring capability and extended mail services. The Borough needed to reduce its cost and wanted to strip the cumbersome aspect from existing processes so that it could handle internal and external requests in a timely manner, especially because in the current situation, many of the documents and microfiche were housed in multiple locations.
1 Build a Toolkit. Because every project is different, do not force deveLopment into one specific model or methodology. Instead, deploy an assortment of techniques to come up with the best, individualized solution.
2 Big Picture Focus. Keep steady communication with the customer open at all times. This practice ensures that the result meets the long-term goal of the customer rather than simply satisfying the initial request.
3 Enable Adaptation. Even within a structured framework, allow adaptation to flow. The result easily can be a reduction in costly changes, an increase in productivity and a more appropriate business development.
The biggest challenge was to find out what items were most crucial to get into the system immediately. “It actually was the customer that was looking for us to implement an agile approach because they had a mandate to get their situation in order,” says Hyland's international solutions analyst Nicole Buehler. “They wanted to quickly implement a solution because they were having trouble meeting expectations. They also had building and fire code issues that had to be addressed immediately. As a result, we were able to come in and immediately provide a quick fix as agile dictates, while still keeping in mind that the system we were putting in place would serve as Rochdale's corporate standard throughout its various departments.”
A lot of time was spent talking about the Borough's future plans. “One of the key aspects is not necessarily to rush,” Ms. Buehler says. “By putting the brakes on and slowing things down it is possible to find future problems, which is definitely one of the benefits that a traditional approach provides. When you combine the two philosophies, you really have the balance between fixing an immediate problem and coming up with a long-term living solution. There were a few times where we actually had to slow the customer down and say where we saw future concerns with chosen directions.”
As a result of the blended approach, the entire project came in slightly under budget, and a major portion was delivered and implemented within six months. It is a continuing project, says Ms. Buehler, because Hyland now is helping Rochdale with its other departments, but this specific portion paid for itself within the first 12 months and all initial targets were achieved. “Access time has been reduced significantly—from 30 minutes to under five seconds per document. Plus, the Borough reclaimed two of its prime office spaces once dedicated to house files and microfiche,” she says.
— NICOLE BUEHLER
Company: Nationwide Financial Retirement Plans
Business Need: A pension management system capable of handling its natural market share acquisition.
Solution: Using a combined approach, ThoughtWorks developed a flexible system that has since been duplicated internally within Nationwide.
ROI: Nationwide's new approach to internal development allows it to effectively update its in-house product offering.
Chicago, III., USA-based Thought-Works Inc. was contacted by Columbus, Ohio, USA-based Nationwide Financial Retirement Plans to rewrite an existing legacy system that would allow the growing firm to effectively double its market share within the industry. “They were in a position where they needed a highly complex system to accommodate growth, yet they were still formally documenting their requirements, so our methodology really fit well with their need,” says ThoughtWorks’ Bangalore, India-based director of strategy and plans, Fred George. “We had a passion to eliminate waste in production and focus on requirement delivery, including having the first version running on the customer's desktop within six weeks.”
TELLING A STORY
Recognizing the success of the narrative approach, ThoughtWorks naturally has ingrained the combined method into its daily development process, says Gregory Reiser, PMP, vice president for Global Service Delivery. The traditional WBS is based on activities and tasks, such as an activity to implement the customer subsystem, and all of the analysis, programming, testing, database design and other tasks that contribute to that activity. Agile projects focus exclusively on delivering value to the customer. “Customers really don't care that the team needs to do some design work, code objects A, B and C, integrate with the accounting subsystem, etc., so agile projects focus on units of work that convey user-discernable value,” Mr. Reiser says.
“A story, however, is a description of system functionality from the perspective of an external entity. That is, an entity that interacts with the system, such as a user, another system, a batch scheduler, etc.,” Mr. Reiser says. “There are some similarities between stories and use cases, but stories tend to be more concrete, and their size almost always is limited to that which can be implemented within a single development iteration—typically two weeks.” It usually is possible to demonstrate a story to the customer upon its completion. ThoughtWorks typically treats all project tasks as stories, although they are not necessarily a user story.” This recognizes that supporting activities, such as a database conversion, still exist.
When Nationwide starting writing down the narrative (see sidebar, “Telling a Story”),ThoughtWorks was able to have the code approved and running within seven days, according to Mr. George. “Where this proved beneficial was that the customer was able to change its needs as we moved along, even though it was a fixed-bid project. For developers this is almost nirvana because every day they walk away knowing that they did something, which leads to extremely high job satisfaction,” he says. “When things go wrong, traditional managers usually would add an extra expert and create new documents, whereas using this method we will get rid of an unnecessary role to help find problems earlier.”
By using an average of 10 developers,ThoughtWorks delivered a well-received product in three releases, within approximately eight months and at roughly half the cost of Nationwide's competitive waterfall bid, Mr. George says. “The most rewarding aspect was that the client itself put two additional releases out using the same method at a comparable pace.”
Rather than planning one iteration at a time, ThoughtWorks also conducts upfront release planning, which briefly identifies as many stories as possible. “We then go through sequencing and put in a contingency because we know that things will change. The result is an executable, yet adaptive plan.”
Combining agility with structure requires a plan that everyone believes is deliverable with the right amount of contingency, according to Gregory Reiser, PMP, ThoughtWorks vice president for Global Service Delivery. “At the beginning and end of each stage it is crucial to make the required adjustments or adaptations,” he says. “You need to recognize that project tracking and planning are continuous processes.”
Product quality improved by using a story-based planning and development process with two-week iterations that ended with a demonstration of what was working for the customer, and less frequently deploying it in a user beta environment. “With this process, the designers know how the system will be tested, which not only helps them develop a higher quality system, it has an interesting side effect in that it actually causes or influences design,” Mr. Reiser says. “People will adjust the design to make testing easier.”
Mr. Reiser estimates that through the implementation of a mixed formula, ThoughtWorks was able to help the client deliver 90 percent of the initial requirement as well as another 15 percent to 20 percent not initially considered. “The adaptability is something that people need to understand. Understanding multiple methodologies and process frameworks is important. Most methodologies do not cover all aspects of well-run project,” he says. “You need to be able to augment as necessary. Most environments introduce constraints that may preclude the ability to employ certain practices by the book. For example, budget constraints impose requirements for scope flexibility, additional planning, effective change control or some combination of all three.” PM
Peter Fretty is a Whitehall, Mich., USA-based freelancer. His work has appeared in more than 40 trade and consumer magazines including Advanced Manufacturing, Continental In-Flight, Food Engineering and Industrial Engineer.
PM NETWORK | APRIL 2005 | WWW.PMI.ORG