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