Agile SDLC Methodology SDLC Software Development Life Cycle
- Slides: 25
Agile SDLC Methodology
SDLC - Software Development Life Cycle Linear sequence of stages Phases in SDLC Requirement Design and Architecture Coding Testing Implementation Maintenance
Traditional SDLC Methodologies Waterfall Model Spiral Model Iterative Model V Model Big Bang Model Rapid Application Development Model
Project – What do we need to Know
Agile – When and Where 1970 , Dr. Winston Royce Criticized the Traditional SDLCs Questioned the adaptability of these methods to Software Development Agile Evolved from techniques developed at Du. Pont in the mid-80 s Further defined in works by James Martin and James Kerr et al.
Agile in a Nutshell Break Products into small incremental builds Builds are provided in iterations Duration- Iterations will be one to three weeks Cross Functional Teams work Simultaneously on Planning, Requirements Analysis, Design, Coding , Unit testing & Acceptance Testing Iterative Approach – Working Software delivered after each iteration
Redefining Agile A project management process that encourages frequent inspection and adaptation; a leadership philosophy that encourages team work, self-organization and accountability; a set of engineering best practices that allow for rapid delivery of high-quality software; business approach that aligns development with customer needs and company goals.
Agile SDLC
Myths No Detailed Documentation Open Communication with customer Adapt to changing Product Requirements Dynamically Test the Product Frequently
Components of Agile Methodology No Component Description Classification 1 Values A Standard considered worthwhile or desirable Communication Simplicity Feedback Courage Humility 2 Principles Basic Generalization that Core Principles can be accepted as true and Supplementary Principles that can be used as a basis for reasoning 3 Practices Process of doing (can be a performance or action) Core Practices Supplementary Practices
Agile Principles Assume Simplicity Incremental Change Maximize Stakeholder Investment Model With a Purpose Multiple Models Quality Work Rapid Feedback
Agile Practices Active Stakeholder Participation Collective Ownership Create Simple Content Depict Models Simply Display Models Publicly Prove it With Code Use the Simplest Tools
Agile Manifesto Principles Description Individuals & Interactions Self Organization & Motivation Working Software • Demo Working Software ( best means to communicate with customer) • No Detailed Documentation Customer Collaboration Continuous Customer Interaction • To get Proper Product Requirements • Cannot gather all requirements Initially Responding to Change • Focus on Quick responses to change • Continuous Development
People Involved in Agile The Agile Team Architects Developers, Analysts, Designers Quality Assurance, Testers Tech Writers Product Owners / Customer Representatives Project Managers / Scrum. Masters Note : Teams are small (~7), preferably co-located, cross functional. Scale by adding teams, not more people
Popular Agile Methods Rational Unified Process Scrum Crystal Clear Extreme Programming Adaptive Software Development Feature Driven Development
Scrum Iterative process of development used with agile software development. Roles in Scrum are the Scrum. Master, the Product Owner and the Team. During each sprint the team creates an increment of potential shippable software Set of features that go into each sprint come from the product backlog
Scrum (. . Contd) Which backlog items go into the sprint is determined during the sprint planning meeting. The team then determines how much of this they can commit to complete during the next sprint. During the sprint, no one is able to change the sprint backlog.
What is a Backlog? A backlog is the master list of all functionality Features Epics Stories Requirements Bugs Item Attributes: Description Cost estimate (points or size) Business Value Priority
Product Backlogs vs. Sprint Backlogs A Product Backlog is the master list of all functionality for the product Features Epics Bugs The Sprint Backlog is the list of functionality that the team is committing to complete in the current iteration Storied Requirements Bugs Product Management / Owner owns the backlogs
Agile Planning Beginning of iteration Review vision and roadmap Review development status, architecture and previous iterations Determine velocity Review team availability & capacity Review definition of done Review product backlog & select items for iteration / sprint Identify tasks & estimates Identify challenges & risks Review capacity required COMMIT (planning not over until entire team commits to sprint plan)
Agile Reports Product / Sprint / Iteration Backlog Release Burn-up chart (to show % complete) Defects – inflow, outflow, # of open defects per week Build quality per day/week Number of tests / tests passed per day/week Velocity over the last x sprint Action items, risks Burndown Charts (to show remaining effort)
Agile Retrospectives Meeting after an increment of work to inspect and adapt their methods and teamwork What went well, What could be improved Team learning Catalyst for change Generate action Sample Agenda Overview Gather data Prioritize Discuss Action Items
Agile Methodologies Feature-driven Development (rare) an iterative development process. This practice is driven from a client-valued functionality (feature) perspective. Test-driven Development (rare) is a software development technique that uses short development iterations based on pre-written test cases that define desired improvements or new functions. Each iteration produces code necessary to pass that iteration's tests.
Agile Methodologies Lean (rare) is a process designed to eliminate waste, amplify learning, make decisions late, fast delivery, empowered teams, product integrity and an fully understood system.
Thank You
- Siklus hidup produk sunlight
- Sdlc conclusion
- Lec hardver
- Oosdlc
- Odw 5e ch05 arrange the software development life cycle
- Odw 5e ch05 arrange the software development life cycle
- Capability maturity model sdlc
- New embedded product development
- Application lifecycle management hp
- Peter williams microsoft
- Chapter 3 agile software development
- Agile embedded software development
- Agile software development cockburn
- Is agile capitalized
- Manifesto for agile software development
- Agile iso 9001
- Chapter 3 agile software development
- Chapter 3 agile software development
- Seagile
- Crystal agile methodology
- Requirements gathering techniques agile
- Traditional systems development life cycle
- Software
- New product development and product life cycle strategies
- Contoh database planning
- Multimedia development life cycle