ABSTRACT
Requirements specifications need to be checked against the 3C's - Consistency, Completeness and Correctness - in order to achieve high quality. This is especially difficult when working with both natural language requirements and associated semi-formal modelling representations. We describe a technique and support tool that allows us to perform semi-automated checking of natural language and semi-formal requirements models, supporting both consistency management between representations but also correctness and completeness analysis. We use a concept of essential use case interaction patterns to perform the correctness and completeness analysis on the semi-formal representation. We highlight potential inconsistencies, incompleteness and incorrectness using visual differencing in our support tool. We have evaluated our approach via an end user study which focused on the tool's usefulness, ease of use, ease of learning and user satisfaction and provided data for cognitive dimensions of notations analysis of the tool.
- Kamalrudin, M., Grundy, J. and Hosking, J., Tool Support for Essential Use Cases to Better Capture Software Requirements. In Proceedings of the 25th IEEE/ACM International Conference on Automated Software Engineering, Antwerp, Belgium, Sept 16--20 2010, ACM. Google ScholarDigital Library
- Fabbrini, F., Fusani, M., Gnesi, S. and Lami, G., The linguistic approach to the natural language requirements quality: benefit of the use of an automatic tool. In Proceedings of the 26th Annual NASA Goddard Software Engineering Workshop, 2001, 97--105. Google ScholarDigital Library
- Kamalrudin, M. Automated Software Tool Support for Checking the Inconsistency of Requirements. In Proceedings of the 2009 IEEE/ACM International Conference on Automated Software Engineering, Auckland, 539 New Zealand, Nov 16-20 2009, IEEE CS Press, pp. 693--697. Google ScholarDigital Library
- Zowghi, D., and Gervasi, V. On the interplay between consistency, completeness, and correctness in requirements evolution. Information and Software Technology 45 (14), November 2003, 993--1009.Google ScholarCross Ref
- Spanoudakis and G., Zisman, A. Inconsistency Management in Software Engineering in "Handbook of Software Engineering and Knowledge Engineering.", vol 1, World Publishing, 2001, pp. 329--380.Google Scholar
- Nuseibeh, B., Easterbrook S. and Russo, A. Leveraging Inconsistency in Software Development. Computer 33 (4), 2000, 24--29. Google ScholarDigital Library
- Satyajit, A., Hrushikesha, M. and George, C., Domain consistency in requirements specification. In Proceedings of the Fifth International Conference on, Quality Software, Melbourne, Australia, September 2005, IEEE CS Press, pp. 231--238. Google ScholarDigital Library
- Kozlenkov, A. and Zisman, A., Are their Design Specifications Consistent with our Requirements? In Proceedings of 10th Anniversary IEEE Joint International Conference on Requirements Engineering, Essen, Germany, September 2002, IEEE CS Press, pp. 145--156. Google ScholarDigital Library
- Boyd, S., Zowghi, D. and Farroukh, A., Measuring the expressiveness of a constrained natural language: an empirical study. In Proceedings of the 13 IEEE International Conference Requirements Engineering, Paris, France, 2005, IEEE CS Press, pp. 339--349. Google ScholarDigital Library
- Do, K., Method and Implementation for Consistency Verification of DEVS Model against User Requirement. In Proceeding of the 10th International Conference on Advanced Communication Technology, Gangwon-Do, Korea, 2008, pp. 400--404.Google Scholar
- Egyed, A., Scalable Consistency Checking Between Diagrams-The ViewIntegra Approach. In Proceedings of the 16th IEEE international conference on Automated software engineering, San Diego, California, November 2001, IEEE CS Press, pp. 387. Google ScholarDigital Library
- Denger, C., Berry, D. M. and Kamsties, E., Higher Quality Requirements Specifications through Natural Language Patterns. In Proceedings of the IEEE International Conference on Software-Science, Technology & Engineering, Herzlia, Israel, 2005, IEEE CS Press, pp. 80. Google ScholarDigital Library
- Kamalrudin, M., Grundy, J. and Hosking J. Managing consistency between textual requirements, abstract interactions and Essential Use Cases. In Proceeding of the 34th Annual IEEE International Computer Software & Applications, Seoul, Korea, July 2010, IEEE CS Press, pp. 327--336. Google ScholarDigital Library
- Constantine, L. L. and Lockwood, A. D. L. Software For Use: A Practical Guide to the Models and Methods of Usage-Centered Design. ACM Press/Addison Wesley Longman, Inc, 1999. Google ScholarDigital Library
- Kutar, M., Britton C., and Wilson J., Cognitive Dimensions An Experience Report. In Proceeding of the Twelfth Annual Meeting of the Psychology of Programming Interest Group, Memoria, Cozenza Italy, 2000, pp. 81--98.Google Scholar
- Biddle, R., Noble, J. and Tempero, E. 202. Essential use cases and responsibility in object-oriented development. In Proceeding of the twenty-fifth Australasian conference on Computer science, Melbourne, Victoria, Australia, 2002, ACM, pp. 7--16. Google ScholarDigital Library
- Biddle, R., Noble, J. and Tempero, E., Patterns for Essential Use Case Bodies, CRPIT '02 Proceedings of the 2002 conference on Pattern languages of programs, vol 13, Australian Computer Society, pp 85--98. Google ScholarDigital Library
- Huzar, Z., Kuzniarz, L., Reggio, G. and Sourrouille, J.L. Consistency Problems in UML-Based Software Development. In UML Modeling Languages and Applications, 2005, 1--12. Google ScholarDigital Library
- Mehra, A., Grundy, J. and Hosking, J. A generic approach to Supporting Diagram Differencing and Merging for Collaborative Design. In Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering, Long Beach, CA, USA, 2005, ACM, pp. 204 -- 213. Google ScholarDigital Library
- Ghose, A., Koliadis and G., Chueng, A. Process Discovery from Model and Text Artefacts Services, In Proceeding of the 2007 IEEE Congress on Services, Salt Lake City, UT, July 2007, IEEE CS Press, pp. 167--174.Google ScholarCross Ref
- Grundy, J. C., Hosking, J. G, Huh J. and, Li, N., Marama: an Eclipse meta-toolset for generating multi-view environments. In Proceedings of the 2008 IEEE/ACM International Conference on Software Engineering, Liepzig, Germany, May 2008, ACM, pp. 819--822. Google ScholarDigital Library
- Nuseibeh, B., Easterbrook S., and Russo, A. Making inconsistency respectable in software development. Journal of Systems and Software, 58 (2), Sept 2001, pp. 171--180.Google ScholarCross Ref
- Blackwell, A. and Green, T. A cognitive dimensions questionnaire optimised for users. In Proceeding of the Twelfth Annual Meeting of the Psychology of Programming Interest Group, Corigliano Calabro, Cosenza, Italy, 2000, pp. 137--152.Google Scholar
- Biddle, R., Noble, J., and Tempero, E. 2002. Supporting Reusable Use Cases. Lecture Notes in Computer Science, Volume 2319, Springer-Verlag, 2002, pp. 135--138. Google ScholarDigital Library
- Goknil, A., Kurtev, I., van den Berg, K. and Veldhuis, J. W. Semantics of trace relations in requirements models for consistency checking and inferencing, Software and Systems Modeling, 2009, pp. 1--24. Google ScholarDigital Library
- Kroha, P., Janetzko, R. and Labra, J. E., Ontologies in Checking for Inconsistency of Requirements Specification. In Proceeding of the Third International Conference on Advances in Semantic Processing, Sliema, Malta, October 2009, IEEE CS Press, pp. 32--37. Google ScholarDigital Library
- Graaf, B. and Deursen, A.V. Model-Driven Consistency Checking of Behavioural Specifications. In Proceeding of the Fourth International Workshop on Model-Based Methodologies for Pervasive and Embedded Software, Braga, Portugal, 2007, IEEE CS Press, pp. 115--126. Google ScholarDigital Library
- Nentwich, C., Emmerich, W. and Finkelstein, A. Consistency management with repair actions. In Proceedings of the 25th International Conference on Software Engineering, Portland, Oregon, 2003, IEEE CS Press, 455--464. Google ScholarDigital Library
Index Terms
- Improving requirements quality using essential use case interaction patterns
Recommendations
Managing Consistency between Textual Requirements, Abstract Interactions and Essential Use Cases
COMPSAC '10: Proceedings of the 2010 IEEE 34th Annual Computer Software and Applications ConferenceConsistency checking needs to be done from the earliest phase of requirements capture as requirements captured by requirement engineers are often vague, error-prone and inconsistent with users’ needs. To improve such consistency checking we have applied ...
MaramaAIC: tool support for consistency management and validation of requirements
Requirements captured by requirements engineers (REs) are commonly inconsistent with their client's intended requirements and are often error prone. There is limited tool support providing end-to-end support between the REs and their client for the ...
Tool support for essential use cases to better capture software requirements
ASE '10: Proceedings of the 25th IEEE/ACM International Conference on Automated Software EngineeringCapturing software requirements from clients often leads to error prone and vague requirements documents. To surmount this issue, requirements engineers often choose to use UML models to capture their requirements. In this paper we discuss the use of ...
Comments