COSMIC: A Small Improvement on the Symons Method

The COSMIC FP (function point) software quality metric, is no longer 'proposed' but an actual system in use and internationally recognised, whereas MarkII, like other older systems, is not recognised anywhere, and, even in the UK is in decline if not actually dormant, so this debate is already over.

Historically, from my limited understanding of the situation, it seems that originally there were upwards of 35 variants of function point style metrics until the ISO developed criteria for a acceptable solution, ISO 14143: Parts 1 to 5 (1995-2002):

The COSMIC group reviewed existing functional size measurement methods, namely the work done in the late 80's by Charles Symons in the UK. The aim was to improve on Albrecht's size index (IFPUG FPA)

As stated in many sources, the most important feature of the COSMIC method is that, unlike Mark II, it was developed alongside the emergence of the newer software applications that did not exist when Mark II was devised, thus being compatible with modern software engineering concepts and unlike the previous metrics, this method was designed to be compatible with the ideas from structured analysis and design.

Because of these two features, COSMIC has Full ISO recognition and is has inherent flexibility for a wider range of software, this flexibility also makes the metric less sensitive to mistakes during analysis than is typically the case with the Mark II metric which does not have the same ability to capture size from multiple viewpoints

Function point style metrics estimation algorithms involve applying a set of rules and procedures to a given piece of software as it is perceived from the perspective of its Functional User Requirements. As size measures are not very precise, this gives a veneer of science to what is in effect a guessing game.

The result being that while Mark II can be used for sizing of the GUI and real-time systems which did not exist when it was created only after extensive adaptation, but which itself creates difficulties of interpretation due to conflicting procedures and rules.

An important issue with the Mark II method is that the "functional components of the method are difficult or subjective to interpret" 6, different measurers will get different results.

The COSMIC method of sizing the functional requirements of software has been approved as an International Standard (ISO/IEC 19761:2003). and unlike the previous variations, COSMIC is the first method to be designed by an international team, as opposed to being the product of one academic or entity. This is a positive because it will help standardisation which will in turn improve repeatability of the measurement.

The most important disadvantage to Function point methodology is that "it takes several days to learn function point counting and more time to become proficient. This hurdle has limited the pool of trained counters." 3 Many of the sources I looked at included warnings such the following "Function Point Analysis should be performed by trained and experienced personnel. If Function Point Analysis is conducted by untrained personnel, it is reasonable to assume the analysis will done incorrectly." 4

Function point methodologies are designed around the application of complex rules and procedures that result in a numerical "value of a quantity"2 representing the functional size of the software.

Unlike the Mark II method, COSMIC requires an extra step to identify layers' before indentifying the system boundary, however this process enables the analysis to better account for the inner workings of a complex system and reduces the probability of missing functions.

The general consensus from the materials that I have read is that fundamentally the measurement effort for COSMIC is similar to that needed for established sizing methods. However unlike the other methods, COSMIC functional size method is 'easy' or 'reasonably easy' to apply.

This is in part due to the removal of the technical adjustment factors from the specifications and simplification of the transactional functions rules and terminology. Fore example, using Mark II "a function is not a point unless specific rules are satisfied"3. Where as COSMIC counting rules consist of "three core rules that establish which observations constitute a point"3.

An important factor in general ease of use is the underlying mathematical framework for quantifying and summarizing function points but which involves a loss in information when summarized into unadjusted function points.

Using COSMIC there is no separate counting of files (ILF and EIF) and is Ratio/Absolute. We would identify for each functional process, the subprocesses (entry, exit, read, write); The measurement Viewpoint allows "all functions to be included in the size measure" unlike in Mark II method, then apply measurement function as follows; FP Size = Sum(number of Entries ) + Sum(number of Exits) + Sum(number of Reads) + Sum(number of Writes)

"The size of a functional process is the sum of its data movements (entry, exit, read, write) and the size of a piece of software is the sum of the sizes of all of its functional processes." 6.

Due to the concept of data movements as opposed to Logical Files once per system used in the Mark II, COSMIC results in amore accurate size measure for the complexity of processing stored data.

For example, in the given case above it is not unreasonable to expect the update inventory transaction input to the Inventory item entity to be output during the transaction and become part of the input the inventory_item entity this is information is lost.

Under Mark II rules, it is counted as an input once when the data crossed the application boundary, but not as an input in the Invontary_item entity because the data does not leave the application boundary again at that point.

For the update inventory transaction under Mark II we can a UFPI count of (0.58*9) + (1.66 * 4) (0.26*1) = 12.12, under CosMIC we would arrive at an equivalent count of 3+5+4 =12

In conclusion, the fact that function points are not (yet) a perfect measure of an application, COSMIC does represents an advance over the IFPUG and other '1st Generation' FSM Methods. Measurement of functional sizes can be more plausible, easier to make and repeatable.

However functional size measurement technology must keep evolving to meet market needs. indeed I would think that this is too subjective to be counted as a "measure". For instance, I personally know over 120 software developers at 20 different companies, and nobody had ever heard of Function Points before I did.

The addition in COSMIC of the concept of internal layers, for better identification of component to component interaction allows for more complete analysis, and is missing from MarkII. What is still needed is a defined standard for adequate precision and an effective way to describe the accuracy of the function points which could be achieved in fact through better guidelines. Due to the fact that COSMIC is free and accessible anywhere in the world it is more likely to survive and evolve, unlike MarkII which is UK only, and proprietary.

Bibliography
[1] Abran, Alain, Robillard, Pierre N., "Function Points : A Study of their Measurement Processes and Scale Transformations", Journal of Systems and Software, May 1994, pp.171-184.

[2] Steve Neuendorf. (2001) Let Size A = X Function Points, Online, http://www.serv.net/~steve/Let%20Size%20equal%20FP.htm, October 22 2004.

[3] Steve Neuendorf. (2001) Evolving Function Points, Online, http://www.stsc.hill.af.mil/crosstalk/2001/02/fischman.html, October 25 2004.

[4] Symons, C.R., 'Function Point Analysis: Difficulties and Improvements', IEEE Trans Software Eng., vol 14, no. 1, Jan 1988

[5] Total Metrics. (2001) Function Points FAQs, Online, http://www.totalmetrics.com/cms/servlet/main?Subject=Content&ID=165, October 22 2004.

[6] Unkown. (2002) Advantages of the COSMIC-FFP method, Online, http://www.cosmicon.com/advantagecs.asp, October 25 2004.

I am the website administrator of the Wandle industrial museum (http://www.wandle.org). Established in 1983 by local people determined to ensure that the history of the valley was no longer neglected but enhanced awareness its heritage for the use and benefits of the community.

In The News:


pen paper and inkwell


cat break through


Blind CC (Bcc): Master Its Use When E-Mailing

If you use Microsoft Outlook (or similar applications) for e-mailing,... Read More

Great Plains Bill of Materials Setup & Customization for Process Manufacturing ? Overview

Microsoft Great Plains has full-featured Manufacturing suite of modules: Capacity... Read More

Guide to Software Marketing

Intro This concise article will tell you in plain English... Read More

Cisco CCNA Certification: Becoming A Truly Valuable CCNA.

I've been active in the Cisco Certification track for four... Read More

Is Software Tester a Most Infamous Person in a Software Project Team?

The fact that a software tester is a most infamous... Read More

Navision Attain C/ODBC Crystal Report ? Customization Example

Microsoft Business Solutions Navision is main ERP application for European,... Read More

Lotus Domino: Reports and Connectors ? Crystal Reports, XML, ODBC/JDBC, OLE

Lotus Notes Domino is very efficient in electronic document workflow... Read More

OEComplete ? A Personal Information Manager

OEComplete is a utility for managing the personal information of... Read More

Photoshop Files and Formats

People often ask me: What image file formats will Photoshop... Read More

Microsoft CRM Implementation & Remote Support

We would like to give you pluses and minuses of... Read More

Software Review: Xsitepro Total Site Management Software

It's not very often I get excited about a software... Read More

Microsoft Great Plains Beverage Production & Distribution ? Implementation & Customization Highlight

Microsoft Business Solutions Great Plains has many years of successful... Read More

Introduction To ISDN, Part II

In the previous ISDN article, we looked at how and... Read More

Microsoft CRM Implementation for Large Corporation ? overview

Microsoft Business Solutions CRM is now approaching the phase of... Read More

How Do I Get Rid Of That Darn Spyware?

Ad-Aware and Spybot are probably the two most well known... Read More

SSH (SCP) Send Files from Windows to Your Linux Box

Not all of us have the luxury of working both... Read More

Spyware, What is it?

Spyware, what it is and what it does. Basically, spyware... Read More

RFID: Strengthen the Position for SAP; United States

SAP Inc., a global leader in client/server enterprise application software... Read More

Microsoft Great Plains, Navision, Axapta ? Selection Considerations

During the years of our consulting practice, which comes back... Read More

Microsoft Great Plains Partner Selection: Overview

Microsoft Great Plains, Navision, Solomon and Axapta are Microsoft Business... Read More

Put Some Pizazz in Your Software Arsenal

The software giants don't do everything and don't always produce... Read More

Brief Notes About Mainframe Software Pricing

We don't think about mainframe software pricing anymore, we just... Read More

Microsoft Great Plains Integrations - Tips for Developer

In this short FAQ style article we would like to... Read More

Tripwire for Linux File Integrity

What is Tripwire?Tripwire is a form intrusion detection system (IDS)... Read More

Why Stick With Email Clients Like Outlook?

Trying to figure out a stream in banning one email... Read More

What is a Document Manager without Version History?

Document Manager and Version HistoryIn previous articles I have discussed... Read More

Passwords Used In Microsoft Word Documents

You would like to protect your documents, wouldn't you? Reasons... Read More

Microsoft Great Plains Customization: Project Organization ? International Business Example

Microsoft Business Solutions Great Plains fits to majority of horizontal... Read More

Microsoft Great Plains e-Commerce ? additional considerations for programmer

Microsoft Great Plains, designed back in 1990th as database transferable... Read More

ERP System of the Future: Database, Business Logic and Interface

We will base our prognosis on our Microsoft Business Solutions... Read More

Best Spyware Removers

Finding the best spyware removers to detect and remove spyware... Read More

Constructionalist Parsing - Deciphering Natural Language

The research in the field of Natural Language Processing usually... Read More

Microsoft CRM Custom Design & Development: SDK, C#, SQL, Exchange, Integration, Crystal Reports

Microsoft CRM is new player on the CRM software... Read More