Agile architecture is a set of values and practices that advances the design and architecture of a system while implementing new business functions.
Agile Release Train
The Agile Release Train (ART) is a long-lived team-of-Agile-teams, which along with other stakeholders, develops and delivers solutions incrementally, using a series of fixed iterations within a program increment timebox. The ART aligns teams to a common business and technology mission.
Agile teams are a group of three to nine dedicated individual contributors, covering all the roles necessary to define, build, and test a quality increment of value in an iteration.
Architectural runway consists of the existing code, components and technical infrastructure necessary to support implementation of high priority, near-term features, without excessive delay and redesign.
See Lean-Agile budgeting.
Built-in quality practices ensure that each solution element, at every increment, meets appropriate quality standards throughout development.
Business Owners are a small group of stakeholders who have the primary technical, fitness for use, governance and Return on Investment (ROI) responsibility for a solution developed by an Agile Release Train. They are key stakeholders on the train and actively participate in certain events.
A capability is a high-level solution behavior that typically spans multiple Agile Release Trains. They are sized and split as necessary to fit within a single program increment.
CapEx and OpEx
CapEx and OpEx describe Lean-Agile financial practices for tracking capital expenses (CapEx), and operating expenses (OpEx) in a value stream budget. In some cases, CapEx may include capitalized labor associated with development of intangible assets such as software, intellectual property and patents.
Communities of Practice
Communities of Practice (CoPs) are groups of people who have a common interest in a specific technical or business domain. They collaborate regularly to share information, improve their skills and performance and advance the general knowledge of the domain.
Continuous integration is a built-in quality practice, where team members constantly integrate and verify their work, using automated build-and-test environments that quickly identify problems and defects.
See value stream coordination.
Core values define the ideals and beliefs that are key to SAFe’s effectiveness. They are: alignment, built-in quality, transparency, and program execution.
The Customer is anyone who consumes the work of a value stream. Customers are an integral part of the agile development process and value stream.
Develop on Cadence
Develop on cadence is a strategy for managing the inherent variability in solution development, by making sure important events and activities on a regular, predictable schedule.
DevOps is a mindset, culture, and set of technical practices that foster communication, collaboration, and close cooperation among all the professionals needed to develop, test, deploy, and maintain a solution.
The economic framework is a set of decision rules aligning everyone to the financial objectives of the mission, defines economic tradeoff parameters, and assures operation within the budget provided by the program portfolio.
Enablers further the exploration, infrastructure, and architecture development activities needed to support future business functionality. Enablers arise from the backlog and occur at all levels of the framework where they are described as enabler portfolio epics, enabler capabilities, enabler features, or enabler stories.
The enterprise represents the business entity that has the ultimate strategic, fiduciary, and governance authority for all the development value streams that make up a portfolio.
The Enterprise Architect fosters adaptive design and engineering practices, and drives strategic architectural initiatives for a portfolio. Enterprise Architects facilitate the reuse of ideas, components, and proven patterns across solutions.
An epic is a significant initiative that typically affects multiple value streams and ARTs. Epics require analysis using a lightweight business case and financial approval before implementation. There are two types of epics: business epics and enabler epics, which may occur at the portfolio, value stream, and program levels.
Epic Owners are responsible for coordinating portfolio epics through the portfolio kanban system. They develop the business case and, when approved, work directly with the key stakeholders on the selected trains to help realize the implementation.
A feature is a service provided by the system that fulfills stakeholder needs and can be delivered by a single ART. Each feature includes a statement of benefits and acceptance criteria, and is sized to fit within a program increment.
Implementing 1-2-3 is a proven success pattern for launching SAFe. It describes the three basic steps: 1) train Lean-Agile change agents, 2) train executives, managers, and leaders, 3) train teams and launch Agile Release Trains.
Innovation and Planning Iteration
The Innovation and Planning iteration occurs every PI and serves multiple purposes. It acts as an estimating buffer for meeting PI objectives, as well as providing dedicated time for innovation, continuing education, and PI planning and Inspect and Adapt (I&A) events.
Inspect and Adapt
Inspect and Adapt (I&A) is a significant event, held at the end of each PI, where the current state of the solution is demonstrated and evaluated. Teams then reflect, and identify improvement backlog items via a structured, problem-solving workshop.
Iteration execution is how Agile teams manage their work throughout the iteration timebox, resulting in a high-quality, working, tested system increment. Each iteration follows a standard pattern: plan the iteration, commit to a goal, execute, demonstrate the work to the key stakeholders, and hold a retrospective.
Iteration goals are high-level summaries of the business and technical goals that the team and Product Owner agree to accomplish in an iteration. They serve as a communication mechanism within the team, and to the team’s stakeholders, and help ensure alignment with the PI objectives.
Iteration planning is an event at which all team members determine how much of the team backlog they can commit to deliver during an upcoming iteration. The team summarizes the work as a set of committed iteration goals.
The iteration retrospective is a meeting where the team members discuss the results of the iteration, review their practices and identify ways to improve.
Iterations are a standard, fixed-length timebox during which teams deliver incremental value in the form of working, tested software and systems. Iterations lengths may be chosen from one to three weeks, with two weeks being the suggested, and most common, duration.
Lean-Agile budgeting is a set of practices that fund and empower value streams, while maintaining financial and fitness-for-use governance through objective evaluation of working systems, and dynamic budget adjustments.
Lean-Agile leaders are lifelong learners who are responsible for the successful adoption of SAFe and the results it delivers. They help teams build better systems by learning, exhibiting, teaching and coaching SAFe’s Lean-Agile principles and practices.
A Lean-Agile mindset combines the concepts of the Agile Manifesto and Lean thinking, serving as the basis for SAFe principles and practices.
Metrics are agreed-upon measures used to evaluate how well the enterprise is adopting SAFe and progressing toward the portfolio, value stream, ART and team business and technical objectives.
Milestone are used to track progress toward a specific goal or event. There are three types of SAFe milestones: fixed-date milestones, program increment milestones and learning milestones.
Model-Based Systems Engineering
Model Based Systems Engineering (MBSE) is a methodology that focuses on the development of various related system models that are used to define and design the system. Models provide an efficient way to explore, update and communicate system aspects to stakeholders while significantly reducing or eliminating dependence on traditional documents.
Nonfunctional requirements (NFRs) define system attributes such as security, reliability, performance, maintainability, scalability, and usability. They serve as constraints or restrictions on the design of the system across the different backlogs.
Program Increment Planning
Program Increment (PI) planning is a cadence-based, face-to-face planning event that serves as the heartbeat of the Agile Release Train, aligning all the teams on the ART to a common goal.
The portfolio backlog is a prioritized list of epics that have been approved for implementation through the portfolio kanban system.
Portfolio Business Epic
Portfolio business epics are large business initiatives that often span value streams and require multiple program increments to deliver.
The portfolio kanban is a method used to visualize and manage the analysis, prioritization and flow of portfolio epics from ideation to implementation and completion.
The portfolio level contains the roles, artifacts and processes needed to meet the strategic intent of the portfolio. It defines the value streams and funding for the people and other resources that build the solutions.
Pre- and Post-PI Planning
Pre- and post-PI (Program Increment) planning meetings are used to prepare for, and follow-up, PI planning for multiple ARTs and suppliers in a large value stream.
Product Management is the content authority for the program level and backlog. They are responsible for identifying customer needs, prioritizing features and developing the program vision and roadmap.
The Product Owner is the content authority for the team level. They are responsible for the team backlog, prioritizing and accepting stories, and representing the customer to the Agile team.
The program backlog is a prioritized list of features intended to address user needs and deliver business benefits. It also includes the enabler features necessary to build the architectural runway.
Program epics are initiatives significant enough to require analysis using a lightweight business case and financial approval before implementation. Their scope is limited to a single Agile Release Train and may take several Program Increments to develop.
A Program Increment (PI) is a timebox in which Agile Release Trains deliver incremental value in the form of working, tested software and systems. PIs are typically eight to twelve weeks long, and the most common pattern for a PI is four development iterations, followed by one Innovation and Planning iteration.
The program kanban is a method used to visualize and manage the analysis, prioritization and flow of program epics and features from ideation to completion for a single ART.
The program level contains the roles and activities needed to continuously deliver solutions via an Agile Release Train.
Program PI Objectives
Program PI objectives are an integrated summary of all the teams’ PI objectives for a train. They are used to communicate the plan to stakeholders and to measure accomplishments of the train for a program increment.
Program Portfolio Management
Program Portfolio Management is a function that contains the individuals who have the ultimate decision-making authority of a portfolio. It is responsible for strategy, investment funding, common program management elements, and portfolio governance.
A release is the private or public delivery of valuable, working, and fully tested and validated solution increments.
Release Any Time
Release any time is a practice whereby the Agile Release Train separates the development cadence from the solution release cycle. Within appropriate technical and business governance, trains may release whatever is needed, at any time.
Release Management is a function that communicates release status to stakeholders, validates that the solutions meets the relevant quality and governance criteria, and provides the final authorization for the release.
Release Train Engineer
The Release Train Engineer (RTE) is a servant leader and coach for the Agile Release Train, who facilitates the train’s processes, events, and execution. He or she escalates impediments and helps manage risk, value delivery, and continuous improvement.
The roadmap is a schedule of events and milestones that communicate planned deliverables over a timeline. It includes commitments for the planned PI and offers visibility into the forecasted deliverables of the next few PIs.
SAFe principles define the nine core beliefs, fundamental truths and economic premises that drive effective roles, and practices and successful SAFe implementation.
Scrum Masters are servant leaders and coaches for an Agile team. They help educate the team in Scrum, Extreme Programming (XP), Kanban and SAFe, and ensure that the process is being followed. They also help remove impediments, and foster an environment for high-performing team dynamics, continuous flow, and relentless improvement.
ScrumXP is a lightweight process for cross-functional, self-organized teams to deliver value within the context of SAFe. ScrumXP combines the power of Scrum project management practices with XP-inspired technical practices.
Set-based design is a practice in which the requirements and design options are kept flexible for a longer period of time. Instead of choosing a single “point” solution upfront, set-based design is used to identify design options, and eliminate poorer choices over time, thereby enabling flexibility in the design process.
Shared Services represents the specialty roles, people and services necessary for the success of an Agile Release Train or value stream, but can’t be dedicated to any specific train full-time (e.g. security specialists, database administrators).
A solution is a final product, service, or system delivered to the customer or, enables an operational value stream within the organization.
Solution Architect/Engineering represents the individuals and teams who have the technical responsibility for the overall architecture and engineering design of the solution. They help align the value stream and Agile Release Trains to a common technological and architectural vision.
Solution context identifies critical aspects of the target solution’s environment. It identifies impact on the requirements, usage, installation, operation, and support of the solution itself.
The solution demo is where the results of all the development efforts from multiple ARTs—along with the contributions from suppliers—are integrated, evaluated, and made visible to customers and other stakeholders.
Solution intent represents the repository for storing, managing, and communicating knowledge of the current and intended solution, including traceability between the items where required.
Solution Management is the content authority for the value stream level. They work with customers to understand their needs, create the vision and roadmap, define requirements, and guide work through the value stream kanban.
The spanning palette contains various roles and artifacts that may be applicable at any level of the framework. It is used to apply various SAFe elements to a specific team, program, value stream, or portfolio context.
Stories are short, simple descriptions of a small piece of desired functionality, written in the user’s language. Each story supports incremental development by implementing a small, vertical slice of system functionality.
Strategic themes are itemized, differentiated business objectives that connect a portfolio to the enterprise’s business strategy. They provide business context for decision-making within the portfolio, and they serve as inputs to the budget, portfolio, solution, and program backlog.
A supplier is an organization that develops and delivers components and subsystems that help value streams deliver value to their customers.
System Architect/Engineering represents an individual or small team that defines a common technical and architectural vision for the solution under development. They participate in defining the system and subsystems, interfaces, validate technology assumptions, and evaluate alternatives.
The system demo occurs at the end of every iteration, and provides an integrated view of the new features, which have been delivered by all the teams in the ART for the most recent iteration. It provides the Agile Release Train with an objective measure of progress during a PI.
The System Team is a special Agile team that provides assistance in building and using the Agile development environment, including continuous integration and test automation. The System Team integrates assets from Agile teams, performs end-to-end solution testing where necessary, and assisting with deployment. They often facilitate the system demo.
The team backlog contains user and enabler stories that originate from the program backlog, as well as stories that arise locally from the team’s specific context. It represents all the things a team needs to do to advance their portion of the system.
The team demo is used to measure progress and get feedback at the end of each iteration by demonstrating every story, spike, refactor, and new non-functional requirement developed in the recent iteration.
Team kanban is a method that facilitates the flow of value by visualizing Work in Process (WIP) and establishing WIP limits, measuring throughput, and continuously improving the process.
The team level contains the roles, activities, and process model for the teams who power the Agile Release Train.
Team PI Objectives
Team PI objectives describe the business and technical goals that an Agile team intends to achieve in the upcoming PI. They summarize and validate business and technical intent, which enhances communication, alignment, and visibility.
Test-first is a built-in quality practice to develop and test a system in small increments. Tests are developed in advance of the functionality and are used to better define the intended system behavior, before the system is implemented.
User experience designers support a consistent user experience across the components and systems of the larger solution, while Agile teams have responsibility for implementing the solution, including the user-facing elements.
Value Stream Backlog
The value stream backlog is the repository for all upcoming capabilities and enablers, each of which can span multiple Agile Release Trains and is used to advance the solution and build the architectural runway.
Value Stream Coordination
Value stream coordination provides guidance for managing dependencies across value streams in a portfolio.
Value Stream Engineer
The Value Stream Engineer (VSE) is a servant leader and coach for a value stream. VSEs facilitate value stream processes, events and execution, as well as driving continuous improvement.
Value Stream Epics
Value stream epics are significant initiatives that require analysis, using a lightweight business case, and financial approval before implementation. Their scope is limited to a to a single value stream and may take several PIs to develop.
Value Stream Kanban
The value stream kanban is a method used to manage the analysis, prioritization and flow of value stream epics and capabilities, from ideation to completion.
Value Stream Level
The value stream level provides the roles, responsibilities and activities necessary to support those building large and complex solutions, which typically require multiple Agile Release Trains, as well as the contributions of suppliers. This optional level is used by enterprises that face the largest systems challenges, which require multidisciplinary software and system professionals.
Value Stream PI Objectives
Value stream PI objectives are the business and technical goals identified by value stream stakeholders for a PI. They communicate to stakeholders what the value stream will deliver in the upcoming PI. They are used for large value streams that have multiple ARTs or suppliers.
Value streams represent the series of steps that an enterprise uses to build solutions that provide a continuous flow of value to a customer. Value streams are the primary means for understanding business objectives, organizing teams and trains, and delivering end value. They are realized by Agile Release Trains.
The vision is a description, or future view of the solution to be developed, reflecting customer and stakeholders needs, as well as the proposed features and capabilities. It provides the larger, contextual overview and purpose of the solution under development.
Weighted Shortest Job First
Weighted Shortest Job First (WSJF) is a prioritization model used to sequence “jobs” (features, capabilities) so as to produce maximum economic benefit in a flow-based system. WSJF is calculated as the cost of delay divided by job duration (or job size as a proxy).
Last Update: 18 Nov 2016