SlideShare ist ein Scribd-Unternehmen logo
1 von 39
Dirk-Jan Swagerman
Senior Director Imaging Chain Cluster
September 2017
Why all software teams move
towards zero innovation speed.
And what to do about it
Our businesses in 20161
38% of Group sales 18% of Group sales41% of Group sales
Sales of EUR 17.4 billion
Diagnosis & Treatment
businesses
Connected Care & Health
Informatics businesses
Personal Health
businesses
1 As per Q2 2017, Other accounts for 3% of sales and includes HealthTech Other and Legacy Items
We address customer and consumer needs along
the health continuum
Healthy living Prevention Diagnosis Treatment Home care
Connected care and health informatics
We address customer and consumer needs along
the health continuum
Healthy living Prevention Diagnosis Treatment Home care
Connected care and health informatics
The gardeners dilemma
https://www.linkedin.com/pulse/gardeners-dilemma-dirk-jan-swagerman `
Year 1 Year 2 Year 3 Year 5Year 4
Sound bite: Maintenance is great, if you get paid!
All teams move to zero productivity
𝑃𝑡 = 𝑃0 × 𝑒−𝛼𝑡
α is the rate of maintenance
(non-quality + obsolescence)
The lower your quality, the quicker
you move to zero productivity
What can we do?
• Write less code
• Write better code
• Reduce code
What can we do? – Be brief
“I didn't have time to write a short
letter so i wrote a long one instead”
Mark Twain
Succinctness
1.expressed in few words; concise; terse.
2.characterized by conciseness or verbal brevity.
3.compressed into a small area, scope, or compass.
What can we do? - Greenfield
Write less code
Write better code
Less code = less bugs
Less ways to express it wrong
= less bugs
1. Use domain specific languages
Domain Specific Language
“DSLs are small
languages, focused on a
particular aspect of a
software system”
Martin-Fowler
Succinctness
Getting closer to Kolmogorov complexity
Kolmogorov complexity: The length of the shortest computer program that
produces the desired output
You cannot get closer to low Kolmogorov complexity than with a well
designed DSL
Assembly 3GL 4GL UML DSL
ComMA
Component Modeling & Analysis
Design better interfaces faster and concisely
Comma is a DSL where the ‘particular aspect’ happens to be
software interface design
Co-owned and created by Philips and TNO-ESI
SellerBuyer
What is the problem with software interfaces?
Give contracts
Wants car
Signs contract
Contract
Clause A: Seller delivers car to Buyer
Clause B: Buyer pays Seller 100 k€
Interface between parties
What are interfaces?
In which order are Clause A and Clause B executed?
What is the time between the execution of the clauses?
SellerBuyer SellerBuyer
Pays amount
Orders
Signs contract
Delivers Car
Signs contract
Delivers Car
Pays amountTime
Contract
Clause A: Seller delivers car to Buyer
Clause B: Buyer pays Seller 100 k€
What are software interfaces?
Software interface are like contracts. In software interfaces specifications: We describe
the clauses, We do not describe the order, We do not describe the timing
SellerBuyer SellerBuyer
Pays amount
Orders
Signs contract
Delivers Car
Signs contract
Delivers Car
Pays amountTime
Contract
Clause A: Seller delivers car to Buyer
Clause B: Buyer pays Seller 100 k€
Described
Non
Described
What is the proposed solution?
We created a toolset called: Component Modeling & Analysis (ComMA)
With ComMA interfaces can be described properly, ComMA checks interface conformance
SellerBuyer SellerBuyer
Pays amount
Orders
Signs contract
Delivers Car
Signs contract
Delivers Car
Pays amountTime
Contract
Clause A: Seller delivers car to Buyer
Clause B: Buyer pays Seller 100 k€
Described
W ComMa
Described
W ComMa
ComMA: Component Modeling & Analysis
interface ICamera {
types
enum Status {OnOK OnFailed}
commands
Status PowerOn
void PowerOff
void Click
int GetPictureNumber
notifications
CameraStatus(Status s)
LowBattery
EmptyBattery
}
Signature
behavior
machine camera provides ICamera {
init
count := 0
initial state Off {
transition trigger: ICamera::PowerOn
do: reply(ICamera::Status::OnOK)
next state: SwitchingOn
OR
do: reply(ICamera::Status::OnFailed)
next state: Off
}
TR1 in state SwitchingOn
command ICamera::PowerOff - [ .. 32.0 ms ]
-> reply
TR2 in state On
command ICamera::Click - [ 10.0 ms .. 100.0 ms ]
-> notification ICamera::PictureTaken
TR5 notification ICamera::LowBattery
then notification ICamera::LowBattery
with period 750.0 ms jitter 50.0 ms
until notification ICamera::EmptyBattery
Behavior Constraints
Design
documentation
Interface
code
Model based
Test Suite
Executable
Simulator
Interface
Conformance Check
Design for Six Sigma integration
The performance timing of an
implementation can monitored
and checked statistically.
ComMA will check
conformance against spec.
ComMA is free to use and download…
for non-competitors
We are interested in strengthening the ecosystem!
Contact jozef.hooman@tno.nl
Positioning DSL: Collision prevention
restriction VeryCloseTableTopAndBeam
activation
distance (TableTop, Beam) < 20 mm
effects
userGuidance “TableTop and Beam very close”
relative limit TableTop*[Rotation, Translation],
Beam*[Rotation, Translation]
User input on real hardware Poosl simulation System Simulator
User
Input
System
Commands
What can we do? - Maintenance
2. Drive quality cultureDrive quality culture
There is too much code in high-
tech systems that is not of
economic value
Over-production
Your software stack is bigger than needed
2
4
Confidential – For Internal Use Only
Over-abstraction
Over-processing
Over-branching
Conway's law
Your team needs a code down target!
https://www.linkedin.com/pulse/why-your-team-needs-code-down-target-dirk-jan-swagerman
8M Lines of code
Your team needs a code down target!
Credits: https://twitter.com/BrennaIvyArt
https://www.linkedin.com/pulse/why-your-team-needs-code-down-target-dirk-jan-swagerman
4M Lines of code
1.8M Lines of code -> 350 KLOC
What can we do? - Maintenance
Model based legacy transformation
Model based legacy transformation
Acquisition control subsystem
1.8M
Step 1 – Refactor with confidence
Gherkin/Specflow to capture legacy behavior in rigorous test harness
1.8M
Step 2 - Model-based migration
Opportunity
• New field service framework
• Collaboration with TNO
1.8M
1.2 M
Results
• 70% smaller code base than legacy software
• 80% effort reduction over manual migration
Step 2 – HW Obsolescence as opportunity
Opportunity
• Introduction of state of the art hardware
IGCIGC
FrontEnd Adapter
Application State
Controller
Scenario Controller
Image Generation
Controller (IGC)
Beam Limitation
Controller (BLC)
BackEnd Controller
(BEC)
Generator
Service
Image
Detection
Service
Collimator
Service
Sequencer
Service
Misc. IO
Service
SIB Certeray FDC
0.8M
1.2 M
Results
• 30% reduction of the code
Step 3 – Continuous ‘refactoring’
Opportunity
• Smaller continuous model based
refactoring's
• State machines modeled in state of the
art model based tools
0.8M
0.5 M
Results
• 40% reduction of the code
• Typically using modeling
reduces defects found during
integration with a factor of 10.
Model based refactoring results
1.3M Lines of code reduction in 4 years!
0.5 M
1.8M
Culture before result
Create pull before push
Management
• Vision – Explain ‘why’
• Support
Success Chance = Vision x Support x Skills x Openness x Opportunity
Team will identify opportunities!
Team
• Open to explore
• Technical Skills
Summary
• Culture before result
• Pull before push
• Have a code down target!
• Interface semantics &
timing
• State machines
• Positioning DSL’s
Less code
Better code
1. Use domain
specific languages
Reduce code 2. Drive quality culture
3. Model based legacy
transformation
• Create a test harness first
• Replace legacy with models
• Manual
• Automated
Questions?
@djswagerman
https://www.linkedin.com/djswagerman
Philips delivers innovation that
matters to you
How software teams move towards zero innovation speed

Weitere ähnliche Inhalte

Was ist angesagt?

LPWA-Open for Business. It’s time to execute
LPWA-Open for Business. It’s time to executeLPWA-Open for Business. It’s time to execute
LPWA-Open for Business. It’s time to executeTelefónica IoT
 
The Ericsson Experiece at Mobile World Congress 2016
The Ericsson Experiece at Mobile World Congress 2016The Ericsson Experiece at Mobile World Congress 2016
The Ericsson Experiece at Mobile World Congress 2016Ericsson Latin America
 
Iot launch
Iot launchIot launch
Iot launchEricsson
 
Telecom Italia's vision on future business drivers and IT implications
Telecom Italia's vision on future business drivers and IT implicationsTelecom Italia's vision on future business drivers and IT implications
Telecom Italia's vision on future business drivers and IT implicationsOscar Cicchetti
 
OSS/BSS User Group 2017
OSS/BSS User Group 2017OSS/BSS User Group 2017
OSS/BSS User Group 2017Ericsson
 
Why an innovation culture is critical at the 5G network era
Why an innovation culture is critical at the 5G network eraWhy an innovation culture is critical at the 5G network era
Why an innovation culture is critical at the 5G network eraCorporate Startup Summit
 
an IoT 'Street Mesh' for Smart Parking, Local Marketing and Low Cost IoT Devices
an IoT 'Street Mesh' for Smart Parking, Local Marketing and Low Cost IoT Devicesan IoT 'Street Mesh' for Smart Parking, Local Marketing and Low Cost IoT Devices
an IoT 'Street Mesh' for Smart Parking, Local Marketing and Low Cost IoT DevicesRichard Brooks
 
DWS17 - Digital Content seminar - Florence LE BORGNE - IDATE Digiworld
DWS17 - Digital Content seminar - Florence LE BORGNE -  IDATE DigiworldDWS17 - Digital Content seminar - Florence LE BORGNE -  IDATE Digiworld
DWS17 - Digital Content seminar - Florence LE BORGNE - IDATE DigiworldIDATE DigiWorld
 
Worknet smart pole overview
Worknet smart pole overviewWorknet smart pole overview
Worknet smart pole overviewMike Maziarka
 
All connected, all cloud all intelligent
All connected, all cloud all intelligentAll connected, all cloud all intelligent
All connected, all cloud all intelligentHuawei Technologies
 
Top 10 Strategic Tech Trends 2018 Pt 2
Top 10 Strategic Tech Trends 2018 Pt 2Top 10 Strategic Tech Trends 2018 Pt 2
Top 10 Strategic Tech Trends 2018 Pt 2InterQuest Group
 
DWS17 - Plenary Session : Investment and digital infrastructure - Carlos LOPE...
DWS17 - Plenary Session : Investment and digital infrastructure - Carlos LOPE...DWS17 - Plenary Session : Investment and digital infrastructure - Carlos LOPE...
DWS17 - Plenary Session : Investment and digital infrastructure - Carlos LOPE...IDATE DigiWorld
 
Google as telecom player - Value Grid Framework Critique
Google as telecom player - Value Grid Framework CritiqueGoogle as telecom player - Value Grid Framework Critique
Google as telecom player - Value Grid Framework CritiqueRohit Singh
 
Ericsson Technology Review - issue 2, 2017
Ericsson Technology Review - issue 2, 2017Ericsson Technology Review - issue 2, 2017
Ericsson Technology Review - issue 2, 2017Ericsson
 
Imagimob presentation at the Stockholm IoT Investment Summit
Imagimob presentation at the Stockholm IoT Investment SummitImagimob presentation at the Stockholm IoT Investment Summit
Imagimob presentation at the Stockholm IoT Investment SummitAnders Hardebring
 
DWS17 - A time for big strategic bets - Plenary session -Rainer KALLENBACH - ...
DWS17 - A time for big strategic bets - Plenary session -Rainer KALLENBACH - ...DWS17 - A time for big strategic bets - Plenary session -Rainer KALLENBACH - ...
DWS17 - A time for big strategic bets - Plenary session -Rainer KALLENBACH - ...IDATE DigiWorld
 

Was ist angesagt? (20)

СОЕДИНЕННЫЙ МИР
СОЕДИНЕННЫЙ МИРСОЕДИНЕННЫЙ МИР
СОЕДИНЕННЫЙ МИР
 
09 ivideon
09 ivideon09 ivideon
09 ivideon
 
IoT: The T is for Telco, Isn't it?
IoT: The T is for Telco, Isn't it?IoT: The T is for Telco, Isn't it?
IoT: The T is for Telco, Isn't it?
 
LPWA-Open for Business. It’s time to execute
LPWA-Open for Business. It’s time to executeLPWA-Open for Business. It’s time to execute
LPWA-Open for Business. It’s time to execute
 
The Ericsson Experiece at Mobile World Congress 2016
The Ericsson Experiece at Mobile World Congress 2016The Ericsson Experiece at Mobile World Congress 2016
The Ericsson Experiece at Mobile World Congress 2016
 
Iot launch
Iot launchIot launch
Iot launch
 
Telecom Italia's vision on future business drivers and IT implications
Telecom Italia's vision on future business drivers and IT implicationsTelecom Italia's vision on future business drivers and IT implications
Telecom Italia's vision on future business drivers and IT implications
 
OSS/BSS User Group 2017
OSS/BSS User Group 2017OSS/BSS User Group 2017
OSS/BSS User Group 2017
 
Why an innovation culture is critical at the 5G network era
Why an innovation culture is critical at the 5G network eraWhy an innovation culture is critical at the 5G network era
Why an innovation culture is critical at the 5G network era
 
an IoT 'Street Mesh' for Smart Parking, Local Marketing and Low Cost IoT Devices
an IoT 'Street Mesh' for Smart Parking, Local Marketing and Low Cost IoT Devicesan IoT 'Street Mesh' for Smart Parking, Local Marketing and Low Cost IoT Devices
an IoT 'Street Mesh' for Smart Parking, Local Marketing and Low Cost IoT Devices
 
DWS17 - Digital Content seminar - Florence LE BORGNE - IDATE Digiworld
DWS17 - Digital Content seminar - Florence LE BORGNE -  IDATE DigiworldDWS17 - Digital Content seminar - Florence LE BORGNE -  IDATE Digiworld
DWS17 - Digital Content seminar - Florence LE BORGNE - IDATE Digiworld
 
Worknet smart pole overview
Worknet smart pole overviewWorknet smart pole overview
Worknet smart pole overview
 
All connected, all cloud all intelligent
All connected, all cloud all intelligentAll connected, all cloud all intelligent
All connected, all cloud all intelligent
 
Top 10 Strategic Tech Trends 2018 Pt 2
Top 10 Strategic Tech Trends 2018 Pt 2Top 10 Strategic Tech Trends 2018 Pt 2
Top 10 Strategic Tech Trends 2018 Pt 2
 
DWS17 - Plenary Session : Investment and digital infrastructure - Carlos LOPE...
DWS17 - Plenary Session : Investment and digital infrastructure - Carlos LOPE...DWS17 - Plenary Session : Investment and digital infrastructure - Carlos LOPE...
DWS17 - Plenary Session : Investment and digital infrastructure - Carlos LOPE...
 
Google as telecom player - Value Grid Framework Critique
Google as telecom player - Value Grid Framework CritiqueGoogle as telecom player - Value Grid Framework Critique
Google as telecom player - Value Grid Framework Critique
 
Ericsson Technology Review - issue 2, 2017
Ericsson Technology Review - issue 2, 2017Ericsson Technology Review - issue 2, 2017
Ericsson Technology Review - issue 2, 2017
 
Real time ai on the edge
Real time ai on the edgeReal time ai on the edge
Real time ai on the edge
 
Imagimob presentation at the Stockholm IoT Investment Summit
Imagimob presentation at the Stockholm IoT Investment SummitImagimob presentation at the Stockholm IoT Investment Summit
Imagimob presentation at the Stockholm IoT Investment Summit
 
DWS17 - A time for big strategic bets - Plenary session -Rainer KALLENBACH - ...
DWS17 - A time for big strategic bets - Plenary session -Rainer KALLENBACH - ...DWS17 - A time for big strategic bets - Plenary session -Rainer KALLENBACH - ...
DWS17 - A time for big strategic bets - Plenary session -Rainer KALLENBACH - ...
 

Ähnlich wie How software teams move towards zero innovation speed

IBM Cost Optimization Seminar 4th November 2015
IBM Cost Optimization Seminar 4th November 2015IBM Cost Optimization Seminar 4th November 2015
IBM Cost Optimization Seminar 4th November 2015Martin Thompson
 
SMTAI PowerPoint: Blockchain for High Tech
SMTAI PowerPoint: Blockchain for High Tech SMTAI PowerPoint: Blockchain for High Tech
SMTAI PowerPoint: Blockchain for High Tech Quentin Samelson
 
Building Operational Intelligence in Telecom with IBM ODM @Claro
Building Operational Intelligence in Telecom with IBM ODM @ClaroBuilding Operational Intelligence in Telecom with IBM ODM @Claro
Building Operational Intelligence in Telecom with IBM ODM @ClaroIcaro Tech
 
Citihub IDC Event 2009 Cloud Mark Ellis
Citihub IDC Event 2009 Cloud Mark EllisCitihub IDC Event 2009 Cloud Mark Ellis
Citihub IDC Event 2009 Cloud Mark Ellismarkellis
 
Density based traffic light controlling (2)
Density based traffic light controlling (2)Density based traffic light controlling (2)
Density based traffic light controlling (2)hardik1240
 
Dcc Cheque Scanner
Dcc Cheque ScannerDcc Cheque Scanner
Dcc Cheque Scannerarigleton
 
Gcs presentationoct2012md
Gcs presentationoct2012mdGcs presentationoct2012md
Gcs presentationoct2012mddelaney882000
 
GCS Presentation 2012 1
GCS Presentation 2012 1GCS Presentation 2012 1
GCS Presentation 2012 1cbirdsall
 
1250 alcohol-detection-with-vehicle-controlling
1250 alcohol-detection-with-vehicle-controlling1250 alcohol-detection-with-vehicle-controlling
1250 alcohol-detection-with-vehicle-controllingMikroc Srinivs
 
Deepak-Computational Advertising-The LinkedIn Way
Deepak-Computational Advertising-The LinkedIn WayDeepak-Computational Advertising-The LinkedIn Way
Deepak-Computational Advertising-The LinkedIn Wayyingfeng
 
Omnicomm offer for the aftermarket
Omnicomm offer for the aftermarketOmnicomm offer for the aftermarket
Omnicomm offer for the aftermarketDmitry Ilyin
 
Range Rover MKIII- ALL COMMS
Range Rover MKIII- ALL COMMSRange Rover MKIII- ALL COMMS
Range Rover MKIII- ALL COMMSJack Chen
 
Digital Lifestyle & M2M
Digital Lifestyle & M2MDigital Lifestyle & M2M
Digital Lifestyle & M2MComarch
 
M3000 Data Sheet
M3000 Data SheetM3000 Data Sheet
M3000 Data Sheetpfarwell
 
Step Into Security Webinar - IP Security Camera Techniques for Video Surveill...
Step Into Security Webinar - IP Security Camera Techniques for Video Surveill...Step Into Security Webinar - IP Security Camera Techniques for Video Surveill...
Step Into Security Webinar - IP Security Camera Techniques for Video Surveill...Keith Harris
 

Ähnlich wie How software teams move towards zero innovation speed (20)

IBM Cost Optimization Seminar 4th November 2015
IBM Cost Optimization Seminar 4th November 2015IBM Cost Optimization Seminar 4th November 2015
IBM Cost Optimization Seminar 4th November 2015
 
Himanth_Resume
Himanth_ResumeHimanth_Resume
Himanth_Resume
 
SMTAI PowerPoint: Blockchain for High Tech
SMTAI PowerPoint: Blockchain for High Tech SMTAI PowerPoint: Blockchain for High Tech
SMTAI PowerPoint: Blockchain for High Tech
 
Building Operational Intelligence in Telecom with IBM ODM @Claro
Building Operational Intelligence in Telecom with IBM ODM @ClaroBuilding Operational Intelligence in Telecom with IBM ODM @Claro
Building Operational Intelligence in Telecom with IBM ODM @Claro
 
Osm
OsmOsm
Osm
 
Citihub IDC Event 2009 Cloud Mark Ellis
Citihub IDC Event 2009 Cloud Mark EllisCitihub IDC Event 2009 Cloud Mark Ellis
Citihub IDC Event 2009 Cloud Mark Ellis
 
Density based traffic light controlling (2)
Density based traffic light controlling (2)Density based traffic light controlling (2)
Density based traffic light controlling (2)
 
Dcc Cheque Scanner
Dcc Cheque ScannerDcc Cheque Scanner
Dcc Cheque Scanner
 
Gcs presentationoct2012md
Gcs presentationoct2012mdGcs presentationoct2012md
Gcs presentationoct2012md
 
GCS Presentation 2012 1
GCS Presentation 2012 1GCS Presentation 2012 1
GCS Presentation 2012 1
 
Traffic Fms 050209
Traffic Fms 050209Traffic Fms 050209
Traffic Fms 050209
 
1250 alcohol-detection-with-vehicle-controlling
1250 alcohol-detection-with-vehicle-controlling1250 alcohol-detection-with-vehicle-controlling
1250 alcohol-detection-with-vehicle-controlling
 
Deepak-Computational Advertising-The LinkedIn Way
Deepak-Computational Advertising-The LinkedIn WayDeepak-Computational Advertising-The LinkedIn Way
Deepak-Computational Advertising-The LinkedIn Way
 
Omnicomm offer for the aftermarket
Omnicomm offer for the aftermarketOmnicomm offer for the aftermarket
Omnicomm offer for the aftermarket
 
EX 2009 ("TracTix")
EX 2009 ("TracTix")EX 2009 ("TracTix")
EX 2009 ("TracTix")
 
Range Rover MKIII- ALL COMMS
Range Rover MKIII- ALL COMMSRange Rover MKIII- ALL COMMS
Range Rover MKIII- ALL COMMS
 
Final_presentation_ITS
Final_presentation_ITSFinal_presentation_ITS
Final_presentation_ITS
 
Digital Lifestyle & M2M
Digital Lifestyle & M2MDigital Lifestyle & M2M
Digital Lifestyle & M2M
 
M3000 Data Sheet
M3000 Data SheetM3000 Data Sheet
M3000 Data Sheet
 
Step Into Security Webinar - IP Security Camera Techniques for Video Surveill...
Step Into Security Webinar - IP Security Camera Techniques for Video Surveill...Step Into Security Webinar - IP Security Camera Techniques for Video Surveill...
Step Into Security Webinar - IP Security Camera Techniques for Video Surveill...
 

Kürzlich hochgeladen

Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slidesvaideheekore1
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLionel Briand
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxRTS corp
 
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesAmazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesKrzysztofKkol1
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingShane Coughlan
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldRoberto Pérez Alcolea
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorTier1 app
 
Patterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencePatterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencessuser9e7c64
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonApplitools
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogueitservices996
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identityteam-WIBU
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 

Kürzlich hochgeladen (20)

Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slides
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and Repair
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
 
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesAmazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository world
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryError
 
Patterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencePatterns for automating API delivery. API conference
Patterns for automating API delivery. API conference
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogue
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 

How software teams move towards zero innovation speed

  • 1. Dirk-Jan Swagerman Senior Director Imaging Chain Cluster September 2017 Why all software teams move towards zero innovation speed. And what to do about it
  • 2. Our businesses in 20161 38% of Group sales 18% of Group sales41% of Group sales Sales of EUR 17.4 billion Diagnosis & Treatment businesses Connected Care & Health Informatics businesses Personal Health businesses 1 As per Q2 2017, Other accounts for 3% of sales and includes HealthTech Other and Legacy Items
  • 3. We address customer and consumer needs along the health continuum Healthy living Prevention Diagnosis Treatment Home care Connected care and health informatics
  • 4. We address customer and consumer needs along the health continuum Healthy living Prevention Diagnosis Treatment Home care Connected care and health informatics
  • 5.
  • 6. The gardeners dilemma https://www.linkedin.com/pulse/gardeners-dilemma-dirk-jan-swagerman ` Year 1 Year 2 Year 3 Year 5Year 4 Sound bite: Maintenance is great, if you get paid!
  • 7. All teams move to zero productivity 𝑃𝑡 = 𝑃0 × 𝑒−𝛼𝑡 α is the rate of maintenance (non-quality + obsolescence) The lower your quality, the quicker you move to zero productivity
  • 8. What can we do? • Write less code • Write better code • Reduce code
  • 9. What can we do? – Be brief “I didn't have time to write a short letter so i wrote a long one instead” Mark Twain Succinctness 1.expressed in few words; concise; terse. 2.characterized by conciseness or verbal brevity. 3.compressed into a small area, scope, or compass.
  • 10. What can we do? - Greenfield Write less code Write better code Less code = less bugs Less ways to express it wrong = less bugs 1. Use domain specific languages
  • 11. Domain Specific Language “DSLs are small languages, focused on a particular aspect of a software system” Martin-Fowler
  • 12. Succinctness Getting closer to Kolmogorov complexity Kolmogorov complexity: The length of the shortest computer program that produces the desired output You cannot get closer to low Kolmogorov complexity than with a well designed DSL Assembly 3GL 4GL UML DSL
  • 13. ComMA Component Modeling & Analysis Design better interfaces faster and concisely Comma is a DSL where the ‘particular aspect’ happens to be software interface design Co-owned and created by Philips and TNO-ESI
  • 14. SellerBuyer What is the problem with software interfaces? Give contracts Wants car Signs contract Contract Clause A: Seller delivers car to Buyer Clause B: Buyer pays Seller 100 k€ Interface between parties
  • 15. What are interfaces? In which order are Clause A and Clause B executed? What is the time between the execution of the clauses? SellerBuyer SellerBuyer Pays amount Orders Signs contract Delivers Car Signs contract Delivers Car Pays amountTime Contract Clause A: Seller delivers car to Buyer Clause B: Buyer pays Seller 100 k€
  • 16. What are software interfaces? Software interface are like contracts. In software interfaces specifications: We describe the clauses, We do not describe the order, We do not describe the timing SellerBuyer SellerBuyer Pays amount Orders Signs contract Delivers Car Signs contract Delivers Car Pays amountTime Contract Clause A: Seller delivers car to Buyer Clause B: Buyer pays Seller 100 k€ Described Non Described
  • 17. What is the proposed solution? We created a toolset called: Component Modeling & Analysis (ComMA) With ComMA interfaces can be described properly, ComMA checks interface conformance SellerBuyer SellerBuyer Pays amount Orders Signs contract Delivers Car Signs contract Delivers Car Pays amountTime Contract Clause A: Seller delivers car to Buyer Clause B: Buyer pays Seller 100 k€ Described W ComMa Described W ComMa
  • 18. ComMA: Component Modeling & Analysis interface ICamera { types enum Status {OnOK OnFailed} commands Status PowerOn void PowerOff void Click int GetPictureNumber notifications CameraStatus(Status s) LowBattery EmptyBattery } Signature behavior machine camera provides ICamera { init count := 0 initial state Off { transition trigger: ICamera::PowerOn do: reply(ICamera::Status::OnOK) next state: SwitchingOn OR do: reply(ICamera::Status::OnFailed) next state: Off } TR1 in state SwitchingOn command ICamera::PowerOff - [ .. 32.0 ms ] -> reply TR2 in state On command ICamera::Click - [ 10.0 ms .. 100.0 ms ] -> notification ICamera::PictureTaken TR5 notification ICamera::LowBattery then notification ICamera::LowBattery with period 750.0 ms jitter 50.0 ms until notification ICamera::EmptyBattery Behavior Constraints Design documentation Interface code Model based Test Suite Executable Simulator Interface Conformance Check
  • 19. Design for Six Sigma integration The performance timing of an implementation can monitored and checked statistically. ComMA will check conformance against spec.
  • 20. ComMA is free to use and download… for non-competitors We are interested in strengthening the ecosystem! Contact jozef.hooman@tno.nl
  • 21. Positioning DSL: Collision prevention restriction VeryCloseTableTopAndBeam activation distance (TableTop, Beam) < 20 mm effects userGuidance “TableTop and Beam very close” relative limit TableTop*[Rotation, Translation], Beam*[Rotation, Translation] User input on real hardware Poosl simulation System Simulator User Input System Commands
  • 22. What can we do? - Maintenance 2. Drive quality cultureDrive quality culture
  • 23. There is too much code in high- tech systems that is not of economic value
  • 24. Over-production Your software stack is bigger than needed 2 4 Confidential – For Internal Use Only Over-abstraction Over-processing Over-branching Conway's law Your team needs a code down target! https://www.linkedin.com/pulse/why-your-team-needs-code-down-target-dirk-jan-swagerman
  • 25. 8M Lines of code
  • 26. Your team needs a code down target! Credits: https://twitter.com/BrennaIvyArt https://www.linkedin.com/pulse/why-your-team-needs-code-down-target-dirk-jan-swagerman 4M Lines of code
  • 27. 1.8M Lines of code -> 350 KLOC
  • 28. What can we do? - Maintenance Model based legacy transformation
  • 29. Model based legacy transformation Acquisition control subsystem 1.8M
  • 30. Step 1 – Refactor with confidence Gherkin/Specflow to capture legacy behavior in rigorous test harness 1.8M
  • 31. Step 2 - Model-based migration Opportunity • New field service framework • Collaboration with TNO 1.8M 1.2 M Results • 70% smaller code base than legacy software • 80% effort reduction over manual migration
  • 32. Step 2 – HW Obsolescence as opportunity Opportunity • Introduction of state of the art hardware IGCIGC FrontEnd Adapter Application State Controller Scenario Controller Image Generation Controller (IGC) Beam Limitation Controller (BLC) BackEnd Controller (BEC) Generator Service Image Detection Service Collimator Service Sequencer Service Misc. IO Service SIB Certeray FDC 0.8M 1.2 M Results • 30% reduction of the code
  • 33. Step 3 – Continuous ‘refactoring’ Opportunity • Smaller continuous model based refactoring's • State machines modeled in state of the art model based tools 0.8M 0.5 M Results • 40% reduction of the code • Typically using modeling reduces defects found during integration with a factor of 10.
  • 34. Model based refactoring results 1.3M Lines of code reduction in 4 years! 0.5 M 1.8M
  • 35. Culture before result Create pull before push Management • Vision – Explain ‘why’ • Support Success Chance = Vision x Support x Skills x Openness x Opportunity Team will identify opportunities! Team • Open to explore • Technical Skills
  • 36. Summary • Culture before result • Pull before push • Have a code down target! • Interface semantics & timing • State machines • Positioning DSL’s Less code Better code 1. Use domain specific languages Reduce code 2. Drive quality culture 3. Model based legacy transformation • Create a test harness first • Replace legacy with models • Manual • Automated
  • 38. Philips delivers innovation that matters to you