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


How To Develop Software For Your Business

Software development is a risky business.Many software developers are barely... Read More

The Secret of the Layer Styles Dialogue

When you double-click a layer in the Layer Palette, you... Read More

Bridging the Gap between Paper and Data

The cornerstone of successful automated office systems is the ability... Read More

Razzle Dazzle Them

Once upon a time not so long ago, there was... Read More

Microsoft Great Plains, Navision, Axapta ? Selection Considerations

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

PHP On-The-Fly!

IntroductionPHP can be used for a lot of different things,... Read More

Healthcare Preventive Maintenance Software

Healthcare facilities such as clinics, hospitals, and biomedical laboratories can... Read More

SQL: Querying Microsoft Great Plains ? Overview for Database Administrator/Developer

Looks like Microsoft Great Plains becomes more... Read More

Microsoft Small Business Manager Customization Options - Overview

Microsoft Business Solutions Small Business Manager is Great Plains Dexterity... Read More

Backing Up And Restoring Your MySQL Database

If you've been using MySQL database to store your important... Read More

Spyware Definitions List

The adware and spyware definitions list is very long. But... Read More

SQL Administrator Skills Required to Support Microsoft Great Plains

Microsoft Great Plains is becoming more and more popular and... Read More

Microsoft CRM Modification ? Overview for IT Specialist

Microsoft CRM is now on the scene and it is... Read More

Microsoft Great Plains Accounting/ERP Implementation ? Finance Industry Customization Example

Microsoft Business Solutions Great Plains is very generic accounting application... Read More

Lotus Notes Domino and Web: Application Development ? Tips for Programmers

Beginning with Domino version R4 it has integration with the... Read More

Start Developing Your Own Software

Learning how to program software seems like a daunting task... Read More

The Bluebird Project

The objective for Zandi Digital is to make available clever... Read More

IBM Lotus Domino or Microsoft Exchange?

IBM Lotus Domino or Microsoft Exchange?The severe competition continues for... Read More

Create A Flash Presentation For Free With Open Office

The intentions of this short tutorial are not to teach... Read More

Microsoft Great Plains: If You are Orphan Client ? What to Do and FAQ

Microsoft Business Solutions Great Plains, former Great Plains Software eEnterprise,... Read More

Bill of Lading ? Custom Reporting for Microsoft Great Plains ? Overview for Consultant

Bill of Lading is required report for Logistics and Freight... Read More

A Simple Guide To Wikis

A wiki is an editable text-based website. But you don't... Read More

Microsoft Great Plains Integrations - Tips for Developer

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

Do You Want Your Own Fully Programmable ERP? - Part 1

We are in a transition phase in the Managerial Administration... Read More

The Tools and Features of Adobe Photoshop

Adobe Photoshop is one of the world's leading graphics editing... Read More

Microsoft Great Plains Distribution, Barcoding, Consignment ? overview for consultant

Microsoft Great Plains ? ERM from Microsoft Business Solutions and... Read More

History of Java

The java programming language is becoming more and more popular... Read More

How to Make Attractive and Effective PowerPoint Presentations

Microsoft PowerPoint has dramatically changed the way in which academic... Read More

Spyware - The Internet Devil Of Our Times!

Spyware and Adware infest over 90 percent of computers in... Read More

Microsoft CRM: Implementation, Customization, Support ? Consultant Overview

Microsoft Business Solutions CRM is present several years on the... Read More

These Items Are A Must Before Making The Decision To Purchase Any Off-The-Shelf Software

1. What determines the software price? Is it Per Seat... Read More

Protect Your Computer...and Your Business!

We all take the computer for granted. I mean, all... Read More

OEComplete ? A Personal Information Manager

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