Agile Project Management Essentials
waterfall development model
-5 phases -requirements, design, development, testing, deployment
UP
-AUP -EssUP -Open UP
role of inspection and adjustment in the agile approach to development
-accommodate change in the development process
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
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
FDD processes
-develop overall model -build a features list -plan by feature -design by feature -build by feature
reduces risk of
-developing the wrong thing -building poor quality -not meeting the budget and schedule
empirical and iterative
-frequent evaluation and adaptation with flexibility to change based on new info -agile model is an example
development model
-helps ensure that no important aspects of development are overlooked -highly defined and linear -empirical and iterative
traditional iron triangle
-identifies 3 main types of constraints -scope, cost, schedule -the agile approach rejects this triangle -scope is main constraint
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
agile manifesto primary values
-individuals and interactions -working software -customer collaboration -responding to change
which agile value is difficult and expensive to uphold if you're using the waterfall model to develop software?
-responding to change
ASD phases
-speculate -learn -collaborate
scrum master main role
-to help team members achieve sprint goals
differences between the agile adapting and traditional controlling phases?
-adapting involves reassessing project deliverables -controlling involves working according to a pre defined plan
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
DSDM phases
-before project -project life cycle -after project completion
agile project management characteristics
-continuous improvement -cross functional teams -business priorities and customer value -incremental approach -short 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
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
agile
-doesnt focus on baseline -focuses on adjusting plans as a project progresses -with modifications made at the end of each iteration
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
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
agile project management phases
-envisioning -speculating -exploring -adapting -closing
product backlog
-evolves over the course of a project to list every possible project requirement -used to list all possible requirements during a project
project leader
-facilitates the work of a project teams -tracking progress with charts -help facilitate steams to ensure they meet their goals
project life cycle
-feasibility study -business study -functional model iteration -design and build iteration -implementation
waterfall weaknesses
-feedback is late -errors are identified late -changes are costly -uses linear approach to develop a product -
agile team
-first begins will priority items -works closely w/ one another to complete product one feature at a time
sprint
-fixed length development period -clear goal consisting of an agreed set of work items
characteristics of the agile model
-focus on continuous improvement -iterative and incremental development approach
lean
-focuses on eliminating unnecessary steps from development -eliminates project waste -helps streamline the development process
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
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
scrum master
-helps team members achieve project goals by holding daily stand up meetings
agile project management
-high level project scope -multiple iterations -self organizing teams -extensive customer involvement
scrum
-involves using a burndown chart to track progress
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
incremental model
-made of sequence of cycles -team complete a full development cycle to develop one or more the products features
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
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
XP principles
-pair programming -sustainable pace -ongoing automated testing
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
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
scope
-primary constraint bc its the first constraints thats known
agile manifesto secondary values
-process and tools -comprehensive docs -contract negotiation -following a plan
scrum team backlogs
-product and sprint
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
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
product manager
-promotes the vision for a product and prioritizes project requirements
benefits of agile team
-reduces risk -speeds up delivery -generates value -reduces cost of changes
cost
-refers limits posed by a projects budget
schedule
-refers to the time limit posed by deadlines -interim milestones and final release date
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 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
business analysts
-support an on site customer and refines the customers requirements
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
main role of the product manager in a lean project
-to promote the products vision
traditional vs agile planning
-traditional involves a detailed description of the project - agile involves rough estimates adn creating high level flexible project plan
during agile project, common methods used to monitor progress
-updating task boards to reflect completed customer requirements -using a burndown chart
ASD
-uses cyclical framework that focuses on speculation. collaboration, adn learning
agile triangle
-value is main goal - quality, and constraints as variables
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
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?
EssUP
emphasizes the concept of SOC