Skip to content

Commit d4b0771

Browse files
authored
Merge pull request #40 from fioddor/governance
Good Governance Initiative (GGI)
2 parents 812d7d4 + 91594b8 commit d4b0771

File tree

3 files changed

+267
-1
lines changed

3 files changed

+267
-1
lines changed

.github/workflows/vale.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
- name: Vale Linting
2121
uses: errata-ai/vale-action@reviewdog
2222
with:
23-
files: '["introduction/", "infrastructure/", "measuring/"]'
23+
files: '["introduction/", "infrastructure/", "measuring/", "governance/"]'
2424
vale_flags: "--glob=*.md"
2525
filter_mode: added
2626
debug: true

SUMMARY.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
* [Examples of Interest](measuring/metrics.md)
2525
* [References](measuring/references.md)
2626
* [Authors and Reviewers](measuring/authors.md)
27+
* [Governance](governance/governance.md)
2728
* [Tooling](tooling/innersource-tooling.md)
2829
* [GitHub Strategy](tooling/github-strategy.md)
2930
* [GitHub Configuration](tooling/github-configuration.md)

governance/governance.md

Lines changed: 265 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,265 @@
1+
# Governance
2+
3+
According to the Business Dictionary, governance is defined as:
4+
5+
> _Establishment of policies, and continuous monitoring
6+
> of their proper implementation, by the members of the
7+
> governing body of an organization. It includes the
8+
> mechanisms required to balance the powers of the
9+
> members (with the associated accountability), and
10+
> their primary duty of enhancing the prosperity and
11+
> viability of the organization_
12+
13+
In open source, governance is described in the "governance
14+
model" document, defined by OSSWatch[^1] as:
15+
16+
> _A governance model describes the roles that project participants
17+
> can take on and the process for decision making within the project.
18+
> In addition, it describes the ground rules for participation in the
19+
> project and the processes for communicating and sharing within
20+
> the project team and community_
21+
22+
Usually the governance model is a written document containing:
23+
24+
- project goals
25+
- work, management and collaboration infrastructures definition
26+
- people roles and responsibilities definitions
27+
- community support mechanisms
28+
- decision making process policies description
29+
- contribution process policies description
30+
- monitoring policies and mechanisms description
31+
32+
## Governance standards/models
33+
34+
There are some initiatives describing what good corporate open
35+
source governance means. The most mature one is the _Good Governance
36+
Initiative (GGI)[^2]_ by the OSPO Alliance,
37+
which has already released the first version (v1) of its framework.
38+
39+
Coming versions of this framework are expected to consider
40+
InnerSource as a corporate practice managed by the Open Source
41+
Program Office (OSPO).
42+
43+
In the shared spirit of reusing materials, we'll avoid overlapping
44+
and focus here on a pure InnerSource case where no formal corporate
45+
management of open source exists yet.
46+
47+
The GGI proposes 5 goals to structure 5 governance activities for
48+
each of them.
49+
50+
All GGI goals for open source governance apply with minor tweaks to
51+
our pure InnerSource case:
52+
53+
- Goal 1: Foster **usage** of InnerSource software
54+
- Goal 2: **Build trust** around InnerSource
55+
- Goal 3: **Spread** the (InnerSource) **culture**
56+
- Goal 4: **Engage** with the (InnerSource) **community**
57+
- Goal 5: **Make InnerSource Strategic** for the organization
58+
59+
There will be differences in the context that will cause an
60+
adaptation.
61+
62+
## Foster usage of InnerSource software
63+
64+
There are at least three reasons for fostering the usage of
65+
InnerSource-developed software:
66+
- It might suffer from the same kind of distrust open source has.
67+
- Usage is the base: don't expect contributions without users.
68+
- The borders applying to InnerSource limit the audience, so this
69+
can become challenging for small or varied corporations.
70+
71+
### Activities
72+
73+
InnerSource will have a greater need for software inventories due
74+
to the findability problem.
75+
76+
InnerSource practices are mostly the same as open source ones,
77+
so the skillset is basically the same, with some specifics:
78+
- In our focused case, familiarity with usual open source
79+
products is not needed.
80+
- InnerSource usually deploys to a single instance. Then, the
81+
needed scope for deployment training might be narrowed down.
82+
- Motivation: InnerSource is less exciting than open source, and the
83+
pool of possible contributors is smaller. Motivation is more
84+
challenging and needs more effort and skill.
85+
86+
InnerSource-specific topics will need attention:
87+
- Transfer pricing doesn't apply to open source but tends to be a
88+
barrier for corporations operating in different fiscal
89+
jurisdictions.
90+
- Heavily outsourced development scenarios might require focusing
91+
competency growth on product owners, if there are scant
92+
developers inhouse.
93+
94+
InnerSource supervision ought to focus on different questions:
95+
96+
* Purpose: controlling the redundant developments and ensuring
97+
InnerSource software is proactively managed.
98+
* Push/promote integrating InnerSource components and
99+
contributing upstream.
100+
* Identify where InnerSource are de-facto or critical solutions
101+
and assess suitability (avoid InnerSource monoliths).
102+
103+
There's usually no need to curate enterprise-grade InnerSource
104+
software or to manage open source software development skills and
105+
resources (GGI activities 1.4 and 1.5).
106+
107+
In exchange, software and documentation findability are
108+
challenging because public search engines usually don't work
109+
inside corporate borders.
110+
111+
## Build trust around InnerSource
112+
113+
Building trust means dealing with fears, uncertainty, and doubts
114+
(FUD). The usual sources for FUD are:
115+
116+
- **Legal context**, because most participants usually are
117+
unaware of the relevant details.
118+
- **Security**, mainly due to the not-invented here (NIH)
119+
syndrome. In fact having the source code available ought to
120+
help building trust by enabling auditability, and shifting
121+
some testing from back-box to white-box.
122+
- **Internal context**, specifically in organizations where the
123+
InnerSource initiative sponsorship is limited.
124+
125+
### Activities
126+
127+
InnerSource has its specific legal challenges:
128+
- InnerSource license. This might change in the future, but for
129+
the moment, in contrast to open source, there are no public
130+
InnerSource licenses for reference.
131+
- Transfer pricing, for corporations operating in several fiscal
132+
jurisdictions.
133+
- Export control. The same is needed for any kind of software
134+
licensing schema. But InnerSource has better options for control
135+
than open source since it's privative software and all of its
136+
development happens in-house.
137+
138+
Managing vulnerabilities is slightly better under InnerSource, and
139+
way worse than in open source: There are dependencies on privative
140+
software and services (usually avoided in open source but quite usual
141+
in InnerSource).
142+
143+
Dependency management needs to take care of both:
144+
- Internal InnerSource dependencies
145+
- Dependencies on privative software and services (usually
146+
avoided in open source but usual in InnerSource).
147+
148+
The internal context is a source of concerns. The specific set of
149+
concerns depends very much on each organization and vary a lot, but
150+
the individual concerns are usually shared with other organizations.
151+
For that reason, the InnerSource Commons collects patterns[^3],
152+
so solutions can be reused, either as they are or as inspiration for
153+
a local variant.
154+
155+
Metrics tend to help provide trust.
156+
157+
But the corporate motivation for embracing InnerSource might be
158+
different (silo breakage, etc) and independent of approaching
159+
open source. These local differences totally affect the metrics
160+
architecture. See the metrics[^4] pattern published by InnerSource
161+
Commons.
162+
163+
## Spread the (InnerSource) culture
164+
165+
The InnerSource culture is the same as the open source one.
166+
It collects a set of best practices that can be roughly
167+
summarized as:
168+
- **contributing upstream** and
169+
- taking the **human** nature of participants into account.
170+
171+
### Activities
172+
173+
The activities for spreading the InnerSource culture are basically
174+
the same as with open source as well, so the GGI standard applies
175+
as-is, with the usual local adaptations.
176+
177+
Usually, going InnerSource is an intermediate step for corporations
178+
with open-source unfriendly culture to approach open source.
179+
In such cases spreading the culture will pose a serious challenge
180+
but less than going full open source.
181+
182+
Cases of organizations targeting pure InnerSource can be legit or
183+
not.
184+
Some organizations want to get the benefits of InnerSource
185+
by adopting cherry-picked open source procedures and lore, but
186+
without actually practicing InnerSource. Step away from such cases,
187+
as this most likely won't work!
188+
Legit pure InnerSource embraces its culture as a fundamental piece
189+
of the framework.
190+
191+
## Foster engagement with the (InnerSource) community
192+
193+
Under open source, a sense of belonging to any local community
194+
smoothly transitions into the global community. The feeling crosses
195+
formal boundaries the same way the software does.
196+
197+
In InnerSource there's also a global community[^5]. (In fact, it is
198+
an open source one, but that's another tale to be told on other
199+
occasions).
200+
201+
But in contrast to open source, while the global InnerSource
202+
community shares information and resources, they do **not** share
203+
**their InnerSource production**. The presence of boundaries for
204+
the InnerSource production becomes thus very present and remarks
205+
the separation between the local community and the global one.
206+
207+
### Activities
208+
209+
As part of the open source spirit in which InnerSource roots,
210+
organizations are encouraged to engage with special interest groups
211+
(SIG) beyond their borders, and in particular with the global
212+
InnerSource community.
213+
214+
Publicly asserting one's InnerSource practice and showcasing related
215+
experiences may make sense or not that much depending on the context
216+
of the corporation. Goals that benefit from such external engagement
217+
include:
218+
219+
- Plans to go open source in the future,
220+
- InnerSource as hiring motivator
221+
222+
Engagement with the internal community is a fundamental part of
223+
InnerSource. But as users of software of other teams, it is in
224+
self-interest to secure long-term support or knowledge transfer
225+
from upstream. The _code-consumers_ pattern[^6] is related to this.
226+
227+
Usually, there's scant or no need for internal InnerSource
228+
purchase policies[^7], but if needed, it is a natural task for the
229+
InnerSource Program Office (ISPO).
230+
231+
## Make InnerSource strategic for the organization
232+
233+
Most times, InnerSource is a corporate cultural transformation. Such
234+
changes need time to overcome previous inertia and even longer to
235+
stabilize and become mainstream.
236+
237+
Some bottom-up InnerSource initiatives die or languish after an
238+
initial unsuccessful push or because other priorities drain the
239+
attention before the cultural shift stabilizes.
240+
241+
Making InnerSource strategic for the organization is the way to
242+
ensure its provided value is perceived as such.
243+
244+
### Activities
245+
246+
Ensure you design your InnerSource initiative and its implementation
247+
to feature important long-term corporate goals like innovation,
248+
digital sovereignty, and digital transformation. Think of your
249+
organization and its context and find other goals InnerSource may
250+
contribute towards. Then communicate it and get as much air cover
251+
from your executives as you can.
252+
253+
[^1]: http://oss-watch.ac.uk/resources/governancemodels
254+
255+
[^2]: https://ospo-alliance.org/ggi/
256+
257+
[^3]: https://github.com/InnerSourceCommons/InnerSourcePatterns
258+
259+
[^4]: https://github.com/InnerSourceCommons/InnerSourcePatterns/blob/main/patterns/1-initial/introducing-metrics-in-innersource.md
260+
261+
[^5]: https://innersourcecommons.org/
262+
263+
[^6]: https://github.com/InnerSourceCommons/InnerSourcePatterns/blob/main/patterns/1-initial/code-consumers.md
264+
265+
[^7]: https://ospo-alliance.org/ggi/activities/open_source_procurement_policy/

0 commit comments

Comments
 (0)