Skip to content

Commit d37b09f

Browse files
authored
Merge pull request #124 from MaineC/comms-tooling
Add first draft for communication tooling setup.
2 parents bacdd81 + f3fac87 commit d37b09f

File tree

2 files changed

+104
-0
lines changed

2 files changed

+104
-0
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ possible to either deploy the same service in independent environments with sepa
5757
* [Include Product Owners](https://github.com/InnerSourceCommons/InnerSourcePatterns/pull/71) - *Key Performance Indicators (KPIs) for Product Owners are primarily product focused, and don't consider areas such as collaborative development. This results in a lower level of engagement with inner source projects.*
5858
* [Provide standard base documentation through a README](patterns/2-structured/project-setup/base-documentation.md) - *New contributors to an InnerSource project have a hard time figuring out who maintains the project, what to work on, and how to contribute. Providing documentation in standard files like README.md/CONTRIBUTING.md enables a self service process for new contributors, so that they can find the answers to the most common questions on their own.*
5959
* [Issue tracker use cases](patterns/2-structured/project-setup/issue-tracker.md) - *The InnerSource host team fails to make not only plans and progress but also context for changes transparent. This is solved by increasing the use cases for the project issue tracker to also serve brainstorming, implementation discussion, and feature design.*
60+
* [Communication tooling](patterns/2-structured/project-setup/communication-tooling.md) - *An InnerSource project is being used outside the original development team but users are having trouble getting help and getting in touch with the project team. The idea is to setup and document standard communication tooling that allows for discussions to become visible, archived and searchable.*
6061

6162
### Maturity Level 1: Initial
6263

Lines changed: 103 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,103 @@
1+
## Title
2+
3+
Communication tooling
4+
5+
## Patlet
6+
7+
An InnerSource project is being used outside the original development team but
8+
users are having trouble getting help and getting in touch with the project
9+
team. The idea is to setup and document standard communication tooling that
10+
allows for discussions to become visible, archived and searchable.
11+
12+
## Context
13+
14+
A team depends on another team's component. It would like to make contributions
15+
to that component. Even when it happens in writing, communication happens in a
16+
1-on-1 fashion.
17+
18+
## Problem
19+
20+
A team is open to receiving contributions from downstream users of their
21+
component. Coordination and communication happens in an ad-hoc fashion though
22+
leading to incoherent information being shared, delays in answers received,
23+
contributors pinging multiple host team members before receiving a definitive
24+
answer.
25+
26+
## Forces
27+
28+
- The host team is interested in receiving contributions and willing to mentor
29+
contributors.
30+
- Teams have a strong verbal communication culture and are inexperienced with
31+
setting up project specific asynchronous communication channels.
32+
- Communication channels may be aligned with specific groups that should be
33+
reached but not by communication purpose.
34+
35+
## Solution
36+
37+
The host team needs to be clear on the benefit of providing company-public,
38+
archived, searchable, linkable communication channels that are free to subscribe
39+
to by anyone in the company.
40+
41+
The goal when streamlining communication channels for InnerSource projects
42+
should be to align communication around topics, not around certain sets of
43+
people:
44+
45+
- The project should have it's own issue tracker where structured communication,
46+
decision making and progress tracking can happen transparently for all host
47+
team members but also for downstream users and contributors to follow.
48+
- The project should have one or more discussion channels that come with less
49+
rigid a structure. Typically this will be mailing lists, online forums or even
50+
archived chat channels. Usually it is enough to start with just one channel
51+
for the project, if traffic increases too much it's helpful to split
52+
discussions around project usage from discussions around project development.
53+
- In addition the project should have one private channel where sensitive
54+
communication can happen between Trusted Committers - e.g. adding further
55+
Trusted Committers to the host team. This channel should be used with great
56+
care such that communication defaults to open and is kept private only under
57+
very rare circumstances.
58+
59+
While communication can happen outside of written channels, as much information
60+
as possible should be brought back to the asynchronous channels.
61+
62+
All communication channels should be documented in the project README.md The
63+
host team members need to make an effort to direct questions that they receive
64+
personally back to official communication channels.
65+
66+
## Resulting Context
67+
68+
Setting up and consistently using official asynchronous communication channels
69+
helps create a base level of passive documentation that can be referenced again
70+
when similar questions come up again.
71+
72+
With communication happening in the open others can easily follow project
73+
progress and get active contributing. Others lurking and reading lowers the
74+
barrier to get involved raising the likelihood of receiving contributions.
75+
76+
With questions being answered in public more people can add their perspective
77+
leading to a complete picture - this includes not only host team members,
78+
but also users of the project.
79+
80+
Keeping communication in asynchronous channels allows for participants on
81+
different schedules - either due to different time zones or due to different
82+
routines, meeting schedules, team routines - to meaningfully contribute to
83+
the project.
84+
85+
Answering questions in those channels means that not only other team members
86+
can listen in and provide additional information, it also means that other
87+
users with the same question see (or later on find) the previous answer leading
88+
to a lower need to repeat explanations.
89+
90+
91+
## Known Instances
92+
93+
Europace AG, Paypal Inc.
94+
95+
## Authors
96+
97+
Isabel Drost-Fromm
98+
99+
## Status
100+
101+
Structured.
102+
103+
Drafted in December 2019.

0 commit comments

Comments
 (0)