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