In this series, we will look at how to use the Open Practice Library to form a team, define and align the team’s goals, and deliver on those goals.

Simple open practices to facilitate success for a new team

In this post, we’ll discuss the process of creating a new team and lay out a set of Open Practices for a firm foundation for success. All of the practices described here can also be found in the Open Practice Library.

The Team is Assigned

We’ve heard this story before. The company wants to be more “Agile,” so they’ve selected a group of people to be the new “Scrum” team. They’ve moved their desks to a different area of the office, and have the responsibility of producing a new product or feature. That product or feature may already be defined. Still, most likely, it’s a vague idea handed down by some project manager who heard it from five levels of management, who all were trying to spin an executive’s vision. A manager is assigned that hasn’t worked with any team members previously... Now what?

Team Forming

Social Contracts

Before our personnel can get to work on the “what,” they need to learn how to be a team. First, we need to understand what a team is: a group of people dedicated to working together to achieve common goals. Teams need to define how they will work together and what their desired team culture will be. An open practice we suggest using is the Social Contract.

Social Contracts are a great tool for a team to use to define their culture. Is the team strict on the process? Is light humor part of how the team communicates? The Social Contract answered these questions. Some common items you may see in a Social Contract include:

  • Assume positive intent in communication
  • Assume expertise exists
  • Step outside of the team’s work area when taking calls
  • Close or lock laptop screens when meeting with the team
  • Team-building activity the second Friday evening of each month
  • No team meetings between 10:00 and 14:00

Team members can formalize their Social Contract by signing it and displaying it publicly on a wall for everyone to see. This sets expectations for the team members as well as for colleagues from other teams to ensure mutual understanding and respect.

Definition of Ready

Once a team’s Social Contract is created and agreed upon, it’s time for the team to decide how they will determine that a work item is “Ready to Work.” This is where the Definition of Ready comes into play. Essentially, the Definition of Ready contains the criteria that the team agrees any work item or “Story” must satisfy before being included in a Sprint and picked up by a team member to complete.

Some common items one might see in a Definition of Ready include:

  • Estimable
  • Able to be done in a single sprint
  • Testable
  • Valuable
  • No external dependencies
  • Contains a Definition of Done

Adhering to a Definition of Ready helps to mitigate “scope creep” and also ensures that every team member knows what to expect when taking on a new work item or story.

Definition of Done

The Definition of Done applies to every work item or story a team generates. It ensures there is no question by any team member of when the work is “complete” and, like the Definition of Ready, assists in reducing “scope creep” and setting expectations.

Some common items one might include in a Definition of Done are:

  • Tested
  • Automated
  • Documented
  • “Green” in security scanning tool
  • Reviewed and approved by two team members
  • Contains a demo video

Priority Sliders

Now that the team knows how to work together, how to determine the readiness of work items, and how to decide when a work item is complete, it’s time to solidify the team’s priorities. For this, we use Priority Sliders. This practice makes it easy for the team to visualize decision-making criteria; it assists in answering the question of “How do we decide which item to work on first?”

Some common items found on priority sliders include:

  • Security
  • CI/CD
  • Functionally Complete
  • UI
  • Training
  • Test Completeness

Priorities may change based on business needs. While it’s valuable for a team to understand how they prioritize topic areas as a team, stakeholders participation in these activities ensures that the team and their business stakeholders are aligned on expectations.

Conclusion

Once a team has a Social Contract, Definition of Ready, Definition of Done, and are aligned on how to prioritize their work, they have a firm foundation with which to build upon. In the team’s infancy, usually the first four sprints, it is important that each team member strictly adheres to these core practices so that they become a part of the normal workflow.

In the next article, we’ll look at practices the newly formed team can use to align on goals and translate those to work items.

Open Practice Library series on the Red Hat Blog

virtual collaboration illustration

Learn more about our community-driven collection of exercises for making incremental progress along the product delivery cycle from the full Open Practice Library series: 


About the author

Brian Tomlinson is a Senior Architect with many years of experience contributing to Linux and FLOSS communities as a user, administrator, and contributor. His work at Red Hat includes delivery of Red Hat Open Transformation, Kubernetes Operators, Container Application Development, and Hybrid Cloud Infrastructure for Red Hat Services customers.

Read full bio