Definitions related to agile software development, including terms about Scrum and words and phrases about user stories, extreme programming (XP), Crystal, feature-driven development and Adaptive.
12-factor app - Twelve-factor app is a methodology for building distributed applications that run in the cloud and are delivered as a service.
Agile Manifesto - The Agile Manifesto is a document that identifies four key values and 12 principles that its authors believe software developers should use to guide their work.
Agile operations (AgileOps) - Agile operations, or AgileOps, is a digital business operating model that builds on Agile methodologies and DevOps techniques to help organizations adapt to change quickly and efficiently.
Agile project management (APM) - Agile project management (APM) is an iterative approach to planning and guiding project processes.
Agile retrospective - An Agile retrospective is a meeting that's held at the end of an iteration in Agile software development.
agnostic - Agnostic, in an information technology (IT) context, refers to something that is generalized so that it is interoperable among various systems.
automated testing - Automated testing is a software testing technique that automates the process of validating the functionality of software and ensures it meets requirements before being released into production.
Azure DevOps - Azure DevOps -- rebranded from Visual Studio Team Services (VSTS) in 2018 -- is a software-as-a service (SaaS) platform from Microsoft designed to provide a comprehensive toolchain for developing and deploying software projects.
Certified ScrumMaster (CSM) - Certified ScrumMaster (CSM) is an entry-level credential designed to give professionals getting started as Scrum practitioners an understanding of the project management methodology.
citizen development - Citizen development is a business process that encourages non-IT-trained employees to become software developers, using IT-sanctioned low-code/no-code (LCNC) platforms to create business applications.
continuous delivery (CD) - Continuous delivery (CD) is an approach for software delivery in which development teams produce and test code in short but continuous cycles to improve software quality.
daily stand-up meeting - A daily stand-up meeting is a short organizational meeting that is held each day.
DevOps Dojo - A DevOps Dojo is a place where DevOps team members go for hands-on training.
DevSecOps - DevSecOps (development plus security plus operations) is an approach that combines application development, security, operations and infrastructure as code (IaC) in an automated continuous integration/continuous delivery (CI/CD) pipeline.
empiricism - Empiricism is a philosophical theory applicable in many disciplines, including science and software development, that human knowledge comes predominantly from experiences gathered through the five senses.
enterprise agility - Enterprise agility is a paradigm for scaling agile methodologies beyond development teams.
feature-driven development (FDD) - Feature-driven development (FDD) is an Agile software development framework that organizes work around product features.
fist to five (fist of five) - Fist to five, or fist of five, is a consensus-building technique used by Agile software development teams to poll team members and come to an agreement.
implementation - Implementation is the execution or practice of a plan, a method or any design, idea, model, specification, standard or policy for doing something.
improvement kata - The improvement kata is a four-step routine for working toward a goal in a systematic way.
Lean software development - Lean software development is a concept that emphasizes optimizing efficiency and minimizing waste in the development of software.
Muda, Mura and Muri - Muda, mura and muri are three types of wasteful actions that negatively impact workflow, productivity and ultimately, customer satisfaction.
negative float (negative slack) - Negative float, also known as negative slack, is a common concept in project management that refers to the amount of time that must be saved to complete a project on time.
release - A release is the distribution of the final version or the newest version of a software application.
SAFe (Scaled Agile Framework) - The Scaled Agile Framework (SAFe) is a framework for scaling Agile across the enterprise.
Scrum - Scrum is a framework for project management that emphasizes teamwork, accountability and iterative progress toward a well-defined goal.
Scrum master - A Scrum master is a facilitator for an Agile development team.
sequence diagram - A sequence diagram is one of the multiple types of system interaction diagrams used within Unified Modeling Language (UML) to visually represent interactions between the objects that live within a system.
shift-left testing - Shift-left testing is a software testing approach in which the code is tested in the earlier stages of the software development lifecycle (SDLC).
snake case - Snake case is a naming convention where a developer replaces spaces between words with an underscore.
software testing - Software testing is the process of assessing the functionality of a software program.
static testing - Static testing is a software testing method that examines a program -- along with any associated documents -- but does not require the program to be executed.
test-driven development (TDD) - Test-driven development (TDD), also called test-driven design, is a software programming method that interlaces unit testing, programming and refactoring on source code.
Total Quality Management (TQM) - Total Quality Management (TQM) is a management framework based on the belief that an organization can build long-term success by having all its members -- from low-level workers to its highest-ranking executives -- focus on improving quality and, thus, delivering customer satisfaction.
Toyota Way - The Toyota Way is a comprehensive expression of the company's management philosophy, which is based on the two foundational pillars of Continuous Improvement, also known as kaizen, and Respect for People.
triage in IT - Triage is a term referring to the assignment of priority levels to tasks or individuals to determine the most effective order in which to deal with them.
user story - A user story is a tool in Agile software development used to capture a description of a software feature from a user's perspective.
value stream mapping - Value stream mapping is a lean manufacturing tool that visualizes every repeatable step required to deliver a product or service to the customer.
versioning - Versioning is the creation and management of multiple releases of a product, all of which have the same general function, but are improved, upgraded or customized.
What is a build server? - A build server, also called a continuous integration server (CI server), is a centralized, stable and reliable environment for building distributed development projects.
What is a product owner? - A product owner is a role on a Scrum team that is responsible for the project's outcome.
What is a sprint (software development)? - In Agile product development and software project management, a sprint is a set period of time during which specific work has to be completed and made ready for review.
What is Agile software development? - Agile is a type of software development methodology that anticipates the need for flexibility and applies a level of pragmatism to the delivery of the finished product.
What is application lifecycle management? - Application lifecycle management (ALM) is the process of managing a software lifecycle from creation to its end of life.
What is behavior-driven development (BDD)? - Behavior-driven development (BDD) is an Agile development methodology that documents, designs and develops software around the behavior a user expects to experience when interacting with an app.
What is Capability Maturity Model (CMM)? - The Capability Maturity Model (CMM) is a methodology used to develop and refine an organization's software development process.
What is change failure rate (CFR)? - Change failure rate is a software development performance metric that measures the percentage of software deliveries that required remediation after release to production.
What is continuous integration (CI)? - Continuous integration (CI) is a software development practice in which frequent and incremental changes are routinely added (integrated) to the complete codebase immediately after the changes and additions are tested and validated.
What is DevOps? Meaning, methodology and guide - The word 'DevOps' is a combination of the terms 'development' and 'operations,' meant to represent a collaborative or shared approach to the tasks performed by a company's application development and IT operations teams.
What is infrastructure as code (IaC)? - Infrastructure as code (IaC) is an IT practice that codifies and manages underlying IT infrastructure as software.
What is Jenkins and how does it work? - Jenkins is an open source continuous integration/continuous delivery and deployment (CI/CD) automation software DevOps tool written in the Java programming language.
What is Jira? - Jira is an application lifecycle management (ALM) and Agile project management tool from Atlassian.
What is mobile application development? - Mobile application development is the set of processes and procedures involved in writing software for small, wireless computing devices, such as smartphones and other hand-held devices.
What is regression testing? - Regression testing is a type of software test that assesses if changes to an application, or other related software components, introduce defects.
What is user acceptance testing (UAT)? - User acceptance testing (UAT), also called application testing or end-user testing, is a phase of software development in which the software is tested in the real world by its intended audience.
whole-team approach (team-based approach) - The whole-team approach (team-based approach) is a style of project management in which everyone on the project team is held equally responsible for the quality and success of the project.
work in progress (WIP) - Work in progress (WIP) refers to the number of tasks or projects that are currently in the process of being completed.