Agile project management

Agile project management with HERMES and SCRUM

Why agile

Many developers use agile methods to master the complexity of developing products and systems. The SCRUM method is used as an example to show how HERMES interacts with agile development.

Positioning of agile development in the phase model

HERMES covers the entire life cycle of the project. SCRUM governs the organization and steering of the development team. However, the development team does not need to see the phase transitions. The development team's involvement in project steering is limited, as the development team is steered via product backlog and sprint backlog.

Figure 33 shows agile development throughout the HERMES phases.

Figure 33: Agile development throughout the HERMES phases
Figure 33: Agile development throughout the HERMES phases

The HERMES phases and the decision tasks with the milestones of steering, management and execution continue to be carried out by the project manager and project sponsor. Even in the case of agile development, the project sponsor and project manager perform their tasks within the framework of project steering and project management, as these are not covered by SCRUM.

In using agile development with SCRUM, the development team focuses on the following phases:

Initiation

The initiation phase focuses on conducting the study with solution options. Accordingly, development is not yet of significance in this phase.

Concept

SCRUM can be introduced for agile development in the concept phase once the development partner has been determined and the development scope has been defined in a sufficiently stable manner. The agile development module is used for this.

First, the task decide on SCRUM is carried out. Agile development with SCRUM has an impact on partners, users, developers and operators. Therefore, the decision is made consciously with the involvement of those affected. The introduction of SCRUM is then planned and carried out using the task introduce SCRUM. Thereafter, the first sprints can be carried out. These can be used to verify the system architecture with a prototype (proof of concept).

The decision on the system architecture is made in the concept phase. For this purpose, the architecture must be created in such detail that it can be checked by the competent controlling and compliance body and the decision on the system architecture can be made. This ensures the sustainability of the IT system before many resources go into development.

Implementation

The focus of agile development is on the implementation phase. With agile development, the detailed specifications are prepared at a time that is close to development. The development of the system/product is carried out in sprints according to the respective detailed specifications.

Deployment

Further sprints are carried out in the deployment phase. In the process, corrections, bug-fixing, etc. take place in an agile manner until the system is accepted.

Scenarios

HERMES offers two standard scenarios that include agile steering of development with SCRUM:

  1. Customized IT application (agile)
  2. Service/product (agile)

With these scenarios, the user has an immediately applicable method for the agile steering of development.

The following section describes how HERMES and SCRUM are used together in an IT development project.

Agile development module

SCRUM is included in HERMES as the agile development module. It contains all SCRUM artefacts as outcomes, and the SCRUM events are integrated into the tasks.

Figure 34 shows the positioning of the agile development module in the customized IT application (agile) scenario. The module is at the management hierarchy level. It complements the project management module, whose outcomes and tasks are still needed because they are not covered by SCRUM.

Figure 34: Positioning of the agile development module
Figure 34: Positioning of the agile development module

The modules at the execution hierarchy level are still required, as SCRUM does not provide any information on the specific tasks and outcomes concerning procurement, development of the IT system, testing, migration, etc., and instead focuses on the agile steering of development.

Roles

SCRUM has three roles. They supplement the roles of the HERMES method and are lived out as defined in the SCRUM Guide™.

HERMES assumes that one person can hold several roles (role accumulation). This means that a HERMES role holder can also take on a SCRUM role. The table shows role accumulation possibilities.

Table 49: Role accumulation possibilities with SCRUM

SCRUM role

HERMES candidate for the SCRUM role

Product owner

Business analyst

User's project manager

Business process owner

Application owner

IT architect

Development team

Developer, business analyst, test manager, tester

SCRUM master

Developer, business analyst

HERMES and SCRUM have a fundamentally different understanding of team management. While HERMES assumes that the project manager issues work orders, the work of the SCRUM team is steered by the product owner via the product backlog, and the team organizes its work independently.

Maintaining the roles defined in SCRUM is a key success factor for the application of SCRUM. If roles are accumulated, it is important to ensure that the role defined in SCRUM is adhered to by the role holder.

Tasks

Extensive focus of tasks

The tasks' focus on software development is more extensive in the agile development module than is the case in SCRUM. The table shows the tasks of the agile development module and how they are related to the SCRUM Guide™.

Table 50: HERMES tasks and how they are related to the SCRUM Guide™

HERMES task

HERMES task description

SCRUM Guide™

Decide on agile development using SCRUM

The decision forms the basis for agile development using SCRUM. It determines how the agile work for development with SCRUM is done and how it is introduced.

Not available

Introduce SCRUM

The targeted introduction of SCRUM creates the prerequisite for agile development.

Not available

Keep a product backlog

The product backlog creates the prerequisite for drawing up the release plan and conducting sprints.

Part of SCRUM.
An activity of the product owner role.

Design release plan

The release plan forms the basis for conducting sprints, planning the delivery of a release to the users and coordinating activities with the affected bodies.

Not available

Conduct sprints

Conducting a sprint leads to an agreed, concrete and verifiable outcome.

The sprint is at the heart of SCRUM.
It contains all SCRUM outcomes and is described in the SCRUM Guide™.
In HERMES, the SCRUM events are listed as activities in this task.

Particular attention must be paid to the following tasks of the project management module in the case of agile development:

Lead change management

Prioritizing the product backlog leads to changes in the scope of goods/services. The project managers of the user and developer lead change management according to the process that has been defined for the project and is recorded in the project management manual. SCRUM does not make this task superfluous.

Even if using SCRUM, attention must still be paid to the scale and scope of the project. An extension of the scope or a shift in the project scope can affect the core organization and must be assessed by the competent bodies. These include in particular the project sponsor and the controlling and compliance body responsible for project portfolio management.

Agree on and steer goods/services

Goods/services are steered by prioritizing the requirements using the product backlog and sprint backlogs.

In the case of service level agreements at fixed prices, changes in the scope of goods/services lead to contract amendments. The change status list forms the basis for this.

Positioning of HERMES and SCRUM

SCRUM is used as a supplement to HERMES in a project using agile development with SCRUM.

The table shows the fundamentally different positioning of HERMES and SCRUM. It clearly demonstrates that SCRUM does not replace HERMES, and instead supplements it when required.

Table 51: Different positioning of HERMES and SCRUM

Focus

HERMES

SCRUM

Project life cycle

HERMES covers the entire life cycle of the project, i.e. from the project initiation order to project closure.

SCRUM covers the period in which development takes place.

The phase model defines differentiated decision points at which the project is coordinated with the core organization (e.g. for the coordination of the system architecture).

SCRUM does not define any differentiated decision points for coordination with the core organization.

Outcomes, tasks, roles

HERMES defines all outcomes, tasks and roles for specific scenarios.

SCRUM defines the outcomes (artefacts), tasks (events) and roles required for the agile steering of development.

Outcomes, tasks and roles are tailored to the concrete project content (i.e. to the characteristics of a project). They are specific.

Outcomes, tasks and roles are not tailored to the concrete project content (i.e. to the characteristics of a project).

HERMES describes concrete tasks for the production of project-specific outcomes.

SCRUM does not describe concrete tasks for the production of project-specific outcomes.

SCRUM does not describe a development process; rather it "makes clear the relative efficacy of your product management and development practices so that you can improve" (quote from SCRUM Guide).

Hierarchy levels

HERMES distinguishes between the hierarchy levels of steering, management and execution. The roles are assigned to these three hierarchy levels.

SCRUM distinguishes between the levels of steering and execution.

HERMES comprises several modules, each of which is assigned to one of the hierarchy levels.

The differentiation of these hierarchy levels is a significant governance element.

Partners

HERMES defines the cooperation between the user, developer and operator.

SCRUM defines the cooperation between the user (product owner) and developer (SCRUM team role).

Overview of the method components

HERMES and SCRUM consist of similar method components, making it easy to integrate the SCRUM framework into the HERMES method.

Table 52: HERMES and SCRUM method components

HERMES method components

SCRUM method components

Outcome

Artefact

Task

Event

Role

Role