Ever since the Agile Manifesto was written in 2001, created by Jeff Sutherland after a brainstorming session with some other industry greats to discuss ways of speeding up their development process, it has become the go-to for many businesses. The interesting thing is that there is not just one way you can go about using Agile in the development process. There are several different kinds of the methodology used.
To help you find the Agile framework that might be best for your operations, in the following post we are going to look at some of the most commonly used.
DSDM (Dynamic Systems Development Method)
DSDM was developed to meet the demand for a rapid software delivery framework. One of the main stipulations of the Dynamic Systems Development Method that is important is that reworks are expected and that any changes made in the development can be reversed. Sprints are used as many of the other frameworks we will discuss and DSDM is built upon 8 crucial principles:
- Business needs are the focus
- Timely deliveries
- Quality should never be compromised
- Gradual building up, always starting with solid foundations
- Develop various versions of the same thing to get to the best outcome
- Clear and continuous communication throughout
- Control demonstrated
Scrum is one of the most popular and is in many ways like Kanban, the next in our list. With Scrum, you have the Scrum Board and the grouping of tasks in columns as a way of showcasing progress. The main difference between Scrum from Kanban, however, is the breakdown of projects into sprints and each sprint being undertaken at a time. There are also roles within projects that are unique to Scrum, such as Product Owner and Scrum Master, which individuals can qualify for with Agile Scrum Master Certification.
Similarly, Kanban is a very easy to follow and visual project management framework that has a focus on visibility. The original design of Kanban was for scheduling, as shown in the way it assists teams in executing just-in-time productions as everyone can see what’s currently happening with a project and what needs to happen next. Kanban Board is the element used to manage projects with there being three key columns – To Do, Doing, and Done.
Rather than being one framework or methodology, Crystal is the umbrella term for a whole group of methodologies. These include Crystal Red, Crystal Orange, Crystal Yellow, and Crystal Clear to name a few. With each of these unique methodologies, you will find there are unique frameworks. The right one for your project will depend on various criteria, including the criticality of the project, priorities, and team size. The philosophy behind this take on Agile is that no two projects are alike and as such require different processes, practices, and policies.
FDD (Feature-Driven Development)
Feature-Driven Development, or FDD for short, is another software-focused form of Agile. It involves the regular creation of models of software on a fortnightly basis with a design and development plan in place for each version. As such, compared to other frameworks and methodologies, this requires stricter collating of data, record keeping, and documentation. This option is better suited to teams that have experience in advanced planning and design. All projects are broken down with FDD into the following five activities:
- Development of the basic model
- Feature List creation
- Plan based on features
- Design based on features
- Build based on features
XP (Extreme Programming)
Another Agile framework designed with software development projects in mind, XP, or Extreme Programming Is very much focused on developing and delivering to the customer of software continually. Sprints and intervals are used, which makes it sound a little like Scrum. The major difference is that there are 12 software development-specific processes involved:
- Small-Scale Releases
- Testing of Customer Acceptance
- Simplistic designs
- Pair programming
- Development driven by tests
- Constant integration
- Collective Code ownership
- Standards of coding
- Manageable pace