Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1....

32
1 © OpenLogic, Inc. - Licensed under CC-BY | Best Practices for Open Source Compliance and Governance in Automotive Kim Weins SVP, OpenLogic November 2011

Transcript of Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1....

Page 1: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

1 © OpenLogic, Inc. - Licensed under CC-BY |

Best Practices for Open Source Compliance and Governance in Automotive

Kim WeinsSVP, OpenLogicNovember 2011

Page 2: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

2 © OpenLogic, Inc. - Licensed under CC-BY |

Agenda

Open source in Automotive Why Comply? Challenges of Compliance Best practices

2

Page 3: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

3 © OpenLogic, Inc. - Licensed under CC-BY |

End-to-End Open Source Management

Enabling Successful and Safe Open Source AdoptionAt Hundreds of Enterprises

Software ServicesSupport+ +

In the Data Center In the Cloud

Page 4: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

4 © OpenLogic, Inc. - Licensed under CC-BY |

Open Source in the Car

4

Page 5: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

5 © OpenLogic, Inc. - Licensed under CC-BY |

And Outside the Car

5

Cloud-BasedServices

Mobile Apps

Page 6: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

6 © OpenLogic, Inc. - Licensed under CC-BY |

But Compliance is an Issue

OSS licenses you think you are using

OSS licenses you REALLY are using

3-5x

Developers List Scan Results

Page 7: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

7 © OpenLogic, Inc. - Licensed under CC-BY |

Compliance in Mobile Apps

7

71% of Apps using Open Source

under GPL, LGPLand Apache

do not comply

Comply29%

Do Not Comply71%

Source: OpenLogic Mobile Research 3/2011

Page 8: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

8 © OpenLogic, Inc. - Licensed under CC-BY |8

Why comply?

Page 9: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

9 © OpenLogic, Inc. - Licensed under CC-BY |

It’s The Right Thing to Do

9

ProprietarySoftware

License

Open Source Package

License

Page 10: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

10 © OpenLogic, Inc. - Licensed under CC-BY |

Supply Chain Customers Demand It

10

Contract Terms

Licensor shall disclose to Customer any Open Source included in the Work Product provided pursuant to this Agreement and shall warrant that Work Product complies with all of the relevant Open Source licenses.

Page 11: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

11 © OpenLogic, Inc. - Licensed under CC-BY |

Legal Action

11

Source: Ars Technica

Source: cnet

Source: The Inquirer

Page 12: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

12 © OpenLogic, Inc. - Licensed under CC-BY |

Consumers Notice

12

Page 13: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

13 © OpenLogic, Inc. - Licensed under CC-BY |

Loss of Your IP

13

Derivative work? Depends on the license and how you combine the code

Open Sourceunder

“Copyleft”license

Your codeLinking

Page 14: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

14 © OpenLogic, Inc. - Licensed under CC-BY |14

What are the challenges?

Page 15: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

15 © OpenLogic, Inc. - Licensed under CC-BY |

Three Challenges

1. Bundled licenses2. SW development practices3. Supply chain complexity

15

Page 16: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

16 © OpenLogic, Inc. - Licensed under CC-BY |

Bundled Licenses

16

Open Source Package

License

Main LicenseBundled LicenseBundled LicenseBundled License

What most people think

Reality

Main Open SourcePackage

Bundled Open Source Packages

Page 17: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

17 © OpenLogic, Inc. - Licensed under CC-BY |

Software Development Practices

17

SourceForge

Google Code

GitHub

and more….

Your Source Code

FREE!

Page 18: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

18 © OpenLogic, Inc. - Licensed under CC-BY |

Supply Chain Complexity

18

Your Source Code

Software from vendors

Page 19: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

19 © OpenLogic, Inc. - Licensed under CC-BY |19

ComplianceBest Practices

(Be aware, not afraid)

Page 20: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

20 © OpenLogic, Inc. - Licensed under CC-BY |

Compliance Best Practices

1. Understand open source licensing2. Create an open source policy3. Track all open source usage – including from vendors4. Conduct a scan or audit of your code5. Develop a compliance checklist

20

Page 21: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

21 © OpenLogic, Inc. - Licensed under CC-BY |

1. Understand OSS Licensing

Official definition of OSS license– Approved by the Open Source Initiative (OSI)

• http://www.opensource.org/– Currently over 70 approved licenses– Key Criteria

• Free distribution• Source code is available• Derived works are allowed• Non-discrimination

Many other “non-OSI” open source licenses

21

Page 22: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

22 © OpenLogic, Inc. - Licensed under CC-BY |

Categorizing Open Source Licenses

22

StringsAttached

Liberal

NoStrings

Copyleft

AdditionalClauses

“Traditional”Open Source

MIT/XW3C

Original BSDApache Software LicenseEclipse Public License

GNU GPLGNU LGPL

GNU GPL v3GNU AGPLCommon Public LicenseMozilla Public LicenseSISSLIBM Public License

Page 23: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

23 © OpenLogic, Inc. - Licensed under CC-BY |

2. Create an Open Source Policy

Things to include– Licenses allowed– Approval processes– Audit and compliance processes

Considerations– Keep it lightweight– Don’t let fear guide you

23

Page 24: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

24 © OpenLogic, Inc. - Licensed under CC-BY |

3. Track all Open Source Usage: Why?

Know what you are using Identify opportunities for sharing or savings Legal & compliance Maintenance Support

24

Page 25: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

25 © OpenLogic, Inc. - Licensed under CC-BY |

Vendor Best Practices

Contract Requirements– Disclosure– Approval– Warranties– Indemnification– Scanning/Audit requirements

Best Practices– Discuss open source with them early in the project– Get list of open source early in development cycle– Get a final list of open source when they provide final code– Get source code from vendor if at all possible (not just binaries)– Either scan all incoming code that you plan to distribute or consider spot

audits

25

Page 26: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

26 © OpenLogic, Inc. - Licensed under CC-BY |

Getting Binaries vs Source Code

Why you want to get source code from vendors– Source code scanning is more accurate than binary scanning– You can scan it and verify what open source is there– Your company must comply with open source licenses coming from

vendors– Many vendors don’t have strong open source compliance programs– Relying on “manual, self-reporting” is extremely inaccurate

If you accept binaries from vendors, consider the following– Does the vendor have an open source governance policy/process?– Does the vendor scan their own code?– Will the vendor supply you with results of scan?– Will the vendor warrant and indemnify around use of open source?– Is the vendor of sufficient size to make good on indemnification?– What is cost to you if the vendor gets it wrong?

• Stop shipment? • Legal costs?• Reputation risks?

26

Page 27: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

27 © OpenLogic, Inc. - Licensed under CC-BY |

Create “Risk Tiers” for Software You Provide

Risk Tier 1 – Fundamental– Product doesn’t work without it– Examples: Car dashboard, Anything that runs the car

Risk Tier 2 – Critical to “experience”– Product works without it, but not a great experience– Examples: Entertainment system

Risk Tier 3 – Nice to haves– Examples: Optional “apps” or add-ons

27

Page 28: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

28 © OpenLogic, Inc. - Licensed under CC-BY |

Align Vendor Requirements to Risk Tier

28

Risk Tier Acceptable Formats

Requirements

Risk Tier 1Fundamental

Source code You scan

Risk Tier 2Critical

Source code or binaries

You scan or vendor scans and provides

Risk Tier 3Nice to Have

Binaries Vendor scans and provides Bill of Materials

Page 29: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

29 © OpenLogic, Inc. - Licensed under CC-BY |

4. Conduct a scan or audit of your code

Outcome of an OSS audit:– List of open source packages– List of open source licenses– List of license obligations (compliance checklist)– List of licenses that may have conflicting terms

Options– Scanning tools– Audit services– Manual review

Page 30: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

30 © OpenLogic, Inc. - Licensed under CC-BY |

5. Develop a compliance checklist

Create a compliance checklist:– Notices in code and/or documentation– Source code provided in proper way– Is there an EULA for your product?

If there are conflicts or compliance is not possible:– Can you live without this code?– Is there an alternative to the code?– Can you contact the author and ask for an exception/different license?

Risk management:– What is likely to get litigated?– What are your sticking points that prevent perfect compliance?

Page 31: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

31 © OpenLogic, Inc. - Licensed under CC-BY |

Complying with Licenses

Page 32: Best Practices for Open Source Compliance and Governance ... · Compliance Best Practices 1. Understand open source licensing 2. Create an open source policy 3. Track all open source

32 © OpenLogic, Inc. - Licensed under CC-BY |

Thanks!

Learn more– www.openlogic.com– Free resources at www.openlogic.com/downloads

• Policy Builder• Whitepaper: Open Source Compliance in the Supply Chain

– SPDX • www.spdx.org

My contact infromation– [email protected]

Follow– @openlogic– @KimAtOpenLogic

32