Create a collaborative environment (S2)
Organizational policies and politics create a culture of local optimization which inhibits collaboration. This is resolved by the creation of stakeholder boards, guilds, developer exchanges, cross-team pairing, collaborative decision making via RFCs, and knowledge sharing forums.
Organizational policies (KPI's and incentive structures) and politics create a culture of local optimization where mid-level managers and teams focus primarily on achieving their own objectives; this means that information sharing and collaboration are not a priority for these organizational units, or this could even be perceived as being at conflict with the team's objectives.
- Large organizations with multiple autonomous Business Units (BU's) lead to the formation of "baronies" in middle and lower management.
- The incentive and KPI measures in place do not consider InnerSource contributions by teams and this leads to silo-thinking which in turn prevents widespread adoption of IS across organization.
- A highly politicized and top-down environment could also discourage people from taking the initiative to explore InnerSource.
- Another key cause that hinders collaboration and sharing of code is a sense of "didn't build it here" amongst teams.
- Lack of trust between teams over the maintenance of a shared solution which can be critical to one team while non-critical to another (P07).
- Middle managers (Technical owners and Project managers) face pressure to keep their teams happy while simultaneously meet deadlines (P04).
- Ignorance of costs associated with a bespoke solution such as licensing, onboarding, training, and maintaining can cause teams to favor local optimization (P10).
- Hours spent on development needed to be booked with existing projects under different BU's. This led to ambiguity around booking hours spent on IS projects (P11).
- The creation of an ISPO/OSPO/Technical Committee (P01, P04, P08, P11, P23) which acts as a support mechanism and provides representation to stakeholders such as developers, agile coaches, engineers, and senior management. The ISPO/OSPO can work in a decentralized fashion by providing company-wide guidance but allowing teams to lead the InnerSource implementation in their area (P04). The ISPO/OSPO has specialized InnerSource roles such as advocates, community managers to enhance collaboration (P11).
- Modifying and consolidating code management tools (e.g., GitHub) to facilitate collaboration between teams (P08, P23).
- Creating dedicated communication channels such as in MS Teams channels, digital events, webpages in intranet where people can get support and exchange knowledge (P14).
- Face-to-face conference of stakeholder representatives to plan InnerSource implementation and sustenance (P10).
- The combination of the above solutions will result in increased collaboration and a shared understanding of InnerSource across the organization.
- Praise and encouragement by the ISPO/OSPO/Committee will motivate contributors.
- Collaborative code management tools will enable developers to InnerSource their code and contribute with ease.
- Extensive communication must be done with senior management to bring different parts of the organization, such as the developers and technical committee, on board (P08, P11).
- Lack of a specialized role who can train developers in InnerSource (P11).
- This pattern has been identified by seven (P01,P04,P08,P10,P14,P20,and P23) panelists to have been implemented in their organizations.