Introduction to Agile and Scrum PDF
Document Details
Uploaded by SpiritualSard2286
CIIT College of Arts and Technology
Israel Villanueva
Tags
Summary
This document provides an introduction to Agile and Scrum methodologies, and compares these to Waterfall. It covers the advantages and disadvantages of each approach, outlining when each might be best employed for software development projects. The document also includes a section on when to avoid using Agile.
Full Transcript
CS211 Introduction to Agile and Scrum Israel Villanueva Waterfall Methodology Overview Sequential Process: Waterfall follows a linear and sequential approach. Phases: Divided into distinct phases such as requirements, design, implementation, testing, d...
CS211 Introduction to Agile and Scrum Israel Villanueva Waterfall Methodology Overview Sequential Process: Waterfall follows a linear and sequential approach. Phases: Divided into distinct phases such as requirements, design, implementation, testing, deployment, and maintenance. Inflexible: Changes are challenging to incorporate once a phase is completed. Suitability Well-Defined Requirements: Suitable for projects with well- understood and stable requirements. Small Teams: Ideal for smaller teams with clear roles and responsibilities. Agile Methodology Overview Iterative and Incremental: Agile emphasizes iterative development and incremental releases. Flexibility: Adaptable to changes even late in the development process. Customer Collaboration: Values customer feedback and collaboration throughout the project. Suitability Dynamic Requirements: Suited for projects with evolving or unclear requirements. Cross-Functional Teams: Encourages collaboration among cross-functional teams. Scrum Methodology Overview Framework within Agile: Scrum is a specific Agile framework with defined roles (Product Owner, Scrum Master, and Development Team). Sprints: Work is organized into fixed-duration sprints, typically 2-4 weeks. Daily Stand-ups: Regular short meetings to keep the team aligned. Suitability Complex Projects: Well-suited for complex projects with evolving requirements. High Collaboration: Requires a high level of collaboration and communication. Agile: Suited for projects with evolving requirements and a need for continuous adaptation. Scrum: Ideal for complex projects with dynamic requirements and a focus on collaboration. Waterfall: Best for well-defined projects with stable requirements and smaller teams. Advantages of Waterfall Well-Established Methodology Clear Requirements Structured Approach Proven Success Quality Control Disadvantages of Waterfall Slow Process Lack of Flexibility High Cost Limited Customer Involvement Limited Innovation Advantages of Agile Flexibility Customer Involvement Continuous Delivery Collaboration Early and Frequent Testing Disadvantages of Agile Lack of Predictability Limited Documentation Time and Resource Constraints Less Emphasis on Planning Resistance to Change Waterfall Software Development Agile Software Development It is used to develop simple software. It is used to develop complicated software. In this methodology, testing is done once the In this methodology, testing and development development phase is completed. processes are performed concurrently. It follows a linear It follows an iterative organizational structure. organizational expectation structure. Client involvement is less as compared to Agile Client involvement is high as compared to traditional development. software development. It provides less functionality in the software. It provides all the functionality needed by the users. It supports a fixed development model. It supports a changeable development model. It is used by freshers. It is used by professionals. Development cost is less using this methodology. Development cost is high using this methodology. It is less used by software development firms. It is normally used by software development firms. The expectation is favored in the traditional model. Adaptability is favored in the agile methodology. When not to use Agile? 1. Your project is not very urgent or too complex 2. Your team is not self-organizing and lacks professional developers 3. Your customer requires neat documentation of each development cycle 4. Your customer requires approvals at each stage of development 5. Your customer wants you to use the traditional methodology and doesn’t want to hear about Agile 6. Your organization does not invest in spreading Agile practices among the developers, testers, and management This item's classification is Internal. It was created by and is in property of the Home Credit. Do not distribute outside of the organization. THANK YOU This item's classification is Internal. It was created by and is in property of the Home Credit. Do not distribute outside of the organization.