Agile Software
Development
Sri Sudhir Naidu
CS 532
Traditional Software
Development
Less communication between Customers and
clients.
Requirements process in sealed before
Analysis and design process.
Take more than estimated time and estimated
budget.
11/13/2019 2
Agile Modeling
What is agility ?
Where is it needed ?
What are Agile Software Development
models?
Why do we choose Agile Software
Development ?
11/13/2019 3
What is Agile Modeling (AM)?
A practice-based methodology for effective
modeling and documentation of software-
based systems. [1]
11/13/2019 4
The Goals of AM:
To put into practice, a collection of values,
principles and practices pertaining to effective
and light-weight modeling.
11/13/2019 5
The Scope of AM:
Figure : AM enhances other software processes.
11/13/2019 6
AM Values:
Communication
Simplicity
Feedback
Courage
Humility.
11/13/2019 7
AM Principles:
Assume Simplicity
Embrace Change
Incremental Change
Rapid Feedback
Model with a purpose and need multiple models
Software is the primary goal.
11/13/2019 8
AM Practices
Active Stakeholder Participation
Apply the Right Artifacts
Consider ownership
Consider Testability
Models in small increments and working
parallel
11/13/2019 9
Agile process Philosophy
Individuals and interactions over processes and
tools.
Working software over comprehensive
documentation
Customer collaboration over contract
negotiations.
Responding to change over following a plan.
11/13/2019 10
When is a Model Agile?
If there is a such thing as agile modeling, then
there are also agile models.
Agile models are good enough when they
exhibit the following criteria:
• They fulfill their purpose and no more.
• They are understandable.
• They are sufficient accurate.
11/13/2019 11
Agile Software Development
Methods (Processes)
– Incremental Small releases, rapid cycles
– Cooperative and communication
– Straightforward
– Adaptive
11/13/2019 12
Agile Models
XP( Extreme Programming)
Scrum
Feature Driven Development (FDD)
Dynamic Systems Development methods
11/13/2019 13
Conclusion: When go agile?
Uncertain & volatile requirements.
Responsible & motivated developers
Customers who understand and willing to get
involved.
AM manage and optimize cost and time of the
project.
11/13/2019 14
References
Manifesto for Agile software development;
http://agilealliance.com
New methodology; Fowler; Martin;
http://www.martinfowler.com/articles/newMethodology.html
Agile software development: Evidence from the field.
AlanMacCormackhttp://www.agiledevelopmentconference.com/
2003/ files/AlanAgileSoftwareJun03.ppt
11/13/2019 15