ASD
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.
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.
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.
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 core principles that underpin agile methodologies, focusing on collaboration, flexibility, and customer satisfaction. Crucial for guiding agile practices and ensuring effective project delivery.
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.
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.
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.
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.
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 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.
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.
A type of software testing that ensures that recent changes have not adversely affected existing features. Essential for maintaining software quality and reliability.
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.
The distribution of a new or updated software product to users. Important for delivering new features, improvements, and fixes to users, ensuring continuous enhancement of the product.
Application Release Automation (ARA) is the process of automating the release of applications, ensuring consistency and reducing errors. Crucial for accelerating the delivery of software updates and maintaining high-quality digital products.
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.
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.
Model-View-Controller (MVC) is an architectural pattern that separates an application into three main logical components: the Model (data), the View (user interface), and the Controller (processes that handle input). Essential for creating modular, maintainable, and scalable software applications by promoting separation of concerns.
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.
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.
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 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.
User Acceptance Testing (UAT) is the final phase of the software testing process where actual users test the software to ensure it meets their requirements. Crucial for validating that the software functions correctly in real-world scenarios before its release.
A measure used in Agile project management to quantify the amount of work a team can complete in a given sprint, typically measured in story points. Crucial for planning and forecasting in Agile projects and understanding team capacity.
Software Requirements Specification (SRS) is a detailed document that outlines the functional and non-functional requirements of a software system. Crucial for ensuring clear communication and understanding between stakeholders and the development team.
A software development practice where code changes are automatically deployed to production without manual intervention. Important for maintaining a high level of productivity and quality in software development.
The use of software tools to run tests on code automatically, ensuring functionality and identifying defects without manual intervention. Crucial for maintaining high code quality and efficiency in the development process.
An estimation technique used in Agile software development where team members assign story points to tasks through consensus-based discussion. Essential for collaborative and accurate project planning and estimation.
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 large body of work that can be broken down into smaller tasks or user stories, used in agile project management to organize work. Essential for managing and organizing large projects in agile development.
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 non-production environment used for development and testing before deployment to production. Important for ensuring that changes are thoroughly tested before going live.
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 preliminary testing method to check whether the most crucial functions of a software application work, without going into finer details. Important for identifying major issues early in the development process and ensuring the stability of digital products.
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.
Application Lifecycle Management (ALM) is the process of managing an application's development, maintenance, and eventual retirement throughout its lifecycle. Important for ensuring the sustainability and effectiveness of digital products over time.
A graphical representation showing the amount of work remaining versus time, used in agile project management to track progress. Crucial for managing project progress and ensuring timely completion of tasks.
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.
Weighted Shortest Job First (WSJF) is a prioritization method used in agile and lean methodologies to maximize value by comparing the cost of delay to the duration of tasks. Essential for effectively prioritizing work to ensure the highest value tasks are completed first.
A software development practice where code changes are automatically prepared for a release to production. Crucial for ensuring rapid and reliable deployment of updates.
A deployment strategy where a new version is released to a small subset of users to detect any issues before a full rollout. Crucial for minimizing risk and ensuring the stability of digital products during updates and deployments.
A quick and often temporary fix applied to a software product to address an urgent issue without going through the full development cycle. Essential for maintaining the stability and functionality of digital products in the face of critical issues.
Goals, Ideas, Steps, and Tasks (GIST) is an agile planning technique to break down projects into manageable parts. Essential for organizing and executing agile projects effectively.
A server dedicated to automating the process of building and compiling code, running tests, and generating software artifacts. Crucial for ensuring continuous integration and maintaining the integrity of the codebase in digital product 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.
A testing method where the internal structure of the system is not known to the tester, focusing solely on input and output. Essential for validating the functionality of digital products from an end-user perspective.
A technique used in software development to enable or disable features in a production environment without deploying new code, allowing for controlled feature rollouts. Essential for managing feature releases and testing in live environments.
Walk the Wall (WTW) is a practice where team members physically move along a wall displaying their project's progress, discussing and updating tasks. Essential for fostering team collaboration and ensuring transparency in project status.
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.
Joint Application Development (JAD) is a collaborative approach to gathering requirements and designing solutions in software development projects. It facilitates rapid decision-making and consensus-building by bringing together key stakeholders, including users, developers, and project managers, in structured workshop sessions.
Product-Oriented Delivery (POD) is a methodology that focuses on organizing teams around products rather than projects. This approach is essential for enhancing product focus, agility, and cross-functional collaboration.
Dynamic Systems Development Method (DSDM) is an agile project delivery framework focused on delivering business value early and continuously. Essential for ensuring that projects align with business goals and user needs through iterative processes.
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.
The implied cost of additional rework caused by choosing an easy or limited solution now instead of using a better approach that would take longer. Essential for understanding and managing the long-term impacts of short-term technical decisions.
An event where developers, designers, and other stakeholders collaborate intensively on software projects, typically within a short timeframe. Important for fostering innovation, team collaboration, and rapid prototyping of new ideas in digital product development.
The process of identifying, assessing, and controlling dependencies between tasks or projects to minimize risks and ensure smooth project execution. Crucial for effective project management and delivery.