UML-Intensive Framework for Modeling Software Requirements

Abstract. Investigation of software projects has shown that requirements analysis is one of the most problematic activities in software development. Textual requirements specifications are difficult to develop, understand, review, and maintain. Graphical modeling is widely recognized as a more effective analysis tool. Software industry has adopted UML (Unified Modeling Language) as de facto standard in software modeling. UML defines a powerful, but also difficult to learn, modeling toolkit: 13 types of diagrams, more than 100 inter-related metaclasses used as modeling concepts, and possibility to define custom extensions. Since UML doesn’t define modeling method, practitioners lack guidance on how to apply it efficiently to modeling software requirements, and apply it only fragmentally loosing many benefits that UML provides. In this paper, we present the analysis of modern requirements modeling techniques. Based on analysis results, we discuss how various domain and requirements analysis elements – semantic map of business concepts, lifecycles of business objects, business processes, business rules, system context diagram, use cases and their scenarios, constraints, and user interface prototypes – can be modeled using UML. We propose UML extensions and a practical UML-intensive framework necessary for concise requirements modeling. The application of this framework is demonstrated by modeling a case study – software system for library management – using customized MagicDraw UML environment. Our work is important for practitioners trying to adopt UML for requirements analysis and for scientists working on creating more detailed requirements analysis methods based on UML.

[1]  Natalia Correa,et al.  A UML Extension to Specify Model Refinements , 2006 .

[2]  Ivar Jacobson,et al.  Object-Oriented Software Engineering , 1991, TOOLS.

[3]  Henrik Behrens Requirements Analysis and Prototyping using Scenarios and Statecharts , 2002 .

[4]  Heather Goldsby,et al.  Visualizing Requirements in UML Models , 2006, 2006 First International Workshop on Requirements Engineering Visualization (REV'06 - RE'06 Workshop).

[5]  Michael C. Panis,et al.  Deploying a System-wide Requirements Process within a Commercial Engineering Organization , 2007, 15th IEEE International Requirements Engineering Conference (RE 2007).

[6]  Hans Eriksson,et al.  Business Modeling With UML: Business Patterns at Work , 2000 .

[7]  Darius Silingas,et al.  Towards UML-Intensive Framework for Model-Driven Development , 2008, CEE-SET.

[8]  Norman W. Paton,et al.  UMLi: The Unified Modeling Language for Interactive Applications , 2000, UML.

[9]  Ovidiu Noran,et al.  UML vs. IDEF: An Ontology-Oriented Comparative Study in View of Business Modelling , 2004, ICEIS.

[10]  Greg Wilson,et al.  Requirements in the wild: How small companies do it , 2007, 15th IEEE International Requirements Engineering Conference (RE 2007).

[11]  Laurian M. Chirica,et al.  The entity-relationship model: toward a unified view of data , 1975, SIGF.

[12]  Martin Glinz,et al.  Problems and deficiencies of UML as a requirements specification language , 2000, Tenth International Workshop on Software Specification and Design. IWSSD-10 2000.

[13]  Reiko Heckel,et al.  UML - A Universal Modeling Language? , 2000, ICATPN.

[14]  John Mylopoulos,et al.  Towards requirements-driven information systems engineering: the Tropos project , 2002, Inf. Syst..

[15]  Eric S. K. Yu,et al.  Towards modelling and reasoning support for early-phase requirements engineering , 1997, Proceedings of ISRE '97: 3rd IEEE International Symposium on Requirements Engineering.

[16]  Bran Selic,et al.  UML 2000 - The Unified Modeling Language. Advancing the Standard: Third International Conference York, UK, October 2-6, 2000 Proceedings , 2000 .

[17]  Axel van Lamsweerde,et al.  Goal-Oriented Requirements Engineering: A Guided Tour , 2001, RE.