You are on page 1of 19

Agile Methods

•Agile model is a combination of iterative and incremental


process models with focus on process adaptability and
customer satisfaction by rapid delivery of working software
product.
• Agile Methods break the product into small incremental builds.
These builds are provided in iterations.
•Every iteration involves cross functional teams working
simultaneously on various areas like planning, requirements
analysis, design, coding, unit testing, and acceptance testing.
Cross-functional Team

• Every agile team should be a self-sufficient team


with 5 to 9 team members and an average
experience ranging from of 6 to 10 years.
Typically, an agile team comprises of 3 to 4
developers, 1 tester, 1 technical lead, 1 product
owner and 1 scrum master.
Cross-functional Team
Twelve Principles of Agile Manifesto

• Customer Satisfaction
• Welcome Change 
• Deliver a Working Software 
• Collaboration 
• Motivation 
• Face-to-face Conversation 
• Measure the Progress as per the Working
Software 
• Maintain Constant Pace 
• Monitoring 
• Simplicity 
• Self-organized Teams 
• Review the Work Regularly
agile approaches.

• Crystal Technologies
• Atern(formerly DSDM)
• Feature-driven Development
• Scrum
• Extreme Programming(XP)
Four core values of agile methods
1. Individual and interaction over processes and
tools
2. Working together over comprehensive
documentation
3. Customer collaboration over contract
negotiation
4. Responding to change over following a plan
ATERN/DYNAMIC SYSTEMS DEVELOPMENT
METHOD
• Atern is an agile project delivery framework that
delivers the right solution at the right time.
Eight core Atern principles are
1. Focus on business need.
2. Deliver on time.
3. Collaborate.
4. Never compromise quality.
5. Develop iteratively.
6. Build incrementally from firm foundations.
7. Communicate continuously.
8. Demonstrate control.
Atern process model
Feasibility/foundation
• This phase outlines of the proposed architecture of the
system to developed
Exploration cycle
• This investigates the business requirements which are
translated into a viable design for the application
Engineering cycle
• This takes the design generated in the exploration cycle and
converts it into usable components of the final system that
will be used operationally
Deployment
• This gets the application created in the engineering cycle into
actual operational use
• DSDM is a methodology that prioritizes schedule
and quality over functionality.
• DSDM uses the MoSCoW method of
prioritization, which breaks a project down into
four different types of requirements:
– Must have (M)
– Should have (S)
– Could have (C)
– Won’t have (W)
• Must have :that is essential features
• Should have :mandatory, but the system can
operate without them
• Could have :can be delayed with some
inconveniences
• Won’t have :delay is readily accepted
Extreme Programming(xp)

• XP is a lightweight, efficient, low-risk, flexible,


predictable, scientific, and fun way to develop a
software.
• eXtreme Programming (XP) was conceived and
developed to address the specific needs of
software development by small teams in the
face of vague and changing requirements.
• Extreme Programming is one of the Agile
software development methodologies.
Extreme Programming
• Extreme programming takes common principles to extreme levels
• The foundations of XP are
Communication and feed back.
• Face to face communication to provide the user with frequent
working increments
Simplicity
• simplest design
Responsibility
• the developers are ultimately responsible for the quality of the
software
Courage
• Courage to try out new ideas and start a new one if user not satisfied
• Software Engineering involves −
– Creativity
– Learning and improving through trials and errors
– Iterations
Embrace Change

• A key assumption of Extreme Programming is that the


cost of changing a program can be held mostly
constant over time.
• This can be achieved with −
– Emphasis on continuous feedback from the customer
– Short iterations
– Design and redesign
– Coding and testing frequently
– Eliminating defects early, thus reducing costs
– Keeping the customer involved throughout the development
– Delivering working product to the customer
Scrum

• It is the most popular agile framework, which


concentrates particularly on how to manage
tasks within a team-based development
environment.
• Scrum uses iterative and incremental
development model, with shorter duration of
iterations.
• Scrum is relatively simple to implement and
focuses on quick and frequent deliveries.

You might also like