Abstract
[Context and motivation] A key requirements consideration in software development is the system’s quality requirements. Quality is usually defined in terms of global properties for a software system, such as “reliability”, “usability” and “maintainability”. In the context of software maintenance they are particularly relevant: maintenance activities are performed to ensure software quality. [Question/problem] Recently an expanded view of RE has been emerging, wherein requirements artifacts play a role throughout a system’s lifecycle. How important are quality requirements as the lifecycle progresses? We examine two questions: whether requirements are discussed more as the software matures; secondly, whether different software projects have similar levels of interest about quality requirements. [Principal ideas/results] We use a software repository mining technique we call signifier extraction, and empirically investigate the treatment of software quality in software projects. Signifiers are keywords about quality requirements that we generate using a controlled taxonomy based on ISO9126. Using source data extracted from eight open-source software projects we extract the signifier frequencies over weekly intervals. We analyze the signifier occurrence patterns statistically and historically. [Contribution] Our results show that quality requirements are discussed differently in different projects. Furthermore, there is no correlation between project age and the importance of software quality requirements. Finally, we show that these occurrences provide a roadmap to reconstruct the historical changes of qualities as responses to external forces, such as release cycles and usability audits.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Antón, A.I., Potts, C.: Functional paleontology: system evolution as the user sees it. In: International Conference Software Engineering, Toronto, Canada, pp. 421–430 (2001)
Atkin, A.: Peirce’s Theory of Signs (October 2006), http://plato.stanford.edu/entries/peirce-semiotics/
Bøegh, J.: A New Standard for Quality Requirements. IEEE Soft. 25(2), 57–63 (2008)
Boehm, B., Brown, J.R., Lipow, M.: Quantitative Evaluation of Software Quality. In: International Conference Software Engineering, pp. 592–605 (1976)
Capra, E., Francalanci, C., Merlo, F.: An Empirical Study on the Relationship Between Software Design Quality, Development Effort and Governance in Open Source Projects. Trans. Soft. Eng. (2008)
Cheng, B.H., de Lemos, R., Giese, H., Inverardi, P., Magee, J.: Software Engineering for Self-Adaptive Systems: A Research Roadmap. In: Cheng, B.H.C., de Lemos, R., Giese, H., Inverardi, P., Magee, J. (eds.) Software Engineering for Self-Adaptive Systems. LNCS, vol. 5525, pp. 1–26. Springer, Heidelberg (2009)
Chung, L., Nixon, B.A., Yu, E.S., Mylopoulos, J.: Non-Functional Requirements in Software Engineering. International Series in Software Engineering, vol. 5. Kluwer Academic Publishers, Boston (October 1999)
Cleland-Huang, J., Settimi, R., Zou, X., Solc, P.: The Detection and Classification of Non-Functional Requirements with Application to Early Aspects. In: International Conference Requirements Engineering, pp. 39–48. IEEE, Minneapolis (2006)
Coallier, F.: Software engineering – Product quality – Part 1: Quality model. Tech. Rep. ISO9126, International Standards Organization - JTC 1/SC 7 (2001)
Doerr, J., Kerkow, D., Koenig, T., Olsson, T., Suzuki, T.: Non-Functional Requirements in Industry - Three Case Studies Adopting an Experience-based NFR Method. In: International Conference Requirements Engineering, pp. 373–384 (2005)
Ernst, N.A., Mylopoulos, J.: Tracing software evolution history with design goals. In: International Workshop on Software Evolvability at ICSM, Paris, France (October 2007)
Fellbaum, C. (ed.): WordNet: An Electronic Lexical Database. MIT Press, Cambridge (1998)
German, D.M.: The GNOME project: a case study of open source, global software development. Soft. Process: Improvement and Practice 8(4), 201–215 (2003)
Koch, S., Schneider, G.: Effort, co-operation and co-ordination in an open source software project: GNOME. Inf. Sys. J. 12, 27–42 (2002)
Lehman, M.M., Ramil, J.F., Wernick, P.D., Perry, D.E., Turski, W.M.: Metrics and laws of software evolution-the nineties view. In: Int. Soft. Metrics Symp., Albuquerque, NM, pp. 20–32 (1997)
Massey, B.: Where Do Open Source Requirements Come From (And What Should We Do About It)? In: Workshop on Open Source Software Engineering at ICSE, Orlando, FL, USA (2002)
McCall, J.: Factors in Software Quality: Preliminary Handbook on Software Quality for an Acquisition Manager. General Electric, vol. 1-3 (November 1977)
Mens, T., Fernandez-Ramil, J., Degrandsart, S.: The evolution of Eclipse. In: International Conference Software Maintenance, Shanghai, China, pp. 386–395 (October 2008)
Scacchi, W.: Understanding the requirements for developing open source softwaresystems. IET Software 149(1), 24–39 (2002)
Scacchi, W., Jensen, C., Noll, J., Elliott, M.: Multi-Modal Modeling, Analysis and Validation of Open Source Software Requirements Processes. In: International Conference on Open Source Software, Genoa, Italy, vol. 1, pp. 1–8 (July 2005)
Wheeler, D.: SLOCcount (2009), http://www.dwheeler.com/sloccount/
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Ernst, N.A., Mylopoulos, J. (2010). On the Perception of Software Quality Requirements during the Project Lifecycle. In: Wieringa, R., Persson, A. (eds) Requirements Engineering: Foundation for Software Quality. REFSQ 2010. Lecture Notes in Computer Science, vol 6182. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-14192-8_15
Download citation
DOI: https://doi.org/10.1007/978-3-642-14192-8_15
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-14191-1
Online ISBN: 978-3-642-14192-8
eBook Packages: Computer ScienceComputer Science (R0)