Professional Documents
Culture Documents
Sub-committee SC7
Definition Requirements
Implementation Product
Qualification
25040 Product Properties
25012 Operations
16085
15939
Measurement Risk
25020 Evaluation
Management
200 m2
400 m2
400 m2
An analogy...
200 m2
400 m2
400 m2
Software B
Software A
ISO ‘FSM’
Standards
+ 30 variants
MkII
FPA 1.3
3-D
FP’s
COSMIC –
MkII ISO 19761
FPA Full FP’s
V.1
Feature IFPUG
Points 4.x
IFPUG
Allan
4.0
Albrecht
FPA ----- Usecase Points ------------
1980 1985 1990 1995 2000 2009
200 m2
400 m2
CFP = COSMIC Function Points
Software Software
Functionality Functionality
Functional Size =
A size of software derived by quantifying the
Functional User Requirements – FUR
A measure of the amount of information processing
(required to be) carried out by the software:
‘What’ the User wants the software to do,
not ‘How’
Physical
programs and
screens
Functional
Users operation
Users manuals and
procedures
Requirements
Physical
data storage
artifacts
© Copyrights 2010 Alain Abran 25
An analogy: After construction
200 m2
Office PC
Temperature
& pressure
Input &
Process control sensors
Display
computer
Monitoring Control
Valves
Panel
200 CFP
CFP = COSMIC Function Points
Functional Users Requirements
Requirements
Specifications
Models
Functional
Ex.:
UML diagrams Users
Functional Requirements
decomposition
lists
© Copyrights 2010 Alain Abran 27
An analogy: Measurement
from Plans
Main
House Plan
200 m2
UML
Diagrams
200 CFP
CFP = COSMIC Function Points
COSMIC ISO 19761: User View of
Software Functional Requirements
DATA IN
OR DATA MANIPULATION
OR TRANSFORMATION
Engineered
devices
OR RETRIEVE PERSISTENT DATA
DATA IN
ENTRY
STORE PERSISTENT DATA
WRITE
OR DATA MANIPULATION
OR TRANSFORMATION
Engineered
devices
RETRIEVE PERSISTENT DATA
OR READ
Version 3.0
Method Overview
September 2007
www.cosmicon.com
If you know the size of the software to be developed, then your
historical data can help you estimate
Effort (& related Cost).
Effort/Cost
a3
ZONE 2
a2
b3 ZONE 1
a1
b2
b1
Size (in Function
Points)
Testing 90%
Original function points are included in the
Changed Build 40% BFPC. This is an additional weighting for
rebuild.
Additional factor for requirement to rebuild
and retest the changed function.
Testing 70%
© Copyrights 2010 Alain Abran 47
Project Data with
Standards in the
International
Repository of Industry Data
Analysis Report
Analysis
•Measurement quality controls
• Validation
•Data recording
•Data analysis
•Comparative analysis Organizational
Feedback
Real-time enhancements
0 10 20 30 40 50
PDR (work-hours/CFP)
10.0
9.0
8.0
Median Productivity
(CFP/Work-month)
7.0
6.0
5.0
4.0
3.0
2.0
1.0
0.0
0 - 50 50 - 100 100 - 200 200 - 300 300 - 500 500 - 1000 1000+
SIze Band (CFP)
11%
27%
18% Specify
Design
Build
Test
44%
Multiplicity of standards
Which ones are needed, when?
How to design an implementation
strategy
The organizational knowledge &
expertise about standards
People issues
Software Quality
61
SWEBOK & Education
alain.abran@etsmtl.ca
© Copyrights 2010 Alain Abran 66
Guide to the Software Engineering Body of Knowledge
2004 Version
Key Issues in
Requirements Key Issues in Managing Software
Test Levels
Process Software Design Construction Maintenance
Maintenance
Requirements Software Structure Practical Process
Test Techniques
Elicitation and Architecture Considerations
Techniques for
Software Design Maintenance
Requirements Test Related
Quality Analysis
Analysis Measures
and Evaluation
Software Design
Requirements
Strategies and
Validation
Methods
Practical
Considerations
67
Guide to the Software Engineering Body of Knowledge
(2004 Version)
Software
Initiation and
Configuration Process Computer
Scope Software Tools Software Quality
Management Implementation Engineering
Definition Fundamentals
Fundamentals and Change Software Requirements
Tools
Software Software Quality
Keys Process Computer
Project Software Design Tools Management
Issues in Definition Science
Planning Processes
SCM Software Construction
Tools
Software Project Process Software Testing Tools
Practical Management
Software Enactment Assessment Considerations
Configuration Software Maintenance
Tools
Control
Process and Software Engineering
Review and Process Tools Mathematics
Product
Software Evaluation Measurement
Software Quality Tools
Configuration Project
Status Accounting Software Configuration
management
Management Tools
Software Engineering
Closure Management Tools
Software Quality
Configuration Infrastructure Support
management
Auditing Tools
Miscellaneous Tool
SW Engineering Issues
Measurement Software
Software Release
Ergonomics
Management and
Delivery Software Methods
Systems
Heuristic Methods engineering
Formal Methods
Prototyping Methods
Miscellaneous Method
Issues
© Copyrights 2010 Alain Abran
68
Software Engineering
IEEE 610.12*:
The application of a systematic, disciplined,
quantifiable approach to the development,
operation, and maintenance of software:
i.e. the application of engineering to software.
69