48

Scrum & Agile - imobilemagic

Embed Size (px)

Citation preview

agile product devstartup braga

february 18, 2016

company and team

who we are

enterprise

tourism

and

urban

gaming

social

and

media

PHONENEAR FAMILY SAFETYYOUR FAMILY ALWAYS CLOSE AND CONNECTED

A solution for mobile consumers who want to know that theirchildren or elderly relatives are safe at all times.

more soon...

hélder ribeiro

who am i

hélder ribeirosoftware architect | project manager

imobilemagic

Agile Development Methods

SCRUM Model

SCRUM

A play in Rugby in which the two sets of forwards

mass together around the ball

goals

Not following a process just for the sake of it

Improve the way things are done

Increasing capability to deliver software

code development

As a product grows code development can become chaotic

Code and fix cycle increases

Complex and does not scale

High overhead

Mandated activities

Long release cycles

Increasing debts: quality, knowledge, integration

Inability to keep up with business needs

“heroic” approach

Relies heavily on individual effort

Difficult to plan, results unreliable

High risk of failure

Heavy human cost

“formal” methodologies

Detailed, bureaucratic process

Engineering / construction-style planning – predictive of activities

Expensive, time-consuming to implement

Limited success, not popular with IT teams

“agile” methodologies

Just enough process

Adaptive rather than predictive

People-oriented

Faster and less-costly to implement

what is scrum

Framework for project management

Develops software in incremental steps

Features to complete in a time-box are closed

Works with your instincts and expertise

Simple to define, hard to implement

why scrum

Requires delivery of completed software

Focuses combined power of team

Incorporates learning and adaptation

Facilitates incremental adoption

scrum teams

SCRUM Master

Business Team Development Team

business team

Business Team

Product Owner

Stakeholders

Management

Marketing/Sales

Business Analyst

End Users

Customer Support

Training

Development Team

SCRUM Master

Manages product vision and ROI

Main responsibility is knowing what to build and in what sequence

Sets development schedule by analyzing and prioritizing requirements

Ensures that only one set of requirements drives development

Inspects product increments

Authority & Commitment

6-9 members per team

Team estimates costs and communicates trade-offs

Team self-organizes and self-manages tasks

Authority to do whatever is needed to meet commitment with Sprint backlog

development teams

Business Team

Development Team

Architects

Technical Leads

Programmers

QA / Testers

IA / UI Designers

DBA

Technical Writers

SCRUM Master

scrum master

Business Team

Development Team

SCRUM Master

Facilitator & Coach

Represents management to the project

Establish SCRUM practices and rules, and ensure team stays on-process

Shielding the team and removing obstacles

Improving the engineering practices and tools so each increment of functionality is potentially shippable

scrum process

Product Wish list

Owned by Product Owner

Captures product requirements

Prioritized list of work by business value and risk

Anyone can contribute backlog items

Supports coarse-grained estimating and planning

Product Backlog

Sprint

Sprint Planning Meeting

Sprint Backlog

Daily SCRUM Meeting

Sprint Review Meeting

Sprint Retrospective

product backlog

Development cycle

A fixed period of 30 days to develop a deliverable product increment

Product Backlog for Sprint remains stable during Sprint

Team works on and completes Backlog items

Development Team adjusts strategies and tasks as needed

Product Backlog

Sprint

Sprint Planning Meeting

Sprint Backlog

Daily SCRUM Meeting

Sprint Review Meeting

Sprint Retrospective

sprint

Product Backlog

Sprint

Sprint Planning Meeting

Sprint Backlog

Daily SCRUM Meeting

Sprint Review Meeting

Sprint Retrospective

Prepare

SCRUM Master, Product Owner and Development Team

Typically about one day in duration

Product Owner arrives with prepared Product Backlog

Two parts

Select Backlog for Sprint

Sprint Backlog Planning

sprint planning meeting

Product Backlog

Sprint

Sprint Planning Meeting

Sprint Backlog

Daily SCRUM Meeting

Sprint Review Meeting

Sprint Retrospective

What to implement

The list of tasks necessary to achieve the work selected for the sprint

Tasks must have estimates set by Development Team

Initial task assignments

Sufficient to gain mutual commitment and start Sprint

sprint backlog

Product Backlog

Sprint

Sprint Planning Meeting

Sprint Backlog

Daily SCRUM Meeting

Sprint Review Meeting

Sprint Retrospective

Informal but with rules

Same time and place

15 to 30 minutes (no more)

Pigs answers 3 questions:

1. What did you do since last SCRUM

2. What is in your way of doing work

3. What will you do before the next SCRUM

daily scrum meeting

Product Backlog

Sprint

Sprint Planning Meeting

Sprint Backlog

Daily SCRUM Meeting

Sprint Review Meeting

Sprint Retrospective

What are the results?

Typically about a half-day in duration

Development Team presents completed increment to all Business Team members

Incomplete Backlog items are not presented

Discuss and make Product Backlog adjustments

Next Sprint review scheduled

sprint review meeting

Product Backlog

Sprint

Sprint Planning Meeting

Sprint Backlog

Daily SCRUM Meeting

Sprint Review Meeting

Sprint Retrospective

How did things work?

Typically less than a half-day in duration

SCRUM Master, Development Team and Product Owner only.

Each team member answers two questions:

What went well during the Sprint?

What could be improved for the next Sprint?

Prioritize improvement issues

sprint retrospective

the zen of scrum

SCRUM is simple

Small number of practices

Practices are straightforward

SCRUM is hard

Requires involvement and common sense

Requires constant inspection and adaptation to project realities

SCRUM is subtle

Practices are synergistic

Higher-level benefits emerge

what to expect

Team will take time to learn how to self-organize

The process will quickly reveal constraints

You will want to tell the team how to solve problems

Team may have difficulties focusing on daily plan

You will need encourage visibility and transparency

commitment or involvement

Agile Development Methods

Kanban Model

same goals

Not following a process just for the sake of it

Improve the way things are done

Increasing capability to deliver software

what is it

Kanban is a visual process-management system that tells what to produce, when to produce it, and how much to produce - inspired by the Toyota Production System and by Lean manufacturing

basics

emphasis on just-in-time delivery while not overloading the team members.

In this approach, the process, from definition of a task to its deliveryto the customer, is displayed for participants to see.

Team members pull work from a queue.

the method

Start with existing process

Agree to pursue incremental, evolutionary change

Respect the current process, roles, responsibilities and titles

Leadership at all levels

the board