Tabs Container |
---|
|
Tabs Page |
---|
| Welcome
Welcome to the CCSQ Community! As an Application Development Organization (ADO) with CMS, your expertise is critical to delivering value to the American taxpayer. In alignment with the agile values and principles, CCSQ uses the Scrum and Scaled Agile Frameworks (SAFe) as a guide for standardized processes. The information provided in this Onboarding Guide highlights CCSQ's standards and expectations for operating within these frameworks. More comprehensive information is found in the Scrum Guide and the Scaled Agile Framework websites. Rely on your program leadership, Agile coaches, and Release Train Engineers to provide guidance and training when needed. |
Tabs Page |
---|
| Organization
How we organize the people is important. We want the right skillsets and the right size of teams to maximize value delivery. Agile Team
The heart of the value delivery is built on the Agile Team. From the Scrum Guide: "The Scrum Team consists of one Scrum Master, one Product Owner, and Developers. Within a Scrum Team, there are no sub-teams or hierarchies. It is a cohesive unit of professionals focused on one objective at a time, the Product Goal." Each of these roles are important and should not be dismissed or missing from the team. It is recommended that the Agile Team positions be filled by contract partners (ADOs). Scrum Master
- Guides the team in Agile practices.
- Removes impediments the team experiences.
Product Owner
- Has content authority over the Team Backlog.
- Establishes and maintains product vision.
- Works with developers to provide alignment and remove ambiguity for the work to be done.
Team Members/Developers
- Does the work to create and deliver the value.
- Cross functional skills to be autonomous in doing the necessary work.
- Software Engineers
- UI/UX
- Technical Writers
- Testers
- Etc
Agile Release TrainThe Agile Release Train is all of the Agile Teams, support teams, product managers, and leadership needed to create large-scale, complex products. ARTs are organized around value. As such, an Organizational Value Stream Map must be provided by CCSQ to help the ART members understand the value they are expected to deliver. There are some key roles in the ART: Release Train Engineer (RTE)"The Release Train Engineer (RTE) is a servant leader and coach for the Agile Release Train (ART). The RTE’s major responsibilities are to facilitate the ART events and processes and assist the teams in delivering value. RTEs communicate with stakeholders, escalate impediments, help manage risk, and drive relentless improvement." Product Manager"Product Management is responsible for defining and supporting the building of desirable, feasible, viable, and sustainable products that meet customer needs over the product-market lifecycle."
The Product Manager position is to be filled by a government partner. There may be more than one Product Manager on an ART. Agile CoachThe Agile Coach assists the ART in identifying and addressing impediments, waste, Agile processes, and value delivery. The Agile Coach may or may not be a full-time member of the ART. Their engagement depends on the maturity and experience of the ART and the specific opportunities that need to be addressed.
Contact the LACE for Agile Coaching Support
|
Tabs Page |
---|
| Work Structure
Horizontal Navigation Bar |
---|
Horizontal Navigation Bar Page |
---|
| Managing WorkWork Item Management Basics | The Requirements Hierarchy |
---|
Ownership is taken, not given
Scaled Agile, Lean, and Agile development models leverage KanBan’s operating model to provide transparency, visibility, and shared understanding of work preparation and delivery progress. Owners of responsibility for a process step pull work from the upstream step as throughput allows. For example, a Product Owner pulls the highest priority feature from the program backlog as they become available to investigate the desired functionality and define requirements for the product backlog. Work is then pulled from the prioritized product backlog in priority order into the sprint backlog by the development team. Within the iteration, a developer pulls the highest priority story in the sprint backlog when they become available. Since we can’t predict who will be the first available to pull the highest priority item from appropriate backlog, the onus of changing ownership is on the person beginning the next phase of work. The exception to this rule is that work is pushed into the "Ready" states to support procedural communications and visibility. Social Contracts regulate qualityThe Definition of Ready and theDefinition of Done regulate the quality of work throughout the process. Each business and product delivery team should develop their own definitions of what constitutes done and ready, holding themselves and others accountable to these contracts. The Definition of Ready defines what is acceptable for work to begin, and theDefinition of Done defines when the work is done, and therefore ready, for the next phase of the process. Whoever is working it owns itAt any level of requirements, whoever is responsible for a phase of delivery of work retains ownership until the phase is complete. At the higher levels of requirements, ownership my never be transferred, For example, a solution manager owns one or more epics, and its associated draft features. When the feature drafts are done, it is also ready for a Product Owner to take ownership and begin more thorough requirements definition and refinement. Whoever owns it manages the statusBecause work item status management is the responsibility of the owner, the transfer of ownership throughout the process is key for both communications and visibility. As a result, the statuses that a specific owner can manage are limited to those within their domain authority. For example, a developer has authority to say a work item is in “development” or “ready for testing”, but may not change a Feature’s status to complete, as it is outside the developer's domain authority, and should only be closed by the Product Manager. | Work break down moves from large and goal oriented to small and deliberateThe 4 levels of requirements from largest to smallest:Epics Features Stories Tasks
Requirements that can exist at multiple levels of the hierarchy:Objectives Enablers
Use the menu at the top to see the CCSQ Standards for defining and managing each work item type. |
|
Horizontal Navigation Bar Page |
---|
| Objectives//insert here page "Objectives are strategic and tactical requirements used to associate value with the work being delivered, rather than describe the work itself". | Objectives can be used to map value to any level of requirement, and can be used by every level of the enterprise. Objectives defined at any level should be evaluated for progress at a minimum once per PI. Typically, you will see the Objective work item type used at the team level to show how the work in their PI Plan supports the program's business objectives, which should be introduced at the beginning of PI Planning. At this level, the Objective work item type should be linked as "Supports" to the corresponding PI Objective, rather than a Feature. At the Program Level, you may see the Objective Work Items as the parent items for Epics or Features, and are typically expressed as Objectives and Key Results (OKRs). To use objective at this level, you must manually add the Supports/Is Supported By or Parent/Child links in Jira.
|
|
Horizontal Navigation Bar Page |
---|
| Epics"An Epic is a container for a significant Solution development initiative that captures the more substantial investments that occur within a portfolio." Epics are too large to fit into a single PI and may take multiple PIs to deliver.
Below is the recommended Portfolio Kanban configuration, taken from the Scaled Agile Framework. You can see that Epics move through the Portfolio Kanban to bring visibility into the progress of the Epic work. |
Horizontal Navigation Bar Page |
---|
| Enabler Management"Enables are work required to build business future functionality." | Enablers sit outside the hierarchy of work items and describe a specific type of work. Enablers can be defined at the Epics, Features, or User Story level. Programs use two primary enabler types: Feature and team enablers. These work item management practices align the work with SAFe standards, support enterprise metrics, and reporting standardization across CCSQ. |
Feature Enabler:The Program Feature Backlog differentiates enabler work using labels tagged to ![](/download/attachments/533828972/Feature.png?version=1&modificationDate=1707246985738&api=v2)
Enabler Type | Enabler Jira Label | Description | Exploration enablers | Exploration_Enabler | Support research, prototyping, and other activities needed to develop an understanding of customer needs, including the exploration of prospective solutions, and evaluating alternatives. | Architectural enablers | Architectural_Enabler | Define the Architectural Runway, which allows smoother and faster development. | Infrastructure enablers | Infrastructure_Enabler | Define enhancements to and automations for the development, testing, and deployment environments to ensure higher-quality, and increase the speed of development and deployment. | Compliance enablers | Compliance_Enabler | Facilitate managing specific compliance activities, including Verification and Validation (V&V), documentation and signoffs, and regulatory submissions and approvals. |
Team Enablers:Enablers at the team level should use the work item type. Enabler Issue Management StandardStatus | Status Definition/Description | Status Category | Jira Enabler Workflow Setup | New: | Has been created and can be in any state of refinement by the Product Owner and/or team, but has not met the definition of ready | To-do | | Ready: | Has met the team’s Definition of Ready but has not been taken into an iteration commitment | To-do | In Development: | A developer has become available, taken ownership of the story and begun working on a task associated with the story | In Progress | Ready for Peer Review: | The developer has completed the story and needs it reviewed by a fellow engineer | In Progress | In Peer Review: | A fellow engineer is reviewing and discussing with the authoring engineer if/when changes need to be made | In Progress | Ready for Testing: | All development tasks are complete, the code has been reviewed, integrated, and deployed to the test environment | In Progress | In Testing: | Testing of the story has begun, test cases are being run against all business, functional an non-functional requirements | In Progress | Ready For Acceptance: | Testing is complete, and the story is awaiting the product owner to begin validating the Business and Functional requirements defined in the Acceptance Criteria | In Progress | Production Ready: | The Product Owner has validated the Acceptance Criteria and approves the story for deployment to the production environment | Done | Done: | The story has been deployed and validated in the production environment | Done | Abandoned: | The Product Owner has made the decision that the story is no longer necessary | Done |
Ownership by Status and TransitionOwnership Role | Status | Status Change | Product Owner | | | Developer | | | Developer 1 | | | Developer 2 | | ![](/download/attachments/533828972/StatusReadyforTesting.png?version=1&modificationDate=1707246984216&api=v2)
Or back to ![](/download/thumbnails/533828972/StatusInDevelopment.png?version=1&modificationDate=1707246984830&api=v2)
| Tester | | ![](/download/attachments/533828972/StatusReadyforAcceptance.png?version=1&modificationDate=1707246984358&api=v2)
Or back to ![](/download/thumbnails/533828972/StatusInDevelopment.png?version=1&modificationDate=1707246984830&api=v2)
| Product Owner | | | Product Manager | | | Product Owner | <any state> | |
|
Horizontal Navigation Bar Page |
---|
| Spike Research Management"Since spikes do not directly deliver user value, use them sparingly." | Spikes should be Quantifiable, Demonstrable, and Acceptable. Like other stories, spikes are put in the Team Backlog, estimated, and sized to fit in an iteration. Spike results are different from a story because spikes typically produce information rather than working code. They should develop only the necessary data to identify and size the stories that drive it confidently. The output of a spike is demonstrable, both to the team and to any other stakeholders, which brings visibility to the research and architectural efforts, and also helps build collective ownership and shared responsibility for decision-making. The Product Owner accepts spikes that have been demoed and meet its acceptance criteria. |
Tracking research using ![](/download/attachments/533828972/Spike.png?version=1&modificationDate=1707246985333&api=v2) Spikes are typically Technical or Functional. Functional spikes – They are used to analyze overall solution behavior and determine:- How to break it down
- How to organize the work
- Where risk and complexity exist
- How to use insights to influence implementation decisions
Technical spikes – They are used to research various approaches in the solution domain. For example:- Determine a build-versus-buy decision
- Evaluate the potential performance or load impact of a new user story
- Evaluate specific technical implementation approaches
- Develop confidence about the desired solution path
Use Jira Labels: Functional_Spike or Technical_SpikeSpike Management StandardStatus | Status Definition/Description | Status Category | Jira Story Workflow Setup | Funnel: | Document any need for technical or functional research | To-do | | Analyzing: | The Product Owner has documented the benefit hypothesis and acceptance criteria. WSFJ has been calculated | To-do | PI Ready: | Has met the team’s Definition of Ready for the PI but has not been taken into an iteration commitment | To-do | In Development: | A developer has become available, taken ownership of the Spike and begun working on a associated task | In Progress | Ready for Peer Review: | The developer has completed the Spike and needs it reviewed by a fellow engineer | In Progress | In Peer Review: | A fellow engineer is reviewing and discussing with the authoring engineer if/when changes need to be made | In Progress | Ready For Acceptance: | The Spike is awaiting the Product Owner to validate the Business Hypothesis and requirements defined in the Acceptance Criteria | In Progress | Done: | The Product Owner has validated the Acceptance Criteria and approves the Spike | Done | Abandoned: | The Product Owner has made the decision that the Spike is no longer necessary | Done |
Ownership by Status and TransitionOwnership Role | Status | Status Change | Product Owner | | | Product Owner | | | Developer 1 | | | Developer 1 | | | Developer 2 | | | Developer 2
| | ![](/download/attachments/533828972/StatusReadyforAcceptance.png?version=1&modificationDate=1707246984358&api=v2)
Or back to ![](/download/thumbnails/533828972/StatusInDevelopment.png?version=1&modificationDate=1707246984830&api=v2)
| Product Owner | | |
|
Horizontal Navigation Bar Page |
---|
| Feature Management"A feature is a service that fulfills a stakeholder need." | Each Feature includes a benefit hypothesis and acceptance criteria, and is sized or split as necessary to be delivered by a single Agile Release Train (ART) in a Program Increment (PI). Features are working software that solve problems. Partial features can be released to the users, as long as it solves a user's problem or helps a user complete their work. Features move through different statuses as they are being refined, developed, and released. Below is the recommended Program Kanban configuration, taken from the Scaled Agile Framework. You can see that as Features move through the Continuous Delivery Pipeline there are corresponding statuses to bring visibility into the progress of Feature work. |
Status | Status Definition/Description | Status Category | Jira Story Workflow Setup | Funnel: | All big ideas are welcome here | To-do | | Analyzing: | The Product Owner has documented the benefit hypothesis and acceptance criteria. WSFJ has been calculated | To-do | PI Ready: | Has met the team’s Definition of Ready for the PI but has not been taken into an iteration commitment | To-do | Program Backlog: | A program has accepted the work for a Program Increment | In Progress | Implementing: | As development team has started working on stories associated with the Feature | In Progress | Validating on Staging: | The Feature is being tested in a Staging environment | In Progress | Production Ready: | A Product Owner has validated that the Business Hypothesis and requirements defined in the Acceptance Criteria have been met | Done | Done: | The Product Manager has validated that the Feature has been deployed | Done | Abandoned: | The Product Owner has made the decision that the Feature is no longer necessary | Done |
Ownership by Status and TransitionFeatures are owned by the Feature Owner for a specific Feature and the role is assigned when more explicit requirements are needed and the Feature is being implemented and developed. Feature Owner works closely with the Solutions Management Team (SMT) and Product Owner (PO) who is a member of the Agile Team. Feature Owner works in identifying benefit hypothesis and how this Feature will need to be developed and guides the Product Owner and Agile Team with visioning and goal of the scope of work needed. Product Owner author stories in advance of backlog refinement with the assistance of the team to ensure the Agile Team understands "What" needs to get done and Agile Teams focus on "How" it will get done and "How much" will get done based on capacity and velocity. Ownership Role | Status | Status Change | Product Owner | | | Product Owner/SMT | | | Product Manager/SMT/RTE | | | RTE/Development Team | | | RTE/Development Team | | | RTE/Dev Team/Product Manager
| | | Product Manager | | | Product Owner | <any state> | |
*Only the Feature Owner and Product Manager have the authority to abandon or close a feature Jira Board Configuration- Given that CCSQ has adopted the Scaled Agile Framework for Enterprise, ISG Programs should use the columns above to create transparency and allow enterprise measurement.
- While all programs have different processes to manage their work, Jira offers some flexibility in its board configuration, allowing custom processes to be shown on the program
- Most of the statuses your program needs are already created in Jira, but you may need to request the statuses be added to your project via a request in Atlassian Slack. When working with Atlassian to set up your project, request the core statuses from the Kanban board above and any other statuses you use in your workflow.
The Program Kanban Board configuration below illustrates the encouraged configuration. Labels can be added to support reporting or add visibility to issues on your board. Click on image to enlarge ![](/download/attachments/533828972/Program%20Kanban%20board.PNG?version=1&modificationDate=1707246985393&api=v2)
|
Horizontal Navigation Bar Page |
---|
| User Story Management"A User Story is a short, informal, plain language description of what a user wants to do to gain something they find valuable." | The user stories are owned by the product owner, from the time created until a work begins, and re-assumes ownership after work is complete. For User stories where task assignment is split, ownership should be assumed by the first person taking a task, and can be updated to the person working the last open task. |
User Story Issue Management StandardStatus | Status Definition/Description | Status Category | Jira Story Workflow Setup | New: | Has been created and can be in any state of refinement by the Product Owner and/or team, but has not met the definition of ready | To-do | | Ready: | Has met the team’s Definition of Ready but has not been taken into an iteration commitment | To-do | In Development: | A developer has become available, taken ownership of the story and begun working on a task associated with the story | In Progress | Ready for Peer Review: | The developer has completed the story and needs it reviewed by a fellow engineer | In Progress | In Peer Review: | A fellow engineer is reviewing and discussing with the authoring engineer if/when changes need to be made | In Progress | Ready for Testing: | All development tasks are complete, the code has been reviewed, integrated, and deployed to the test environment | In Progress | In Testing: | Testing of the story has begun, test cases are being run against all business, functional an non-functional requirements | In Progress | Ready For Acceptance: | Testing is complete, and the story is awaiting the product owner to begin validating the Business and Functional requirements defined in the Acceptance Criteria | In Progress | Production Ready: | The Product Owner has validated the Acceptance Criteria and approves the story for deployment to the production environment | Done | Done: | The story has been deployed and validated in the production environment | Done | Abandoned: | The Product Owner has made the decision that the story is no longer necessary | Done |
Ownership by Status and TransitionOwnership Role | Status | Status Change | Product Owner | | | Developer | | | Developer 1 | | | Developer 2 | | ![](/download/attachments/533828972/StatusReadyforTesting.png?version=1&modificationDate=1707246984216&api=v2) Or back to
![](/download/attachments/533828972/StatusInDevelopment.png?version=1&modificationDate=1707246984830&api=v2)
| Tester | | ![](/download/attachments/533828972/StatusReadyforAcceptance.png?version=1&modificationDate=1707246984358&api=v2) Or back to
![](/download/attachments/533828972/StatusInDevelopment.png?version=1&modificationDate=1707246984830&api=v2)
| Product Owner | | | Product Manager | | | Product Owner | <any state> | |
|
Horizontal Navigation Bar Page |
---|
| TasksTo do: | A task/story has been created and is in the backlog | To-Do | To-Do | In-Progress: | A task/story has been started by an engineer | In Progress | In Progress | Awaiting Review | A task/story is ready for review by another engineer | In In Progress | Progress | In Review | A task/story is being reviewed internally | In Progress | In Progress | Awaiting Awaiting Validation | The task/story is awaiting confirmation of completion | In Progress | In Progress | Done: | The task meets the release criteria defined in the team's definition of done | Done | Done | Abandoned: | The team has made the decision that the task is no longer necessary. | Done | Done |
|
|
|
Tabs Page |
---|
| Collaboration
Collaboration is a key practice to maintaining alignment and removing impediments. Collaboration is necessary within a team between team members, teams with other teams (inside and outside of the ART 1), and teams and the ART with stakeholders and customers. Cadence 2 of normalized collaboration sessions helps keep calendars uncluttered and minimizes disruption of focus time to get the work done. ProgramProgram IncrementThe Program Increment (PI) is a medium term timebox between 8-12 weeks. This gives the program roughly a quarterly timeline to plan and deliver initiatives at the Feature level. PI PlanningAt the beginning of the PI, the Agile Release Train takes time to map and commit to the Features that will be completed in the PI during the PI Planning event. This is an important ceremony that cannot be skimped on. All members of the ART and external stakeholders MUST participate to set the ART up for success in value delivery. To learn more about PI Planning, please request the LACE Explained: PI Planning Training. Furthermore, the success of a PI Planning depends on real-time access to information and tooling to support distributed planning or remote attendees. One of the tools at your disposal is LucidSpark. Learn how to leverage LucidsPark PI Planning Template. ART SyncDuring the PI, as the Agile Teams and ART members are executing to create and deliver value, it is important to align on execution and expose impediments that are impacting the ART. The ART Sync is typically attended by Scrum Masters, Product Owners, Technical Leads, and various Program Stakeholders. The ART Sync is not a ceremony. It is a broad label that encompasses two ceremonies, the PO Sync and the Scrum of Scrums. These two ceremonies can be scheduled independently, back-to-back, or even simultaneously. However, the value of these two ceremonies is the ability to communicate progress and surface dependencies and risks. This means that outputs and discoveries from one ceremony are communicated to the other. System DemoDuring the PI, as the Agile Teams and ART members are executing to create and deliver value, it is important to show the actual value (working software) to customers and stakeholders in the System Demo. This is the time for the customers and stakeholders to view progress and give feedback. Inspect & Adapt WorkshopAt the end of the PI, the ART must take time to reflect on how it executed and how it can improve. The Inspect & Adapt Workshop brings the entire ART together for a retrospective. Learn more about the LACE Inspect and Adapt Explained Training. TeamEach Agile Team executes within an ART during a PI. The teams operate on their own work items, collaborating with other teams, as needed. IterationJust as the PI is the timebox for the ART, the Sprint, or Iteration, is the timebox for the Agile Team. This is a shorter timebox, as several Iterations will occur in a given PI. Generally, an Iteration length is 2 weeks. Iteration PlanningAt the beginning of the Iteration, the team plans the work to be committed to from the Product Backlog. This is the Daily Scrum. Daily StandupJust as the ART Sync helps the ART align and expose impediments, the Daily Scrum, or Daily Standup, helps the team align and expose impediments. This happens on a daily basis, so the team doesn't fall too far out of alignment and impediments don't remain hidden. Iteration ReviewAt the end of the Iteration, the team showcases their completed work. This is a review of the current state of the product. The Iteration Review is a time for the customers and stakeholders to witness the completed work and provide feedback. It's important for team members to demo the actual deliverables - working software or documentation for example - so everyone is in sync and the Product Owner and team members can provide more useful feedback. In a virtual team environment, consider walking through each user story and it's associated deliverables via screen share. Iteration RetrospectiveAt the end of the Iteration, the team reflects on how they accomplished their work and how they can improve. This is a review of the current state of the agile process. The Retrospective is a time for the team members to provide feedback on what is working well and not working well in the agile process and create action items that the Scrum Master can track and report on during the following Sprint Retrospective. This is to ensure that changes are being made and the desired outcomes are being realized. If they're not, try something new to address the pain points and revisit it during the next Retrospective. Learn to facilitate a retrospective here |
Tabs Page |
---|
| Social Contracts
In order for teams to work together, and team members to work together, social contracts must be created and agreed upon. These contracts help focus the conversations and establish expectations. We recommend at least having the following three Social Contracts on every team. There can be more contracts, but these three should always exist. Social Contracts should be reviewed and updated on a regular basis. Team member changes (new people join, existing members leave) are great opportunities to review the existing contracts, or create them, if they don't exist. The Iteration Retrospective is also an appropriate time to review and update the team Social Contracts. Agile Release Trains can also create Social Contracts, as needed. Working Agreements, in general, are powerful tools to help eliminate waste in collaboration and driving to high value outcomes. Learn more about Social Contracts by requesting the LACE Explained: Social Contracts Training. Working Agreement
The purpose of the Working Agreement is to ensure the Agile Team shares responsibility in defining expectations for how they will function together and enhance their self-organization process. It creates an awareness of both positive (and negative) behaviors that can impact the Team and empowers the Scrum Master to keep them accountable.
The process of defining the Team’s working agreement is straightforward. The Scrum Master facilitates a session with the Agile Team and Product Owner, where they generate a number of team disciplines together. A working agreement should be recalled easily, so they will then vote on the top five to ten disciplines. Once the Team has agreed upon a set of disciplines, they should be posted in their designated area and/or stored in a virtual folder that is accessible to all members.
Examples may include: • Product Owner is available during core hours • Be on time for all meetings • Communicate individual schedules • ALL changes to the Sprint / Backlog must be approved by the Product Owner • Use the Impediment Backlog (or swimlane) for blocked issues • Define and adhere to ‘DONE’ criteria for stories • Define and adhere to Version Control rules • Adhere to code documentation standards • Update Backlog before Standup daily • Respect your team member’s timeDefinition of Ready
Having a Definition of Ready means that stories must be immediately actionable. The Team must be able to determine what needs to be done and the amount of work required to complete the User Story or PBI.
"Ready" stories should be clear, concise, and most importantly, actionable.
These considerations are often summarized as the Invest Criteria , and they provide us with a useful Definition of Ready which can be applied to Product Backlog Items. By actively participating in Product Backlog refinement, a good Development Team will collaborate with the Product Owner in making sure that a standard such as this is observed.
I (Independent). The PBI should be self-contained and it should be possible to bring it into progress without a dependency upon another PBI or an external resource.
N (Negotiable). A good PBI should leave room for discussion regarding its optimal implementation.
V (Valuable). The value a PBI delivers to stakeholders should be clear.
E (Estimable). A PBI must have a size relative to other PBIs.
S (Small). PBIs should be small enough to estimate with reasonable accuracy and to plan into a time-box such as a Sprint.
T (Testable). Each PBI should have clear acceptance criteria which allow its satisfaction to be tested.
Examples may include: • All stories have a value statement (As a , I need , so that I ) • All stories have acceptance criteria • All stories have been refined by the team prior to Iteration Planning • All stories have been sized by the teamDefinition of Done
"The Definition of Done is a formal description of the state of the Increment when it meets the quality measures required for the product." In software, a Definition of Done describes the tasks needed for every new functionality, regardless of size or request.
Examples may include: • Every task under the User Story has been completed • Unit tests all pass • At least one other team member has performed a peer review • User documentation is updated • Deployed to UAT
In a non-development context, the DoD is still a list of non-functional requirements that are required to be completed before work is considered complete.
For example, a service desk may include: • Steps to recreate are documented • Steps to solve the problem are documented • Customer satisfaction rating is documented |
Tabs Page |
---|
| Value Delivery
The entire goal of the work processes is to deliver value. "Working software is the primary measure of progress." - Agile Principle #7 1
Once the team has completed work (per the Definition of Done 1), they show their value output to Product Owners, Product Management, Stakeholders, and Customers. All valuable work that helps to solve their problems is included in this demonstration and review. That includes, but is not limited to, documentation, marketing materials, UI designs, user personas, and, of course, any working software.
The events for review are Iteration Review 3 at the Team Level and System Demo 4 at the Program Level. Iteration ReviewAt the end of an Iteration, the Agile Team demonstrates completed functionality and value output to showcase their work to interested stakeholder and/or customers and solicit feedback. This is the Iteration Review, sometimes referred to as the Sprint Review. System Demo
Just as the Agile Team demonstrates completed functionality and value output at the end of the iteration, the ART must demonstrate all of the Teams' integrated work in the System Demo. |
Tabs Page |
---|
| Foundational Values
All of the above practices and processes are based on the principles and values of Lean Thinking, Empiricism and Metrics, and The Agile Manifesto. Empirical Data/MetricsWithout empirical data and metrics, decisions will be made with incomplete or erroneous information. "Empiricism asserts that knowledge comes from experience and making decisions based on what is observed." Lean ThinkingBased on Lean Thinking in manufacturing, we can eliminate waste by mapping our processes and identifying areas of improvement. "The Lean-Agile Mindset is the combination of beliefs, assumptions, attitudes, and actions of SAFe leaders and practitioners who embrace the concepts of the Agile Manifesto and Lean thinking. It’s the personal, intellectual, and leadership foundation for adopting and applying SAFe principles and practices." "Lean thinking reduces waste and focuses on the essentials." |
Tabs Page |
---|
title | RECEIVE CMS EXPECTATIONS |
---|
| Expectations of CMS
As an Application Development Organization (ADO), you are expected to deliver value. However, CCSQ will provide you with the information and support you need to be successful. Expected of CMS
The following artifacts should be created and maintained by CMS (Business Owners, Solution Management, Product Management) and should be provided to ADOs and other Stakeholders. Vision The Vision is a description of the future state of the Solution under development. It reflects customer and stakeholder needs, as well as the Feature and Capabilities proposed to meet those needs. Operational Value Stream MapOperational Value Streams (OVS) are the sequence of activities needed to deliver a product or service to a customer. Objectives and Key Results (OKRs)Objectives and Key Results, or OKRs, for short, are plain language goals and the measures of success for those goals. How do we know what the goal is? How do we know if reached the goal? Does everyone agree on what success is?
The goal of using OKRs for strategic themes is to define and track their progress through concrete, specific, and measurable actions. “OKRs are frequently set, tracked, and re-evaluated – usually quarterly. OKRs exists to create alignment and to set the cadence for the organization. The goal is to ensure everyone is going in the same direction, with clear priorities, in a constant rhythm.” Program BacklogThe Program Backlog is the holding area for upcoming Features, which are intended to address user needs and deliver business benefits for a single Agile Release Train (ART). It also contains the enabler features necessary to build the Architectural Runway.
The Program Backlog is created, refined, and prioritized by Product Management. To learn more about Program Backlog Management, the LACE offers the following trainings: Team BacklogOrganizing your work into a digestible, transparent artifact is not difficult. The Team Backlog is the primary repository for managing work items. Specifically, User Stories. User Stories are discreet value propositions of a larger Feature or Enabler from the Program Backlog. All User Stories will be tracked in Jira. This is because the CMS Jira implementation is able to read Jira projects and collect and collate pertinent metrics associated with team effectiveness. Value ArtifactsAll of the source code, infrastructure as code, documentation, dependencies, and everything else used to create the Value belong to CMS. As such, all repositories, Confluence spaces, etc. are to be provided to CMS. Required Artifacts:DevOps MetricsWhile Team effectiveness metrics are gleaned from Jira projects, DevOps metrics must be provided. - Deployment Frequency
- Deployment Lead Time
- Mean Time To Restore
- Deployment Failure Rate
Development Value Stream MapGetting the software value into production is just as important as the software value, itself. Automation, quality gates, package bundling and installation, and software scanning help increase quality and speed of delivery.
Mapping out the Development Value Stream is critical to understand the system and where to focus on improvement opportunities.
All ADOs are required to create and maintain a Development Value Stream Map. This should be available in Confluence. Getting the software value into production is just as important as the software value, itself. Automation, quality gates, package bundling and installation, and software scanning help increase quality and speed of delivery.
Mapping out the Development Value Stream is critical to understand the system and where to focus on improvement opportunities.
All ADOs are required to create and maintain a Development Value Stream Map. This should be available in Confluence. Learn more about Value Stream Mapping to request the LACE Value Stream Mapping Workshop |
Tabs Page |
---|
title | GIVE CMSCONTRACTOR EXPECTATIONS |
---|
| Provided to CMSTeam BacklogOrganizing your work into a digestible, transparent artifact is not difficult. The Team Backlog is the primary repository for managing work items. Specifically, User Stories. User Stories are discreet value propositions of a larger Feature or Enabler from the Program Backlog. All User Stories will be tracked in Jira. This is because the CMS Jira implementation is able to read Jira projects and collect and collate pertinent metrics associated with team effectiveness. Value ArtifactsAll of the source code, infrastructure as code, documentation, dependencies, and everything else used to create the Value belong to CMS. As such, all repositories, Confluence spaces, etc. are to be provided to CMS. Required Artifacts:DevOps MetricsWhile Team effectiveness metrics are gleaned from Jira projects, DevOps metrics must be provided. - Deployment Frequency
- Deployment Lead Time
- Mean Time To Restore
- Deployment Failure Rate
Development Value Stream MapGetting the software value into production is just as important as the software value, itself. Automation, quality gates, package bundling and installation, and software scanning help increase quality and speed of delivery.
Mapping out the Development Value Stream is critical to understand the system and where to focus on improvement opportunities.
All ADOs are required to create and maintain a Development Value Stream Map. This should be available in Confluence.
Getting the software value into production is just as important as the software value, itself. Automation, quality gates, package bundling and installation, and software scanning help increase quality and speed of delivery.
Mapping out the Development Value Stream is critical to understand the system and where to focus on improvement opportunities.
All ADOs are required to create and maintain a Development Value Stream Map. This should be available in Confluence. Learn more about Value Stream Mapping to request the LACE Value Stream Mapping Workshop |
Tabs Page |
---|
| Team Readiness Checklist
As a Software Development Partner, the expectations explained above should be understood and achieved. Below is a checklist to understand the health and completeness of the team(s). This is by no means an exhaustive list, nor is it a measure of success, on it's own. This is a basic list to help teams get started. All the information and artifacts should be transparent and communicated to CMS. ArtifactsDo all of the teams have: - Definition of Done
- Working Agreement
- Definition of Ready
- Calendar of Scrum Ceremonies
- Team Roster with contact information
Work ManagementDo all of the teams have: - Jira Project with Team Backlog
- The Team Backlog feeds into the metrics dashboard
Source CodeDo all of the teams have: - GitHub Repo(s)
- Documentation
- Technical
- Installation/Packaging
- Architecture
DevOpsDo all of the teams have: - DevOps Metrics
- Development Value Stream
|
|
|