Size Estimation of Real-Time Software Components - A System Perspective
Licentiatavhandling, 2010

The demands and expectations on the system architectures of contemporary consumer products like cars are increasing for each product generation. New features using new sensors and actuators, with different variants on different markets, and that interact with other features, create additional complexity in the system. This complexity needs to be managed in a cost-efficient manner, and with a focus on minimizing the risk of product failure. This calls for new methods and tools. The problem we want to solve is how to predict the amount of ROM-type memory that is needed in an ECU (Electronic Control Unit) in a distributed system like a car. The ECU shall have spare capacity in terms of processing and storage to last for software updates and additions during at least five years. At the same time the pressure on product cost is high due to the large number of produced cars and the existing over-capacity in the automotive industry. So we need to balance spare capacity with cost efficiency in the system architecture. We apply the FSM (Functional Size Measurement) method COSMIC to requirement specifications (including UML Component Diagrams) that are used for sourcing of the ECU hardware. We have used software components developed by GM (General Motors)to establish the linear relationship between CFP (COSMIC Function Points) and Bytes compiled code. The relationship is stronger than what is reported for similar work using SLOC (Source Lines-Of-Code) as Code Size Measure. Our idea is to use the linear relationship to convert CFP into Bytes, and hence estimate the needed memory size. The parameters of the linear relationship are affected by factors like functionality type, quality constraints, development tools, etc. By investigating 46 software components of 4 different types, we have identified these factors that are dominant in our context and use them to select the proper conversion from CFP into Bytes. We have shown in our context that COSMIC FSM only need the information in the requirement specification available early in the development process, to predict the needed memory space in an ECU to be designed. In addition, we have identified a one-to-one mapping between the Generic Software Model (which is the basis for COSMIC FSM) and software components. Finally, we have shown that COSMIC FSM produces accurate Code Size Estimates of software containing complex operations like calculations, provided that similar software has been measured before and that the operations are proportional to the number of data movements. This is contrary to what is reported by other researchers.

COSMIC Function Points

software code size

Functional Size Measurement

software components

system architecture.

Sal EA, Rännvägen 6B, Chalmers University of Technology
Opponent: Prof. Magne Jörgensen, Simula Research Laboratory AS, Norge


Kenneth Lind

Chalmers, Data- och informationsteknik

On the Relationship between Different Size Measures in the Software Life Cycle

16th Asia-Pacific Software Engineering Conference, APSEC 2009; Penang; Malaysia; 1 December 2009 through 3 December 2009,; (2009)p. 19-26

Paper i proceeding

Estimation of Real-Time Software Component Size

Nordic Journal of Computing,; Vol. 14(2008)p. 282-300

Artikel i vetenskaplig tidskrift

On the Relationship between Functional Size and Software Code Size

International Workshop on Emerging Trends in Software Metrics (WETSoM 2010), May 4, 2010, Cape Town, South Africa.,; (2010)p. 47-52

Paper i proceeding




Technical report L - Department of Computer Science and Engineering, Chalmers University of Technology and Göteborg University: 69L

Sal EA, Rännvägen 6B, Chalmers University of Technology

Opponent: Prof. Magne Jörgensen, Simula Research Laboratory AS, Norge