Agile Practice- Chapter 3 Flashcards
Life Cycle Selection
Approach used based on the project
Predictive Life Cycle
Traditional approach with the bulk of the work done upfront, then executing in a single pass; Activities performed in a single pass
There can be projects with a predominantly predictive approach with some elements of agile.
Example- An engineering firm that is building a facility with a new component. The majority of the project is routine and predictable; incorporating a new component (roofing material) would mean an agile approach (iterative) to test the roofing material
Characteristics of Predictive Life Cycle
(Non-Agile Approach)
- Low risk
- Stable Team
- Requirements are firm
- Single Delivery
Goal- Manage Cost
Predictive Life Cycle Model
Analyze-Design-Build-Test-Deliver
Iterative Life Cycle- Flow
Allows feedback for unfinished work to improve and modify that work; it allows feedback on partially completed or unfinished work
Characteristics of Iterative Life Cycle
- Improve the product or result through successive prototypes or proofs of concepts
- Each prototype yields stakeholder feedback and team insights
- Team incorporates new information by repeating one or more projects into the next cycle
- High complexity projects
- Frequent changes
- Scope is subject to differing stakeholder’s views of the final project
- Takes longer
Iterative Life Cycle- Flow
Analyze- Analyze Design (Prototype)-Build/Test (Refine)- Deliver
Incremental Life Cycle
Provides finished deliverables that the customer may be able to use immediately
Increment- A functional , tested and accepted deliverable that is a subset of an overall project
Incremental Life Cycle Characteristics
1 Performed once for a given increment
2. Frequent smaller deliveries
3. Optimizes work by delivering value to sponsors/customers more often than a single final product
4. Plan initial deliverable before beginning their work and they begin work on that first delivery as soon as possible
Goal- Speed; businesses can’t afford to wait until everything is finished. Customers are willing to receive a subset of the final project.
Incremental Life Cycle-Flow
Analyze Analyze Analyze
Design Design Design
Build Build Build
Test Test Test
Deliver Deliver Deliver
Agile Life Cycle
An approach that is both iterative and incremental to refine work items and deliver frequently
Agile approaches can have predictive components.
Example- A particular element is non-negotiable or not executable using an agile approach. Integrating an external component developed by a different vendor that can’t or will not partner in an incremental way. Especially if a single integration is required.
Agile Life Cycle Characteristics
- Repeated until correct
- Frequent small deliveries
- Iterate over the product to create finished deliverables
- Team gains early feedback and provides customer visibility, confidence, and control of the product
- Team can release earlier; project may provide early return on investment because the team delivers the highest value work first
- Team expects requirements to change
- Delivery uncovers hidden or misunderstood requirements
Agile Iteration Based Life Cycle- Flow
Requirements
Analysis
Design
Build
Test
Each timebox is the same size and results in working tested features. The cycle repeats as needed.
Agile Flow-Based Life Cycle- Flow
Requirements
Analysis
Design
Build
Test
Each timebox is different. In the flow, the time it takes to complete a feature is not the same for each feature. Work in progress (WIP) limits set the amount of work that can exist in a work flow.
Assessment Models
Exist to help determine the likely fit or gaps for using agile approaches
These should be completed as a group.
Small group should consist of sponsor, technical lead, and customer.
Large group should consist of sponsoring group, project execution team, impacted business groups, governance group, customer community
It is important to follow the consensus.