Improving Software Quality in Product Families through Systematic Reengineering

  • Authors:
  • Gopalakrishna Raghavan

  • Affiliations:
  • -

  • Venue:
  • ECSQ '02 Proceedings of the 7th International Conference on Software Quality
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

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.