Eliciting and prioritizing quality requirements supported by ontologies: a case study using the ElicitO framework and tool

As software complexity grows and clients demand higher quality software, quality requirements can no longer be considered to be of secondary importance. Thus, eliciting, specifying, prioritizing and validating quality requirements is a prerequisite to the development of effective and efficient information systems. Despite the critical importance of quality requirements, there is a considerable gap in the breadth and depth of quality requirements engineering (RE) support in most RE approaches. In practice, it is often the case to have quality requirements considered as an afterthought in the systems development process. While there is a wealth of modelling techniques and tools for functional requirements, there is very limited support for quality requirements in RE. Support for quality requirements is usually ad-hoc, without clear guidelines on how to capture, specify and manage quality requirements and also without proper usage of standardized terminologies based on established quality models such as the ISO/IEC 9126 quality model. In this paper, we discuss a quality-driven RE framework and tool that applies knowledge management techniques and quality ontologies to support RE activities. The ontology implements the quality characteristics and metrics prescribed by the ISO/9126 quality model, providing a common vocabulary to address quality concerns/aspects across RE activities. We empirically validate how the framework and tool can be used to effectively support the requirements elicitation and prioritization activities through a case study addressing the development of an intranet portal project at the University of Manchester.

[1]  Peter Kaiser,et al.  Evaluating Evolutionary Software Systems , 2002, PROFES.

[2]  Bashar Nuseibeh,et al.  Requirements engineering: a roadmap , 2000, ICSE '00.

[3]  Thomas R. Gruber,et al.  Toward principles for the design of ontologies used for knowledge sharing? , 1995, Int. J. Hum. Comput. Stud..

[4]  Panos Vassiliadis,et al.  Towards Quality-oriented Data Warehouse Usage and Evolution , 2000, Inf. Syst..

[5]  Kweku-Muata Osei-Bryson,et al.  Group decision-making and the analytic hierarchy process: Exploring the consensus-relevant information content , 1996, Comput. Oper. Res..

[6]  John Mylopoulos,et al.  Representing and Using Nonfunctional Requirements: A Process-Oriented Approach , 1992, IEEE Trans. Software Eng..

[7]  Trevor Wood-Harper,et al.  A requirements elicitation framework and tool for sourcing business-IT aligned e-services , 2010, SAC '10.

[8]  Tor Stålhane,et al.  A Decision Modelling Approach for Analysing Requirements Configuration Trade-offs in Timeconstrained Web Application Development , 2006, SEKE.

[9]  Yuyu Yuan,et al.  Efficiency metrics model for component-based embedded application software , 2005, Second International Conference on Embedded Software and Systems (ICESS'05).

[10]  Rafa E. Al-Qutaish Quality Models in Software Engineering Literature: An Analytical and Comparative Study , 2010 .

[11]  Geoff P. Mullery,et al.  CORE : A Method for Controlled Requirement Expression , 1979, ICSE.

[12]  Pamela Zave Classification of research efforts in requirements engineering , 1997, ACM Comput. Surv..

[13]  Gerald Kotonya,et al.  Software Requirements Engineering , 1999 .

[14]  Stephanie M. White,et al.  Application of cognitive theories and knowledge management to requirements engineering , 2010, 2010 IEEE International Systems Conference.

[15]  Nicola Guarino,et al.  Formal ontology, conceptual analysis and knowledge representation , 1995, Int. J. Hum. Comput. Stud..

[16]  Eric S. K. Yu,et al.  Using non-functional requirements to systematically support change , 1995, Proceedings of 1995 IEEE International Symposium on Requirements Engineering (RE'95).

[17]  Nancy R. Mead,et al.  Incorporating Security Quality Requirements Engineering (SQUARE) into Standard Life-Cycle Models , 2008 .

[18]  Ivar Jacobson,et al.  The Unified Software Development Process , 1999 .

[19]  Barry Boehm,et al.  Characteristics of software quality , 1978 .

[20]  Carme Quer,et al.  QM: a tool for building software quality models , 2004, Proceedings. 12th IEEE International Requirements Engineering Conference, 2004..

[21]  Sidney C. Bailin,et al.  Software requirements engineering , 2011 .

[22]  Jakob Nielsen,et al.  Designing Web Usability: The Practice of Simplicity , 1999 .

[23]  Ljerka Beus-Dukic,et al.  Discovering Requirements: How to Specify Products and Services , 2009 .

[24]  Julio Cesar Sampaio do Prado Leite,et al.  Nonfunctional requirements: from elicitation to conceptual models , 2004, IEEE Transactions on Software Engineering.

[25]  Donald Firesmith,et al.  Engineering Safety Requirements, Safety Constraints, and Safety-Critical Requirements , 2004, J. Object Technol..

[26]  Simon French,et al.  Decision Behaviour, Analysis and Support , 2009 .

[27]  Suzanne Robertson,et al.  Mastering the Requirements Process (2nd Edition) , 2006 .

[28]  Eila Niemelä,et al.  Capturing quality requirements of product family architecture , 2007, Inf. Softw. Technol..

[29]  Gerald M. Weinberg,et al.  Quality software management: volume 4: anticipating change , 1997 .

[30]  Eric Yu,et al.  Modeling Strategic Relationships for Process Reengineering , 1995, Social Modeling for Requirements Engineering.

[31]  A. Berztiss,et al.  Requirements Engineering , 2002, J. Object Technol..

[32]  Shari Lawrence Pfleeger,et al.  Software Quality: The Elusive Target , 1996, IEEE Softw..

[33]  Stephen H. Kan,et al.  Metrics and Models in Software Quality Engineering , 1994, SOEN.

[34]  Harry S. Delugach,et al.  Dependency Analysis Using Conceptual Graphs , 2001 .

[35]  Asunción Gómez-Pérez,et al.  Ontological Engineering: With Examples from the Areas of Knowledge Management, e-Commerce and the Semantic Web , 2004, Advanced Information and Knowledge Processing.

[36]  John Mylopoulos,et al.  Non-Functional Requirements in Software Engineering , 2000, International Series in Software Engineering.

[37]  Mohamad Noorman Masrek,et al.  Measuring campus portal effectiveness and the contributing factors , 2007 .

[38]  Pericles Loucopoulos,et al.  Performing Requirements Elicitation Activities Supported by Quality Ontologies , 2006, SEKE.

[39]  Ian Sommerville,et al.  Requirements Engineering: Processes and Techniques , 1998 .

[40]  Neil A. M. Maiden,et al.  CREWS-SAVRE: Scenarios for Acquiring and Validating Requirements , 1998, Automated Software Engineering.

[41]  AbranAlain,et al.  Usability Meanings and Interpretations in ISO Standards , 2003 .

[42]  João Araújo,et al.  Crosscutting quality attributes for requirements engineering , 2002, SEKE '02.

[43]  Jane Cleland-Huang,et al.  Towards automated requirements prioritization and triage , 2009, Requirements Engineering.

[44]  Donald Firesmith,et al.  Using Quality Models to Engineer Quality Requirements , 2003, J. Object Technol..

[45]  Franz Lehner,et al.  Requirements Engineering as a Success Factor in Software Projects , 2001, IEEE Softw..

[46]  Christof Ebert,et al.  Dealing with nonfunctional requirements in large software systems , 1997, Ann. Softw. Eng..

[47]  Kalle Lyytinen,et al.  Learning failure in information systems development , 1999, Inf. Syst. J..

[48]  Klaus Pohl,et al.  Requirements Engineering - Fundamentals, Principles, and Techniques , 2010 .

[49]  Jean Hartley,et al.  Case study research , 2004 .

[50]  Ian Sommerville,et al.  Requirements engineering with viewpoints , 1996, Softw. Eng. J..

[51]  R. Yin Case Study Research: Design and Methods , 1984 .

[52]  Ralph Young,et al.  The requirements engineering handbook , 2003 .

[53]  Henrik Eriksson,et al.  Using JessTab to Integrate Protégé and Jess , 2003, IEEE Intell. Syst..

[54]  Claude Y. Laporte,et al.  The Evolution Path for Industrial Software Quality Evaluation Methods Applying ISO/IEC 9126:2001 Quality Model: Example of MITRE’s SQAE Method , 2005, Software Quality Journal.

[55]  Donald Firesmith,et al.  Engineering Security Requirements , 2003, J. Object Technol..

[56]  Julio Cesar Sampaio do Prado Leite,et al.  On Non-Functional Requirements in Software Engineering , 2009, Conceptual Modeling: Foundations and Applications.

[57]  Robert Winter,et al.  Design science research in Europe , 2008 .

[58]  Lila Rao-Graham,et al.  Towards defining dimensions of knowledge systems quality , 2007, Expert Syst. Appl..

[59]  Alexander Egyed,et al.  Identifying requirements conflicts and cooperation: how quality attributes and automated traceability can help , 2004, IEEE Software.

[60]  Panos Vassiliadis,et al.  Towards Quality-oriented Data Warehouse Usage and Evolution , 2000, Inf. Syst..

[61]  Kai S. Koong,et al.  An identification and classification of enterprise portal functions and features , 2002, Ind. Manag. Data Syst..

[62]  Ana Moreira,et al.  Integrating the NFR framework in a RE model , 2004 .

[63]  Julio Cesar Sampaio do Prado Leite,et al.  A Framework for Integrating Non-Functional Requirements into Conceptual Models , 2001, Requirements Engineering.

[64]  Matthias Jarke,et al.  Architecture and Quality in Data Warehouses: An Extended Repository Approach , 1999, Information Systems.

[65]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[66]  Bernhard Thomé,et al.  Systems engineering: principles and practice of computer-based systems engineering , 1993 .

[67]  Kyo Chul Kang,et al.  Issues in Requirements Elicitation , 1992 .

[68]  Pericles Loucopoulos,et al.  ElicitO: A Quality Ontology-Guided NFR Elicitation Tool , 2007, REFSQ.

[69]  Donald Firesmith,et al.  Security Use Cases , 2003, J. Object Technol..

[70]  John Mylopoulos,et al.  Quality-driven software re-engineering , 2003, J. Syst. Softw..

[71]  Matthias Galster,et al.  A Taxonomy for Identifying and Specifying Non-Functional Requirements in Service-Oriented Development , 2008, 2008 IEEE Congress on Services - Part I.

[72]  Vladan Devedzic,et al.  Software Project Management , 2001 .

[73]  Sean Larrangton-White Midm Designing Web Usability: The practice of simplicity , 2001 .

[74]  Lawrence Chung,et al.  Dealing with Non-Functional Requirements: Three Experimental Studies of a Process-Oriented Approach , 1995, 1995 17th International Conference on Software Engineering.

[75]  Rajkumar Buyya,et al.  Cloud Computing Principles and Paradigms , 2011 .

[76]  Xavier Franch,et al.  Using Quality Models in Software Package Selection , 2003, IEEE Softw..

[77]  Shahid Nazir Bhatti,et al.  Why quality?: ISO 9126 software quality metrics (Functionality) support by UML suite , 2005, SOEN.

[78]  Deborah L. McGuinness,et al.  OWL Web ontology language overview , 2004 .

[79]  Motoei Azuma Applying ISO/IEC 9126-1 Quality Model to Quality Requirements Engineering on Critical Software , 2004 .

[80]  André Kushniruk,et al.  Reusable knowledge for satisficing usability requirements , 2005, 13th IEEE International Conference on Requirements Engineering (RE'05).

[81]  Franz-Josef Stewing,et al.  Non-functional aspects: system performance evaluation , 1993 .

[82]  Thomas Olsson,et al.  Non-functional requirements in industry - three case studies adopting an experience-based NFR method , 2005, 13th IEEE International Conference on Requirements Engineering (RE'05).

[83]  Suzanne Robertson,et al.  Mastering the Requirements Process , 1999 .

[84]  Sooyong Park,et al.  Quality-driven architecture development using architectural tactics , 2009, J. Syst. Softw..

[85]  Alistair G. Sutcliffe,et al.  The domain theory - patterns for knowledge and software reuse , 2002 .

[86]  Donald Firesmith A Taxonomy of Safety-Related Requirements , 2004 .

[87]  Julio Cesar Sampaio do Prado Leite,et al.  Non-Functional Requirements for Object-Oriented Modeling , 2000, WER.

[88]  Mario Piattini,et al.  A Reusability Model for Portlets , 2005, WISE Workshops.

[89]  Richard H. Thayer,et al.  System and Software Requirements Engineering , 1994 .

[90]  Kweku-Muata Osei-Bryson Supporting consensus formation in Group Support Systems using the Qualitative Discriminant Process , 1997, Ann. Oper. Res..

[91]  Tomi Männistö,et al.  Requirements Engineering as a Driver for Innovations , 2007, 15th IEEE International Requirements Engineering Conference (RE 2007).