Skip to content

Commit 38d41d3

Browse files
authored
Improve 'Communication Tooling' pattern (#420)
* Changing order of sections according to pattern template * [formatting] Change Patlet to 1 sentence per line * Changing the Patlet to a more clear Problem/Solution split. * More clearly call out the different types of communication channels. * Add links to related patterns * Extend section on channeling comms back to the main 3 channels * Adding a link to passive documentation * Adding 'Q&A systems' as a possible public communication channel * Adding visual + credits + acknowledgement * Split up Context into bullets
1 parent 571a804 commit 38d41d3

File tree

3 files changed

+38
-24
lines changed

3 files changed

+38
-24
lines changed
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# Credits
2+
3+
[People illustrations by Storyset](https://storyset.com/people).
4+
5+
Specifically:
6+
7+
- https://storyset.com/illustration/thinking-face/amico
8+
- https://storyset.com/illustration/man-thinking/amico
Loading

patterns/2-structured/project-setup/communication-tooling.md

Lines changed: 30 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,8 @@ Communication Tooling
44

55
## Patlet
66

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 set up 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.
7+
The users of an InnerSource project have trouble getting help and getting in touch with the host team.
8+
By consistently using asynchronous communication tooling, the project makes discussions visible, archived and searchable, leading to an improved level of support for users.
179

1810
## Problem
1911

@@ -23,6 +15,12 @@ leading to incoherent information being shared, delays in answers received,
2315
contributors pinging multiple host team members before receiving a definitive
2416
answer.
2517

18+
## Context
19+
20+
- A team depends on another team's component.
21+
- It would like to make contributions to that component.
22+
- Even when it happens in writing, communication happens in a 1-on-1 fashion.
23+
2624
## Forces
2725

2826
- The host team is interested in receiving contributions and willing to mentor contributors.
@@ -31,30 +29,30 @@ answer.
3129

3230
## Solution
3331

34-
The host team needs to be clear on the benefit of providing company-public,
35-
archived, searchable, linkable communication channels that are free to subscribe
36-
to by anyone in the company.
32+
The host team should provide company-public, archived, searchable, linkable communication channels that anyone in the company can subscribe to, as there are measurable benefits to supporting open, written communications channels.
3733

3834
The goal when streamlining communication channels for InnerSource projects
3935
should be to align communication around topics, not around certain sets of
40-
people:
36+
people.
37+
38+
A project should set up the following communication tooling:
4139

42-
- The project should have its own issue tracker where structured communication, decision-making and progress tracking can happen transparently for all host team members but also for downstream users and contributors to follow.
43-
- The project should have one or more discussion channels that come with less rigid a structure. Typically, this will be mailing lists, online forums or even archived chat channels. Usually it is enough to start with just one channel for the project, if traffic increases too much it's helpful to split discussions about project usage from discussions about project development.
44-
- In addition, the project should have one private channel where sensitive communication can happen between [Trusted Committers](../trusted-committer.md) - e.g. adding further Trusted Committers to the host team. This channel should be used with great care such that communication defaults to open and is kept private only under very rare circumstances.
40+
1. **a dedicated issue tracker** where structured communication, decision-making and progress tracking can happen transparently for all host team members but also for downstream users and contributors to follow. For further applications of the issue tracker see [Issue Tracker Use Cases](./issue-tracker.md).
41+
2. **public discussion channel(s)** that come with less rigid a structure. Typically, this will be mailing lists, online forums, Q&A systems or even archived chat channels. Usually it is enough to start with just one channel for the project. If traffic increases too much it is helpful to split discussions about project usage from discussions about project development.
42+
3. **a private channel** where communication about sensitive topics can happen between [Trusted Committers](../trusted-committer.md) - e.g. adding further Trusted Committers to the host team. This channel should be used with great care such that communication defaults to open and is kept private only under very rare circumstances.
4543

46-
While communication can happen outside of written channels, as much information
47-
as possible should be brought back to the asynchronous channels.
44+
While communication can happen outside of those written channels, as much information as possible should be brought back to the asynchronous channels.
4845

49-
All communication channels should be documented in the project `README.md`. The
50-
host team members need to make an effort to direct questions that they receive
51-
personally back to official communication channels.
46+
All communication channels should be documented in the project `README.md`. For more details on the use of this file see [Standard Base Documentation](./base-documentation.md).
47+
48+
The host team members need to make an effort to direct questions that they receive personally (e.g. via email or private chat messages) back to official communication channels.
49+
50+
![Recommended Communication Tooling for an InnerSource Project](../../../assets/img/communication-tooling/communication-tooling.png)
5251

5352
## Resulting Context
5453

5554
Setting up and consistently using official asynchronous communication channels
56-
helps create a base level of passive documentation that can be referenced again
57-
when similar questions come up again.
55+
helps create a base level of [passive documentation](https://www.oreilly.com/library/view/understanding-the-innersource/9781491986899/ch04.html) that can be referenced again when similar questions come up again.
5856

5957
With communication happening in the open others can easily follow project
6058
progress and get active contributing. Others lurking and reading lowers the
@@ -84,7 +82,15 @@ to a lower need to repeat explanations.
8482

8583
Isabel Drost-Fromm
8684

85+
## Acknowledgement
86+
87+
Sebastian Spier (for the visual)
88+
8789
## Status
8890

8991
* Structured
9092
* Drafted in December 2019.
93+
94+
## Credits
95+
96+
[People](https://storyset.com/people) illustrations by Storyset

0 commit comments

Comments
 (0)