With an objective to enable continuous learning and progression for our learners, PremierAgile curated several learning articles in the areas of Agile, Scrum, Product Ownership, Scaling, Agile Leadership, Tools & Frameworks, latest market trends, new innovations etc...
Scrum is one of the most popular Agile frameworks. But, over the last few years, there are other Agile frameworks to develop products and services, creating a need to choose the one that suits you the most. As of the current day, there are more than fifty different Agile frameworks. Let us discuss a few major ones today.
In case you’re new to Agile then you must learn that Agile is a type of project management philosophy that is incremental & iterative based on its approach. The primary area where Agile is utilized is in software development. But, in the modern world, Agile can be applied to any organization of any industry.
Agile is different from the traditional waterfall approach and therefore is highly responsive to feedback & change.
A type of Agile framework that has originated from the Japanese language, the word ‘Kanban’ means a signboard or a visual board. The Kanban concept is connected to the Just In Time methodology. Back in the day, Kanban was primarily introduced as a Lean Manufacturing System, and then it was slowly introduced into Agile software development procedures. The Kanban framework uses visual elements for managing & developing projects.
Projects that are created with Kanban are overseen by the Kanban Board. The Kanban Board is divided into multiple columns to properly depict the process flow for the development of software. Such a process helps in enhancing the visibility among the team members because each team member can see what is happening and what isn't so that they prepare themselves for the upcoming task for final delivery of the product. It should be known this method will require thorough transparency as well as interaction between the team members so that proper development of the product can take place.
Kanban works on the three following principles:
Scrum is one of the most popular Agile frameworks out there. However, unlike Kanban, Scrum focuses on breaking down a single project into multiple parts, known as 'Sprints', where only one Sprint will be planned & managed at a time. Scrum also includes unique project roles such as Product Owner, Scrum Master, and Developers.
Scrum generally utilizes a Scrum Board, which is similar to the Kanban Board, and thereby group various tasks into multiple columns based on their overall progress.
The process of the Scrum framework is as follows:
Most people out there tend to mistake Lean with Agile (and vice versa), but it should be known that Lean is one of the many Agile framework types. Even though both are quite similar in terms of features, they're not the same thing. Lean is an abbreviation for Lean Manufacturing, which includes a specific set of managerial principles that the Japanese developed during the 20th century so that efficiency & value can be ensured in production. On the other hand, the Agile Manifesto was created in the year 2001.
The primary principles of Lean manufacturing are:
All of the above-mentioned principles were later assimilated into one of the most popular Agile frameworks, known as Lean Software Development. The concept of Lean was then broken down into the following set of simple principles:
With the help of Lean, businesses are encouraged to eliminate any procedure that hinders organization progress and only maximize the strategies that tend to work ideally for a given plan. For instance, to 'eliminate waste' an organization will cut down on time-consuming meetings, useless documents, and unproductive tasks that don't contribute towards productivity. Furthermore, Lean also stresses the importance of employees and they should collectively function together. Hence, respect for the employees or workers should be paramount because every person in a team of employees should know his or her role. As a result, each employee can trust the other.
DSDM was created out of sheer necessity when the entire software industry required an Agile framework that can help in delivering software rapidly. In DSDM, rework is expected to happen on the product after delivery and any additional development work that’s done should be reversible. Similar to Scrum, DSDM also uses the concept of Sprints.
The DSDM framework follows the below-mentioned set of principles:
Extreme Programming is one of the foremost Agile frameworks out there. In this procedure, both the Developers and customers should exhibit a high degree of participation. The customers will be responsible for inspiring additional development of a product by showcasing the most useful features, via multiple testimonials. On the other hand, the Developers will base every set of software updates according to the feedback received from the customer while also testing new innovative features every few weeks.
It should be learned that XP has its share of benefits & drawbacks. On the meritorious side, XP will always involve a higher level of collaboration along with a very minimal amount of documentation. Moreover, it's a persistent & efficient delivery model.
Alternatively, when talking about the demerits of XP, it should be known that this procedure needs proper discipline and involvement from all parties, to make it successful. Additionally, XP works the best for smaller teams in general that have Developers who are highly skilled & experienced, combined with a proven track record in management & communication.
The XP method follows the below-mentioned set of principles:
FDD is defined as a software-specific Agile methodology. This type of framework involves the creation of certain software models every fortnight and for each model, the design & development process is planned. FDD has much more rigorous documentation needs than Extreme Programming, which means that this process is great for a team that has advanced planning & design capabilities.
The process of FDD can be broken down into the following set of steps:
Crystal is a group of small Agile frameworks that include:
Each type of the aforementioned Crystal will have its Agile framework.
The Crystal framework focuses on talent, community, people, skills, communication, and interactions so that the best possible software development procedure can be ultimately delivered. Hence communication & constant reflection is necessary to bring the ideal amount of efficiency to the entire process. So, if a team is scattered across different areas and constant communication & reflection isn't possible, then this framework will be unsuccessful.
Compared to the different types of Agile frameworks mentioned above, traditional project management procedures have always been linear, making them predictable & slow. As a result, they have limitations such as slow response to market change. That’s where Agile frameworks came as a saving grace.
Even though Agile project management procedures are new to the current market (compared to traditional ones), they're still highly dynamic and adaptable to market alterations. Agile has helped in shortening development timelines, enhancing productivity, and thereby empowering teams to create magnificent products.