An Improved SRS Document Based Software Complexity Estimation and Its Robustness Analysis

  • Sharma Ashish
  • D. S. Kushwaha
Part of the Communications in Computer and Information Science book series (CCIS, volume 142)


Complexity measures are used to predict critical information about reliability and maintainability of software systems from analysis of the source code. Complexity measures also provide continuous feedback during a software project to help control the development process. During testing and maintenance, it provides detailed information about software modules to help pinpoint areas of potential instability. The various complexity measures established so far are based on code and it is too late to perform this activity because a major part of investment has already taken place. Although it is established that a high quality SRS is pre requisite for high quality software, but software complexity estimation based on SRS document has not been properly researched and we find little proposals. Hence the work presented in this paper attempts to empirically demonstrate that the complexity of the code to be produced can be closely estimated based on IEEE software requirement specification document (IEEE 830-1998). Results obtained shows that the complexity values obtained from improved requirement based complexity (I-RBC) are comparable with other established measures and hence the complexity of the software to be produced could be computed from its SRS document. Its robustness is established by strictly evaluating and comparing proposed measure against Weyuker properties.


Requirement Based Complexity Input Output Complexity Product Complexity Personal Complexity Attributes Interface Complexity User Location Complexity Requirement Complexity 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    IEEE Computer Society. IEEE Recommended Practice for Software Requirement Specifications, New York (1994)Google Scholar
  2. 2.
    Halstead, M.H.: Elements of Software Science. Elsevier North, New York (1977)zbMATHGoogle Scholar
  3. 3.
    Mc Cabe, T.H.: A Complexity measure. IEEE Transactions on Software Engineering SE-2(6), 308–320 (1976)MathSciNetCrossRefGoogle Scholar
  4. 4.
    Kushwaha, D.S., Misra, A.K.: A Modified Cognitive Information Complexity Measure of Software. ACM SIGSOFT Software Engineering Notes 31(1) (January 2006)Google Scholar
  5. 5.
    Klemola, T., Rilling, J.: A Cognitive Complexity Metric based on Category Learning. In: IEEE International Conference on Cognitive Informatics (ICCI 2004) (2004)Google Scholar
  6. 6.
    Wang, Y.: Measurement of the Cognitive Functional Complexity of Software. In: IEEE International Conference on Cognitive Informatics (2003)Google Scholar
  7. 7.
    Ashish, S., Kushwaha, D.S.: A Complexity measure based on requirement engineering document, JCSE UK (May 2010)Google Scholar
  8. 8.
    Boehm, B.: Cost Models for Future Software Life Cycle Processes. In: Annals of Software Engineering Special Volume on Software Process and Product Measurement, Netherlands (1985)Google Scholar
  9. 9.
    Lakshmanan, K.B., Jayaprakash, S., Sinha, P.K.: Properties of control flow complexity measures. IEEE Transactions on Software Engineering 17(12), 1289–1295 (1991)CrossRefGoogle Scholar
  10. 10.
    Weyuker, E.J.: Evaluating Software complexity measures. IEEE transactions on software engineering 14(14), 1357–1365 (1988)MathSciNetCrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Sharma Ashish
    • 1
  • D. S. Kushwaha
    • 2
  1. 1.Department of Computer Science & EngineeringGLA Inst. of Tech. & Mgt.MathuraIndia
  2. 2.Department of Computer Science & EngineeringMNNITAllahabadIndia

Personalised recommendations