Iwsm2014 lies damned lies & software metrics (charles symons)
IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)
description
Transcript of IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)
![Page 1: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/1.jpg)
IWSM 2014, Rotterdam
COSMIC MasterclassAlain Abran, ETS, Montreal, Canada
Jaroslaw Swierczek, 300D&C, Warsaw, PolandCharles Symons, UK
Chris Woodward, CW Associates, UK
The Common Software Measurement International Consortium
© COSMIC 2014
![Page 2: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/2.jpg)
2
Agenda
09:00 Version 4.0 of the COSMIC Method
09:45 The COSMIC approach fordealing with Non-Functional Requirements (NFR)
10:20 (Break)
10:40 Automatic COSMIC sizing of requirements held in UML
11:15 Project estimating with COSMIC
12:00 Close2
![Page 3: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/3.jpg)
Aims of this session
• Provide an overview of emerging COSMIC NFR Guideline
• Jointly identify/consider matters for further attention
3
![Page 4: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/4.jpg)
Guideline on managing‘Non-Functional Requirements’ for software
• Purposes:
– to help understand and define NFRs in a more precise way and …
– to provide practical guidance (to COSMIC users) on how to deal with NFRs, as well as FUR, in project performance measurement and estimating
4
![Page 5: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/5.jpg)
Constraints and Requirements
5
ConstraintsConstraints
RequirementsRequirements
e.g. staff numbers and experiencee.g. staff numbers and experience
e.g. use JAVA 2e.g. use JAVA 2
![Page 6: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/6.jpg)
DEFINITION – Non-Functional Requirement (NFR)
Any or constraint on, including requirement for, a hardware/software system or software product, or a project to develop or maintain such a system or product, except a functional user requirement for software
6
![Page 7: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/7.jpg)
EnvironmentEnvironment
The scope of NFRs
7
Project
System
Software product
Technology infrastructure
Other deliverables
![Page 8: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/8.jpg)
“Measuring” NFRs
• Challenge in dealing with diversity of NFR
• Previous/other approaches:– IFPUG Value Adjustment Factor– MkII Technical Complexity Adjustment– IFPUG Software Non-functional Assessment
Process (SNAP points)
– All are “fabricated” and not focused on what is actually delivered
8
![Page 9: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/9.jpg)
What do projects deliver?
• New and enhanced hardware/software systems, composed of:
• New and changed software product• New and changed technology infrastructure• Other deliverables
E.g. documentation, training
9
![Page 10: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/10.jpg)
Our focus
• The “detailed” FUR implemented in the software product
– … measured in a uniform manner, in CFPs
10
![Page 11: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/11.jpg)
Ready to Build
11
ConstraintsConstraints
Detailed FUR for software
Detailed FUR for software
True NFR’s for system
True NFR’s for system
System demographics (context)System demographics (context)
Project constraintsProject constraints
![Page 12: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/12.jpg)
Ready to Build
12
NFRNFR
Detailed FUR for software
Detailed FUR for software
True NFR for system
True NFR for system
![Page 13: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/13.jpg)
Evolution of requirements with project progress
13
Implemented System
Project
Require-ments
AnalysisDesign & Definition
Build, Test & Implement
(May apply to)
Approx-imate FUR
Archi-tecting
(May evolve to)
Software
Hardware
Other deliverables
OutlineFUR
Outline NFR
Detailed FUR
True NFR
![Page 14: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/14.jpg)
An example: a ‘security’ NFR
• The application A will require its own user identification and password sign-on procedure. Only employees authorized by the System Administrator will be allowed access’
• Possible ‘detailed’ FUR:– Create, List, Display, Delete employee record
Create to generate an e-mail to send initial password to newly-authorized employee
– Send a new PW to an employee who has forgotten his/her password
– Force an employee to change PW every three months
14
![Page 15: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/15.jpg)
Evolution of measurement with project progress
15
Implemented System
Project
Require-ments
AnalysisDesign & Definition
Build, Test & Implement
(May apply to)
Approx-imate FUR
Archi-tecting
(May evolve to)
Software
Hardware
Other deliverables
OutlineFUR
Outline NFR
Detailed FUR
True NFR
Size by analogy or expert
judgement
Approx. COSMIC size
measurement
Precise COSMIC size
measurement
![Page 16: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/16.jpg)
Sizing issues
• Our aim is for software-delivered aspects of NFRs to be measured in CFPs, BUT …
• … it is still important to be able to distinguish between:
– CFPs derived from originally ‘outline’, and ‘approximate’, FUR) and
– CFPs derived from NFRs
16
![Page 17: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/17.jpg)
Sizing issues (continued)
• It would also be informative to be able to separate pre- “build” effort used on:
– defining detailed FUR, from ‘approximate’ FUR
– designing and detailing FUR, and true NFR, from ‘outline’ NFR
17
![Page 18: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/18.jpg)
Sizing issues (continued)
• Need common (standard) set of defined project constraints …
– … including their “grading”, that can be used to “tag” project measures
18
![Page 19: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/19.jpg)
Also need consistent measures
19
Project data & benchmarks
Project data & benchmarks
Measuring project and
system sizes
Measuring project and
system sizes
Estimating for projects
Estimating for projects
Measuring project
performance
Measuring project
performance
Benchmarking projects
Benchmarking projects
![Page 20: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/20.jpg)
Taxonomy for NFRs
• Principles (ideals):– Division: organise as a set of independent “orthogonal”
sub-taxonomies– Mutual exclusion: avoid conceptual overlap between the
different dimensions– Relevance: use division only in such a way so that it
improves understanding• Reality:
– Some of the above may be obtained, in part, and it certainly helps understanding, but in the end what matters most to ensure full scope of attention, even if at the expense of some overlap
20
![Page 21: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/21.jpg)
NFR taxonomy, in the broad
• Quality requirements (leading to detailed FUR and true NFRs)– … mostly covered by ISO/IEC
25062:2006*
• True NFRs– Project constraints: i.e. those that the
project itself must adhere to– Technical constraints … pertaining to the
technology environment in which the system will be built and operated
– System demographics: characteristics of the broader environment in which the system is developed, maintained/supported, and used
21
Detailed FURDetailed FUR
True NFRsTrue NFRs
Technical constraintsTechnical
constraintsSystem
demographicsSystem
demographicsProject
constraintsProject
constraints
*ISO/IEC 25062:2006 Software engineering – Software product Quality Requirements and Evaluation (SquaRE)
Quality requirements
![Page 22: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/22.jpg)
Using an NFR taxonomy
• A long list of NFR types exist in the taxonomy, BUT– In many environments many will come “free” (pre-
exist), such as service continuity requirements addressed by standard arrangements in many business computing infrastructures
• There is a growing set of documented approaches to the practice of identifying detailed FUR, or patterns, for commonly encountered NFRs, such as portability
22
![Page 23: IWSM2014 COSMIC masterclass part 2 - dealing with NFR (Chris Woodward)](https://reader035.fdocuments.in/reader035/viewer/2022062706/557d80e7d8b42a2c428b5404/html5/thumbnails/23.jpg)
Next steps
• Identify and define a standard set of ‘Project’ Constraints
• Identify and define a standard set of demographics
• …
23