Agile Methodology-Lesson 3.pdf
Document Details
Uploaded by Deleted User
Tags
Full Transcript
SCHOOL OF INFORMAT ION T ECHNOLOGY AGILE METHODOLOGY LESSON 3 EDNA YAHIN NAPOLES ITELEC 1-Instructor LEARNING OBJECTIVES: Identify the key benefits of using Agile methodology in project management. Recognize different Agile frameworks such as Scrum, Kanban...
SCHOOL OF INFORMAT ION T ECHNOLOGY AGILE METHODOLOGY LESSON 3 EDNA YAHIN NAPOLES ITELEC 1-Instructor LEARNING OBJECTIVES: Identify the key benefits of using Agile methodology in project management. Recognize different Agile frameworks such as Scrum, Kanban, Lean, and Extreme Programming (XP). Differentiate between the roles, artifacts, and ceremonies specific to each framework. Apply Agile practices like daily stand-ups, sprint planning, retrospectives, and continuous integration. Illustrate how collaboration and communication work within Agile teams. What is the Agile methodology? Agile methodology is a project management framework that breaks projects down into several dynamic phases, commonly known as sprints. The Agile framework is an iterative methodology. What is the iterative process? The iterative process is the practice of building, refining, and improving a project, product, or initiative. Teams that use the iterative development process create, test, and revise until they’re satisfied with the end result. You can think of an iterative process as a trial-and-error methodology that brings your project closer to its end goal. Iterative processes are a fundamental part of lean methodologies and Agile project management—but these processes can be implemented by any team, not just Agile ones. During the iterative process, you will continually improve your design, product, or project until you and your team are satisfied with the final project deliverable. What are the 4 pillars of Agile? As outlined in the Agile Manifesto, there are four main values of Agile project management: Individuals over processes and tools: Agile teams value team collaboration and teamwork over working independently and doing things "by the book.” Working software over comprehensive documentation: The software that Agile teams develop should work. Additional work, like documentation, is not as important as developing good software. Customer collaboration over contract negotiation: Customers are extremely important within the Agile methodology. Agile teams allow customers to guide where the software should go. Therefore, customer collaboration is more important than the finer details of contract negotiation. Responding to change over following a plan: One of the major benefits of Agile project management is that it allows teams to be flexible. This framework allows for teams to quickly shift strategies and workflows without derailing an entire project. AGILE METHODOLOGY SCRUM - is an agile project management framework that helps teams structure and manage their work through a set of values, principles, and practices. - It organizes work into small, manageable pieces and encourages constant communication, quick feedback, and continuous improvement. VIDEO Key Differences Between Agile and Scrum: The Scrum Framework The scrum framework outlines a set of values, principles, and practices that scrum teams follow to deliver a product or service. It details the members of a scrum team and their accountabilities, “artifacts” that define the product and work to create the product, and scrum ceremonies that guide the scrum team through work. Members Of A Scrum Team A scrum team is a small and nimble team dedicated to delivering committed product increments. A scrum team’s size is typically small, at around 10 people, but it’s large enough to complete a substantial amount of work within a sprint. A scrum team needs three specific roles: product owner, scrum master, and the development team. And because scrum teams are cross-functional, the development team includes testers, designers, UX specialists, and ops engineers in addition to developers. SCRUM ROLES Effective product owners: - Build and manage the product backlog. The SCRUM PRODUCT - Closely partner with the business and the team OWNER are the to ensure everyone understands the work items in the product backlog. champions for their product. - Give the team clear guidance on which features to deliver next. - Decide when to ship the product with a predisposition towards more frequent delivery. They coach teams, product owners, and the business on the scrum process, and look for ways to fine-tune their practice of it. The SCRUM MASTERS are the champions of An effective scrum master deeply scrum within their understands the work being done by the team and can help the team optimize their teams. transparency and delivery flow. As the facilitator-in-chief, he/she schedules the needed resources (both human and logistical) for sprint planning, stand-up, sprint review, and the sprint retrospective. Team members have differing skill sets, and cross-train each other so no one person becomes a bottleneck in the delivery of work. Strong scrum teams are self-organizing and The Scrum approach their projects with a clear ‘we’ Development attitude. All members of the team help one another to ensure a successful sprint Team are the completion. champions for The scrum team drives the plan for each sprint. They forecast how much work they sustainable believe they can complete over the iteration development using their historical velocity as a guide. Keeping the iteration length fixed gives the practices. development team important feedback on their estimation and delivery process, which in turn makes their forecasts increasingly accurate over time. SCRUM ARTIFACTS Scrum artifacts are important information used by the scrum team that helps define the product and what work to be done to create the product. There are three artifacts in scrum: PRODUCT BACKLOG, a SPRINT BACKLOG, and an INCREMENT with your definition of “done”. They are the three constants a scrum team should reflect on during sprints and over time. PRODUCT BACKLOG is the primary list of work that needs to get done and maintained by the product owner or product manager. This is a dynamic list of features, requirements, enhancements, and fixes that acts as the input for the sprint backlog. It is, essentially, the team’s “To Do” list. SPRINT BACKLOG is the list of items, user stories, or bug fixes, selected by the development team for implementation in the current sprint cycle. A sprint backlog may be flexible and can evolve during a sprint. However, the fundamental sprint goal – what the team wants to achieve from the current sprint – cannot be compromised. INCREMENT (OR SPRINT GOAL) is the usable end-product from a sprint. - Sprint Goal is the objective that the team aims to achieve in a sprint. - Increment is the sum of all completed work that meets the Definition of Done and contributes towards achieving the Sprint Goal, resulting in a usable product version. Principles behind the Agile Manifesto The most efficient and effective method of conveying information to and within a development We follow these principles: team is face-to-face conversation. Working software is the primary measure of Our highest priority is to satisfy the customer progress. through early and continuous delivery Agile processes promote sustainable development. of valuable software. The sponsors, developers, and users should be able Welcome changing requirements, even late in to maintain a constant pace indefinitely. development. Agile processes harness change for Continuous attention to technical excellence the customer's competitive advantage. and good design enhances agility. Deliver working software frequently, from a Simplicity--the art of maximizing the amount couple of weeks to a couple of months, with a of work not done--is essential. preference to the shorter timescale. The best architectures, requirements, and designs Businesspeople and developers must work emerge from self-organizing teams. together daily throughout the project. At regular intervals, the team reflects on how Build projects around motivated individuals. to become more effective, then tunes and adjusts Give them the environment and support they need, its behavior accordingly. and trust them to get the job done. Example of the Scrum Framework Scenario: Developing a New "Dark Mode" Feature for a Mobile App Your team is tasked with developing a "Dark Mode" feature for a mobile app. This feature allows users to switch the app's interface to a dark theme, which is easier on the eyes in low-light environments. 1. Product Backlog: The Product Owner (who represents the stakeholders and users) creates a list of all the tasks and features needed for the app, including the new "Dark Mode" feature. Each item in the Product Backlog is prioritized based on its importance, user needs, and business value. For this example, "Dark Mode" is a high-priority item. 2. Sprint Planning: The Scrum Team holds a Sprint Planning meeting to decide what work will be done in the next sprint (a time-boxed period, usually 1-4 weeks). The team selects the "Dark Mode" feature from the Product Backlog to work on in this sprint. They break down the feature into smaller tasks, such as: Design the Dark Mode theme. Implement the theme toggle in the app settings. Test the Dark Mode on different devices. These tasks are moved to the Sprint Backlog, a list of tasks the team commits to completing during the sprint. 3. Sprint Execution: The team starts the sprint, which will last for two weeks. They work on the tasks from the Sprint Backlog, focusing on completing the "Dark Mode" feature. Every day, the team holds a Daily Stand-up (Daily Scrum) meeting. In this short meeting (about 15 minutes), each team member shares: What they did yesterday. What they plan to do today. Any blockers or obstacles they are facing. The Scrum Master facilitates this meeting and helps remove any obstacles the team faces. 4. Sprint Review: At the end of the two-week sprint, the team holds a Sprint Review meeting. They present the completed "Dark Mode" feature to the Product Owner and other stakeholders. The stakeholders provide feedback. For example, they might suggest making the dark theme even darker or changing the color of the text for better contrast. Based on this feedback, the team discusses what needs to be done next. 5. Sprint Retrospective: After the Sprint Review, the team holds a Sprint Retrospective meeting to reflect on their process during the sprint. They discuss what went well (e.g., good communication, completed all tasks on time), what didn’t go well (e.g., some tasks took longer than expected), and what they can improve for the next sprint (e.g., better estimating task time). The team agrees on a few action items to improve in the next sprint. 6. Next Sprint: The team starts a new sprint, possibly with tasks related to refining the "Dark Mode" feature based on the feedback or beginning work on the next prioritized feature from the Product Backlog. Key Elements of the Scrum Framework in Action: Roles: Product Owner prioritizes the work and ensures it aligns with business goals. Scrum Master facilitates the process, helping the team follow Scrum rules and remove blockers. Development Team works together to complete the tasks in the Sprint Backlog. Artifacts: Product Backlog: The list of all desired features and tasks, prioritized by the Product Owner. Sprint Backlog: The list of tasks chosen for the current sprint that the team commits to completing. Increment: The "Dark Mode" feature is the product increment at the end of this sprint – it is a working, usable piece of the app. Ceremonies: Sprint Planning: Decide what to do in the sprint. Daily Scrum (Stand-up): Short daily meetings to align the team and address any issues. Sprint Review: Present the completed work to stakeholders and get feedback. Sprint Retrospective: Reflect on the sprint and identify areas for improvement. In this example, the Scrum framework helps the team work collaboratively, break down complex work into manageable tasks, continuously communicate, and adapt based on feedback. This leads to a better final product ("Dark Mode" feature) delivered in a structured yet flexible way. End!