introduction to agile and scrum

34
Introduction to Agile 1 By: Mohamed Saad 2012 – Dec

Upload: inovaeg

Post on 14-Apr-2017

352 views

Category:

Real Estate


0 download

TRANSCRIPT

Page 1: Introduction to agile and scrum

Introduction to Agile

By: Mohamed Saad

2012 – Dec

Page 2: Introduction to agile and scrum

Agenda Development Methodologies What is Agi le? Why Agi le? Agi le Methods SCRUM

› ROLES› Spr in t› Meet ings› Ar t i f ac t s

References.

Page 3: Introduction to agile and scrum

Development Methods Predictive methods:

› Contrast, focus on analyzing and planning the future in detail and cater for known risks.

› Project may have difficulty changing direction. Adaptive methods (e.g. Agile):

› Adaptive methods focus on adapting quickly to changing realities.

› An adaptive team will have difficulty describing exactly what will happen in the future.

Page 4: Introduction to agile and scrum

What is Agile? Agile software development is a group of

software development methods based on iterative and incremental development.

Requirements and solutions evolve through collaboration between self-organizing, cross-functional teams.

It promotes adaptive planning, evolutionary development and delivery, a time-boxed iterative approach.

Encourages rapid and flexible response to change.

Page 5: Introduction to agile and scrum

Why Agile?(Agile Manifesto)

Individuals and interactions over processes and tools.

Working software over comprehensive documentation.

Customer collaboration over contract negotiation.

Responding to change over following a plan.

Page 6: Introduction to agile and scrum

Agile MethodsCommon Characteristics

Promote development, teamwork, collaboration, and process adaptability throughout the life-cycle of the project.

Agile methods break tasks into small increments with minimal planning and do not directly involve long-term planning.

Iterations are short time frames (timeboxes) that typically last from one to four weeks.

Each iteration involves a cross functional team working in all functions: planning, requirements analysis, design, coding, unit testing, and acceptance testing.

At the end of the iteration a working product is demonstrated to stakeholders.

Page 7: Introduction to agile and scrum

Agile MethodsCommon Characteristics

Team composition in an agile project is usually cross-functional and self-organizing, without consideration for any existing corporate hierarchy or the corporate roles of team members.

Agile methods emphasize face-to-face communication over written documents.

Each agile team will contain a customer representative.

Daily face-to-face communication among team members and customer representative and any interested stakeholders as observers.

Agile development emphasizes working software as the primary measure of progress.

Page 8: Introduction to agile and scrum

Agile Methods Scrum Extreme Programming (XP) Crystal Clear Agile Modeling Agile Unified Process (AUP) Dynamic Systems Development Method (DSDM) Feature Driven Development (FDD) GSD Kanban (development) Lean software development Velocity tracking

Page 9: Introduction to agile and scrum

SCRUM What is SCRUM? Roles Sprint Meetings Tools

Page 10: Introduction to agile and scrum

What is SCRUM? Scrum is an iterative and incremental agile

software development framework for managing software projects and product or application development.

Scrum focuses on project management where it is difficult to plan ahead.

Mechanisms of empirical process control, where feedback loops that constitute the core management technique are used as opposed to traditional command-and-control oriented management.

Page 11: Introduction to agile and scrum

Roles Core roles

› Product Owner› Development Team› Scrum Master

Ancillary roles› Stakeholders› Managers

Page 12: Introduction to agile and scrum

Core Roles Product Owner

› Represents the stakeholders and is the voice of the customer. He or she is accountable for ensuring that the team delivers value to the business.

› The Product Owner writes customer-centric items (typically user stories), prioritizes them and adds them to the product backlog and adds them to the product backlog.

› Scrum teams should have one Product Owner.

Page 13: Introduction to agile and scrum

Core Roles Development Team

› The Development Team is responsible for delivering potentially shippable product increments at the end of each Sprint.

› Development Team is made up of 3–9 people with cross-functional skills who do the actual work (analyse, design, develop, test, technical communication, document, etc.)

› Development Team in Scrum is self-organizing.

Page 14: Introduction to agile and scrum

Core Roles Scrum Master

› Accountable for removing difficulties for the ability of the team to deliver the sprint goal/deliverables.

› Scrum Master is not the team leader.› Scrum Master ensures that the Scrum process

is used as intended.› It is recommended that this role not be

combined with that of Scrum Master.

Page 15: Introduction to agile and scrum

Core Roles Stakeholders

› Are the customers, vendors.› They are only directly involved in the process

during the sprint reviews. Managers

› People who control the environment.

Page 16: Introduction to agile and scrum

Sprint

Page 17: Introduction to agile and scrum

Sprint A sprint is the basic unit of development in Scrum. Sprints last between one week and one month. Each sprint is preceded by a planning meeting. During each sprint, the team creates finished

portions of a product. The Sprint backlog come from the product

backlog. Development is timeboxed such that the sprint

must end on time. If requirements are not completed for any reason they are left out and returned to the product backlog.

Page 18: Introduction to agile and scrum

Sprint If requirements are not completed for any

reason they are left out and returned to the product backlog.

If requirements are not completed for any reason they are left out and returned to the product backlog.

A key principle of Scrum is its recognition that during a project the customers can change their minds about what they want and need.

Page 19: Introduction to agile and scrum

Meetings Daily Scrum

› Guidelines: All members of the development Team come

prepared with the updates for the meeting. The meeting starts precisely on time even if some

development team members are missing. The meeting should happen at the same location and

same time every day. The meeting length is set (timeboxed) to 15 minutes. All are welcome, but normally only the core roles

speak.

Page 20: Introduction to agile and scrum

Meetings› Main points:

What have you done since yesterday? What are you planning to do today? Any impediments/stumbling blocks?

Page 21: Introduction to agile and scrum

Meetings Backlog grooming: storytime

› This is the process of estimating the existing backlog using effort/points

› Refining the acceptance criteria for individual stories› Breaking larger stories into smaller stories.› Guidelines:

Meetings should not be longer than an hour Meeting does not include breaking stories into tasks The team can decide how many meetings are needed

per week.

Page 22: Introduction to agile and scrum

Meetings Scrum of Scrums

› Working With Multiple Scrum Teams› Each day normally after the Daily Scrum.› Guidelines:

Allow clusters of teams to discuss their work, focusing especially on areas of overlap and integration.

A designated person from each team attends.

Page 23: Introduction to agile and scrum

Meetings› Main Points:

What has your team done since we last met? What will your team do before we meet

again? Is anything slowing your team down or

getting in their way? Are you about to put something in another

team’s way?

Page 24: Introduction to agile and scrum

Meetings Sprint planning meeting

› At the beginning of the sprint cycle.› Guidelines:

Eight-hour time limit (1st four hours) Entire team: dialog for prioritizing

the Product Backlog. (2nd four hours) Development Team: hashing out a

plan for the Sprint, resulting in the Sprint Backlog.

Page 25: Introduction to agile and scrum

Meetings› Main Points:

Select what work is to be done. Prepare the Sprint Backlog that details the

time it will take to do that work, with the entire team.

Identify and communicate how much of the work is likely to be done during the current sprint.

Page 26: Introduction to agile and scrum

Meetings Sprint review meeting

› At the end of a sprint cycle.› Guidelines:

Four-hour time limit.› Main Points:

Review the work that was completed and not completed.

Present the completed work to the stakeholders. Incomplete work cannot be demonstrated

Page 27: Introduction to agile and scrum

Meetings Sprint retrospective

› At the end of a sprint cycle.› Guidelines:

Three-hour time limit. This meeting is facilitated by the Scrum

Master.› Main Points:

What went well during the sprint? What could be improved in the next sprint?

Page 28: Introduction to agile and scrum

Artifacts Product Backlog

› Is an ordered list of "requirements" that is maintained for a product.

› It contains Product Backlog Items that are ordered by the Product Owner.

› The features added to the backlog are commonly written in story format.

› The product backlog contains rough estimates of both business value and development effort.

› Business values are the responsibility of the Product Owner and estimated efforts are determined by the Development Team.

Page 29: Introduction to agile and scrum

Artifacts Sprint Backlog

› Is the list of work the Development Team must address during the next sprint.

› Is derived by selecting stories/features from the top of the product backlog until the Development Team feels it has enough work to fill the sprint.

› Development Team should keep in mind the velocity of its previous Sprints.

› The stories/features are broken down into tasks by the Development Team.

› Development Team understands exactly what to do, and potentially, anyone can pick a task from the list.

Page 30: Introduction to agile and scrum

Artifacts Sprint Backlog

Page 31: Introduction to agile and scrum

Artifacts Increment

› Is the sum of all the Product Backlog Items completed during a sprint and all previous sprints.

Burn down› Is a publicly displayed chart showing remaining work in

the sprint backlog.› Updated every day.› It gives a simple view of the sprint progress.› Types of burndown:

release burndown chart: alternative release burndown chart.

Page 32: Introduction to agile and scrum

Artifacts Burn down

Page 33: Introduction to agile and scrum

Enjoy the Video

Page 34: Introduction to agile and scrum

References http://en.wikipedia.org/wiki/Agile_software

_development Agile For Dummies, CA Technologies

Edition The Art of Agile Development