SlideShare a Scribd company logo
1 of 22
Download to read offline
1
Orange Polska for IWSM Mensura, Cracow 2015
Orange Polska
IWSM Mensura 2015
Practical usage of FPA
and automated code
review
Piotr Popowski & Bogusz Jeliński
IT Applications
2
Orange Polska for IWSM Mensura, Cracow 2015
What we measure, count or look for in Orange
Function Points
 Manual, IFPUG-based counting for pricing
Quality of code (static review)
 Violations of patterns
 Weighted average of low-level grades
 Defects per FP
Software process
maturity, repository, continuous integration
Automated FP
Complete source code
3
Orange Polska for IWSM Mensura, Cracow 2015
Measurement in figures
MANY TECHNOLOGIES
JAVA, C/C++, PHP, PL/SQL, WEB METHODS, PEOPLE SOFT, POWER
BUILDER, ABAP, ORACLE FORMS, etc.
1 000 000
FP COUNTED
800
PROJECTS
(GO-LIVES)
1 500
CODE AUDITS
7
DOMAINS
5
VENDORS
4 800
ENHANCEMENT COUNTS (incl. CRs)
200
IT SYSTEMS
5 YEARS
EXPERIENCE
4
Orange Polska for IWSM Mensura, Cracow 2015
Part 1
Estimating size and price for IT projects
using FPA method
Piotr Popowski – IT Applications, Orange Polska
Contact: piotr.popowski@orange.com
5
Orange Polska for IWSM Mensura, Cracow 2015
Context
In 2010 Orange Polska transformed its sourcing strategy from multi-vendor to
consolidated vendor agreements. In return for a long-term contract, the
company offered its suppliers exclusive rights to deliver software changes in
particular IT areas.
 Vendors
consolidation
 Solution
 Challenge Lack of free market pricing mechanisms, as implied by the contracts, imposed
the necessity to implement a dedicated sourcing and pricing method.
To meet the new challenges Orange Polska adopted a new method of
estimating IT development size, workload and finally, pricing.
6
Orange Polska for IWSM Mensura, Cracow 2015
From FP to price
In four steps
FP and SNAP count based
on IFPUG and custom
rules
FP adjustment
Adjusting number of FP.
Impact ratios based on
COCOMO II
effort calculation
Contract-based
productivity ratios related
to vendor, system and
technology
price
Price calculation using
rates defined in contracts
FP
SP
Calculated by Orange and
vendor analysts
Verified and authorized by OPL
IFPUG certified team
Orange and vendor
analysts
Sourcing division Sourcing division
7
Orange Polska for IWSM Mensura, Cracow 2015
Customization
Custom rules
The custom rules cover the areas where IFPUG FPA proved to be in some way deficient
Custom rules
 5% of FPs is „Rule 27” algorithmic complexity - internal data processing where data does not cross application boundary
 7% of FPs is „Rule 30” reusability – a reusable component, where development is made once but analysis and tests are conducted
for many elementary processes
 20% of FPs – dedicated rules for 26 systems in the following areas
 Integration
 Business Intelligence (ex. Data Warehousing)
 Wholesale
8
Orange Polska for IWSM Mensura, Cracow 2015
Customization
FP adjusting
The main goal of adjusting is to assess effort
 Adjustation is made separately for each BFC (Base Functional Component)
 Impact ratios are defined based on COCOMO II Equation 4
 Impacts are expert-estimated and mutually agreed
 Also using NESMA impacts as reference
Creation or huge change Moderate change Small change Suppression or COTS
Effort
9
Orange Polska for IWSM Mensura, Cracow 2015
Customization
Productivity
 Productivity ratios were established during vendor selection process
 COCOMO II factors were used as reference for determining productivity
Productivity
Technology System Vendor
Year of
contract
10
Orange Polska for IWSM Mensura, Cracow 2015
Knowledge base and tools
FP calculation
 CARTO – Excel spreadsheet for doing detailed calculations based
on HLD
 Full decomposition: project > system > functionality > BFC
(or SCU for SNAP)
 Additional information for effort calculation (e.g. technology,
impact)
 FP adjustment
Document and report
 FP Repository – all data from CARTOs recorded in a dedicated system
 Over 30 on-line generated reports available from the repository
 Progressive build of Application Count
HLD
CARTO
REPOSITORY
REPORTS
11
Orange Polska for IWSM Mensura, Cracow 2015
Common pricing model
 Instead of tenders, quotes and negotiations – objective pricing
Budget and capacity early estimation
 Based on historical data
Project Roadmap management
 Project assignment to particular path depending on path capacity
 Path management – schedule and capacity
KPIs
 Cost efficiency – spending/FP
 Quality – errors/kFP
Process optimization
 Better and more precise analytical documents (HLD)
 Tracing volume of changes in IT projects (e.g. number of projects, number of change
requests, changing size of average project in particular domain)
Benefits
12
Orange Polska for IWSM Mensura, Cracow 2015
Challenges
Introduce another measuring method in order to verify or improve
current model (e.g. Use Case Points)
Measuring Agile projects
Improving the way to measure configuration changes
Introduce NESMA impacts
13
Orange Polska for IWSM Mensura, Cracow 2015
Orange Polska experience
Since 2010
 Has a dedicated, internal, IFPUG certified Metric Team
 Uses IFPUG FPA (and SNAP since 2012 ) for pricing IT projects
 Uses metrics to manage Project Roadmap and IT budget
Dedicated Metric Team provides the following services
 Design and implementation of effort estimation and pricing models for IT contracts
 FPA, SNAP and custom trainings
 Methodology, contract and project audits
Services are offered internally and externally, both on-site
(currently Warsaw and Cracow) as well as remotely
14
Orange Polska for IWSM Mensura, Cracow 2015
Part 2
Automated code review
dr Bogusz Jeliński – IT Architecture Strategy, Orange Polska
Contact: bogusz.jelinski2@orange.com
15
Orange Polska for IWSM Mensura, Cracow 2015
What we measure, count or look for in Orange
Function Points
 Manual, IFPUG-based counting for pricing
Quality of code (static review)
 Violations of patterns
 Weighted average of low-level grades
 Defects per FP
Software process
maturity, repository, continuous integration
Automated FP
Complete source code
16
Orange Polska for IWSM Mensura, Cracow 2015
Code review – history & inspirations
 1976 - Fagan’s classic article in IBM Systems Journal
 1979 - Lint for Unix V7
 1991 - ISO/IEC 9126
 1992 - Technical debt metaphor by Ward
Cunningham
 90’s - Sun Java Code Conventions
 Our own manual review (WebMethods, Drools)
17
Orange Polska for IWSM Mensura, Cracow 2015
Tools used for the static review of source code
pros & cons
 Many supported technologies
 Tracks cross-layer dependencies
 Semi-automated count of function points
 Cost of license
 Needs extensive training to operate
 Not automated (as its manufacturer might
claim)
 Cannot be run by any vendor before code
hand-over
CAST
Sonar
 No license fee
 Integrated with dev tools
 Supports few technologies
 Some plugins are not open-source
HP Fortify
 Security oriented
 Only security oriented
 Not free of charge
18
Orange Polska for IWSM Mensura, Cracow 2015
Quality metrics
Content of contracts with vendors
Low level rules
Aggregate
Total
Grade
Expected
improvement
< 3.10 0,25
3.1 - 3.5 0,15
> 3.50 0,10
Expected
yearly
improvement
Tree-based aggregation with weights
Values from 1 (bad) to 4 (very good)
19
Orange Polska for IWSM Mensura, Cracow 2015
We prevented the increase of technical debt
Technical
Quality
Index
 Discovered acts of sabotage – removing comments to hamper the change of vendor
 Created rules for the analyzer to prevent technology-specific anti-patterns
(based on test reports)
 Fewer production incidents by 4%
 Increase of code performance prevented infrastructure spending
Benefits
20
Orange Polska for IWSM Mensura, Cracow 2015
Challenges
We found that vendors differ vastly
in terms of delivered quality
Reviews may be used to create
a ranking of software vendors
Functionalities always prevail over
internal quality
We need quality metrics in contracts
Vendors tend to claim too many
false-positives
Anti-patterns remain in the code,
aggregate metrics (CAST TQI) may be
used to exert pressure on the vendor
There have to be penalties in contracts
for poor quality. Or at least KPIs
inspected by top management
Good-will assumption does not work
21
Orange Polska for IWSM Mensura, Cracow 2015
Service for third parties – scope and tools
Quality audits by Orange Polska*
Static code review
 CAST & Sonar (cyclical & one shot), including adding new rules
Productivity review
 CAST (automated function points)
Open-source licenses review
 Palamida
Security audit
 HP Fortify
Software process improvement
 SVN, Git, Jenkins (continuous integration)
* provisioned in English, French and Polish
22
Orange Polska for IWSM Mensura, Cracow 2015
Thank you
Bogusz Jeliński
bogusz.jelinski2@orange.com
Piotr Popowski
piotr.popowski@orange.com
IWSM Mensura 2015
Estimating size and price
for IT projects using FPA
method
Automated code review

More Related Content

What's hot

The effects of duration based moving windows with estimation by analogy - sou...
The effects of duration based moving windows with estimation by analogy - sou...The effects of duration based moving windows with estimation by analogy - sou...
The effects of duration based moving windows with estimation by analogy - sou...IWSM Mensura
 
A benchmark based approach to determine language verbosity - Hans Kuijpers - ...
A benchmark based approach to determine language verbosity - Hans Kuijpers - ...A benchmark based approach to determine language verbosity - Hans Kuijpers - ...
A benchmark based approach to determine language verbosity - Hans Kuijpers - ...Nesma
 
Best Practices in Software Cost Estimation - Metrikon 2015 - Frank Vogelezang
Best Practices in Software Cost Estimation - Metrikon 2015 - Frank VogelezangBest Practices in Software Cost Estimation - Metrikon 2015 - Frank Vogelezang
Best Practices in Software Cost Estimation - Metrikon 2015 - Frank VogelezangFrank Vogelezang
 
Implementing Level 5 Metrics Programme @ Capgemini Netherlands
Implementing Level 5 Metrics Programme @ Capgemini NetherlandsImplementing Level 5 Metrics Programme @ Capgemini Netherlands
Implementing Level 5 Metrics Programme @ Capgemini NetherlandsNiteen Kumar
 
Software or Service? That’s the question!
Software or Service? That’s the question!Software or Service? That’s the question!
Software or Service? That’s the question!Luigi Buglione
 
Drupalcon la estimation john_nollin
Drupalcon la estimation john_nollinDrupalcon la estimation john_nollin
Drupalcon la estimation john_nollinHai Vo Hoang
 
Estimation techniques and software metrics
Estimation techniques and software metricsEstimation techniques and software metrics
Estimation techniques and software metricsMae Abigail Banquil
 
Se 381 - lec 25 - 32 - 12 may29 - program size and cost estimation models
Se 381 - lec 25 - 32 - 12 may29 - program size and cost estimation modelsSe 381 - lec 25 - 32 - 12 may29 - program size and cost estimation models
Se 381 - lec 25 - 32 - 12 may29 - program size and cost estimation modelsbabak danyal
 
Testing Metrics: Project, Product, Process
Testing Metrics: Project, Product, ProcessTesting Metrics: Project, Product, Process
Testing Metrics: Project, Product, ProcessTechWell
 
Software sizing the cornerstone for iceaa's scebok - Carol Dekkers
Software sizing the cornerstone for iceaa's scebok - Carol DekkersSoftware sizing the cornerstone for iceaa's scebok - Carol Dekkers
Software sizing the cornerstone for iceaa's scebok - Carol DekkersNesma
 
Making fixed price software projects profitable through management training
Making fixed price software projects profitable through management trainingMaking fixed price software projects profitable through management training
Making fixed price software projects profitable through management trainingNagaraja Gundappa
 
Migration Decoded
Migration DecodedMigration Decoded
Migration DecodedCognizant
 
A Review of Agile Software Effort Estimation Methods
A Review of Agile Software Effort Estimation MethodsA Review of Agile Software Effort Estimation Methods
A Review of Agile Software Effort Estimation MethodsEditor IJCATR
 
Test effort estimation
Test effort estimationTest effort estimation
Test effort estimationramesh kumar
 
Software cost estimation
Software cost estimationSoftware cost estimation
Software cost estimationdjview
 
Software cost estimation
Software cost estimationSoftware cost estimation
Software cost estimationHaitham Ahmed
 
Software selection and implementation in the real world
Software selection and implementation in the real worldSoftware selection and implementation in the real world
Software selection and implementation in the real worldSoftworld
 

What's hot (20)

The effects of duration based moving windows with estimation by analogy - sou...
The effects of duration based moving windows with estimation by analogy - sou...The effects of duration based moving windows with estimation by analogy - sou...
The effects of duration based moving windows with estimation by analogy - sou...
 
A benchmark based approach to determine language verbosity - Hans Kuijpers - ...
A benchmark based approach to determine language verbosity - Hans Kuijpers - ...A benchmark based approach to determine language verbosity - Hans Kuijpers - ...
A benchmark based approach to determine language verbosity - Hans Kuijpers - ...
 
Best Practices in Software Cost Estimation - Metrikon 2015 - Frank Vogelezang
Best Practices in Software Cost Estimation - Metrikon 2015 - Frank VogelezangBest Practices in Software Cost Estimation - Metrikon 2015 - Frank Vogelezang
Best Practices in Software Cost Estimation - Metrikon 2015 - Frank Vogelezang
 
Implementing Level 5 Metrics Programme @ Capgemini Netherlands
Implementing Level 5 Metrics Programme @ Capgemini NetherlandsImplementing Level 5 Metrics Programme @ Capgemini Netherlands
Implementing Level 5 Metrics Programme @ Capgemini Netherlands
 
Software or Service? That’s the question!
Software or Service? That’s the question!Software or Service? That’s the question!
Software or Service? That’s the question!
 
Drupalcon la estimation john_nollin
Drupalcon la estimation john_nollinDrupalcon la estimation john_nollin
Drupalcon la estimation john_nollin
 
Estimation techniques and software metrics
Estimation techniques and software metricsEstimation techniques and software metrics
Estimation techniques and software metrics
 
Se 381 - lec 25 - 32 - 12 may29 - program size and cost estimation models
Se 381 - lec 25 - 32 - 12 may29 - program size and cost estimation modelsSe 381 - lec 25 - 32 - 12 may29 - program size and cost estimation models
Se 381 - lec 25 - 32 - 12 may29 - program size and cost estimation models
 
Testing Metrics: Project, Product, Process
Testing Metrics: Project, Product, ProcessTesting Metrics: Project, Product, Process
Testing Metrics: Project, Product, Process
 
Software sizing the cornerstone for iceaa's scebok - Carol Dekkers
Software sizing the cornerstone for iceaa's scebok - Carol DekkersSoftware sizing the cornerstone for iceaa's scebok - Carol Dekkers
Software sizing the cornerstone for iceaa's scebok - Carol Dekkers
 
Making fixed price software projects profitable through management training
Making fixed price software projects profitable through management trainingMaking fixed price software projects profitable through management training
Making fixed price software projects profitable through management training
 
Software Cost Estimation
Software Cost EstimationSoftware Cost Estimation
Software Cost Estimation
 
Migration Decoded
Migration DecodedMigration Decoded
Migration Decoded
 
CNMES15 - Estimation con COSMIC - Alain Abran
CNMES15 - Estimation con COSMIC - Alain AbranCNMES15 - Estimation con COSMIC - Alain Abran
CNMES15 - Estimation con COSMIC - Alain Abran
 
A Review of Agile Software Effort Estimation Methods
A Review of Agile Software Effort Estimation MethodsA Review of Agile Software Effort Estimation Methods
A Review of Agile Software Effort Estimation Methods
 
Test effort estimation
Test effort estimationTest effort estimation
Test effort estimation
 
Software cost estimation
Software cost estimationSoftware cost estimation
Software cost estimation
 
Ch26
Ch26Ch26
Ch26
 
Software cost estimation
Software cost estimationSoftware cost estimation
Software cost estimation
 
Software selection and implementation in the real world
Software selection and implementation in the real worldSoftware selection and implementation in the real world
Software selection and implementation in the real world
 

Viewers also liked

A unified model for custom software price determination in contracts robert...
A unified model for custom software price determination in contracts   robert...A unified model for custom software price determination in contracts   robert...
A unified model for custom software price determination in contracts robert...IWSM Mensura
 
A process to improve the accuracy of mk ii fp to cosmic charles symons
A process to improve the accuracy of mk ii fp to cosmic    charles symonsA process to improve the accuracy of mk ii fp to cosmic    charles symons
A process to improve the accuracy of mk ii fp to cosmic charles symonsIWSM Mensura
 
Functional size measurement for processor load estimation hassan soubra
Functional size measurement for processor load estimation   hassan soubraFunctional size measurement for processor load estimation   hassan soubra
Functional size measurement for processor load estimation hassan soubraIWSM Mensura
 
Applying manufacturing performance figures to measure software development ex...
Applying manufacturing performance figures to measure software development ex...Applying manufacturing performance figures to measure software development ex...
Applying manufacturing performance figures to measure software development ex...IWSM Mensura
 
Analytic hierarchy process for pif thomas fehlmann
Analytic hierarchy process for pif   thomas fehlmannAnalytic hierarchy process for pif   thomas fehlmann
Analytic hierarchy process for pif thomas fehlmannIWSM Mensura
 
From software to service sustainability a still broader perspective - luigi...
From software to service sustainability   a still broader perspective - luigi...From software to service sustainability   a still broader perspective - luigi...
From software to service sustainability a still broader perspective - luigi...IWSM Mensura
 
Improving the cosmic approximate sizing using the fuzzy logic epcu model al...
Improving the cosmic approximate sizing using the fuzzy logic epcu model   al...Improving the cosmic approximate sizing using the fuzzy logic epcu model   al...
Improving the cosmic approximate sizing using the fuzzy logic epcu model al...IWSM Mensura
 
Automatic measurements of use cases with cosmic thomas fehlmann
Automatic measurements of use cases with cosmic   thomas fehlmannAutomatic measurements of use cases with cosmic   thomas fehlmann
Automatic measurements of use cases with cosmic thomas fehlmannIWSM Mensura
 
Designing an unobtrusive analytics framework for monitoring java applications...
Designing an unobtrusive analytics framework for monitoring java applications...Designing an unobtrusive analytics framework for monitoring java applications...
Designing an unobtrusive analytics framework for monitoring java applications...IWSM Mensura
 
Energy wasting rate jérôme rocheteau
Energy wasting rate   jérôme rocheteauEnergy wasting rate   jérôme rocheteau
Energy wasting rate jérôme rocheteauIWSM Mensura
 
Measurement as-a-service a new way of organizing metrics programs - wilhelm m...
Measurement as-a-service a new way of organizing metrics programs - wilhelm m...Measurement as-a-service a new way of organizing metrics programs - wilhelm m...
Measurement as-a-service a new way of organizing metrics programs - wilhelm m...IWSM Mensura
 
A suite of rules for developing and evaluating software quality models jean...
A suite of rules for developing and evaluating software quality models   jean...A suite of rules for developing and evaluating software quality models   jean...
A suite of rules for developing and evaluating software quality models jean...IWSM Mensura
 
Quantitative functional change impact analysis in activity diagrams a cosmi...
Quantitative functional change impact analysis in activity diagrams   a cosmi...Quantitative functional change impact analysis in activity diagrams   a cosmi...
Quantitative functional change impact analysis in activity diagrams a cosmi...IWSM Mensura
 
Estimation and measuring of software size within the atos gobal delivery plat...
Estimation and measuring of software size within the atos gobal delivery plat...Estimation and measuring of software size within the atos gobal delivery plat...
Estimation and measuring of software size within the atos gobal delivery plat...IWSM Mensura
 
BigDataBx #1 - BigData et Protection de Données Privées
BigDataBx #1 - BigData et Protection de Données PrivéesBigDataBx #1 - BigData et Protection de Données Privées
BigDataBx #1 - BigData et Protection de Données PrivéesExcelerate Systems
 
Comment developper une stratégie de contenu ?
Comment developper une stratégie de contenu ?Comment developper une stratégie de contenu ?
Comment developper une stratégie de contenu ?Agence web AxeNet
 

Viewers also liked (16)

A unified model for custom software price determination in contracts robert...
A unified model for custom software price determination in contracts   robert...A unified model for custom software price determination in contracts   robert...
A unified model for custom software price determination in contracts robert...
 
A process to improve the accuracy of mk ii fp to cosmic charles symons
A process to improve the accuracy of mk ii fp to cosmic    charles symonsA process to improve the accuracy of mk ii fp to cosmic    charles symons
A process to improve the accuracy of mk ii fp to cosmic charles symons
 
Functional size measurement for processor load estimation hassan soubra
Functional size measurement for processor load estimation   hassan soubraFunctional size measurement for processor load estimation   hassan soubra
Functional size measurement for processor load estimation hassan soubra
 
Applying manufacturing performance figures to measure software development ex...
Applying manufacturing performance figures to measure software development ex...Applying manufacturing performance figures to measure software development ex...
Applying manufacturing performance figures to measure software development ex...
 
Analytic hierarchy process for pif thomas fehlmann
Analytic hierarchy process for pif   thomas fehlmannAnalytic hierarchy process for pif   thomas fehlmann
Analytic hierarchy process for pif thomas fehlmann
 
From software to service sustainability a still broader perspective - luigi...
From software to service sustainability   a still broader perspective - luigi...From software to service sustainability   a still broader perspective - luigi...
From software to service sustainability a still broader perspective - luigi...
 
Improving the cosmic approximate sizing using the fuzzy logic epcu model al...
Improving the cosmic approximate sizing using the fuzzy logic epcu model   al...Improving the cosmic approximate sizing using the fuzzy logic epcu model   al...
Improving the cosmic approximate sizing using the fuzzy logic epcu model al...
 
Automatic measurements of use cases with cosmic thomas fehlmann
Automatic measurements of use cases with cosmic   thomas fehlmannAutomatic measurements of use cases with cosmic   thomas fehlmann
Automatic measurements of use cases with cosmic thomas fehlmann
 
Designing an unobtrusive analytics framework for monitoring java applications...
Designing an unobtrusive analytics framework for monitoring java applications...Designing an unobtrusive analytics framework for monitoring java applications...
Designing an unobtrusive analytics framework for monitoring java applications...
 
Energy wasting rate jérôme rocheteau
Energy wasting rate   jérôme rocheteauEnergy wasting rate   jérôme rocheteau
Energy wasting rate jérôme rocheteau
 
Measurement as-a-service a new way of organizing metrics programs - wilhelm m...
Measurement as-a-service a new way of organizing metrics programs - wilhelm m...Measurement as-a-service a new way of organizing metrics programs - wilhelm m...
Measurement as-a-service a new way of organizing metrics programs - wilhelm m...
 
A suite of rules for developing and evaluating software quality models jean...
A suite of rules for developing and evaluating software quality models   jean...A suite of rules for developing and evaluating software quality models   jean...
A suite of rules for developing and evaluating software quality models jean...
 
Quantitative functional change impact analysis in activity diagrams a cosmi...
Quantitative functional change impact analysis in activity diagrams   a cosmi...Quantitative functional change impact analysis in activity diagrams   a cosmi...
Quantitative functional change impact analysis in activity diagrams a cosmi...
 
Estimation and measuring of software size within the atos gobal delivery plat...
Estimation and measuring of software size within the atos gobal delivery plat...Estimation and measuring of software size within the atos gobal delivery plat...
Estimation and measuring of software size within the atos gobal delivery plat...
 
BigDataBx #1 - BigData et Protection de Données Privées
BigDataBx #1 - BigData et Protection de Données PrivéesBigDataBx #1 - BigData et Protection de Données Privées
BigDataBx #1 - BigData et Protection de Données Privées
 
Comment developper une stratégie de contenu ?
Comment developper une stratégie de contenu ?Comment developper une stratégie de contenu ?
Comment developper une stratégie de contenu ?
 

Similar to Automated Code Review and Function Point Analysis for IT Projects

PWC Software Robotics
PWC Software RoboticsPWC Software Robotics
PWC Software RoboticsUiPath
 
The value of benchmarking IT projects - H.S. van Heeringen
The value of benchmarking IT projects - H.S. van HeeringenThe value of benchmarking IT projects - H.S. van Heeringen
The value of benchmarking IT projects - H.S. van HeeringenHarold van Heeringen
 
SPS IPC Drives 2015 - Itris Automation paper
SPS IPC Drives 2015 - Itris Automation paperSPS IPC Drives 2015 - Itris Automation paper
SPS IPC Drives 2015 - Itris Automation paperItris Automation Square
 
Fpa Cosmic Ffp Convertability Final
Fpa   Cosmic Ffp Convertability FinalFpa   Cosmic Ffp Convertability Final
Fpa Cosmic Ffp Convertability FinalHarold van Heeringen
 
Pmi, Opm3 And Cmmi Assessment Overview
Pmi, Opm3 And Cmmi Assessment OverviewPmi, Opm3 And Cmmi Assessment Overview
Pmi, Opm3 And Cmmi Assessment OverviewAlan McSweeney
 
Process Improvement Summary External
Process Improvement Summary ExternalProcess Improvement Summary External
Process Improvement Summary ExternalPeter Bufford
 
Functional point analysis
Functional point analysisFunctional point analysis
Functional point analysisDestinationQA
 
Dhaval Shah on "Strategic Alignment Of Projects For Higher Profits And Increa...
Dhaval Shah on "Strategic Alignment Of Projects For Higher Profits And Increa...Dhaval Shah on "Strategic Alignment Of Projects For Higher Profits And Increa...
Dhaval Shah on "Strategic Alignment Of Projects For Higher Profits And Increa...PMI Pearl City Chapter
 
ISMA 9 - van Heeringen - Using IFPUG and ISBSG to improve organization success
ISMA 9 - van Heeringen - Using IFPUG and ISBSG to improve organization successISMA 9 - van Heeringen - Using IFPUG and ISBSG to improve organization success
ISMA 9 - van Heeringen - Using IFPUG and ISBSG to improve organization successHarold van Heeringen
 
CS8494 SOFTWARE ENGINEERING Unit-5
CS8494 SOFTWARE ENGINEERING Unit-5CS8494 SOFTWARE ENGINEERING Unit-5
CS8494 SOFTWARE ENGINEERING Unit-5SIMONTHOMAS S
 
Demantra Case Study Doug
Demantra Case Study DougDemantra Case Study Doug
Demantra Case Study Dougsichie
 
Estimation techniques and risk management
Estimation techniques and risk managementEstimation techniques and risk management
Estimation techniques and risk managementPurushottam Basnet
 
Rcose challenges and benefits from using software analytics in softeam
Rcose  challenges and benefits from using software analytics in softeamRcose  challenges and benefits from using software analytics in softeam
Rcose challenges and benefits from using software analytics in softeamAlessandra Bagnato
 
CA Mainframe Resource Intelligence
CA Mainframe Resource IntelligenceCA Mainframe Resource Intelligence
CA Mainframe Resource IntelligenceCA Technologies
 
Sandesh cv_Test Engineer
Sandesh cv_Test EngineerSandesh cv_Test Engineer
Sandesh cv_Test EngineerSandesh Satpute
 
Connect 4-pov-rachel obstler
Connect 4-pov-rachel obstlerConnect 4-pov-rachel obstler
Connect 4-pov-rachel obstlerKeynoteSystems
 
Software Cost Estimation in Software Engineering SE23
Software Cost Estimation in Software Engineering SE23Software Cost Estimation in Software Engineering SE23
Software Cost Estimation in Software Engineering SE23koolkampus
 

Similar to Automated Code Review and Function Point Analysis for IT Projects (20)

PWC Software Robotics
PWC Software RoboticsPWC Software Robotics
PWC Software Robotics
 
The value of benchmarking IT projects - H.S. van Heeringen
The value of benchmarking IT projects - H.S. van HeeringenThe value of benchmarking IT projects - H.S. van Heeringen
The value of benchmarking IT projects - H.S. van Heeringen
 
SPS IPC Drives 2015 - Itris Automation paper
SPS IPC Drives 2015 - Itris Automation paperSPS IPC Drives 2015 - Itris Automation paper
SPS IPC Drives 2015 - Itris Automation paper
 
Fpa Cosmic Ffp Convertability Final
Fpa   Cosmic Ffp Convertability FinalFpa   Cosmic Ffp Convertability Final
Fpa Cosmic Ffp Convertability Final
 
SW_Cost_Estimation.ppt
SW_Cost_Estimation.pptSW_Cost_Estimation.ppt
SW_Cost_Estimation.ppt
 
Pmi, Opm3 And Cmmi Assessment Overview
Pmi, Opm3 And Cmmi Assessment OverviewPmi, Opm3 And Cmmi Assessment Overview
Pmi, Opm3 And Cmmi Assessment Overview
 
Process Improvement Summary External
Process Improvement Summary ExternalProcess Improvement Summary External
Process Improvement Summary External
 
Functional point analysis
Functional point analysisFunctional point analysis
Functional point analysis
 
En Portfolio Caps 2009
En Portfolio Caps 2009En Portfolio Caps 2009
En Portfolio Caps 2009
 
Dhaval Shah on "Strategic Alignment Of Projects For Higher Profits And Increa...
Dhaval Shah on "Strategic Alignment Of Projects For Higher Profits And Increa...Dhaval Shah on "Strategic Alignment Of Projects For Higher Profits And Increa...
Dhaval Shah on "Strategic Alignment Of Projects For Higher Profits And Increa...
 
ISMA 9 - van Heeringen - Using IFPUG and ISBSG to improve organization success
ISMA 9 - van Heeringen - Using IFPUG and ISBSG to improve organization successISMA 9 - van Heeringen - Using IFPUG and ISBSG to improve organization success
ISMA 9 - van Heeringen - Using IFPUG and ISBSG to improve organization success
 
CS8494 SOFTWARE ENGINEERING Unit-5
CS8494 SOFTWARE ENGINEERING Unit-5CS8494 SOFTWARE ENGINEERING Unit-5
CS8494 SOFTWARE ENGINEERING Unit-5
 
Rpa consulting service in cognic
Rpa consulting service in cognicRpa consulting service in cognic
Rpa consulting service in cognic
 
Demantra Case Study Doug
Demantra Case Study DougDemantra Case Study Doug
Demantra Case Study Doug
 
Estimation techniques and risk management
Estimation techniques and risk managementEstimation techniques and risk management
Estimation techniques and risk management
 
Rcose challenges and benefits from using software analytics in softeam
Rcose  challenges and benefits from using software analytics in softeamRcose  challenges and benefits from using software analytics in softeam
Rcose challenges and benefits from using software analytics in softeam
 
CA Mainframe Resource Intelligence
CA Mainframe Resource IntelligenceCA Mainframe Resource Intelligence
CA Mainframe Resource Intelligence
 
Sandesh cv_Test Engineer
Sandesh cv_Test EngineerSandesh cv_Test Engineer
Sandesh cv_Test Engineer
 
Connect 4-pov-rachel obstler
Connect 4-pov-rachel obstlerConnect 4-pov-rachel obstler
Connect 4-pov-rachel obstler
 
Software Cost Estimation in Software Engineering SE23
Software Cost Estimation in Software Engineering SE23Software Cost Estimation in Software Engineering SE23
Software Cost Estimation in Software Engineering SE23
 

More from IWSM Mensura

Software or service that's the question luigi buglione
Software or service that's the question   luigi buglioneSoftware or service that's the question   luigi buglione
Software or service that's the question luigi buglioneIWSM Mensura
 
Performance measurement of agile teams harold van heeringen
Performance measurement of agile teams   harold van heeringenPerformance measurement of agile teams   harold van heeringen
Performance measurement of agile teams harold van heeringenIWSM Mensura
 
Do we measure functional size or do we count thomas fehlmann
Do we measure functional size or do we count   thomas fehlmannDo we measure functional size or do we count   thomas fehlmann
Do we measure functional size or do we count thomas fehlmannIWSM Mensura
 
Combining qualitative and quantitative software process evaluation sylvie t...
Combining qualitative and quantitative software process evaluation   sylvie t...Combining qualitative and quantitative software process evaluation   sylvie t...
Combining qualitative and quantitative software process evaluation sylvie t...IWSM Mensura
 
Automatic measurements of use cases with cosmic thomas fehlmann
Automatic measurements of use cases with cosmic   thomas fehlmannAutomatic measurements of use cases with cosmic   thomas fehlmann
Automatic measurements of use cases with cosmic thomas fehlmannIWSM Mensura
 
Automated functional size measurement for three tier object relational mappin...
Automated functional size measurement for three tier object relational mappin...Automated functional size measurement for three tier object relational mappin...
Automated functional size measurement for three tier object relational mappin...IWSM Mensura
 
An architecture for effort estimation of solutions donatien koulla moulla
An architecture for effort estimation of solutions   donatien koulla moullaAn architecture for effort estimation of solutions   donatien koulla moulla
An architecture for effort estimation of solutions donatien koulla moullaIWSM Mensura
 
A functional software measurement approach bridging the gap between problem a...
A functional software measurement approach bridging the gap between problem a...A functional software measurement approach bridging the gap between problem a...
A functional software measurement approach bridging the gap between problem a...IWSM Mensura
 

More from IWSM Mensura (8)

Software or service that's the question luigi buglione
Software or service that's the question   luigi buglioneSoftware or service that's the question   luigi buglione
Software or service that's the question luigi buglione
 
Performance measurement of agile teams harold van heeringen
Performance measurement of agile teams   harold van heeringenPerformance measurement of agile teams   harold van heeringen
Performance measurement of agile teams harold van heeringen
 
Do we measure functional size or do we count thomas fehlmann
Do we measure functional size or do we count   thomas fehlmannDo we measure functional size or do we count   thomas fehlmann
Do we measure functional size or do we count thomas fehlmann
 
Combining qualitative and quantitative software process evaluation sylvie t...
Combining qualitative and quantitative software process evaluation   sylvie t...Combining qualitative and quantitative software process evaluation   sylvie t...
Combining qualitative and quantitative software process evaluation sylvie t...
 
Automatic measurements of use cases with cosmic thomas fehlmann
Automatic measurements of use cases with cosmic   thomas fehlmannAutomatic measurements of use cases with cosmic   thomas fehlmann
Automatic measurements of use cases with cosmic thomas fehlmann
 
Automated functional size measurement for three tier object relational mappin...
Automated functional size measurement for three tier object relational mappin...Automated functional size measurement for three tier object relational mappin...
Automated functional size measurement for three tier object relational mappin...
 
An architecture for effort estimation of solutions donatien koulla moulla
An architecture for effort estimation of solutions   donatien koulla moullaAn architecture for effort estimation of solutions   donatien koulla moulla
An architecture for effort estimation of solutions donatien koulla moulla
 
A functional software measurement approach bridging the gap between problem a...
A functional software measurement approach bridging the gap between problem a...A functional software measurement approach bridging the gap between problem a...
A functional software measurement approach bridging the gap between problem a...
 

Recently uploaded

Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyFrank van der Linden
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 
XpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsXpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsMehedi Hasan Shohan
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
buds n tech IT solutions
buds n  tech IT                solutionsbuds n  tech IT                solutions
buds n tech IT solutionsmonugehlot87
 
What are the features of Vehicle Tracking System?
What are the features of Vehicle Tracking System?What are the features of Vehicle Tracking System?
What are the features of Vehicle Tracking System?Watsoo Telematics
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
cybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningcybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningVitsRangannavar
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...aditisharan08
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝soniya singh
 

Recently uploaded (20)

Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The Ugly
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
XpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsXpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software Solutions
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
buds n tech IT solutions
buds n  tech IT                solutionsbuds n  tech IT                solutions
buds n tech IT solutions
 
What are the features of Vehicle Tracking System?
What are the features of Vehicle Tracking System?What are the features of Vehicle Tracking System?
What are the features of Vehicle Tracking System?
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
cybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningcybersecurity notes for mca students for learning
cybersecurity notes for mca students for learning
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
 

Automated Code Review and Function Point Analysis for IT Projects

  • 1. 1 Orange Polska for IWSM Mensura, Cracow 2015 Orange Polska IWSM Mensura 2015 Practical usage of FPA and automated code review Piotr Popowski & Bogusz Jeliński IT Applications
  • 2. 2 Orange Polska for IWSM Mensura, Cracow 2015 What we measure, count or look for in Orange Function Points  Manual, IFPUG-based counting for pricing Quality of code (static review)  Violations of patterns  Weighted average of low-level grades  Defects per FP Software process maturity, repository, continuous integration Automated FP Complete source code
  • 3. 3 Orange Polska for IWSM Mensura, Cracow 2015 Measurement in figures MANY TECHNOLOGIES JAVA, C/C++, PHP, PL/SQL, WEB METHODS, PEOPLE SOFT, POWER BUILDER, ABAP, ORACLE FORMS, etc. 1 000 000 FP COUNTED 800 PROJECTS (GO-LIVES) 1 500 CODE AUDITS 7 DOMAINS 5 VENDORS 4 800 ENHANCEMENT COUNTS (incl. CRs) 200 IT SYSTEMS 5 YEARS EXPERIENCE
  • 4. 4 Orange Polska for IWSM Mensura, Cracow 2015 Part 1 Estimating size and price for IT projects using FPA method Piotr Popowski – IT Applications, Orange Polska Contact: piotr.popowski@orange.com
  • 5. 5 Orange Polska for IWSM Mensura, Cracow 2015 Context In 2010 Orange Polska transformed its sourcing strategy from multi-vendor to consolidated vendor agreements. In return for a long-term contract, the company offered its suppliers exclusive rights to deliver software changes in particular IT areas.  Vendors consolidation  Solution  Challenge Lack of free market pricing mechanisms, as implied by the contracts, imposed the necessity to implement a dedicated sourcing and pricing method. To meet the new challenges Orange Polska adopted a new method of estimating IT development size, workload and finally, pricing.
  • 6. 6 Orange Polska for IWSM Mensura, Cracow 2015 From FP to price In four steps FP and SNAP count based on IFPUG and custom rules FP adjustment Adjusting number of FP. Impact ratios based on COCOMO II effort calculation Contract-based productivity ratios related to vendor, system and technology price Price calculation using rates defined in contracts FP SP Calculated by Orange and vendor analysts Verified and authorized by OPL IFPUG certified team Orange and vendor analysts Sourcing division Sourcing division
  • 7. 7 Orange Polska for IWSM Mensura, Cracow 2015 Customization Custom rules The custom rules cover the areas where IFPUG FPA proved to be in some way deficient Custom rules  5% of FPs is „Rule 27” algorithmic complexity - internal data processing where data does not cross application boundary  7% of FPs is „Rule 30” reusability – a reusable component, where development is made once but analysis and tests are conducted for many elementary processes  20% of FPs – dedicated rules for 26 systems in the following areas  Integration  Business Intelligence (ex. Data Warehousing)  Wholesale
  • 8. 8 Orange Polska for IWSM Mensura, Cracow 2015 Customization FP adjusting The main goal of adjusting is to assess effort  Adjustation is made separately for each BFC (Base Functional Component)  Impact ratios are defined based on COCOMO II Equation 4  Impacts are expert-estimated and mutually agreed  Also using NESMA impacts as reference Creation or huge change Moderate change Small change Suppression or COTS Effort
  • 9. 9 Orange Polska for IWSM Mensura, Cracow 2015 Customization Productivity  Productivity ratios were established during vendor selection process  COCOMO II factors were used as reference for determining productivity Productivity Technology System Vendor Year of contract
  • 10. 10 Orange Polska for IWSM Mensura, Cracow 2015 Knowledge base and tools FP calculation  CARTO – Excel spreadsheet for doing detailed calculations based on HLD  Full decomposition: project > system > functionality > BFC (or SCU for SNAP)  Additional information for effort calculation (e.g. technology, impact)  FP adjustment Document and report  FP Repository – all data from CARTOs recorded in a dedicated system  Over 30 on-line generated reports available from the repository  Progressive build of Application Count HLD CARTO REPOSITORY REPORTS
  • 11. 11 Orange Polska for IWSM Mensura, Cracow 2015 Common pricing model  Instead of tenders, quotes and negotiations – objective pricing Budget and capacity early estimation  Based on historical data Project Roadmap management  Project assignment to particular path depending on path capacity  Path management – schedule and capacity KPIs  Cost efficiency – spending/FP  Quality – errors/kFP Process optimization  Better and more precise analytical documents (HLD)  Tracing volume of changes in IT projects (e.g. number of projects, number of change requests, changing size of average project in particular domain) Benefits
  • 12. 12 Orange Polska for IWSM Mensura, Cracow 2015 Challenges Introduce another measuring method in order to verify or improve current model (e.g. Use Case Points) Measuring Agile projects Improving the way to measure configuration changes Introduce NESMA impacts
  • 13. 13 Orange Polska for IWSM Mensura, Cracow 2015 Orange Polska experience Since 2010  Has a dedicated, internal, IFPUG certified Metric Team  Uses IFPUG FPA (and SNAP since 2012 ) for pricing IT projects  Uses metrics to manage Project Roadmap and IT budget Dedicated Metric Team provides the following services  Design and implementation of effort estimation and pricing models for IT contracts  FPA, SNAP and custom trainings  Methodology, contract and project audits Services are offered internally and externally, both on-site (currently Warsaw and Cracow) as well as remotely
  • 14. 14 Orange Polska for IWSM Mensura, Cracow 2015 Part 2 Automated code review dr Bogusz Jeliński – IT Architecture Strategy, Orange Polska Contact: bogusz.jelinski2@orange.com
  • 15. 15 Orange Polska for IWSM Mensura, Cracow 2015 What we measure, count or look for in Orange Function Points  Manual, IFPUG-based counting for pricing Quality of code (static review)  Violations of patterns  Weighted average of low-level grades  Defects per FP Software process maturity, repository, continuous integration Automated FP Complete source code
  • 16. 16 Orange Polska for IWSM Mensura, Cracow 2015 Code review – history & inspirations  1976 - Fagan’s classic article in IBM Systems Journal  1979 - Lint for Unix V7  1991 - ISO/IEC 9126  1992 - Technical debt metaphor by Ward Cunningham  90’s - Sun Java Code Conventions  Our own manual review (WebMethods, Drools)
  • 17. 17 Orange Polska for IWSM Mensura, Cracow 2015 Tools used for the static review of source code pros & cons  Many supported technologies  Tracks cross-layer dependencies  Semi-automated count of function points  Cost of license  Needs extensive training to operate  Not automated (as its manufacturer might claim)  Cannot be run by any vendor before code hand-over CAST Sonar  No license fee  Integrated with dev tools  Supports few technologies  Some plugins are not open-source HP Fortify  Security oriented  Only security oriented  Not free of charge
  • 18. 18 Orange Polska for IWSM Mensura, Cracow 2015 Quality metrics Content of contracts with vendors Low level rules Aggregate Total Grade Expected improvement < 3.10 0,25 3.1 - 3.5 0,15 > 3.50 0,10 Expected yearly improvement Tree-based aggregation with weights Values from 1 (bad) to 4 (very good)
  • 19. 19 Orange Polska for IWSM Mensura, Cracow 2015 We prevented the increase of technical debt Technical Quality Index  Discovered acts of sabotage – removing comments to hamper the change of vendor  Created rules for the analyzer to prevent technology-specific anti-patterns (based on test reports)  Fewer production incidents by 4%  Increase of code performance prevented infrastructure spending Benefits
  • 20. 20 Orange Polska for IWSM Mensura, Cracow 2015 Challenges We found that vendors differ vastly in terms of delivered quality Reviews may be used to create a ranking of software vendors Functionalities always prevail over internal quality We need quality metrics in contracts Vendors tend to claim too many false-positives Anti-patterns remain in the code, aggregate metrics (CAST TQI) may be used to exert pressure on the vendor There have to be penalties in contracts for poor quality. Or at least KPIs inspected by top management Good-will assumption does not work
  • 21. 21 Orange Polska for IWSM Mensura, Cracow 2015 Service for third parties – scope and tools Quality audits by Orange Polska* Static code review  CAST & Sonar (cyclical & one shot), including adding new rules Productivity review  CAST (automated function points) Open-source licenses review  Palamida Security audit  HP Fortify Software process improvement  SVN, Git, Jenkins (continuous integration) * provisioned in English, French and Polish
  • 22. 22 Orange Polska for IWSM Mensura, Cracow 2015 Thank you Bogusz Jeliński bogusz.jelinski2@orange.com Piotr Popowski piotr.popowski@orange.com IWSM Mensura 2015 Estimating size and price for IT projects using FPA method Automated code review