Week 1 - Introduction to Agile PDF

Summary

This document provides an introduction to Agile principles, methodologies, and values. It discusses traditional project management, different agile methodologies, and the Agile Manifesto. An introduction to agile values is also provided, as is a summary of the different principles of agile.

Full Transcript

MGMT8085: Agile Principles Introduction & Welcome Week 1 Class 1 Course Overview In this course we will dive into the world of Agile and be introduced to principles that aim to support the continuous delivery and improvement, collaboration, and openness to change on IT Projects. St...

MGMT8085: Agile Principles Introduction & Welcome Week 1 Class 1 Course Overview In this course we will dive into the world of Agile and be introduced to principles that aim to support the continuous delivery and improvement, collaboration, and openness to change on IT Projects. Students will delve into values and principles covered in the agile manifesto and how to enhance communication with user stories and cross-functional teams. This course will also explore how to respond to change the agile way, introduce popular agile frameworks, and learn about the common roles that exist on an agile team. Ice-Breaker with class 1. Name 2. Academic Background 3. Why you chose Conestoga, this Program, or something you hope to learn this semester COURSE OVERVIEW Course Format & Evaluations Week 6 Week 1 Week 2 Week 3 Week 4 Week 5 Week7 Assignment 1 Quiz #1 Quiz #2 Midterm Exam Due Student Success Week 8 Week 10 Week 14 Week 9 Week 11 Week 12 Week 13 Week 15 Group Project Group Project Quiz #3 Quiz #4 Final Exam Part 1 Due Part 2 Due Resources eConestoga Week to week content PowerPoint Slides E-Text Resource MGMT8085: Agile Principles Introduction to Agile Week 1 Class 1 This class Lecture (35 min) Break (10 min) Lecture & Exercise (50 min) Break (10 min) Practice Exercise or Discuss Assignment or Evaluation (25 min) Asynchronous Hour (5 min) Summary (10 min) Q&A (5 min) What is Agile Learning Objectives Discuss the history of Agile, where it came from and why it was developed. Discuss traditional project management and the key differences between traditional and agile project management. List different agile methodologies that existed prior to agile being formed. Introduce the Agile Manifesto, its 4 values and 12 principles. Discuss how agile principles apply to the Software Development Life Cycle. List examples of how agile values and principles relate to customer value and project risk. Discuss what it means to have an agile mindset. Week 1: Agile Words Go to Menti.com Enter Code or Use QR Code: HISTORY OF AGILE A Brief History of Agile Traditional Project Management (Waterfall) popularized in the 1950’s Agile Methodologies Formation of the Agile Alliance Agile Manifesto Agile Terms and Concepts Traditional Project Management Works well for projects where work is easy to define Requirements o Constructing a building or equipment Design o Designing a combustion engine car o Installing hardware to support well known systems Implementation Doesn’t work well when work has high uncertainty and is hard to define: Testing o Difficult to adapt to changing requirements Maintenance o High uncertainly creates large project risks on waterfall projects o Product delivered once at the end of the project Agile Methodologies 1980’s – Rapid Application Development (James Martin, IBM) 1990’s – Adaptive Software Development (John Highsmith and Sam Bayer) 1991 – Crystal Agile Methodology (Alistair Cockburn) 1993 – Scrum Framework (Jeff Sutherland) 1994 – Dynamic System Development Method (DSDM) 1996 – Extreme Programming (XP) (Kent Beck) 1997 – Feature Driven Development (FDD) (Jeff De Luca) Agile Alliance Formed in 2001 at the Snowbird meeting. Group of 17 software developers agreed to a set of 4 values that would be published as the Agile Manifesto. Agile Frameworks existed and were foundation for the discipline of agile project management. Connection to Lean and Toyota Production system. To be explored in more detail https://www.agilealliance.org/ The Agile Manifesto 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 and interactions over processes and tools Working software over comprehensive 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. © 2001-2022 Agile Manifesto Authors Agile Terms & Concepts Backlog Incremental Refactoring Development Backlog Refinement Retrospective Information Radiators Burndown Chart Test Driven Iterative Development Development Continuous Integration Kanban Board Timebox Daily Stand-up Lead Time Unit Testing Definition of Done MVP - Minimum Viable User Story Product Epic Velocity Pair Programming Agile Explained AGILE VALUES Value #1 “Individuals and interactions over processes and tools” What does this mean for project team members working on a project. If we are not seeing results, our processes aren’t working, and we need to get communicating. Not no processes and tools, each framework has processes, tools, and meetings. Understanding formed through communication. In a dynamically changing project following a defined process in isolation adds risk to the project. Value #2 “Customer collaboration over contract negotiation” Customer is part of the team. Collaborative problem solving over blame. High uncertainty work needs a flexible approach to contracts. Trust is paramount. Value #3 “Working software over comprehensive documentation” Documentation stifles creativity. In progress work holds no value. Feedback quickly to confirm assumptions. Documentation can create us vs. them mentality. Value #4 “Responding to change over following a plan” Iterative development. Feedback from users. Changing and evolving priorities. Planning is important in agile, but we focus on planning that yields the most value and avoid replanning. 10 MIN EXERCISE: VALUES DRIVE OUR ACTIONS Exercise Instructions In small groups of 4-5 discuss the following questions? 1. Think of a value that you believe in and how it connects to a practice or activity that you take part in? For example, I value spending time with family, so I facetime them each week or see them as often as possible. 2. Think of a practice that you disagree with and explain why it doesn’t align to your values? For example, I do not agree with people throwing recycling in the garbage, because I value sustainability. 10 MINUTE BREAK AGILE PRINCIPLES Agile Principles 1. Our highest priority is to satisfy the customer through early and 7. Working software is the primary measure of progress. continuous delivery of valuable software. 8. Agile processes promote sustainable development. The 2. Welcome changing requirements, even late in development. sponsors, developers, and users should be able to maintain a Agile processes harness change for the customer’s constant pace indefinitely. competitive advantage. 9. Continuous attention to technical excellence and good design 3. Deliver working software frequently, from a couple of weeks to enhances agility. a couple of months, with a preference to the shorter timescale. 10. Simplicity–the art of maximizing the amount of work not done– 4. Business people and developers must work together daily is essential. throughout the project. 11. The best architectures, requirements, and designs emerge 5. Build projects around motivated individuals. Give them the from self-organizing teams. environment and support they need, and trust them to get the job done. 12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly. 6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. © 2001-2022 Agile Manifesto Authors Principle #1 “Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.” Waiting to deliver software at the end puts customer satisfaction at risk Principle #2 “Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.” Small batch sizes and iterative development can yield higher customer satisfaction Principle #3 “Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.” Smaller batch sizes minimize potential for waste and rework. Principle #4 “Business people and developers must work together daily throughout the project.” Collaboration and diverse teams yield improved results having input from end users bring in real life challenges on how the software will be utilized. Principle #5 “Build projects around motivated individuals. Give them the environment and support they need and trust them to get the job done.” Micromanagement doesn’t work. Build and empower the team to deliver the project. Principle #6 “The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.” Face to face communication is the only media where we can confirm mutual understanding of ideas Principle #7 “Working software is the primary measure of progress.” Difficult for end users to visualize how software will function without testing it. Principle #8 “Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.” Sustainable development empowering your teams to keep a consistent pace allowing effective management of project timelines. Principle #9 “Continuous attention to technical excellence and good design enhances agility.” Build in quality to reduce waste and rework. Self forming teams have pride of product ownership which improves quality. Principle #10 “Simplicity–the art of maximizing the amount of work not done–is essential.” Always ask yourself is this adding value to the end user. Even when highly technical it can add significant value. Principle #11 “The best architectures, requirements, and designs emerge from self-organizing teams.” Self organizing teams can leverage combined skillsets, share knowledge and develop as the project is moving forward. Increasing speed at which value is delivered to the customer. Principle #12 “At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.” Feedback and change not just on the product but also the process that improves the value and speed of product delivery and client satisfaction. AGILE MINDSET Implementing an Agile Mindset in PM 1. Learn and understand different agile frameworks and implement. Be careful not to tailor frameworks initially away from the values and principles they deliver upon. 2. Focus on agile values and principles and implement changes to the current project process incrementally to shift away from current approach. How it all connects Note. Project Management Institute, Inc. Agile Practice Guide, 2017, Figure 2-3. 10 MINUTE BREAK IN-CLASS EXERCISE Exercise Instructions In small groups of 4-5, considering the 12 principles of agile discuss the following questions? (10 mins each) 1. Which agile principle do you associate most with one approach you take in your work practices and why? 2. Which agile principle do you look forward to applying in this course or program and why? 3. Which agile principle do you look forward to applying in your career and why? Agile Principles 1. Our highest priority is to satisfy the customer through early and 7. Working software is the primary measure of progress. continuous delivery of valuable software. 8. Agile processes promote sustainable development. The 2. Welcome changing requirements, even late in development. sponsors, developers, and users should be able to maintain a Agile processes harness change for the customer’s constant pace indefinitely. competitive advantage. 9. Continuous attention to technical excellence and good design 3. Deliver working software frequently, from a couple of weeks to enhances agility. a couple of months, with a preference to the shorter timescale. 10. Simplicity–the art of maximizing the amount of work not done– 4. Business people and developers must work together daily is essential. throughout the project. 11. The best architectures, requirements, and designs emerge 5. Build projects around motivated individuals. Give them the from self-organizing teams. environment and support they need, and trust them to get the job done. 12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly. 6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. © 2001-2022 Agile Manifesto Authors ASYNCHRONOUS ACTIVITY FOR WEEK 1 Asynchronous Hour Instructions Review the following video and answer the following questions: Introduction to Agile by James Newkirk https://www.agilealliance.org/agile101/agile-basics/introduction-to-agile/ Questions to answer: 1. What agile framework is James Newkirk most familiar with? 2. What is one thing James recommends when implementing an agile framework? TEST YOUR KNOWLEDGE Week 1: Test Your Understanding of Agile Go to Menti.com Enter Code or Use QR Code: SUMMARY Key Take-Aways Agile Alliance published the Agile Manifesto in 2001 as a better way of delivering software and systems projects. Agile is a not a methodology but a mindset or way of thinking. High uncertainty work called for a new method of delivering projects. The Agile Manifesto includes 4 values and 12 principles to guide agile practitioners and their approach to delivering projects. Agile like Lean focuses on increasing value to customers and minimizing waste. Minimizing Risk to customers allows for an increase in value and eliminating waste on IT projects. Next Class Discuss how agile values and principles relate to agile project management practices. Discuss lean and how it relates to agile. List common lean and agile practices that exist within the context of project management. Discuss the relationship between agile values, principles and common practices utilized in the application of agile project management. Discuss how agile principles can be derived from the 4 agile values found in the Agile Manifesto.

Use Quizgecko on...
Browser
Browser