ABSTRACT
Capturing 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 Essential Use Cases (EUCs) as an alternative, user-centric representation which was developed to ease the process of capturing and describing requirements. However, EUCs are not commonly used in practice because, to our knowledge, no suitable tool support has been developed. In addition, requirements engineers face difficulties in finding the correct "essential" requirements (abstract interactions) in a time efficient manner. In order to overcome these problems, we have developed a prototype tool for automated tracing of abstract interactions. We describe the tool and compare the performance and correctness of the results provided by it to that of manual essential use case extraction efforts by a group of requirements engineers. The results of an end user study of the tool's usefulness and ease of use are also discussed.
- }}Brown, D. W. An Introduction to Object- Oriented Analysis object and UML in Plain English. John Wiley & Sons, Inc, New York, 2002.Google Scholar
- }}Constantine, L. L. Essential modeling: use cases for user interfaces interactions, 2, 2 1995, 34--46. Google ScholarDigital Library
- }}Biddle, R., Noble, J. and Tempero, E. April 2000. Pattern for Essential Use Cases. Technical Report. Victoria University of Wellington at Wellington, New Zealand.Google Scholar
- }}Susan, L. 1999. Use Case Pitfalls: Top 10 Problems from Real Projects Using Use Cases. In Proceedings of the Proceedings of the Technology of Object-Oriented Languages and Systems (Santa Barbara, California 1999). IEEE Computer Society, Washington, DC, USA, 465--466. DOI= http://doi.ieeecomputersociety.org/10.1109/TOOLS.1999.787547 Google ScholarDigital Library
- }}Sindre, G. and Opdahl, A. L. "Eliciting security requirements with misuse cases", Journal of Requirements Engineering, 2005. Google ScholarDigital Library
- }}Cockburn, A. "Structuring use cases with goals", Journal of Object-Oriented Programming, 1997.Google Scholar
- }}Biddle, R., Noble, J. and Tempero, E. "Essential use cases and responsibility in object-oriented development", Australian Computer Science Communications, 2002. Google ScholarDigital Library
- }}Kaindl, H., Constantine, L., Pastor, O., Sutcliffe, A. and Zowghi, D. 2008. How to Combine Requirements Engineering and Interaction Design? In 16th IEEE International Requirements Engineering Conference (Barcelona, Catalunya, Spain, 2008), Re'08, IEEE Computer Society, Washington, DC, USA, 299--301. DOI= http://doi.ieeecomputersociety.org/10.1109/RE.2008.59 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 Publishing Co., 1999. Google ScholarDigital Library
- }}Constantine, L. L. and Lockwood, A. D. L. Structure and style in use cases for user interface design. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA, 2001.Google Scholar
- }}Vinay S, Aithal S, Desai. P. 2009. An Approach towards Automation of Requirements Analysis. In Proceeding of International Multi Conference of Engineers and Computer Scientists. (Hong Kong, 2009) IMEC'09, IAENG, 1080--1085.Google Scholar
- }}Haruhiko, K. and Motoshi, S 2005. Ontology Based Requirements Analysis: Lightweight Semantic Processing Approach. In Proceedings of the Fifth International Conference on Quality Software (Melbourne, Australia, 2005). QSIC'05, IEEE Computer Society, Washington, DC, USA, 223--230. DOI= http://dx.doi.org/10.1109/QSIC.2005.46. Google ScholarDigital Library
- }}Gnesi S, L. G., Trentanni G, Fabbrini F, Fusani M "An automatic tool for the analysis of natural language requirements." In International Journal of Computer Systems Science & Engineering, 2005.Google Scholar
- }}Litvak, B., Tyszberowicz, S. and Yehudai, A 2003. Behavioral consistency validation of UML diagrams. In Proceedings of First International Conference on Software Engineering and Formal Methods, (Brisbane, Australia, 2003), SEFM'03, IEEE Computer Society, Washington, DC, USA. 118--125, DOI= http://doi.ieeecomputersociety.org/10.1109/SEFM.2003.1236213Google ScholarCross Ref
- }}Some, S. S. 2005. Use Cases based Requirements Validation with Scenarios. In Proceedings of the 13th IEEE International Conference on Requirements Engineering, (Minnepolis/St Paul, Minnessota, USA, 2005). RE'05, IEEE Computer Society Washington, DC, USA, http://doi.ieeecomputersociety.org/10.1109/RE.2005.75 Google ScholarDigital Library
- }}Bjork R. C., Use Cases for Example ATM System, 1998. http://www.math.cs.gordon.edu/courses/cs320/ATM_Example/UseCases.htmlGoogle Scholar
- }}Glinz, M. A lightweight approach to consistency of scenarios and class models. In Proceeding Fourth International Conference on Requirements Engineering,(Schaumburg, Illinois, June 19--23 2000) (ICRE'00), IEEE Computer Society Washington, DC, USA, pp. 49. DOI= http://doi.ieeecomputersociety.org/10.1109/ICRE.2000.855584 Google ScholarDigital Library
- }}Sendall. S., LBB System Use Case: check-out books, 2001. http://lgl.epfl.ch/research/fondue/case-studies/lbb/uc-check-out-books.htmGoogle Scholar
- }}Horton, T. Example Use Cases for PARTS. 2009. http://www.cs.virginia.edu/~horton/cs494/examples/parts/usecases-ex1.htmlGoogle Scholar
- }}Kim, J., Park, S., and Sugumaran, V. "Improving use case driven analysis using goal and scenario authoring: A linguistics-based approach." Journal of Data & Knowledge Engineering, 2006. Google ScholarDigital Library
- }}OpenSRS, Scenarioexamples, http://www.opensrs.com/resources/documentation/sync/scenarioexamples.htmGoogle Scholar
- }}Fantechi, A., Gnesi, S., Lami, G., and Maccari, A. "Applications of linguistic techniques for use case analysis." Journal of Requirements Engineering, 2003.Google Scholar
- }}Harmain, H. M. and Gaizauskas, R. "CM-Builder: A Natural Language-Based CASE Tool for Object-Oriented Analysis." Journal of Automated Software Engineering, 2003. Google ScholarDigital Library
- }}Ilieva, M. G. and Ormandjieva, O. 2005. Automatic Transition of Natural Language Software Requirements Specification into Formal Presentation. In Natural Language Processing and Information Systems, Ed Springer-Verlag, Alicante, Spain, pp. 392--397. DOI= 10.1007/b136569. Google ScholarDigital Library
- }}Gelperin, D., Precise Use Case, 2004. www.livespecs.com.Google Scholar
- }}Patricio, L., Cunha, J., Fisk, R. and Pastor, O. 2003. Essential Use Cases in the Design of Multi-channel Service Offerings - A Study of Internet Banking. In Web Engineering, Ed Springer-Verlag, Oviedo, Spain, 199--206. DOI= 10.1007/3-540-45068-8. Google ScholarDigital Library
- }}Biddle, R., Noble, J., & Tempero, E. (2002). Supporting Reusable Use Cases. In Software Reuse: Methods, Techniques, and Tools, Ed Springer-Verlag, London, UK 135--138. Google ScholarDigital Library
- }}Grundy, J. C., Hosking, J. G., Huh, J., and Li, N. 2008. Marama: an Eclipse meta-toolset for generating multi-view environments. In Proceedings of the 30th international conference on Software Engineering, (Liepzig, Germany, 2008), ICSE'08, ACM Press, New York, NY, USA, 819--822, http://doi.acm.org/10.1145/1368088.1368210 Google ScholarDigital Library
Index Terms
- Tool support for essential use cases to better capture software requirements
Recommendations
An automated collaborative requirements engineering tool for better validation of requirements
ASE '16: Proceedings of the 31st IEEE/ACM International Conference on Automated Software EngineeringThis demo introduces an automated collaborative requirements engineering tool, called TestMEReq, which is used to promote effective communication and collaboration between client-stakeholders and requirements engineers for better requirements ...
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 ...
Improving requirements quality using essential use case interaction patterns
ICSE '11: Proceedings of the 33rd International Conference on Software EngineeringRequirements 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 ...
Comments