Composing requirements specifications from multiple prioritized sources

The formal methodology MultiSpec supports the evolution of software specifications gathered from multiple perspectives. A viewpoint-based approach is used to explicitly separate the descriptions provided by different stakeholders, and concentrate on identifying and resolving conflicts between them. The challenge addressed in this article consists in taking into account that some views may have greater degrees of relevance and, consequently, their opinion will have more importance when either obtaining the merged model or resolving the contradictions. To this end, we propose a priority-based approach, where such priority value is twofold. On the one hand, it considers external factors to the perspectives such as the importance assigned to each view by the analyst depending on who is specifying the view or the amount of stakeholders involved in that specification. On the other hand, this priority value also considers internal factors related to the quality of the views and, in order to be able to quantify this value, MultiSpec proposes two measures: coverage and density of each perspective which will be combined in a completeness value. The contributions of this approach will be clearly illustrated through a simple example.

[1]  Nuel D. Belnap,et al.  A Useful Four-Valued Logic , 1977 .

[2]  C. A. R. Hoare,et al.  Communicating Sequential Processes (Reprint) , 1983, Commun. ACM.

[3]  D. Schwabe,et al.  A look through PRISMA: towards pluralistic knowledge-based environments for software specification acquisition , 1989, IWSSD '89.

[4]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[5]  W. N. Robinson,et al.  Integrating multiple specifications using domain goals , 1989, IWSSD '89.

[6]  Robert Balzer,et al.  Tolerating Inconsistency , 1991, [1989] Proceedings of the 5th International Software Process Workshop.

[7]  Dov M. Gabbay,et al.  Making inconsistency respectable: a logical framework for inconsistency in reasoning , 1991, FAIR.

[8]  Hung-Chin Jang,et al.  A Hybrid Knowledge Representation as a Basis of Requirement Specification and Specification Analysis , 1992, IEEE Trans. Software Eng..

[9]  Michael Jackson,et al.  Conjunction as composition , 1993, TSEM.

[10]  Dov M. Gabbay,et al.  Inconsistency Handling in Multi-Perspective Specifications , 1993, ESEC.

[11]  Bashar Nuseibeh,et al.  Expressing the relationships between multiple views in requirements specification , 1993, ICSE '93.

[12]  Dov M. Gabbay,et al.  Inconsistency Handling in Multperspective Specifications , 1994, IEEE Trans. Software Eng..

[13]  William N. Robinson,et al.  Supporting multi-perspective requirements engineering , 1994, Proceedings of IEEE International Conference on Requirements Engineering.

[14]  Constance L. Heitmeyer,et al.  Automated consistency checking of requirements specifications , 1996, TSEM.

[15]  Bashar Nuseibeh,et al.  To be and not to be: on managing inconsistency in software development , 1996, Proceedings of the 8th International Workshop on Software Specification and Design.

[16]  Ian Sommerville,et al.  Viewpoints: principles, problems and a practical approach to requirements engineering , 1997, Ann. Softw. Eng..

[17]  Bashar Nuseibeh,et al.  Managing inconsistent specifications: reasoning, analysis, and action , 1998, TSEM.

[18]  Axel van Lamsweerde,et al.  Inferring Declarative Requirements Specifications from Operational Scenarios , 1998, IEEE Trans. Software Eng..

[19]  Axel van Lamsweerde,et al.  Managing Conflicts in Goal-Driven Requirements Engineering , 1998, IEEE Trans. Software Eng..

[20]  Andrea Zisman,et al.  Inconsistency Management in Software Engineering: Survey and Open Research Issues , 2000 .

[21]  Sebastián Uchitel,et al.  A workbench for synthesising behaviour models from scenarios , 2001, Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001.

[22]  Wolfgang Emmerich,et al.  Static consistency checking for distributed specifications , 2001, Proceedings 16th Annual International Conference on Automated Software Engineering (ASE 2001).

[23]  Jorge García Duque,et al.  SCTL-MUS: A Formal Methodology for Software Development of Distributed Systems. A Case Study , 2001, Formal Aspects of Computing.

[24]  Jorge García Duque,et al.  An analysis-revision cycle to evolve requirements specifications by using the SCTL-MUS methodology , 2002, Proceedings IEEE Joint International Conference on Requirements Engineering.

[25]  Felix Naumann,et al.  Declarative Data Merging with Conflict Resolution , 2002, ICIQ.

[26]  Sébastien Konieczny,et al.  Merging Information Under Constraints: A Logical Framework , 2002, J. Log. Comput..

[27]  Mehrdad Sabetzadeh,et al.  Analysis of inconsistency in graph-based viewpoints: a category-theoretical approach , 2003, 18th IEEE International Conference on Automated Software Engineering, 2003. Proceedings..

[28]  Didar Zowghi,et al.  On the interplay between consistency, completeness, and correctness in requirements evolution , 2003, Inf. Softw. Technol..

[29]  Marsha Chechik,et al.  Merging partial behavioural models , 2004, SIGSOFT '04/FSE-12.

[30]  Felix Naumann,et al.  Completeness of integrated information sources , 2004, Inf. Syst..

[31]  Ramón Pino Pérez,et al.  Logic-based merging: the infinite case , 2004, NMR.

[32]  Hyoseob Kim,et al.  Supporting the reconciliation of models of object behaviour , 2003, Software and Systems Modeling.

[33]  Amihai Motro,et al.  Utility-based resolution of data inconsistencies , 2004, IQIS '04.

[34]  Anthony Hunter,et al.  Approaches to Measuring Inconsistent Information , 2005, Inconsistency Tolerance.

[35]  Didar Zowghi,et al.  Reasoning about inconsistencies in natural language requirements , 2005, TSEM.

[36]  Marsha Chechik,et al.  Let's agree to disagree , 2005, ASE '05.

[37]  Xiaoqing Frank Liu,et al.  Priority assessment of software process requirements from multiple perspectives , 2006, J. Syst. Softw..

[38]  Amihai Motro,et al.  Fusionplex: resolution of data inconsistencies in the integration of heterogeneous information sources , 2006, Inf. Fusion.

[39]  Anthony Hunter How to act on inconsistent news: Ignore, resolve, or reject , 2006, Data Knowl. Eng..

[40]  Anthony Hunter,et al.  A knowledge-based approach to merging information , 2006, Knowl. Based Syst..

[41]  Ana Belén Barragáns Martínez Metodología formal para la especificación de sistemas software en entornos multi-perspectiva , 2007 .

[42]  Jorge García Duque,et al.  On the interplay between inconsistency and incompleteness in multi-perspective requirements specifications , 2008, Inf. Softw. Technol..

[43]  Jorge García Duque,et al.  Composing Multi-Perspective Software Requirements Specifications , 2008, Int. J. Softw. Eng. Knowl. Eng..