Skip to content

Commit a8ad8cd

Browse files
authored
Merge pull request #131 from spier/issues/128-review-pattern-maturity-declaration
Updated pattern maturity of patterns in markdown format
2 parents fb578ad + 96e631d commit a8ad8cd

13 files changed

+184
-148
lines changed

30-day-warranty.md

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,27 +15,27 @@ A team develops a component which is used throughout an organization. This team
1515
# Forces
1616

1717
- There is distrust of contributions due to a past history of cheating: teams
18-
submitted half finished contributions and subsequently filed requests for
18+
submitted half finished contributions and subsequently filed requests for
1919
fixes that make it ready for use in production.
20-
- If code is contributed from outside the team, the team has the natural
20+
- If code is contributed from outside the team, the team has the natural
2121
suspicion that the other team does not know how to write code that would
2222
meet the teams expectations.
23-
- Each team looks first to help its own leaders achieve their own goals. This direction
23+
- Each team looks first to help its own leaders achieve their own goals. This direction
2424
of loyalty can complicate resolution of this problem.
2525
- There is a natural aversion to taking responsibility for code not written
2626
by oneself.
2727
- Contributed needs to be heavily rewritten before being accepted into the
2828
codebase.
2929
- There is the fear of the contributors not being available for support with
3030
fixing bugs after the time on contribution.
31-
- Teams fear contributed code will lead to high(er) maintenance costs but do
31+
- Teams fear contributed code will lead to high(er) maintenance costs but do
3232
not know how to control for that.
33-
- Receiving teams may fear that teaching others how to contribute code will
33+
- Receiving teams may fear that teaching others how to contribute code will
3434
expose technical debt in their system and that visibility may be damaging.
35-
- Receiving teams may not believe that they will get acceptable code no
35+
- Receiving teams may not believe that they will get acceptable code no
3636
matter how much mentoring they provide.
37-
- Either team may not feel confident in measuring risks or certifying that
38-
they are mitigated in a contribution; the system itself is somewhat brittle
37+
- Either team may not feel confident in measuring risks or certifying that
38+
they are mitigated in a contribution; the system itself is somewhat brittle
3939
(may not be ways to fully test and catch all problems).
4040

4141
# Solution
@@ -70,7 +70,9 @@ This was tried and proven successful at PayPal.
7070
- Klaas-Jan Stol
7171
- Georg Grütter
7272

73-
# State
73+
# Status
74+
75+
Proven
7476

7577
Drafted at the 2017 Spring InnerSource Summit; reviewed 18 July 2017.
7678

common-requirements.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,22 @@
11
## Title
22
Common Requirements
33

4-
## Context
5-
Many projects are trying to use common code. There is a shared repository that all the projects access. This pattern applies if there is a Strong Code Owner [pattern to be written] or if there is weak code ownership, or no Benevolent Sponsor [pattern to be written]. Someone (or some project) wrote the code in the first place and contributed it to the repository. The common code is a small percentage of the overall deliverable from any of the projects. Each project has its own delivery schedule, set of deliverables and customers.
6-
74
## Patlet
85
Common code in a shared repository isn't meeting the needs of all the project-teams that want to use it; this is solved through requirements alignment and refactoring.
96

10-
## Problem Statement
7+
## Problem
118
The common code in the shared repository isn't meeting the needs of all the projects that want to use it.
129

10+
## Context
11+
Many projects are trying to use common code. There is a shared repository that all the projects access. This pattern applies if there is a Strong Code Owner [pattern to be written] or if there is weak code ownership, or no Benevolent Sponsor [pattern to be written]. Someone (or some project) wrote the code in the first place and contributed it to the repository. The common code is a small percentage of the overall deliverable from any of the projects. Each project has its own delivery schedule, set of deliverables and customers.
12+
1313
## Forces
14-
The project that made the code available has one set of needs. Its needs are similar to what some of the receiving organization wants, but not quite the same.
14+
The project that made the code available has one set of needs. Its needs are similar to what some of the receiving organization wants, but not quite the same.
1515
Requirements on code should be derivable from real customer needs.
1616

1717
The needs of different customers are generally quite similar; however they might be expressed differently or weighted differently between customers. An example might be how some customers want some result presented in one way while others want it presented in the reverse order---it's simple to do the translation between them, but requires additional coding for one of the cases and the as a result the module that computes the result can't be reused by both customers.
1818

19-
Many customers want the supplier to help them know what they need. The company has many “Systems Engineers” writing requirements for the products. These requirements are supposed to be a distillation of customer needs to guide development of the product.
19+
Many customers want the supplier to help them know what they need. The company has many “Systems Engineers” writing requirements for the products. These requirements are supposed to be a distillation of customer needs to guide development of the product.
2020
Reusing code is an important goal to save the company time and money.
2121

2222
## Solution
@@ -38,8 +38,8 @@ The developers write a story to solve a problem in one way.
3838

3939
The program managers rewrite the story to better express their needs---keeping the essence the same. By the time it returns to developers though they don't recognize it as what they wanted to do in the first place and so balk at implementing it. The solution to this pattern is to have more seats around the planning table so that story modifications are understood across the project not just in the developer or program manager camps.
4040

41+
## Status
42+
Proven
43+
4144
## Author
4245
Robert Hanmer, 22 Aug 2016, 20 Sept 2016
43-
44-
## Status
45-
Shepherded pattern

contracted-contributor.md

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,19 @@
11
## Title
22

3-
_Contracted Contributor_
3+
_Contracted Contributor_
44

55
## Patlet
66
Associates wanting to contribute to InnerSource are discouraged from doing so by their line management. Relief is provided by formal contracts and agreements.
77

8+
## Problem
9+
10+
Without support by middle management, the total number of contributors and, as
11+
a result, the amount of contributions made and value generated by the
12+
InnerSource initiative will likely fall below expectation of top level
13+
management. This will likely be amplified if there is no adequate funding for
14+
and empowerment of [Dedicated Community Leaders](dedicated-community-leader.md).
15+
This runs the risk of top level management abandoning the InnerSource idea.
16+
817
## Context
918

1019
A large corporation has started an InnerSource initiative. Major goals for the
@@ -31,15 +40,6 @@ line managers usually do not have targets outside of their own organisation.
3140
Contributions to InnerSource projects are expected to be made during working
3241
hours, not during free time.
3342

34-
## Problem
35-
36-
Without support by middle management, the total number of contributors and, as
37-
a result, the amount of contributions made and value generated by the
38-
InnerSource initiative will likely fall below expectation of top level
39-
management. This will likely be amplified if there is no adequate funding for
40-
and empowerment of [Dedicated Community Leaders](dedicated-community-leader.md).
41-
This runs the risk of top level management abandoning the InnerSource idea.
42-
4343
## Forces
4444

4545
- Managers are held responsible for the results of their business units.
@@ -49,32 +49,32 @@ This runs the risk of top level management abandoning the InnerSource idea.
4949
managers to reach or exceed their goals.
5050
- Line managers and HR will, by default, judge the performance of their
5151
subordinates against their business units goals, which might not be aligned
52-
with the goals of the InnerSource community.
52+
with the goals of the InnerSource community.
5353
- The less executive air cover a line manager perceives he has, the less likely
5454
is he or she to have his or her staff participate in InnerSource activities
5555
which contribute to another business unit.
5656
- The less transparency and control a line manager has of work done by one of
57-
her subordinates, the less likely is she to allow her to contribute.
57+
her subordinates, the less likely is she to allow her to contribute.
5858
- The less formally work in InnerSource is managed and organised, the less
5959
likely a line manager who is accustomed to formal processes is to sign off on
6060
one of her employees contributing to InnerSource.
6161
- The more time an associate spends on contributions to an InnerSource project
6262
which does not benefit his day-to-day work, the more will the workload for
6363
his teammates in his business unit increase.
6464
- Individual contributors will likely consider participating in InnerSource
65-
as an opportunity to enhance their professional netowrk within the company
66-
and to gain knowledege and experience in the technical area of her
65+
as an opportunity to enhance their professional netowrk within the company
66+
and to gain knowledege and experience in the technical area of her
6767
contributions.
6868

6969
## Solution
7070

7171
Set up a formal contracting between the contributor, their line manager and a
7272
centrally funded and steered InnerSource governance office (ISGO). Have the
7373
ISGO reimburse business units who contracted contributors for the contracted
74-
time.
74+
time.
7575

7676
- The contracting specifies a maximum percentage of the associates work time in
77-
InnerSource.
77+
InnerSource.
7878
- The contracting clearly states that work in the contributor's business unit
7979
takes precendence over work in InnerSource.
8080
- The contracting states that it is not required to work in InnerSource for the
@@ -94,14 +94,14 @@ time.
9494
## Resulting Context
9595

9696
A formal contracting and centrally funded reimbursements convincingly
97-
communicating the organizations support for the InnerSource initiative, thus
97+
communicating the organizations support for the InnerSource initiative, thus
9898
empowering middle management to sign off on it:
9999

100100
- Allocation of corporate funds to business units for reimbursement of
101101
development capacity signals to line managers that InnerSource is deemed
102102
valuable by the organization, that it has executive air cover and that they
103103
are expected to support it, too.
104-
- A formal contracting signals that work in InnerSource is managed
104+
- A formal contracting signals that work in InnerSource is managed
105105
professionally and inspires trust.
106106
- A formal contracting increases transparency and provides a better overview
107107
about the associate's available capacity for his business unit and
@@ -118,11 +118,11 @@ A formal contracting is also beneficial for contributors and communities:
118118

119119
## Known Instances
120120

121-
- _BIOS at Robert Bosch GmbH_.
121+
- _BIOS at Robert Bosch GmbH_.
122122

123123
## Status
124124

125-
_Proven Pattern_
125+
Proven
126126

127127
## Author
128128

dedicated-community-leader.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ _Dedicated Community Manager_
55
alternative:_Dedicated Community Leader_
66

77
## Patlet
8-
Select people with both communications and technical skills to lead the communities to ensure success in starting an InnerSource initiative.
8+
Select people with both communications and technical skills to lead the communities to ensure success in starting an InnerSource initiative.
99

1010
## Problem
1111

@@ -15,7 +15,7 @@ Selecting the wrong persons and/or not providing enough capacity for them risks
1515

1616
## Story
1717

18-
Consider the following story. A company wants to start an InnerSource initiative in order to foster collaboration across organizational boundaries. They have decided to start with an experimental phase with limited scope. Management has selected a suitable pilot topic for the first InnerSource community and expects contributions from many business units across the organization. The company has nominated a new hire to head the community for 50 % of his work time, because he was not yet 100 % planned for. After 6 months, the community has received only a few contributions, most of which are from a single business unit. The company replaces the community leader with someone who has a longer history in the company, this time for only 30 % of his time. After another 6 months, the number of contributions has picked up only marginally. The company is no longer convinced that InnerSource helps to achieve their goal of increased, cross divisional collaboration and abandons InnerSource.
18+
Consider the following story. A company wants to start an InnerSource initiative in order to foster collaboration across organizational boundaries. They have decided to start with an experimental phase with limited scope. Management has selected a suitable pilot topic for the first InnerSource community and expects contributions from many business units across the organization. The company has nominated a new hire to head the community for 50 % of his work time, because he was not yet 100 % planned for. After 6 months, the community has received only a few contributions, most of which are from a single business unit. The company replaces the community leader with someone who has a longer history in the company, this time for only 30 % of his time. After another 6 months, the number of contributions has picked up only marginally. The company is no longer convinced that InnerSource helps to achieve their goal of increased, cross divisional collaboration and abandons InnerSource.
1919

2020
## Context
2121

@@ -35,12 +35,12 @@ Communication takes up a significant percentage of a community managers daily wo
3535

3636
If a community can not grow fast enough and pick up enough speed, chances are they won't be able to convincingly demonstrate the potential of InnerSource.
3737

38-
If the company selects an experienced project or line manager steeped in traditional management methods to be the community leader, he or she is likely to focus on traditional management topics such as resource allocation, providing structure and reporting channels rather than leading by example through meritocratic principles. This will undermine the credibility of the InnerSource initiative in the eyes of developers.
38+
If the company selects an experienced project or line manager steeped in traditional management methods to be the community leader, he or she is likely to focus on traditional management topics such as resource allocation, providing structure and reporting channels rather than leading by example through meritocratic principles. This will undermine the credibility of the InnerSource initiative in the eyes of developers.
3939

4040
## Solution
4141

4242
Select a community leader who:
43-
- is experienced in the Open Source working model or similar community based working models,
43+
- is experienced in the Open Source working model or similar community based working models,
4444
- has the required soft-skills to act as a natural leader,
4545
- leads by example and thus justifies his position in the community meritocracy,
4646
- is an excellent networker,
@@ -52,7 +52,7 @@ Empower the community leader to dedicate 100 % of his time to community work inc
5252

5353
## Resulting Context
5454

55-
A community leader with the properties described above will lend a face and embody the companies commitment to InnerSource. It will make it more likely that other associates in his network will follow his lead and contribute to InnerSource. Over time, he or she will be able to build up a stable core team of developers and hence increase the chances of success for the InnerSource project. By convincingly a large enough audience within his company of the potential of InnerSource, he or she will make an important contribution to changing the company culture towards a community culture.
55+
A community leader with the properties described above will lend a face and embody the companies commitment to InnerSource. It will make it more likely that other associates in his network will follow his lead and contribute to InnerSource. Over time, he or she will be able to build up a stable core team of developers and hence increase the chances of success for the InnerSource project. By convincingly a large enough audience within his company of the potential of InnerSource, he or she will make an important contribution to changing the company culture towards a community culture.
5656

5757
Having excellent and dedicated community leaders is a precondition for the success of InnerSource. It is, however, not a silver bullet. There are many challenges of InnerSource which are above and beyond what a community leader can tackle, such as budgetary, legal, fiscal or other organizational challenges.
5858

@@ -62,7 +62,7 @@ _BIOS at Robert Bosch GmbH_. Note that InnerSource at Bosch was, for the majorit
6262

6363
## Status
6464

65-
_Reviewed Pattern_
65+
Proven
6666

6767
## Authors
6868

0 commit comments

Comments
 (0)