Glossary of Terms
An alphabetical list of terms used around feature management and software development in general in the context of ConfigCat.
A/B testing is a method of comparing two versions of a product or feature to determine which one performs better. A/B testing is a form of controlled experimentation.
Alpha testing examines a product's functionality and compliance with the business requirements through the initial end-to-end testing.
Testing in the beta phase allows users to discover any issues or bugs before a general release by using a product in a real-world environment.
Blue/Green deployments offer near-zero downtime and rollback capabilities. The concept of a blue/green deployment involves switching traffic between two identical environments running different versions of your application.
A Canary Release is a type of progressive delivery where a small percentage of users are exposed to a new feature. If the feature works as expected, the percentage of users exposed to the feature is increased. If the feature does not work as expected, the feature is rolled back.
A Continuous Integration and Continuous Deployment pipeline (CI/CD) is a set of steps that must be followed to deliver a new software version to customers.
A continuous delivery process enables changes - including new features, configuration changes, bug fixes and experiments - to be released into production in a safe and timely manner while maintaining sustainability.
Continuous Deployment is a process where any code changes brought to an application are released automatically into the production environment.
Continuous Integration refers to the regular merging of code changes into a central repository, followed by automated builds and tests.
A Dark Launch is rolled out stealthily by first releasing a feature to a subset of users before a full release to see how they react to it.
A Developer Advocate is a person whose job is to help developers be successful with a platform or a technology and to speak (or write) on their behalf.
The DevOps Engineer is responsible for the development and maintenance of the infrastructure and the deployment of the software. The DevOps Engineer is also responsible for the monitoring and maintenance of the software and the infrastructure.
Fake Door Testing
Fake Door Testing is a technique used to assess the market demand for a product prior to investing in its development.
A feature branch is a copy of the main codebase where an individual or team of software developers can work on a new feature until it is complete.
A feature flag is a toggle used to activate or deactivate specific features you may have in your application without redeploying code.
An experiment to determine which version of a feature offers the best user experience is called a Feature Test.
A kill switch is a mechanism that can be used to quickly disable a feature or an entire application in case of an emergency.
Multi Armed Bandit
The Multi-Armed Bandit (MAB) is a machine learning framework that involves an agent making selections, referred to as "arms," with the goal of maximizing its long-term cumulative reward
Product Lifecycle Manager
The role of a product lifecycle manager is to supervise the project team and ensure timely completion of each stage in the lifecycle of a project.
A progressive delivery approach to DevOps combines the principles of Continuous Integration and Continuous Delivery (CI/CD) with modern software development practices, facilitating faster code deployment, reducing risk, and improving user experiences.
A release manager is an IT professional responsible for defining and executing the software release process within a company, ensuring smooth deployment and high quality releases.
Remote configuration is a software development technique that allows you to modify certain features of an app remotely without having to deploy a new version of the app.
Ring deployment is a form of gradual rollout where new features are released gradually to different groups of users to mitigate risk.
Site Reliability Engineer
A site reliability engineer (SRE) is a professional in the field of information technology who uses automation tools to monitor the reliability of software in a live production environment.
Smoke testing is a type of testing done early in the software development process to confirm that the most critical features of an application are functioning correctly.
Soak testing is a type of non-functional testing that assesses a software application's performance under a high volume of load over an extended period of time.
Software Development Life Cycle
The Software Development Life Cycle (SDLC) is a systematic approach aimed at producing high-quality, low-cost software efficiently and within a shorter timeframe.
Type I and Type II Errors
A Type I error occurs when the null hypothesis is incorrectly rejected while it is actually true, while a Type II error occurs when the null hypothesis is wrongly not rejected while it is actually false.
Trunk Based Development
Trunk-based development is a version control technique where developers regularly merge small updates into a central "trunk" or main branch.
User Acceptance Testing
User Acceptance Testing (UAT) is a stage in software development where the software is tested in a simulated real-world environment by its intended users or business representatives.
Version control, also referred to as source control or revision control, is a crucial software development practice that tracks and manages changes to code and other files, and is closely linked to source code management.