Estimation for Mobile and Cloud Environments

How to size and estimate Mobile and Cloud applications

Vogelezang, F.W., Ramasubramani, J.K., Arvamudhan, S.

Estimation of Cost, Effort and Schedule is a very important aspect in commercial software development. Effort is usually the predominant cost driver in software development. The dominant determinant for effort is the size of the software to be developed. There are various ways to determine the size of software. The best option is to use a standardized measure for the functional size. In this chapter the COSMIC method for functional size is introduced. Due to its basic principles, the COSMIC method enables determination of the functional size of mobile and cloud-based applications. This chapter demonstrates how the COSMIC method provides a good basis for the estimation of Cost, Effort and Schedule in mobile and cloud environments.

Publishing date
URL (external source)
Download option
Allow direct download


Estimation of Cost, Effort and Schedule

Estimation of Cost, Effort and Schedule is an important aspect in the commercial development for Mobile and Cloud Software. However, until recently it was not an issue for mobile and cloud software. Mobile was the domain of young developers who crafted the first version of an app and distributed it to the world. Bringing software to the cloud was usually a boardroom decision where the result was more important than the estimation of cost and effort.

But mobile and cloud are maturing as fast as they gain market share. For all business software that requires serious computing power, cloud is becoming the standard. Mobile is no longer the exclusive domain of hip young techies, since more and more business software is available on mobile platforms, backed up by the computing power of a back-office in the cloud. Now that mobile and cloud has become serious business, the estimation of cost, effort and schedule requires serious attention as well.

Size is the biggest driver for Cost, Effort and Schedule

By far the biggest driver of effort, and hence cost, to develop all types of software is its size. Methods to measure a ‘functional’ size of software from its requirements were first developed by IBM in the late 1970’s. These methods enable companies to estimate costs before any code is written, and they are still widely used today. But the early methods were based on a model whereby storage, processing and presentation of data all takes place within a single application.

Nowadays, mobile and cloud software use architectures in which these elements are separated. Apps present functionality to end-users without knowing how this data has been assembled and processed, nor where the base data might be stored. Storage and processing of data take place in the cloud and are – at least logically – separated. Cloud functionality is offered to all or authorized mobile devices by means of standard interfaces (or API’s). The result is that modern mobile and cloud software is distributed over an architecture of multiple layers, each with its well-defined role and interfaces (see the diagram for a simplified view).

Traditional, first generation functional size measurement methods have very limited use in these environments. This textbook chapter explains how the COSMIC standard for sizing software can be applied succesfully to estimate the cost, effort and schedule for Mobile and Cloud software. If you are responsible for estimating mobile or cloud software, this chapter will give you the basics you need, illustrated with examples.

This article is based on part of a chapter in the book ‘Modern Software Engineering Methodologies for Mobile and Cloud Environments’, Antonio Miguel Rosado da Cruz and Sara Paiva (Editors), ISBN 9781466699175 (ebook, 2016).

The COSMIC method

The COSMIC method is developed and maintained by an open-source community and is actively supported and used by companies and research institutions all over the world.