Acceptance testing – Testing conducted by the developers of the software system, ultimately aimed at trialling whether not the system correctly fits the criteria provided by the client.

Algorithm – A set of rules followed and carried out by problem-solving operations within a system.

Anomaly – A result that is different to what is expected based off previous results and trends in software testing.

API (Application Programming Interface) – A software intermediary that allows two applications to communicate with one another.

API Key – A code that allows a user to access API tools and enable communication streams between two applications.

Application software – A computer program that enables the ability for users to carry out specific tasks and activities.

Architectural design – The process of defining components within a system to establish a framework for the development of a software system.

Artificial Intelligence (AI) – The process of using computer systems to replace work previously done by humans (in software).

Audit trail – A series of records of events collected by a software system.


Back-end – The side of a software system the user does not see, such as the database.

Batch processing – The process in which a system completes an array of tasks automatically in groups as opposed to one at a time.

Boolean – A term that refers to a value that is either true or false.

Bug – An unexpected problem detected in a software system, or as we like to call it, an ‘undocumented feature!’

Bytes – A unit of memory size, equal to either seven or eight bits.


Calibration – The setting or correcting of a measuring device, to ensure an accurate report of data from a system.

Certification – A formal level of proficiency with regards to quality assurance within software.

CI (Continuous Integration) – The process of merging all functioning copies of development work to a shared mainline on a repeated schedule.

Coding – The process of telling computers what actions to take by communicating with it in various languages.

Compatibility – This refers to the state in which two or more systems are able to function seamlessly alongside one another without issues.

CRM (Customer Relationship Management) software – A type of software that allows sales teams to manage leads and conduct data analysis to monitor performance.

CSS (Cascading Style Sheets) – A computer language that communicates how HTML elements should be displayed (see HTML).

Customer Experience (CX) – How a customer interacts with your company at every touchpoint, and how the quality of these interactions are measured.


Data – Statistics and facts that can be processed, interpreted and communicated by either a computer or a person.

Data validation – A processed used to check if data is accurate, incomplete or irrelevant.

Database – Structured data held in a computer programme.

Debugging – The process of removing bugs from software.

Deep fakes – The process of creating a video utilising artificial intelligence to make it appear as if a person has said something in the past, but hasn’t. These videos are commonly of world leaders and public figures.

Design – The process of creating the architecture, building the infrastructure and laying out the user experience of a software system.

Developer – Somebody who creates computer software.

Diagnostic – Detecting faults or failures within a system.

Disk – A hard drive or any form of computer storage.

Driver – Types of files that communicate wit hardware and tell them how to function.


Emulation – Reproducing a function within software (often for testing or diagnostic purposes).

End user – The person/people the software system was built for.

Environment – The set of processes and tools used to build the software system.

ERP (Enterprise Resource Planning) – A type of software solution that allows organisations to manage day-to-day business activities including accounting, procurement and more.

Execution – The process whereby a computer carries out tasks based off of instructions provided by a computer program.


Field – A part of a user interface in a software system that allows the user to enter data.

File Transfer Protocol – The process of transferring computer files from a server to a client on a computer network.

Firmware – Software installed on a small memory chip on a hardware device.

Flag – A variable that is set to a prescribed state, either ‘true’ or ‘false’, based on the results of a previous processed or the existence of a certain condition.

Front-end – The name given to a side of a software system that is user-facing, menus, pages, fields and functionality.


GIF (Graphics Interchange Format) – A digital file format that often come in the form of compressed, short animations.

Gigabyte – A thousand (1,000) megabytes. A unit of data storage.

GUI (Graphical User Interface) – Visual components of a software system, often in the form of graphical icons as opposed to raw text.


Hard copy – A digital file that has been printed out on paper or other material, as opposed to being on a screen.

High-level language – A programming language that allows for the development of a program or software system.

HTML (HyperText Markup Language) – The standard language for documents to be displayed on a web browser.


Implementation – The process of executing and integrating a software solution into commercial workflow.

Incremental development – A development strategy whereby some parts of the system are built in stages.

Instrumentation – The ability to monitor the performance of a software system and diagnose errors.

Integration – The process of bringing together various types of software systems to create a more comprehensive final solution.

Interface – The point of interaction between the system and the user.


JavaScript – A computer programming language that is often used to create effects and other interactive content within web browsers.

Job control language – The name for a scripting language created to instruct a system on how to run a particular job.


Kilobyte – A unit of memory equal to 1,024 bytes.


LAN (Local Area Network) – A computer network where computers are interconnected within a small geographical radius.

Language – A set of rules and a way of expressing a set of instructions to communicate with a computer.

Latency – the delay before a transfer of data


Megabit (Mb) – a unit of data size, equal to one million bits.

Megabyte (MB) – a unit of information equal to one million bytes.

Machine learning – the process of computer systems using models and algorithms to draw inferences from patterns in data.

Macro – a single instruction to a computer that expands into more instructions to carry out a task, automatically.

Mainframe – A large high-speed and powerful computer system, one that often carries out multiple tasks.

Maintenance – The practice of keeping computers and their systems in a good, operable state.

Memory – The location of short-term data, see RAM.

Module – A discrete piece of code which can be independently created and maintained to be used in different systems.


Network – Two or more computers that are linked together to share resources and exchange files.

Null data – A null value is a special marker used in SQL (see sequel) to indicate that a data value does not exist in the database.


Operating system – Software that supports a computer’s basic functions.

Optimisation – The act of making the most effective use of a resource.

Overflow – An error that happens when a program receives a value or variable outside of its ability to handle.


Parameter – A measurable factor that defines a system or sets the conditions of its operation.

Path – A string of characters used to identify a location in a directory structure.

Production – The post-design phase; the system is being constructed.

Program – An ordered series of instructions carried out by a computer to achieve a goal.

Programming – The process of writing code that instructs how a computer or computer software operates.

Progressive web application – An application built on the web that is designed to behave like a traditional mobile app, without the need to install from a native app store.

Project management system – A software system that is designed to give project managers and directors oversight over their daily operations.

Protocol – A set of rules of procedures for transmitting data between electronic devices, such as computers.

Pseudocode – A plain language description of the steps in an algorithm – for human reading instead of machine reading.


Quality assurance – The process of sustaining a level of quality in a service or product, by means of attention to detail at every stage.

Quality control – A systematic approach in maintaining standards, often involving testing.

Qualitative data – Data conveyed in a format that is non-numerical, often in written or audio format.

Quantitative data – Data conveyed in a numerical format, such as units of measurement.


RAM – ‘Random access memory’, a computer component that facilitates volatile short term data storage.

ROM – ‘Read-only memory’, a computer component that facilitates non-volatile, permanent instructions.

Real-time data – The process of viewing live data that changes depending on events that are constantly changing.

Relational database – A digital database structured to recognise relations between stored items of information.

Rendering – The process of generating 2D or 3D images from a model using application programs.


SQL database (Structural Query Language – ‘sequel’) – A type of relational database that is navigated by using the programming language SQL.

Server – A computer program which manages access to a centralised resource or service.

Software – Programs and other operating information used by a computer; a set of instructions that tell a computer what to do.

Software engineering – The process of designing, developing, testing, deploying and managing software systems.

Source code – A collection of code written in a human-readable programming language specially designed to facilitate the work of computer programmers.

Specification – A set of documented requirements to be satisfied by the deliverance of software.

SSL Certificate (Secure Sockets Layer) – A digital certificate that authenticates a website’s identity and enables an encrypted connection.

Support – The process of delivering maintenance and ongoing updates to a software system.

Syntax – The way a line of code or function is written and the rules they follow.

System – A combination of components that come together to serve a specific purpose, with the input, output, processing and storage of data.


TB (Terabyte) – A unit of data equal to 1,000 gigabytes, or 1,099,511,627,776 bytes.

TCP/IP (Transmission Control Protocol/Internet Protocol) – A set of standardised rules to allow computers to communicate over the internet.

Testing – The process of trialling a piece of software to ensure that is carrying out the tasks it was intended to achieve.

Touch screen – A type of user interface that is operated via touch as opposed to input via a computer keyboard.

Touchpoints – The points in which prospective and existing customers interact with your business or brand (e.g. website).


UAT (User Acceptance Testing) – A clone of a real software system, hosted on a separate server, designed to be used by the client as a trial before the version is finalised.

UI (User Interface) – The medium in which the user and a computer system interact.

Unit – A generic term given to a single item, usually as part of a greater whole.

User – The name given to a person operating the system, whom the system was designed for.

UX (User Experience) – The term given to the quality of the software system and how well it performs tasks, from the perspective of the user.


Validation – The process of checking or proving the relevancy of a data entry.

Variable – Data values that can change when the user is asked a question.

Vendor – A person or company offering a product or service.

Verification – The process of checking that a software system achieves its goals without any issues.

Version – A way of categorising and naming a checkpoint in a software system’s development cycle, usually with names or numbers.


Workflow – A sequence of tasks executed by a software system or by a user.

WYSIWYG (What You See Is What You Get – ‘wizzy-wig’) – A system in which editing software allows content to be edited in a form that resembles its appearance when displayed as a finished product.


Xamarin – A developer platform made up of tools, programming languages and libraries for building different types of applications.

x64 – The name given to the current computer architecture from Intel and AMD for a 64-bit system.


Yottabyte – A unit of data storage, 1,000,000,000,000,000,000,000,000 bytes.


Zettabyte – A unit of data storage, 1,000,000,000,000,000,000,000 bytes.

ZIP file – ZIP is an archive file format that supports lossless data compression.