Warning: Trying to access array offset on value of type bool in /home/www/blog/wp-content/themes/catch-box/functions.php on line 1079

Surrounding SCRUM Part 2

This is a follow up to Surrounding SCRUM.
We build some kind of a software development kit. So is was important to provide helpful documentation and usage notes to other teams. Unfortunately we learned that this needs significant effort and some kind of special knowledge how to present things. So some kind of an editorial staff will be a good idea. Their responsibilities are e.g.:

  • FAQ
  • tutorials
  • getting started
  • code snippets
  • forum
  • architecture figures

Long running software projects mean lots of deliveries, lots of versions, revisions, tags, branches. The build system has to reflect that. We used a Hudson build-server for build (from various sources), deploy (local running VMWares for JUnit tests on a MacPro) and test (automatic HMI tests on VMWare test system). All this can be very tricky and needs a build manager. His responsibilities are e.g.:

  • build system admin
  • build on tags/branch/release
  • support for SCRUM team
  • integration support for test system

Our projects are living in a heterogeneous environment (many different hardware components and software versions). This means that a test system has to be complex as well. An integration manager has to do the following:

  • installation procedures
  • test system concept
  • test system configuration
  • execute automatic tests

We have long running projects with usually changing software developers and a problem with eroding software quality and architecture. This can be solved e.g. by architecture test tools and continuous metrics. A technical quality manager has to take care about:

  • architecture compliance
  • code metrics
  • technical test
  • code reviews

A software architect has to define the architecture in a way and structure others can make use of it. We all know that this is not as trivial as it sounds. A architecture has to be defined before a SCRUM team starts working and it will be changed by changed requirements. Its an agile process too. A software architect cares about:

  • solution architecture
  • application architecture
  • software layer and slices

SCRUM master:

  • has good soft skills
  • has a respectful relation the team members (and vice versa)
  • should be able to motivate the team and to make them feel comfortable
  • is creative not dogmatic in every way
  • knows the difference between responsibility and hierarchy

To be a product owner is a tricky job. Not a big problem if the PO is the customer as well. But this is not alway the case, f.e. in huge/distributed/governmental projects. He should care about:

  • budget
  • priorities
  • goal of the project
  • product features
  • product requirements