Agile Manifesto
A declaration of the values and principles essential for agile software development. Foundational for understanding the ethos of agile methodologies.
A declaration of the values and principles essential for agile software development. Foundational for understanding the ethos of agile methodologies.
Agile Release Train (ART) is a long-lived team of Agile teams that, along with other stakeholders, incrementally develops, delivers, and operates one or more solutions in a value stream. Important for coordinating Agile development and delivery at scale.
Feature Driven Development (FDD) is an agile methodology focused on designing and building features based on client-valued functionality. Essential for delivering client-valued features efficiently and effectively.
Behavior-Driven Development (BDD) is a software development approach where applications are specified and designed by describing their behavior. Important for ensuring clear communication and shared understanding between developers and stakeholders.
Large-Scale Scrum (LeSS) is a framework for scaling agile product development to multiple teams working on a single product. It provides a minimalist, large-scale agile approach that maintains the simplicity and effectiveness of Scrum while addressing the challenges of coordination and integration in multi-team environments.
A short, time-boxed period used in Agile development to research a concept or explore a new technology. Important for reducing uncertainty and risk in development.
A simple description of a feature from the perspective of the user, typically used in Agile development to capture requirements and guide development. Crucial for ensuring that development efforts are aligned with user needs and priorities.
Minimum Viable Product (MVP) is a version of a product with just enough features to be usable by early customers who can then provide feedback for future product development. Essential for validating product ideas quickly and cost-effectively, allowing teams to learn about customer needs without fully developing the product.
A lightweight, flexible approach to software development that emphasizes team communication and continuous improvement. Useful for tailoring agile practices to fit the specific needs of the development team.
Rapid Application Development (RAD) is a software development methodology that emphasizes quick prototyping and iterative delivery. Essential for reducing development time and adapting to changing requirements.
A practice of performing testing activities earlier in the software development lifecycle to identify and address issues sooner. Essential for improving software quality, reducing defects, and accelerating development cycles in digital product design.
Adaptive Software Development (ASD) is a software development methodology that focuses on continuous adaptation to changing requirements and environments. Essential for managing changing requirements and ensuring agile project delivery.
Test-Driven Development (TDD) is a software development methodology where tests are written before the code that needs to pass them. Essential for ensuring high code quality and reducing bugs.
Minimum Marketable Feature (MMF) is the smallest set of functionality that delivers significant value to users and can be marketed effectively. Crucial for prioritizing development efforts and releasing valuable product increments quickly, balancing user needs with business objectives.
A prioritized list of features, enhancements, and fixes that are intended to be addressed in future product development cycles. Essential for managing and planning product development activities efficiently.
An agile framework for managing work with an emphasis on software development, characterized by sprints and iterative progress. Essential for improving productivity and delivering incremental value in development projects.
A time-boxed period during which specific work must be completed and made ready for review, used in Agile project management. Crucial for managing workload and ensuring continuous delivery and improvement in Agile projects.
Domain-Driven Design (DDD) is an approach to software development that focuses on modeling the business domain and its logic. Essential for aligning software development with business needs and creating maintainable systems.
The core principles that underpin agile methodologies, focusing on collaboration, flexibility, and customer satisfaction. Crucial for guiding agile practices and ensuring effective project delivery.
A set of practices and principles that guide agile methodologies, such as Scrum and Kanban, to improve project management and product development. Important for structuring agile practices and ensuring effective project delivery.
A methodology that promotes iterative development, collaboration, and flexibility to adapt to changing requirements. Crucial for product managers and development teams to deliver high-quality products efficiently.
An agile methodology focused on delivering value to the customer through principles such as eliminating waste, amplifying learning, and delivering as fast as possible. Crucial for improving efficiency and effectiveness in software development processes.
The sequence of phases through which a product or project passes from conception to completion. Essential for managing and tracking the progress of development projects.
A technique used in agile project management where tasks are estimated using the Fibonacci sequence to reflect the uncertainty and complexity of work. Essential for accurate and realistic task estimation in agile methodologies.
eXtreme Programming (XP) is an agile software development methodology focused on customer satisfaction and continuous improvement. It enhances software quality and responsiveness to changing requirements through frequent releases of functional software.
A role in Agile development responsible for defining the product vision, prioritizing the product backlog, and ensuring the development team delivers value to users. Essential for guiding product development and ensuring alignment with user needs and business goals.
SAFe is a framework designed to scale agile practices across large organizations by integrating agile and lean principles. It is widely used but criticized for its rigidity, bureaucratic structure, and potential to stifle true agile culture.
Integrated Development Environment (IDE) is a software suite that combines tools like code editors, debuggers, and compilers. Essential for improving developer productivity and ensuring efficient and error-free coding practices.
A visual technique used in Agile development to arrange user stories in a way that helps teams understand the user journey and prioritize work effectively. Crucial for ensuring that development efforts are aligned with user needs and priorities throughout the project.
A set of practices that combines software development (Dev) and IT operations (Ops) to shorten the development lifecycle and deliver high-quality software continuously. Crucial for improving the speed, efficiency, and quality of software development and deployment.
A set of criteria that a user story or task must meet before being accepted into the development cycle, ensuring it is actionable and clear. Essential for ensuring that tasks are well-defined and ready for development.
Software Development Life Cycle (SDLC) is a process for planning, creating, testing, and deploying an information system. Essential for managing the complexities of software development and ensuring project success.
The process of reviewing, prioritizing, and updating items in the backlog to ensure they are ready for development. Crucial for maintaining an organized and prioritized list of tasks to improve project efficiency.
A prioritized list of work items or tasks that need to be completed, commonly used in agile project management. Essential for managing tasks and ensuring that development teams focus on the most important work items.
Detailed, Estimated, Emergent, and Prioritized (DEEP) is an agile project management framework for a well-maintained product backlog. Important for maintaining a clear and actionable backlog in agile methodologies.
An approach that applies Agile principles to IT operations, emphasizing iterative development, collaboration, and continuous improvement. Essential for enhancing flexibility, responsiveness, and collaboration in product design and development processes.
A prioritization framework used to assess and compare the value a feature will deliver to users against the complexity and cost of implementing it. Crucial for making informed decisions about feature prioritization and resource allocation.
A management framework that organizes employees into small, cross-functional teams (tribes) to enhance agility, collaboration, and innovation. Important for fostering a collaborative and agile work environment.
A short, daily meeting (separate from Standup) for the development team to sync on progress and plan for the day, part of the Scrum agile framework. Crucial for maintaining team alignment and momentum in agile projects.
A product development methodology that emphasizes shaping work before starting it, fixing time and team size but leaving scope flexible to ensure high-quality outcomes. Crucial for managing product development efficiently and delivering high-quality results within constraints.
A prioritized list of tasks, features, and technical debt items that need to be addressed by the engineering team. Essential for managing and organizing work in software development projects.
The practice of quickly testing and iterating on ideas to validate assumptions and learn from user feedback in a short time frame. Essential for agile development and making data-driven decisions efficiently.
A meeting at the end of a sprint where the development team presents their completed work to stakeholders. Crucial for gathering feedback and demonstrating progress.
A list of tasks and deliverables that a team commits to completing during a sprint, providing a clear focus and scope for the sprint's duration. Essential for organizing and prioritizing work within an Agile sprint.
A regular meeting in Agile project management where team members discuss progress, plan work, and identify any obstacles, typically held daily. Crucial for maintaining communication, transparency, and accountability within Agile teams.
A time-boxed period in which Agile teams deliver incremental value in the form of working, tested software and systems. Essential for aligning teams, managing dependencies, and ensuring continuous delivery.
A visual exercise that helps product teams understand and prioritize features by organizing user stories into a cohesive narrative that aligns with user journeys and goals. Essential for planning and prioritizing product features and ensuring alignment with user needs.
A team responsible for delivering specific features or enhancements, typically working on predefined requirements and focusing on the implementation of assigned features. Important for executing well-defined tasks and ensuring timely delivery of specific functionalities within a product.
A cross-functional team that is given the autonomy, resources, and authority to make decisions and take ownership of the product's success, focusing on solving user problems and achieving business outcomes. Important for fostering innovation, accountability, and agility, leading to more effective product development and higher user satisfaction.
Program Increment (PI) Planning is a cadence-based event that serves as the heartbeat of the Agile Release Train, aligning teams on goals and priorities for the next increment. Crucial for aligning teams, setting goals, and planning work.
Must have, Should have, Could have, and Won't have (MoSCoW) is a method used to prioritize features or tasks. Crucial for effective project management and ensuring focus on essential features.
A small, cross-functional team of 6-12 people focused on delivering a specific product feature or component. Essential for agile development, allowing for rapid iteration and close collaboration among team members.
A system where outputs are fed back into the process as inputs, allowing for continuous improvement based on user responses. Crucial for iterative development and continuous improvement in design and product management.
A term used to describe an organization focused on continuously shipping new features, often at the expense of quality, user experience, or business value. Crucial for recognizing and addressing the pitfalls of prioritizing quantity over quality in feature development.
A hybrid Agile project management framework that combines elements of Scrum and Kanban to improve flexibility and workflow management. Useful for teams seeking to blend the structured approach of Scrum with the visual workflow of Kanban.
A meeting where the Agile team discusses and decides what tasks will be completed in the upcoming sprint, establishing a clear plan for the sprint's duration. Crucial for ensuring the team is aligned and has a clear understanding of the work to be done in the sprint.
An agile methodology that separates product discovery and product delivery into parallel tracks to ensure continuous learning and delivery. Essential for balancing innovation and execution in agile product development.
The core values outlined in the Agile Manifesto, including individuals and interactions, working software, customer collaboration, and responding to change. Fundamental for guiding agile practices and fostering an agile mindset.
The series of stages a product goes through from initial concept to market release, including planning, design, development, testing, and launch. Essential for understanding the full lifecycle of product creation and bringing products to market efficiently.
An Agile project management framework that uses iterative cycles, called sprints, to deliver incremental improvements and adapt to changing requirements. Crucial for managing projects in a flexible and iterative manner, ensuring continuous improvement and responsiveness.