2012.05 eclipse how it works

Post on 10-May-2015

1.653 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Presentation at the Eclipse Day Toulouse event on May 24, 2012

TRANSCRIPT

Eclipse: How It Works

Ian SkerrettVice President MarketingEclipse Foundation

Agenda

• A quick introduction to Eclipse• Eclipse Open Source Engineering Processes• Open Source Business 101• The Open Source Maturity Model• Eclipse Industry Working Groups

24-May-2012 Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 2

Open Source Questions

• Is Open Source chaotic?• How does development really work?• What about the Open Source community?• How do you manage community

contributions?• How do you plan in Open Source?

24-May-2012 3Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

Agenda

• A quick introduction to Eclipse• Eclipse Open Source Engineering Processes• Open Source Business 101• The Open Source Maturity Model

24-May-2012 Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 4

Eclipse: The Leading Developer Community

24-May-2012 5Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

Members of Eclipse

24-May-2012 6Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

185 members 11 Strategic Members

1 Enterprise Member 1025 committers, representing 100+ organizations

The Members of Eclipse

Strategic Members

Enterprise Members

24-May-2012 8Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

Eclipse 3.0 Eclipse 3.1 Callisto Europa Ganymede Galileo Helios Indigo0

10

20

30

40

50

60

70

3

7

10

2123

33

39

62

1718

24

33

46

8 Years in a Row

Indigo62 Projects46 Million Lines of Code400+ committers49 companies18 countries

24-May-2012 9Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

So Eclipse Has...

• Millions of users• Thousands of products• One thousand developers• Hundreds of companies, hundreds of projects• Predictable schedules• World class intellectual property management• Fifteen employees

24-May-2012 Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 10

Agenda

• A quick introduction to Eclipse• Eclipse Open Source Engineering Processes• Open Source Business 101• The Open Source Maturity Model

24-May-2012 Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 11

Eclipse 3.0 Eclipse 3.1 Callisto Europa Ganymede Galileo Helios Indigo0

10

20

30

40

50

60

70

3

7

10

2123

33

39

62

1718

24

33

46

8 Years in a Row

Indigo62 Projects46 Million Lines of Code

24-May-2012 12Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

Platform Modularity: The Eclipse Experience

Run-time

Plug-insP

latf

orm

New Plug-ins are First Class Citizens – same footing for everyone

Open API and commercially friendly licensing – Low barriers to Entry

Ease of Integration and Extensibility Spurs Innovation

Competition can take place on implementations – users decide winners

Successful Ecosystems are built on this model!

24-May-2012 13Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

The Project Lifecycle

24-May-2012 Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 14

How is the Development Done?

milestonesfirst

APIfirst

endgame

retrospectives

always havea client

built tolast

continuousintegration

community involvement

new & noteworthy

early incremental planning

continuous testing

consume yourown output

componentcentric

drive with open eyes

validate

reduce stress

learn

enable

attract to latest

transparency

validateupdate

dynamic teams

show progress

enable

explore

validate

“The Eclipse Way”Erich Gamma and John Wiegand

24-May-2012 15Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

Open Source Rules• OS projects are highly structured

– explicit rules (more than in most closed source projects)– Who may change the source code?– Who is responsible for delivering?– Who decides about the architecture?– …

• Commit rights: public "meritocracy"– only a small number of developers can modify the source code:

committers– key architecture defined by a small team of lead developers– peer pressure among committers – continuous reviewing– continuous review and feedback by the community– contributions from outside have to be reviewed by committers

24-May-2012 16Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

Planning

milestonesfirst

APIfirst

endgame

retrospectives

always havea client

built tolast

continuousintegration

community involvement

new & noteworthy

early incremental planning

continuous testing

consume yourown output

componentcentric

drive with open eyes

validate

reduce stress

learn

enable

attract to latest

transparency

validateupdate

dynamic teams

show progress

enable

explore

validate

24-May-2012 17Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

Planning• Release themes establish big picture

– Community input– Planning council new source of input

• Component teams define component plans• Project Management Committee collates initial project plan

draft – Tradeoff: requirements vs. available resources– committed, proposed, deferred

• Plan initially spells out– themes– milestones– compatibility (contract, binary, source, workspace)

• Plan is alive

24-May-2012 18Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

Ongoing Risk Assessment

• Address high risk items and items with many dependencies early

• Maintain schedule by dropping items (if necessary)– we will drop proposed items – we hate to drop committed items– prefer fewer completed items than more items in progress

• High risk items are sandboxed to reduce risk to other items– prefer to serialize highest risk items (to minimize

integration pain)

24-May-2012 19Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

Project Rhythm

milestonesfirst

APIfirst

endgame

retrospectives

always havea client

built tolast

continuousintegration

community involvement

new & noteworthy

early incremental planning

continuous testing

consume yourown output

componentcentric

drive with open eyes

validate

reduce stress

learn

enable

attract to latest

transparency

validateupdate

dynamic teams

show progress

enable

explore

validate

24-May-2012 21Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

Milestones• break down release cycle into milestones

– We use 6 weeks

• milestones are a miniature development cycle

– Plan, execute, test, retrospective

• milestone builds are good enough to be used by the community

milestones reduce stress, keep quality high

• before/after

t

quality

ready to ship

3.5 3.6“hanging rope”

Continuous Integration

• Fully automated build process• Build quality verified by automatic unit tests • Staged builds

– nightly builds (some projects even more frequently)• discover integration problems between components

– weekly integration builds• all automatic unit tests must be successful• good enough for our own use

– milestone builds• good enough for the community to use

24-May-2012 23Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

Practice Makes Perfect

• 7 milestones, 4 release candidates– 11 chances to practice releasing

• Projects denoted N0, N1, N2, N3 – Build in order of dependencies– Early builds takes days, later builds take hours

• Build to shared repository, make everything available to the community for feedback and testing

24-May-2012 Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 24

Community Involvement• An active community is the major asset of an OSS project• OSS project gives and takes:

– OSS developer gives: • listen to feedback and react• demonstrate continuous progress • transparent development

– OSS developer takes:• answer user questions so that developers do not have to do it• report defects and feature requests• validate technology by writing plug-ins• submit patches and enhancements

• Give and take isn’t always balanced– community isn’t shy and is demanding

24-May-2012 26Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

Testing

milestonesfirst

APIfirst

endgame

retrospectives

always havea client

built tolast

continuousintegration

community involvement

new & noteworthy

early incremental planning

continuous testing

consume yourown output

componentcentric

drive with open eyes

validate

reduce stress

learn

enable

attract to latest

transparency

validateupdate

dynamic teams

show progress

enable

explore

validate

24-May-2012 27Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

Testing • Innovate with confidence

• Tests run after each build

• Test kinds– correctness tests

• assert correct behavior– performance tests

• assert no performance regressions– based on a database of previous test run measurements

– resource tests, leak tests• assert no resource consumption regressions

DefectsTesting

Kent Beck – JUnit handbook

Agenda

• A quick introduction to Eclipse• Eclipse Open Source Engineering Processes• Open Source Business 101• The Open Source Maturity Model

24-May-2012 Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 34

Why?

• Do any of these matter to your organization?– Cost– Time to market– Agility– Innovation– Industry standards and platforms– Safety– Security

24-May-2012 Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 35

Software Matters to Your Business

24-May-2012 Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 36

© A

IRB

US

FR

AN

CE

S.A

.S. T

ous

droi

ts r

éser

vés.

Doc

umen

t co

nfid

entie

l.

The avionics software beginnings • First significant use of software for avionics : the 80’s

6768 4697071727374 237576777879

200k - A300FF

23k - A300B

4 k

2 M - A310 4 M - A320

12 M - A330/340

1

10

100

1000

10000

65 70 75 80 85 90 95

Year

vo

lum

e (

k.b

yte

s)

24-May-2012 Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 38

50 – 100 networked

ECUs

Mercedes S-ClassInfotainment Subsystem20 Mio. LOC

90% of automotive innovations are realised by software

Why an Open Source Platform?• Open Source development model encourages open

innovation– Openness, Transparency, Meritocracy– Vendor neutrality

• Open Source licensing allows competitors to collaborate on shared platforms– No requirement for royalties.– No single control point of intellectual property

• Open Source business model encourages rapid adoption of technology– It is free and easy to access

• Open Source can allow companies to disrupt the business models of their competitors and their supply chain

24-May-2012 Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 39

The Traditional Software Business Model is Broken

Software development cost structures today have no correlation to creating value for customers

80% of new development and maintenance investment goes to build and support infrastructure for which companies derive zero differentiating product value

Infra

Value

24-May-2012 40Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

Compete On What Matters

Build this in and with open source, even if that means working with your direct competitors.

Define very precisely what your competitive differentiators are for your customers or you’re going out of business

Focus all possible energies there, and acquire everything else from OSS, or help build it in OSS

Infra

Value

24-May-2012 41Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

Or in other words…

Collaborate on the platform

Compete on systems

Infra

Value

24-May-2012 42Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

Agenda

• A quick introduction to Eclipse• Eclipse Open Source Engineering Processes• Open Source Business 101• The Open Source Maturity Model

24-May-2012 Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 44

Maturity Model

24-May-2012 Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 45

0DENY

VALUEAPPROPRIATED

SINGLE PROJECT MULTIPLE PROJECT

TIME

SCOPE

BUSINESS DRIVENENGINEERING DRIVEN

1USE

2CONTRIBUTE

3CHAMPION

VALUE CO-CREATION

VALUE APPROPRIATION

COUPLING MANAGEMENT

ISV Business Drivers

24-May-2012 Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 46

Use Contribute Champion Collaborate Redefine

Explore

Reduce build costs

Decrease time to market

Fill gaps in feature set of company’s product

Improve software quality

Champion OS project

Steer new functionality and its evolution

Gain positional advantage for company’s product in a market segment

Change value proposition of offer delivered to customers

Enterprise Business Drivers

24-May-2012 Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 47

Use Contribute Champion Collaborate Redefine

Explore

Reduce build costs

Decrease time to market

Fill gaps in feature set of company’s product

Improve software quality

Champion OS project

Steer new functionality and its evolution

Create an industry platform for shared infrastructure

Redefine the relationship with your supply chain

Eclipse Moving Forward

• How can we apply Eclipse best practices to building Industry platforms?

• How to enable collaboration and innovation around a common platform?

Eclipse Industry Working Group

• Provide a governance structure at Eclipse for industry collaborations and open innovation

• Enable end-user centric collaborations• Open source projects continue to focus on

building and shipping code

Eclipse Industry Working Group

• Legal and licensing framework for sharing IP• Governance structure to ensure vendor

neutrality• Best practices for large-scale distributed

development• Technical architecture that allows of

independent and shared innovation

Automotive IWG

24-May-2012 Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 55

Machine-to-Machine

24-May-2012 Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 56

Thank You!

Questions?

Ian.skerrett@eclipse.org@ianskerrett

24-May-2012 Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 57

top related