Upgrade to Pro — share decks privately, control downloads, hide ads and more …

InnerSource Spain: InnerSource Patterns

Bitergia
February 06, 2019

InnerSource Spain: InnerSource Patterns

Which are the main challenges InnerSource is facing right now? Defining InnerSource Patterns

Bitergia

February 06, 2019
Tweet

More Decks by Bitergia

Other Decks in Technology

Transcript

  1. Intro Characterization of usual IS problems Brainstorming with other companies

    Bi-weekly meetings https://innersourcecommons.org/patterns
  2. Intro Active branch Several ways to run OSS projects Several

    ways to run internal culture and software practices There are no cookbooks for InnerSource So, what is exactly InnerSource? https://innersourcecommons.org/patterns
  3. Patterns - Challenges Cultural challenges Middle management Discoverability of inner-sourced

    software Types of projects to apply oss methods to Reusability of inner source software Internal inner source selling process Metrics and monitoring
  4. Patterns Open Source Software usual cycle 1. Develop 2. Publish

    3. Use/Test 4. Contribute 5. Goto 1 There is not such approach in the InnerSource Commons
  5. Patterns What are patterns? A level of abstraction showing a

    proven solution to a problem with a context
  6. Patterns InnerSource Patterns help to try the Open Source Cycle

    internally The abstraction relies on understanding the problem and the solution (and applying that solution within your company) But we usually have donuts! We know the problem, the context, the forces, and the desired resulting context But we’re missing the solution... Donuts are great for brainstorming!
  7. Patterns Problem Short description. This describes what the issues and

    challenges are. Context Forces Resulting Context Solution
  8. Patterns Problem Context What are the pre-conditions of this problem?

    This is unchangeable before the solution goes into place. Forces Resulting Context Solution
  9. Patterns Problem Context Forces What makes the problem difficult? These

    are the constraints that can be changed at a cost. Resulting Context Solution
  10. Patterns Problem Context Forces Resulting Context Solution Verified or potential

    solutions to the problem. This solution will change some of the forces.
  11. Patterns - How to The abstraction relies on understanding the

    problem and the solution and applying that solution
  12. Patterns We have donuts! We know the problem, the context,

    the forces, and the desired resulting context But we’re missing the solution...
  13. Patterns - Community Effort What if we put on the

    table all of our problems and look for a solution all together?
  14. Patterns - Community Effort There are a lot of companies

    already doing this, come and participate!
  15. Patterns - Review Committee Forces Control & Support OSS Experience

    & Control Risks Micro-manage & InnerSource works
  16. Patterns - Review Committee Resulting Context Manager apply a method

    and feel comfortable Managers let developers work alone (IS bubble) Developers self-organize [Proven and applied at Bosch]
  17. Patterns - 30 Days Warranty Context Team A depends on

    Team B for accepting contributions That functionality is key for Team A The receiving team does not have resources/knowledge to write the contributed component
  18. Patterns - 30 Days Warranty Problem Team (B) developing is

    resisting to accept/reject contributions Progress is blocked or disrupted several times
  19. Patterns - 30 Days Warranty Forces Distrust of contributions between

    teams If there is code ‘not invented here’ developers are reluctant Each team looks for their top-managers to achieve goals (loyalty may complicate resolution) Aversion to taking responsibility for others’ code
  20. Patterns - 30 Days Warranty Solution Address the fears of

    both dev. teams by establishing a 30 (+) day warranty period Provide clear contribution guidelines to set expectations (when giving and receiving)
  21. Patterns - 30 Days Warranty Resulting Context The receiving team

    is willing to accept external contributions Increase transparency and fairness across business units Keeps in track the total effort and avoid this to become to heavy weight [Proven and Applied at PayPal]
  22. How to Contribute GitHub account at InnerSourcePatterns @ PayPal GitHub

    Open an Issue and start discussion Attend bi-weekly meetings Join the Slack channel Have a look at innersourcecommons.org
  23. Patterns - Community Safe place for discussion (anonymous) Help the

    community Produce and consume Good for internal selling (outside in marketing)
  24. Patterns - Community I do not want to become public!!!

    I do not want to get fired! No worries, there are gatekeepers!