Skip to main content
DevOps icon showing cogs

This post is from the XebiaLabs blog and has not been updated since the original publish date.

Last Updated Feb 06, 2012 — DevOps Expert

Ergonomics and Deployment Frameworks


Guest Post: Bob Aiello, Author of Configuration Management Best Practices, Practical Methods that Work in the Real World Ergonomics is the study of making work environments more efficient, usually for the purpose of avoiding injuries and improving productivity. Another important aspect of ergonomics is avoiding mistakes. When looking at the controls in the cockpit of a plane, the untrained observer can easily see that engineers have designed the controls to greatly minimize the possibility of a human error. So it is puzzling to observe that some software engineers create confusing, incomplete and contradictory installation instructions that often lead to costly mistakes and rework. Technology professionals pride themselves on being smart and creative. I can recall many conversations where my colleagues tried to impress each other with their ability to handle complex concepts that others could not possibly follow. I am not like that. I prefer to create processes and software automation that ensures that a junior software engineer could implement the release even at 2 am (half sleepy) after drinking a couple of beers. Building in such user-friendliness requires some creative software ergonomics. Some computer languages are rather confusing. Many Perl programmers make use of complex (powerful) regular expressions that can manipulate and process large amounts of data. But then again, trying to read (and understand) some Perl regular expressions is almost impossible. I am not attacking (or against the use of) Perl, although I will admit my own bias in favor of Ruby as a scripting language. I am not alone in this regard as many deployment engineers utilize, and even some deployment frameworks are being written in, Ruby. A deployment framework is a set of tools and processes designed to help manage the entire deployment process. This often includes taking the existing deployment scripts and placing them into the deployment frameworks, usually enjoying the features of a dashboard showing the status of each step of the release. This is where deployment frameworks and ergonomics can share some synergy. Build, package and deployment automation should be created with a focus on ergonomics. This means that your procedures, including scripts, should be easy to use and resistant to the errors frequently caused during human interaction. That sounds simple, but how specifically does one implement ergonomics in a script? I write my scripts to including testing (often called verification and validation) into each step. This approach can help the operator verify that the correct results are being achieved. Now I might just loose some of my gunslinger reputation by making my scripts easy to use, but this focus on clarity also means that we are able to release code more often and be completely error-free-. Another tip is to allow the available tools to do the work for you. Some Deployment frameworks have the built in intelligence to work with application servers (e.g. WebSphere, WebLogic, Jboss and Tomcat). A few even sport advanced features such as algorithmic based release automation. Do remember that this is an iterative process and may take you a few release cycles before your scripts operate without any required human intervention. In fact, in the beginning you should have specific places for your operator to pause, read the messages on the screen and then press enter when they are confident that the script is working correctly. Using the concepts learned from ergonomics will help you implement deployment automation that is fast, reliable and completely error-free!

More from the Blog

View more
Ascension Launch Banner
Apr 26, 2022

Get ready for peak performance with’s newest AI-Powered DevOps Platform Ascension Release

Today, is excited to announce our latest AI-Powered DevOps ...
Read More
Jan 24, 2022 Value Stream Delivery for SAFe®: The key to amazing business outcomes

The Scaled Agile Framework (SAFe) is the world’s leading framework for ...
Read More
Dec 09, 2021

How SaaS and cloud-based solutions helped the U.S. Department of Veterans Affairs achieve digital transformation

Modernizing legacy systems was an ongoing goal for the U.S. Department ...
Read More
Nov 29, 2021

Increase velocity and reduce risk with AI and machine learning

Artificial Intelligence (AI) and machine learning (ML) have proven use ...
Read More
Contact Us