Implementing COSMIC method in Real Time System
(Evaluating Functional Size of Software)
Under Guidance Of:Submitted By:
1. Introduction……………………………….. 1-3
2. Literature Review…………………. 4
3. Motivation 5
4. Hypothesis 6
5. Tool 7
6. References 8-9
Software sizing is an activity in software engineering that is used to estimate the size of a software application or component in order to be able to implement other software project management activities (such as estimating or tracking). Size is an inherent characteristic of a piece of software just like weight is an inherent characteristic of a tangible material. Software sizing is different from software effort estimation. Sizing estimates the probable size of a piece of software while effort estimation predicts the effort needed to build it. The relationship between the size of software and the effort required to produce it is productivity.
We measure the functional size of software in terms of function points. But a question arises that what is functional size? The Functional Size represents the amount of functionality of the component or the software in terms of either LOCs or Data Movements. Another question that arises is that what are Function Points? Basically, Function Points measure the end users requirements in terms of data movements[.This means that an early functional size estimate can be derived before any code has been written. They are then also used to measure the actual cost of developing the requirements, which can be compared directly to the estimate and used to calibrate a scale for a particular development environment.
1.2 Different techniques for function size measurement
The most widely used function point measurement methods are IFPUG (International Function Point Users Group), NESMA (Netherlands Software Metrics Association), Mk II by UKSMA (United Kingdom Software Metrics Association) and COSMIC (Common Software Measurement International Consortium). Of these, IFPUG is based on the original method designed by Alan Albrecht. COSMIC is the newest method, developed by an international team of metrics experts to support modern software.
1.3 COSMIC Method
The COSMIC method is an internationally-standardized software sizing method. More specifically it is a method of measuring a ‘functional size’ of software. ‘COSMIC’ stands for the Common Software Measurement International Consortium. It measures the end users requirements in terms of data movements. Using COSMIC method an early functional size estimate can be derived before any code has been written.
COSMIC method can be used to
• Measure the functional size of the software,
• Can be used to estimate a project’s effort,
• Can be used to derive performance measures such as productivity (= size/effort).
This method is applicable to the following software domains:
• Business Applications, such as banking, insurance, accounting, personnel, purchasing, distribution or manufacturing.
• Real-Time Systems, such as software for telephone exchanges and message switching, software embedded in devices to control machines such as domestic appliances, elevators, car engines and aircraft, for process control and automatic data acquisition, and software within the operating system of computers.,
• Hybrid Applications which are the combination of both Business Applications and Real Time Systems, such as real-time reservation systems for airlines or hotels.
Four types of data movements are measured in COSMIC method, which are as follows: