Agile Project Management Essentials

agile project management characteristics
-continuous improvement
-cross functional teams
-business priorities and customer value
-incremental approach
-short iterations
agile
-doesnt focus on baseline
-focuses on adjusting plans as a project progresses
-with modifications made at the end of each iteration
agile approach
-project team develops a product incrementally over multiple iterations
-after each iteration a completed feature of product is reviewed
-any change to project requirements are then incorporated in subsequent iterations
traditional team
-develops a detailed schedule that groups all tasks that are to be completed in 4 phases
-planning, designing, coding, testings
-follows defined plan set up at that the beginning of a project
agile team
-first begins will priority items
-works closely w/ one another to complete product one feature at a time
benefits of agile team
-reduces risk
-speeds up delivery
-generates value
-reduces cost of changes
reduces risk of
-developing the wrong thing
-building poor quality
-not meeting the budget and schedule
agile manifesto primary values
-individuals and interactions
-working software
-customer collaboration
-responding to change
agile manifesto secondary values
-process and tools
-comprehensive docs
-contract negotiation
-following a plan
agile principles
-satisfy the customer
-welcome change
-deliver software frequently
-work together
-motivate individuals
-use face to face comms
-working software=progress
-constant pace
-technical excellence
-simplicity
-self organizing teams
-reflection
examples of principles
-team releases a new feature every 3 weeks over course of project
-team contacts the customer wherever they want to check details of whats required
-team tracks its progress based on how many features are fully functional
development model
-helps ensure that no important aspects of development are overlooked
-highly defined and linear
-empirical and iterative
defined and linear
-predictive
-planned in detail before they are performed
-steps it describes are taken in sequence and its difficult to revisit a step to make a change
-waterfall model is an example
empirical and iterative
-frequent evaluation and adaptation with flexibility to change based on new info
-agile model is an example
waterfall development model
-5 phases
-requirements, design, development, testing, deployment
waterfall weaknesses
-feedback is late
-errors are identified late
-changes are costly
-uses linear approach to develop a product
incremental model
-made of sequence of cycles
-team complete a full development cycle to develop one or more the products features
agile model
-overall development process into increments
-ordered and developed over multiple iterations
-each iteration includes a complete development cycle
-continuous feedback thru an iterations life cycle
project plan
-helps project managers execute and control the phases of a project
-scope, cost, schedule, activities, deliverables, milestones, resources
-provides info about features and delivery deadlines, without prescribing detailed activities
defined plan acts with project plan
-prescribes the scope, budget , and schedule for a project
-carefully planned and project stakeholders must approve it to ensure it complies with the requirements
-prescribes all aspects of a project that a project team must adhere to
empirical plan acts with project plan
-acts a guide that will change as requirements change
-plan should be detailed enough to get started w/ the 1st iterations of work but doesn’t necessarily define later work in too much detail
role of inspection and adjustment in the agile approach to development
-accommodate change in the development process
traditional iron triangle
-identifies 3 main types of constraints
-scope, cost, schedule
-the agile approach rejects this triangle
-scope is main constraint
scope
-primary constraint bc its the first constraints thats known
schedule
-refers to the time limit posed by deadlines
-interim milestones and final release date
cost
-refers limits posed by a projects budget
agile iron triangle
-reverse the traditional triangle
-schedule is main constraint and cost adn scope are the variables
-measures projects success in terms of ability to respond to change or meet its main goal
agile triangle
-value is main goal
– quality, and constraints as variables
how does the traditional iron triangle not conform to agile values?
-it doesn’t measure a projects success in terms of its ability to deliver value
what agile principles does the traditional iron triangle violate?
-welcome change
-use working software as the primary measure of progress
-ensure that members of development teams are highly motivated
-deliver working software frequently
which agile value is difficult and expensive to uphold if you’re using the waterfall model to develop software?
-responding to change
characteristics of the agile model
-focus on continuous improvement
-iterative and incremental development approach
agile project management phases
-envisioning
-speculating
-exploring
-adapting
-closing
agile project management
-high level project scope
-multiple iterations
-self organizing teams
-extensive customer involvement
traditional vs agile planning
-traditional involves a detailed description of the project
– agile involves rough estimates adn creating high level flexible project plan
how do agile exploring adn traditional executing phases differ?
-during agile exploring phase, project plans are adjusted as needed
-in executing, project plans are not
differences between the agile adapting and traditional controlling phases?
-adapting involves reassessing project deliverables
-controlling involves working according to a pre defined plan
product manager
-promotes the vision for a product and prioritizes project requirements
scrum master
-helps team members achieve project goals by holding daily stand up meetings
project leader
-facilitates the work of a project teams
-tracking progress with charts
-help facilitate steams to ensure they meet their goals
business analysts
-support an on site customer and refines the customers requirements
in an agile project management role, how do you communicate with the on site customer and rest of the project team ?
-help to facilitate comm between the customer and the team
-communicate the teams constraints to the on site customer
scrum meeting questions
-what work have i completed since the last scrum, and why?
-what do i plan on completing between now and the next scrum?
-do i have any roadblocks or problems that the team can help overcome?
sprint
-fixed length development period
-clear goal consisting of an agreed set of work items
scrum team backlogs
-product and sprint
product backlog
-evolves over the course of a project to list every possible project requirement
-used to list all possible requirements during a project
sprint backlog
-details the work items that team members have agreed to complete in a given length
-once a sprint starts, no changes should be allowed to interfere
XP
-discipline approach
-provides a programmer centric model thats focused on the on going rapid delivery of small releases of software
-usually 30-180 days
-involves using customer stories to plan coding tasks
XP principles
-pair programming
-sustainable pace
-ongoing automated testing
lean software development principles
-eliminate waste
-incorporate continuous learning
-delay decisions
-deliver software quickly
-empower the programming team
-focus on system integrity
-focus on the whole system
lean
-focuses on eliminating unnecessary steps from development
-eliminates project waste
-helps streamline the development process
scrum
-involves using a burndown chart to track progress
FDD
-all aspects of the software development process are planned, managed, and tracked at level of individual features
-uses a prescriptive and planned development process
-focuses on planning, managing, and tracking product features
-completed features are also used to measure the teams progress
FDD processes
-develop overall model
-build a features list
-plan by feature
-design by feature
-build by feature
DSDM
-main goal is ensuring the fitness of developed products for their intended business purposes
-focuses on ensuring the fitness of products for their business purposes
-provides a business based approach to development
-project life cycle phase has 5 stages
DSDM phases
-before project
-project life cycle
-after project completion
project life cycle
-feasibility study
-business study
-functional model iteration
-design and build iteration
-implementation
ASD phases
-speculate
-learn
-collaborate
UP
-AUP
-EssUP
-Open UP
EssUP
emphasizes the concept of SOC
crystal
-includes methodologies for projects of different size and complexity
-teams define their own coding standards and testing practices
-different methodologies are available for project of different complexity
ASD
-uses cyclical framework that focuses on speculation. collaboration, adn learning
scrum master main role
-to help team members achieve sprint goals
main role of the product manager in a lean project
-to promote the products vision
XP project team roles
-programmers discuss and resolve programming concerns
-testers look for possible flaws
-designers help to simplify complex designs
-coaches help teams to achieve goals
during agile project, common methods used to monitor progress
-updating task boards to reflect completed customer requirements
-using a burndown chart