Promoting Open Source Technology in Education UML Modeling Tools



Similar documents
Review on StarUML an Open-Source Unified Modeling Language Tool

Paul Zenden Sioux Technische Software Ontwikkeling Science Park Eindhoven EP Son Tel: +31 (0)

MDA Overview OMG. Enterprise Architect UML 2 Case Tool by Sparx Systems by Sparx Systems

Technical White Paper The Excel Reporting Solution for Java

What is Enterprise Architect? Enterprise Architect is a visual platform for designing and constructing software systems, for business process

Principles of integrated software development environments. Learning Objectives. Context: Software Process (e.g. USDP or RUP)

Internet Engineering: Web Application Architecture. Ali Kamandi Sharif University of Technology Fall 2007

Chapter 13 Computer Programs and Programming Languages. Discovering Computers Your Interactive Guide to the Digital World

Function Point Modeler Enterprise Edition A Software Lifecycle Management Tool

Visual Paradigm product adoption roadmap

Herramientas CASE. Microsoft Project Microsoft Visio Microsoft Project Microsoft Visio Microsoft Expression Studio 4

Software Specification and Testing

The leading platform for Model Driven Architecture (MDA) Content:

Software Development Tools & Environments

IBM Rational Web Developer for WebSphere Software Version 6.0

Overview Document Framework Version 1.0 December 12, 2005

A Monitored Student Testing Application Using Cloud Computing

JAVA Technologies QUARTER 1 DESKTOP APPLICATIONS - ESSENTIALS QUARTER 2 NETWORKING AND OPERATING SYSTEMS ESSENTIALS. Module 1 - Office Applications

SOFTWARE TESTING TRAINING COURSES CONTENTS

A Comparative Study of Web Development Technologies Using Open Source and Proprietary Software

Getting Started With Enterprise Architect

Online Enrollment and Administration System

SourceAnywhere Service Configurator can be launched from Start -> All Programs -> Dynamsoft SourceAnywhere Server.

BEST WEB PROGRAMMING LANGUAGES TO LEARN ON YOUR OWN TIME

How To Set Up An Outsourcing Center In China

Eclipse BPMN Modeler Introducing Intalio Designer

Which Enterprise Architect Edition Should I Purchase?

Take full advantage of IBM s IDEs for end- to- end mobile development

Teaching Adaptability of Object-oriented Programming Language Curriculum

Model Driven Interoperability through Semantic Annotations using SoaML and ODM

Part One Business Modeling Business Process Model

MSWL Development & Tool. Eclipse IDE

ProgLogix R & D Pvt. Ltd.

Viewpoint. Choosing the right automation tool and framework is critical to project success. - Harsh Bajaj, Technical Test Lead ECSIVS, Infosys

Product Roadmap. Sushant Rao Principal Product Manager Fortify Software, a HP company

Comparison of Software Development Productivity by EJB Versions with Enterprise of Standardization

ORACLE APPLICATION EXPRESS 5.0

Improvement of Software Quality and Productivity Using Development Tools

Java/J2EE or Web Developer. Formal Education. Technical knowledge. Spoken Languages

Database Management System Choices. Introduction To Database Systems CSE 373 Spring 2013

Programming. Languages & Frameworks. Hans- Pe(er Halvorsen, M.Sc. h(p://home.hit.no/~hansha/?page=sodware_development

Framework as a master tool in modern web development

VOL. 2, NO. 1, January 2012 ISSN ARPN Journal of Science and Technology ARPN Journals. All rights reserved

Automation using Selenium

Asset Based Development

Case Studies of Running the Platform. NetBeans UML Servlet JSP GlassFish EJB

A Brief Analysis of Web Design Patterns

ICAPRG409A Develop mobile applications

Annex 10 Standard Profile Specification and Request Form for Services

Lecture 1 Introduction to Android

IEC CIM, Enterprise Architect, Profiles and CIMTool

DB2 Application Development and Migration Tools

Graduation Project Online Management System ALHOSN University Case Study

Communiqué 4. Standardized Global Content Management. Designed for World s Leading Enterprises. Industry Leading Products & Platform

An Easier Way for Cross-Platform Data Acquisition Application Development

ISSN: (Online) Volume 3, Issue 2, February 2015 International Journal of Advance Research in Computer Science and Management Studies

Modern Software Development Tools on OpenVMS

Emaml.NET ASP.NET Server Control for ArcIMS

JAVA/J2EE DEVELOPER RESUME

WebRatio 5: An Eclipse-based CASE tool for engineering Web applications

Introduction to Eclipse, Creating Eclipse plug-ins and the Overture editor. David Holst Møller Engineering College of Aarhus

ASP &.NET. Microsoft's Solution for Dynamic Web Development. Mohammad Ali Choudhry Milad Armeen Husain Zeerapurwala Campbell Ma Seul Kee Yoon

Short notes on webpage programming languages

POINT-TO-POINT vs. MEAP THE RIGHT APPROACH FOR AN INTEGRATED MOBILITY SOLUTION

Avaya Aura Orchestration Designer

How To Develop An Application Developer For An Ubio Websphere Studio 5.1.1

Exporting from WebSphere Business Modeler Unit 23

Design of Visual Repository, Constraint and Process Modeling Tool based on Eclipse Plug-ins

BarTender Integration Methods. Integrating BarTender s Printing and Design Functionality with Your Custom Application WHITE PAPER

Developing Database Business Applications using VB.NET

THE OPEN SOURCE DEVELOPER REPORT

A Software Development Platform for SOA

Cache Database: Introduction to a New Generation Database

Client-Server Architecture & J2EE Platform Technologies Overview Ahmed K. Ezzat

How to make a good Software Requirement Specification(SRS)

IBM WebSphere Business Integration

Metamodels and Modeling Multiple Kinds of Information Systems

Applying MDA in Developing Intermediary Service for Data Retrieval

CrossPlatform ASP.NET with Mono. Daniel López Ridruejo

<Insert Picture Here> Michael Hichwa VP Database Development Tools Stuttgart September 18, 2007 Hamburg September 20, 2007

Oracle Application Development Framework Overview

Latte Rapid Application Development. William Dunlap Product Manager Borland International

DESIGN OF MOBILE APPLICATION FOR SCHEDULING APPOINTMENT WITH BANK PERSONNEL FOR BANKING SERVICES

Modeling Web Applications Using Java And XML Related Technologies

CS 209 Programming in Java #1

NXTware Remote. Advanced Development and Maintenance Environment for OpenVMS and other Strategic Platforms

The power of IBM SPSS Statistics and R together

CrownPeak Java Web Hosting. Version 0.20

SBP is a software development outsourcing company, established in 2004, and headquartered in Bucharest, Romania.

Tools for MDA Software Development: Evaluation Criteria and Set of Desirable Features

RIA DEVELOPMENT OPTIONS - AIR VS. SILVERLIGHT

Soft Solvers Technologies

Transcription:

Promoting Open Source Technology in Education UML Modeling Tools 1 Sonymol Koshy, 2 Dr. Sunil Kumar, 3 Dr. U. V. S Teotia 1,2 Dept. of CS, Shri Venkateshwara University Gajraula, UP, India 3 Director of Life Sciences, Academic and Research, Shri Venkateshwara University, Gajraula, UP, India Abstract Unified Modelling Language (UML) is a collection of diagrams, terms, profiles, etc. that is used to design and develop complex software. There are many software, commercial as well as open source tools. IBM Rational Rose is the most popular commercial UML tool. But there are a number of open source alternatives like StarUML, AgroUML UmLet etc which differ in pricing and features supported which are important criteria to be explored when the tools have to be used for educational purposes. Keywords UML, Rational Rose, StarUML, Agro UML, Education I. Introduction The UML stands for Unified Modelling Language and is controlled by the Object Management Group (OMG) a standards organization. It is a collection of diagrams, terms, profiles, etc. that is used to design and develop complex software. The current version of UML is 2.1. IBM Rational Rose is one of most popular tools for building UML models. Microsoft published a UML designer visual modeler with their Visual Studio 6 Tools, but that wasn t a success. StarUML is a fully fledged, open source, UML modeling tool that supports the ability to create software designs, from basic concepts, through to the coded solution.there are a number of other open source tools like AgroUML, ULet etc. This paper aims to analyse the suitability of various UML tools with respect to features offered, pricing and learnability especially with regard to higher education. II. IBM Rational Rose IBM Rational Rose is one of many tools for building UML models. Rational Rose was the most accepted UML product from IBM. it became more popular after the integration with some popular development IDEs like Microsoft s visual studio and Borland JBuilder. Rose is simple, powerful and efficient, but the licensing is a bit costly. The problem with Rose is that it stopped with version 1.5 of the UML. There were some follow-on products (Rational refers to them as RSx). ( www.ibm.com/ software/ awdtools/developer/rose/)[6] Depending on your requirements there are many tools that are available. For example, if you are trying to design a complex system or trying to build a real time or embedded application, Rational s Rhapsody is a good choice. Rhapsody generates complete application code from class diagrams, state charts, activity diagrams and flow charts. The code it generates (C, C++, Java, and Ada) is very tight, easy to read and debug, and looks like the code you d write by hand III. STAR UML StarUML is an open source UML modeling application licensed under a modified version of GNU GPL. It helps in generating fast, flexible, extensible and freely-available UML/MDA platform running on Win32 platform. It is both a software modelling tool and a platform with a complete set of UML modelling features 106 International Journal of Management & Business Studies making it nearly a convincing replacement of commercial UML tools such as Microsoft s Visio and IBM s Rational Rose. Their latest version StarUML 5.0 is loaded with lots of features which can compete with Rational Rose in totality. It supports UML 2.0 specification and Model Driven Architecture ( MDA ).Code generation can be done for Java, C++ and C# and also supports the reverse engineering of the same. Moreover, documentation can be generated for all of the Microsoft Office suite programs such as Word, Excel and PowerPoint. StarUML is easily extensible through modules using a COM-based plug-in architecture StarUML very seamlessly imports from Rational Rose too [1]. The OMG (Object Management Group) also specifies UML profile standards for specific purposes. Profiles for specific programming languages (C/C++, Java, C#, Python, etc.) Profiles for specific development methodologies (RUP, Catalysis, UML Components, etc.) Profiles for specific domains (EAI, CRM, SCM, ERP, etc.) A. StarUML - The Open Source UML/MDA Platform StarUML is an open source project to develop fast, flexible, extensible, featureful, and freely-available UML/MDA(Model- Driven Architecture) platform running on Win32 platform. The goal of the StarUML project is to build a software modeling tool and also platform that is a compelling replacement of commercial UML tools such as Rational Rose, Together and so on. UML Support : UML is continuously expanding standard managed by OMG(Object Management Group). StarUML support UML 2.0 and will support lastest UML standard. MDA (Model Driven Architecture) : StarUML is designed to support MDA and provides many customization variables like as UML profile, Approach, Model Framework, MDA code and document template and so on. Plug-in Architecture : A good tool must have a well-defined plug-in platform. StarUML provides simple and powerful plug-in architecture so anyone can develop plug-in modules in COM-compatible languages (C++, Delphi, C#, VB,...) Usability : StarUML is implemented to provide many userfriend features such as Quick dialog, Keyboard manipulation, Diagram overview, etc thus enhancing its usability. B. Features of StarUML Supports most of the diagrams specified in UML 2.0. Very rich feature set and formatting options. Ability to generate source code from the UML diagram. Reverse engineer the existing code into UML diagrams. Supported languages : C++, C# and Java. Fast load time/execution time compared with other UML tools. Familiar Visual Studio like user interface. Supports exporting diagrams into JPG / XMI formats, raster image format, and vector image format Windows Metafile. Supports import from XMI, and Rational Rose file format Professional, inter-connected models can be created.

ISSN : 2230-9519 (Online) ISSN : 2230-2463 (Print) Supports plug-ins for both importing and exporting. Code and documentation plug-ins provided with package. Its Free! the best feature. C. What you cannot do with staruml Does not supports exporting diagrams into SVG and PNG format. Complex for the beginner. No longer on a release cycle. Not cross platform. Supports code generation for the Windows COM model only. IV. ArgoUML ArgoUML is a leading open source UML modeling tool and includes support for all standard UML 1.4 diagrams. It runs on any Java platform and is available in ten languages. ArgoUML is distributed under the Eclipse Public License (EPL) 1.0 [7] A. Features of argouml[2] Written in Java, so runs in all the platforms where Java runs. Supports Code generation from the UML diagram / UML Diagram generation from the code. Currently supported languages are C++, C#, Java and PHP. Ability to manage ToDo list. Export UML diagram into XMI / JPG / SVG / PS formats. B. What is not good with argouml Does not fully support UML 2.0. Can t Undo mistakes. You will have to redo all again. Written in Java, so run comparatively slower than staruml. Fewer formatting options as compared to that of staruml. V. UMBRELLO This was originally built for KDE and was ported to Windows, It seems like a decent tool. It seems like most of the screenshots are proving its cross-platform support as opposed to features, which is kind of disappointing [3]. IJMBS Vo l. 2, Is s u e 3, Ju l y - Se p t 2012 The interface is not so friendly or encouraging. Limited Output formats, so sharing information is limited. VI. UMLet UMLet is an open-source Java-based UML tool designed for teaching and creating the Unified Modeling Language. It allows users to perform many different operations within it. It is a drawing tool rather than a modelling tool as there is no underlying dictionary or directory of reusable design objects. UMLet runs on any Java platform, eg, Windows, Linux, and OS X.UML elements are modified using text input instead of pop-up dialogs. Elements can be modified and used as templates; this way, users can easily tailor UMLet to their modeling needs. UMLet allows users to create their own custom UML elements. An element s look can be modified at run-time by changing a few lines of Java code; UMLet then compiles the new element s code on the fly [4]. A. Features of UMLet lightweight tool for rapidly drawing UML diagrams from within the Eclipse environment. Open-Source and no licence fee. Simple user interface. Runs on any Java platform, eg, Windows, Linux, and OS X export diagrams to eps, pdf, jpg, svg, and clipboard. Share diagrams using Eclipse. availability to create new, custom UML elements. Reduced file-created size. supports a variety of UML diagram types: class, use case, sequence, state, deployment, activity B. What is not good with UMLet No support for XMI or rational Rose formats. No evident code generators more a diagramming tool Ready made templates not available Comparison of Open Source UML Tools A. Features of Umbrello Code generator for Java, C, C++ Code generators (Perl, Python, SQL, Ada, ActionScript, JavaScript, IDL, XML Schema) PHP5, Pascal code generator Advanced code generator for Ruby, Tcl Auto-complete in parameter properties dialog in class diagram Nestable components and subsystems in Component diagram User interaction with UMLWidget improvements Import Rose model files Automatically fill useful info into the Perl writer heading template Export-to-docbook and Export-to-HTML documentation generator B. What is not good with Umbrello Does not fully support UML 2.0. Though code generators are available for a number of languages reverse engineering facility is not seen. International Journal of Management & Business Studies 107

Table 1: Comparison of Open Source UML Tools StarUML AgroUML Umbrello UMLet Version 5 0.26.2,0.32.2 2 11.3 Platform Windows Java VM Linux, KDE, Windows Java VM, Windows, OS X and Linux Language used to develop Delphi / Any Java C Java XMI Import, Export Export*, Import * Import, Export Rational Rose Import Import, Export Use Case Yes Yes Yes Yes Activity Diagram Yes Yes Yes Yes Class Diagram Yes Yes Yes Yes Sequence Diagram Yes Yes Yes Yes Collaboration Yes Yes Yes Deployment Yes Yes Yes Yes Output Formats raster img, JPEG, Windows Metafile GIF, PNG, PostScript, Encapsulated PS, PGML and SVG PNG, HTML JPG, SVG, PDF, EPS C/C++ Forward / Reverse Engg Forward / Reverse Engg Forward Engg C# Forward / Reverse Engg Forward / Reverse Engg Forward Engg Java Forward / Reverse Engg Forward / Reverse Engg Forward Engg Other Code Generators PhP, Ruby Ada, PHp5, Ruby, Tcl, Python, XML, Perl, Pascal Load /Execution Time Fast Slow Slow Templates Yes,(Word, Excel, and PowerPoint) generation Perl Writer Heading MDA Yes Demo Screenshots Yes Yes Very unfriendly Yes Price comparisons of various Open source and proprietary UML tools Table 2: Price Comparison of Open Source UML Tools Company Product Features Platform Price Tigris ArgoUML open-source project, written in Java, run-time model critique, OCL, XMI reverse engineering for Java Tigris Oracle StarUML JDeveloper open-source project, language support. (Java, C++, C# ), High compatibility with (Rose, XMI modules) Class and activity diagrams, Java round-trip engineering, XMI export Windows $0 108 International Journal of Management & Business Studies

ISSN : 2230-9519 (Online) ISSN : 2230-2463 (Print) IJMBS Vo l. 2, Is s u e 3, Ju l y - Se p t 2012 UMLet Umbrello UMLet Umbrello UML Modeller open-source UML class and sequence diagrams, export to JPG, SVG, PDF KDE-based open-source program in C++, XMI file format, PNG export Linux $0 Altova UModel Windows $129 Visual Object Visual Paradigm UML C++, C# and Java code generation and reverse Windows, Modelers Standard Edition engineering, data modeling Mac OS $299 Microsoft Visio Visio 2002 Professional C++, VB reverse engineering, MS Visual Studio Windows $499 Borland Together Edition for Visual Studio.NET integration of Together with Visual Studio.NET VS.NET $1500 Rose XDE Developer Java, fully integrated with IBM Websphere Studio for Java and Eclipse Windows $2826 Rose XDE Developer J2EE support, patterns support, round-trip for Visual Studio engineering Windows $2,968 Rose Technical real-time modeling based on ObjecTime Linux, $5995- Developer technology Windows $10625.0 VI. Conclusion StarUML is a better alternative to Rational Rose says Renjith in his blog post http://todayslearnings.blogspot.com [5] and Peter Gordon in the Software Discussion group by Joel discuss alternative open source various options in UML tools [8]. NetBeans Editor also can be used with the NetBeans UML plugin. It has got very cool features like Reverse engineering, Design patterns documentation, applying design patterns, etc., There are many constraints to creating UML diagrams quickly; that being cost, ease of use, portability, and most importantly, the ability to quickly share the diagrams. In the education environment; the cost and complexity of maintaining a license server and handing out software programs with a large footprint would be too much money to spend if all that needs to be done is teach students simple UML modeling techniques. UMLet is an open-source Java-based UML tool designed for teaching and creating the Unified Modeling Language. It allows users to perform many different operations within it. Using the drawing tool users can draw UML diagrams fast. Most experts after having used StarUML on small to midsized projects,find it a great tool. It seems to rather good for creating projects using the Reverse Engineering for C#. It has C++, Java, and C# support for Reverse Engineering, and Code Generation. ArgoUML on the other side, seems be short on the number of features. Ultimately, StarUML is amazing for UML diagrams. It is highly recommended tool for academics to use it for teaching and implementing Object Oriented Techniques. There is no need for any institution of higher learning to go for a proprietary Modeling tool by paying a high license fee since these open source alternatives come loaded with all the necessary features. References [1] Wong, S. (2007, September 10). StarUML Tutorial. Retrieved from the Connexions Web site: [Online] Available: http:// www.cnx.org/content/m15092/1.1/ [2] Kunle Odutola, 2004, ArgoUML Quick Guide, [Online] Available: http://www.argouml-stats.tigris.org/ documentation/quickguide-0.32/ [3] Umbrello UML Modeller, (2008), [Online] Available: http:// www.uml.sourceforge.net/index.php [4] UMLet 11.4 Free UML Tool for Fast UML Diagrams, [Online] Available: http://www.umlet.com/ [5] Renjith, (2007), staruml-better-alternative-to-rational, [Online] Available: http://www.todayslearnings.blogspot. com/2007/12/ staruml-better-alternative-to-rational.html [6] [Online] Available: www.ibm.com/software/awdtools/ developer/rose/ [7] Eclipse Public License (EPL) 1.0, [Online] Available: http:// www.eclipse.org/legal/epl-v10.html [8] Peter Gordon, Nov. (2006) [Online] Available: http://wwwdiscuss.joelonsoftware.com/default. asp?design.4.418242.19 Sonymol Koshy was awarded the B.E. (CSE) degree from Marathwada University Maharashtra, India, in 1990, M.Tech (IT) in 2006 and is presently pursuing Ph.D in CSE with focus on Open Source, Education and Instructional Design. She started her career as an instructor to Defence cadets at the prestigious National Defence Academy, Khakwasla, Pune, India and is currently conducting collaborative research in open source software at Apex Institute of Technology, Kaushalganj UP, India. Due to her interest in object oriented programming, she worked for sometime as a software developer in Web based Java applications and EJB. She has authored and edited many books based on Computer Applications and core Java. Her main research interests are Open Source Software in Education and Industry. Dr. Sunil Kumar is currently the head of the department of Computer Science at Shri Venkateshwara University, Gajraula Distt-J.P Nagar, UP, India. International Journal of Management & Business Studies 109

Dr. Udai Vir Singh Teotia was awarded M.Sc (Botany & Microbiology), LL.B and Ph.D from CCS University. Meerut. He has established many higher education institutions in north India and worked as Director in many reputed Institutions beside that he is having 22 years of research and administrative experience. His main research interest are higher Education reforms in India and inducted new job oriented vocational courses in higher Education sector. Currently he is working as Professor cum Director (Life Sciences, Academic and Research) at Shri Venkateshwara University, Gajraula, Distt-J.P Nagar. UP, India. 110 International Journal of Management & Business Studies