Skip to content

Promoting Governance Levels pattern to Structured #765

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 49 commits into from
Mar 15, 2025
Merged
Show file tree
Hide file tree
Changes from 5 commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
3f40799
Promoting the pattern to Structured. Adding checklist to PR to confir…
spier Jan 24, 2025
6aaac81
Update README entry for this pattern
spier Jan 25, 2025
36885f9
Adding terminology to the open source analogies
spier Jan 25, 2025
9edb239
Splitting up the different rights that the people get in each of the …
spier Jan 25, 2025
2cb3b25
Suggesting a new name
spier Jan 25, 2025
a32e20d
Fix linter issues
spier Jan 25, 2025
c451302
Fix link in README
spier Jan 26, 2025
c7e970e
Fix link for good :)
spier Jan 26, 2025
6ad7473
Adding alternative names for each stage
spier Jan 26, 2025
0785773
Adding subsections in the Solution
spier Jan 26, 2025
108d3f2
Adding new visual from Flutter, just to see how it would look like in…
spier Jan 26, 2025
07eb806
Simplify the text
spier Jan 26, 2025
43f3f38
Adding Alias section
spier Jan 28, 2025
32181b8
Fix linter issue
spier Jan 28, 2025
76ca3c7
Adding Tom Sadler to the authors
spier Jan 28, 2025
b76c6b0
Adding pattern to the mindmap (can be added in added in other areas a…
spier Jan 28, 2025
28b3538
Adding Europace as a known instance
spier Jan 28, 2025
24d6988
Re-creating markmap and screenshot
spier Jan 28, 2025
09abdeb
Typo fixes. Using US-english.
spier Feb 18, 2025
7aef3ba
Rename Story section. Using new visual from Flutter.
spier Feb 18, 2025
2cda6f0
Adding image
spier Feb 18, 2025
fbbff7f
New link
spier Feb 18, 2025
f8a64a4
Use the term 'governance levels' consistently throughout the pattern.…
spier Mar 2, 2025
6f5a484
Moving the description of how this pattern relates to open source to …
spier Mar 2, 2025
ed225f9
Adding 'Shared Write Access' as 4th governance level again. Adding im…
spier Mar 2, 2025
701a964
Merge branch 'main' into promote-governance-levels
spier Mar 2, 2025
e2bcebf
Fixing commonmarker version
spier Mar 2, 2025
fbacf42
Update toc
spier Mar 2, 2025
fa48e78
Adding some intro text, and numbers to the 4 levels
spier Mar 2, 2025
299ac5d
Try an image gallery
spier Mar 2, 2025
3a31972
Cleanup duplicated images
spier Mar 2, 2025
14c7d23
Seems like a fair addition ;)
spier Mar 3, 2025
1016265
Restructure the Solution section
spier Mar 3, 2025
f12b927
Use 'host team' intead of 'core development team' to prevent confusio…
spier Mar 6, 2025
7782d8f
Trying a new Patlet, partly suggested by chatgpt
spier Mar 6, 2025
1b42b80
Trying a new title to see if it sticks
spier Mar 6, 2025
d5df06f
Updating toc
spier Mar 6, 2025
f21cc48
Remove this sections, as the commonly used levels are listed shortly …
spier Mar 6, 2025
e830e89
Move flutter image into the right folder. delete old files
spier Mar 6, 2025
ea91dbd
Fix link
spier Mar 6, 2025
63f31e6
Add pattern to other areas in the mindmap
spier Mar 6, 2025
7c5dfee
Change title
spier Mar 6, 2025
2b10aaa
Fix description in README
spier Mar 6, 2025
4503eb9
Minor fix for from BE to AE. Some markdown fixes.
spier Mar 15, 2025
346f184
Update Aliases
spier Mar 15, 2025
ebdc9f9
Try a different pattern name. keeping the file name the same to allow…
spier Mar 15, 2025
5eb9f7e
Regenerate TOC
spier Mar 15, 2025
378b41c
Stick to the 'Explicit Governance Levels' titel after all
spier Mar 15, 2025
1ec2e25
Merge branch 'main' into promote-governance-levels
spier Mar 15, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@ Our mission
* [Extensions for Sustainable Growth](/patterns/2-structured/extensions-for-sustainable-growth.md) - *An InnerSource project is receiving too many contributions, making maintenance difficult. By offering an extension mechanism outside of the core project, the maintainers enable scaling of project capabilities with minimal cost and maintenance overhead.*
* [Standard Release Process](patterns/2-structured/release-process.md) - *Teams may hesitate to adopt an InnerSource project if they are unsure of its maturity. To address this, consistent release notes and published artifacts are crucial. These practices showcase a strong dedication to the project, instilling confidence and assuring users of ongoing commitment to sustainable and well-managed software.*
* [Group Support](patterns/2-structured/group-support.md) - *What happens if a team or individual no longer supports an InnerSource project? Keep the project alive by forming a group of interested individuals.*
* [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.*

### Maturity Level 1: Initial

Expand All @@ -71,7 +72,6 @@ Our mission
* [Include Product Owners](patterns/1-initial/include-product-owners.md) - *Engaging and educating Product Owners about InnerSource can help them modify their actions (e.g., in the space of KPIs) to help InnerSource collaboration work better.*
* [Assisted Compliance](patterns/1-initial/assisted_compliance.md) - *Helping repo owners be compliant by writing their CONTRIBUTING.md for them as a pull request.*
* [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.*
* [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.*
* [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.*
* [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.*
* [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.*
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
## Title

Transparent Governance Levels
Project Governance Levels

## Patlet

Expand Down Expand Up @@ -28,11 +28,13 @@

Like "InnerSource", Open Source is also a broad term.

There are projects on GitHub, published purely for the pleasure of the author with no intention of long term maintenance, not intention to fix bugs submitted by users. This would be the equivalent of "Bug Reports and Issues Welcome" - you can report the bug, but its on the owner to find the time to fix it.
There are projects on GitHub, published purely for the pleasure of the author with no intention of long term maintenance, not intention to fix bugs submitted by users. This would be the equivalent of "Bug Reports and Issues Welcome" - you can report the bug, but its on the owner to find the time to fix it. We call this **shared source**, which would not qualify as open source software (OSS) yet.

Check failure on line 31 in patterns/2-structured/governance-levels.md

View workflow job for this annotation

GitHub Actions / lint

Trailing spaces [Expected: 0 or 2; Actual: 1]

Check failure on line 31 in patterns/2-structured/governance-levels.md

View workflow job for this annotation

GitHub Actions / lint

Trailing spaces [Expected: 0 or 2; Actual: 1]

There are projects where the roadmap is created in-house, hidden from public view. Where commit rights come and go with the contract of the employees of one company (e.g. MongoDB, Elastic, Tensorflow). Users are welcome to submit patches, they will even be mentored through. All development happens in the open, but control and strategy is never shared. This would be the equivalent of stage "Contributions Welcome".
There are projects where the roadmap is created in-house, hidden from public view. Where commit rights come and go with the contract of the employees of one company (e.g. MongoDB, Elastic, Tensorflow). Users are welcome to submit patches, they will even be mentored through. All development happens in the open, but control and strategy is never shared. This would be the equivalent of stage "Contributions Welcome". We call this **single vendor OSS**.

Check failure on line 33 in patterns/2-structured/governance-levels.md

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [ISC.Spelling] Did you really mean 'Tensorflow'? Raw Output: {"message": "[ISC.Spelling] Did you really mean 'Tensorflow'?", "location": {"path": "patterns/2-structured/governance-levels.md", "range": {"start": {"line": 33, "column": 190}}}, "severity": "ERROR"}

There are projects that share write access, but do not share the power to decide who gets write access next. This applies to everyone who is only a committer at an Apache project. There are projects that are fully shared across multiple independent organizations (e.g. k8s, any Apache project) - those would be "Shared Ownership".
There are projects that share write access, but do not share the power to decide who gets write access next. This applies to everyone who is only a committer at an Apache project.

There are projects that are fully shared across multiple independent organizations (e.g. k8s, any Apache project) - those would be "Shared Ownership". We call this **vendor neutral OS**

The same levels make sense inside of organizations.

Expand Down Expand Up @@ -63,9 +65,17 @@

Examples of common InnerSource operating models (1) are:

- **Bug Reports and Issues Welcome**: People outside the core development team may use the code. They can submit feature requests and bug reports for things they would like to see changed.
- **Contributions Welcome**: People outside the core development team may use the code. They can also make modifications and submit them to core team for inclusion.
- **Shared Ownership** (sometimes called **Distributed Ownership**): Members of different teams collaborate on the project as equal peers. Everyone has the ability to merge code. Everyone has an equal say on the project direction. Everyone has an equal say in who else to add to this group.
- **Bug Reports and Issues Welcome**:
- People outside the core development team may use the code.
- They can submit feature requests and bug reports for things they would like to see changed.
- **Contributions Welcome**:
- People outside the core development team may use the code.
- They can also make modifications and submit them to core team for inclusion.
- **Shared Ownership** (sometimes called **Distributed Ownership**):
- Members of different teams collaborate on the project as equal peers.
- Everyone has the ability to merge code.
- Everyone has an equal say on the project direction.
- Everyone has an equal say in who else to add to this group.

Examples of promoting the model names (3) are:

Expand Down
Loading