Automation
Also Known As
- Automated Testing (in Extreme Programming)
- Automation (in Lean Software Development)
- Built-in Quality (in Scaled Agile Framework (SAFe))
- Continuous Delivery (CD)
- Continuous Integration (in Scaled Agile Framework (SAFe))
- Continuous Integration (CI)
- Formalisation
- Mechanisation
- Process Automation
- Pull Systems (in Lean Software Development)
Related
Addresses / Mitigates
- Operational Risk: Introduces more consistency in process operations and removes opportunity for human error
- Schedule Risk: Automating laborious tasks clears the schedule for higher-value work.
Attendant Risks
- Operational Risk: Automated processes may be less observable than manual ones.
- Complexity Risk: Introducing automation adds to the complexity of a project
- Feature Fit Risk: The automated process might not capture the variability of requirements of the original approach
- Communication Risk: The quality and performance characteristics may be obscured by automation.
- Process Risk: Automation introduces a process, which therefore means a new source of Process Risk.
- Agency Risk: Automated processes have their own agency and might not work as desired.
- Security Risk: Automation can introduce security issues if automated processes are given elevated privileges.
- Internal Model Risk: Automation of reporting and statuses can lead to false confidence about a system's health.
Used By
- Extreme Programming: XP emphasizes the use of automated tests to ensure the software works as expected.
- Lean Software Development: Lean uses automation to eliminate waste and improve efficiency, especially in testing and deployment processes.
- Scaled Agile Framework (SAFe): SAFe promotes built-in quality through continuous integration and automated testing.
- Scrum: Automation of tests and integration (CI/CD) is common in Scrum practices.
- TameFlow: TameFlow encourages automation to maintain flow efficiency and reduce manual bottlenecks.
Description
"Automation describes a wide range of technologies that reduce human intervention in processes, mainly by predetermining decision criteria, subprocess relationships, and related actions, as well as embodying those predeterminations in machines.": - Automation, Wikipedia
One of the key ways to measure whether your team is doing useful work is to look at whether, in fact, it can be automated. And this is the spirit of DevOps - the idea that people in general are poor at repeatable tasks, and anything people do repeatedly should be automated.
Variations
| Automation Type | Description | Reference |
|---|---|---|
| Continuous Integration | Automatically building and testing code changes as they are committed to the repository. | Continuous Integration, Wikipedia |
| Continuous Delivery | Automating the release process so software can be deployed to production at any time. | Continuous Delivery, Wikipedia |
| Infrastructure as Code | Managing infrastructure through machine-readable configuration files rather than manual setup. | Infrastructure as Code, Wikipedia |
| Robotic Process Automation | Using software robots to automate repetitive business processes and workflows. | Robotic Process Automation, Wikipedia |
Used By
Extreme Programming
An Agile software development methodology that emphasizes customer satisfaction, teamwork, and frequent delivery of small, functional software increments.
Why: XP emphasizes the use of automated tests to ensure the software works as expected.
- Automated Testing
Lean Software Development
An Agile software development methodology that emphasizes eliminating waste, building quality in, creating knowledge, deferring commitment, delivering fast, respecting people, and optimizing the whole.
Why: Lean uses automation to eliminate waste and improve efficiency, especially in testing and deployment processes.
- Pull Systems
- Automation
Scaled Agile Framework (SAFe)
A set of organization and workflow patterns for scaling lean and agile practices across large enterprises.
Why: SAFe promotes built-in quality through continuous integration and automated testing.
- Continuous Integration
- Built-in Quality
Scrum
An Agile framework for managing and completing complex projects.
Why: Automation of tests and integration (CI/CD) is common in Scrum practices.
TameFlow
A management approach for knowledge work that integrates Theory of Constraints, Kanban, and Agile principles to optimize the flow of work, information, and value.
Why: TameFlow encourages automation to maintain flow efficiency and reduce manual bottlenecks.