SlideShare a Scribd company logo
1 of 32
Measure the functional size
of a mobile app
Harold van Heeringen & Edwin van Gorp
|
Measure the functional size
of a mobile app
Using the COSMIC functional size measurement method
Harold van Heeringen
Senior consultant software metrics
Department Sizing, Estimating & Control
Sogeti Nederland B.V.
harold.van.heeringen@sogeti.nl
@haroldveendam Rotterdam, October 6th, 2014
2IWSM-Mensura 2014
|
Overview
 Reasons for this paper/presentation;
 Mobile apps – why are they different?;
 Why measure apps using COSMIC?;
 Short COSMIC overview;
 The proposed approximate method;
 Conclusions.
IWSM-Mensura 2014 3
|
Beware!
 This is a technical paper/presentation!
 Knowledge of the COSMIC method is required!
IWSM-Mensura 2014 4
|
Reasons for this paper/presentation
5IWSM-Mensura 2014
|
Why?
 IT industry is changing – new types of applications and
ways to interact with software arise, for example:
 Cloud computing;
 Google glass;
 Mobile apps.
 Software sizing, estimation and benchmarking
challenges:
 Fixed price/fixed date app development.
 Need for methods and guidelines to apply standards
to sizing, estimating and benchmarking.
IWSM-Mensura 2014 6
|
Mobile apps
 Do I really have to introduce these?
IWSM-Mensura 2014 7
|
Some characteristics
 Downloaded on a mobile device, like phone or tablet;
 Connects to the internet (Wi-Fi/cellular);
 Many different application types;
 Touch screen;
 Use of GPS: content and functionality change,
depending on location;
 Use of motion sensor: motion of device can result in
different display;
 Content updates automatically;
 Functionality may be updated periodically.
IWSM-Mensura 2014 8
|
Mobile apps – why are they different?
 More ways of user interaction:
 Changing position of device: toggling;
 Voice input, e.g. Siri;
 Reaction to real-time events:
 Reach a certain location: message ‘flasher’;
 Unclear where data is stored:
 On device/on backend/in cloud;
 Functionality to handle disruptions:
 E.g. an incoming call;
 Specific non-functional requirements:
 Security, performance, data traffic, battery use.
IWSM-Mensura 2014 9
|
Why measure apps using COSMIC?
 Measuring mobile apps with the IFPUG method has
already been published (the IFPUG guide to IT and
software measurement).
 Using COSMIC may produce even better results:
 More accurate measurement due to ratio scale;
 Concepts of layers and peer components fits
mobile app architectures;
 Lack of knowledge of the data model is no show
stopper for COSMIC.
 Objective: create an approximate method to
accurately size mobile apps using COSMIC.
IWSM-Mensura 2014 10
|
Short COSMIC overview
11IWSM-Mensura 2014
|
Entries  functional process
12IWSM-Mensura 2014
Triggering
event
is sensed
by
Triggering
Entry
Boundary
Functional
user
Functional
process
Triggering
event
is sensed
by
Triggering
Entry
Boundary
Functional
user
Functional
process
|
Functional processes and data movements
13IWSM-Mensura 2014
Functional User
Requirements
Data movement Data manipulation
Sub-processes
Software
Functional
processes
Functional User
Requirements
Data movement Data manipulation
Sub-processes
Software
Functional
processes
|
COSMIC overview
14IWSM-Mensura 2014
Users Functional process Data
W
X R
E
|
The proposed approximate method
15IWSM-Mensura 2014
|
Basic assumptions
 A mobile app is an application layer, developed on
top of one ore more data layers:
 The physical location of the data layer is irrelevant;
 Logically, no persistent data is stored in the application
layer:
 No Reads/Writes are measured, only Entries/eXits;
 The app can use certain process data that is
spontaneously present:
 E.g. date + time and GPS location;
 Mobile apps are considered business applications:
 One eXit for all (error) messages;
 (Error) messages come from data layer: 1 Entry.
IWSM-Mensura 2014 16
|
Measurement strategy
 Equal to ‘standard’ COSMIC measurements, identify:
 Purpose, e.g. estimate realisation phase;
 Scope, e.g. a set of functional requirements;
 Functional users, e.g. the end users that download
the app from the app store;
 Level of granularity, e.g. functional process level.
 Keep basic assumptions in mind when doing so.
IWSM-Mensura 2014 17
|
Mapping phase
 Equal to ‘standard’ COSMIC measurements, identify:
 Functional processes;
 Objects of interest;
 Data groups.
 Keep basic assumptions in mind when doing so.
IWSM-Mensura 2014 18
|
Measurement phase: approximate method
 Two steps:
1. Indentify the type of functional process;
2. Quantify the parameters involved.
IWSM-Mensura 2014 19
|
Functional process types
 Looking at the primary intent of a functional process:
1. View functionality;
2. Data manipulation (add, change, delete);
3. Enquiry (before update);
4. User supporting functionality, e.g. list box, selection
screen, pop-up function);
5. Special functionality:
• Dynamically generated menus;
• Log in/log out functionality;
• Help functionality;
• Invoking external functionality.
IWSM-Mensura 2014 20
|
View functionality
21IWSM-Mensura 2014
|
View functionality
 Basic view functional process: 6 CFP;
 1 OOI/1 data group:
 For each additional OOI/data group:
 For each calculated/derived data group: 1 eXit.
IWSM-Mensura 2014 22
E Start entry
X Question for information to the data layer
E Receiving data
E Receiving application error messages
X Show data
X Show application error messages
E Receiving data
X Show data
|
Data Layer
View functional process
IWSM-Mensura 2014 23
E
X
E
X
6 CFP
Application layer
X
E
OOI / data group
Messages
|
Measurement phase: approximate method
 For each functional process with primary intent to
present data to at least one of the functional users:
4 CFP
+ (2 CFP * number of data groups derived from the
data layer)
+ (1 CFP * number of data groups with calculated
and/or determined data)
IWSM-Mensura 2014 24
|
Data manipulation functionality
 Basic add/change/delete functional process: 4 CFP:
 For each additional OOI/data group manipulated:
 For each data group shown to the user:
 For each validation for which referential data is needed:
IWSM-Mensura 2014 25
E Start entry
X Providing information to the data layer
E Receiving application error messages
X Show application error messages
E Entering data
X Providing information to the data layer
X Questions for information to the data layer
E Receiving data
X Question for information to the data layer
E Receiving data
X Show data
|
Measurement phase: approximate method
 For each functional process with primary intent to
manipulate data for at least one of the functional
users:
2 CFP
+ (2 CFP * number of data groups manipulated)
+ (3 CFP * number of displayed data groups)
+ (2 CFP * number of validations with referential data)
IWSM-Mensura 2014 26
|
Enquiry / user supporting functionality
 Enquiry functionality (before update):
 Identical to view functionality.
 User supporting functionality (non mandatory):
 Identical to view functionality.
IWSM-Mensura 2014 27
|
Special functionality - help
 One functional process per help functionality type;
 Identical to view functionality.
IWSM-Mensura 2014 28
4 occurrences of the same
output-type
|
Special functionality – Login / Logout
 Standard log in: 5 CFP.
 Log status is process data spontaneously present in all
functional processes.
 Standard Log out: 2 CFP.
IWSM-Mensura 2014 29
E Start entry
X Providing credentials to the data layer
E Receiving log status
E Receiving application error messages
X Show application error messages
E Start entry
X Show application error messages
|
Conclusions
 This approximate method is intended to be a guideline
to apply the COSMIC FSM quickly and correctly when
measuring mobile apps;
 Based on a few simple steps, the size measurement
can be easily generated:
1. Indentify the type of functional process;
2. Quantifying the parameters involved.
 Please read the paper if you are interested in a more
detailed explanation of the method.
30IWSM-Mensura 2014
Thank you for your attention.
Harold van Heeringen
Senior Consultant Software Metrics /Software Cost Engineer
Sogeti Sizing, Estimating & Control (SEC)
@haroldveendam
harold.van.heeringen@sogeti.nl
President ISBSG (International Software Benchmarking Standards Group
(www.isbsg.org))
Board member NESMA (Netherlands Software Metrics Association (www.nesma.org))
IAC member COSMIC (www.cosmicon.com)

More Related Content

Viewers also liked

AH City Council Meting 12.14.15 -Item #15 - Mutual Aid Agmt Fort Sam Houston ...
AH City Council Meting 12.14.15 -Item #15 - Mutual Aid Agmt Fort Sam Houston ...AH City Council Meting 12.14.15 -Item #15 - Mutual Aid Agmt Fort Sam Houston ...
AH City Council Meting 12.14.15 -Item #15 - Mutual Aid Agmt Fort Sam Houston ...Marian Vargas Mendoza
 
AH City Council Meeting 10/26/15 - Item #5 Bank of America
AH City Council Meeting 10/26/15 - Item #5 Bank of AmericaAH City Council Meeting 10/26/15 - Item #5 Bank of America
AH City Council Meeting 10/26/15 - Item #5 Bank of AmericaMarian Vargas Mendoza
 
Vision planet 2017
Vision planet 2017Vision planet 2017
Vision planet 2017Igor Vasilev
 
Cafebazaar Story
Cafebazaar StoryCafebazaar Story
Cafebazaar Storyb h
 

Viewers also liked (18)

AH City Council Meting 12.14.15 -Item #15 - Mutual Aid Agmt Fort Sam Houston ...
AH City Council Meting 12.14.15 -Item #15 - Mutual Aid Agmt Fort Sam Houston ...AH City Council Meting 12.14.15 -Item #15 - Mutual Aid Agmt Fort Sam Houston ...
AH City Council Meting 12.14.15 -Item #15 - Mutual Aid Agmt Fort Sam Houston ...
 
CNMES15 - Earned Scope Management - Alain Abran
CNMES15 - Earned Scope Management - Alain AbranCNMES15 - Earned Scope Management - Alain Abran
CNMES15 - Earned Scope Management - Alain Abran
 
Iwsm2014 measuring cosmic software size from functional execution traces of...
Iwsm2014   measuring cosmic software size from functional execution traces of...Iwsm2014   measuring cosmic software size from functional execution traces of...
Iwsm2014 measuring cosmic software size from functional execution traces of...
 
Iwsm2014 verifying the accuracy of automation tools for cosmic measurement ...
Iwsm2014   verifying the accuracy of automation tools for cosmic measurement ...Iwsm2014   verifying the accuracy of automation tools for cosmic measurement ...
Iwsm2014 verifying the accuracy of automation tools for cosmic measurement ...
 
IWSM2014 COSMIC masterclass part 2 - Dealing with NFR (Chris Woodward)
IWSM2014   COSMIC masterclass part 2 - Dealing with NFR (Chris Woodward)IWSM2014   COSMIC masterclass part 2 - Dealing with NFR (Chris Woodward)
IWSM2014 COSMIC masterclass part 2 - Dealing with NFR (Chris Woodward)
 
AH City Council Meeting 10/26/15 - Item #5 Bank of America
AH City Council Meeting 10/26/15 - Item #5 Bank of AmericaAH City Council Meeting 10/26/15 - Item #5 Bank of America
AH City Council Meeting 10/26/15 - Item #5 Bank of America
 
CNMES15 - COSMIC approximate FSM - Frank Vogelezang
CNMES15 - COSMIC approximate FSM - Frank VogelezangCNMES15 - COSMIC approximate FSM - Frank Vogelezang
CNMES15 - COSMIC approximate FSM - Frank Vogelezang
 
Iwsm2014 cosmic approximate sizing using a fuzzy logic approach (alain abran)
Iwsm2014   cosmic approximate sizing using a fuzzy logic approach (alain abran)Iwsm2014   cosmic approximate sizing using a fuzzy logic approach (alain abran)
Iwsm2014 cosmic approximate sizing using a fuzzy logic approach (alain abran)
 
COSMIC Annual Report 2014
COSMIC Annual Report 2014COSMIC Annual Report 2014
COSMIC Annual Report 2014
 
Using cosmic in agile projects
Using cosmic in agile projectsUsing cosmic in agile projects
Using cosmic in agile projects
 
Vision planet 2017
Vision planet 2017Vision planet 2017
Vision planet 2017
 
Cafebazaar Story
Cafebazaar StoryCafebazaar Story
Cafebazaar Story
 
Iwsm2014 open cosmic meeting
Iwsm2014   open cosmic meetingIwsm2014   open cosmic meeting
Iwsm2014 open cosmic meeting
 
CNMES15 - Estimation con COSMIC - Alain Abran
CNMES15 - Estimation con COSMIC - Alain AbranCNMES15 - Estimation con COSMIC - Alain Abran
CNMES15 - Estimation con COSMIC - Alain Abran
 
Vip scan
Vip scanVip scan
Vip scan
 
IWSM2014 - Manage the Automotive Embedded Software Development Cost & Product...
IWSM2014 - Manage the Automotive Embedded Software Development Cost & Product...IWSM2014 - Manage the Automotive Embedded Software Development Cost & Product...
IWSM2014 - Manage the Automotive Embedded Software Development Cost & Product...
 
Iwsm2014 defect density measurements using cosmic (thomas fehlmann)
Iwsm2014   defect density measurements using cosmic (thomas fehlmann)Iwsm2014   defect density measurements using cosmic (thomas fehlmann)
Iwsm2014 defect density measurements using cosmic (thomas fehlmann)
 
CNMES15 - Impacts and Benefits of using COSMIC - Frank Vogelezang
CNMES15 - Impacts and Benefits of using COSMIC - Frank VogelezangCNMES15 - Impacts and Benefits of using COSMIC - Frank Vogelezang
CNMES15 - Impacts and Benefits of using COSMIC - Frank Vogelezang
 

Similar to Measure Functional Size of Mobile Apps Using COSMIC

Measuring the functional size of mobile apps with COSMIC FP
Measuring the functional size of mobile apps with COSMIC FPMeasuring the functional size of mobile apps with COSMIC FP
Measuring the functional size of mobile apps with COSMIC FPHarold van Heeringen
 
Iwsm2014 measuring the functional size of mobile apps with cosmic (harold v...
Iwsm2014   measuring the functional size of mobile apps with cosmic (harold v...Iwsm2014   measuring the functional size of mobile apps with cosmic (harold v...
Iwsm2014 measuring the functional size of mobile apps with cosmic (harold v...Nesma
 
How the World Bank Standardized on AppDynamics as its Enterprise-Wide APM Sol...
How the World Bank Standardized on AppDynamics as its Enterprise-Wide APM Sol...How the World Bank Standardized on AppDynamics as its Enterprise-Wide APM Sol...
How the World Bank Standardized on AppDynamics as its Enterprise-Wide APM Sol...AppDynamics
 
COSMIC Functional Measurement of Mobile Applications and Code Size Estimation
COSMIC Functional Measurement of Mobile Applications and Code Size EstimationCOSMIC Functional Measurement of Mobile Applications and Code Size Estimation
COSMIC Functional Measurement of Mobile Applications and Code Size EstimationPasquale Salza
 
Functional point analysis
Functional point analysisFunctional point analysis
Functional point analysisDestinationQA
 
EMA Presentation: Driving Business Value with Continuous Operational Intellig...
EMA Presentation: Driving Business Value with Continuous Operational Intellig...EMA Presentation: Driving Business Value with Continuous Operational Intellig...
EMA Presentation: Driving Business Value with Continuous Operational Intellig...ExtraHop Networks
 
Android Application for Updation
Android Application for UpdationAndroid Application for Updation
Android Application for UpdationIRJET Journal
 
Course 4_Technical Solution Design Presentation Assignment_kai.pptx
Course 4_Technical Solution Design Presentation Assignment_kai.pptxCourse 4_Technical Solution Design Presentation Assignment_kai.pptx
Course 4_Technical Solution Design Presentation Assignment_kai.pptxkailashumashankar
 
Custom Navigation Flow for Jasper Server Reporting Platform
Custom Navigation Flow for Jasper Server Reporting PlatformCustom Navigation Flow for Jasper Server Reporting Platform
Custom Navigation Flow for Jasper Server Reporting PlatformSigma Infosolutions, LLC
 
Finger Gesture Based Rating System
Finger Gesture Based Rating SystemFinger Gesture Based Rating System
Finger Gesture Based Rating SystemIRJET Journal
 
Van Heeringen and van Gorp - Measure the functional size of a mobile app usi...
Van Heeringen and van Gorp  - Measure the functional size of a mobile app usi...Van Heeringen and van Gorp  - Measure the functional size of a mobile app usi...
Van Heeringen and van Gorp - Measure the functional size of a mobile app usi...Harold van Heeringen
 
Improving Lean Manufacturing Through a KPI Analysis System
Improving Lean Manufacturing Through a KPI Analysis SystemImproving Lean Manufacturing Through a KPI Analysis System
Improving Lean Manufacturing Through a KPI Analysis SystemSteven Muñoz
 
IBM MobileFirst and developerworks
IBM MobileFirst and developerworksIBM MobileFirst and developerworks
IBM MobileFirst and developerworksDirk Nicol
 
A Comprehensive Look at Application Observability_ What it is and Why it Matt...
A Comprehensive Look at Application Observability_ What it is and Why it Matt...A Comprehensive Look at Application Observability_ What it is and Why it Matt...
A Comprehensive Look at Application Observability_ What it is and Why it Matt...kalichargn70th171
 
DivyaBRavichandran-Senior Software Engineer
DivyaBRavichandran-Senior Software EngineerDivyaBRavichandran-Senior Software Engineer
DivyaBRavichandran-Senior Software EngineerDivya Ravichandran
 
Software estimation challenge diederik wortman - metri
Software estimation challenge   diederik wortman - metriSoftware estimation challenge   diederik wortman - metri
Software estimation challenge diederik wortman - metriNesma
 
Envelopment Analysis In Economics
Envelopment Analysis In EconomicsEnvelopment Analysis In Economics
Envelopment Analysis In EconomicsAmber Rodriguez
 
IJSRED-V2I4P8
IJSRED-V2I4P8IJSRED-V2I4P8
IJSRED-V2I4P8IJSRED
 
What's New in the Winter '16 Release (4.2)
What's New in the Winter '16 Release (4.2)What's New in the Winter '16 Release (4.2)
What's New in the Winter '16 Release (4.2)AppDynamics
 
Rapid Application Development & Prototyping
Rapid Application Development & PrototypingRapid Application Development & Prototyping
Rapid Application Development & PrototypingMedian Rupawan
 

Similar to Measure Functional Size of Mobile Apps Using COSMIC (20)

Measuring the functional size of mobile apps with COSMIC FP
Measuring the functional size of mobile apps with COSMIC FPMeasuring the functional size of mobile apps with COSMIC FP
Measuring the functional size of mobile apps with COSMIC FP
 
Iwsm2014 measuring the functional size of mobile apps with cosmic (harold v...
Iwsm2014   measuring the functional size of mobile apps with cosmic (harold v...Iwsm2014   measuring the functional size of mobile apps with cosmic (harold v...
Iwsm2014 measuring the functional size of mobile apps with cosmic (harold v...
 
How the World Bank Standardized on AppDynamics as its Enterprise-Wide APM Sol...
How the World Bank Standardized on AppDynamics as its Enterprise-Wide APM Sol...How the World Bank Standardized on AppDynamics as its Enterprise-Wide APM Sol...
How the World Bank Standardized on AppDynamics as its Enterprise-Wide APM Sol...
 
COSMIC Functional Measurement of Mobile Applications and Code Size Estimation
COSMIC Functional Measurement of Mobile Applications and Code Size EstimationCOSMIC Functional Measurement of Mobile Applications and Code Size Estimation
COSMIC Functional Measurement of Mobile Applications and Code Size Estimation
 
Functional point analysis
Functional point analysisFunctional point analysis
Functional point analysis
 
EMA Presentation: Driving Business Value with Continuous Operational Intellig...
EMA Presentation: Driving Business Value with Continuous Operational Intellig...EMA Presentation: Driving Business Value with Continuous Operational Intellig...
EMA Presentation: Driving Business Value with Continuous Operational Intellig...
 
Android Application for Updation
Android Application for UpdationAndroid Application for Updation
Android Application for Updation
 
Course 4_Technical Solution Design Presentation Assignment_kai.pptx
Course 4_Technical Solution Design Presentation Assignment_kai.pptxCourse 4_Technical Solution Design Presentation Assignment_kai.pptx
Course 4_Technical Solution Design Presentation Assignment_kai.pptx
 
Custom Navigation Flow for Jasper Server Reporting Platform
Custom Navigation Flow for Jasper Server Reporting PlatformCustom Navigation Flow for Jasper Server Reporting Platform
Custom Navigation Flow for Jasper Server Reporting Platform
 
Finger Gesture Based Rating System
Finger Gesture Based Rating SystemFinger Gesture Based Rating System
Finger Gesture Based Rating System
 
Van Heeringen and van Gorp - Measure the functional size of a mobile app usi...
Van Heeringen and van Gorp  - Measure the functional size of a mobile app usi...Van Heeringen and van Gorp  - Measure the functional size of a mobile app usi...
Van Heeringen and van Gorp - Measure the functional size of a mobile app usi...
 
Improving Lean Manufacturing Through a KPI Analysis System
Improving Lean Manufacturing Through a KPI Analysis SystemImproving Lean Manufacturing Through a KPI Analysis System
Improving Lean Manufacturing Through a KPI Analysis System
 
IBM MobileFirst and developerworks
IBM MobileFirst and developerworksIBM MobileFirst and developerworks
IBM MobileFirst and developerworks
 
A Comprehensive Look at Application Observability_ What it is and Why it Matt...
A Comprehensive Look at Application Observability_ What it is and Why it Matt...A Comprehensive Look at Application Observability_ What it is and Why it Matt...
A Comprehensive Look at Application Observability_ What it is and Why it Matt...
 
DivyaBRavichandran-Senior Software Engineer
DivyaBRavichandran-Senior Software EngineerDivyaBRavichandran-Senior Software Engineer
DivyaBRavichandran-Senior Software Engineer
 
Software estimation challenge diederik wortman - metri
Software estimation challenge   diederik wortman - metriSoftware estimation challenge   diederik wortman - metri
Software estimation challenge diederik wortman - metri
 
Envelopment Analysis In Economics
Envelopment Analysis In EconomicsEnvelopment Analysis In Economics
Envelopment Analysis In Economics
 
IJSRED-V2I4P8
IJSRED-V2I4P8IJSRED-V2I4P8
IJSRED-V2I4P8
 
What's New in the Winter '16 Release (4.2)
What's New in the Winter '16 Release (4.2)What's New in the Winter '16 Release (4.2)
What's New in the Winter '16 Release (4.2)
 
Rapid Application Development & Prototyping
Rapid Application Development & PrototypingRapid Application Development & Prototyping
Rapid Application Development & Prototyping
 

More from COSMIC - Common Software Measurement International Consortium

More from COSMIC - Common Software Measurement International Consortium (16)

Software Project Estimation - Critical knowledge for today and tomorrow
Software Project Estimation - Critical knowledge for today and tomorrowSoftware Project Estimation - Critical knowledge for today and tomorrow
Software Project Estimation - Critical knowledge for today and tomorrow
 
CNMES 2017 Software Cost Estimating with COSMIC - Critical knowledge for toda...
CNMES 2017 Software Cost Estimating with COSMIC - Critical knowledge for toda...CNMES 2017 Software Cost Estimating with COSMIC - Critical knowledge for toda...
CNMES 2017 Software Cost Estimating with COSMIC - Critical knowledge for toda...
 
CNMES17 - Acceptance of the COSMIC method and future developments
CNMES17 - Acceptance of the COSMIC method and future developmentsCNMES17 - Acceptance of the COSMIC method and future developments
CNMES17 - Acceptance of the COSMIC method and future developments
 
CNMES'15 : Presentación AMMS - Francisco Valdès Souto
CNMES'15 : Presentación AMMS - Francisco Valdès SoutoCNMES'15 : Presentación AMMS - Francisco Valdès Souto
CNMES'15 : Presentación AMMS - Francisco Valdès Souto
 
CNMES'15 - Experiencias en la Implementación de COSMIC FP en una Empresa de A...
CNMES'15 - Experiencias en la Implementación de COSMIC FP en una Empresa de A...CNMES'15 - Experiencias en la Implementación de COSMIC FP en una Empresa de A...
CNMES'15 - Experiencias en la Implementación de COSMIC FP en una Empresa de A...
 
CNMES'15 - COSMIC en Mexico - Francisco Valdès Souto
CNMES'15 - COSMIC en Mexico - Francisco Valdès SoutoCNMES'15 - COSMIC en Mexico - Francisco Valdès Souto
CNMES'15 - COSMIC en Mexico - Francisco Valdès Souto
 
CNMES15 - Taxonomía de métricas - Carlos Gutiérrez Pérez
CNMES15 - Taxonomía de métricas - Carlos Gutiérrez PérezCNMES15 - Taxonomía de métricas - Carlos Gutiérrez Pérez
CNMES15 - Taxonomía de métricas - Carlos Gutiérrez Pérez
 
CNMES15 - Futuro de COSMIC - Frank Vogelezang & Alain Abran
CNMES15 - Futuro de COSMIC - Frank Vogelezang & Alain AbranCNMES15 - Futuro de COSMIC - Frank Vogelezang & Alain Abran
CNMES15 - Futuro de COSMIC - Frank Vogelezang & Alain Abran
 
IWSM 2014 Overview of COSMIC related papers (Charles Symons)
IWSM 2014 Overview of COSMIC related papers (Charles Symons)IWSM 2014 Overview of COSMIC related papers (Charles Symons)
IWSM 2014 Overview of COSMIC related papers (Charles Symons)
 
IWSM2014 COSMIC masterclass part 1 - What's new in version 4.0 (Charles Sym...
IWSM2014   COSMIC masterclass part 1 - What's new in version 4.0 (Charles Sym...IWSM2014   COSMIC masterclass part 1 - What's new in version 4.0 (Charles Sym...
IWSM2014 COSMIC masterclass part 1 - What's new in version 4.0 (Charles Sym...
 
IWSM2014 COSMIC masterclass part 3 - Automatic measurement of UML specifica...
IWSM2014   COSMIC masterclass part 3 - Automatic measurement of UML specifica...IWSM2014   COSMIC masterclass part 3 - Automatic measurement of UML specifica...
IWSM2014 COSMIC masterclass part 3 - Automatic measurement of UML specifica...
 
IWSM2014 COSMIC masterclass part 4 - Estimating with COSMIC (Alain Abran)
IWSM2014 COSMIC masterclass part 4 - Estimating with COSMIC (Alain Abran)IWSM2014 COSMIC masterclass part 4 - Estimating with COSMIC (Alain Abran)
IWSM2014 COSMIC masterclass part 4 - Estimating with COSMIC (Alain Abran)
 
Iwsm2014 empirical-based extension of the cosmic method (reiner dumke - rob...
Iwsm2014   empirical-based extension of the cosmic method (reiner dumke - rob...Iwsm2014   empirical-based extension of the cosmic method (reiner dumke - rob...
Iwsm2014 empirical-based extension of the cosmic method (reiner dumke - rob...
 
COSMIC быстрая оценка ит проекта
COSMIC быстрая оценка ит проектаCOSMIC быстрая оценка ит проекта
COSMIC быстрая оценка ит проекта
 
COSMIC для руководителей проектов (русский)
COSMIC для руководителей проектов (русский)COSMIC для руководителей проектов (русский)
COSMIC для руководителей проектов (русский)
 
Web Advice Module case study - COSMIC
Web Advice Module case study - COSMICWeb Advice Module case study - COSMIC
Web Advice Module case study - COSMIC
 

Recently uploaded

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.
 
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
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
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
 
software engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxsoftware engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxnada99848
 
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
 
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.
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
(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
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 

Recently uploaded (20)

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 ...
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
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
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
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)
 
software engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxsoftware engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptx
 
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...
 
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
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
(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...
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 

Measure Functional Size of Mobile Apps Using COSMIC

  • 1. Measure the functional size of a mobile app Harold van Heeringen & Edwin van Gorp
  • 2. | Measure the functional size of a mobile app Using the COSMIC functional size measurement method Harold van Heeringen Senior consultant software metrics Department Sizing, Estimating & Control Sogeti Nederland B.V. harold.van.heeringen@sogeti.nl @haroldveendam Rotterdam, October 6th, 2014 2IWSM-Mensura 2014
  • 3. | Overview  Reasons for this paper/presentation;  Mobile apps – why are they different?;  Why measure apps using COSMIC?;  Short COSMIC overview;  The proposed approximate method;  Conclusions. IWSM-Mensura 2014 3
  • 4. | Beware!  This is a technical paper/presentation!  Knowledge of the COSMIC method is required! IWSM-Mensura 2014 4
  • 5. | Reasons for this paper/presentation 5IWSM-Mensura 2014
  • 6. | Why?  IT industry is changing – new types of applications and ways to interact with software arise, for example:  Cloud computing;  Google glass;  Mobile apps.  Software sizing, estimation and benchmarking challenges:  Fixed price/fixed date app development.  Need for methods and guidelines to apply standards to sizing, estimating and benchmarking. IWSM-Mensura 2014 6
  • 7. | Mobile apps  Do I really have to introduce these? IWSM-Mensura 2014 7
  • 8. | Some characteristics  Downloaded on a mobile device, like phone or tablet;  Connects to the internet (Wi-Fi/cellular);  Many different application types;  Touch screen;  Use of GPS: content and functionality change, depending on location;  Use of motion sensor: motion of device can result in different display;  Content updates automatically;  Functionality may be updated periodically. IWSM-Mensura 2014 8
  • 9. | Mobile apps – why are they different?  More ways of user interaction:  Changing position of device: toggling;  Voice input, e.g. Siri;  Reaction to real-time events:  Reach a certain location: message ‘flasher’;  Unclear where data is stored:  On device/on backend/in cloud;  Functionality to handle disruptions:  E.g. an incoming call;  Specific non-functional requirements:  Security, performance, data traffic, battery use. IWSM-Mensura 2014 9
  • 10. | Why measure apps using COSMIC?  Measuring mobile apps with the IFPUG method has already been published (the IFPUG guide to IT and software measurement).  Using COSMIC may produce even better results:  More accurate measurement due to ratio scale;  Concepts of layers and peer components fits mobile app architectures;  Lack of knowledge of the data model is no show stopper for COSMIC.  Objective: create an approximate method to accurately size mobile apps using COSMIC. IWSM-Mensura 2014 10
  • 12. | Entries  functional process 12IWSM-Mensura 2014 Triggering event is sensed by Triggering Entry Boundary Functional user Functional process Triggering event is sensed by Triggering Entry Boundary Functional user Functional process
  • 13. | Functional processes and data movements 13IWSM-Mensura 2014 Functional User Requirements Data movement Data manipulation Sub-processes Software Functional processes Functional User Requirements Data movement Data manipulation Sub-processes Software Functional processes
  • 14. | COSMIC overview 14IWSM-Mensura 2014 Users Functional process Data W X R E
  • 15. | The proposed approximate method 15IWSM-Mensura 2014
  • 16. | Basic assumptions  A mobile app is an application layer, developed on top of one ore more data layers:  The physical location of the data layer is irrelevant;  Logically, no persistent data is stored in the application layer:  No Reads/Writes are measured, only Entries/eXits;  The app can use certain process data that is spontaneously present:  E.g. date + time and GPS location;  Mobile apps are considered business applications:  One eXit for all (error) messages;  (Error) messages come from data layer: 1 Entry. IWSM-Mensura 2014 16
  • 17. | Measurement strategy  Equal to ‘standard’ COSMIC measurements, identify:  Purpose, e.g. estimate realisation phase;  Scope, e.g. a set of functional requirements;  Functional users, e.g. the end users that download the app from the app store;  Level of granularity, e.g. functional process level.  Keep basic assumptions in mind when doing so. IWSM-Mensura 2014 17
  • 18. | Mapping phase  Equal to ‘standard’ COSMIC measurements, identify:  Functional processes;  Objects of interest;  Data groups.  Keep basic assumptions in mind when doing so. IWSM-Mensura 2014 18
  • 19. | Measurement phase: approximate method  Two steps: 1. Indentify the type of functional process; 2. Quantify the parameters involved. IWSM-Mensura 2014 19
  • 20. | Functional process types  Looking at the primary intent of a functional process: 1. View functionality; 2. Data manipulation (add, change, delete); 3. Enquiry (before update); 4. User supporting functionality, e.g. list box, selection screen, pop-up function); 5. Special functionality: • Dynamically generated menus; • Log in/log out functionality; • Help functionality; • Invoking external functionality. IWSM-Mensura 2014 20
  • 22. | View functionality  Basic view functional process: 6 CFP;  1 OOI/1 data group:  For each additional OOI/data group:  For each calculated/derived data group: 1 eXit. IWSM-Mensura 2014 22 E Start entry X Question for information to the data layer E Receiving data E Receiving application error messages X Show data X Show application error messages E Receiving data X Show data
  • 23. | Data Layer View functional process IWSM-Mensura 2014 23 E X E X 6 CFP Application layer X E OOI / data group Messages
  • 24. | Measurement phase: approximate method  For each functional process with primary intent to present data to at least one of the functional users: 4 CFP + (2 CFP * number of data groups derived from the data layer) + (1 CFP * number of data groups with calculated and/or determined data) IWSM-Mensura 2014 24
  • 25. | Data manipulation functionality  Basic add/change/delete functional process: 4 CFP:  For each additional OOI/data group manipulated:  For each data group shown to the user:  For each validation for which referential data is needed: IWSM-Mensura 2014 25 E Start entry X Providing information to the data layer E Receiving application error messages X Show application error messages E Entering data X Providing information to the data layer X Questions for information to the data layer E Receiving data X Question for information to the data layer E Receiving data X Show data
  • 26. | Measurement phase: approximate method  For each functional process with primary intent to manipulate data for at least one of the functional users: 2 CFP + (2 CFP * number of data groups manipulated) + (3 CFP * number of displayed data groups) + (2 CFP * number of validations with referential data) IWSM-Mensura 2014 26
  • 27. | Enquiry / user supporting functionality  Enquiry functionality (before update):  Identical to view functionality.  User supporting functionality (non mandatory):  Identical to view functionality. IWSM-Mensura 2014 27
  • 28. | Special functionality - help  One functional process per help functionality type;  Identical to view functionality. IWSM-Mensura 2014 28 4 occurrences of the same output-type
  • 29. | Special functionality – Login / Logout  Standard log in: 5 CFP.  Log status is process data spontaneously present in all functional processes.  Standard Log out: 2 CFP. IWSM-Mensura 2014 29 E Start entry X Providing credentials to the data layer E Receiving log status E Receiving application error messages X Show application error messages E Start entry X Show application error messages
  • 30. | Conclusions  This approximate method is intended to be a guideline to apply the COSMIC FSM quickly and correctly when measuring mobile apps;  Based on a few simple steps, the size measurement can be easily generated: 1. Indentify the type of functional process; 2. Quantifying the parameters involved.  Please read the paper if you are interested in a more detailed explanation of the method. 30IWSM-Mensura 2014
  • 31. Thank you for your attention.
  • 32. Harold van Heeringen Senior Consultant Software Metrics /Software Cost Engineer Sogeti Sizing, Estimating & Control (SEC) @haroldveendam harold.van.heeringen@sogeti.nl President ISBSG (International Software Benchmarking Standards Group (www.isbsg.org)) Board member NESMA (Netherlands Software Metrics Association (www.nesma.org)) IAC member COSMIC (www.cosmicon.com)