Operations tools are used to operate and manage software after it is deployed into production, including tools for managing and updating software lifecycles, incidents and changes.
Developed code may need to be bundled with other code and dependant libraries and configurations. This server hosts software used to manage and create packages of code that are then processed by the deployment server.
Planning tools are used to organize a project plan for an application development project, and can further assist with the prioritization of application features and components to determine preferred release schedules and stages.
Release Management Tool
Release management (or automated release assurance) tools, are used primarily in support of the continuous deployment practice to automate the compliance checking, release and deployment of software into production environments. This tool is covered in detail in the upcoming Working with Continuous Deployment section.
When reports need to be generated from various data sources, a reporting tool is employed. It is capable of forwarding or publishing a range of reports based on metrics and other forms of data.
Source Code Management Repository
Developed code produced by a team of developers needs to be controlled and managed, which is the purpose of the source code management repository.
This type of repository forms the basis of a system that can be referred to as a as source control server, which enables developers to submit code that is stored and can be retrieved. The source code management repository can be integrated with communication tools, version control tools, issue tracking systems, build tools and release management tools.
The source code management repository can further be configured to control access to stored code. For example, some code may be openly accessible by all project teams, whereas other code may be considered private and only made available to approved users.
Version Control Tool
Every new release of developed software may introduce minor or major changes, each of which may constitute a new release version. Version control tools assist with managing and keeping track of release versions. Each change made in a release can be tracked using this tool, mostly for the purpose of planning roll out to production.