Abstract: Customer-focussed Selection and Prioritization of common and variable Features with Quality Function Deployment Andreas Helferich, Georg Herzwurm Chair of Business Administration and Information Systems (Business Software) Institute of Business Administration at Universität Stuttgart Breitscheidstr. 2c 70174 Stuttgart [helferich, herzwurm]@wi.uni-stuttgart.de 1 Introduction The issue of software variability management can be addressed on an operational level, addressing the question of how to manage the variability existing in the software product families or product lines, but also on a strategic level, addressing the question of how to decide where the members of a product line or family should differ. More specifically, the strategic aspect comprises the following three questions: • Which products should be members of the product line? • What should be common to all members of the product line? • What should be the differences between members of the product line? From a business point of view, the answer is quite easy in theory: there should be as many different members of a product line as are necessary to satisfy the needs of the customers in the market segment the company is planning to serve. The common “core“ consists of all features common to all members of the product line, the differences result directly from the different needs of different customers in this market segment. But also some of the more operational challenges in product line engineering can be tackled using Software QFD: von der Maßen et al. identify challenges in the categories Organization and Management, Requirements Engineering, Product- vs. platformspecific and Architecture (cf. [vdM+04, pp. 265ff.]). Some of these problems, most notably “high communication overhead”, “Discussions on design and not on requirements level” and “No explicit prioritization of requirements” can easily be solved using Software QFD. But how are the needs of the customers identified and translated into features? Quality Function Deployment (QFD), a method developed in Japan, helps companies recognizing and satisfying customer needs. It has been successfully applied to develop or improve goods, services and software. Chapter 2 gives a brief description of QFD and Software QFD, whereas Chapter 3 outlines the issues associated with using QFD for product lines and a simple method how to deal with one of the issues. Finally, in chapter 4, topics for further research are identified. 2 Brief description of Quality Function Deployment “QFD provides a systematic but more informal way of communication between customers and developers” ([Her+03], pg. 330) compared to traditional ways of formalizing and specifying requirements. A project team consisting of customer representatives, developers/engineers and a moderator who is an expert in QFD works together during the whole QFD process in order to assure that the final product’s features are not determined by the technically possible but by the fitness for use, i.e. the features the customers demand. The software developers and/or engineers assure that the features can be implemented and that technological breakthrough innovations are not ignored. QFD has been developed in the Japanese manufacturing industry (cf. [Akao90]), but can easily be adapted towards software development if two differences are considered: first, the software production process is basically a duplication process and implementation is largely determined by the system design, especially the system architecture. Therefore, the effort has to be directed mainly into the earlier stages. Secondly, “Software […] is valued not for what it is, but for what it does” [Zult94]. Thus, the distinction between product function and quality element has to be made (see table 1). Table 1: Important definitions in Software QFD ([Her+03], pg. 331) Figure 2 gives an overview of how customer requirements (voice of the customer table) and product functions (voice of the engineer table) can be combined and prioritized and integrated into the software development process. This approach has been used to develop the Calendar function in SAP R/3© (cf. [Her+00]) as well as for electronic and mobile business systems (cf. [Her+02]). Figure 1: Herzwurm’s and Schockert’S PriFo Software QFD model ([Her+00], pg. 87) 3 Using Quality Function Deployment for Software Product Lines Upper class product Specificationss high Lower class product The most important difference between the “usual” use of QFD and the use for Product Lines (no matter if they are Software Product Lines or not) is that usually one product is developed instead of a set of related products. This results in having different target values for certain features (these features indicate variation points). One simple way to cope with this is having not a single row of target values but multiple rows, as illustrated in figure 2. This could either be one row of target values for each product or one row for each class of products. In the second case, the values for high and low would indicate the upper and lower border and the value for mid would indicate a solution that’s somewhere around the middle of the upper and lower border. This has been used by Hoffmann and Berger for a “exposer” product family in a German company from the printing sector (cf. [HoBe00]), but can easily be adapted for software product lines. The final paper/presentation would present an example for the use in a simple software product line. high mid low mid low Figure 2: extension of the House of Quality to accommodate product lines 4 Need for further research The method presented here to represent different members of a product line can still be improved: while it is very helpful in its identifying features helping to satisfy customer needs and prioritizing these features, its ability to handle large numbers of product line members and variations in a feature is limited since it easily gets rather complex. Additionally, neither the integration with existing methods to model features and variation points nor the effect that differences between customers or customer groups have on the advantages of one variation of a feature over another are as yet solved. But since QFD is a very flexible method, it is likely that a clever series of matrices will solve these problems. For example, we have identified a way to integrate QFD and Object Oriented modelling (cf. [Her+04]). Building on this and the method presented here, we think a way to link customer groups and appropriate product line members will be found, same should be true for integrating QFD and modelling and implementing variability. Bibliography [Akao90] Akao, Joji: Quality Function Deployment: Integrating Customer Requirements into Product Design, Translated by Glenn H. Mazur and Japan Business Consultants, Ltd. Cambridge, Massachusetts. [Her+00] Herzwurm, G.; Schockert, S.; Mellis, W.: Joint requirements engineering: QFD for rapid customer-focused software and Internet-development /. - 1. ed.. - Braunschweig ; Wiesbaden : Vieweg, 2000. [Her+02] Herzwurm, G.; Schockert, S.; Breidung, M.; Dowie, U.: Requirements Engineering for Mobile-Commerce Applications, in: In: Proceedings „M-Business 2002”, Athens, Greece. [Her+03] Herzwurm. G.; Schockert, S.; Pietsch, W.: IEEE (ed..): QFD for Customer-Focused Requirements Engineering. In: Proceedings of the 11th IEEE International Requirements Engineering Conference, 8-12 September 2003, Monterey Bay, California, USA., pp. 330-338. [Her+04] Herzwurm. G.; Schockert, S.; Friebel, S.: Quality Function Deployment object-oriented – a method for the combination of Quality Function Deployment and object-oriented modelling. To appear in: Proceedings of the 10Th International Symposium on QFD, Monterrey, Mexico 2004. [HoBe00]Hoffmann, J.; Berger, S.: Strategic Product Family Development by Extending the House of Quality. In: Proceedings from the 12th Symposium on QFD/6Th International Symposium on QFD, Novi Sad, Michigan, 2000. [vdM+04]von der Maßen, T. et al.: Key challenges in Industrial Product Line Engineering. In (Adelsberger, H.H. et al., ed.): Multikonferenz Wirtschaftsinformatik 2004 Band 1, Akademische Verlagsgesellschaft Aka GmbH, Berlin, 2004, S.260-272. [Zult94] Zultner, R. E.: Software quality function deployment – the north American experience. SAQ, EOQ-SC (Ed.): Software Quality Concern for people. Proceedings of the Fourth European Conference on Software Quality, Zürich, Switzerland, pp. 143-158.
© Copyright 2026 Paperzz