17
Open Source with Open Source: Component Mngmt with SW360 Speakers Johannes Kristan (Bosch Software Innovations GmbH), Michael C. Jaeger (Siemens AG)

Open Source with Open Source: Speakers Johannes Kristan ...events.static.linuxfound.org/sites/events/files/slides/(FINAL)Mr. Johannes...The Data Model is Important Goals and Motivation

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Open Source with Open Source: Speakers Johannes Kristan ...events.static.linuxfound.org/sites/events/files/slides/(FINAL)Mr. Johannes...The Data Model is Important Goals and Motivation

Open Source with Open Source:Component Mngmt with SW360SpeakersJohannes Kristan (Bosch Software Innovations GmbH), Michael C. Jaeger (Siemens AG)

Page 2: Open Source with Open Source: Speakers Johannes Kristan ...events.static.linuxfound.org/sites/events/files/slides/(FINAL)Mr. Johannes...The Data Model is Important Goals and Motivation

Introduction

“If Software Is Eating The World, Then Open Source Will Chew It Up (And Swallow)”Adrian Bridgwater

Page 3: Open Source with Open Source: Speakers Johannes Kristan ...events.static.linuxfound.org/sites/events/files/slides/(FINAL)Mr. Johannes...The Data Model is Important Goals and Motivation

Open Source Licensing

Distributing open source software requires to• Provide licenses of involved software• Provide copyright statements of involved authors• Provide disclaimers• … and much more

Page 4: Open Source with Open Source: Speakers Johannes Kristan ...events.static.linuxfound.org/sites/events/files/slides/(FINAL)Mr. Johannes...The Data Model is Important Goals and Motivation

Open Source Project Info

Project LivenessCode Quality

Vulnerability Expertise

Page 5: Open Source with Open Source: Speakers Johannes Kristan ...events.static.linuxfound.org/sites/events/files/slides/(FINAL)Mr. Johannes...The Data Model is Important Goals and Motivation

What is Needed?

Software ProductLicense

LivenessQuality

Expertise

Component? !

LicenseLiveness

Quality

Expertise

Component

LicenseLiveness

Quality

Expertise

Component

LicenseLiveness

Quality

Expertise

Component

Software Product

Component

License

Liveness

Quality

Expertise

Component

License

Liveness

Quality

Expertise

Component

License

Liveness

Quality

Expertise

Component

License

Liveness

Quality

Expertise

Page 6: Open Source with Open Source: Speakers Johannes Kristan ...events.static.linuxfound.org/sites/events/files/slides/(FINAL)Mr. Johannes...The Data Model is Important Goals and Motivation

Use Cases and Roles

Ensure Compliance

Maintain Assets

Share Knowledge

Developers and Experts

Architects

R&DManagers

Quality Managers

Legal Counsels

ProjectManagers

Sec Officer

Page 7: Open Source with Open Source: Speakers Johannes Kristan ...events.static.linuxfound.org/sites/events/files/slides/(FINAL)Mr. Johannes...The Data Model is Important Goals and Motivation

Central Hub

License Scanner

SW360

{ "_embedded" : { "sw360:components" : [ { "type" : "component", "name" : "Angular", "componentType" : "OSS", "createdOn" : "2016-12-15", "vendorNames" : [ "Google" ],

ArtefactRepository

Source Code Scanner

Code Quality Checker

Vulnerability Management

Project BOM Management

• Collect• Aggregate• Correlate• Enrich

Page 8: Open Source with Open Source: Speakers Johannes Kristan ...events.static.linuxfound.org/sites/events/files/slides/(FINAL)Mr. Johannes...The Data Model is Important Goals and Motivation

Eclipse SW360○ An Eclipse Foundation incubator project

○ Eclipse Public License 1.0 (EPL-1.0)○ A portal application○ A catalogue of components, releases○ A catalogue of your projects / products○ A store for attachments of these○ A end user front end to FOSSology

SW360 is …github.com/sw360

Page 9: Open Source with Open Source: Speakers Johannes Kristan ...events.static.linuxfound.org/sites/events/files/slides/(FINAL)Mr. Johannes...The Data Model is Important Goals and Motivation

Technology Used

Storage

InternalServices

Search

ComponentContainer

REST APIUI Integration {RESTful}

Page 10: Open Source with Open Source: Speakers Johannes Kristan ...events.static.linuxfound.org/sites/events/files/slides/(FINAL)Mr. Johannes...The Data Model is Important Goals and Motivation

Foundation

Component

ReleaseProject Vendor

Licenses

Page 11: Open Source with Open Source: Speakers Johannes Kristan ...events.static.linuxfound.org/sites/events/files/slides/(FINAL)Mr. Johannes...The Data Model is Important Goals and Motivation

The Data Model is Important

Goals and Motivation○ Reduction of duplicate entries○ Separating vendor from component names and release tags brings clarity to component

naming○ Interoperation with other systems

■ As such we need to support the CPE standard which also implement this 3-parts separation

○ Having the clear modeling of data enables better search and filtering abilities

Page 12: Open Source with Open Source: Speakers Johannes Kristan ...events.static.linuxfound.org/sites/events/files/slides/(FINAL)Mr. Johannes...The Data Model is Important Goals and Motivation

How it Works

AddPackage

(Upload) to Release

Create Component

Entry

AddRelease

Entry

• Multiple open source packages of the same releases: multiple releases actually

• There should be just one upload per release

• A component is a container for releases

• Just creating a component alone creates an empty shell

• Release = Version• A component can have

multiple releases• It makes sense to group

them• Now a vendor can be

assigned

Page 13: Open Source with Open Source: Speakers Johannes Kristan ...events.static.linuxfound.org/sites/events/files/slides/(FINAL)Mr. Johannes...The Data Model is Important Goals and Motivation

How it Works

Review and Manage BOM Items

Create ProjectEntry

AddReleases,

Subprojects

• Send to analysis

• Upload analysis results

• Generate product level documentation

• A project is a structure to main a BOM

• Can represent product, service, delivery

• Release = Version of component

• Projects can contain other projects

• Allows for building blocks

Page 14: Open Source with Open Source: Speakers Johannes Kristan ...events.static.linuxfound.org/sites/events/files/slides/(FINAL)Mr. Johannes...The Data Model is Important Goals and Motivation

SW360 Core Features

Protex™

FOSSology

ConfigurationManagement

Vulnerability Database

Catalogueof 3rd Party Components

ComponentService

License Texts with Obligations Management

LicenseService

Code Quality Scanner

Projects with used 3rd party components

BOMService

ClearingWorkflow and Tool Integration

ClearingService

retrieve

map

generate

Source CodeBundle

Developer

Project Manager

OS Officer

Sec Officer

inform

notify

QualityObligationsContacts

VulnerabilitiesLicense issuesClearing Info

import

External Tool Integration

Operated on Local Infrastructure with Access Control and Identity Management

Disclosure Document

BOM Represent.

…Operated on Local Infrastructure with Access Control and Identity Management

Project Management

Page 15: Open Source with Open Source: Speakers Johannes Kristan ...events.static.linuxfound.org/sites/events/files/slides/(FINAL)Mr. Johannes...The Data Model is Important Goals and Motivation

We are on Github!

www.github.com/sw360

GITHUB®, the GITHUB® logo design, OCTOCAT® and the OCTOCAT® logo design are exclusive trademarks registered in the United States by GitHub, Inc.

Page 16: Open Source with Open Source: Speakers Johannes Kristan ...events.static.linuxfound.org/sites/events/files/slides/(FINAL)Mr. Johannes...The Data Model is Important Goals and Motivation

Michael C. JaegerSiemens AG Corporate TechnologyD-80200 Munich, [email protected]

Johannes KristanBosch Software Innovations GmbHD-10785 Berlin, [email protected]

Project site:https://github.com/sw360Eclipse project information:https://projects.eclipse.org/projects/technology.sw360

Page 17: Open Source with Open Source: Speakers Johannes Kristan ...events.static.linuxfound.org/sites/events/files/slides/(FINAL)Mr. Johannes...The Data Model is Important Goals and Motivation

1. SonarQube TM and the SonarQube Logo are Trademark of SonarSource By SonarSource - SonarSource, CC BY 3.0, https://commons.wikimeddia.org/w/index.php?curid=27076948

2. Apache Tomcat TM and the Tomcat Logo are trademark of the Apache Software Foundation By The Apache Software Foundation http://svn.apache.org/viewvc/jakarta/site/xdocs/images/logos/tomcat.eps, Apache License 2.0, https://commons.wikimedia.org/w/index.php?curid=11302180

3. Apache Lucene TM and the Lucene Logo are trademark of the Apache Software Foundation http://en.wikipedia.org/wiki/Image:Lucene_logo_green_300.png, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=905779

4. Apache CouchDB TM and the CouchDB Logo are trademark of the Apache Software Foundation5. Apache Thrift TM and the Thrift Logo is trademark of the Apache Software Foundation6. Docker TM and the Docker Logo are Trademark of Docker Inc.

https://www.docker.com/sites/default/files/legal/DockerMarks_may2017.zip7. JFrog TM and the JFrog Logo are Trademark of JFrog https://www.jfrog.com/brand-guidelines/8. Liferay TM and the Liferay Logo are Trademark of Liferay, Inc., https://www.liferay.com/de/trademark9. ‘Eclipse’, ‘Built on Eclipse’ and ‘Eclipse Ready’, ‘SW360’ are trademarks of Eclipse Foundation, Inc.

https://eclipse.org/legal/logo_guidelines.php10. Sonarqube Dashboard Screenshot by SonarSource - SonarSource, CC BY 3.0,

https://commons.wikimedia.org/w/index.php?curid=2707694911. The Octocat logo is a Registered Trademark of github.com https://github.com/logos12. https://www.forbes.com/sites/adrianbridgwater/2015/04/24/if-software-is-eating-the-world-then-open-source-will

-chew-it-up-and-swallow/#4f4feb933902