Continuous delivery tools landscape

Since there is almost one tool released everyday in this space, it becomes impossible to keep up to date with the tools and there is a fear that real good tried and tested tools get lost in the midst of a newbie.

Objective of this infographic is to provide different categories of these tools and what are the most common tools in these categories which are used by enterprise organizations and thus are tried and tested.

If you are working in such organization and if you discovered a new tool which you are using and is working well then please do post your comments so I can update the infographic to include the same.

Description of each category (mostly from Wikipedia)

Code repository – A repository is a term used by most of the different source control tools to refer to the collection of source code. A source control instance can have many repositories. Usually a repository contains a project, or a group of projects that are closely related. Distinct projects would be a good example where you’d want to make use of multiple repositories.

Continuous integration – Continuous Integration is a software development practice where members of a team integrate their work frequently, usually each person integrates at least

Static code analysis – Static program analysis is the analysis of computer software that is performed without actually executing programs (analysis performed on executing programs is

Code coverage – In computer science, code coverage is a measure used to describe the degree to which the source code of a program is tested by a particular test suite. A

Configuration management – In software engineering, software configuration management is the task of tracking and controlling changes in the software, part of the larger cross-discipline field of configuration management. SCM practices include revision control and the establishment of baselines. If something goes wrong, SCM can determine what was changed and who changed it. If a configuration is working well, SCM can determine how to replicate it across many hosts

Application lifecycle management – Includes Change management and Issue management

Monitoring – operational monitoring of the application by providing operation intelligence

Application Release Automation – Includes application release and deploy

Testing automation – In software testing, test automation is the use of special software to control the execution of tests and the comparison of actual outcomes with predicted outcomes

 

Advertisements

4 thoughts on “Continuous delivery tools landscape

  1. Great post Pinak – I’d add a 10th category: PIpeline Visualization & Optimization. Our mission is to follow each new bit of code thru the delivery tool chain and provide realtime data regarding the status of each development effort while in flight… I’d be happy to give you a demo!

    Dennis Ehle
    CEO cloud sidekick

  2. The forgotten man of continuous delivery is the database changes that must accompany every application release. Datical has leveraged the successful Liquibase open-source project and created an Enterprise solution for managing database schema changes like code. Datical lets companies eliminate the hundreds of SQL scripts that are the antithesis of agile – versioning the database schema changes with the application changes so they can march together thru the SDLC

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s