Glossary

This page contains a list of often difficult or specialized words, their common abbreviations, and their definitions as used throughout the rest of this website. You can use this as a quick reference, or to share definitions with others. Where applicable, the source material the terminology was retrieved from is included as references.

Glossary hero image

Cognitive Load

description:

Cognitive load refers to the amount of mental effort required to process information or complete a task. It can be influenced by factors such as task complexity, the individual’s working memory capacity, and the design of learning materials or environments.

also known as: mental load cognitive effort

Continuous Improvement

description:

Continuous improvement is an ongoing effort to enhance products, services, or processes by making small, incremental changes over time. It is a fundamental concept in quality management methodologies like Lean and Kaizen, aiming to boost efficiency and reduce waste.

also known as: incremental improvement process optimization Kaizen

Conway's Law

description:

Melvin Conway wrote: ‘Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization’s communication structure’. The law originates from the observation that software is built by teams of people who are organized in a specific way. In order to build software effectively, these groups must work together to achieve their shared goal. Therefore, the software produced by these teams will invariably resemble the structure of the teams themselves. As an example, a company with two separate teams working for different departments (invoicing and sales) will likely produce software that is divided into two separate modules, one for invoicing and one for sales. These modules will probably interact with each other along pre-defined interfaces. Much like the teams interact with each other along pre-defined communication channels. If the teams are working in isolation, the software will likely be built in a similar way, with the two modules being designed in a way that allows them to be deployed and changed as independently as possible.

Domain Driven Design

short: DDD
description:

Domain-Driven Design is a set of principles and schemes aimed at creating optimal systems of objects. Reduced to the creation of software abstractions, which are called models of subject areas. These models include business logic that establishes a link between the real conditions of the products’ application area and the code.

Domain-Driven Design is about creating shared understanding of the problem space. This shared understanding is reinforced ubiquitously via conversations, code and diagrams. DDD’s Shared understanding enhances synergy and alignment, increasing the ability to deliver value sustainably — ideally over the lifetime of a product.

Efficiency

description:

Efficiency refers to the ability to achieve maximum output with minimum input. It involves optimizing the use of resources (such as time, energy, and materials) to accomplish tasks in the most effective and economical manner, thereby reducing waste and increasing overall productivity.

also known as: Effectiveness Resource Optimization

Systems Thinking

description:

Systems Thinking is an approach to understanding and solving complex problems by viewing them as parts of an interconnected whole rather than in isolation. It involves recognizing patterns, relationships, and feedback loops within systems to better anticipate the impact of decisions and actions, thereby enabling more holistic and effective solutions.

also known as: Holistic Thinking Systems Approach