Agile Development Workflows

Resources

agile

A professional alternative to waterfall development workflows.

Core Principles

  • Individuals and Interactions over processes and tools
  • Working Software over comprehensive documentation
  • Customer Collaboration over contract negotiation
  • Responding to Change over following a plan

Agile comes in many flavours but here are three we’ll talk about:

Lean Method

  • Resources
  • Core Principles
    • Define
    • Learn
    • Experiment
  • In practice:
    1. Document your Plan A with a lean canvas
    2. Identify the riskiest parts of your plan
    3. Systematically test your plan

Lean Canvas

Recommended order to complete a lean canvas:

  1. Customer segment: Target customers and users.
  2. Top 3 Problems experienced by your segment.
  3. Unique Value Proposition: A single, clear compelling message that turns an unaware visitor into an interested prospect (elevator pitch).
  4. Solutions: Outline a possible solution for each problem.
  5. Customer channels: List your path to customers.
  6. Revenue streams: List your sources of revenue.
  7. Cost structure: List your fixed and variable costs.
  8. Key Metrics: List the key numbers that tell you how your business is doing.
  9. Unfair Advantage: Something that can’t be easily copied or bought.

Scrum

  • Core Principles
    • Transparency
    • Inspection
    • Adaptation
  • In practice
    • Cycles are sprints
    • Standup meetings
    • Product Ownership

Kanban

  • Core Principles
    • Understanding
    • Agreement
    • Respect
    • Leadership
    • Flow
    • Customer Focus
    • Transparency
    • Balance
    • Collaboration
  • In practice:
    • Each process issues requests (kanban) to its suppliers when it consumes its supplies.
    • Each process produces according to the quantity and sequence of incoming requests.
    • No items are made or transported without a request.
    • The request associated with an item is always attached to it.
    • Processes must not send out defective items, to ensure that the finished products will be defect-free.
    • Limiting the number of pending requests makes the process more sensitive and reveals inefficiencies.