
EXPLORATIVE UML MODELING Comparing the Usability of UML Tools Martin Auer, Ludwig Meyer and Stefan Biffl Institute of Software Technology and Interactive Systems, Vienna University of Technology, Favoritenstr. 9-11, A-1040 Vienna, Austria Keywords: Usability measures, UML tools, user interface design, UML modeling. Abstract: UML tools are used in three main ways: (1) to exploratively sketch key system components during initial project stages; (2) to manage large software systems by keeping design and implementation synchronized; and (3) to extensively document a system after implementation. Professional tools cover (3) to some extent, and attempt to cover (2), but the vast number of languages, frame- works and deployment procedures makes those tasks all but impossible. By aiming at these two goals, tools must enforce formal UML language constructs more rigorously and thus become more complicated. They can become unsuitable for (1). This paper looks at explorative modeling with the leading UML tool Rational Rose and the open-source sketching tool UMLet. We define usability measures, assess both tools’ performance for common UML design tasks, and comment on the consequences for the application of UML tools. 1 INTRODUCTION of generating diagrams from existing code, and of propagating changes from one artifact to others. The The Unified Modeling Language (UML) (Booch models and diagrams must conform to formal crite- et al., 2005) has become the standard graphical no- ria; only in this way are the tools able to handle the tation in software engineering. Different diagram relations between diagrams and code. types support most phases and workflows of the soft- Finally, such round-trip engineering tools are also ware process, including requirement engineering, de- able to effortlessly generate UML documentation sign, implementation and deployment. UML is sup- from large existing code bases. This is an easy way ported by a variety of tools trying to deliver on the to provide clients with a seemingly vast amount of elusive promise of computer-aided software engineer- system documentation, which is often required by ing (Eichelberger, 2002). contract but seldom maintained consistently during a In practice, UML is applied in three main scenar- project’s lifetime. ios. First, UML is the notation of choice when cre- This paper looks at the first application scenario— ating early drafts of requirement specifications, and UML sketching—, and more precisely at tools sup- software or database designs. Use case diagrams and porting the sketching process. We argue that UML design sketches are often created from scratch and is applied differently in that scenario, and that tools modified over several iterations. The diagrams do not aimed at providing formal UML support and complex have to adhere to the strict UML standards; they are round-trip-engineering might be inadequate to cover used in an explorative way (Rumbaugh et al., 2004). it. We compare the commercial UML tool Ratio- Second, in large-scale software engineering en- nal Rose to the open-source tool UMLet (Auer et al., vironments, software design and implementation are 2003) and quantitatively assess the tools’ usability for kept in sync using sophisticated round-trip engineer- explorative sketching. Rational Rose was chosen be- ing tools (Medvidovic et al., 1999). These are capa- cause it is the leading UML modeling tool in large- ble of generating code stubs from design blueprints, scale industrial environments. UMLet, on the other 466 Auer M., Meyer L. and Biffl S. (2007). EXPLORATIVE UML MODELING - Comparing the Usability of UML Tools. In Proceedings of the Ninth International Conference on Enterprise Information Systems - ISAS, pages 466-473 DOI: 10.5220/0002351804660473 Copyright c SciTePress EXPLORATIVE UML MODELING - Comparing the Usability of UML Tools hand, provides a low-complexity user interface and Artisan’s Real-Time Studio thus a baseline for our comparison. (http://www.artisansw.com), or Borland’s To- We assess the tools’ usability by measuring the gether (http://www.borland.com/together). These complexity of 16 common UML modeling patterns, tools provide round-trip-engineering capability, or use cases. Examples for such use cases are i.e., they can produce code stubs from diagrams, changing class attributes, modifying dependencies, or diagrams from existing source code, and ways to adding messages in a UML diagram. The applied us- keep them in sync when one artifact changes. Other ability measures rely on concepts outlined in (Raskin, tools, e.g., UMLet (http://www.umlet.com) or Violet 2000). (http://www.horstmann.com/violet/) focus on the fast The remaining paper is structured as follows: Sec- creation of UML sketches (Chen et al., 2003; Auer tion 2 provides links to related work. Section 3 gives a et al., 2003). An extensive overview of UML tool short introduction to Rational Rose and UMLet, high- features is available at http://www.jeckle.de. lighting their user interface principles and features. Section 4 discusses the three usage types of UML User interface design (Raskin, 2000; Tidwell, tools. Section 5 gives an overview on the method and 2005) is not a strictly quantitative engineering disci- use cases on which our evaluation is based. Section pline: it requires intuition of users’ habits and envi- 6 discusses the results. Section 7 concludes and gives ronments, common sense, an understanding of graph- an outlook on further research. ical representations and their effects, and attention to psychological processes during user tasks. An ubiquitous aspect of user interfaces—used widely in 2 RELATED WORK any windows-based operating system—are so-called modal dialogs. Such dialogs are windows that pop up to request a user input, while freezing input to UML (Booch et al., 2005) was originally developed the rest of the application. These disruptive dialog by Grady Booch, James Rumbaugh, and Ivar Jacob- windows are described by Quan et al. (Quan et al., son in 1994. The main reason was to standardize the 2003) as follows: “Dialog boxes that collect parame- many existing graphical notations like Booch, OMT, ters for commands often create ephemeral, unnatural or ERM, and to provide a unified way of describ- interruptions of a program’s normal execution flow.” ing different software artifacts (classes, components, Many developers, too, seem to become aware of this packages, etc.) arising in different software environ- intrusive effect; several well-known applications, like ments (object-oriented platforms, real-time systems, Microsoft’s suite of development tools or the Firefox state machines, etc.). Typical types of UML diagrams Web browser, for example, now rely on non-modal are use case, class, or activity diagrams (Fowler, windows or unobtrusive task bars to provide docu- 2003). UML has become a de-facto standard since ment search functionality. then. The Object Management Group (OMG), a non- profit industry consortium, is responsible for defin- For applications with a largely graphical user ing and maintaining the UML language specifica- interface, Moran et al. (Moran et al., 1997) imple- tion (The Object Man Group, 2006). As of early mented and refined an alternative user interaction 2006, the various parts of UML are being upgraded approach—a pen based gesture recognition. While to version 2.0. the gesture-based approach requires some initial UML has been applied in many different areas of learning effort, the authors report that users found it software engineering. Evans and Wellings (Evans and understandable and easy to use. Chen et al. (Chen Wellings, 1999) report on the application of UML in et al., 2003) apply a whiteboard approach to the real-time systems. Kohler et al. (Kohler et al., 2000) creation of UML diagrams in early project stages. use a subset of UML in describing a decentralized Auer et al. (Auer et al., 2003) describe a text-based production control system. Astesiano and Reggio ap- user interface to modify the graphical representation ply UML in the context of distributed systems; they of UML diagrams. Several other authors report rely on the language’s standardized extension features on possible user interface improvements for UML to adapt it to their specific domain. UML is also be- tools (Tenzer, 2004; Zhang and sho Chen, 2005; ing taught in many software engineering courses; for Lahtinen and Peltonen, 2003). an experience report please refer to (Dagdeviren et al., 2004). It is notoriously tricky to quantify how good a Many tools attempt to provide UML user interface is. Users with different background, support, e.g., IBM’s Rational Rose experience levels, and goals can’t possibly agree on (http://www.ibm.com/software/rational), a single “best” user interface. Yet several user inter- 467 ICEIS 2007 - International Conference on Enterprise Information Systems face guidelines attempt to provide formal criteria that Model Views and Round-Trip Engineering should at least minimize bad interface choices and provide some cross-platform standardization (Apple Rational Rose uses a formal model framework to store Computer Inc., 1992). all design elements and their relationships. This way, Other authors, most notably Raskin (Raskin, Rational Rose can create different views of the design 2000), attempt to provide metrics to measure the qual- and ease the transformation of one diagram type to ity or usability of user interfaces. Indeed, a whole another. As an example, if the user changes the name family of so-called GOMS methods (goals, operators, of an element in one diagram view, it changes consis- methods, selection rules) try to measure usability. For tently in all other diagrams. example, KLM-GOMS relies on 6 primitive opera- Rational Rose allows one to create a model from tions (pressing a key, moving the mouse pointer, drag- scratch or to start from a set of predefined models. ging the mouse pointer, mental preparation, moving Users can select from model templates like Java, VC- hands, and waiting for command execution), and em- MFC, VB, etc.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages8 Page
-
File Size-