MSP INFRASTRUCTURE RENEWING

Agenda

  • Goals
  • Team resources
  • Video introductions
  • Introduce process & elements
  • My role in this project

GOALS

  • Model every aspect of each service with puppet
  • Write tests for every service
  • Tests can be used in every environment
    • early detection of bugs in dev, test and int
    • could enable self-monitoring in production
  • Deploy to all environments (dev/test/int/prod)
  • Migrate service data and make services productive
  • Decomission old services

TEAM RESOURCES

  • Planning
    • 1EH* per Engineer per Week
    • 6EH* per Week total
  • Engineering
    • 1ED* per Engineer per Week
    • 6ED* per Week total

* Effort Day (ED) = Personentag (PT)

* Effort Hour (EH) = Personenstunde (PD)

APPROACH

using Agile Methods

Scrum/Kanban "light"

  • We will use elements from Scrum & Kanban
  • Tailored for this team & project
  • Method will be adapted in the process if needed

Scrum

Kanban

DevOps

Used Elements

  • Artifacts
    • Stories
    • Tasks
    • Backlog
    • Definition of Done (DoD)
  • Ceremonies
    • Planning
    • ​Stand-up
  • Techniques
    • Kanban Board
    • Work in Progress Limits (WIP)
    • Pair Programming

Stories

  • are written from the perspective of the user
  • identify single requirement
    • Who wants this requirement?
    • What is the requirement?
    • Why is the requirement needed?
  • contain no implementation details
  • Possible estimations:
    1, 2, 3, 5, 8, 13, 20 or 40 hours

Stories

Tasks

  • specific work items for a single story
  • contain all the implentation details needed
  • will be estimated again for a more detailed figure

Backlog

  • collection of stories with or without tasks
  • prioritized by order

Backlog Example

Definition of Done / DoD

  • List of criteria to be met in order for a story to be considered done
    • Code is documented
    • Tests are written and running
    • Documentation is complete
  • Verification of the DoD is a distinct workflow step

Planning

  • One hour peer week
  • Create new stories
  • Estimate stories
  • Break up stories into tasks
  • Estimate tasks
  • Making sure that there are alway enough stories and tasks to work on

Stand-up

  • 15 minutes per day
  • Every team member is standing
  • Every team member answers three questions:
    • What have I done since the last stand-up
    • What will I be doing today
    • What is blocking me?

Work in Progress Limits

  • Efficiency through focus
  • Limits the work on the number of:
    • stories (we will begin with 1)
    • tasks (we will begin with 2)
  • Forces team to "swarm" on stories

Physical board

  • Backlog space with backlog items
    • stories with tasks will be stacked
  • Space for stories that are being currently worked on:
    • Lane/Row for each story
    • Colums for each  workflow step
      • TODO
      • WIP
      • DoD
      • MIGRATE
      • DONE

Board Example

Pair Programming

  • Two persons work on one workstation in two roles
    • Driver does write code
    • Observer constantly reviews code
  • Roles are frequently switched
  • Observer considers strategic direction of work
  • Driver can focus attention on tactical aspects

Benefits of Pair Programming

  • Economical
  • Design Quality
  • Satisfaction
  • Learning
  • Team-building and communication

My role in this project

  • Guiding the first few planning meetings
  • Guiding the first few pair programming sessions
  • Guiding the architectural direction of puppet code
  • Reviewing all the puppet code written
  • Participating in completing stories & tasks

MSP Infrastrucutre Renew

By Simon Josi

MSP Infrastrucutre Renew

  • 768