Skip to main content

IT-Checklists.com - The eBook-Shop with Checklists and Templates for Professionals
logo
Skip main navigation
Template Systems Operations Manual Template Data Centre Operations Manual Data Migration Checklist Nonfunctional Requirements Interface (EAI) Checklist Server Upgrade / Migration Checklist Application Upgrade / Migration Checklist Application & Server Inventory Template Release Checklist Outage Planning Application Cloning Application Retirement Application Health check Archiving Requirements Disaster Recovery (DR) Technology Selection Backup OLA / SLA Database OLA / SLA DBA Job Description Database Health Check
DevOps Application Support Data Migration OLA / SLA Operations Level Agreement System Documentation Project Management Deployment Backup Quality Assurance Compliance and Standards Database Administration Data Centre Robustness Requirements Start-up PhaseAchieving Operational ReadinessStabilized Operations

Runbook Driven Development
- The Next Generation DevOps

Summary

  • The principles and benefits of TDD (Test Driven Development) are well understood and frequently adapted within Extreme Programming (XP) and Agile Development.
  • Test Driven Development moves the writing and scripting of test cases ahead of development.
  • The “Runbook Driven Development” moves additionally writing the Runbook ahead of writing the test cases.
Graphic comparing Test-Driven-Development and Runbook-Driven-Development Having an DevOps expert within an agile development team already utilizing Test Driven Development,
  • the introduction of “Runbook Driven Development” is simple,
  • but the gains are significant:
    • The Runbook will be available at time of delivery.
    • The early Availability of the Runbook enables Testers and Developers to reuse that information.
    • The Quality of the Runbook will be higher, as it is validated through testing and development.

Introduction

  • A Runbook is a mandatory part of delivery – there are no doubts about that.
  • But WHEN to write the Runbook?
DevOps recommends to start writing the Operations Manual already during development phase, within agile sprints.
Within an agile development team that includes an DevOps expert,
  • the architect has the clear vision how the functionalities being developed should work, and how to operate those,
  • the developers and testers gain deep understanding during the analysis and specification of backlog items being worked on,
  • the tester, participating in analysis and specifications gains the knowledge how to test the backlog item.
Conclusion: The team knows all details to be documented in the Operations Manual!
Question: Why to delay writing that chapter of the Operations Manual, resulting later in additional work to explain an document writer what he should write?
Recommendation: Go one step further! - Write the Operations Manual first such that TDD (Test Driven Development) can already utilize (and verify) the Operations Manual!

The Situation in an Agile Development team having a DevOps member utilizing Test Driven Development

Having a DevOps member in the development team will ensure that the the Runbook is written within each sprint.
Both Testers and Developers need to understand the new application's functionality and how it will be operated.

Concept

  • The principles and benefits of TDD (Test Driven Development) are well understood and frequently adapted within Extreme Programming (XP) and Agile Development.
  • The "Test Driven Development" moves the writing and scripting of test cases ahead of development.
  • The “Runbook Driven Development” moves additionally writing the Runbook ahead of writing the test cases.
Having an DevOps expert within an agile development team already utilizing Test Driven Development, the introduction of “Runbook Driven Development” is simple, but the gains are significant:
  • The Runbook will be available at time of delivery.
  • The early Availability of the Runbook enables Testers and Developers to reuse that information.
  • The Quality of the Runbook will be higher, as it is validated through testing and development.

Examples

Frequent Problem Test Driven Development RunBook Driven Development
The application is delivered without Runbook. That can't happen because the Runbook has been written already before or during writing the test cases.
When writing test cases, the tester identifies questionable implementation of a certain functionality which was not clearly specified and developer implemented based on his personal opinion. This is identified before implementation, an issue is raised immediately resulting in more clear specifications or even improved functionality specified. Missing functionalities, e.g.
  • how to back out / revoke a batch job
  • No point to resume batch jobs that terminated after many hours of processing
are identified before implementation and testing.
The tester needs to study specifications to figure out how to run the application. The tester has to ask the architect or developers.
  • The Runbook is already available.
  • The tester will find the information in the Runbook.
  • If this is not clear enough, the tester will request the enhancement of the Runbook
  • The Runbook is written in the last moment, after testing.
  • The Runbook has been reviewed mainly for compliance to document format (font size, size of margins, ...) and spelling errors
  • but the Runbook has never been tested
  • The Runbook exists.
  • The Runbook is used by the tester.
  • Testing would reveal errors in the Runbook.
  • => The Runbook is tested too!
The application is "thrown over the fence" after passing a minimal number of test cases. Much higher number of test cases have been developed and scripted already before start of implementation. Test cases include scenarios important for Operations Team.
After last minute changes only a few test cases related to the change are executed, but not all functionality is tested. Automated testing will cover all test. Automated testing will cover all test.

Template Application Runbook / Operations Manual

This template for an IT Operations Manual / Systems-Runbook will help you
  1. that no important item is forgotten and
  2. a common handbook structure is used throughout all systems. This will support easy cross-system troubleshooting and documentation.
The resulting Manual / Runbook is an important deliverable of the overall IT system for
  • compliance with documentation-requirements for systems and processes required by internal QA-department or internal auditing department or external auditors or other organizations and laws