Glossary

The language of software development, clearly explained. Search for a term or browse the alphabet at your own pace.

The alphabetical index

128 terms

#

1 term
42KB/ˈtʋeːjənˌveːrtəx kaː beː/proper noun
42KB is the central repository of 10KB for code, company knowledge, documentation and internal tools. It is where we put our company as code approach into practice.

A

8 terms
A/B testnoun
An A/B test is an experiment in which two groups each see a different variant. Comparing their behaviour shows which variant performs better against a predefined goal.
acceptance criterianoun, plural
Acceptance criteria are agreed, testable conditions that a product, feature or change must meet to be accepted.
agent/ˈeɪdʒənt/noun
An AI agent is software that uses a language model and tools to carry out a task. It chooses its next steps based on the goal and the results of earlier steps.
agile & scrumadjective and noun
Agile is an approach to developing software in small steps and adapting based on feedback. Scrum gives it structure through short sprints and regular team discussions.
APIabbreviation (noun)
An API is a defined way for software to exchange data or call functions in other software without needing to know how that software works internally.
audit trail/ˈɔː.dɪt treɪl/noun
An audit trail is a chronological record of actions and changes in a system. It shows who or what performed an action, when it happened and what changed.
authenticationnoun
Authentication is the process by which a system verifies the claimed identity of a user, device or application.
authorizationnoun
Authorization is the process of determining and enforcing which data and functions a user, device or application may access.

B

4 terms
back office/ˌbæk ˈɒf.ɪs/noun
The back office is the part of an organization that carries out supporting and administrative processes. Back-office software helps staff manage that work and its associated data.
backend/ˈbækˌend/noun
The backend is the part of an application that processes data, applies business rules and communicates with other systems on the server. Users usually access it through a frontend or API.
backlog/ˈbæk.lɒɡ/noun
A backlog is an ordered, evolving list of work for a product or project. Its order helps a team decide what to investigate or implement first.
branch/brɑːntʃ/noun
A branch is a separate line of development in version control. Developers can make and test changes on it without immediately changing the main version of the code.

C

17 terms
caching/ˈkæʃɪŋ/noun
Caching temporarily stores previously retrieved or calculated data so later requests can be handled faster and the original source is accessed less often.
changelog/ˈtʃeɪndʒˌlɒɡ/noun
A changelog is a record of relevant software changes, usually organized by version or release. It includes new features, bug fixes and changes that affect users.
CI/CD/ˌsiːˈaɪ ˌsiːˈdiː/abbreviation
CI/CD is a way of working in which teams frequently merge software changes, check them automatically and use a defined sequence of steps to prepare or deploy them to production.
CLI/siː ɛl aɪ/noun, initialism
CLI stands for command-line interface: a way to control a program using text commands, usually from a terminal.
cloud/klaʊd/noun
The cloud is a collective term for computing power, storage, databases and software available over a network, usually from an external provider's data centres.
CMSabbreviation (noun)
A CMS is software that lets users create, organize, edit and publish digital content, usually through an administration interface.
code review/ˈkəʊd rɪˌvjuː/noun
A code review is an assessment of a code change by another developer. They check its behaviour, readability, and maintainability, among other things, before the change is merged.
codebase/ˈkəʊdˌbeɪs/noun
A codebase is the collection of source code used to build and maintain a software product or component.
commit/kəˈmɪt/noun
A commit is a recorded version of files in a version control system. Each commit marks a point in a project's development history.
company as code/ˈkʌmpəni əz kəʊd/noun
Company as code is an approach to recording company knowledge, processes and settings in text files and code. This lets you manage them with version control, checks and automation.
componentnoun
A component is a distinct part of software with its own task and a clear way of interacting with other parts.
containernoun
A container is an isolated application process with the files and settings it needs. Containers on the same machine usually share the operating system kernel.
continuous delivery/kənˈtɪn.ju.əs dɪˈlɪv.ər.i/noun
Continuous delivery is a practice in which each successful software change is automatically built, tested and prepared so the team can deploy it to production at any time.
continuous deployment/kənˌtɪn.ju.əs dɪˈplɔɪ.mənt/noun
Continuous deployment is a practice in which every software change that passes all automated checks goes to production without a manual approval step.
continuous developmentnoun
Continuous development means improving software continuously in small steps. Automated testing and integration help teams deliver changes regularly and in a controlled way.
continuous integration/kənˈtɪn.ju.əs ˌɪn.tɪˈɡreɪ.ʃən/noun
Continuous integration is a practice in which developers regularly merge small code changes and check them automatically, making integration problems visible early.
custom softwarenoun
Custom software is software developed for the specific needs of an organization or product. Its features and processes are tailored to the intended use.

D

11 terms
data integritynoun
Data integrity means that data remains correct, complete and internally consistent, and changes only in permitted ways.
data modelnoun
A data model describes which data a system records, how that data is related and which rules it must satisfy.
databasenoun
A database is a structured collection of data that software can store, retrieve and modify. A database management system controls access to that data.
declarative/dɪˈklæɹ.ə.tɪv/adjective
Declarative means describing the desired outcome without specifying every step the software must take to achieve it.
dependency/dɪˈpen.dən.si/noun
A dependency is a software component or system that other software needs in order to build or run, such as a library, framework or external service.
deployment/dɪˈplɔɪmənt/noun
A deployment is the process of installing and starting a chosen software version in a target environment so it can be tested or used there.
design system/dɪˈzaɪn ˌsɪstəm/noun
A design system is a collection of reusable interface components, design rules and documentation that teams use to design and build consistent digital products.
diff/dɪf/noun
A diff is an overview of the differences between two versions of a file or two states. It shows what has been added, removed or changed.
digital accessibilitynoun
Digital accessibility means people with different disabilities can perceive, understand and operate websites, apps and digital documents.
downtime/ˈdaʊn.taɪm/noun
Downtime is the period when software, a system or an online service is unavailable or its essential functions cannot be used.
drift/dɹɪft/noun
Drift is a difference caused by a managed environment changing outside its recorded configuration. The actual settings no longer match what the files describe.

E

4 terms
encryptionnoun
Encryption converts readable data into encrypted data using an algorithm and a cryptographic key. Only the correct key can make the data readable again.
end-to-end testnoun
An end-to-end test checks whether a complete user journey through an application works, including the components and systems that must work together.
endpoint/ˈɛndˌpɔɪnt/noun
An endpoint is an address at which an API makes a particular resource or action available.
exception tracking/ɪkˈsep.ʃən ˌtræk.ɪŋ/noun
Exception tracking automatically records and groups errors that occur while software is running. It gives developers information to investigate an error's cause and impact.

F

6 terms
failover/ˈfeɪlˌoʊvər/noun
Failover is the switch from a primary system to a backup system when the primary system fails or stops working correctly.
feature flag/ˈfiː.tʃə flæɡ/noun
A feature flag is a setting that enables or disables software functionality without another code deployment. It can apply to all users or a particular group.
frameworknoun
A framework is a coherent foundation for software development, providing reusable code, a defined structure and conventions for building an application.
frontend/ˌfrʌnt ˈend/noun
The frontend is the part of a website or application that users see and operate, such as pages, buttons, forms and interactive screens.
frontmatternoun
Frontmatter is a block of metadata at the beginning of a content file, usually read by the tool that processes the file.
full-stack/ˈfʊl stæk/adjective
Full-stack describes software development that covers both the frontend and backend of an application. It can refer to a developer, team or technical tool.

G

1 term
grep/ɡɹɛp/verb
To grep means to search text for a word or pattern, usually across several files or in a program's output. The term comes from the Unix program grep.

H

2 terms
headless CMSnoun
A headless CMS is a content management system that makes content available through an API without determining how it is presented to visitors.
hydrationnoun
Hydration is the process of connecting server-rendered HTML with client-side code and application state to make a page interactive.

I

2 terms
infrastructure as code/ˈɪn.frəˌstrʌk.tʃər əz ˈkəʊd/noun
Infrastructure as code (IaC) is a practice in which infrastructure is described in configuration files and created and managed using software.
integration testnoun
An integration test checks whether several parts of a software system work together correctly, focusing on their communication and the data they exchange.

J

1 term
JSON/ˈd͡ʒeɪsən/noun, acronym
JSON stands for JavaScript Object Notation. It is a text format that software uses to exchange and store structured data.

L

7 terms
legacy softwarenoun
Legacy software still serves an important purpose but is difficult to maintain, change or replace because of technical limitations, missing knowledge or strong dependencies.
library/ˈlaɪ.brər.i/noun
A library is a collection of reusable software code for a defined task. An application can call that code to use existing functionality.
Lighthousenoun
Lighthouse is an open-source tool from Google that automatically audits web pages for performance, accessibility, best practices, SEO and more.
linting/ˈlɪntɪŋ/noun
Linting automatically checks source code for potential errors and violations of agreed coding rules, without running the application. The tool that performs these checks is called a linter.
LLM/el el em/noun
LLM stands for large language model: an AI model trained on large amounts of text. It can process language and generate text, including answers, summaries and code.
load balancing/ˈləʊd ˌbæl.ən.sɪŋ/noun
Load balancing distributes network traffic or other tasks across multiple servers so one server does not have to handle all the work.
logging/ˈlɒɡ.ɪŋ/noun
Logging records events while software is running. These records help developers follow a system's behaviour and investigate problems.

M

10 terms
Markdownnoun
Markdown is a way to add structure to plain text using simple characters, for example for headings, lists, emphasis, and links.
MDXnoun
MDX is a file format that lets you combine Markdown with JSX, JavaScript expressions, and import and export statements.
memory leak/ˈmem.ər.i liːk/noun
A memory leak is a software bug in which a program retains memory it no longer uses. Memory usage can keep growing while the program runs.
message queue/ˈmes.ɪdʒ kjuː/noun
A message queue temporarily stores messages until another software component processes them. The sender does not have to wait for the recipient to finish.
microservicesnoun, plural
Microservices are small, independently deployable software services that each perform a defined function and together form an application.
monitoringnoun
Monitoring systematically tracks software, infrastructure or processes through measurements and checks. Deviations can trigger alerts so an administrator can investigate.
monolithnoun
A monolith is an application whose components form a single unit and are usually built and deployed together.
MoSCoW prioritizationnoun
MoSCoW prioritization classifies requirements as Must have, Should have, Could have or Won't have this time, making clear what is essential and what can wait.
multitenant/ˌmʌltiˈtɛnənt/adjective
Multitenant describes software in which several customers share one application, each with a separate environment for data, users and settings.
MVPabbreviation (noun)
MVP stands for Minimum Viable Product: the smallest usable version of a product that lets you test key assumptions with real users.

O

5 terms
observability/əbˌzɜːrvəˈbɪlɪti/noun
Observability is the extent to which available signals help you understand what is happening inside a software system.
off-the-shelf softwarenoun
Off-the-shelf software is software offered as an existing product to multiple users or organizations. You configure it within the features and options provided by its supplier.
open source/ˌəʊ.pənˈsɔːs/noun and adjective
Open source is software whose source code is available under a licence that allows others to use, study, modify and redistribute it.
ORMabbreviation
An ORM is software that maps objects in program code to tables and relationships in a relational database. ORM stands for Object-Relational Mapping.
OTAPabbreviation
OTAP is the Dutch abbreviation for Development, Test, Acceptance, and Production. These are separate environments for building, testing, reviewing, and using software.

P

8 terms
pair programming/ˈpeə ˌprəʊ.ɡræm.ɪŋ/noun
Pair programming is a practice in which two developers work on the same programming task together. One writes code while the other considers the approach and reviews the work as it happens.
peak loadnoun
Peak load is the temporarily high demand on a system when many users, requests or tasks need capacity at the same time.
product owner/ˈprɒd.ʌkt ˈəʊ.nə(r)/noun
In Scrum, the product owner is accountable for maximizing product value and managing the product backlog. They order the work and communicate the product goal.
progressive web appnoun
A progressive web app (PWA) uses modern web technologies to offer an app-like experience. Users can install it from a compatible browser and use additional features supported by their device.
proof of concept/ˌpruːf əv ˈkɒnsept/noun
A proof of concept is a small-scale experiment that investigates whether an idea is technically or practically feasible before it is fully developed.
prototypenoun
A prototype is an early, simplified version of a product. It makes an idea visible or testable so you can learn before developing the complete product.
pull request/ˈpʊl rɪˌkwest/noun
A pull request proposes that changes from one branch be reviewed and merged into another. Team members can discuss and check the code before it is incorporated.
push notificationnoun
A push notification is a short message an app or website sends to a user's device, even when that app or website is not open.

Q

2 terms
quality assurance/ˌkwɒləti əˈʃʊərəns/noun
Quality assurance (QA) is the set of planned, systematic measures a team uses to help software meet agreed quality requirements.
query/ˈkwɪə.ri/noun
A query is a targeted instruction to a system to retrieve, filter, combine or modify data.

R

12 terms
race condition/ˈreɪs kənˌdɪʃ.ən/noun
A race condition is a software bug in which the outcome depends on the order or timing of actions that can happen concurrently. The same input can produce different results.
refactoringnoun
Refactoring changes the internal structure of existing code without changing observable software behaviour. The aim is to make code easier to understand and modify.
refinement/rɪˈfaɪnmənt/noun
Refinement is the ongoing clarification, breakdown and estimation of backlog work so the team understands what each item involves.
regression testnoun
A regression test checks that previously working parts of software still behave as expected after a change, revealing unintended effects.
release/rɪˈliːs/noun
A release is an identifiable software version prepared to be made available to users. It brings together one or more checked changes.
responsive design/rɪˈspɒnsɪv dɪˈzaɪn/noun
Responsive design is an approach in which a website or web application adapts its layout and controls to the available screen space and device.
resumabilitynoun
Resumability is the approach Qwik uses to resume an application in the browser from information saved during server rendering, without replaying all application logic.
retainer/rɪˈteɪ.nər/noun
A retainer is an ongoing agreement in which a client regularly reserves a service provider's capacity for recurring work, such as software maintenance, support or development.
retrospective/ˌret.rəˈspek.tɪv/noun
A retrospective is a meeting where a team reflects on the past working period and agrees how to improve its collaboration and practices.
review app/rɪˈvjuː æp/noun
A review app is a temporary, working version of an application where one branch or merge request can be examined and tested separately.
rollback/ˈrəʊl.bæk/noun
A rollback reverses a change so software, configuration or data returns to an earlier state. Teams use it when a change causes errors or other unwanted effects.
row-level security/ˌrəʊ ˌlev.əl sɪˈkjʊə.rə.ti/noun
Row-level security (RLS) is database access control in which rules for each row determine which records a user may view, insert, update or delete.

S

12 terms
SaaSabbreviation (noun)
SaaS stands for Software as a Service: software a provider manages centrally and makes available to users over the internet.
scalabilitynoun
Scalability is the extent to which software, infrastructure or a process can handle more or less work without major rebuilding or unacceptable performance loss.
scopenoun
Scope defines the boundaries of a project or assignment: which goals, activities and results are included and which are excluded.
security audit/sɪˈkjʊə.rə.ti ˈɔː.dɪt/noun
A security audit is a structured examination of a digital system's security. The auditor assesses technical measures and processes against agreed requirements and records findings.
security by design/sɪˈkjʊə.rə.ti baɪ dɪˈzaɪn/noun
Security by design includes security in software requirements, architecture and development from the first design. The team continues assessing and reducing risks throughout the lifecycle.
single-page applicationnoun
A single-page application (SPA) loads one web document and then updates the required content without fetching a complete new page for every view.
singletenant/ˌsɪŋɡəlˈtɛnənt/adjective
In singletenant software, each customer uses a separate application environment that is not shared with other customers.
SLAnoun
SLA stands for service level agreement: an agreement between a customer and provider about the service, its agreed level and how that level is measured.
software architecturenoun
Software architecture is the main structure of a software system: its components, their relationships and the principles guiding technical choices and changes.
sprintnoun
A sprint is a short, fixed period in which a team develops an agreed part of the software. Afterwards, you review the result and decide on the next priorities.
SQLabbreviation
SQL is a language for querying and managing data in a relational database and defining that database's structure.
static analysisnoun
Static analysis examines source code or compiled code without running the program. It checks for potential errors, vulnerabilities, and violations of agreed coding rules.

T

5 terms
technical debtnoun
Technical debt is the extra work required because earlier software decisions make later changes harder, slower or riskier.
test coveragenoun
Test coverage measures which parts of the code execute during automated tests. It can count lines, functions and branches, among other things.
time and materialsnoun phrase
Time and materials billing calculates the price after work has been carried out, based on the actual hours worked and costs incurred at agreed rates.
two-factor authenticationnoun
Two-factor authentication uses two independent forms of evidence from different categories to grant access to an account or system.
type safety/taɪp ˈseɪf.ti/noun
Type safety is the extent to which a programming language prevents values from being used in ways incompatible with their types. Checks can identify such errors during coding, compilation or execution.

U

5 terms
unit test/ˈjuː.nɪt test/noun
A unit test is an automated test of a small, defined software component, usually isolated from external systems.
uptime/ˈʌptaɪm/noun
Uptime is the time during which software, a server or another service is available and usable, usually expressed as a percentage of an agreed measurement period.
user experience/ˈjuː.zər ɪkˌspɪə.ri.əns/noun
User experience, often abbreviated to UX, is the overall experience someone has when using a product, system or service.
user interface/ˌjuː.zər ˈɪn.tə.feɪs/noun
A user interface (UI) is the part of a digital system through which a user receives information and operates it. Examples include screens, buttons, forms and voice controls.
UTM tags/juː tiː ɛm tæɡz/plural noun
UTM tags are URL parameters that identify a link's source, channel and campaign. Web analytics software can use them to attribute visits to that campaign.

V

2 terms
vendor lock-in/ˈven.dər ˈlɒk.ɪn/noun
Vendor lock-in is dependence on one supplier that makes switching to an alternative difficult, expensive or disruptive.
version controlnoun
Version control records changes to code, including who changed what and when. It lets developers collaborate, compare changes and return to an earlier version.

W

3 terms
web applicationnoun
A web application is a program you use through a web browser to complete tasks or process data. Processing can take place partly in the browser and partly on a server.
webhook/ˈwɛb.hʊk/noun
A webhook is an automatic HTTP request that one application sends to another when a configured event occurs.
WebSocketnoun
A WebSocket is an open, two-way connection between a client and a server. Both sides can send messages on their own initiative through that connection.