Posts filed under: Automated Deployment

Automated Deployment

This page contains posts by Jayme related to using technology to perform tasks normally done by humans when delivering software. Automated deployment is a simple concept, but it overlaps with several other popular topics to create confusion.

At its core, deploying a product or service through automation can be as simple as a process that runs once a night to copy files into a file system directory somewhere. In a more sophisticated scenario, it can be an orchestrated set of steps that makes changes to hundreds of computing nodes in a cloud environment such as Windows Azure or Amazon Web Services.

Automated deployment is closely related to Continuous Delivery. The deployment pipeline, the primary innovation in that practice, requires automated deployment to deliver software assets into various environments designated for inspecting the quality of a release before it gets to customers.

Automated deployment is also closely related to the DevOps Movement. When developers and operations personnel work together, they frequently use automation to modify infrastructure upon which software products and services run.


To release software smoothly, avoiding time wasted troubleshooting infrastructure issues - you might consider automating your infrastructure as code....
The settings used by your application, service, or product with software - need to change depending on the environment using configuration management....
To release software to your customers, you'll probably need several development environments. Let me help you decide how to set them up....
Much like what is happening in the “big data” space, challenges with interoperability in the IT deployment tool market are converging to create an opportunity for standardization. Before I go any further, let me introduce two terms that have no official...
While a team must adopt a customer-guided, acceptance criteria-driven culture to begin releasing IT assets frequently and with high quality, eventually an investment needs to be made to create a Deployment Pipeline. Put simply, this is a technology that enables an organization...
Ahh, estimating. We all hate to do it, but it's critical when releasing more often. The good news is it's not nearly as important to get it "just right" for an entire effort, but it is important that the current...
Most project teams have tried some permutation of an agile or SCRUM process by now, and a consistent theme amongst those I see on consulting engagements is a failure to deliver the work done in a sprint to users before...
Most software applications leverage a variety of third party libraries, middleware products, and frameworks to work. Each of these tools typically comes with its own method of configuration. How you manage this configuration has an impact on your ability to...
Since I adjusted the focus of my subject matter on this blog over the past couple of weeks, one of the main subjects I’ve been talking about is continuous delivery. This is a term coined in a book by the...
My post yesterday touched on one of the subjects related to software development that has really crystallized some of the process breakdowns I see in too many organizations out there. There is much time spent measuring developer output, but missing...
If you work on an application that uses a database, chances are you have to deal with releasing new versions of your software that make changes to it. The SQL language provides comprehensive support for making these types of changes...