There are 7 methodologies under Agile. In 2001, 17 software developers created the Agile Manifesto. The purpose was to create products as per consumer requirements. In this article at DZone, Kristina Gjorgievska talks about 7 methodologies, 4 values, and 12 principles that build up the Agile landscape.
Agile is an idea and encompasses several methodologies, the values, and principles of which rest on the Agile Manifesto.
- Extreme Programming (XP): The most prominent of all the methodologies, XP stresses enhancing software quality and meeting clients’ shifting requirements.
- Scrum: This is used for teams comprising 3 to 9 members. They work in 3 to 4-week sprints and hold 15-minute daily standup calls for updates.
- Dynamic Systems Development Method (DSDM): This is more applicable to project management and non-IT projects.
- Adaptive Software Development (ASD): This completely replaces the old waterfall approach and constitutes of 3 stages—‘speculate, collaborate, and learn.’
- Crystal: This is the lightest and most flexible Agile methodology and focusses on transparent communication and collaboration of the people.
- Feature-Driven Development (FDD): This process has its objectives centered around client requirements.
- Lean Development: This Agile approach is a no-frills process where anything that is not making value addition to the clients is
- People-centric than Process-centric: Though software and processes are important for an organization to function, people create value by utilizing these assets.
- Product More Important than Detailed User Guides: The goal of a project should be to make a product that works as per expectation.
- Customer Loyalty Rules Out Contract Rigidity: Agile methodologies must involve customers more in the processes to increase engagement and collaboration.
- Favoring Change More than Plan: Agile methodologies should favor changes more than a plan to make the work environment more flexible to change and adaptability.
- Customer Experience: The projects should aim for faster and consecutive delivery to satisfy the customers.
- Flexibility to Change: The team members must oblige even the last-minute changes.
- Frequent Deliverables: Rather than months or years, the team should generate deliverables in quick intervals like weeks.
- Communication: From developers to sponsors, the communication must be incessant, transparent, and all-inclusive.
- Faith in the Team: The team will work closely if they have faith in the individuals that have taken up the tasks.
- Co-located Team: Agile methodologies work better with co-located team members for faster development, better coordination, and quality deliverables.
- Performing Software: The truest way of judging a project’s progress is by the software’s performance.
- Continuous Advancement: The team should work continuously to advance continuously.
- Attention to Details: The team should focus on achieving perfection and quality.
- Being Lean: It is important to prioritize the essential requirements first.
- Self-Motivated Team Members: When the team has full ownership of a project, the best planning, specifications, and proposals are generated.
- Continuous Improvement: The team must focus on continuous improvement for efficacy and adaptability.
To view the original article, visit the following link: https://dzone.com/articles/understanding-agile-software-development-with-mind