2012.05 eclipse how it works
Post on 10-May-2015
1.653 Views
Preview:
DESCRIPTION
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
Polarsys
24-May-2012 Copyright (c) 2012, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 54
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