"Votre produit logiciel : accélérateur ou frein à votre croissance"

25
Your software product : Your software product : Future business enabler or show Future business enabler or show-stopper ? stopper ? CEI Workshop CEI Workshop 19/09/2012 19/09/2012 Felix Felix Bregadze Bregadze Nicolas Devos Nicolas Devos Nicolas Devos Nicolas Devos

Transcript of "Votre produit logiciel : accélérateur ou frein à votre croissance"

Page 1: "Votre produit logiciel : accélérateur ou frein à votre croissance"

Your software product : Your software product : Future business enabler or showFuture business enabler or show--stopper ?stopper ?

CEI Workshop CEI Workshop 19/09/201219/09/2012

FelixFelix BregadzeBregadzeNicolas DevosNicolas DevosNicolas DevosNicolas Devos

Page 2: "Votre produit logiciel : accélérateur ou frein à votre croissance"

Risk management:

© CETIC – www.cetic.be

Risk management:

You can’t manage what you don’t measure

Felix BREGADZE

Page 3: "Votre produit logiciel : accélérateur ou frein à votre croissance"

About CETICAbout CETIC

• ICT Research Center• Mission: Independent expert & transfer agent between

academic world and industry

• 45 Researchers in 3 Departments• Software and System Engineering

• Focus on Code and Process Quality; on complex system modeling at

© CETIC – www.cetic.be

• Focus on Code and Process Quality; on complex system modeling at requirement and design level

• Software Service Technologies• Focus on Cloud Services and Service Composition; on Cloud Storage

Strategies; on Semantics for interoperability of heterogeneous data

• Embedded Communicating System• Focus on low energy/autonomous sensor networks; on architecture

modeling/simulation of low energy embedded system

• Transversal topics: Security, Constrain-based Optimisation, eHealth, Green ICT & ICT for Green

3

Page 4: "Votre produit logiciel : accélérateur ou frein à votre croissance"

IT Projects FailureIT Projects Failure

• Geneca (2010 – 2011)• 75% of project participants don’t believe in project success• 78% of participants believe business is out of sync /w

requirements

• KPMG (2010 – 2011)• 70% of organisations suffered at least 1 project failure in last

© CETIC – www.cetic.be

• 70% of organisations suffered at least 1 project failure in last 12 months

• 50% indicated projects consistently failed to achieve goals

• IBM (2008)• Projects that met schedule: only 40%• Underestimation of project complexity is a huge factor

4

Page 5: "Votre produit logiciel : accélérateur ou frein à votre croissance"

IT Projects FailureIT Projects Failure

There is a gap between IT and Business

© CETIC – www.cetic.be

There is a gap between IT and Business

5

Page 6: "Votre produit logiciel : accélérateur ou frein à votre croissance"

RealityReality

• For business IT projects must be• On-time• Meet budget• Meet requirements

• But business is evolving and in reality there is:

© CETIC – www.cetic.be

• But business is evolving and in reality there is:• Not enough time• Lack of budget• Ever-changing requirements

Trade-offs have to be made

6

Page 7: "Votre produit logiciel : accélérateur ou frein à votre croissance"

RealityReality

There is no long term vision: IT projects are consi dered tactical though they must support strategic business plannin g

© CETIC – www.cetic.be

IT Risks are closely related to Business Risks

7

Page 8: "Votre produit logiciel : accélérateur ou frein à votre croissance"

IT Management QuestionsIT Management Questions

• How do I keep maintenance costs low?• What happens if one of my developers would leave the

company?• How to make sure the new version is released on time?• How to keep up with feature requests?

© CETIC – www.cetic.be

• How can I do more with less?

Major element to answer the above that is mostly overlooked : Application Technical Quality

8

Page 9: "Votre produit logiciel : accélérateur ou frein à votre croissance"

Application Technical QualityApplication Technical Quality

• Application Technical Quality must be managed over time and as early as possible

© CETIC – www.cetic.be9

Page 10: "Votre produit logiciel : accélérateur ou frein à votre croissance"

Application Technical QualityApplication Technical Quality

You cannot manage what you do not measure

© CETIC – www.cetic.be

You cannot manage what you do not measure

10

Page 11: "Votre produit logiciel : accélérateur ou frein à votre croissance"

Technical Debt IntroductionTechnical Debt Introduction

• To sum up:• Gap between Business & IT• Trade-offs• Short term vs. long term• Risks to manage on daily basis

© CETIC – www.cetic.be

• Technical Debt is the indicator that can be an answ er to above problems

11

Page 12: "Votre produit logiciel : accélérateur ou frein à votre croissance"

How managers can measure and manage risks

© CETIC – www.cetic.be

How managers can measure and manage risks

Nicolas DEVOS

Page 13: "Votre produit logiciel : accélérateur ou frein à votre croissance"

TechnicalTechnical DebtDebt

Ward Cunningham"The WyCash Portfolio Management System",

OOPSLA’92

metaphor referring to the eventual consequences of poor or evolving software architecture and software

© CETIC – www.cetic.be13

poor or evolving software architecture and software development within a codebase.

Page 14: "Votre produit logiciel : accélérateur ou frein à votre croissance"

How to How to measuremeasure qualityquality??

SamplingSamplingExpensiveExpensive and and riskyrisky, , lessless precisionprecision

© CETIC – www.cetic.be14

Code auditCode auditFasterFaster, more , more reliablereliable and and preciseprecise

RegularRegular code auditcode auditAutomatedAutomated, , integratedintegrated, ,

lessless correction effortcorrection effort

Page 15: "Votre produit logiciel : accélérateur ou frein à votre croissance"

Source code Source code analyzersanalyzers

Wide variety of source code analyzers

PrinciplePrincipleStandards and best practices Rules Violations

© CETIC – www.cetic.be

ISO 9126 – 25000 (SQuaRE)Common language for software quality

Model for Application Quality

15

best practices Rules Violations

Page 16: "Votre produit logiciel : accélérateur ou frein à votre croissance"

Health factors

QualityQuality modelmodelApplication

Quality

Performance Robustness Security Maintainability Changeability Transferability

User Driven Business Driven

© CETIC – www.cetic.be16

Rules

Documentation

ErrorHandling

Complexity

NamingConvention

LoopManagement

Page 17: "Votre produit logiciel : accélérateur ou frein à votre croissance"

How to How to computecompute technicaltechnical debtdebt??

DefineDefine a a qualityquality objectiveobjective

© CETIC – www.cetic.be17

Page 18: "Votre produit logiciel : accélérateur ou frein à votre croissance"

Attention pointsAttention points

Company

© CETIC – www.cetic.be

Depends on18

QualityTarget Business

Application type

Developmentphase

Page 19: "Votre produit logiciel : accélérateur ou frein à votre croissance"

Managing the Technical DebtManaging the Technical Debt

© CETIC – www.cetic.be19

Page 20: "Votre produit logiciel : accélérateur ou frein à votre croissance"

Managing the Technical DebtManaging the Technical Debt

TDMeasure

TDManaged

TDUnmanaged

Technical View

Business View

• Maintenance effort increase• Evolutivity decrease• Customer satisfaction decrease

© CETIC – www.cetic.be20

Time Dev. &MaintenanceCost

Time

If TDManaged

If TDUnmanaged

DirectRelationship

Page 21: "Votre produit logiciel : accélérateur ou frein à votre croissance"

What should we do?What should we do?

If you see a software component is an asset for your company then you should assess it (or have it assessed)

• Software code developed by your staff for external or internal purpose• Software code developed by consultant that you paid for

• Even if software solution is for internal purpose

© CETIC – www.cetic.be

• Mention Technical Debt threshold in call for tender or contract• To select Open Source Software

Code audits

21

Page 22: "Votre produit logiciel : accélérateur ou frein à votre croissance"

WhatWhat willwill wewe gain?gain?

Measuring enables managing

• Quality overview and development team improvment

At short term

© CETIC – www.cetic.be

• Quality overview and development team improvment• Help in the decision making process• Interface between financial and technical teams

• Reduce the maintenance effort• Risk management

At long term

22

Page 23: "Votre produit logiciel : accélérateur ou frein à votre croissance"

Conclusion Conclusion -- Key takeawaysKey takeaways

Measure and manage technical quality of a software asset

Technical debt is the cost of lack or non-quality

© CETIC – www.cetic.be

Support the decision process

Make it transparent

In the development cycle

Do more with less

Page 24: "Votre produit logiciel : accélérateur ou frein à votre croissance"

Case Study

© CETIC – www.cetic.be

Case Study WSL (Walloon tech start-ups incubator)

Charles Cuny

Page 25: "Votre produit logiciel : accélérateur ou frein à votre croissance"

MERCIMERCI

CETICCETICCETICCETIC

Aéropôle de Charleroi-GosseliesRue des Frères Wright, 29/36041 [email protected]

www.cetic.bewww.cetic.be