Download presentation
Presentation is loading. Please wait.
Published byArthur Byron Henderson Modified over 9 years ago
1
Agile Process: Overview n Agile software engineering represents a reasonable compromise to conventional software engineering for certain classes of software n Agile development processes can deliver successful systems quickly n Agile development stresses continuous communication and collaboration among developers and customers
2
Manifesto for Agile Software Development n Better to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan n While the items on the right are still important the items on the left are more valuable under this philosophy
3
What is “Agility”? n Rapid and adaptive response to change n Effective communication among all stakeholders n Drawing the customer onto the team n Organizing a team so that it is in control of the work performed Yielding … n Rapid, incremental delivery of software
4
Agile Teams n are responsive to changes during project development n recognize that project plans must be flexible n eliminates the separation between customers and developers
5
Agility n encourages team structures that make communication among developers and customers easier n emphasizes importance of rapid delivery of operational software and de-emphasizes importance of intermediate work products n can be applied to any software process as long as the project team is allowed to streamline tasks and conduct planning in way that eliminate non-essential work products
6
An Agile Process n Is driven by customer descriptions of what is required (scenarios) n Recognizes that plans are short-lived n Develops software iteratively with a heavy emphasis on implementation n Delivers multiple ‘software increments’ n Adapts as changes occur
7
Human Factors n Traits that need to exist in members of agile development teams: Competence Common focus Collaboration Decision-making ability Fuzzy-problem solving ability Mutual trust and respect Self-organization
8
Agile Process Models n Extreme Programming (XP) n Adaptive Software Development (ASD) n Dynamic Systems Development Method (DSDM) n Scrum n Crystal n Feature Driven Development (FDD) n Agile Modeling (AM)
9
Extreme Programming (XP) n The most widely used agile process, originally proposed by Kent Beck n XP Planning Begins with the creation of “user stories” Agile team assesses each story and assigns a cost Stories are grouped to for a deliverable increment A commitment is made on delivery date After the first increment “project velocity” is used to help define subsequent delivery dates for other increments
10
Adaptive Software Development (ASD) n Self-organization arises when independent agents cooperate to create a solution to a problem that is beyond the capability of any individual agent n Adaptive cycle characteristics Mission-driven planning Component-based focus Uses “time-boxing” Explicit consideration of risks Emphasizes collaboration for requirements gathering Emphasizes “learning”
11
Dynamic Systems Development Method n Provides a framework for building and maintaining systems which meet tight time constraints using incremental prototyping in a controlled environment n Uses Pareto principle (80% of project can be delivered in 20% time required to deliver the entire project) n Each increment only delivers enough functionality to move to the next increment
12
Dynamic Systems Development Method n Guiding principles Active user involvement Teams empowered to make decisions Fitness for business purpose is criterion for deliverable acceptance Iterative and incremental development needed to converge on accurate business solution All changes made during development are reversible Requirements are baselined at a high level Testing throughout life-cycle
13
Agile Modeling n Practice-based methodology for effective modeling and documentation of software systems in a light-weight manner n Modeling principles Model with a purpose Use multiple models Travel light (only keep models with long-term value) Content is more important than representation Know the models and tools you use to create them Adapt locally
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.