Applying inner source development in product line engineering



Similar documents
Embedded Systems in Healthcare. Pierre America Healthcare Systems Architecture Philips Research, Eindhoven, the Netherlands November 12, 2008

Family Evaluation Framework overview & introduction

A Framework for Software Product Line Engineering

An introduction to the benefits of Application Lifecycle Management

Enhance visibility into and control over software projects IBM Rational change and release management software

Accelerated IT. Jeroen Tas, CIO Royal Philips Electronics

Creative Shorts: Twelve lifecycle management principles for world-class cloud development

Image Area. View Point. Medical Imaging. Advanced Imaging Solutions for Diagnosis, Localization, Treatment Planning and Monitoring.

Global Delivery Excellence Best Practices for Improving Software Process and Tools Adoption. Sunil Shah Technical Lead IBM Rational

HP SOA Systinet software

Cisco Unified Communications and Collaboration technology is changing the way we go about the business of the University.

ENABLING TODAY S WIRELESS ENTERPRISE

ehealth Architecture Principles

Assessment of Software for Government

The Real Challenges of Configuration Management

Nexus Professional Whitepaper. Repository Management: Stages of Adoption

C O L L A B N E T W H I T E P A P E R

What is Application Lifecycle Management? At lower costs Get a 30% return on investment guaranteed and save 15% on development costs

!!!!!! "#$%&'&()%*+,-))!.'',(+-$(/#!0%,%-)%!.1$/2-$(/#!.!3%)$!4&-+$(+%!!!!

Open Source ERP for SMEs

IBM Rational DOORS Next Generation

Software Development In the Cloud Cloud management and ALM

FUJITSU Transformational Application Managed Services

Improving database development. Recommendations for solving development problems using Red Gate tools

WHITEPAPER. Improving database development

Merge Healthcare Cardiology Differentiators. A Merge White Paper

IBM Software IBM Business Process Management Suite. Increase business agility with the IBM Business Process Management Suite

Top Ten Reasons to Transition Your IT Sandbox Environments to the Cloud

The NREN s core activities are in providing network and associated services to its user community that usually comprises:

Surveying and evaluating tools for managing processes for software intensive systems

Autonomic computing: strengthening manageability for SOA implementations

Open Source Telephony. for Government

IBM Enterprise Content Management Product Strategy

ICT 10: Software Technologies

Document Management. Document Management for the Agile Enterprise. AuraTech Pte Ltd

Picasso Recommendation

We ( have extensive experience in enterprise and system architectures, system engineering, project management, and

NTT i 3 Cloud Services Orchestration Platform

IT Operations Management: A Service Delivery Primer

Chapter 9 Software Evolution

Software change and release management White paper June Extending open source tools for more effective software delivery.

Outsourced Infrastructure Management

JBoss enterprise soa platform

SOA IN THE TELCO SECTOR

Profile. Business solutions with a difference

Software Engineering. So(ware Evolu1on

Software development for the on demand enterprise. Building your business with the IBM Software Development Platform

Using Git with Rational Team Concert and Rational ClearCase in enterprise environments

ICT 10: Software Technologies

GETTING STARTED WITH ANDROID DEVELOPMENT FOR EMBEDDED SYSTEMS

The Cisco Mobility Express Solution

Modern SOA Testing. A Practitioners Guide to. July 2011

Software Continuous Integration & Delivery

Successfully managing geographically distributed development

Anatomy of an Enterprise Software Delivery Project

See what cloud can do for you.

Agile SPL-SCM: Agile Software Product Line Configuration and Release Management

Address IT costs and streamline operations with IBM service desk and asset management.

Prof. Dr. Lutz Heuser SAP Research

Seven Challenges of Embedded Software Development

Pantheon. Welcome under our roof. Healthcare Group

Introduction to Systinet. SOA Governance and Lifecycle Management

Applying Information Lifecycle Management Strategies Enables Healthcare Providers to Accelerate Clinical Workflow

openmdm an Open Source Platform for Measured Data Management Dr. Dietmar Rapf, Michael Schwarzbach

Optimize Workforce Scheduling for Vastly Improved Aftersales Operations

Distributed Agile Development in the Cloud

NEW HYBRID IMAGING TECHNOLOGY MAY HAVE BIG POTENTIAL FOR IMPROVING DIAGNOSIS OF PROSTATE CANCER

Global Government Affairs, Regulations and Standards. I want to start by thanking

Learn How to Leverage System z in Your Cloud

D6.1: Service management tools implementation and maturity baseline assessment framework

Creating and Embedding a Customer Driven Supply Chain

DCML - The Standard that Enables ITIL Compliance

ITIL A guide to incident management

Continuous delivery Release software on-demand, not on Red Alert

openmdm an Open Source Platform for Measured Data Management Dr. Dietmar Rapf, Michael Schwarzbach

ORACLE PRODUCT DATA HUB

Customer Relationship Management - a strategic approach

CA Service Desk On-Demand

GPS G-Cloud Lot 4: Oracle Business Intelligence Cloud Consultancy Service Definition

Integrated tools for collaborative software development

Implement a unified approach to service quality management.

Transcription:

Applying inner source development in product line engineering g Frank van der Linden CTO Office Spider April 19, 2011 frank.van.der.linden@philips.com

Overview Background Philips Healthcare Funded EU projects Software product lines & open source Inner source Conclusion CTO Office, Frank van der Linden, April 19, 2011 2

Philips Healthcare Imaging g systems supporting medical diagnosis Extensive image processing Image storage Image exchange Image viewing Different modalities : X-Ray, MRI, Ultrasound, PET CTO Office, Frank van der Linden, April 19, 2011 3

Philips Healthcare increase of scope Moving to imaging g support during intervention Hearth catheterisation Minimal invasive surgery Moving to cover the whole care cycle Prevention, screening, diagnosis, treatment, management, surveillance CTO Office, Frank van der Linden, April 19, 2011 4

Philips Healthcare Businesses and products General X-ray Cardio/Vascular X-ray Ultrasound Computed Tomography Magnetic Resonance Imaging Nuclear Medicine Positron Emission Tomography Radiation Therapy Planning Cardiac and Monitoring Systems Healthcare Informatics Customer Services CTO Office, Frank van der Linden, April 19, 2011 5

Overview Background Philips Healthcare Funded EU projects Software product lines & open source Inner source Conclusion CTO Office, Frank van der Linden, April 19, 2011 6

Funded EU projects EU Esprit projects ARES & Praise (1995-2000) 13 years of European partnership ITEA projects projects ESAPS-CAFÉ-FAMILIES (1999-2005) Total > 40 European partners Introduction of product lines COSI (2005-2008) 2008) Co-development using inner & Open source in Software Intensive products Open source development Time 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 CTO Office, Frank van der Linden, April 19, 2011 7

Why Software Product Line Development? Business Drive Software development improvement Improve software production Reduce development cost process Reduce product lead-time Learn from mechanical Reduce maintenance engineering technologies Feature propagation Fast generation of software Quality Software platform Common look-and-feel development Managed reuse Managed reuse Fast production of variants Variability management & Software mass customisation platform Managed variability CTO Office, Frank van der Linden, April 19, 2011 8

Product Line development experienced advantages Product cost reduction 60-70% Improved productivity Factor 2-6 higher output Investment reduction av. 50%, up to 90% Quality improvement Product defect density < 50% Reuse of test cases 40-60% Product lead-time reduction Ease of configuring av. 50% faster, up to 95% Maintenance cost reduction Portfolio complexity reduction av. 50% less components Training time reduction Development effort & cost per system Single system Platform Family system Number of systems produced Data based on measurements by industrial partners in the projects CTO Office, Frank van der Linden, April 19, 2011 9

Product Line development in embedded systems Product lines in embedded systems Since ~1990 Enable managed reuse and managed variability Main elements Two development processes Explicit variability Means Platforms Explicit Variation model: Variation points & variants Configurations Decision support on variants CTO Office, Frank van der Linden, April 19, 2011 10

Distributed development: COSI How to manage the complexity of heterogeneous distributed development Challenges Large groups working on the same software Development groups are distributed Software shifts to commodity 3 rd party software is increasingly used COSI Consortium: 5 Industries 8SME 2 Research institutes 4 Universities CTO Office, Frank van der Linden, April 19, 2011 11

Commodification of software technology differentiating losing intellectual property basic for the business COTS Open source commodity wasting valuable engineering resources intra company inter open companies cooperation Software that was originally differentiating gets to be obtained as commodity CTO Office, Frank van der Linden, April 19, 2011 12

BAPO concerns of software engineering g Business Costs & profits, strategy, planning Business Orientation Architecture Technical means to build the software Variability Management Architecture-Centric Development Process Roles, responsibilities & their relationships Two-Lifecycle model Organisation People & organisational structures Two-Lifecycle model B Business A Architecture P Process O Organisation CTO Office, Frank van der Linden, April 19, 2011 13

Leveraging g OS opportunities 1 developing with OSS practices inner source 2 using OSS tools in developing products 3 developing products containing OSS 4 developing OSS products 5 engaging and leverage the community Open process 1 Practices process 2 OS tools repository 3 Using OSS product 4 OSS products 5 Symbioti 4 Opening up relationshi repository product Closed CTO Office, Frank van der Linden, April 19, 2011 14

Inner source Open process repository product 1 Practices 3 Using OSS 4 OSS products 5 Symbiot 2 OS tools 4 Opening uprelationsh process Exploit the OS distributed development repository advantages within a company Closed Easy access to all information of the product line Release early and often Distributed ownership and control of domain assets Cooperative eco-system of development teams Avoid problems with planning, ownership and control Use organisation i mechanisms Escalation of conflicts Roadmaps Results: Improved involvement of the application teams in the domain Improved platform use Reduced d time-to-markett t product CTO Office, Frank van der Linden, April 19, 2011 15

Using open source tools Open process repository product 1 Practices 3 Using OSS 4 OSS products 5 Symbiot 2 OS tools 4 Opening uprelationsh process Open source software not in the final product repository product Easy for the user to comply to licences Closed Beware: for maintenance reasons tools may become part of product Many open source tools already available Not many product line specific tools Examples: Stylebase for Eclipse reuse and sharing of architectural knowledge Subversion version management Semantic MediaWiKi support collaborative development CTO Office, Frank van der Linden, April 19, 2011 16

Using open source components process Open repository product 1 Practices process Similar to the use of 3rd party such as COTS Planning of 3rd party software outside control Closed Architecture compliance & interfaces is an issue Advanced knowledge is necessary 3 Using OSS 4 OSS products 5 Symbiot 2 OS tools 4 Opening uprelationsh repository COTS Need good contacts with the supplier Disruptive releases Open Source Involvement in the community Leads also to (limited) control Continuous evolution Fast incorporation is possible Issuing bug reports and corrections keep open source at quality product CTO Office, Frank van der Linden, April 19, 2011 17

Using open source components process Product line issue 1 Practices Open source in domain or application Open process repository product 3 Using OSS 4 OSS products 5 Symbiot 2 OS tools 4 Opening uprelationsh repository product latest versions only in trial applicationsclosed Licensing: Communicated and managed Ignoring licenses may lead to consequences for other departments t Open source use in application development indicate a move towards commodification move to domain? CTO Office, Frank van der Linden, April 19, 2011 18

Opening up products of the product line Commodity software can be shared Supporting a standard Improve interoperability with competition Move to de-facto standard Own products comply Devalue propriety solution of a competitor Drive acceptance of the software Visibility of the source Sharing maintenance De-support strategy Enable the sales of something else Services! Increase security, safety Open process 1 Practices Closed process repository repository product 3 Using OSS 4 OSS products 5 Symbiot 2 OS tools 4 Opening uprelationsh product CTO Office, Frank van der Linden, April 19, 2011 19

Symbiotic relationship Active involvement in community Ensure that the right issues are addressed Open Obtain improved components/tools Issue bug reports Donate software & patches solving them (partially) Shared maintenance Software that is not maintained properly process 1 Practices Closed process repository repository product 3 Using OSS 4 OSS products 5 Symbiot 2 OS tools 4 Opening uprelationsh product CTO Office, Frank van der Linden, April 19, 2011 20

Overview Background Philips Healthcare Funded EU projects Software product lines & open source Inner source Conclusion CTO Office, Frank van der Linden, April 19, 2011 21

Philips Inner source Development with open source practices Philips experienced SPL Challenges: Growing platform adoption Growing customer base High number of feature requests Increasingly difficult to honour Products increasingly dependent on platform Release schedules inherently misaligned R&D groups distributed across 3 continents Communication more complex and cumbersome CTO Office, Frank van der Linden, April 19, 2011 22

Inner source: Why resolve bottleneck at domain engineering Inspiration from OSS development: Bring software engineers closer together Direct communication Platform knowledge sharing and exchange Business units should also contribute to developing domain assets BUs are not dependent on the platform group Components are developed in the BU that has the best expertise CTO Office, Frank van der Linden, April 19, 2011 23

Background Problems: Lack of Domain Expertise Stepwise deployment Alignment with (System) Product Roadmaps (priority setting) InnerSource All groups contribute components based on their need and expertise CTO Office, Frank van der Linden, April 19, 2011 24

Inner source: What Increase trust in platform Improve feedback by being open Publish source code & relevant documentation Improved platform and product quality Involve customers early Works-In-Progress (bimonthly) Snapshots (biweekly) Bleeding edge (instantaneous) Improved quality through early feedback Short time to market CTO Office, Frank van der Linden, April 19, 2011 25

Inner Source principles p Easy, but controlled, access All development information Release early and often Flexibility Major (and minor) releases Snapshots & Bleeding edge Distributed Ownership and Control The platform team owns and develops components The customer is allowed to change components, Ownership rules Patch Patches are improvements that may be offered back to the platform CTO Office, Frank van der Linden, April 19, 2011 26

Collaboration models 1. Use as is Use the platform unchanged + efficient product team dependent d on platform team 2. Patch Change some components Modifies the platform + flexibility for application engineering inefficient: less re-use CTO Office, Frank van der Linden, April 19, 2011 27

Collaboration models Contribute Change some components Offers change back + flexibility re-use: contributions may need rework does not work for big changes Virtual team Application engineers temporarily join the domain engineering + flexibility and re-use + works for large scope ± must be managed well CTO Office, Frank van der Linden, April 19, 2011 28

Business aspects Who pays for contributions by application engineering g system-groups? Profit/loss responsibility Effort needed to make components re-useable How to handle the maintenance and support? Contributing group gets maintenance/support obligations Role of the platform group Internal Business Model encouraging active collaboration and contribution CTO Office, Frank van der Linden, April 19, 2011 29

Necessary collaboration tooling support Provide a scalable solution for global and inter-organizational collaboration Simplify development model Increase collaboration agility Reduce administration overhead Reduce merge overhead Retaining the strong points of ClearCase Merge tracking Rename handling CTO Office, Frank van der Linden, April 19, 2011 30

Collaboration environment Collab.net, Semantic Wiki & Subversion Mailing lists for support and technical discussions Document and file sharing Subversion for sharing source code Subversion for collaborating on new code Staged introduction of the Collaboration environment CTO Office, Frank van der Linden, April 19, 2011 31

Experience with global collaboration Much simplified development process Removed all unnecessary merging More flexible delivering (no serialization needed) Lightweight: i easy to learn, minimal impact on other processes CTO Office, Frank van der Linden, April 19, 2011 32

Experiences openness Openness/easy access to information: Support mailing lists successfully replaced the formal help desk More and earlier feedback improves quality and reduces lead time Document sharing through h Wiki Inner Source collaboration models: Patching supported by a simple add-on script CTO Office, Frank van der Linden, April 19, 2011 33

Size and health of the community Percentage of the Philips SW community using the collaboration environment Steady growth over 1000 users of 1800 developers About 50% of users are active users (has been constant over time) CTO Office, Frank van der Linden, April 19, 2011 34

Results Three times more product groups served Limited growth of the platform team Substantially improved product quality Improved feedback from product groups Product groups find defects early Significant time to market gains Product groups can start integrating earlier Product groups can provide features themselves Growing and active Inner Source community Over 60% of the PH software community involved Many collaborations inside and outside Philips CTO Office, Frank van der Linden, April 19, 2011 35

Inner source Conclusions New environment boosted collaboration enormously Many collaborations running at any time More feedback quality improvements and shorter lead time Key functions Subversion (version control) Discussion services (mailing lists) Information sharing g( (Wiki, fixed documents less important) Role-based access and distributed project management CTO Office, Frank van der Linden, April 19, 2011 36

Inner source Conclusions The new environment is well adopted and liked Steadily growing user base; active discussion lists Low learning curve; engineers like the new environment Network performance (corporate proxies) is a bottleneck Subversion: Enables large scale distributed development Drastically simplified platform development CTO Office, Frank van der Linden, April 19, 2011 37

Conclusions Inner Source established within Philips Healthcare Detailed model underlying Inner Source Global collaboration infrastructure essential Adoption high h and rising i Inner Source helped break the platform bottleneck Semantic Wiki established More people create documentation Wider variety of documentation created People are enthusiastic and keep coming back Less trivial questions on the support list CTO Office, Frank van der Linden, April 19, 2011 38

CTO Office, Frank van der Linden, April 19, 2011 39