Agile Principles and Mindset PDF
Document Details
Uploaded by SplendidPolarBear4662
null
null
null
Tags
Summary
This document provides an introduction to Agile methodologies and principles, particularly focused on iterative development processes. It covers characteristics of agile practices, their benefits, concurrent development, and the Agile Declaration of Interdependence (DOI).
Full Transcript
Agile Principles and Mindset What is Agile Developed for Software projects, but it is a methodology that can be used on all Projects...
Agile Principles and Mindset What is Agile Developed for Software projects, but it is a methodology that can be used on all Projects types Agile is an umbrella term that is used to refer to different types of iterative development Scrum is the most common method of agile, there are others such as extreme programming (XP), lean development, and Kanban. Agile Project Management, ©TIA Education Group. DO NOT SHARE. Characteristics of four life cycles PMI Agile Practice Guide, Page 18 table 3.1 Agile leverage both aspect of Iterative and incremental Agile Project Management, ©TIA Education Group. DO NOT SHARE. Agile Benefits Customer involved throughout the life cycle Greater Customer Interaction with all stakeholders Constant Feedback is required to stay current and successful Greater Value up front Change is welcomed by all stakeholders Agile Project Management, ©TIA Education Group. DO NOT SHARE. Agile Concurrent Development Fund incrementally – opt to extend, redirect or cancel at a very granular level Deliver & realize value steadily Validate designs with users & customers Continuously adapt to risk and change Integrate early & often Agile Project Management, ©TIA Education Group. DO NOT SHARE. Agile Declaration of Interdependence (DOI) Agile and adaptive approaches for linking people, projects and value We are a community of project leaders that are highly successful at delivering results. To achieve these results: We increase return on investment by making continuous flow of value our focus. We deliver reliable results by engaging customers in frequent interactions and shared ownership. We expect uncertainty and manage for it through iterations, anticipation, and adaptation. We unleash creativity and innovation by recognizing that individuals are the ultimate source of value, and creating an environment where they can make a difference. We boost performance through group accountability for results and shared responsibility for team effectiveness. We improve effectiveness and reliability through situationally specific strategies, processes and practices. ©2005 David Anderson, Sanjiv Augustine, Christopher Avery, Alistair Cockburn, Mike Cohn, Doug DeCarlo, Donna Fitzgerald, Jim Highsmith, Ole Jepsen, Lowell Lindstrom, Todd Little, Kent McDonald, Pollyanna Pixton, Preston Smith and Robert Wysocki. Agile Project Management, ©TIA Education Group. DO NOT SHARE. Agile Mindset Welcoming change Working in small value increments Using build and feedback loops Learning through discovery Value-driven development Failing fast with learning Continuous delivery Continuous improvement Agile Project Management, ©TIA Education Group. DO NOT SHARE. Agile vs. Traditional Project Management Agile builds in increments vs. as a whole Agile does planning throughout vs. done all at once Agile delivers products over time vs. all at once Customers sees value faster vs. at the end Agile wants changes vs. discouraging changes Agile Project Management, ©TIA Education Group. DO NOT SHARE. Inverting the Triangle Fixed Time Cost Scope Agile Traditional Scope Time Cost Variable Agile Project Management, ©TIA Education Group. DO NOT SHARE. Agile Manifesto Create in 2001 Contains: ◦ 4 values ◦ 12 guiding principles https://agilemanifesto.org/ Agile Project Management, ©TIA Education Group. DO NOT SHARE. The Agile Manifesto Values We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals & interactions over Processes & tools Comprehensive Working software over documentation Customer collaboration over Contract negotiation Responding to change over Following a plan That is, while there is value in the items on the right, we value the items on the left more. www.agilemanifesto.org Agile Project Management, ©TIA Education Group. DO NOT SHARE. Individuals and interactions over processes and tools While processes and tools will likely be necessary on our projects, we should focus the team's attention on the individuals and interactions involved. Projects are undertaken by people, not tools Problems get solved by people, not processes Projects are ultimately about people Agile Project Management, ©TIA Education Group. DO NOT SHARE. Working software over comprehensive documentation Focus on the delivering value vs. paperwork. Agile documents should be barely sufficient Done just in time Done just because Delivering software that does what it should comes first, before creating documentation. Agile dramatically simplify the administrative paperwork relating to time, cost, and scope control Agile Project Management, ©TIA Education Group. DO NOT SHARE. Customer collaboration over contract negotiation Be flexible and accommodating, instead of fixed and uncooperative Manage change, don’t suppress change Shared definition of “done” Requires trusting relationship Agile Project Management, ©TIA Education Group. DO NOT SHARE. Responding to change over following a plan Spend effort and energy responding to changes Software projects tend to have high rates of change Agile Project Management, ©TIA Education Group. DO NOT SHARE. Agile Guiding Principles 1-3 1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. 2. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage. 3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale. Agile Project Management, ©TIA Education Group. DO NOT SHARE. Agile Guiding Principles 4-6 4. Business people and developers must work together daily throughout the project. 5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. 6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. Agile Project Management, ©TIA Education Group. DO NOT SHARE. Agile Guiding Principles 7-9 7. Working software is the primary measure of progress. 8. Agile processes promote sustainable development. The sponsors, developers)and users should be able to maintain a constant pace indefinitely. 9. Continuous attention to technical excellence and good design enhances agility. Agile Project Management, ©TIA Education Group. DO NOT SHARE. Agile Guiding Principles 10-12 10. Simplicity; the art of maximizing the amount of work not done is essential. 11. The best architectures, requirements and designs emerge from self-organizing teams. 12. At regular intervals, the team reflects on how to become more effective then tunes and adjusts its behavior accordingly. Agile Project Management, ©TIA Education Group. DO NOT SHARE. Agile Methods Many agile methodologies Scrum Extreme Programming (XP) Kanban Development Lean Software Development Scaled Agile (SAFe) Agile Project Management, ©TIA Education Group. DO NOT SHARE. Agile Scrum Terms Product Owner - Designated person that represents the customer on the project Agile Project Manager/Scrum Master – Manages the agile project Product Backlog - Project requirements from the stakeholders Sprint Planning Meeting- Meeting done by the agile team to determine what features will be done in the next sprint Sprint Backlog – Work the team selects to get done in the next sprint Sprint - A short iteration where the project teams work to complete the work in the sprint backlog, (1-4 weeks typical) Daily Stand Up Meeting - A quick meeting each day to discuss project statuses, led by the Scrum Master. Usually 15 minutes Sprint Review – An inspection done at the end of the sprint by the customers Retrospective – Meeting done to determine what went wrong during the sprint and what when right. Lesson learned for the sprint. Partial Completed Product - Customers Demo the product and provides feedback. This feedback adjust the next Sprint priorities Release - Several Sprints worth of work directed to operations for possible rollout and testing Sprint = Iteration Agile Project Management, ©TIA Education Group. DO NOT SHARE. Agile Scrum Process Product Sprint Sprint Customers/Product Planning Sprint/Iteration Ownwer Backlog Backlog Meeting Potentially Sprint Sprint Review Shippable Product REtrospective Meeting Increment Agile Project Management, ©TIA Education Group. DO NOT SHARE. Scrum Set of team guidance practices, roles, events, artifacts, and rules Based on three pillars of Transparency, Inspection, and Adaptation: ◦ Transparency ◦ Visibility to those responsible for the outcome ◦ Inspection ◦ Timely checks on how well a project is progressing toward goals ◦ Looks for problematic deviations or differences from goals ◦ Adaptation ◦ Adjusting a process to minimize further issues if an inspection shows a problem or undesirable trend Agile Project Management, ©TIA Education Group. DO NOT SHARE. Scrum Roles & Responsibilities Product Owner ◦ Owns Product vision ◦ Defines features, decides on release date and content ◦ Responsible for market success ◦ Prioritizes features according to market value ◦ Can change features and priorities every Sprint ScrumMaster ◦ Responsible for facilitating process ◦ Focuses Team and protects them from external interruption ◦ Looks for ways to enhance productivity ◦ Assists Product Owner in leveraging Scrum Agile Project Management, ©TIA Education Group. DO NOT SHARE. Scrum Roles & Responsibilities Development Team ◦ Small group containing all necessary project skills ◦ Focuses on steady delivery of high quality features ◦ Generates options for delivery ◦ Manages own work within Sprints Agile Project Management, ©TIA Education Group. DO NOT SHARE. Scrum Activities The Scrum methodology refers to several different types of activities: 1. sprint planning meeting 2. sprints ◦ Daily stand-up meeting 3. sprint review meeting 4. sprint retrospectives. Agile Project Management, ©TIA Education Group. DO NOT SHARE. Sprint Planning Meeting Used to determine what work will be done in that sprint and how the work will be achieved. The development team predicts what can be delivered based on estimates, projected capacity, and past performance to define the sprint goal. The development team then determines how this functionality will be built and how the team will organize to deliver the sprint goal. Output of this will be the sprint backlog. The work to get done in the next sprint. Agile Project Management, ©TIA Education Group. DO NOT SHARE. Sprints A sprint is a timeboxed (time-limited) iteration of 1-4 weeks to build a potentially releasable product Each sprint includes a sprint planning meeting, daily Scrum, the actual work, a sprint review meeting, and the sprint retrospective During the sprint, no changes are made that would affect the sprint The development team members are kept the same throughout the sprint Agile Project Management, ©TIA Education Group. DO NOT SHARE. Daily Scrum (or Standup) A 15-minute time-boxed activity for the Development Team to synchronize activities and create a plan for the next 24 hours Should be held at the same time and place each day Each team member should answer 3 questions: 1. What did you do yesterday? 2. What will you do today? 3. Are there any impediments in your way? Agile Project Management, ©TIA Education Group. DO NOT SHARE. Sprint Review Takes place at the end of the Sprint Designed to gather feedback from stakeholders on what the Team has completed in the sprint Team demonstrates work that was completed during the sprint To create a conversation between the Team and the stakeholders about how to make the product better should be time boxed to no more than an hour per week of Sprint Agile Project Management, ©TIA Education Group. DO NOT SHARE. Sprint Retrospective Opportunity for the Team to inspect and create a plan for improvements to be done during the next Sprint. Team discusses: What went well What went wrong What to do more of What to do less of Agile Project Management, ©TIA Education Group. DO NOT SHARE. Scrum Artifacts Product increment Part of the product that is complete after each sprint Product Backlog Prioritized list of valuable items to deliver Sprint Backlog List of committed items to be addressed within Sprint Agile Project Management, ©TIA Education Group. DO NOT SHARE. Product Backlog Prioritized list of all work that needs to be done to complete the product List is dynamics, it evolves as the more work is added and prioritized Items in it is prioritized by the product owner and is sorted by value Most valuable items are listed first Constantly being refined as more work is added to it. Team and product owner will “groom the backlog”. Agile Project Management, ©TIA Education Group. DO NOT SHARE. Product Increment Part of the product that is done after each sprint Done to get feedback after each sprint The product owner and team needs to agree upon the “definition of done” before the team starts working on the product Agile Project Management, ©TIA Education Group. DO NOT SHARE. Sprint Backlog The sprint backlog is the set of items from the product backlog that were selected for a specific sprint. The sprint backlog is accompanied by a plan of how to achieve the sprint goal, so it serves as the development team's forecast for the functionality that will be part of the sprint. It is a highly visible view of the work being undertaken and may only be updated by the development team. Agile Project Management, ©TIA Education Group. DO NOT SHARE. Definition of Done (DoD) Definition of Done (DoD) is a shared understanding of what it means when work is considered done, it should be defined at the beginning of the project, and it applies globally to the project. Definition of Done (DoD) is a crucial element of a successful scrum software development Might include things such as: ◦ DoD for Unit & functional tests. ◦ DoD Documentation. ◦ DoD for a Writing code. Agile Project Management, ©TIA Education Group. DO NOT SHARE. Extreme Programming (XP) Software development centric agile method Focus software development good practices Scrum at the project management level focuses on prioritizing work and getting feedback Agile Project Management, ©TIA Education Group. DO NOT SHARE. XP Core Values Simplicity ◦ Reduce complexity, extra features, and waste ◦ “ Find the simplest thing that could possibly work" Communication ◦ Team members know what is expected of them and what other people are working on ◦ Daily stand-up meeting is key communication component Feedback ◦ Get impressions of correctness early ◦ Failing fast allows for faster improvement Agile Project Management, ©TIA Education Group. DO NOT SHARE. XP Core Values Courage ◦ Allow our work to be entirely visible to others Respect ◦ People work together as a team and everyone is accountable for the success or failure of the project ◦ Recognize people work differently and respect those differences Agile Project Management, ©TIA Education Group. DO NOT SHARE. XP Roles Coach ◦ Acts as a mentor, guiding the process and helping the team stay on track. Is a facilitator helping the team become effective. Customer: ◦ Business representative who provides the requirements, priorities, and drives the business direction for the project. Programmers ◦ Developers who build the product. Writes the codes. Testers ◦ Helps the customer define and write the acceptance tests for the user stories. Product Owner and Customer are equivalent ScrumMaster and Coach are equivalent Agile Project Management, ©TIA Education Group. DO NOT SHARE. XP Practices Planning Activities (Games): ◦ Release Planning: ◦ Push of new functionality all the way to the production user ◦ Customer outlines the functionality required ◦ Developers estimate difficult build ◦ Iteration Planning: ◦ Short development cycles within a release (Scrum calls "sprints”) ◦ Conducted at start of every iteration, or every two weeks ◦ Customer explains functionality they would like in iteration ◦ Developers break functionality into tasks and estimate work ◦ Based on estimates and amount of work accomplished in previous iteration, Agile Project Management, ©TIA Education Group. DO NOT SHARE. XP Practices Small Releases: ◦ Frequent, small releases to test environments ◦ Demonstrate progress and increase visibility for the customer ◦ Quality is maintained: Rigorous testing or Continuous integration Customer Tests: ◦ Customer describes one or more tests to show software is working ◦ Team builds automated tests to prove software is working. Collective Code Ownership: ◦ Any pair of developers can improve or amend any code ◦ Multiple people work on all code, which results in increased visibility and knowledge of code base ◦ Leads to a higher level of quality; with more people looking at the code, there is a greater chance defects will be discovered. ◦ Less risk if programmer leaves, since knowledge is shared Agile Project Management, ©TIA Education Group. DO NOT SHARE. XP Practices Code Standards: ◦ Follow consistent coding standard ◦ Code looks as if it has been written by a single, knowledgeable programmer Sustainable Pace: ◦ While periods of overtime might be necessary, repeated long hours of work are unsustainable and counterproductive ◦ The practice of maintaining a sustainable pace of development optimizes the delivery of long- term value Agile Project Management, ©TIA Education Group. DO NOT SHARE. XP Practices Metaphor: ◦ XP uses metaphors and similes to explain designs and create a shared technical vision. ◦ These descriptions establish comparisons that all the stakeholders can understand to help explain how the system should work. ◦ For example, “The invoicing module is like an Accounts receivable personnel who makes sure money collected from our customers”. Continuous Integration: ◦ Integration involves bringing the code together and making sure it all compiles and works together. ◦ This practice is critical, because it brings problems to the surface before more code is built on top of faulty or incompatible designs. Agile Project Management, ©TIA Education Group. DO NOT SHARE. XP Practices Test-Driven Development (TDD): ◦ The team writes tests prior to developing the new code. ◦ If the tests are working correctly, the initial code that is entered will fail the tests ◦ The code will pass the test once it is written correctly. Pair Programming: ◦ In XP, production code is written by two developers working as a pair to write and provide real-time reviews of the software as it emerges. ◦ Working in pairs also helps spread knowledge about the system through the team. Agile Project Management, ©TIA Education Group. DO NOT SHARE. XP Practices Simple Design: ◦ Code is always testable, browsable, understandable, and explainable ◦ Do the simplest thing that could possibly work next. Complex design is replaced with simpler design ◦ The best architectures, requirements, and designs emerge from self-organizing teams Refactoring: ◦ Remove redundancy, eliminate unused functionality, and rejuvenate obsolete designs ◦ Refactoring throughout the entire project life cycle saves time and increases quality ◦ Code is kept clean and concise so it is easier to understand, modify, and extend Agile Project Management, ©TIA Education Group. DO NOT SHARE. Some Basic Terminology Review Extreme Scrum Definition Programming (XP) Fixed-length period of time Sprint Iteration (timebox) Release Small Release Release to production Sprint/Release Planning Game Agile planning meetings Planning Business representative to Product Owner Customer project Retrospective Reflection “Lessons learned”-style meeting ScrumMaster Coach Agile project manager Development Empowered Cross-Functional Team Team team Daily Scrum Daily Standup Brief daily status meeting Agile Project Management, ©TIA Education Group. DO NOT SHARE. Lean Software Development Lean was started by Toyota as manufacturing method that was applied to software development. Principles: ◦ Using visual management tools ◦ Identifying customer-defined value ◦ Building in learning and continuous improvement Agile Project Management, ©TIA Education Group. DO NOT SHARE. Lean Software Development Eliminate Waste Amplify Empower Learning the team Lean Defer Deliver Decisions Fast Optimize Build the Quality In Whole Agile Project Management, ©TIA Education Group. DO NOT SHARE. Lean Software Development Eliminate waste: ◦ To maximize value, we must minimize waste. For software systems, waste can take the form of partially done work, delays, handoffs, unnecessary features. Empower the team: ◦ Rather than taking a micro-management approach, we should respect team member’s superior knowledge of the technical steps required on the project and let them Deliver fast: ◦ Quickly delivering valuable software and iterating through designs. Optimize the whole: ◦ We aim to see the system as more than the sum of its parts. Agile Project Management, ©TIA Education Group. DO NOT SHARE. Lean Software Development Build quality in: ◦ Build quality into the product and continually assure quality throughout the development process Defer decisions: ◦ Balance early planning with making decisions and committing to things as late as possible. Amplify learning: ◦ This concept involves facilitating communication early and often, getting feedback as soon as possible, and building on what we learn. Agile Project Management, ©TIA Education Group. DO NOT SHARE. Seven Wastes of Lean 1. Partially done work 2. Extra Processes 3. Extra features 4. Task switching 5. Waiting 6. Motion 7. Defects Agile Project Management, ©TIA Education Group. DO NOT SHARE. Kanban Development Kanban development is derived from the lean production system used at Toyota. "Kanban" is a Japanese word meaning "signboard." Items In Progress Testing Done 6 cards 4 cards Agile Project Management, ©TIA Education Group. DO NOT SHARE. Kanban five core principles: Visualize the workflow: ◦ Software projects, by definition, manipulate knowledge, which is intangible and invisible. Limit WIP: ◦ Keeping the amount of work in progress low increases the visibility of issues and bottlenecks Manage flow: ◦ By tracking the flow of work through a system, issues can be identified and changes can be measured for effectiveness Make process policies explicit: ◦ It is important to clearly explain how things work so the team can have open discussions about improvements Improve collaboration: ◦ Through scientific measurement and experimentation, the team should collectively own and improve the processes it uses. Agile Project Management, ©TIA Education Group. DO NOT SHARE. Other agile methods Feature-Driven Development ◦ Team will first develop an overall model for the product then build a list, and plan the work. Crystal ◦ It’s a customized methodologies that are coded by color names. ◦ Crystal clear is for small teams working on non-critical projects ◦ Crystal magenta is used for larger teams working on more critical work Agile Project Management, ©TIA Education Group. DO NOT SHARE. Other agile methods Scalable Agile Framework (SAFe®) ◦ A framework that implements Scrum at an enterprise level ◦ Approach that consumes the whole enterprise and not just a team ◦ Deals with big global teams ◦ All aspect of the organizations are managed ◦ Three important parts: ◦ Lean Product Development ◦ Agile Software Development ◦ System Thinking Agile Project Management, ©TIA Education Group. DO NOT SHARE. Leading Effectively Servant Leadership ◦ Leader provides what the team needs 1. Shield team from interruptions 2. Remove impediments to progress 3. (Re)Communicate project vision 4. Carry food and water Agile Project Management, ©TIA Education Group. DO NOT SHARE. Twelve Principles for Leading Agile Projects 1. Learn the team members needs 2. Learn the project requirements 3. Act for the simultaneous welfare of the team and the project 4. Create an environment of functional accountability 5. Have a vision of the completed project 6. Use the project vision to drive your own behavior ©2002 Jeffery Pinto, Project Leadership from Theory to Practice Agile Project Management, ©TIA Education Group. DO NOT SHARE. Twelve Principles for Leading Agile Projects 7. Serve as the central figure in successful project team development 8. Recognize team conflict as a positive step 9. Manage with an eye toward ethics 10. Remember that ethics is not an afterthought, but an integral part of our thinking 11. Take time to reflect on the project 12. Develop the trick of thinking backwards Agile Project Management, ©TIA Education Group. DO NOT SHARE. Leadership Tools and Techniques Using these tools still need soft-skills approach Modeling Desired Behavior ◦ Honesty ◦ Forward-Looking ◦ Competent ◦ Inspiring Communicating project vision Enabling others to act ◦ Switch from exclusive tools to inclusive tools Being willing to change the status quo Agile Project Management, ©TIA Education Group. DO NOT SHARE. Leadership Task Practice Transparency through Visualization Crate a safe environment for experimentation Experiment with new techniques and processes Share knowledge through collaboration Agile Project Management, ©TIA Education Group. DO NOT SHARE. Value-Driven Delivery HowPrioritization Planning Value – Value Based Customers Conduct Value Prioritization Valued based prioritization is the one of core practices in agile planning Features are prioritized on the basis of business value, risk and dependencies Some of prioritization techniques used: ◦ Simple Scheme ◦ MoSCoW prioritization ◦ Monopoly Money ◦ 100-point method ◦ Dot Voting or Multi-voting ◦ Kano Analysis ◦ Requirements Prioritization Model 2 Agile Project Management, ©TIA Education Group. DO NOT SHARE. Prioritization Techniques Simple Scheme ◦ Priority 1, Priority 2, Priority 3, etc. ◦ Could be problematic as many items might become the first priority. MoSCoW prioritization ◦ Must have ◦ Should have ◦ Could have ◦ Would like to have, but not this time Agile Project Management, ©TIA Education Group. DO NOT SHARE. Prioritization Techniques Dot Voting or Multi-voting ◦ Each person gets a certain number of dots to distribute to the requirements Monopoly Money ◦ Give everyone equal monopoly money ◦ They then distribute the funds to what they value the most 100-point method ◦ Each person is given 100 points ◦ They then use that to distribute to individual requirements Agile Project Management, ©TIA Education Group. DO NOT SHARE. Prioritization Techniques Kano Analysis ◦ Helps to understand the customers satisfaction ◦ Delighters/Exciters ◦ Satisfiers ◦ Dissatisfiers ◦ Indifferent https://foldingburritos.com/kano-model/ Agile Project Management, ©TIA Education Group. DO NOT SHARE. Prioritization / Ranking is Relative Doesn’t matter what techniques the customers uses priority, the end results should be a list of prioritized features. Agile Project Management, ©TIA Education Group. DO NOT SHARE. Delivering Value Incrementally Incremental delivery is about deploying working parts of a product over the life of the project In software development, its first delivered to a testing environment then to production This will reduce the amount of rework by discovering issues early and fixing them Agile Project Management, ©TIA Education Group. DO NOT SHARE. Delivering Value Incrementally http://www.agilemodeling.com/essays/costOfChange.htm Agile Project Management, ©TIA Education Group. DO NOT SHARE. Minimal Viable Product (MVP) Refers to a set of functionality that is complete to be useful, but small enough not to be an entire project Usually a module in a software Agile Project Management, ©TIA Education Group. DO NOT SHARE. Tools for Agile Projects Low-tech, high-touch over computer models When using computer models problems could arise such as: ◦ Data accuracy perception increases ◦ No stakeholder interaction. Only a few people would update them Agile Project Management, ©TIA Education Group. DO NOT SHARE. Low-Tech, High- Touch Tools Use card, charts, whiteboards, and walls Promotes communication and collaboration Skip using a computer Gantt chart to a Kanban board Agile Project Management, ©TIA Education Group. DO NOT SHARE. Kanban/Task Board An "information radiator" - ensures efficient diffusion of information Can be drawn on a whiteboard or even a section of wall Makes iteration backlog visible Serves as a focal point for the daily meeting Items In Progress Testing Done 6 cards 4 cards Agile Project Management, ©TIA Education Group. DO NOT SHARE. Educating People about Agile Teach all the stakeholders about the benefits of agile Concerns about agile can Include: ◦ Senior management and sponsor: They are worried about the risk of failing ◦ Managers: fear the loss of control ◦ Project team: resist agile methods ◦ Users: will not get all features Agile Project Management, ©TIA Education Group. DO NOT SHARE. Engaging Stakeholders Short iterations and release keeps them engage Keeping then engage can lead to stakeholders being more involved and getting more change request This helps us to identify risk and issues early If some stakeholders are causing problems, the agile PM will need to use their interpersonal skills to resolve issues Need to have a process for escalating stakeholders issues Why such a big focus on stakeholders? ◦ Projects and done by people for people Agile Project Management, ©TIA Education Group. DO NOT SHARE. Methods of Stakeholder Engagement Get the right stakeholders Cement stakeholder involvement Actively manage stakeholder interest Frequently discuss what done looks like Show progress and capabilities Candidly discuss estimates and projections Agile Project Management, ©TIA Education Group. DO NOT SHARE. Set a Shared Vision Important to ensure customers and agile project team has the same vision Methods include: ◦ Agile Charter ◦ Definition of “Done” ◦ Agile Modeling ◦ Use case diagram ◦ Data models ◦ Screen design ◦ Wireframes ◦ Personas Agile Project Management, ©TIA Education Group. DO NOT SHARE. Definition of “Done” Creating a shared vision of what done looks like Should be done for: ◦ User stories ◦ Releases ◦ Final project deliverables Agile Project Management, ©TIA Education Group. DO NOT SHARE. Agile Modeling ◦ Use case diagrams ◦ Visually shows how users would use an application https://en.wikipedia.org/wiki/Use_case_diagram Agile Project Management, ©TIA Education Group. DO NOT SHARE. Agile Modeling ◦ Data models ◦ How the data are structured in tables and their relationships http://www.agiledata.org/essays/dataModeling101.html Agile Project Management, ©TIA Education Group. DO NOT SHARE. Agile Modeling ◦ Screen designs ◦ Simple screen shots http://agilemodeling.com/artifacts/uiPrototype.htm Agile Project Management, ©TIA Education Group. DO NOT SHARE. Wireframes Wireframes ◦ Quick mock-up of product ◦ “low-fidelity prototyping” ◦ Clarify what “done” looks like ◦ Validate approach prior to execution Agile Project Management, ©TIA Education Group. DO NOT SHARE. Personas Personas ◦ Quick guides or reminders of key stakeholders and interests ◦ Provide description of users ◦ Be grounded in reality ◦ Be goal-oriented, specific, and relevant ◦ Be tangible and actionable ◦ Generate focus ◦ Help team focus on valuable features to users Agile Project Management, ©TIA Education Group. DO NOT SHARE. Personas Name: Andrew Jones– Certified Accountant Value: Andrew would like to ensure all company bills are paid on time while using online auto payments. Description: He would like to ensure customers Andrew has been an Accountant are reminded automatically of for over 10 years and has worked at outstanding balances. many large accounting firms. He is looking to print the He likes to be organized and get his receivables and payable reports on work done on time. a weekly basics to check on bills and invoices. Agile Project Management, ©TIA Education Group. DO NOT SHARE. Communicating with Stakeholders Face to face communication Two-way communication Knowledge sharing Information Radiators Social Media Agile Project Management, ©TIA Education Group. DO NOT SHARE. Face-to-face Communication Face to face communication http://www.agilemodeling.com/essays/communication.htm Agile Project Management, ©TIA Education Group. DO NOT SHARE. Communicating with Stakeholders Two-way communication ◦ Just don’t ask for confirmation or concerns, but actually listen to what they have to say Knowledge sharing ◦ Agile teams work closely with each other such as with pair-programming. ◦ Using Kanban boards or wireframes are ways to share information ◦ Use of low-tech tools like a whiteboard will allow all to see the work and understand it ◦ We must encourage it Agile Project Management, ©TIA Education Group. DO NOT SHARE. Communicating with Stakeholders Information Radiators ◦ Things that are highly visible ◦ Used to display information ◦ Usually includes chats, graphs and boards Social Media ◦ Use to communicate ◦ Can include twitter or Instagram Agile Project Management, ©TIA Education Group. DO NOT SHARE. Conflict Resolution All projects will have conflicts While some level of conflicts are good, we need to ensure they don’t become a “world war” where people are trying to destroy each other Levels of conflict(1-5): ◦ Level 1: Problem to solve – sharing info ◦ Level 2: Disagreement – Personal Protection ◦ Level 3: Contest – Must win ◦ Level 4: Crusade – Protecting one’s group ◦ Level 5: World War – Must destroy the other Agile Project Management, ©TIA Education Group. DO NOT SHARE. Participatory Decision Models Engage stakeholder in decision making process ◦ Simple voting ◦ Vote “for” or “against” it ◦ Thumps up/down/sideways ◦ People hold their thumps in a way of if the support it or not. Sideway is if they cannot make up their mind ◦ Fist of five ◦ People how up finger based on they support the idea ◦ 1 finger: total support – 5 finger: Stop against it Agile Project Management, ©TIA Education Group. DO NOT SHARE. Team Performance Development / Delivery Team Group that build and test the increments of the product ◦ Build product in increments ◦ Update information radiators ◦ Self organize and directing ◦ Share progress by doing daily stand-up meetings ◦ Demo the completed product increments ◦ Holds retrospectives at the end of sprints ◦ Does release and sprint planning and estimations Agile Project Management, ©TIA Education Group. DO NOT SHARE. Product Owner/Customer Prioritizing the product features Manage the product backlog ensuing its accurate and up to date Ensures the team has a shared understanding of the backlog items Defines the acceptance criteria Provides the due dates for the releases Attends planning meeting, reviews, and the retrospective. Agile Project Management, ©TIA Education Group. DO NOT SHARE. Agile Project Manager (ScrumMaster/Coach) Act as a servant leader Help the team self-organize and direct themselves Be a facilitator Ensure the team plan is visible and the progress is known to the stakeholders Act as a mentor and coach Work with the product owner to manage the product backlog Facilitates meeting Ensure issues are solved Agile Project Management, ©TIA Education Group. DO NOT SHARE. Building Teams Self-Organizing Self-Directing Small teams with fewer than 12 members Agile Project Management, ©TIA Education Group. DO NOT SHARE. Generalizing Specialists Have members that can do different tasks Members skilled in more than one area Share work reduce bottleneck Agile Project Management, ©TIA Education Group. DO NOT SHARE. High-Performance Agile Teams Have a shared vision Realist goals Fewer than 12 members Have a sense of team identity Provide strong leadership Agile Project Management, ©TIA Education Group. DO NOT SHARE. Experiments (Have a safe place) Establish safe environment for disagreement Allows team members to build strong commitment to decisions Encourage people to experiments with new methods Leads to more engagement Agile Project Management, ©TIA Education Group. DO NOT SHARE. Welcome Constructive Disagreement Leads to better buy-in and decisions Avoiding conflicts can lead to conflicts escalating A safe place for disagreement leads to successful problem solving Agile Project Management, ©TIA Education Group. DO NOT SHARE. Models of team development Shu-Ha-Ri Model of Skill Mastery ◦ Shu- Obey, ◦ Ha – Moving away, ◦ Ri – finding individual paths Dreyfus Model of Adult Skill Acquisition ◦ Novice, Advanced Beginner, Competent, Proficient, Expert Agile Project Management, ©TIA Education Group. DO NOT SHARE. Tuckman’s Five Stages of Team Development 1. Forming: team comes together and starts to get to know each other. There is not much conflict or communication. 2. Storming: team members start to have conflicts with each other. They start to learn of each other’s ideas and may not agree with them. Most conflicts takes place in this stage. 3. Norming: the team members begin to agree with each other on the best methods to build the deliverables. Generally, everyone is coming to a consensus. 4. Performing: the team is performing well and is working without conflict. 5. Adjourning: In this stage, the project is completed and the team is reassigned. Agile Project Management, ©TIA Education Group. DO NOT SHARE. Team Spaces Co-located Teams Team Spaces Osmotic Communication Global and Cultural Diversity Distributed teams Agile Project Management, ©TIA Education Group. DO NOT SHARE. Co-Located Teams All team member work together in the same location Allows for face-to-face time and interaction Should be within 33 feet of each other No physical barriers Sometimes a virtual co-location Agile Project Management, ©TIA Education Group. DO NOT SHARE. Team Space Lots of low-tech, high touch ◦ Whiteboards and task boards ◦ Sticky notes, flip charts ◦ Round table ◦ No barriers to face-to-face communication Caves and Common ◦ Caves space team members can retreat to individually ◦ Common space team members can work as group Osmotic Communication ◦ Information flows that occur as part of everyday conversations and questions ◦ 33 feet or 10 meters Tacit Knowledge ◦ Information that is not written down; supported through collective group knowledge Agile Project Management, ©TIA Education Group. DO NOT SHARE. Global and Cultural Diversity Time Zones Cultures Native Languages Styles of communications Agile Project Management, ©TIA Education Group. DO NOT SHARE. Distributed Teams At least one team member working off- site Need to find ways to replicate co- location team benefits Agile Tools ◦ Low-Tech, High-Touch Tools ◦ Digital Tools for distribute teams ◦ Video conferencing ◦ Interactive whiteboards ◦ IM / VoIP ◦ Virtual card walls ◦ Web cams ◦ Digital cams Agile Project Management, ©TIA Education Group. DO NOT SHARE. Adaptive Planning Adaptive Planning Planning is ongoing process Multiple mechanisms to proactively update plan Focus on value delivery and minimize nonvalue-adding work Uncertainty drives need to replan Frequently discover issues and experience high rates of change Agile Project Management, ©TIA Education Group. DO NOT SHARE. Agile Plans Agile planning varies from traditional planning 1. Trial and demonstration uncover true requirements, which then require replanning 2. Agile planning is less of an upfront effort, and instead is done more throughout the project 3. Midcourse adjustments are the norm Agile Project Management, ©TIA Education Group. DO NOT SHARE. Principles of Agile Planning 1. Plan at multiple levels 2. Engage the team and the customer in planning 3. Manage expectations by frequently demonstrating progress 4. Tailor processes to the project’s characteristics 5. Update the plan based on the project priorities 6. Ensure encompassing estimates that account for risk, distractions, and team availability 7. Use appropriate estimate ranges to reflect the level of uncertainty in the estimate 8. Base projections on completion rates 9. Factor in diversion and outside work Agile Project Management, ©TIA Education Group. DO NOT SHARE. Value-Base Analysis and Decomposition Assessing and prioritizing the business value of work items, and then plan accordingly. Value-Based Decomposition ◦ Breaks down requirements and prioritized them ◦ Design the product box Agile Project Management, ©TIA Education Group. DO NOT SHARE. Design the Product Box Agile Project Management, ©TIA Education Group. DO NOT SHARE. Timeboxing Short, fixed-duration periods of time in which activities or work are undertaken ◦ If work is not completed within time period, move it to another timebox Daily Stand-up – 15 minutes Retrospectives – 2 hours Sprints – 1-4 weeks Beware of Parkinson’s Law ◦ Work tends to expand to fill the time given Agile Project Management, ©TIA Education Group. DO NOT SHARE. Decomposing Requirements Agile Project Management, ©TIA Education Group. DO NOT SHARE. User Stories User Stories / Backlogs Business functionality within a feature that involves 1-3 days of work. Acts as agreement between customers and development team Every requirement is user story Every story, including technical stories, has value Common structure of a user story As a I goal So that Agile Project Management, ©TIA Education Group. DO NOT SHARE. User Story Example “As an payroll clerk, I want to be able to view a report of all payroll taxes, so that I can pay them on time” “As a sales person, I want to be able to see a current list of leads, so that I can call them back quickly” “As student of this course, I want to be able to understand the requirements of the exam, so that I know if I qualify for it or not” Agile Project Management, ©TIA Education Group. DO NOT SHARE. Three C’s of Stories Have users write the stories on index cards No details, it’s used to help conversate 3 Cs: ◦ Card ◦ Conversation ◦ Confirmation Agile Project Management, ©TIA Education Group. DO NOT SHARE. User Stories - INVEST Effective user stories should be “INVEST” Independent ◦ Should be independent so it can reprioritize Negotiable ◦ Should allow for trade-off’s based on cost and function Valuable ◦ Should clearly state the value of it Estimatable ◦ Should be able to estimate how long to complete Small ◦ Stories should be between 4-40 hours of work Testable ◦ Should be testable to ensure it will be accepted once competed Agile Project Management, ©TIA Education Group. DO NOT SHARE. User Story Backlog (Product Backlog) Prioritize Requirements Refining (Grooming) Backlog ◦ Keeping the backlog updated and accurately prioritized Agile Project Management, ©TIA Education Group. DO NOT SHARE. Relative Sizing and Story Points Absolute estimates are difficult for humans to make Estimates should be relative Assign points to each story using a relative numbers Agile Project Management, ©TIA Education Group. DO NOT SHARE. Fibonacci Sequence https://en.wikipedia.org/wiki/Fibonacci_number Fibonacci Sequence: 1, 2, 3, 5, 8, 13, 21 Agile Project Management, ©TIA Education Group. DO NOT SHARE. Guidelines for Using Story Points Team should own the definition of their story points Story point estimates should be all- inclusive Point sizes should be relative Complexity, work effort, and risk should all be included in the estimate Agile Project Management, ©TIA Education Group. DO NOT SHARE. Affinity Estimating and T-Shirt Sizing Affinity Estimating ◦ Group estimates into categories or collections T-Shirt Sizing ◦ Place stories in sizes of t-shirts Agile Project Management, ©TIA Education Grou