Skip to content

Commit 8f1ef4c

Browse files
authored
Merge branch 'main' into governance-based-project-setup
2 parents bfca5f6 + bddf323 commit 8f1ef4c

File tree

3 files changed

+154
-1
lines changed

3 files changed

+154
-1
lines changed

README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ Our mission
7272
* [Assisted Compliance](patterns/1-initial/assisted_compliance.md) - *Helping repo owners be compliant by writing their CONTRIBUTING.md for them as a pull request.*
7373
* [Open Source Trumps InnerSource](patterns/1-initial/open-source-trumps-innersource.md) - *Developers disregard InnerSource projects because they consider open source projects to be superior. Introducing a required evaluation of InnerSource projects before choosing an open source project increases the likelihood of the InnerSource projects to be adopted.*
7474
* [Transparent Governance Levels](patterns/1-initial/governance-levels.md) - *There are projects in multiple stages of InnerSource adoption. Contributors get confused when working with projects that are at different stages.*
75+
* [Governance Level Guided Project Setup](/patterns/1-initial/governance-based-project-setup.md) - *Before publishing their first InnerSource project, a team wants to choose an appropriate Governance Level but is unsure about the impact of the different levels on their daily doing. A dedicated list of resources (best practices, recommended patterns, target maturity levels) provides specific guidance to the team and helps them to make an educated decision.*
7576
* [Contained InnerSource](patterns/1-initial/contained-innersource.md) - *Apply InnerSource methods to facilitate collaboration in a cross-divisional project but don't invest in soliciting contributions from outside of that project.*
7677
* [Good First Project](patterns/1-initial/good-first-project.md) - *An InnerSource program has been launched at an organization, and to get off to a successful start it requires some good first projects that lend themselves to InnerSource-style development. Assessing the InnerSource-readiness (fitness) of the candidate projects can help in selecting projects that have the potential to help demonstrate the power of InnerSource.*
7778
* [InnerSource Guidance Group](patterns/1-initial/innersource-guidance-group.md) - *A highly divergent set of development standards in different teams can slow down collaboration between these teams. A InnerSource Guidance Group that establishes broad governance and behavioral guidelines can help to reduce these frictions.*
@@ -87,7 +88,8 @@ Our mission
8788
* [Code of Conduct](/patterns/1-initial/code-of-conduct.md) - *Communications and interactions between collaborators are rude, not inclusive or offensive, harming and increasing the discussions without any value added. A Code of Conduct provides guidelines for establishing rules and expectations regarding behavior and interactions within the community to build stronger levels of collaboration.*
8889
* [Trusted Committer and Contributor Retrospectives](/patterns/1-initial/cross-team-retrospectives.md) - *A host team working with contributors outside of their own line of management constantly runs into misunderstandings. As a result collaboration becomes brittle and frustrating. Setting aside time for regular retrospectives for the InnerSource team consisting of trusted committers and contributors can help make communication smooth.*
8990
* [InnerSource Hackathon](/patterns/1-initial/innersource-hackathon.md) - *In a company, initially only InnerSource enthusiasts are interested and practicing InnerSource during the early stages of InnerSource adoption; not all engineering teams are willing or have enough time and resources to adopt InnerSource. In this scenario, it is good to provide a safe space to try and adopt InnerSource through an InnerSource Hackathon event within the company.*
90-
* [Governance Level Guided Project Setup](/patterns/1-initial/governance-based-project-setup.md) - *Before publishing their first InnerSource project, a team wants to choose an appropriate Governance Level but is unsure about the impact of the different levels on their daily doing. A dedicated list of resources (best practices, recommended patterns, target maturity levels) provides specific guidance to the team and helps them to make an educated decision.*
91+
* [Managing Capacity for Reviewing Contributions](/patterns/1-initial/capacity-for-contributions.md) - *Reviewing InnerSource contributions takes time and effort. This should be reflected in capacity planning, especially for larger contributions. Expectations and available capacity should be transparent so that contributors understand when their contributions will be reviewed and, if accepted, released.*
92+
* [InnerSource Ambassadors](/patterns/1-initial/innersource-ambassador.md) - *When driving InnerSource adoption through a large, decentralized organization it is hard to understand and address the local challenges that come up in different departments and regions. Local volunteers, called InnerSource Ambassadors, provide localized support by promoting InnerSource principles and acting as a communication bridge between their teams and the ISPO.*
9193

9294
<!--
9395
NOTE: The 'Initial' Patterns below don't have a Patlet yet, which is essential for readers to quickly browse our patterns.
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
## Title
2+
3+
Managing Capacity for Reviewing Contributions
4+
5+
## Patlet
6+
7+
Reviewing InnerSource contributions takes time and effort. This should be reflected in capacity planning, especially for larger contributions. Expectations and available capacity should be transparent so that contributors understand when their contributions will be reviewed and, if accepted, released.
8+
9+
## Problem
10+
11+
Large InnerSource contributions are causing delays to other work in the team and/or contributions are taking longer to be released than expected. Reviewing contributions may be significant invisible work, not tracked in a team's Agile development process.
12+
13+
## Story
14+
15+
An application is built by a number of teams, each with different areas of responsibility. They work on each other's areas of the codebase via InnerSource on a regular basis.
16+
17+
The team responsible for the build process for the JavaScript bundles received a major pull request, changing how dependencies were bundled. This PR introduced a new build time dependency, a new structure to the deployed JavaScript bundles, and touched 503 files, with 6,699 lines of code added and 2,828 lines of code deleted. A contribution of this size required significant time to code review, test, and ensure the team understood the new tooling and structure introduced.
18+
19+
Normally, InnerSource contributions would be reviewed ad-hoc, but the team estimated that this review process would take days rather than hours. Reviewing this PR would have delayed the team's other work, so the team raised this with the team lead, project manager, and product manager, to prioritize this work against other work. Time was set aside to review this contribution at a future date.
20+
21+
This process was formalized in the team:
22+
23+
* Larger contributions have a ticket created on the team's backlog and included in prioritization discussion alongside other tickets.
24+
* The contributor will be informed of the priority call and given an estimate as to when it will be reviewed and released.
25+
* Smaller contributions can still be reviewed ad-hoc.
26+
27+
## Context
28+
29+
* Host team of a successful InnerSource project are finding it difficult to review contributions, especially large contributions.
30+
* They do not want to disrupt their team's other work, but also want to support contributions by reviewing/releasing them in a timely fashion.
31+
32+
## Forces
33+
34+
* Contributors expect timely feedback on their contributions
35+
* Host team are expected to deliver other work alongside reviewing contributions
36+
* Missing communication between contributors and host team on expectations/lead time for contributions to be reviewed/released
37+
* Tension in prioritizing InnerSource contributions against other work
38+
* Contributors already strive to make small PRs in line with Agile, InnerSource, and Continuous Delivery principles, but find instances where larger PRs are unavoidable
39+
40+
## Solutions
41+
42+
* Contributors are encouraged to give the host team early visibility of larger contributions (e.g. via GitHub Issues, draft PRs, [RFCs](../2-structured/transparent-cross-team-decision-making-using-rfcs.md), or informal discussions) and are made aware that not doing so could delay review of their contribution
43+
* Reviewing larger contributions is tracked in the team's ticketing system/bug tracker (e.g. Jira, GitHub issues)
44+
* Host team is given time to review larger contributions in team capacity planning
45+
* Reviewing contributions is prioritized against other work (e.g. in sprint planning)
46+
* Host team communicate their capacity for reviewing contributions, the priority of contributions, and an estimate of when a contribution will be reviewed/released
47+
* Host team has a service level objective (SLO) (e.g. 2 working days) for providing initial feedback to new contributions
48+
* Smaller contributions are still reviewed ad-hoc; the team may have guidelines on what they consider to be a smaller contribution (e.g. review should take less than an hour)
49+
50+
## Resulting Context
51+
52+
Host team understands the overhead of reviewing large contributions and is given capacity to do so. Project manager and product managers are better able to plan, estimate, and track other work in the team by accounting for the time taken to review InnerSource contributions. Contributors understand when their contribution will be reviewed and released, and how long before the host team will provide initial feedback.
53+
54+
Smaller PRs are still reviewed ad-hoc, minimising overhead and unnecessary additional process.
55+
56+
There may still be conflict in prioritising contribution reviews, especially if the host team is overburdened with other work. This only works if contributions are valued by the decision makers in the team's planning process.
57+
58+
## Known Instances
59+
60+
- BBC iPlayer & Sounds
61+
62+
## Status
63+
64+
Initial
65+
66+
## Author(s)
67+
68+
Tom Sadler
69+
70+
## Acknowledgments
71+
72+
Clare Dillon
73+
Sebastian Spier
74+
Guilherme Dellagustin
75+
Michael Basil
76+
Bill Westfall
Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
## Title
2+
3+
InnerSource Ambassadors
4+
5+
## Patlet
6+
7+
When driving InnerSource adoption through a large, decentralized organization it is hard to understand and address the local challenges that come up in different departments and regions.
8+
Local volunteers, called InnerSource Ambassadors, provide localized support by promoting InnerSource principles and acting as a communication bridge between their teams and the ISPO.
9+
10+
## Problem
11+
12+
The InnerSource Program Office (ISPO) cannot be everywhere at once within a large, decentralized organization. Without localized support, the ISPO struggles to understand the unique challenges and needs of different departments or regions and cannot effectively promote InnerSource practices across the organization.
13+
14+
## Story
15+
16+
In a multinational organization, the ISPO implemented InnerSource initiatives but noticed uneven adoption across departments. After appointing a local ambassador in one department, adoption rates improved as the ambassador tailored practices to the department's context and provided valuable feedback to the ISPO.
17+
18+
## Context
19+
20+
- The organization is large and has multiple independent departments.
21+
- An ISPO has been established to drive InnerSource adoption.
22+
- There is a need for consistent and tailored InnerSource implementation across diverse teams.
23+
- Employees with a passion for collaboration and InnerSource principles are present within the organization.
24+
25+
## Forces
26+
27+
- **Geographical and organizational scale:** The ISPO cannot physically or logistically engage with every department.
28+
- **Communication barriers:** Departments may have unique cultures and needs that are not immediately visible to the ISPO.
29+
- **Workload balance:** Ambassadors must fulfill this role alongside their primary responsibilities.
30+
- **Trust and credibility:** Ambassadors must be trusted by their teams and the ISPO.
31+
32+
## Sketch (optional)
33+
34+
*A diagram showing the ISPO at the center, with ambassadors positioned in various departments acting as bidirectional conduits of information and influence.*
35+
36+
## Solutions
37+
38+
- Identify and recruit volunteer ambassadors from across the organization who are enthusiastic about InnerSource. They support InnerSource goals while maintaining their primary organizational roles.
39+
- Train ambassadors on InnerSource principles, tools, and the goals of the ISPO.
40+
- Establish clear expectations for ambassadors, including acting as a liaison, promoting InnerSource practices, and providing feedback to the ISPO.
41+
- Create a support network among ambassadors to share best practices and foster a sense of community.
42+
- Schedule regular check-ins between ambassadors and the ISPO to gather insights and provide guidance.
43+
44+
## Resulting Context
45+
46+
- Localized InnerSource support increases adoption and effectiveness.
47+
- The ISPO gains valuable, real-time feedback on challenges, successes, and opportunities within different departments.
48+
- Ambassadors become advocates for InnerSource, fostering a culture of collaboration.
49+
- Workload balancing remains a challenge, but most ambassadors find the role rewarding and career-enhancing.
50+
51+
## Rationale
52+
53+
InnerSource Ambassadors leverage their existing knowledge of their departments and relationships within the organization to address challenges the ISPO cannot solve alone. This decentralization of responsibility enhances the ISPO's reach while maintaining centralized oversight.
54+
55+
## Known Instances
56+
57+
- *SAP* has a concept called [Open Source Champions](https://community.sap.com/t5/open-source-blogs/sap-open-source-champions/ba-p/13539587) that seems related
58+
59+
## Status
60+
61+
- Initial
62+
63+
## Authors
64+
65+
- Sebastian Spier
66+
67+
## Acknowledgments
68+
69+
- [Russell R. Rutledge](https://github.com/rrrutledge) for sharing the idea and providing feedback
70+
- [Guilherme Dellagustin](https://github.com/dellagustin-sap) for sharing a similar concept used for open source adoption
71+
72+
## Alias
73+
74+
- Departmental InnerSource Representatives/Champion/Ambassador
75+
- Local InnerSource Representatives/Champion/Ambassador

0 commit comments

Comments
 (0)