SCRUM Product Owner Training

April 2018

Dimi Balaouras

CTO & Software Architect
Experienced SCRUM Master
Certified SCRUM Product Owner

Expectations

  1. Basic Understanding of Agile Dev Principles
  2. Familiarise with the SCRUM Framework
    • Roles
    • Ceremonies
    • Artifacts
  3. Understanding of the Importance of the PO Role
  4. Basic Understanding of PO's Responsibilities

PART #1

SCRUM & Xtreme Programming & KanBan

An Introduction to Agile Development

Expectations

  1. Basic Understanding of Agile Dev Principles
  2. Familiarise with the SCRUM Framework
    • Roles
    • Rituals
    • Artifacts

PART #2

SCRUM PO Training

Expectations

  1. Familiarise with SCRUM's work flow
  2. Understand the nature of each SCRUM Role
  3. Understand of the Importance of the PO Role
  4. Understand of PO's Responsibilities

"I'm not interested in people's ideas ...until I see their execution."

—Derek Sivers​

How efficient is your Development Process?

Efficiency

  • Velocity
  • Quality
  • Time To Market
  • Customer Satisfaction
  • End-User Satisfaction
  • Developer Satisfaction
  • What is your ROI

HOW TO
build a Tool users need
 WHEN
clients can't know what they need before using it

Agile Development

SCRUM

XP

KanBan

AgileDevelopment

  • A methodology for Developing Software
  • Conceived in 2001 by 17 Software Engineers
  • It's typically presented as the solution to the waterfall framework problems.
  • Embraces Early Delivery and Adaptive Planning
  • Encourages change in specs and priorities.

Agile Manifesto

  1. Individuals and interactions over processes and tools
     
  2. Working software over comprehensive documentation
     
  3. Customer collaboration over contract negotiation
     
  4. Responding to change over following a plan

That is, while there is value in the items on
the right, we value the items on the left more.

Execution Goals

  • Self-organizing teams
  • Motivated, trusted developers
  • Customer-Developer collaboration
  • Sustainable development at a constant pace
  • Working software delivered frequently
  • Customer satisfaction
  • Developers satisfaction

SCRUM

An Agile Development Methodology

Origin: Rugby SCRUM

A SCRUM

SCRUM Framework

Roles

  • SCRUM Team (3-7 developers)
  • SCRUM Master (1 developer)
  • Product Owner (1 stakeholder)

Artifacts

  • User Story
  • Product Backlog
  • Sprint Backlog
  • Sprint
  • Release

SCRUM Metrics

  • Story Point
  • Team Capacity
  • Team Velocity
  • Test Coverage
  • Release Backlog Size

SCRUM Ceremonies

  • Sprint Planning (at the beginning of each sprint)
  • Daily Standup (daily)
  • Sprint Review (end of each sprint)
  • Retrospective (end of each sprint)
  • Backlog Grooming (any time)
  • Release Planning (any time)

Sprint Planning

Planning Poker

Daily Standup

Sprint Review

Sprint Retrospective

Use Cases

  • Startups
  • Small to Medium Software Houses (*)
  • Remote Teams
  • Actually...it's for any organization!
  • Not easy when you have parallel projects

*) Large organizations use SAFe

Recommended Tools

Xtreme Programming

An Agile Development Practice

Principles

  • Simplicity (start lean) / Vertical Slicing
  • Many , frequent and small Releases
  • Constant communication with the client
  • Plain/Simple Designs & Documentation
  • Distribute knowledge amongst the team
  • Monitor Code Quality
  • Test Driven Development

Practices

  • Pair Programming
  • Test Driven Development
  • Code Reviews
  • Continuous Integration
  • Measure Code Quality
  • Promote Refactoring

Pair Programming

Test Driven Development

Code Reviews

Continuous Integration

Use Cases

  • Small Co-located teams
  • Lean Startups
  • Together with SCRUM

Tools

  • Version Control Systems: Github, Gitlab, Bitbucket
  • Code Reviews: SmartBear's CodeCollab, Atlasian's Crucible
  • Cont. Integration: Jenkins
  • Security Scanning: Zed Attack Proxy, IBM AppScan
  • Cont. Deployment: Ansible, Fabric, Amazon Code Deploy.
  • Code Quality Management: SonarQube (open source)
  • Various Unit Testing frameworks
  • Code auto-formatters

KANBAN

A Visual Process Management Method

Inspired by: Toyota Production System

KanBan Board

Use Cases

  • Sprint Progress
  • Product Roadmaps
  • EPIC Backlog
  • Small Scrum Teams

Tools

Conclusion

You need an Agile Methodology When:

  • The team has >1 developers
  • The project is B2C
  • The customer doesn't know what features are really needed.
  • You want to build a strong Developers Team
  • You want to give your project a high pace

Attention to the following:

  • Product Owner (PO) is an extremely important Role.
  • A passive PO can destroy a product.
  • A good PO can create fantastic results.
  • Anticipate some chaos in the beginning.
  • Test Driven Development is required to ensure Quality
  • You need at least one experienced SCRUM Coach in the team.
  • The SCRUM coach MUST help the PO (not just the Devs).

Time for Questions!

Agile Development 101 (ENG)

By Dimi Balaouras

Agile Development 101 (ENG)

An introduction to Agile Development, focusing on XP, SCRUM and KanBan.

  • 604