Pervasive software and timely completion of software projects:
Software has become so ubiquitous that the
importance of the software projects and their timely completion cannot be
overlooked. Timely completion is dependent on correct planning which requires
realistic effort estimates. Effort estimates can be realistic only if accurate
and complete software size measurements are available.
Many medium- and big-sized software projects
are unable to be completed within the planned limits of time, money and
resources. The FSSM book pinpoints one of the major, originating, basic root causes
of the erroneous planning by disclosing the hidden errors that are made in the
software size measurement, and consequently in the effort estimates and project
planning. It then reveals the simple and correct manner of accurate software
size measurement whereby realistic effort estimates can be obtained based on
which precise project planning can be done, and successful execution of the
projects can be achieved within the planned limits.
The “Functional Software Size Measurement
Methodology with Effort Estimation and Performance Indication (FSSM)” presented
in the FSSM book provides comprehensive and precise measurements of the complete
software whereby factual software size determination, development effort
estimation and performance indications are obtained. The methodology is
elaborate, effective and accurate for software size measurement and development
effort estimation. Consequently, misconstrued project planning of the software
projects can be avoided.
All the major, relevant and important aspects
of the software size measurement are taken into consideration in the FSSM and are
presented to the reader. They are the software’s measurable components;
software component’s measurable features; software component’s feature points; software
component’s feature point counts; software component’s feature measurements;
software component’s measurements; software size and effort estimations; and
software performance quality indicators. Also, included are a worked-out
example with counting table, explanation and results; software diagnostics
based on the software component’s feature measurements and software performance
quality indicators; comparison with and advantages over some of the currently
available methodologies; convertibility to another FSM methodology; effort
estimation for applying the FSSM methodology; and details of the full
compliance of the FSSM with the ISO/IEC 14143-1 standards.
The FSSM book is destined and
recommended for all the management/software professionals/students, and those
interested in the field of software size measurement. It is intended to be used as a text book for the
full or part of the advanced, specialised course of “Software Size Measurement”
at the level of Master of Technology/Engineering/Science in the curriculum of the
Computer Science/Engineering/Technology courses.
. . . . .
Comprehensive coverage of software for size measurement:
The
FSSM is quite comprehensive in nature and covers all the important and relevant
components and their important and relevant features for the measurement. Thus,
it measures the complete, actual functionality in reality and does not make
assumptive measurements similar to what is done in the existing software size
measurement methodologies. At the same time, it provides the software
development effort estimation and software performance indication.
. . . . .
Accurate size measurement of the complete software:
For correct and comprehensive measurement of the complete software, all the important, relevant Software Component’s Measurable Features (SCMFs) of all the Software’s Measurable Components (SMCs) are measured in the FSSM to obtain the correct size of the complete software. These measurements – the Software Component’s Feature Measurements (SCFMs) – form the basis of all the component measurements, software size determination, effort estimations and performance indications. Hence, obtaining the correct size of the complete software is accomplished by measuring the complete, actual functionality in reality, and not by making the measurements for a tiny part of the functionality and making assumptions for the major non-measured part of the functionality by using some experimental multiplication factors.
Thus, comprehensive measurement
of the complete software is one of the major distinguishing features of the
FSSM as compared to the other existing software size measurement methodologies.
. . . . .
Software development effort estimate:
Comprehensive
measurement of the complete software is directly linked with the real software
constituent parts on which the effort is spent on the development. Based on the
elaborate measurements, the effort estimation for the software development
activities is calculated in a realistic and reliable manner in the FSSM. So, there
is no need to search the statistical data about the past projects and find out
the correct multiplier factors to apply dependent on the type, field and
complexity of the application in order to get the estimations about the
development effort. Development effort estimate is directly obtained from the
effort estimation formulae which are based on the generalised real software
model, hence avoiding assumption errors.
. . . . .
Integral methodology parts:
The software size determination, development effort estimation and software performance characteristics related with the static structure and dynamic execution are an integral part in the FSSM. Their calculations are based on the measurements of the components and their features.
. . . . .
Software performance indications:
In the FSSM, many useful software performance indications are provided that help in understanding the software characteristics from the point of view of the software static structure and dynamic run-time properties, and thus better project planning can be achieved.
. . . . .
Software diagnostics:
Based on the software component’s features measurements, and software performance indicators, many software diagnostics can be performed in the FSSM to determine the weak areas and so, improvements can be planned and made.
. . . . .
Functional requirements deficiencies:
In the FSSM, most of the obvious and apparent deficiencies in the descriptions of the functional requirements are determined that helps in improving the requirements and thus the quality of the software.
. . . . .
Simple mathematical calculations:
Only simple addition, multiplication and division calculations are used in the FSSM. No complex computations involving advanced mathematics are used. Hence, no advanced mathematics knowledge is required.
. . . . .
Measurement attributes values:
In comparison with the existing functional software size measurement methodologies, the FSSM has the characteristics mentioned below for the indicated attributes - level, type/nature, extent, and precision - of measurement:
- Measurement level: the FSSM has an advanced level of measurement instead of elementary;
- Measurement type/nature: the FSSM has a sophisticated type/nature of measurement instead of rudimentary;
- Measurement extent: the FSSM has a complete, comprehensive and elaborate extent of measurement instead of tiny and partial;
- Measurement precision: the FSSM has an accurate precision of measurement instead of undefined and uncertain.
. . . . .
Two points worth considering about the need and significance of the
FSSM
Two important elements: 1. Some recent observations
about the genuine, profound requirement of the FSSM, and 2. Interest by the president of IFPUG.
- Some recent observations about the genuine, profound requirement of the FSSM:
Software has become so ubiquitous that software projects are pervading everywhere with the consequence that the importance of software projects and their timely completion cannot be overlooked. The importance of software has created the need that the software projects are completed within the planned limits of time, money and resources. In spite of the software pervasiveness, many medium- and big-sized software projects are unable to be completed within their planned budgeted limits.
With ever-increasing pervasiveness of software, the availability of high-quality experts with adequate knowledge of right techniques of measuring accurately the size of complete software is hugely desired for obtaining realistic software development effort estimation needed for precise project planning of software projects.
The above-mentioned views are supported by the fact that according to the CIO Council’s 2017 State of Federal Information Technology report , 43 percent of the federal government’s $80 billion in IT projects catalogued in September 2016 were listed as over budget or behind schedule, and according to the analysis by QSM (Quantitative Software Management), inaccurate estimates are one of the major causes of this problem.
Estimates are not accurate because of the fact that the software size measurement methodologies available till now have a potential scope of major improvements.
Now, a new functional software size measurement methodology, FSSM (Functional Software Size Measurement Methodology with Effort Estimation and Performance Indication), is very helpful to solve the problem of inaccurate estimates.
The book about FSSM, recently published by Wiley/IEEE Press, “Functional Software Size Measurement Methodology with Effort Estimation and Performance Indication, 2017, ISBN: 978-1-119-23805-8”, pinpoints one of the major, originating, basic root causes of the erroneous planning by disclosing the hidden errors that are made in the software size measurement, and consequently in the effort estimates and project planning. It then reveals simple and correct manner of accurate software size measurement whereby realistic effort estimates can be obtained based on which, precise project planning can be done, and successful execution of the projects can be achieved within the planned limits.
- Interest by the president of IFPUG:
Regarding the new methodology FSSM, a podcast interview about the book was done by the well-known expert in the software size measurement area, Thomas Cagley, who is the current president of the IFPUG (International Function Point Users Group), one of the currently popular software size measurement methodologies, and is also the vice-president of a top software measurement company Premios (formerly DCG Software Value). See SPaMCAST 449 - Jasveer Singh, New Functional Software Size Measurement Methodology.
The FSSM is great help for the management of software projects through realistic effort estimates by accurate size measurement of complete software, and is used to:
- measure the software accurately, elaborately and completely
- get the realistic software development estimates
- get insights of software characteristics about software static structure and software operational dynamic behaviour by software performance quality indicators
- improve the quality of software by detecting deficiencies of software functional requirements specifications and removing the deficiencies.
. . . . .
Book contents:
The FSSM book comprises:
- Functional Software Size Measurement
Introduction
- Synopsis of the Functional Software Size
Measurement Methodology with Effort Estimation and Performance Indication
- Software’s Measurable Components
- Software Component’s Measurable Features
- Software Component’s Feature Points
- Software Component’s Feature Point Counts
- Software Component’s Measurements through Software
Component’s Feature Measurements
- Software Size Determination and Effort
Estimations
- Software Performance Quality Indicators for Static
Structure and Dynamic Characteristics;
- Summary Charts
- Software Diagnostics;
- Convertibility and ISO/IEC Standards
Compliance
- Strengths and Comparison: Methodology Coverage
and Advantages
- A worked-out Example with Functional
Requirements Specifications, Counting Table and Explanations, and Results
- Methodology Usage Effort
- Examples, exercises and
Glossary
. . . . .
Conclusion:
The FSSM has many conspicuous, significant and useful advantages for the Functional Size Measurement of the software, especially in comparison to the currently available software size measurement methodologies. It covers all the important constituents of the software for counting and is therefore very elaborate and comprehensive as it considers and takes into account all the relevant and essential software’s measurable components and all the software components’ measurable features. So, the size and complexity of all the components can be measured and judged accurately. By using the FSSM, the most realistic effort estimates are directly obtained which can be utilised for a precise project planning. No external multiplication factors based on the past projects statistics are required to be applied for the effort estimation calculations because the effort estimation is an integral part of the FSSM. At the same time, adequate number of vital Software Performance Quality Indicators are made available that help to assess the structural and operational characteristics of the software and to judge the quality of the functional requirements specifications with respect to the error handling and deficiencies. Based on the quality indicators, improvements can be made in the requirements to make them more precise, accurate and complete, resulting in higher quality of the software. Also, system architecture requirements can be assessed and its design can be improved based on the quality indicators. Both the factors – precise project planning and higher quality software – lead to significant cost savings in the software development process. At the same time, it is fully compliant with the ISO/IEC 14143-1 standards.
The FSSM is designed with a view to help the software community in improving the quality of the software projects by better methods and techniques, specifically in the area of the software size measurement, by taking into consideration all the constituent parts of the software for the complete software size measurement and thus providing a realistic size determination, development effort estimation and performance indication of the software. Due to a more precise measurement at an early stage of the software life-cycle by using the FSSM, the efficiency of the planning will increase, resources may be used more wisely and there is a greater chance that projects will be completed within the budget and on time.
Therefore, it is worth using the FSSM because of its multiple, significant strengths and advantages.