Abstract
Software quality is a very subjective attribute and is a complex mixture of several factors. There is no universal definition or a unique metric to quantify software quality. It is usually measured by analyzing various factors that are significant to the domain or application. It is evident that the end user of a product realizes substantial benefits due to improved software quality. Therefore many software industries strive hard to improve the quality of their product by investing in quality control and quality assurance activities like inspections, reviews, testing and audits. However, many software companies do not endeavor into reengineering activities to reap quality improvements. Product families that share legacy components, which have a lot of common features, could be reengineered in a systematic manner to consolidate knowledge and produce common components that can accommodate future applications. A significant by-product of this systematic reengineering activity would be an improved software quality. This paper presents a systematic reengineering approach and also identifies different quality factors that could be improved during this process. The proposed reengineering technique was used at Nokia Research Center to reengineer existing mobile systems in an efficient manner so that more applications and operating modes could be supported.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Reference
R. S. Pressman, Software Engineering A Practitioner’s approach, 5th ed. McGraw-Hill Series in Computer Science (2001)
J. McCall and P. Richards, G. Walters, Factors in Software Quality, three volumes, NTIS AD-A049-014, 015, 055 (1977)
J.P. Cavano and J.A. McCall, A Framework for Measurement of Software Quality, Proceedings of ACM Software Quality Assurance Workshop (1978)
ISO/IEC 9126, Information Technology-Software Product Quality, Part 1–4, ISO/IEC JTC1/SC7/WG6 (1998)
R.B. Grady and D.L. Caswell, Software Metrics: Establishing a Company-Wide Program, Prentice-Hall (1987)
G. Raghavan, Reduce Maintenance Cost In Product Families Using Multi-Platform Development Scheme, Proceedings of IASTED Software Engineering and Applications, Anaheim, California (2001)
G. Booch, J. Rumbaugh and I. Jacobson, The Unified Modeling Language: User Guide, Addison-Wesley Longman, Inc., Reading, Massachusetts (1999)
L. Harte, S. Prokup and R. Levine, Cellular and PCS: The Big Picture, McGraw-Hill, New York (1997)
V. R. Basili and H.D. Rombach, Support for Comprehensive Reuse, Software Engineering Journal, September (1991)
G. Caldiera and V. R. Basili, Reengineering Existing Software for Reusability, Technical report UMIACS-TR-90-30, Institute of Advance Computer Studies and Department of Computer Science, University of Maryland, MD (1990)
W. Tracz, Software Reuse: Motivators and Inhibitors, Proceedings of COMPCONS (1987)
G. Arango and R. Prieto-Diaz, Domain Analysis and Software System Modeling, IEEE Press (1991)
G. Raghavan and M. Boughdadi, Mapping UML Object Model and Statechart to SDL, Software Engineering Symposium, Motorola Conference, Arizona (2000)
K. Verschaeve and A. Ek, Three Scenarios for Combining UML and SDL 96, SDL’99: The Next Millennium, Elsevier Science, Netherlands (1999)
W. Frakes and C. Terry, Software Reuse and Reusability Metrics and Models, TR-95-07, Computer Science Department, Virginia Techn (1995)
L.L. Jilani, J. Desharnais and A. Mili, Defining and Applying Measures of Distance Between Specifications, IEEE Transactions on Software Engineering, vol. 27, no. 8, (2001)
Telelogic AB., Telelogic Tau 4.2: SDT Manual (2000)
J. Ellsberger, D. Hogrefe and A. Sarma, SDL: Formal Object-Oriented Language for Communicating Systems, Prentice Hall (1997)
Rhapsody I-Logix, http://www.ilogix.com
G. Raghavan, Industrial Strength Formalization of Object-Oriented Real-time System, PhD Dissertation, Florida Atlantic University, Boca Raton, Florida (2000)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Raghavan, G. (2002). Improving Software Quality in Product Families through Systematic Reengineering. In: Kontio, J., Conradi, R. (eds) Software Quality — ECSQ 2002. ECSQ 2002. Lecture Notes in Computer Science, vol 2349. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-47984-8_13
Download citation
DOI: https://doi.org/10.1007/3-540-47984-8_13
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-43749-9
Online ISBN: 978-3-540-47984-0
eBook Packages: Springer Book Archive