Скачать презентацию Overview of Scrum Agenda What is Agile Скачать презентацию Overview of Scrum Agenda What is Agile

1daee14ee1dfe2ceff47a0b7aa4cf141.ppt

  • Количество слайдов: 73

Overview of Scrum Overview of Scrum

Agenda What is Agile ? Agile Vs Traditional project management Agile Values and Principles Agenda What is Agile ? Agile Vs Traditional project management Agile Values and Principles Agile Triangle Agile Methodologies : Scrum, XP, Lean Agile Planning – Cone of uncertainty, planning levels Business case and Product vision Define- Project Scope, Use case, User story, Epic, Theme

Agenda • Overview of Scrum development process • • Product owner Scrum Master Scrum Agenda • Overview of Scrum development process • • Product owner Scrum Master Scrum development team Communicating with the stakeholders in Scrum Types of Sprint meetings The Scrum process • Pre-game phase • Game phase Tracking sprint progress • Burndown chart • Sprint task board, Metrics Examples

What is Agile ? Agile software development describes a set of principles for software What is Agile ? Agile software development describes a set of principles for software developmen under which requirements and solutions evolve through the collaborative effort of se -organizing cross-functional teams. Agile project management: - Respond to change - Use resources effectively - Foster strong ties with customers - Create customer solutions - Increase capacity

Agile Vs Traditional project management Agile project management differs from traditional project management in Agile Vs Traditional project management Agile project management differs from traditional project management in four fundamental ways:

Agile Vs Traditional project management Agile Vs Traditional project management

Agile Vs Traditional project management Agile Vs Traditional project management

Agile Vs Traditional project management Agile Vs Traditional project management

Agile Values Agile Values

Agile Principles Agile Principles

Agile Triangle Agile Triangle

Agile Methodologies Agile Methodologies

Agile Methodologies - Scrum One of the key Scrum practices - 10 -15 minutes Agile Methodologies - Scrum One of the key Scrum practices - 10 -15 minutes daily meetings known as scrums. In Scrum meetings, each team member answers three questions: In Scrum, a sprint is a fixed-length development period, or iteration, with a clear goal, consisting of an agreed set of work items to complete. A single sprint lasts from two weeks to a month. A Scrum team uses two types of backlog:

Agile Methodologies - XP XP is very disciplined approach and provides a programmer-centric model Agile Methodologies - XP XP is very disciplined approach and provides a programmer-centric model that is focused on the ongoing, rapid delivery of small releases of software. With XP, the interval between software releases is usually 30 -180 days. The period is further broken down into iterations, each lasting between one and four weeks.

Agile Methodologies - Lean software development provides guidelines for streamlining the development process so Agile Methodologies - Lean software development provides guidelines for streamlining the development process so that teams can meet customer needs much more efficiently.

Agile Planning Types: • Rolling wave planning- Planning in stages as a project progresses. Agile Planning Types: • Rolling wave planning- Planning in stages as a project progresses. • Progressive elaboration Benefits of Planning A good agile plan: • Basis for making decisions • Establishes goal • Maximize value • Minimize cost

Agile Planning- Cone of uncertainty In Agile project management, the Cone of Uncertainty describes Agile Planning- Cone of uncertainty In Agile project management, the Cone of Uncertainty describes the evolution of the amount of uncertainty during a project. Uncertainty not only decreases over time passing, but it also diminishes its impact by risk management, specifically by decision-making.

Agile Planning- Levels Agile Planning occurs at various levels: Agile Planning- Levels Agile Planning occurs at various levels:

Agile Planning- Levels Release Planning: Iteration planning: Agile Planning- Levels Release Planning: Iteration planning:

Agile Planning- Business case and Product vision Business Case: Business case is a short Agile Planning- Business case and Product vision Business Case: Business case is a short document outlining: Opportunity, Goals, Strategy, Project vision, Milestones, Investment and expected payback. Product vision: The product vision is a description of: What will be delivered- which is encapsulated in a vision statement, of who will be involved in creating a product, and of how the work will be done.

Define- Project Scope, Use case, User story, Epic, Theme Project Scope: A project's scope Define- Project Scope, Use case, User story, Epic, Theme Project Scope: A project's scope is the extent of the work it includes. Use Case: Use case provides an overview of a project's scope(similar to WBS). It describes how users must be able to interact with a system, and the required results. It also describes exceptions, or the steps that must occur in response to system errors. User Story: User stories break down the project's high-level requirements into specific, discrete requirements for particular product functions They are usually expressed using wording as : Epic: Epics are larger user stories that can't be implemented within the ideal time-frame of two to ten days, and for which the required work effort is difficult to estimate. Theme: An agile team may need to group user stories into themes in order to prioritize them as a set. The grouping criteria can be based on user stories relating to same feature, logical sequence, technical feasibility, and priorities.

Overview of Scrum development process Scrum is a framework for developing complex products. Scrum Overview of Scrum development process Scrum is a framework for developing complex products. Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. It allows us to rapidly and repeatedly inspect actual working software (every two weeks to one month). Thus Scrum is based on empirical process control where a Scrum team follows a continuous cycle of inspection and adaptation. Scrum framework: Roles : Product Owner, Scrum Master, Development Team Ceremonies : Sprint Planning, Sprint Review, Sprint Retrospective, Scrum of Scrums & Daily Scrum Meeting Artifacts : Product Backlog, Sprint Backlog, Burn down Chart, task boards etc.

Scrum in 100 words • Scrum is an agile process that allows us to Scrum in 100 words • Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. • It allows us to rapidly and repeatedly inspect actual working software (every two weeks to one month). • The business sets the priorities. Teams self-organize to determine the best way to deliver the highest priority features. • Every two weeks to a month anyone can see real working software and decide to release it as is or continue to enhance it for another sprint.

Product Owner The product owner: represents the interests of the customer, maintains the product Product Owner The product owner: represents the interests of the customer, maintains the product backlog and measures profitability in terms of return on investment(ROI). works closely with the development team and is available to answer questions throughout the project. is also responsible for the below functions: An effective product owner has specific personal and professional qualities:

Scrum Master The Scrum Master: provides training and guidance in the scrum approach, monitors Scrum Master The Scrum Master: provides training and guidance in the scrum approach, monitors the team's work, and attempts to remove any obstacles to productivity. is the expert on all Scrum-related issues and ensures that everyone works according to Scrum principles and practices. interacts closely with both the product owner and the development team. identifies and addresses obstacles to productivity and any performance issues in the development team. should posses the below qualities:

Scrum team The Scrum team/development team is a self-organizing, cross-functional team that takes responsibility Scrum team The Scrum team/development team is a self-organizing, cross-functional team that takes responsibility for meeting the requirements in the product backlog. A Scrum team usually consists of five to nine individuals who share the responsibility for developing a product and delivering it to the product owner at the end of each sprint. The development team decides how best to develop required functionality self-organizing Cross-functional contacts the Product owner when any questions arise about customer requirements

Communicating with the stakeholders in Scrum Effective communication is essential in the Scrum methodology. Communicating with the stakeholders in Scrum Effective communication is essential in the Scrum methodology. Scrum favors face-to-face communication over voice, text or even video communication. This is because it happens in real time, builds trust and encourages free flow of information. Additionally, visual forms of communication such as burndown charts, task boards, etc may be used to track and communicate progress. Reviews and demonstrations are also important for facilitating communication in Scrum. The types of meetings are:

Types of sprint meetings Sprint planning meeting: A sprint planning meeting takes place at Types of sprint meetings Sprint planning meeting: A sprint planning meeting takes place at the start of each sprint. The purpose is for the product owner, Scrum Master, and the development team to negotiate the scope of the next sprint within a limited period of time, usually eight hours. The team prepares the sprint backlog and defines a sprint goal. Daily Scrum: During a daily Scrum or daily standup meeting which is usually 10 -15 minutes, team members discuss what was done during past day, what will happen during the next 24 hours, and any obstacles that have arisen. Scrum of scrums: Scrum of scrums is a meeting that takes place in large projects with multiple teams, to coordinate the work of the teams. A representative from each team meets after the daily standup meeting for not more than 15 minutes. Each representative outlines what the team did over the past 24 hours and what it will do that may affect other teams. The aim is to reveal problems or issues that may affect other teams. A Scrum of Scrums may be held only two or three times a week or daily depending on the project complexity.

Types of sprint meetings Sprint review meeting: A Sprint review meeting is held at Types of sprint meetings Sprint review meeting: A Sprint review meeting is held at the end of each sprint and lasts for a maximum of four hours. During the meeting, the development team presents the result of the sprint to the product owner, the Scrum Master and other stakeholders. The product owner assesses the result against the sprint goal and amends the product backlog accordingly. Sprint Retrospective: Sprint Retrospective is held after the sprint review meeting by the Scrum Master to discuss with the development team how the sprint went and how it could have been improved in the next sprint.

The Scrum process The Scrum process

Pre-game phase During the Pre-game phase, initial planning and design takes place. The product Pre-game phase During the Pre-game phase, initial planning and design takes place. The product owner: establishes project's goal defines product requirements creates an ordered list of requirements known as a product backlog decide on the number of product releases, set product delivery dates The development team reviews the backlog identify and assign deliverables to different sprints The development team and product owner review the product backlog to come up with a high- level design of how to implement items.

Game phase The game phase is where the core Scrum practices exist and where Game phase The game phase is where the core Scrum practices exist and where the bulk of the work is done. During the game phase, a Scrum team plans what work to include in each sprint and completes actual development tasks. Daily standup meetings happen during the sprint everyday to update everyone on their progress and any obstacles. Throughout the sprint, developers conduct unit tests and make corrections or improvements based on the results. Once a sprint ends, Sprint review meeting is conducted during which team presents the sprint result for customer review. Feedback is incorporated in plans for subsequent sprints. Sprint retrospective is conducted by the Scrum Master to review the sprint and identify possible improvements for upcoming sprints.

Tracking Sprint Progress- Sprint Burndown chart A sprint burndown chart tracks the cumulative number Tracking Sprint Progress- Sprint Burndown chart A sprint burndown chart tracks the cumulative number of hours of work remaining in a sprint against the number of days left in the sprint. It is also a good visual indicator of team's velocity- the rate at which work is being completed- compared to the estimated velocity.

Tracking Sprint Progress- Sprint task board, Metrics A sprint task board is used to Tracking Sprint Progress- Sprint task board, Metrics A sprint task board is used to track the status of individual tasks. Task board makes it possible to see at a glance which tasks still have to be started, which are in progress and which have been completed. Task boards are also referred to as 'information radiators'. They are publicly displayed and used to convey status information to a team. Metrics mentioned below can also be used to track sprint progress.

Scrum origins • Jeff Sutherland • Initial scrums at Easel Corp in 1993 • Scrum origins • Jeff Sutherland • Initial scrums at Easel Corp in 1993 • IDX and 500+ people doing Scrum • Ken Schwaber • ADM • Scrum presented at OOPSLA 95 with Sutherland • Author of three books on Scrum • Mike Beedle • Scrum patterns in PLOPD 4 • Ken Schwaber and Mike Cohn • Co-founded Scrum Alliance in 2002, initially within the Agile Alliance

Scrum has been used by: • Microsoft • Yahoo • Google • Electronic Arts Scrum has been used by: • Microsoft • Yahoo • Google • Electronic Arts • High Moon Studios • Lockheed Martin • Philips • Siemens • Nokia • Capital One • BBC • Intuit • Nielsen Media • First American Real Estate • BMC Software • Ipswitch • John Deere • Lexis Nexis • Sabre • Salesforce. com • Time Warner • Turner Broadcasting • Oce

Scrum has been used for: • • • Commercial software In-house development Contract development Scrum has been used for: • • • Commercial software In-house development Contract development Fixed-price projects Financial applications ISO 9001 -certified applications • Embedded systems • 24 x 7 systems with 99. 999% uptime requirements • the Joint Strike Fighter • Video game development • FDA-approved, life-critical systems • Satellite-control software • Websites • Handheld software • Mobile phones • Network switching applications • ISV applications • Some of the largest applications in use

Characteristics Self-organizing teams Product progresses in a series of monthlong “sprints” Requirements are captured Characteristics Self-organizing teams Product progresses in a series of monthlong “sprints” Requirements are captured as items in a list of “product backlog” No specific engineering practices prescribed Uses generative rules to create an agile environment for delivering projects One of the “agile processes”

The Agile Manifesto–a statement of values Individuals and interactions over Process and tools Working The Agile Manifesto–a statement of values Individuals and interactions over Process and tools Working software over Comprehensive documentation Customer collaboration over Contract negotiation Responding to change over Following a plan Source: www. agilemanifesto. org

Project noise level Complex Co m pl ica Simple te d Technology Source: Strategic Project noise level Complex Co m pl ica Simple te d Technology Source: Strategic Management and Organizational Dynamics by Ralph Stacey in Agile Software Development with Scrum by Ken Schwaber and Mike Beedle. Far from Certainty Close to Agreement Anarchy Close to Certainty Requirements Far from Agreement

Scrum 24 hours Sprint 2 -4 weeks Sprint goal Return Cancel Return Coupons Gift Scrum 24 hours Sprint 2 -4 weeks Sprint goal Return Cancel Return Coupons Gift wrap Cancel Product backlog Sprint backlog Coupons Potentially shippable product increment

Putting it all together Image available at www. mountaingoatsoftware. com/scrum Putting it all together Image available at www. mountaingoatsoftware. com/scrum

Sprints Scrum projects make progress in a series of “sprints” Analogous to Extreme Programming Sprints Scrum projects make progress in a series of “sprints” Analogous to Extreme Programming iterations Typical duration is 2– 4 weeks or a calendar month at most A constant duration leads to a better rhythm Product is designed, coded, and tested during the sprint

Sequential vs. overlapping development Requirement s Design Code Test Rather than doing all of Sequential vs. overlapping development Requirement s Design Code Test Rather than doing all of one thing at a time. . . Scrum teams do a little of everything all the time Source: “The New Product Development Game” by Takeuchi and Nonaka. Harvard Business Review, January 1986.

No changes during a sprint Change • Plan sprint durations around how long you No changes during a sprint Change • Plan sprint durations around how long you can commit to keeping change out of the sprint

Roles Scrum framework • Product owner • Scrum. Master • Team Ceremonies • Sprint Roles Scrum framework • Product owner • Scrum. Master • Team Ceremonies • Sprint planning • Sprint review • Sprint retrospective • Daily scrum meeting Artifacts • Product backlog • Sprint backlog • Burndown charts

Roles Scrum framework • Product owner • Scrum. Master • Team Ceremonies • Sprint Roles Scrum framework • Product owner • Scrum. Master • Team Ceremonies • Sprint planning • Sprint review • Sprint retrospective • Daily scrum meeting Artifacts • Product backlog • Sprint backlog • Burndown charts

Product owner Define the features of the product Decide on release date and content Product owner Define the features of the product Decide on release date and content Be responsible for the profitability of the product (ROI) Prioritize features according to market value Adjust features and priority every iteration, as needed Accept or reject work results

The Scrum. Master • Represents management to the project • Responsible for enacting Scrum The Scrum. Master • Represents management to the project • Responsible for enacting Scrum values and practices • Removes impediments • Ensure that the team is fully functional and productive • Enable close cooperation across all roles and functions • Shield the team from external interferences

The team • Typically 5 -9 people • Cross-functional: • Programmers, testers, user experience The team • Typically 5 -9 people • Cross-functional: • Programmers, testers, user experience designers, etc. • Members should be full-time • May be exceptions (e. g. , database administrator)

The team • Teams are self-organizing • Ideally, no titles but rarely a possibility The team • Teams are self-organizing • Ideally, no titles but rarely a possibility • Membership should change only between sprints

Roles Scrum framework • Product owner • Scrum. Master • Team Ceremonies • Sprint Roles Scrum framework • Product owner • Scrum. Master • Team Ceremonies • Sprint planning • Sprint review • Sprint retrospective • Daily scrum meeting Artifacts • Product backlog • Sprint backlog • Burndown charts

Team capacity Product backlog Business conditions Sprint planning meeting Sprint prioritization • • Analyze Team capacity Product backlog Business conditions Sprint planning meeting Sprint prioritization • • Analyze and evaluate product backlog Select sprint goal Sprint planning • Current product • Technology • Decide how to achieve sprint goal (design) Create sprint backlog (tasks) from product backlog items (user stories / features) Estimate sprint backlog in hours Sprint backlog

Sprint planning • Team selects items from the product backlog they can commit to Sprint planning • Team selects items from the product backlog they can commit to completing • Sprint backlog is created • Tasks are identified and each is estimated (1 -16 hours) • Collaboratively, not done alone by the Scrum. Master • High-level design is considered As a vacation planner, I want to see photos of the hotels. Code the middle tier (8 hours) Code the user interface (4) Write test fixtures (4) Code the foo class (6) Update performance tests (4)

The daily scrum • Parameters • • 15 -minutes • • Daily Stand-up Not The daily scrum • Parameters • • 15 -minutes • • Daily Stand-up Not for problem solving • • • Whole world is invited Only team members, Scrum. Master, product owner, can talk Helps avoid other unnecessary meetings

Everyone answers 3 1 questions What did you do yesterday? What will you do Everyone answers 3 1 questions What did you do yesterday? What will you do today? Is anything in your way? • These are not status for the Scrum. Master • They are commitments in front of peers 2 3

The sprint review • Team presents what it accomplished during the sprint • Typically The sprint review • Team presents what it accomplished during the sprint • Typically takes the form of a demo of new features or underlying architecture • Informal • 2 -hour prep time rule • No slides • Whole team participates • Invite the world

Sprint retrospective Periodically take a look at what is and is not working Typically Sprint retrospective Periodically take a look at what is and is not working Typically 15– 30 minutes Done after every sprint Whole team participates Scrum. Master Product owner Team Possibly customers and others

Start / Stop / Continue Whole team gathers and discusses what they’d like to: Start / Stop / Continue Whole team gathers and discusses what they’d like to: Start doing Stop doing This is just one of many ways to do a sprint retrospective. Continue doing

Roles Scrum framework • Product owner • Scrum. Master • Team Ceremonies • Sprint Roles Scrum framework • Product owner • Scrum. Master • Team Ceremonies • Sprint planning • Sprint review • Sprint retrospective • Daily scrum meeting Artifacts • Product backlog • Sprint backlog • Burndown charts

Product backlog This is the product backlog • The requirements • A list of Product backlog This is the product backlog • The requirements • A list of all desired work on the project • Ideally expressed such that each item has value to the users or customers of the product • Prioritized by the product owner • Reprioritized at the start of each sprint

A sample product backlog Backlog item Allow a guest to make a reservation As A sample product backlog Backlog item Allow a guest to make a reservation As a guest, I want to cancel a reservation. As a guest, I want to change the dates of a reservation. As a hotel employee, I can run Rev. PAR reports (revenue-per-available-room) Estimate 3 5 3 8 Improve exception handling 8 . . . 30 50

The sprint goal • A short statement of what the work will be focused The sprint goal • A short statement of what the work will be focused on during the sprint Life Sciences Database Application Support features necessary for population genetics studies. Make the application run on SQL Server in addition to Oracle. Financial services Support more technical indicators than company ABC with realtime, streaming data.

Managing the sprint backlog • Individuals sign up for work of their own choosing Managing the sprint backlog • Individuals sign up for work of their own choosing • Work is never assigned • Estimated work remaining is updated daily

Managing the sprint backlog • Any team member can add, delete or change the Managing the sprint backlog • Any team member can add, delete or change the sprint backlog • Work for the sprint emerges • If work is unclear, define a sprint backlog item with a larger amount of time and break it down later • Update work remaining as more becomes known

A sprint backlog Tasks Code the user interface Code the middle tier Test the A sprint backlog Tasks Code the user interface Code the middle tier Test the middle tier Write online help Write the foo class Add error logging Mon Tues Wed Thur Fri 8 4 8 16 12 10 4 8 16 16 11 8 8 8 4 12 8

Hours A sprint burndown chart Hours A sprint burndown chart

Tasks Mon Tues Wed Thur Fri Code the user interface Code the middle tier Tasks Mon Tues Wed Thur Fri Code the user interface Code the middle tier Test the middle tier Write online help 8 16 8 12 4 12 16 8 10 16 7 11 50 Hours 40 30 20 10 0 Mon Tue Wed Thu Fri 8

Scalability Typical individual team is 7 ± 2 people Scalability comes from teams of Scalability Typical individual team is 7 ± 2 people Scalability comes from teams of teams Factors in scaling Type of application Team size Team dispersion Project duration Scrum has been used on multiple 500+ person projects

Scaling through the Scrum of scrums Scaling through the Scrum of scrums

Scrum of scrums Scrum of scrums

A Scrum reading list Agile and Iterative Development: A Manager’s Guide by Craig Larman A Scrum reading list Agile and Iterative Development: A Manager’s Guide by Craig Larman Agile Estimating and Planning by Mike Cohn Agile Project Management with Scrum by Ken Schwaber Agile Retrospectives by Esther Derby and Diana Larsen

Reference • Agile Software Development Ecosystems by Jim Highsmith • Agile Software Development with Reference • Agile Software Development Ecosystems by Jim Highsmith • Agile Software Development with Scrum by Ken Schwaber and Mike Beedle • Scrum and The Enterprise by Ken Schwaber • Succeeding with Agile by Mike Cohn • User Stories Applied for Agile Software Development by Mike Cohn • Skillsoft Learning portal.