What are the Agile Framework Options, and which is the best choice for you development project? Are there frameworks that are better for different software products?
The Agile Frameworks
A 59 Seconds Agile Video Animation
The Agile Frameworks for Developers – Part 2
A 59 Seconds Agile Article
For Crystal Clear in software development, there is a greater emphasis on developers and their skills. Even in the same organization, different developers have different backgrounds and specialties. As a result, each programmer is more or less equipped to work on certain parts and features. Crystal Clear seeks to maximize the effectiveness that developers would have on particular tasks. The idea is that if developers work in an environment that they are experienced in, they will ultimately create better software.
In practice, Crystal Clear is better suited for shorter and smaller projects. It does not have the consistent pace that Scrum has, but does allow developers to work efficiently in the short term. Crystal Clear projects that run on longer timelines are more likely to build up technical debt than other Agile frameworks.
Agile Framework Options: Lean
One of the oldest Agile frameworks, Lean is based on the Japanese automotive industry of the 1950’s. These companies sought to reduce loss and keep a sustainable production pace. With such limited resources and so susceptible to the effects of loss, the industry needed to minimize risk at the cost of possibly slower production.
Lean development is great for start-up companies with limited capital and resources. With this reduced risk, start-up ideas are more likely to last longer and have a better chance to reach the market. Developers in this environment should expect to take very calculated and planned steps. Without the safety net of an established organization, start-up companies must be careful not to make bad decisions. As such, they typically only assign programming tasks when they have been determined to be the best way to move forward.
Agile Framework Options: Extreme Programming (XP)
As the name implies, XP takes Agile ideas to the logical extreme. Many Agile frameworks keep some similarities with traditional methods, but extreme programming only keeps what is absolutely necessary. This bare-bones approach works best for smaller and more simple projects that need to be released quickly.
For developers in XP environments, there is even less overhead and planning than in most Agile frameworks. Since projects that use XP are typically kept much smaller, documentation and specifications are less necessary. Teams are small, typically 12 or fewer people, with only enough members to complete the work. Any more people than necessary adds to the bulk of the team and reduces the efficiency of the bare bones approach of XP.
Since each of these frameworks is a style of Agile software development, there are some common threads. As a development method, Agile is fast-paced. Therefore, each of these frameworks is more fast-paced than traditional development methods. Similarly, all Agile frameworks encourage colocation and short development cycles. Each of these frameworks is adaptable and responds to change rather than sticking to a set plan.
Each of these frameworks follows the Agile principles and core tenants. The differences are simply the finer details of implementation. Each organization and project is going to work better with one framework over others. It is important that the organization decide which flavor of Agile works best for them.
User Stories Applied by Mike Cohn is one of our favourite books on Agile User Stories. The book starts with an overview into user stories, and details what a user story is and the different aspects of them. He then discusses how to go about writing a user story, and provides details of the INVEST criteria that can be used to determine if the story is meeting all of its objectives. Next Mike gives an in depth discussion of who user stories are written for and where to begin when gathering the details for them. The book then discusses acceptance testing user stories, including how to go about specifying these criteria and the responsibilities of the development team and customers during this process.
Our Favourite Agile Books
We found these books great for finding out more information on Agile Scrum: