1、raising standards worldwide NO COPYING WITHOUT BSI PERMISSION EXCEPT AS PERMITTED BY COPYRIGHT LAW BSI Standards Publication BS ISO/IEC 19761:2011 Software engineering COSMIC: A functional size measurement methodBS ISO/IEC 19761:2011 BRITISH STANDARD National foreword This British Standard is the UK
2、 implementation of ISO/IEC 19761:2011. It supersedes BS ISO/IEC 19761:2003, which is withdrawn. The UK participation in its preparation was entrusted to T e c h n i c a l C o m m i t t e e I S T / 1 5 , S o f t w a r e a n d s y s t e m s e n g i n e e r i n g . A list of organizations represented o
3、n this committee can be obtained on request to its secretary. This publication does not purport to include all the necessary provisions of a contract. Users are responsible for its correct application. BSI 2011 ISBN 978 0 580 68679 5 ICS 35.080 Compliance with a British Standard cannot confer immuni
4、ty from legal obligations. This British Standard was published under the authority of the Standards Policy and Strategy Committee on 30 April 2011. Amendments issued since publication Date T e x t a f f e c t e dBS ISO/IEC 19761:2011Reference number ISO/IEC 19761:2011(E) ISO/IEC 2011INTERNATIONAL ST
5、ANDARD ISO/IEC 19761 Second edition 2011-03-15 Software engineering COSMIC: a functional size measurement method Ingnierie du logiciel COSMIC: une mthode fonctionnelle de mesure de taille BS ISO/IEC 19761:2011 ISO/IEC 19761:2011(E) PDF disclaimer This PDF file may contain embedded typefaces. In acco
6、rdance with Adobes licensing policy, this file may be printed or viewed but shall not be edited unless the typefaces which are embedded are licensed to and installed on the computer performing the editing. In downloading this file, parties accept therein the responsibility of not infringing Adobes l
7、icensing policy. The ISO Central Secretariat accepts no liability in this area. Adobe is a trademark of Adobe Systems Incorporated. Details of the software products used to create this PDF file can be found in the General Info relative to the file; the PDF-creation parameters were optimized for prin
8、ting. Every care has been taken to ensure that the file is suitable for use by ISO member bodies. In the unlikely event that a problem relating to it is found, please inform the Central Secretariat at the address given below. COPYRIGHT PROTECTED DOCUMENT ISO/IEC 2011 All rights reserved. Unless othe
9、rwise specified, no part of this publication may be reproduced or utilized in any form or by any means, electronic or mechanical, including photocopying and microfilm, without permission in writing from either ISO at the address below or ISOs member body in the country of the requester. ISO copyrigh
10、t office Case postale 56 CH-1211 Geneva 20 Tel. + 41 22 749 01 11 Fax + 41 22 749 09 47 E-mail copyrightiso.org Web www.iso.org Published in Switzerland ii ISO/IEC 2011 All rights reservedBS ISO/IEC 19761:2011 ISO/IEC 19761:2011(E) ISO/IEC 2011 All rights reserved iiiContents Page Foreword iv Introd
11、uction.v 1 Scope1 2 Terms and definitions .1 3 Abbreviated terms.5 4 Unit of measurement.6 5 Measurement activities.6 5.1 General .6 5.2 Determination of the purpose and scope of the FSM6 5.3 Identification of the FUR.6 5.4 Identification of the layers6 5.4.1 The scope of the FSM and layers 6 5.4.2
12、Characteristics of layers.7 5.5 Identification of the functional users 7 5.6 Identification of software boundaries .7 5.7 Identification of functional processes.8 5.8 Identification of data groups 8 5.9 Identification of data movements 8 5.10 Classification of data movements .8 5.10.1 Entry8 5.10.2
13、Exit9 5.10.3 Read9 5.10.4 Write9 5.11 Calculation of the functional size 9 5.11.1 Assignment of a unit size to a data movement 9 5.11.2 Aggregation of functional size.9 5.11.3 Aggregation of functional size for the identified FUR for each piece of software to be measured10 5.12 Calculation of functi
14、onal size of changes to the FUR .10 6 Measurement reporting.11 6.1 Labelling.11 6.2 Documentation of the measurement results 11 Annex A (informative) Extraction of Functional User Requirements 12 Bibliography14 BS ISO/IEC 19761:2011 ISO/IEC 19761:2011(E) iv ISO/IEC 2011 All rights reservedForeword I
15、SO (the International Organization for Standardization) and IEC (the International Electrotechnical Commission) form the specialized system for worldwide standardization. National bodies that are members of ISO or IEC participate in the development of International Standards through technical commit
16、tees established by the respective organization to deal with particular fields of technical activity. ISO and IEC technical committees collaborate in fields of mutual interest. Other international organizations, governmental and non-governmental, in liaison with ISO and IEC, also take part in the wo
17、rk. In the field of information technology, ISO and IEC have established a joint technical committee, ISO/IEC JTC 1. International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part 2. The main task of the joint technical committee is to prepare International St
18、andards. Draft International Standards adopted by the joint technical committee are circulated to national bodies for voting. Publication as an International Standard requires approval by at least 75 % of the national bodies casting a vote. Attention is drawn to the possibility that some of the elem
19、ents of this document may be the subject of patent rights. ISO and IEC shall not be held responsible for identifying any or all such patent rights. ISO/IEC 19761 was prepared by Joint Technical Committee ISO/IEC JTC 1, Information technology, Subcommittee SC 7, Software and systems engineering. This
20、 second edition cancels and replaces the first edition (ISO/IEC 19761:2003), which has been technically revised. BS ISO/IEC 19761:2011 ISO/IEC 19761:2011(E) ISO/IEC 2011 All rights reserved vIntroduction Software is a major component of many corporate budgets. Organizations recognize the importance
21、of controlling software expenses and analysing the performance of the budgets allocated to software development and maintenance in order to benchmark against the best in the field. To do so, measures and models using these measures are needed. Measures are needed for analysing both the quality and t
22、he productivity associated with developing and maintaining software. On the one hand, technical measures are needed to quantify the technical performance of products or services from a developers viewpoint. Technical measures can be used for efficiency analysis; to improve the performance of designs
23、, for instance. On the other hand, functional measures are needed to quantify the performance of products or services from a users or owners perspective; for productivity analysis, for instance. Functional measures must be independent of technical development and implementation decisions. They can t
24、hen be used to compare the productivity of different techniques and technologies. The Full Function Points (FFP) method was proposed in 1997 with the aim of offering a functional size measure specifically adapted to real-time software. Field test results, coupled with the feedback received from orga
25、nizations which used it, motivated the authors to improve the method. Many improvements were also inspired by the work of the Common Software Measurement International Consortium (COSMIC). The results of these efforts were published in May 2001 as version 2.1 of the COSMIC-FFP Functional Size Measur
26、ement Method (as it was first named), aiming to be applicable to business application, real-time and system software 4 . ISO/IEC 19761:2003 was based on this version 2.1 of the COSMIC-FFP Functional Size Measurement method. Extensive experience of using the method convinced the Common Software Measu
27、rement International Consortium of the need for various clarifications and improvements to the description of the method. Version 3.0 of the method was therefore published in December 2007 5 . These various changes have not altered the underlying model for the measurement of software functional size
28、 since it was first published in 2001. The International Standard aims to meet the needs of a) software suppliers facing the task of translating customer requirements into the functional size of software to be produced as a key activity in their project cost estimating, b) customers who want to know
29、 the functional size of delivered software as an important component of measuring supplier performance. With version 3.0 of the method, the name of the method was simplified from “COSMIC-FFP” to “COSMIC”. The name of the unit of measure has also been simplified from “Cfsu” (COSMIC functional size un
30、it) to “CFP” (COSMIC Function Point). BS ISO/IEC 19761:2011BS ISO/IEC 19761:2011 INTERNATIONAL STANDARD ISO/IEC 19761:2011(E) ISO/IEC 2011 All rights reserved 1Software engineering COSMIC: a functional size measurement method 1 Scope This International Standard specifies the set of definitions, conv
31、entions and activities of the COSMIC Functional Size Measurement Method. It is applicable to software from the following functional domains: a) application software; EXAMPLE Banking, insurance, accounting, personnel, purchasing, distribution or manufacturing. b) real-time software; EXAMPLE Software
32、for telephone exchanges and message switching, software embedded in devices to control machines such as domestic appliances, lifts and car engines, for process control and automatic data acquisition, and within the operating system of computers. c) hybrids of the above. EXAMPLE Real-time reservation
33、 systems for airlines or hotels. This International Standard has not been designed for measuring the functional size of a piece of software, or its parts, which is characterized by complex mathematical algorithms or other specialized and complex rules, such as can be found in expert systems, simulat
34、ion software, self-learning software and weather forecasting systems, or processes continuous variables such as audio sounds or video images, such as can be found in computer game software, musical instruments and the like. 2 Terms and definitions For the purposes of this document, the following ter
35、ms and definitions apply. 2.1 Base Functional Component BFC elementary unit of Functional User Requirements defined by and used by an FSM Method for measurement purposes ISO/IEC 14143-1:2007, definition 3.1 NOTE The COSMIC Functional Size Measurement Method defines a data movement as a BFC. BS ISO/I
36、EC 19761:2011 ISO/IEC 19761:2011(E) 2 ISO/IEC 2011 All rights reserved2.2 Base Functional Component type BFC type defined category of Base Functional Component ISO/IEC 14143-1:2007, definition 3.2 2.3 boundary conceptual interface between the software being measured and its functional users NOTE The
37、 COSMIC Functional Size Measurement Method uses the term “functional user”, which has a narrower definition than the term “user” as defined in ISO/IEC 14143-1:2007, definition 3.3. In consequence, this International Standard uses “functional user”, rather than “user”. 2.4 data attribute smallest par
38、cel of information, within an identified data group, carrying a meaning from the perspective of the softwares Functional User Requirements 2.5 data group data group type distinct, non empty, non ordered and non redundant set of data attributes where each included data attribute describes a complemen
39、tary aspect of the same object of interest (see 2.19) 2.6 data manipulation any processing of the data other than a movement of the data into or out of a functional process, or between a functional process and persistent storage 2.7 data movement data movement type Base Functional Component which mo
40、ves a single data group NOTE 1 The COSMIC Functional Size Measurement Method has four types of data movements: Entry, Exit, Read and Write. These are the Methods four BFC types. NOTE 2 For measurement purposes, each data movement is considered to account for certain associated data manipulation. 2.8
41、 Entry Entry type data movement that moves a data group from a functional user across the boundary into the functional process where it is required NOTE An Entry is considered to account for certain associated data manipulations (e.g. validation of the entered data). 2.9 Exit Exit type data movement
42、 that moves a data group from a functional process across the boundary to the functional user that requires it NOTE An Exit is considered to account for certain associated data manipulations (e.g. formatting and routing associated with the data to be exited). BS ISO/IEC 19761:2011 ISO/IEC 19761:2011
43、(E) ISO/IEC 2011 All rights reserved 32.10 functional process functional process type elementary component of a set of Functional User Requirements, comprising a unique, cohesive and independently executable set of data movements NOTE 1 It is triggered by a data movement (an Entry) from a functional
44、 user that informs the piece of software that the functional user has identified a triggering event, and is complete when it has executed all that is required to be done in response to the triggering event. NOTE 2 In addition to informing the piece of software that the event has occurred, the Entry
45、triggered by the event can include data about an object of interest associated with the event. 2.11 Functional Size Measurement FSM process of measuring Functional Size ISO/IEC 14143-1:2007, definition 3.7 2.12 Functional Size Measurement Method specific implementation of FSM defined by a set of rul
46、es, which conforms to the mandatory features of ISO/IEC 14143-1:2007 ISO/IEC 14143-1:2007, definition 3.4 2.13 functional user user that is a sender and/or an intended recipient of data in the Functional User Requirements of a piece of software 2.14 Functional User Requirements FUR sub-set of the us
47、er requirements describing what the software does in terms of tasks and services NOTE Functional User Requirements include, but are not limited to, data transfer (for example Input customer data, Send control signal), data transformation (for example Calculate bank interest, Derive average temperatu
48、re), data storage (for example Store customer order, Record ambient temperature over time), and data retrieval (for example List current employees, Retrieve aircraft position). User requirements that are not Functional User Requirements include, but are not limited to, quality constraints (for examp
49、le usability, reliability, efficiency and portability), organizational constraints (for example locations for operation, target hardware and compliance to standards), environmental constraints (for example interoperability, security, privacy and safety), and implementation constraints (for example development language, delivery schedule). ISO/IEC 14143-1:2007, definition 3.8 2.15 layer partition resulting from the functional division of a software system, where layers are organized in a hierarchy, BS ISO