Uml

  • July 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Uml as PDF for free.

More details

  • Words: 2,774
  • Pages: 18
UML & It’s Tools

Acknowledgement:

The preparation of this important document would not have been possible without the support, hard work and endless efforts of Ms.P.Jermila and Mr. Viviek Hariharan. Much needed moral support and encouragement was provided on numerous occasions by for our faculty Mr. Allah Baksh.

Contents: •

UML    

An Introduction Evolution Building Blocks Diagrams

• UML Tools  Enterprise Architect 1. Structures 2. Code Engineering 3. Visual Execution Analysis 4. XML Technology Engineering 5. Advantages Of Enterprise Architect  Visio 1. Introduction 2. Visio and Microsoft Office Application 3. Non-Conventional Uses Of Visio 4. Features Of Visio 2007 5. Advantages Of Visio  Jude 1. Introduction 2. Fundamental Components 3. System Requirements 4. Features  Rational Rose

1. Introduction 2. Features

• Conclusion • Reference

UML: Introduction: The Unified Modeling Language[UML] is a family of graphical notation, that help in describing and designing the software systems, particularly software systems built using Object- Oriented(OO) style. UML offers a standard way to visualize a system's architectural blueprints, including elements such as actors, business processes, logical components, activities, programming language statements, database schemas and reusable software components.

Evolution: The evolution of Unified Modeling Language began with the need for a modeling language in which you can develop models of object oriented software systems. This evolution can be divided into two segments:  Fragmentation  Unification Let us discuss in detail.

1. Fragmentation: Object-Oriented Modeling Languages began to appear between the mid -1970’s and the late 1980’s. The number of modeling languages increased from less than 10 to more than 50 between 1989 and 1994. These are known as “1’st Generation Methods”. All these languages were similar only with some minor changes. New iterations of 1’st generation methods began to appear that incorporated each other’s techniques during the mid-1990. These are known as “2’nd Generation methods”.

2. Unification: The historical period between the mid 1990’s and 1997 was

characterized by Unification. Grady Booch and Jim Rumbaugh unified their methods to release UML 0.8 in October 1995. They were joined by Ivor Jacobson and released version 0.9 & 0.91 in October 1996. The three were

together called as the ‘3 Amigos’. Rational Software Corporation formed the UML Consortium. In January 1997, UML Partners collaborated and released a

well-defined, expressive, and powerful and generally applicable version of UML- UML 1.0.Later in the month of November-UML 1.1 was released.

Building Blocks of UML: The building blocks of UML include the components that are necessary for creating models of Software Systems. The three types of UML building blocks are:



Basic UML Constituents: Includes the static, dynamic, grouping and annotational constituents of UML.



Relationships: Depicts the relations between the various constituents of a UML model.



Diagrams: Represent the various artifacts of a system graphically. Diagrams enable you to visualize a system from all the aspects of software development.

Diagrams: UML diagrams are various notations to specify the syntax of the constructs used for creating the diagram. It provides the following thirteen diagrams to represent the structure and design of a software system: →

Use Case Diagram: It depicts the various operations that a system performs. It contains use case, actors and their relationships. Use cases are the sequence of actions that form a single unit of work for an actor. An actor represents a user who is external to the system and interacts with the use case.

→ Class Diagram: It represents a set of classes, interfaces, and their relationships. A class can be represented in a rectangular box with

three compartments. The first compartment shows the class name. The second compartment shows the attributes of the class and the third compartment shows the methods associated with the class.

→ Object Diagrams: It represents instances of a class diagram. An object can represent in a rectangular box with two compartments. The object name appears before the class name in the first compartment. The second compartment shows the attribute of the objects.

→ Communication Diagrams: It represents an interaction between objects in the form of messages. This diagram is also called ac Collaboration Diagram.

→ Sequence Diagram: They represent an interaction between objects in the form of messages ordered in a sequence by time. It shows the messages exchanged between objects ordered in sequence of time.

→ State Machine Diagram: It shows how a class reacts when an event occurs. It can be drawn by using the classes and the use cases identified for the system. This diagram is also called as State diagram or a State chart diagram.

→ Activity Diagram: Activities are a representation of the various operations performed by a class. An Activity Diagram depicts the flow of control from one activity to another. It can be drawn by identifying the activities performed by the various classes of the system.

→ Package Diagrams: All the interrelated classes and interfaces of the system when grouped together form a package. These diagrams help

in representing the various packages of a software system and the dependencies between them.

→ Component Diagram: Packages or individual entities are combined together to form component. Various components and their dependencies can be depicted using a component diagram.

→ Deployment Diagram: It shows the physical placement of components in nodes over a network. It can be drawn by identifying nodes and components.

→ Timing Diagrams: They are used to represent the changes in state and value of one or more objects over a period of time. They are often used to design embedded software.

→ Concise Notation: A value lifeline is used to represent the changes in the value of objects over a period of time. The time elapsed is represented on the X-axis and the value is shown between the pair of horizontal lines which cross over at each change in value. → Robust Notation: A state lifeline is used to represent the changes in state of objects over a period of time. The X-axis represents the time elapsed and the Y-axis depicts a set of states.

→ Composite Structure Diagram: It represents the internal structure and interaction points of a classifier. Classifier refers to classes, objects, or interfaces. Interaction point refers to the points within a classifier using which the classifier interacts with other parts of the system. It is made up of several elements, such as

parts, ports and interfaces. A part is an element that represents a set of one or more instances owned by the containing classifier instance. A port is an interaction point between a classifier instance and its environment or between the behavior of the classifier and its internal parts. A port can interact in both the directions.

→ Interaction Overview Diagram: It gives an overview of the interaction diagrams. Interaction diagram include the following types of diagrams: à Sequence Diagram à Communication Diagram à Timing Diagram à Interaction Overview Diagram It represents the logical interaction between the interaction diagrams and the process flows in between the set of interaction diagrams.

UML Tools: To ensure that the various diagrams provided by UML are implemented effectively, an UML tool has to be used that helps us to manipulate and store these diagrams. The following tools can be used for this purpose: → → → →

Enterprise Architect Visio Jude Rational Rose

Enterprise Architect: It is a Computer Aided Software Engineering (CASE) tool for designing and constructing software systems, for business process modeling, and for more generalized modeling purposes. Using Enterprise Architect's support for UML, we can model: * New complex software & Business systems * Visualize & maintain Existing systems

1. Structures: Enterprise Architect interprets the UML standards and specifications by the following ways: • Projects and Models are created using the Start Page or File Menu, which provide templates on which to base your models • Packages and Diagrams are created using the Toolbars and Menus.

• Elements and Connectors are created using the Enterprise Architect UML Toolbox. • New Structures can be created using Project Browser and existing structures can be Re-used using the Project Browser, Model Views, Element List and Model Search.

1. Code Engineering: UML modeling depends on and supports code engineering- you generate and update code from a model, and you create and update models from code. Enterprise Architect enables you to: • Forward engineer, reverse engineer, round-trip and synchronize code in a range of programming languages • Debug and profile code • Model and generate code for XML Technologies • Perform database modeling and database design for a range of database management systems • Convert model components from one domain to another using Model Driven Architecture (MDA) Transformation. • Source code generation and reverse engineering for many popular languages, including C++, C#, Java, Delphi, VB.Net, Visual Basic, Action Script, Python and PHP. • A built in 'syntax highlighting' source code editor • Code generation templates, which enable you to customize the generated source code to your company specifications.

1. Visual Execution Analysis: Enterprise Architect enables you to: • Build, test, debug, run and execute deployment scripts • Integrate UML development and modeling with source development and compilation • Integrate the test process directly into the Enterprise Architect IDE • Debug .NET, Java and Microsoft Native (C, C++ and Visual Basic) applications.

1. XML Technology Engineering:

Enterprise Architect enables you to rapidly model, forward engineer and reverse engineer two key XML technologies: •

XML Schema (XSD)



Web Service Definition Language (WSDL).

XSD and WSDL support is critical for the development of a complete Service Oriented Architecture (SOA), and the coupling of UML 2.1 and XML provides the natural mechanism for implementing XML-based SOA artifacts within an organization.

1. Advantages Of EA over other tools: The advantages of Enterprise Architect over other tools are as follows: Comprehensive UML 2.1-based modeling • Built-in Requirements Management • Extensive Project Management support, including testing • Code engineering support for many languages out of the box • An integrated Debug Workbench for profiling executable Java and .Net applications, instantiating run-time model objects and recording sequence diagrams. • Extendable modeling environment that can host user-defined profiles and technologies • Usability • Speed: Enterprise Architect is a spectacularly fast performer • Scalability: Enterprise Architect can handle extremely large models and many concurrent users with ease • Price: Enterprise Architect is priced to outfit the entire team, making collaboration and team development a real possibility. •

Visio: 1.Introduction: Visio is about communication of ideas and analysis of information, whether it is complex or simple, business or technical. As a diagramming program, it can be used to create flowcharts for business processes or document IT networks. It also has a rich automation model that lets our partners create line-of-business applications that take advantage of

the drawing functionality to automatically create or display and modify diagrams to meet their business solution needs. 2. Visio

and Microsoft Office Applications:

Visio can be used in Microsoft Office Applications like Power Point; Word and Excel .It lets users create Simple and more Complex diagrams. Users can copy these diagrams into any other Office document, such as a Word document or a PowerPoint slide, to display the drawing in the context of other information. It also has a number of other features that let diagrams be used as an interface for other documents and processes.

3.Non Conventional Uses of Visio: The non-conventional uses of Visio are as follows: • Custom business process designer • A manufacturing shop floor simulation tool • A sales process automation tool • It is also capable of advanced automation that enables generation of data from diagrams and diagrams from data.

1.Features of Visio: The features of Visio are as follows: An ITIL template Additional sample diagrams Auto Connect feature to speed the creation of network diagrams Data Graphics to easily illustrate network data Data Linking to link external databases and Excel files with drawing objects • Pivot Diagrams to automatically visualize multiple views of the same data set • Color Schemes to quickly modify the visual impact of a diagram for different purposes • Timelines and calendars • • • • •

1.Advantages Of Visio:

 Software Design :

We can easily diagram both how the software will function and what the inputs and outputs will be using a Flowchart.  Process Diagrams: If we have any kind of defined process, it can almost always be represented in Visio. Visio offers a wide variety of tools for creating all kinds of diagrams, giving you lots of options to work with.  Hierarchy Structures: Hierarchy Structure in the sense how our project is laid out. In other words it can be said as the flow of operations. These kinds of diagrams are essential for new people to know about our project, as well as for everybody else if we have a large or often-changing project.

Jude: 1.Introduction: JUDE is a UML Modeling tool created by the Japanese company Change Vision. JUDE is an acronym of “Java and UML Developers' Environment”. It received the "Software Product of the Year 2006" prize, established by IPA (Information-Technology Promotion Agency, Japan). It is suitable for business use, large-sized models, and document creation. It is based on the concept of "Usable from the moment of installation".

2.Fundamental Components Of Jude:  Management View:

The management View has the Main Menu that includes functions related to the whole project, such as file operation and editing and the Tool Bar for frequently used functions.

 Diagram Editor:

The Diagram Editor is used to edit diagrams and models. We can open multiple diagrams at the same time.  Structure Tree:

It displays models in a tree structure. We can carry out various operations using the Pop-Up menu of model elements on here.  Inheritance Tree:

The Inheritance Tree View displays models in a tree structure based on the inheritance relationships between classes.  Map View:

The Map View provides an overview of the diagram that is opened in the Diagram Editor. The area displayed in the Diagram Editor can be specified by a rightdrag and the diagram in the Diagram Editor can be scrolled by a left-drag. This function is very useful for big diagrams especially.  Property View:

The Property View is used to display and edit the properties of model elements.

1.System Requirements: Operating System: Windows 2000, XP, Vista CPU: Pentiun III 600 MHZ or higher Memory: 265MB or more. JAVA Environment: Sun Microsystems J2SE 1.4.1_07 or later OR J2SE 1.4.2_05 or later OR JDK5.0 (JDK 5.0 is supported since JUDE/Community 3.1)

2.Features Of JUDE: • JUDE/Community supports all basic UML 1.4 diagrams • JUDE/Professional supports all basic UML 1.4 diagrams, some UML 2.0 specifications and Entity-Relationship diagrams • Unlimited UNDO/REDO feature • Drag scrolling, changing view freely using "Map View" to make it easy to edit large scale of diagrams • Import and export of Java source files • Automatic generation of class diagrams with model information • Paste images on Microsoft Office

Rational Rose: 1. Introduction: Rational Rose is an Object-Oriented Unified Modeling Language (UML) software design tool intended for visual modeling and component construction of enterprise-level software applications. It constructs the document as it is being constructed and then generates code in the designer’s choice of à C# à Visual Basic à JAVA à Oracle 8 à CORBA 2.

Features: The two popular features of Rational Rose are: à Iterative development à Round-trip engineering  Iterative Development: This process is also called as Evolutionary Development. Rational Rose allows designers to take advantage of this method because the new application can be created in stages with the output of one iteration becoming the input to the next. This is in contrast to

waterfall development where the whole project is completed from start to finish before a user gets to try it out. à Round Trip Engineering: Then, as the developer begins to understand how the components interact and makes modifications in the design, Rational Rose can perform what is called "round-trip engineering" by going back and updating the rest of the model to ensure the code remains consistent. à Rational Rose is extensible, with downloadable add-ins and third-party partner applications. à It supports COM/DCOM (ActiveX), JavaBeans, and Corba component

standards.

Conclusion: UML does not provide the magic solution to all embedded development problems. However, it is possible to make significant steps to improve the productivity of a developer by using UML model-driven development and robust and powerful OO language. Alleviating the chaos of complex software development is the primary motivation for using UML to describe and build software. Finally, code generation increases UML's value to the developer by reducing errors and improving productivity.

Reference:  Internet: http://en.wikipedia.org/wiki/Unified_Modeling_Language http://en.wikipedia.org/wiki/Sparx_Enterprise_Architect http://www.sparxsystems.com/products/ea/features.html http://jude.change-vision.com/judeweb/download/try_uml.html http://en.wikipedia.org/wiki/Rational_Software#Rose

Related Documents

Uml
July 2020 31
Uml
October 2019 64
Uml
November 2019 50
Uml
May 2020 30
Uml
July 2020 18
Uml
December 2019 44