Toolchain

A toolchain may refer to 1) a specific set of software development tools, or 2) a DevOps (development and operations) process used to test and deliver a software program.

1. Software Toolchain

A software toolchain is a collection of tools used for building and delivering an application. These tools are chained together to streamline the software production process. For example, the output generated by one tool in the chain is used as input by the next tool.

Developers may use a toolchain near the end of the development process. For example, a development team may build an app within an integrated development environment. Once the source code is complete, a toolchain may be used to generate the executable file. A software development toolchain may include the following components:

  1. Assembler - converts assembly language into machine code
  2. Linker - merges multiple files into a single program
  3. Compiler - generates executable code from a program's source code
  4. Library - a collection of code, such as an API, that allows the app to reference prebuilt functions or other resources
  5. Debugger - an optional tool that can help fix bugs during the final build steps
A developer may create a script that chains these tools together. The resulting toolchain simplifies the process of creating an executable program from existing code.

2. DevOps Toolchain

A DevOps toolchain is a list of steps that development and operations teams can follow when releasing a software program. It covers the entire development process, from planning a software application to the maintenance of a program after it has been released.

Steps in a DevOps toolchain may include:

  1. Plan - define the purpose, requirements, and expectations
  2. Create - design and build (program) the software
  3. Test - test the software internally on multiple devices; provide a public beta test
  4. Release - schedule and deploy the software
  5. Monitor - check software metrics, respond to user feedback, update software to fix bugs or add features
Updated November 17, 2019 by Per C.

quizTest Your Knowledge

What do Unix and Linux computers use the Samba software for?

A
Connect to network folders shared by Windows computers
0%
B
Locate and repair file system errors
0%
C
Automatically download and install software updates
0%
D
Create a remote desktop connection to another computer
0%
Correct! Incorrect!     View the Samba definition.
More Quizzes →

The Tech Terms Computer Dictionary

The definition of Toolchain on this page is an original definition written by the TechTerms.com team. If you would like to reference this page or cite this definition, please use the green citation links above.

The goal of TechTerms.com is to explain computer terminology in a way that is easy to understand. We strive for simplicity and accuracy with every definition we publish. If you have feedback about this definition or would like to suggest a new technical term, please contact us.

Sign up for the free TechTerms Newsletter

How often would you like to receive an email?

You can unsubscribe or change your frequency setting at any time using the links available in each email.

Questions? Please contact us.