CS401 | sw engineering
  • outline
  • projects
  • syllabus
  • links

"Development" Frameworks (Agile) : Scrum and Kanban (and differences)

 

---- this is about how you work in development teams (not software frameworks)

 

 

 

 

Scrum

 

Design

  • Initial stage: create minimum functionality (a beginning "bare bones" version 0 of software)

  • iterative stage: again minimally increase functionality / limit changes

Cycles/Cadence

  • short cycles (i.e. 2 weeks or?) to be responsive to highest priority needs

  • a sprint = series of iterative stages to achieve a certain version of software. Do not introduce new features until a sprint is done.

Releases

  • Releases done at end of cycle and no new work done during release

Roles

  • Master - owns Scrum board, responsible for managing the exchange of information between team members

  • product owner - advocates for the customer, manages the product backlog, and helps prioritize the work done by the development team.

  • team members - assigned tasks in Scrum board

  • stakeholders - anyone with a vested interest in the product who is not part of the scrum team

Commitments

  • Based on detailed estimate of work hours, teams shoud not overcommit

  • Teams MUST commit to a minimum ammount of work

Team "types"

  • Each team should be cross-functional - meaning they involve all the different category of needs (like customer relations, business logic development, data teams, testing ,etc).

Meetings

  • Called a "Scrum" -daily (or often) meeting to discuss status all members must attend.

 

 

 

Kanban - more flexible

 

  • developed by Toyota and is focused on visualization and the Kanban board we discussed before.

    Continuous improvement, flexible processes --> less restricted than Scrum Framework

    Design

    • initial stage: can design as much or as little of entire system as team chooses

    • iterative stage: again minimally increase functionality / limit changes

    Cyles/Cadence

    • None specified, more responsive --work on current needs see the current tasks on Kanban Board

    Releases

    • Releases are done when ready, no specified time or scope necessary

    Roles

    • none required
    • Kanban Board can be shared by all
    • developers assigned tasks in Kanban Board.
    • HOWEVER, often there is a "leader/ agile coach" - who facilitates meetings and setups resources

    Commitments

    • Based on team members skills and related needs, no minimum or maximum required.

    • Like Scrum estimate of work hours should be performed

    Team "types"

    • Unlike Scrum no specification of team makeup (but, common sense should prevail --have what you need). Often Kanban teams may be specialized --having what they really need.

    Meetings

    • No specified schedule --as needed

     

     

 

 

A comparison.......

 

 

 

cs401:sw engieering

  • home
  • outline
  • projects
  • syllabus
  • links