Agile project management
Agile project management with HERMES and SCRUM
Why agileMany 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 modelHERMES 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.
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:
InitiationThe initiation phase focuses on conducting the study with solution options. Accordingly, development is not yet of significance in this phase.
ConceptSCRUM 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.
ImplementationThe 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.
DeploymentFurther 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.
ScenariosHERMES offers two standard scenarios that include agile steering of development with SCRUM:
-
Customized IT application (agile)
-
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 moduleSCRUM 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.
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.
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 tasksThe 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™.
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.
|
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.
|
Particular attention must be paid to the following tasks of the project management module in the case of agile development:
Lead change managementPrioritizing 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/servicesGoods/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.
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.
HERMES method components |
SCRUM method components
|
---|---|
Outcome |
Artefact |
Task |
Event |
Role |
Role |