Aldon Gets Agile, In More Ways Than One
December 7, 2010 Alex Woodie
Aldon is going all in for agile development. The creator of lifecycle management tools for development teams recently introduced agile features in two products, include Agile Manager, a brand new Web-based tool designed to help teams organize the backlog of feature requests, and Community Manager, its IT service desk product. The company is also undertaking an interesting experiment with the free Agile Manager, which uses agile techniques to guide the evolution of the new product.
Agile has become a popular approach to software development that proponents say yields software that is more pertinent to the changing demands of the real world, and with less wasted effort.
The approach compresses the entire development cycle–including all requirement analysis, design, coding, testing, and packaging stages–into smaller, self-contained chunks that yields working software components in shorter amounts of time, often about two weeks, instead of many months or years with “heavyweight” development approaches, such as the waterfall method. Agile is also characterized by more open communication between developers and customers regarding what features should be developed.
Aldon has become a big proponent of agile in 2010, both in the way that it develops lifecycle management tools for developers, and in the types of features that it puts into its products, which are used by many IBM i shops developing in RPG. Both trends are apparent in Agile Manager, which became the company’s fifth major product when it was launched last week.
AM for Agile
Currently, Agile Manager (AM) offers just one core feature: managing the backlog and the list of features, enhancement requests, and bug fixes that software development firms must prioritize as they allocate developer resources. In agile development, the feature backlog is one of the most used and critical resources, as priorities change quickly in response to evolving customer demand.
AM saves managers time by providing a centralized repository of information about the backlog. Polls show that most project leaders manage the backlog using spreadsheets. AM improves upon this manual approach with tools for keeping track of individual development tasks, and the capability to perform mass changes across numerous entries. The Web-based product also provides dynamic sorting capabilities and an individual’s role, which can help participants visualize what they need to do next to keep the agile process flowing smoothly.
But perhaps the most promising aspect of AM is the way that Aldon plans to develop the software: using agile methods (of course!). Aldon has taken the feedback from early AM adopters, and compiled a list of feature requests to be added to the product in the future. This backlog–managed through AM–can be viewed at agile.aldon.com.
Aldon plans to hold elections to determine which features should be added first, which is one of the hallmarks of the agile process. One of the features that is likely to be added soon is the capability to import existing backlogs from Excel.
The AM community represents a new and experimental approach to software development, says Dan Magid, chief product strategist for Aldon. “It’s saying, ‘we’re going the whole hog,'” he says. “Not only are we using agile to get feedback from customers, but we’re asking them directly to tell us what they want it to do, and then we’ll build it. Developing the product this way to me is really an interesting and exciting thing, more so than the product itself.”
Devotion to Agile Techniques
The Emeryville, California-based company has been using agile development techniques since February. Specifically, the company has adopted the Scrum approach, which is one of the more popular methodologies that developers have used to get agile. Aldon has seven teams of two developers working in two-week “sprints,” which are self-contained development cycles used in agile development.
Aldon has also added backlog management capabilities to Community Manager (CM), its front-end help desk that’s used to enter change requests and incident reports into a central repository, and to assign and oversee the completion of work among IT workers, among other capabilities.
Just as AM allows users to manage the backlog in an agile way, new templates–that Aldon ships in CM version 9.5.4–allow IT personnel to prioritize the feature backlog within the CM product. The templates also allow users to run queries and reports on backlog items, and set the development priorities for teams of agile developers.
Aldon plans on adding more agile features to other products in response to customer demands, including a good number of IBM i customers. “We’re seeing a growing number of our customers saying they’re moving to some form of agile process,” Magid says. “Very few of our customers are going to 100 percent strictly agile development. Most of them are in some sort of hybrid environment. But they want support for this idea of iteration and sprints and backlog management. These are things we keep hearing from our customers.”
Magid probably wishes that Aldon had adopted agile development back in 1995. The company had decided to develop a help desk system, and set out to create it by way of the monolithic waterfall development method it had always used.
“We put into the initial release everything we thought a help desk product should do, and it took us three years to build,” he says. “We designed it and built it as a green-screen AS/400 application. During the three years we were doing all that building, the Web exploded, and by the time we delivered it, it became very clear nobody wanted a green-screen help desk system. Everybody wanted a Web-based help desk system, so we ended up selling 12 of those before killing it, and replacing it with CM, which is our Web-based system.
“The problem is,” Magid continues, “when you get into these really huge projects and you don’t deliver them for a long period of time, you’re assuming the marketplace is not going to change. And that’s not a real assumption.”
In his 30 years of experience in this field, Magid has come to realize that the developer seldom knows exactly what the customer really wants. In fact, the customer often doesn’t even know what the customer wants, until the product gets played with a bit–and even that is not static. “The problem with taking a big visionary leap that requires a huge amount of work in the waterfall approach is it requires you to have a crystal ball and to actually know what’s going to happen in the future, and the truth is you don’t,” he says.
Instead of trying to figure out all the things the program needs to do, and delivering it in the first release, agile development delivers the first step in that process. Once that’s done, you go back to the customer, seek more feedback, and build the second thing.
“You have vision of where this is going, but don’t try to anticipate everything the market is going to want, and build a huge monolithic system,” Magid says. “That way, you don’t find out three years later that you’ve delivered a green-screen application that nobody wants.”