Você está na página 1de 21

Agile With Scrum

Why choose “Agile”?

“Itis not the strongest of the species that


survive, nor the most intelligent, but the
ones most responsive to change.”
­ Charles Darwin, The Origin of Species
Agility implies

 individuals and iterations over processes and


tasks
 working software over comprehensive
documentation
 customer collaboration over contract
negotiation
 responding to change over following a plan.
Agile software development

 Agile methods emphasize real-time communication,


preferably face-to-face, over written documents.
 Most agile teams include all the people necessary to
finish software.
 This includes
– programmers and their "customers" (customers are the
people who define the product; they may be product
managers, business analysts, or actual customers).
– testers, interaction designers, technical writers, (as
Apllicapble)
– and ofcource managers.
Agile Project Methodology
 Empirical management & control process
 Inspect and adapt feedback loops
 Used to manage complex projects since 1990
 Delivers business functionality in short iterations
 Scalable to distributed, large, and long projects
 CMM Level/3 and ISO 9001 compliant
 Extremely simple but very hard
Agile Project Methodology

 Scrum

Scrum
Waterfall project management
Planning

Analysis
Design

Coding

Testing

Performance

User Acceptance

Pilot
Live
Time
Scrum Process
How do you do Scrum?
Understanding Roles

Create a Project Team


with three sets of roles

• Project Owner
• Scrum Master
• Scrum Team
Daily Scrums

 Daily 15 minute status meeting;


 Same place and time every
day;
 Three questions;
 What have you completed
since last meeting?
 What will you complete
before next meeting?
 What help do you need?
 Any decisions to be made?
Monthly Demonstration

 The Team presents


“Production quality”
features to Owner

 Unfinished/Next
items are discussed
Why Agile

Waterfall Agile
Requirements Cost Schedule
Constraints
Value /Vision
Driven
Plan
Driven

Estimates
Cost Schedule Features

The Plan creates cost/schedule estimates The Vision creates feature estimates
Project Roles/Responsibilities

Product Owner
Manage prioritized product backlog
Review test cases and requirements
Discuss trade-offs and clarifications with team

Scrum Master
Run start-of-day daily scrum
Facilitate issues resolution during GDC day
Collect and collate individual daily updates + hours
Protect team from scope changes during sprint
Project Roles/Responsibilities

Team (Example Tasks)


 Develop the sprint backlog
 Analyze, decompose and estimate tasks for backlog
 Write unit, acceptance and regression test cases
 Design, develop and test the features in the sprint
 Raise and solve issues with urgency
 Add items to the Sprint (as necessary)
Tools
Product Backlog – spreadsheet of all desired features for product
Product Burn-Down Graph – graph of the progress made in delivering
the items on the Product Backlog.
Sprint Backlog – spreadsheet of all tasks for features in a single sprint
Sprint Burn-Down Graph – graph of the progres made in delivering the
tasks in the Sprint backlog. Shows plan vs. actuals.

Daily Scrum Meeting – <30 min, action-oriented meeting to identify and


resolve issues and track status. Facilitated by consolidated daily,
individual status eMails.
Sprint Demonstration Meeting – meeting for team to demonstrate
features delivered in Sprint and to obtain feedback
Sprint Schedule

 Lastsfor 7 to 15 days
 Max a month

Each Sprint can be released to the customer


Cultural shifts

 Individual ownership and daily accountability eliminates end of project “death


march”. Each day is valuable!!

 Test driven development will ensure that we benefit from our collective
strengths and will enable us to gain customer acceptance quicker

 Issues can not linger… they must be attacked and solved quickly

 We won’t be implementing pair programming but the concept is sound and as


you feel comfortable seek that person that can improve your delivery.

 Agile is based on empirical analysis. Let’s measure and evaluate ourselves


at each step and constantly improve.
How To implement
1. understand scrum practices and rules

2. Team should Collectively build the Sprint Backlog


 Analyze the prioritized features in the product backlog
 Break these features into discrete “stories”
 Break these stories into discrete tasks
 Take ownership for tasks
 Estimate duration for each task
 Raise questions and seek clarifications from Prod. Owner
Points to Consider During
Estimation
 1. If estimation exceeds 8hrs for any given task, task should be broken down into 2
separate tasks.
 2. A task can have shared responsibilities. E.g. Both QA and Dev are responsible for a
task like ‘Write Unit Tests’. In this case, Sprint backlog will have 2 entries for the same
task - once for QA and once for Dev. In such a case, both QA and Dev should work
together towards the completing the task.
 3. Database schema/script modification tasks should have separate entries in the
sprint backlog. They should not be coupled with tasks related to code change.
 4. For any query modification, 2 separate entries should be created – one for DBA and
one for Dev, to integrate query with the app.
 5. Development tasks should be as less generic as possible. E.g. Task should mention
the actual type change required – Modify jsp, Modify DAO, Modify Converter, modify
resource bundle, modify struts.xml, add delegate and service bean method etc.
 6. Estimate carefully. Collectively we will all be accountable to deliver on our
estimates. Do the necessary research to get it right.
Questions

Você também pode gostar