The importance of quality requirements in software platform development-a survey

This paper presents a survey where some quality requirements that commonly affect software architecture have been prioritized with respect to cost and lead-time impact when developing software platforms and when using them. Software platforms are the basis for a product-line, i.e. a collection of functionality that a number of products is based on. The survey has been carried out in two large software development organizations using 34 senior participants. The prioritization was carried out using the Incomplete Pairwise Comparison method (IPC). The analysis shows that there are large differences between the importance of the quality requirements studied. The differences between the views of different stakeholders are also analysed and it is found to be less than the difference between the quality requirements. Yet this is identified as a potential source of negative impact on product development cost and lead-time, and rules of thumb for reducing the impact are given.

[1]  T. Cook,et al.  Quasi-experimentation: Design & analysis issues for field settings , 1979 .

[2]  Paul Clements,et al.  Software architecture in practice , 1999, SEI series in software engineering.

[3]  Claes Wohlin,et al.  Experimentation in software engineering: an introduction , 2000 .

[4]  Frank G. Halasz,et al.  Reflections on NoteCards: seven issues for the next generation of hypermedia systems , 1987, Hypertext.

[5]  Anker Helms Jørgensen,et al.  Perceptions of design rationale , 1995, INTERACT.

[6]  Marc H. Meyer,et al.  The Power of Product Platforms , 1997 .

[7]  W. Kruskal,et al.  Use of Ranks in One-Criterion Variance Analysis , 1952 .

[8]  William Hayes,et al.  The Personal Software Process (PSPSM): An Empirical Study of the Impact of PSP on Individual Engineers. , 1997 .

[9]  M. M. Steeples The Baldrige Award and ISO 9000 in the quality management processes , 1994, IEEE Commun. Mag..

[10]  Barry Boehm,et al.  USC Center for Software Engineering Focused Workshop on Software Architectures: Issue Paper , 1994 .

[11]  P. Kidwell,et al.  The mythical man-month: Essays on software engineering , 1996, IEEE Annals of the History of Computing.

[12]  Joachim Karlsson,et al.  A Cost-Value Approach for Prioritizing Requirements , 1997, IEEE Softw..

[13]  David Lorge Parnas,et al.  Software aging , 1994, Proceedings of 16th International Conference on Software Engineering.

[14]  Per Runeson,et al.  A survey of lead-time challenges in the development and evolution of distributed real-time systems , 2000, Inf. Softw. Technol..

[15]  Y. Narahari,et al.  Lead time modeling and acceleration of product design and development , 1999, IEEE Trans. Robotics Autom..

[16]  Per Runeson,et al.  Architecture Design Recovery of a Family of Embedded Software Systems , 1999, WICSA.

[17]  Steven C. Wheelwright,et al.  Leading Product Development: The Senior Manager's Guide to Creating and Shaping the Enterprise , 1994 .

[18]  Jeff Conklin,et al.  Hypertext: An Introduction and Survey , 1987, Computer.

[19]  K. B. Hendricks,et al.  Delays in new product introductions and the market value of the firm: the consequences of being late to the market , 1997 .

[20]  René L. Krikhaar,et al.  A two-phase process for software architecture improvement , 1999, Proceedings IEEE International Conference on Software Maintenance - 1999 (ICSM'99). 'Software Maintenance for Business Change' (Cat. No.99CB36360).

[21]  P. Harker Alternative modes of questioning in the analytic hierarchy process , 1987 .

[22]  Rick Kazman,et al.  Assessing and maintaining architectural quality , 1999, Proceedings of the Third European Conference on Software Maintenance and Reengineering (Cat. No. PR00090).

[23]  N. Cross The Nature and Nurture of Design Ability , 1990 .

[24]  Mehdi Jazayeri,et al.  Software Architecture for Product Families: Principles and Practice , 2000 .

[25]  Robert S. Arnold,et al.  Software Change Impact Analysis , 1996 .

[26]  T. H. Nelson,et al.  Complex information processing: a file structure for the complex, the changing and the indeterminate , 1965, ACM '65.

[27]  Robert L. Nord,et al.  Applied Software Architecture , 1999, Addison Wesley object technology series.

[28]  S. Holm A Simple Sequentially Rejective Multiple Test Procedure , 1979 .

[29]  John Leaney,et al.  Structural Analysis of the Software Architecture - A Maintenance Assessment Case Study , 1999, WICSA.

[30]  John C. Grundy,et al.  Software architecture modelling, analysis and implementation with SoftArch , 2001, Proceedings of the 34th Annual Hawaii International Conference on System Sciences.

[31]  Daniel G. Bobrow,et al.  Beyond the chalkboard: computer support for collaboration and problem solving in meetings , 1988, CACM.

[32]  Philippe Kruchten,et al.  The 4+1 View Model of Architecture , 1995, IEEE Softw..

[33]  Jintae Lee,et al.  What's in Design Rationale? , 1991, Hum. Comput. Interact..

[34]  Per Runeson,et al.  A Taxonomy of Orthogonal Properties of Software Architectures , 1999 .

[35]  Shari Lawrence Pfleeger,et al.  Software Metrics : A Rigorous and Practical Approach , 1998 .

[36]  S. Sanderson,et al.  Managing product families: The case of the Sony Walkman , 1995 .

[37]  Kirti Peniwati,et al.  Aggregating individual judgments and priorities with the analytic hierarchy process , 1998, Eur. J. Oper. Res..

[38]  Rupert G. Miller Simultaneous Statistical Inference , 1966 .

[39]  Alexander L. Wolf,et al.  Acm Sigsoft Software Engineering Notes Vol 17 No 4 Foundations for the Study of Software Architecture , 2022 .

[40]  Colin Robson,et al.  Real World Research: A Resource for Social Scientists and Practitioner-Researchers , 1993 .

[41]  Thomas Olsson,et al.  Lead-time Impact of Distributed Testing on Distributed Real-time Systems , 1999 .

[42]  Claes Wohlin Meeting the challenge of large-scale software development in an educational environment , 1997, Proceedings Tenth Conference on Software Engineering Education and Training.

[43]  Sandro Morasca,et al.  Measuring and assessing maintainability at the end of high level design , 1993, 1993 Conference on Software Maintenance.

[44]  Clarence A. Ellis,et al.  rIBIS: A Real-Time Group Hypertext System , 1991, Int. J. Man Mach. Stud..

[45]  Rick Kazman,et al.  Assessing architectural complexity , 1998, Proceedings of the Second Euromicro Conference on Software Maintenance and Reengineering.

[46]  Hilary Johnson,et al.  An empirical study in using linked documentation to assist software maintenance , 1995, INTERACT.

[47]  A.P.J. Jarczyk,et al.  Design rationale for software engineering: a survey , 1992, Proceedings of the Twenty-Fifth Hawaii International Conference on System Sciences.

[48]  Thomas T. Nagle The Strategy and Tactics of Pricing: A Guide to Profitable Decision-Making , 1987 .

[49]  Jintae Lee,et al.  Design Rationale Systems: Understanding the Issues , 1997, IEEE Expert.

[50]  P. Harker Incomplete pairwise comparisons in the analytic hierarchy process , 1987 .

[51]  David Lorge Parnas,et al.  On the Design and Development of Program Families , 2001, IEEE Transactions on Software Engineering.

[52]  Paul Clements,et al.  Software product lines - practices and patterns , 2001, SEI series in software engineering.

[53]  Samuel B. Graves The time-cost tradeoff in research and development: A review , 1989 .

[54]  Watts S. Humphrey,et al.  Managing the software process , 1989, The SEI series in software engineering.

[55]  Steven C. Wheelwright,et al.  Leading Product Development (Управление разработкой продуктов: пособие для старших менеджеров по созданию и формированию предприятия). , 1995 .

[56]  Chava Nachmias,et al.  Research Methods in the Social Sciences , 1976 .

[57]  Alexander L. Wolf,et al.  Architecture-level dependence analysis in support of software maintenance , 1998, ISAW '98.

[58]  S. H. Zanakis,et al.  A Monte Carlo investigation of incomplete pairwise comparison matrices in AHP , 1997 .

[59]  Melissa A. Schilling Technological Lockout: An Integrative Model of the Economic and Strategic Factors Driving Technology Success and Failure , 1998 .

[60]  R. Hyman Quasi-Experimentation: Design and Analysis Issues for Field Settings (Book) , 1982 .

[61]  R. J. Tersine,et al.  Lead‐time reduction: the search for competitive advantage , 1995 .

[62]  Y. Lee The Sustainability of University-Industry Research Collaboration: An Empirical Assessment , 2000 .

[63]  Simon J. Shum A cognitive analysis of design rationale representation , 1991 .

[64]  G. Stalk Time-The Next Source of Competitive Advantage , 1988 .

[65]  Kannan Srinivasan,et al.  New product development structures and time-to-market , 1997 .

[66]  Robert C. Camp,et al.  Benchmarking: The Search for Industry Best Practices That Lead to Superior Performance , 1989 .

[67]  T. Saaty,et al.  The Analytic Hierarchy Process , 1985 .