Different Agile Frameworks
Here are 7 Different Agile Frameworks which are used by different IT teams for Development.
1. Kanban
2. Scrum
3. FDD (Features driven development)
4. XP (Extreme Programming)
5. Crystal
6. Lean
7.DSDM (Dynamic system Development Method)
1.Kanban-Kanban originated from Japanese word “Kanban” which means Signboard or visual board. Kanban concept is just connected with In-Time methodology .it was primarily used in manufacturing system then slowly introduced in software development. Visual elements are used for Development and managing the projects in Kanban Framework.
Project which are created using kanban framework are overseen by kanban board. Kanban board is represented by swim lanes (columns) which depict different stages of project and process flow of software development. This process enhances the visibility among the team members, they can see what is happening and what is not, so they can plan for the upcoming tasks and final project/product delivery. This method requires full transparency and communication between the team members so proper development of software can take place. Kanban follows continuous working on tasks in queue, one task completes then other task in queue can be taken to work upon.
Kanban work on three principals as follows:
- Visualize the work that is to be done at given time.
- Creating boundaries regarding the amount of work to be done , so team shall avoid over commit or additional work.
- Boosting the workflow so next item can be taken from queue when existing item is about to end.
2.Scrum– Scrum is one of the most used Agile framework in software development these days. Scrum breaks down the single project into multiple small parts known as “Sprints”. Here only 1 sprint is planned and managed at a time outcome of sprint is known as “Increment”. Multiple or single increments can be used to release some specific functionality in the software project. Scrum has unique roles as Scrum master, Product owner and Developers.
Scrum uses the scrum boards to visualize the progress in the project which is similar to kanban board (only difference between scrum board and kanban board is scrum board is created for sprints and kanban is for overall project tasks).
Scrum framework process as follows:-
- Product owner (PO) will create the estimated Wishlist which will known as Project/product Backlog.
- The scrum team will take few items from Top Ranked by PO and work on them to turn them into increment, these items become sprint Backlog. Team works toward the completion of sprint backlog.
- Daily progress status discussion on items is known as daily scrum.
- At the end of sprint increment is reviewed by stakeholder and feedback is provided on what when wrong and what when well before starting new sprint.
- Scrum master facilitate the team to focus on the tasks.
3.FDD:- FDD is known as Feature driven Development is defined as software specific Agile methodology. This framework involved in creation of software models every fortnight and for each model design and development process is planned. FDD has much more documentation needed than others methodologies, so the process is good for team which has advanced design and planning capabilities.
The FDD process involved following steps.
- Try to develop and overall model.
- Create a set of features.
- Plan by feature.
- Design by feature.
- Build by feature.
4.XP- Extreme programming (XP) is one of the mostly used agile methodology.in this methodology Customer and developer have high degree of involvement. The customer holds the responsibility of providing inspiration for further product development by showcasing the most useful features through various testimonials. On the other hand, developers will test new, innovative functions every few weeks and base each round of software updates on customer feedback.
XP has its own set or pro and cons. Meritoriously speaking, XP will always require greater collaboration and less documentation in addition to its dependable and effective delivery methodology.
Alternatively, when saying demerits of XP, this method need more collaboration and discipline between all parties to make it successful. XP works best with smaller teams and developers who are more experience and highly skilled with good track record in management and communication.
XP follows the below set of principles.
- Uniformity
- Simplicity
- Endurance
- Communication
- Feedback
5.Crystal- Crystal is group of small agile frameworks that include-
1. Crystal Yellow (10-20 Person team)
2. Crystal Clear ( Team upto 8 person)
3. Crystal Red (20-50 Person team)
4. Crystal Orange (50-1000 Person team)
Each type of crystal mentioned above will have its Agile framework.
Crystal focuses on the Talent, skills, people, community, communication and interactions so best possible software can be delivered. Communication and continuous interaction is essential so that entire process is efficient. So if the team is scattered in different areas and effective communication is not possible then this framework will not be successful.
6.Lean– The majority of people frequently confuse lean with agile, or vice versa, however it’s important to understand that lean is just one of several Agile frameworks. They are not the same thing, despite the fact that their features are rather similar. Lean is an acronym for lean manufacturing, a collection of specialised management concepts that were established in the 20th century by the Japanese to guarantee value and efficiency in production. Conversely, the Agile Manifesto was developed in 2001.
Primary principals of Lean are:-
- Value stream mapping
- Identifying value
- Creating a pull system
- Creating a continuous workflow
- Continuous improvement
Lean software development, one of the most well-known agile frameworks, eventually incorporated all of the ideas mentioned above. After that, the Lean concept was divided into the following list of basic principles.
- Deliver fast
- Eliminate waste
- Have respect for people
- Create Knowledge
- Build quality
- Optimization
- Always defer commitment
Businesses are encouraged to use Lean to maximise the tactics that tend to function best for the given plan and to eliminate any procedures that restrict organisational growth. For example, reducing waste in an organisation means reducing time-consuming meetings, pointless paperwork, and ineffective tasks that don’t boost production. Additionally, Lean emphasises how important employees are and how well they should work as a team. Because each member of the team of employees should be aware of their own position, respect for employees or workers should be of the utmost importance. Each employee may trust the other as a result.
7.DSDM (Dynamic system Development Method)- The entire software industry needed an agile framework to aid in the rapid delivery of software, which is why DSDM was created. Rework on the product is anticipated in DSDM after delivery, and any further development work should be reversible. Sprints are a concept used by DSDM that is similar to scrum.
DSDM follows the below principles: –
- Show control
- Focus on the needs of business
- Collaborate
- Always deliver on time
- Develop Iteratively
- Do not compromise on quality
- Build great foundations
- Always communicate clearly and continuously.
Conclusion
Traditional project management techniques have always been linear, predictable, and slow in comparison to the various agile framework types previously discussed. They are therefore limited in ways like their slow reaction to changes in the market. The Agile methodology was a saviour in this situation.