Agile Project Management What is agile project management The differences between agile and waterfall PM Agile PM frameworks Project Management Lucie Reczzkova B304 Reczkova@opf.slu.cz Office hours: Wednesday 10-11.30 Learning objectives On the end of this lecture you should be able to understand and explain: •What is Agile project management •What is the difference between agile and traditional project management •What frameworks are used in agile project management • • • • Key readings You can find support in the following sources: Layton, M. C. and Ostermiller, S. J. (2017) Agile Project Management For Dummies. 2nd edn. Hoboken: John Wiley & Sons, Ltd. • • • • PART 1 What is agile project management? • Agile project management is an iterative approach to managing projects that focuses on continuous releases and then incorporating customer feedback with every iteration (smaller segments of the overall project). Agile project management is popular in software development and in project where are unknown requirements. Scrum is very well-known form of agile project management. • • Example of agile project • Tenká šipka zatočená proti směru hodinových ručiček se souvislou výplní Creating a grocery store app In store shopping Online ordering Tenká šipka zatočená proti směru hodinových ručiček se souvislou výplní Tenká šipka zatočená proti směru hodinových ručiček se souvislou výplní Finding items quickly in the store Tenká šipka zatočená proti směru hodinových ručiček se souvislou výplní Order online in simple and effective way Tenká šipka zatočená proti směru hodinových ručiček se souvislou výplní Easy search function within an aisle number when using in store shopping app Tenká šipka zatočená proti směru hodinových ručiček se souvislou výplní https://www.youtube.com/watch?v=2ltB6MK_pes Scrum Terminology Product Backlog – sets the priorities for the agile program -Wishlist of everything for a product including new features, changes to existing features, bug fixes, infrastructure changes or other activities that a team may deliver in order to achieve a specific outcome. -Single authoritative source for things that a team works on. Sprint Backlog – is the work the team will complete within specific time -Sprints usually between 2-4 weeks -Items are selected from the Product Backlog to be worked in the sprint. - Scrum Terminology User Story – Short, simple description of a feature the user or customer wants. -Ideally, a user story is small enough to fit within one project sprint. -For example, you were producing a book. If you could complete each chapter in a sprint, each chapter would become a user story. How agile projects work • •An agile project involves the same type of work as in a traditional waterfall project: ØYou Create requirements and designs, develop the product, document it, and if necessary, integrate the product with other products. • ØYou test the product, fix any problems, and deploy it for use. However, instead of completing these steps for all product features at once, as in a waterfall project, you break the project into iterations, also called sprints. How agile projects work • Source: Layton, M. C., Ostermiller S. J. 2017. Agile Project Management, p. 15 What is the difference between Waterfall and Agile project management? Waterfall Agile What is the difference between Waterfall and Agile project management? Start and manage the project •Waterfall •We outline following upfront: •Business case – why we start the project •Project charter – resources and finding •Project management plan – planning upfront schedule, scope, costs and quality of our project •Triple constraints •Agile •Most of the documents used in waterfall replaced by: •Team charter - ways of team working agreed by team • •High level model of system using any kind of diagram • • • • • •Business model canvas or Lean canvas What is the difference between Waterfall and Agile project management? Requirements •Waterfall •Requirements documentation including acceptance criteria •Requirements from our stakeholders •Agile •More focus on people (our customer), real things, and testing •Business model canvas •High level model system •Acceptance criteria for test driven development What is the difference between Waterfall and Agile project management? Create and manage scope •Waterfall •Project scope statement •Project scope statement in details with high level of features •Prioritizing of scope •Work breakdown structure (WBS) we used in Project software •Work package – the most detailed WBS • •Agile •Product Backlog – list of high level features or ideas that break down into User stories(10-50) that we complete during a spring •Story-board, Process map or Prototypes to show how our scope looks like •User Story mapping (features in order of customer use, broken down to User stories •Small increments (can be completed within a Sprint) •Sprint Review (for Story acceptance) – we show what we have created to our customer for review What is the difference between Waterfall and Agile project management? Create and manage the Schedule – to put scope in schedule •Waterfall •Break our scope into activity list •Estimated activity duration •Sequence of activities •Create project schedule (Gantt chart) •Agile •Product Road Map • • • • •Sprint Planning – how many user story cards can we fit in one Sprint to have sustainable pace to match the Team velocity. What is the difference between Waterfall and Agile project management? Manage Project Costs •Waterfall •We estimate work and other resources costs for each task in our project (done in MS Project) •We estimate our reserve budgets •On the basis of these estimations we get Approved project budget • •Agile •Fixed costs (stable, whole team of 5-9 people) •The team works for as long as the budget lasts •They deliver as many features as they can from the Product backlog •They start with delivering of the highest value items first What is the difference between Waterfall and Agile project management? Managing the quality of the project •Waterfall •Test and inspection plan • •Agile •We are doing small increments, we deliver and test, •Testing while we are going •Code inspection for quality check •Unit testing – for each value on user card •Release planning – plan for our feature releases •The sprint review – at the end of the 2 weeks we will check the increments we want to deliver to our customer What is the difference between Waterfall and Agile project management? Plan and manage resources •Waterfall •Estimated Resources required •Resource Breakdown structure (MS Project) •RACI matrix •Team calendar and team charter •We have done all these in MS Project •Agile •Team charter •The whole team approach – we bring all those who we need to complete the features •T-shaped team - wide range of experience across different other skills, but one deep specialty • • •Pair/side-by-side programming – working together What is the difference between Waterfall and Agile project management? Project communication across the project •Waterfall •Communication styles assessment – analyze and define how all information will be communicated throughout the project •Stakeholder Communication needs document •Agile •Open Visual Team area – on the walls •Daily stand-ups – 15 mins everyday catch up •Retrospective on the end of the sprint •Sprint planning – planning our sprint to not overload or underload our team •Sprint review – catching up as a team and demonstrating the real product to customer What is the difference between Waterfall and Agile project management? Risk management •Waterfall •Risk analysis •Risk definition and categories •Risk classification by likelihood and impact •RIPRAN method •Agile •Risk Adjusted Backlog •Brainstorming risks with our team and put them in the Backlog and then we prioritize them with our work and put these risks into sprints while sprint planning • What is the difference between Waterfall and Agile project management? Deployment •Waterfall •Change management when we deliver our project product •Agile •Low or no documentation •Small features are released incrementally •Customer is part of the team and they pass information https://www.youtube.com/watch?v=3KgjfqiN2fE Time for recap - let’s watch together https://www.linkedin.com/learning/project-management-foundations-15528659/what-is-agile-project-man agement • PART 2 Agile project management frameworks A project management framework is a collection of tools, tasks, and processes used to organize and execute a project from initiation to completion. A framework outlines everything you need to plan, manage, and control your projects successfully. • • • Scrum – The entire scope of work is broken down into short development cycles – Sprints -The sprint’s duration is from 1 to 4 weeks usually 2 weeks -The team should strictly follow a work plan for each sprint -People involved in a project have predefined roles. Kanban – Focuses on a visualized workflow with tasks broken into small pieces. -helps teams execute just-in-time (JIT) production by enabling everyone to see both the project’s progress and what’s coming up next. -uses a board to help view and keep track of progress, segmenting tasks into three primary columns: “To Do,” “Doing,” and “Done.” However, unlike Scrum, the Kanban board tracks all product work without separating it into sprints. A project management framework is a collection of tools, tasks, and processes used to organize and execute a project from initiation to completion. A framework outlines everything you need to plan, manage, and control your projects successfully. Agile project management frameworks • Extreme programming (XP) – initially designed for Agile software development projects. -Like Scrum, this framework focuses on continuous development and customer delivery and uses intervals or sprints. -XP framework is centered on engineering principles Feature-driven development (FDD) – aims to create software models every two weeks. -It also requires a separate development and design plan for every software model feature, making it more documentation-heavy than other Agile frameworks. -Due to its rigorous documentation requirements, FDD is better for teams with advanced design and planning abilities. - Crystal - is a family of Agile methodologies, including Crystal Clear, Crystal Yellow, Crystal Orange, Crystal Red, and more. -Each crystal methodology has a unique framework, and the one you choose depends on several project factors, such as your team size, project priorities, and project criticality. https://www.wrike.com/project-management-guide/project-management-frameworks/ References • •Layton, M. C. and Ostermiller, S. J. (2017) Agile Project Management For Dummies. 2nd edn. Hoboken: John Wiley & Sons, Ltd. • •