The investment for this certified course is Euro 2495,- ex VAT. The prices include training materials and a copy of the book Creating Agile Organizations.
The investment for this certified course is Euro 2495,- ex VAT. The prices include training materials and a copy of the book Creating Agile Organizations.
The sixth blog, in a blog series about the upcoming book: Creating Agile Organizations – A Systemic Approach, by Cesario Ramos & Ilia Pavlichenko.
A successful team works together towards serving the business goals. The team skills required to do that are always changing. For example, a top technology at the moment will likely not be so in a couple of years. New technologies emerge, and your product groups need to acquire a deep understanding of them to stay competitive. To adapt to this changing world, people who frequently learn a deep understanding of new areas are the standard rather than the exception.
Multi-Functional Learning Impacts Agility
When an Agile team preserves the goal of maximizing utilization of single skill specialties, it has multiple implicit backlogs, not one. Multiple implicit backlogs in a team with interdependent tasks, which is mostly the case in product development, leads to a serialization of the team’s work, which increases the end-to-end time to get it done. The typical phrase you can hear is, “I will do this task because I can do this most efficiently.” A focus on individual skills also forces the business to change the order of the product backlog to ensure there are tasks for each individual’s single specialty. Thus, the team doesn’t work on the most critical features from a customer perspective and sub-optimize value delivery.
Another strategy to optimize individual performance would be to introduce more team backlogs for the same product, then teams tend to focus on a part of the whole product and become less cross-functional as Figure 1 illustrates. That inevitably leads to artificial dependencies and even longer lead times.
Figure 1Feature dependencies between teams
Teams working on their own team backlog have a narrow view of the whole product and do not realize when they are working on low value work from a customer perspective.
Working from a single product backlog creates an inevitable knowledge gap in single-skilled team members. The larger the knowledge gap, the more need for the developers to work together and help others in the team acquire additional skills. Over time, team members develop secondary or even tertiary skills and become multi-skilled specialists.
We often hear the argument: “We understand the idea behind that. But still, a deep specialist will be more effective and knowledgeable than a cross-trained one”. And we agree with the argument. But Agile organizations do not train people to create efficient resources. Instead, they form teams capable of embracing change and minimizing bottlenecks.
This ability of autonomous teams to align resources to bottlenecks is extremely important because it minimizes queues in the development process. Since these bottlenecks can shift rapidly and unpredictably during a program, the flexibility of team members to work outside of speciality is a critical tool for dealing with such bottlenecks (Donald G. Reinertsen, Managing the Design Factory)
When the system is heavily loaded, even a small change in capacity can lead to a significant difference in cycle time.
What can you do to help the organization?
- Prefer a cross-functional line manager that focuses on the whole team
Typical organizational design encourages people to grow in narrow, single-skill career paths, optimizing the performance of individuals, not necessarily the performance of the team they work in. For instance, in one setting the chapter leads acted as line managers towards their people and were responsible for appraisals and people development. There were chapter leads for technologies like Java or UX, and their goal was to help people develop in that specific skill.
So, instead of having single-skill line managers focusing on individual performances, prefer a cross-functional line manager that focuses on the whole team.
Such a design should lead to:
- Instead of having single-skill line managers focusing on individual performances, prefer a cross-functional line manager who focuses on the whole team.
- Cross-functional line managers—without any authority to give work to the teams—should focus on improving the organizational design and team effectiveness. They also help individuals to develop in service of overall team performance.
- Expert leads (otherwise regular team members) who facilitate the development of employees. These individuals have no HR responsibility or authority for giving work to the teams.
- Create a System of Human Operations to Support Multi-skilled Specialists
Ideally, you would have people in your teams that are experts in multiple skills, but unfortunately, these people are hard to find. However, what you can do is create the conditions that encourage people to develop into multi-skilled specialists over time.
Therefore, create a system of human operations that:
- Values employees by a combination of personal and team accomplishments.
- Values people to become multi-skilled specialists.
- Values a balance between deep specialists and generalists in the teams.
An organization can do that by creating a multi-skilled growth system that allows people to create their own job paths. Figure 2 shows a general value system.
Figure 2Multi skilled value system
The exact skills needed within a team change over time, so the specific skills are better not fixed. Also, the exact balance between deep specialists and generalists depends upon the team context and the required skills to develop the product. Therefore, the human operations systems let the teams figure out:
- What is the best balance?
- Which team members develop what skills?
The teams have the responsibility to ensure that they grow into effective Agile teams, and the management is there to support them in doing so.
Working from a single product backlog creates an inevitable knowledge gap in single-skilled team members. Over time, team members develop secondary or even tertiary skills and become multi-skilled specialists. On an organizational level introduce cross-functional managers that focus on the whole team development. Also you need to create a system of human operations that supports multi-skilled specialists.
In our next two blog posts, we give an overview of:
- Guiding the teams in multi-skill development
- Transitioning to the Product Owner at scale
The fifth blog, in a blog series about the upcoming book: Creating Agile Organizations – A Systemic Approach, by Cesario Ramos & Ilia Pavlichenko.
Blog post How You Can Define Your Product Group described how to create an initial definition of the product by examining organizational functions and components and considering their dependency types. In this blog, we build on that discussion and consider how to launch the product group into its first iteration successfully.
Typical adoption steps
Agile adoption has so many variables, parallel activities, paths, and feedback loops that it is impossible to create a detailed plan upfront. This does not mean that planning is a futile task; instead, it is simply an activity that needs to be repeated. So plan to replan! Figure 1 illustrates a typical sequence of steps we take to launch the adoption.
Figure 1: Typical adoption steps
It can take a few weeks to a few months to get from the first meeting with management until the first product group launch. The reason is that the people involved need to participate in the preparation while doing their usual jobs. If you can halt the people’s work, you could probably finish the whole preparation within two weeks.
Why not longer than a few months? From experience, we have learned that overly long preparation drains too much energy, resulting in people losing enthusiasm and their impulse for a change. Also, all the time spent in preparation meetings is time that the group is not learning anything in practice. After the product group launch, the focus turns to supporting the teams and product ownership in the new way of working.
Product Group Launch Activities
Once you have identified the teams that make up your product group, many activities might be required to launch your product group in your specific context. Below you can find a minimal list of actions and workshops that might be helpful (in the book, we provide a more extensive list). Use the ones that fit your particular context.
- Initial Product Backlog Refinement: The initial set of features to start the first Sprints.
- Define the Definition of Done (DoD): Everything a team has to do to a feature so that the product is ready for delivery to end-users with the new feature added to it.
- Feature Team Adoption Map (FTAM): Align on the feature team adoption first step and potential next steps toward the perfect cross-functional team.
- Self-Designing Team workshop: Facilitate a Self-Designing Team workshop where people volunteer to be part of a team.
- Team lift-off: Facilitate lift-off workshops to lay a solid foundation for team identity and success.
- Identify coordination mechanisms: With the elimination of single-function teams, which coordination mechanisms are required?
From our perspective, the following items make up the Minimum Viable Launch (MVL):
- Create the product DoD
- FTAM workshop
- Self-Designing Team workshop
- Team lift-off
You might consider running other activities after the launch—for instance, during regular Sprint Retrospectives or at the first Sprint Planning; This is perfectly okay. For a small product group with three to five teams, you can even exclude the FTAM step if teams can work across the whole product right from the start.
In the book, we provide examples and facilitation guides for each of these workshops. In this blog, we share an excerpt from the Create the product DoD workshop
Define the Definition of Done
Scrum teams use the DoD to create a shared understanding of which work was completed in each Sprint. As Mr. Ken Schwaber once taught us: Done means that there is nothing left to be done. Elements of the DoD should be measurable and binary (yes/no). You can’t be 80% done; Scrum treats such partial completion as 0%. The Scrum Guide explains:
The Definition of Done is a formal description of the state of the Increment when it meets the quality measures required for the product. (The Scrum Guide. https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-US.pdf.)
The DoD includes measurable properties of the Increment. It is assured through activities, and execution is up to the developers. When your whole organization is just one cross-functional team, then there are no other options but for the team to perform all those activities themselves.
Scrum Teams are cross-functional, meaning the members have all the skills necessary to create value each Sprint. (The Scrum Guide. https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-US.pdf.)
Problems usually start when teams lack cross-functionality, which happens when organizations create teams around internal business processes, architectural components, and functions to achieve team efficiency. For simplicity, we call such teams “component teams.”
Let’s have a look at the situation when multiple component teams are working on the same product. Each team performs only a subset—their product-part DoD—of the broader product DoD. Figure 2 shows an example.
Figure 2: Product Definition of Done.
A component team that is organized around an internal business process or an architectural component considers “done” to have been reached when “their” component is tested—but that is not done at the product level! What remains are all the activities in the “undone” subset that still need to be performed.
The smaller the set of DoD activities that a component team performs, the more issues that will appear at the product level—for example, delays, handoffs between teams, and opaque measures of progress. The more component teams that are working on your product, the more partially done work that is created, and the higher the risk of running into unpleasant surprises later on becomes. To avoid this fate, when you develop one product with many teams, there should be a single, integrated increment by the end of each Sprint and a single, shared DoD.
Each component team needs to master all of the activities to produce a usable increment every iteration. This is not a trivial task and can take many years, if it is even at all possible in your specific context.
A Definition of Done Workshop
For this workshop, you need to have your product definition settled. How to define your product is described in Chapter 8, “Preparing the Product Group.”
Invite the teams, people in coordination roles, product management, and other specialists that your product definition says are required. Consider adding sales, marketing, and general management participants as needed. The canvas illustrated in Figure 3 proposes a couple of sections for the teams to explore DoD activities. Adjust the sections as necessary to fit your specific context.
Figure 3: Definition of Done (DoD) canvas.
Structuring the Invitation
The goal is to define the activities that need to be completed so that there is no known work left to be done—the product DoD. We use the following questions:
- What do we need to do so that the product is in the hands of the stakeholders according to company standards, policy, and regulations?
- How shall we measure and make sure that each item in the DoD is done?
The second question focuses the teams on the measures; otherwise, you might end up with a list of aspirations that never come to life.
Example for Running the Workshop
Step 1. Each team/table group plots their current DoD on their canvas using sticky notes. Generate the DoD list of activities and corresponding measures. First, work in pairs for 5–10 minutes; then consolidate the results onto the group canvas.
Step 2. Compare across the groups, using a diverge–merge technique, UX Fishbowl, or the Shift and Share liberating structure to enrich each group’s canvas. Ask the teams to update their canvas based on what was learned.
Step 3. Assign each section of the canvas (e.g., the Design & Development section) to a separate group and ask them to consolidate the results of all groups for that section onto a central canvas. Remove duplicates and combine similar items.
Step 4. Ask all the groups to take a few minutes to review the result, determine if it still acts as their DoD, and recommend how to improve, reduce or clarify it.
Step 5. Capture the result as the initial product DoD that everybody can live with.
Step 6. Close with a short retrospective and answer any open questions.
Once you have agreed on the product DoD, the next step is to determine how much of the DoD each team can pick up and how they could broaden their component scope.
In our next two blog posts, we give an overview of:
- Guiding the organization in multi-skill development
- Transitioning to Product Owner at scale
Fourth blog, in a blog series about the upcoming book: Creating Agile Organizations – A Systemic Approach, by Cesario Ramos & Ilia Pavlichenko.
Resisting change during adoption is a normal human reaction. It is not a sign that a team or a particular department lacks courage or abilities. Also, it is not necessarily a sign that a particular framework or method is bad. Resisting change is not only inevitable; it is necessary for a change to become successful. A Scrum Master needs to be well prepared to work with resistance and have knowledge and skills in change management. In this article, we share a few critical guidelines that we use during change initiatives of any size.
Guideline: Co-create the Change
For many years management used a top-down and plan-based approach for change. They decided on a change and handed it to a change team. The slightly better way was developing a plan, selling it to the employees. Both approaches did not work very well. When organizational change strategy and execution are run by different people, encountering strong resistance during execution is very likely. To avoid that pitfall, we prefer a different approach. We invite everyone to co-create the change. Co-creation increases the chances of success for any change initiative. When people actively participate from the start and their feedback is used to improve the solution, resistance is much lower and adoption higher. Thus, usually change is best to be introduced both bottom-up and top down. Peter Senge, author of The Fifth Discipline: The art and practice of the learning organization seems to agree:
“During the last few years, a new understanding of the process of organizational change has emerged. It is not top-down or bottom-up, but participative at all levels—aligned through a common understanding of a system” (Peter Senge)
There are three forms of co-creation that we often use: facilitated sessions such as open-space, surveys, and instant feedback techniques. For example, in one company the employees collaboratively defined the optimizing goals, learning goals, and metrics for an Agile adoption. It took us several weeks to conduct a series of the facilitated sessions, but the result was profound. People did it themselves and from that moment felt more responsible for the change.
Guideline: Voluntary Participation
Mandating reduces participation, imposing Agile makes no allowance for what people want or what they think and feel. People may “check out” and disengage. That results in failed change initiatives, poor morale, and employee turnover.
Is there a way to avoid the resistance and achieve enthusiasm instead of demotivation? The fundamental solution is voluntary participation. We find it helpful to think of a change as a game. All games share the four defining traits: a goal, rules, a feedback system, and voluntary participation.
“Voluntary participation requires that everyone who is playing the game knowingly and willingly accepts the goal, the rules, and the feedback. Knowingness establishes common ground for multiple people to play together. And the freedom to enter or leave a game at will ensures that intentionally stressful and challenging work is experienced as a safe and pleasurable activity” (McGonigal, Jane. Reality Is Broken)
Therefore, the volunteer is the person who accepts the goal of the change and its rules and is ready to use the internal feedback mechanism to improve. In case of Scrum, voluntary participation would mean:
- Accepting the goal of “delivering highest value each Sprint” and its implications, for example, working outside your main specialty.
- Conforming to the rules of the game described in the Scrum Guide.
- Actively participating in the Scrum events for inspection and adaptation.
- Readiness to conform to the Scrum values: openness, courage, respect, focus and commitment.
Figure 1: What it means to be a volunteer.
What happens to people who do not accept the change? Do they have to leave the company? One of the pillars of Lean is Respect for People, and the first value of the Agile Manifesto is Individuals and interactions over processes and tools. We respect their choice. We kindly ask non-volunteers to stay outside the product group as they don’t accept the rules of the game and that would create a conflict within the system.
“You do not have to spend a lot of time and effort on those who strongly resist change. You only have to help and protect those who want to change, so that they are able to succeed. This does not mean that you can afford to ignore the existence of committed and influential opponents of change. You may have to find ways to prevent these individuals from sabotaging the process. However, once you have figured out who cannot be converted, you should not waste more time trying to persuade them” (David Hutton, Change Agents’ Handbook)
After a while, some people that did not volunteer initially might see that this Agile way of working works and agree to voluntarily join. From one point of view, this is perfectly okay; however, you could discover that teams could be wary. And then the Scrum Master might have a repatriation issue to nurture. On the other hand, some people are just early adopters, while others are laggers, and both types of people are useful in your organization. You can give them a chance.
Guideline: Find the Right Balance of Radical and Incremental Change
There is a myth that one needs to choose either radical or a revolutionary change. This is a typical false dichotomy which is the simplistic, binary approach. In nature, change occurs both incrementally AND radically. This is true for all social systems: individuals, teams, and organizations.
“It is interesting to note that Darwin’s theory of evolution has been characterized for many years as a slow, incremental process of change, but more recently, scholars have challenged this view, stating that changes in living organisms actually occur in spurts, or leaps, as perturbations” (Burke, W. Warner. Organization Change: Theory and Practice).
Punctuated equilibrium theory changes the way biologists and scientists think about evolution now. Punctuated equilibrium is a stable state for a period of time where small incremental adjustments are made to adjust for environmental changes without significantly affecting the status. Then it is followed by a short period of a radical change where the deep underlying structures change. That enables the system to evolve to a new status quo.
Figure 2: Evolution over time
Incremental change is inevitable. People need time to absorb change and make the new processes and rules deeply ingrained and habitual. During flat periods most of the work happens including preparation for radical change. The problem with taking only incremental steps is that organizations can land at a local optimum. That is why organizations need points where radical change happens. Radical changes or Kaikaku are usually introduced by senior management. A good example of a radical change is moving from component to feature teams.
Guideline: Help People to Cross the Edge
We have learned a very useful model called the EDGE model. We utilize it when working with teams that are about to go through a change. Please look at Figure 3.
Figure 3:The edge theory
The model is easy to understand. Before any change, people are located in their primary state. They have some familiar routines, acquired skills, and identity. This is the status quo. The secondary state is the state after the change where you invite people to go, probably, an unfamiliar and uncomfortable place with lots of unknowns. In order to reach the secondary state people need to pass the edge. Let us provide you with an example. Pretend that you are a Scrum Master working with a product organization with typical Copy Paste Scrum adoption where teams are organized around components and functions. Management has decided to re-organize and adopt feature teams to optimize the system for learning and adaptability. The probable primary state of most developers might be:
- The feeling of safety (“Everything runs quite stable here, no need for change”)
- Feelings of competence (“I am doing a good job working within my component and technology”)
- Frustration (“The development and technical debt drives me crazy” )
The secondary state might be :
- Fear (“No one will take care of the code quality, that will inevitably cause a failure”)
- Feelings of incompetence (“I will have to learn new technologies and components”)
- Expectation (“Finally we will be able to ship something fast and become more competitive”)
The primary state is not better than the secondary state. It is just information about where people are in relation to the point of the edge.
Now a few strategies on how you can support teams in crossing the edge.
It is an invitation to visit the secondary state for a short time and then return back safely. Thus, you do not force anyone to commit to change, just kindly ask to investigate the secondary in non-binding travel as a tourist. For instance, once we helped to organize a trip to one of our customers that adopted many modern engineering practices[md]teams were continuously working in pairs, using mob-programming, and test-driven development (TDD) practices. High-quality code was a norm there. During the guest trip, team representatives observed and directly communicated with feature teams that integrated code continuously and were able to ship a quality product to the market.
Create Edge Awareness
Another strategy is creating awareness regarding where people are relative to the edge. By doing this, we make people responsible for acting according to what they think is best for them now. We believe people are intelligent and capable of making informed decisions. The proven method of creating awareness is using constellations. For instance, during the kick-off that lasted for five consecutive days, we introduced constellations that revealed where teams were related to the edge. Then we randomly created small groups, and asked people to answer two questions:
- Where am I now in relation to the edge?
- What do I feel?
Honor the Past
The past may be imperfect, but people are standing on its foundation. There were successes in the past. It is important to honor and celebrate where an organization has been because it helps establish a transition to the future. And, by doing this, we recognize the contribution to the change of those who sacrifice to make it possible. This can be the single most important factor in making a successful change.
“Paradoxically, honoring the past helps people let go of it” (Esther Derby, 7 Rules for Positive, Productive Change)
We often organize a special workshop to celebrate the successes and honor the past. We ask attendees to bring as many photos from the past as they can to the workshop, Then we ask them to write down all significant events they can recall and appreciate the past using structured discussions.
In our next two blog posts we give an overview of:
- How to Design Product Group Design to Eliminate Dependencies
- And how to launch your product group.
The third blog, in a blog series about the upcoming book: Creating Agile Organizations – A Systemic Approach, by Cesario Ramos & Ilia Pavlichenko.
What is a Product?
A commonly used definition of a product is “something that is made to be sold.”
“A product is anything that can be offered to a market that might satisfy a want or need”—McGreal, Don; Jocham, Ralph. The Professional Product Owner
The product provides a way of making a profit—or another value, for instance, social impact in the case of not-for-profit organizations. We use this definition and augment that with the following product properties:
- A product has users who are people.
- A product provides features to those users that address their needs and problems.
- A product has a business model; revenue stream, independent profit & loss (P&L), or return on investment (ROI).
- A product is developed and sustained by a system of people, components, and processes.
Most customers we work with organize teams around smaller areas of functionality with no straightforward end-user, customer or value proposition. In these cases, you find that the teams are working on just a part of the real product. The part they are working on is often a component or a specific activity in the business process; they use a narrow product definition. When many teams work on a product-part (that they call a ‘product’) then that group likely experiences unnecessarily reduced agility and long end-user feedback loops (We described this in the first and second blog).
Broad v.s. Narrow Product Definitions
A broad product definition usually implies that the product spans lots of components and activities and provides solutions to the needs and problems of end-users. We prefer a broad product definition because that gives adaptability and short feedback loops. Why? There are several reasons:
- Wide product definition encourages all teams to focus on one Product Backlog that consists of end-user product increments Therefore, teams get a whole product focus and can learn about many product areas.
- Wide product definition encourages teams to increase work across product parts which reduces inter-team dependencies and thus shortens the feedback loop.
In Figure 1.1 the CLD explains how the broadness of a product may affect the speed of delivery.
Figure 1.1Broad product definition effect on end-user feedback loop. (copied from Creating Agile Organizations – A Systemic Approach by Cesario Ramos & Ilia Pavlichenko)
Some product examples at our customers:
- Small Medium Enterprises Banking
- Media platform
- Energy Trading System
Examples of product-parts:
- Internal CRM system
- Credit conveyor process
- Opening accounts process
- Website of a bank
Product Definition from Different Perspectives
The product definition that marketing uses might not be the same as the product definition used by the development group, which is perfectly okay. From a development perspective, the product definition is for optimizing adaptability to deliver value. From a marketing perspective, it might be beneficial to have a different product definition to address marketing goals like product identity and connecting with certain types of customers. For example, one of our banking customers has different kinds of loans with associated benefits and plans. These loans are presented as different products by marketing, but internally they are defined as a single broad product by the development group because if you look internally, the majority of functionality is similar for both products and they share the same architectural components and systems.
A Systems Approach To Your Product Definition.
A systems approach considers the whole first and then improves the parts only if it also improves the whole. The whole, in our case, is the product, and the parts are the teams, users and systems. Furthermore, Russel Ackoff points out that the performance of a system is not the sum of its parts, but the product of their interactions. Therefore, we first define the whole product with all its parts, and then we redesign to improve their interactions.
How To Define the Product
The product definition determines what organizational elements (people, components, processes, and systems) will be part of the first step in your transformation. Your product definition determines:
- Who will be the Product Owner.
- What work items are on the Product Backlog.
- Who are the users of the product.
- And also, which organizational parts like teams and departments you need to develop and run the product.
You can define your product using the following two steps:
Step 1. Identify the required organization elements to develop and sustain the product.
Step 2. Clarify the revenue streams.
Let us give a brief overview of these two steps
Step 1: Identify the Required Organizational Elements
You start with the elements—your component teams—you currently call products, activities, people, and processes in your group. You then study how the work works for your group to understand the types of dependencies that exist to develop, maintain, and sustain your product.
The typical steps to achieve this are as follows:
- Identify typical external end-users of your group.
- Identify the needs these end-users want to be addressed or tasks they need to complete.
- Identify features for each of the users that they consume to address their needs or perform their jobs.
- Identify the boundaries through which the users consume the features to satisfy their needs/problems etc. (for example, a Browser, App, API, Connector or Helpdesk)
- Next, you want to identify the organizational elements that are needed to produce the feature and satisfy the customer. You do that by studying how each feature flows through your organization into the hands of the customer. You start at the boundaries and work through the components, systems, people, and processes until completion.
In our book, we show a few examples of facilitating product definition workshops.
Figure 1.2Organizational elements to produce the outcomes (copied from Creating Agile Organizations – A Systemic Approach by Cesario Ramos & Ilia Pavlichenko)
Step 2: Clarify the Revenue Stream
A broad product definition should include revenue streams. Without it, the teams in the group will likely be disconnected from market concerns where the real value lies. Further, it probably divides decision making among various parties. Typically, one party—the business— is responsible for financials and requirements, while the other party—research & development— is accountable for delivering the product requirements on time and within the given budget. Each party will locally optimize for local concerns instead of adaptability
In this step we ask the question: Do the identified organizational elements generate revenue for the organization? Or are there missing parts to do so? The way we prefer is to find answers to the following questions:
- How do the elements together generate organization impact? For example, is the product definition able to have usage fees? Asset sales? Subscription fees? Licensing? If not, what would need to be added to the product definition?
- What business KPIs can you assign to the product definition? For example, can you assign it an increase in gross income? An increase in new customers? Customer satisfaction?
If you cannot give a meaningful answer to all of the questions above, then consider expanding your product definition.
Product Definition Completed?
At this point, you identified a set of organizational elements that together produce value for end-users and have a revenue stream.
The result typically includes many components, skills, and activities, and it can involve tens to hundreds of people in total. With such a large group, you may want to ask, “How can I create effective cross-functional teams that include all these capabilities?” In the case of more than around ten teams, we recommend organizing the teams among Value Areas that could be dynamic in size depending on how the Product Owner oversees the market changes. In the book A Scrum Book we defined a value area as: “A Value Area is a valuable product part that addresses the needs of a customer segment, but which has no useful value or identity apart from its inclusion in the product”.
In our next two blog posts we give an overview of:
- Critical change management guidelines.
- And how to launch your product group.
Second blog, in a blog series about the upcoming book: Creating Agile Organizations – A Systemic Approach, by Cesario Ramos & Ilia Pavlichenko.
Many problems at the workplace are not the fault of the individual managers or teams. They are often the result of working in an organizational design(OD) that impedes rather than supports Agility. The OD determines, to a large extent, how people cooperate, the prevailing mental models, and how work gets done. To change all of this takes time and requires people to unlearn old lessons and relearn new ones that support Agility.
An organization redesign includes re-thinking:
- Structure: Which organizational units such as departments, groups and teams are required? How are work and responsibility divided among those units?
- Processes and Integration: How do the units and roles relate to each other and collaborate?
- People: What team and employee skills and capabilities are needed?
Working in a new design helps the people learn what is needed to build the new capabilities.
Some examples of how design decisions can facilitate the development of capabilities are:
- For fast adaptation to customer insights, consider creating a short feedback delivery process that allows fast learning about the customer. Allow decision making by people who work closely with the customers.
- For teams to take ownership of delivering customer value, consider designing autonomous teams that include all the necessary skills to finish their work independently of other groups.
- For efficient product development flow, consider designing a reward system and career path that values people for developing multiple skills. Multi-skilled specialists reduce the bottlenecks in the delivery process.
Figure 1.1 shows that executing a business strategy requires specific capabilities, and these capabilities can be developed working in the appropriate OD.
Figure 1.1 From business strategy to organization design. ( Figure copied from Creating Agile Organizations – A Systemic Approach by Cesario Ramos & Ilia Pavlichenko)
Contain Reciprocal Dependencies with the Product Group
James D. Thompson wrote that we should design the work by the intensity of interdependence and then introduce specific coordination techniques for each.
There are three types of interdependence:
Pooled. Units are doing the same task in parallel or have a shared resource. Sales people often have pooled interdependence if they sell individually and combine their monthly sales numbers to get the overall result.
Sequential. Units rely on each other in predictable ways for the flow of information, work and decisions. In sequential interdependence, each unit completes its task before another in the sequence completes theirs. Classic example is an assembly line. A product must be fully assembled before it is wrapped, and wrapped before it is shipped.
Reciprocal. Units are sequentially interdependent. In addition, they work back and forth and must adjust to each others’ actions as the situation changes unpredictably.
The reciprocal interdependence resembles the dependencies between software development teams that work on a single product. These teams either have a mutual functional dependency—when a feature is divided into independent technical parts to be developed by different teams—or a mutual technical dependency when each team picks up a complete feature but works in the same software components and creates technical dependencies.
For reciprocal interdependence, it is recommended to manage the dependencies through constant information sharing and mutual adjustments. Figure 1.2 shows these three types of interdpendencies.
Figure 1.2 Three types of interdependencies.
A study about the implications of these types of dependencies was published in the paper Quantifying coordination work as a function of the task uncertainty and interdependence by Ronald E. Giachetti et al. They concluded—as shown in the figure above— that
First, “…the experiments find no significant difference between pooled and sequential interdependence and the resulting coordination load…“.
And second, “…coordination load increases significantly when interdependence changes from sequential to reciprocal…“.
Working with reciprocal interdependencies takes twice as much time to coordinate compared to work with the other types of dependencies.
Figure 1.3 Coordination load as a function of interdependence and analysability (Adapted from Ronald E. Giachetti et al)
The key idea is to first design the organization to minimize reciprocal interdependencies between units that produce value. When you group the necessary functions and skills to produce value, coordination becomes easier, flow increases, and rework decreases. It also facilitates team accountability for a complete work item instead of just a part. The teams can now become autonomous and can manage their work. The organization can stop giving work packages to a team to execute and instead provide customer problems for a team to solve.
Redesign into a Product Group
In the book, The Toyota Way11, pp 304, Jeffrey Liker, Professor of Industrial and Operations Engineering at the University of Michigan, recommends organizing around product families. Each product family has a senior manager responsible for the product family and controls all the resources needed, including maintenance, engineering, and quality. Such can go fast because it contains all work dependencies, but it can also quickly relocate resources to areas of highest demand. An Agile organization benefits from the same capabilities and might use a product group that is defined by:
- Its purpose or function within the organization
- The organization elements required to achieve its purpose or function such as cross-functional teams, shared functions, systems, roles, accountabilities and responsibilities
- The senior manager that leads the product group. It is a person with a deep understanding of the product and process.
- A market-focus and/or profit & loss responsibility
- Product decision-making autonomy
Avoid Designing the Product Group from the Inside Out.
An inside-out design is based on an internal business process or the system architecture.
Let us provide two examples of design from the inside-out:
- One of our customers develops a trading system, and the process of registration, trading, and billing consist of 23 process steps. How did they design their structure? They had 17 teams, and each team worked on one or two business process steps, even though a feature largely required multiple business process steps to deliver value to a customer.
- Another customer developed material analysis systems. The system architecture consisted of components like Motion Control, Data Extraction, Data Analysis, and many more. How did they structure themselves? They had one or more teams per architectural component, although 80% of customer features required changes in most components together.
Such designs make it hard to adapt to customer value; instead, they concentrate locally, optimizing the individual teams’ performance.
Prefer Designing the Product Group from the Outside In
To design the product group from the outside-in:
- Start with the customer problems that need to be solved.
- Study how solving those problems for your customer works in your organization.
- Determine which organization elements such as units, processes, and people are needed to create customer value.
- Combine them into a product group.
Our next blog discusses how you can define your product group.
The paper ‘Why Isn’t Your Current Approach to Scaling Agile Working?” written by Cesario Ramos co-authors with Kurt Bittner was recently published on InfoQ.
Having trouble scaling your agility? You’re not alone; even organizations who have agile success in isolated pockets have trouble scaling that agility to the broader organization. The challenges express themselves in familiar patterns. Do any of these look familiar?
- Your copy of another organization’s model doesn’t work
- Your organization’s design conflicts with the goal of agility
- You are trying to “copy and paste” what works for one team to all teams
- You are independently optimizing different parts of the organization
- You are under-invested in agile engineering practices
In this paper, we discuss common systemic challenges for scaling agility. We close with a comparison between the approach to these challenges by popular scaling frameworks.
You can read the complete paper at InfoQ here.
Cesario works on large scale Agile transformations worldwide and is the author of the books Emergent and A Scrum Book. He is also a Certified LeSS Trainer, a Professional Scrum Trainer™ and a certified coach.