DevOps toolchain
Technique · Chapter 13
DevOps toolchain
Section titled “DevOps toolchain”A toolchain is a set of programming tools combined to accomplish a task; a DevOps toolchain targets the development and delivery of software. Architects selecting tools should aim for consistency (e.g. one deployment tool across all environments, not different ones per environment). In a DevOps organization, operations staff use developer techniques too — operations assets should be in source control and have automated tests.
Tool categories
Section titled “Tool categories”DevOps tools generally support one or more of these activities:
| Category | Purpose |
|---|---|
| Plan | Define requirements and plan the work (product owners, business analysts evaluate value/effort, plan a release). |
| Create | Design, code, build — IDEs, version control, build automation, configuration management. |
| Verify | Ensure release quality — functional/non-functional testing, performance, acceptance, regression, release testing; static analysis; security scanning. |
| Package | Prepare a verified release for deployment — packaging configuration, triggering releases. |
| Release | Schedule and coordinate deployments into environments, including production. |
| Configure | Configuration management, application provisioning, infrastructure configuration. |
| Monitor | Track applications to find issues and gauge impact; production metrics reveal problem areas and confirm whether automation improved things (ties to the Measurement value of CALMS). |
Related
Section titled “Related”Citations
Section titled “Citations”- Software Architect’s Handbook (Packt, 2018), Ch.13 “DevOps toolchain”, pp. 1006-1007.