Top Banner
UML and it’s Tools P.Jermila
39
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: UML

UML and it’s Tools

P.Jermila

Page 2: UML

What is UML?

The Unified Modeling Language[UML] is a family of graphical notation, that help in

Describing Designing software systems, particularly

software systems built using Object- Oriented(OO) style. It is a Blueprint for any Software systems which is to be developed.

Page 3: UML

Evolution: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”

• Modifications of 1’st gen methods led to “2’nd Generation methods”

Page 4: UML

Evolution:(contd…)Unification: The historical period between the mid

1990’s and 1997 was characterized by Unification.→ Grady Booch and Jim Rumbaugh-UML 0.8

in October 1995.

→ They joined with Ivor Jacobson and released version 0.9 & 0.91 in October 1996.

→ 3 Amigos

Page 5: UML

Evolution:(contd…) Unification: Rational Software Corporation formed

the UML Consortium.

→ In January 1997, UML Partners collaborated and released a well-defined, expressive, powerful and generally applicable version of UML

“UML 1.0”→ Later in the month of November-UML 1.1 was

released. The Evolution of UML can be given in pictorial

representation…….

Page 6: UML

Evolution:(contd…)

Page 7: UML

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.

Page 8: UML

UML Diagrams:

The Diagrams can be discussed as follows:

Use Case Diagram:It depicts the various operation that a system performs. It contains use cases,

actors and their relationships.

*Sample use-case diagram

Page 9: UML

UML Tools:

The above mentioned diagrams can be implemented effectively.

The UML tools that helps us to manipulate and store these diagrams are as follows:

Enterprise Architect

Visio

Jude

Rational Rose

Let us discuss about them…………

Page 10: UML

Enterprise Architect:

What is an EA?

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

Page 11: UML

Enterprise Architect:

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.

Page 12: UML

Enterprise Architect:

Photo Album:

Page 13: UML

Enterprise Architect:

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) Transformations.

Page 14: UML

Enterprise Architect:

Code Engineering:

Enterprise Architect supports:

• 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.

Page 15: UML

Enterprise Architect:

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.

Page 16: UML

Enterprise Architect:

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.

Page 17: UML

Enterprise Architect:

Advantages of EA over other tools:

• 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.

Page 18: UML

Enterprise Architect:

Advantages of EA over other tools: (contd….)

• 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.

Page 19: UML

Visio:

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 display modify diagrams to meet their business solution needs.

Page 20: UML

Visio:

Photo Album:

Page 21: UML

Visio and Microsoft Office App:• Visio can be used in Microsoft Office Applications like

PowerPoint, 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.

Example: The hyper linking functionality for shapes is a simple yet effective way to use a business flowchart diagram to navigate to a marketing presentation or a Human Resources process document.

Page 22: UML

Non-Conventional uses of Visio:• 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.

Page 23: UML

Non-Conventional uses of Visio: Example:

A great risk analysis and accident reporting tool has been established and is being used by Dutch Shell (the Royal Dutch/Shell Group of Companies). By using Visio process diagrams to map out potential risks and to review mistakes made in oil rigging accidents, the Dutch Shell was able to contribute to the significant reduction in accidents on site.

One of best uses of Visio is in England, where Visio is used in a touch-screen application for bed assignments in a hospital. Nurses and hospital administrators can view and modify bed assignments in wards visually, which makes it easy to maintain maximum capacity.

Page 24: UML

Features Of Visio 2007:

New and improved features include:

• An ITIL template

• Additional sample diagrams

• Auto Connect feature to speed the creation of network diagrams

• Data Graphics to easily illustrate network data

(contd…….)

Page 25: UML

Features Of Visio 2007:

• 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

Page 26: UML

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.

(contd…)

For instance, if you are creating a software module that calculates the taxes for several different companies, you can use Visio to plan out how these taxes will be calculated and how the module will handle calculating them for each company. Even if you are writing a description of the design, you should include a Visio diagram as it’s easier for some people to understand a visual representation than a written one.

Page 27: UML

Advantages Of Visio:

• 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.

(contd…)

An example of such a process would be how a product goes from the design phase to the production phase. While a “warehouse” type example easily comes to mind, another process could be financial in nature, such as how someone applies and gets approved for a credit card or loan.

Page 28: UML

Advantages Of Visio:

• 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.

For example, at the top could be your boss, then you, then the three people that work for you. This also works well for client personnel structures.

Page 29: UML

Jude:

Introduction: JUDE is a UML Modeling tool created by the

Japanese company Change Vision.

JUDE is an acronym of “Java and UML Developers' Environment”.

JUDE 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.

Based on the concept of "Usable from the moment of

installation"

Page 30: UML

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.

(contd…)

Page 31: UML

Fundamental Components Of Jude:• 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 right-drag 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.

Page 32: UML

System Requirements for Jude: Operating System(OS): Windows 2000, XP, Vista

CPU: Pentium III 600MHz or higher

Memory: 256MB or more

Java Environment (Required):

Sun MicrosystemsJ2SE 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)

Page 33: UML

Jude:

Photo Album:

Page 34: UML

Features Of Jude:

There are two versions of JUDE: JUDE/Community and JUDE/Professional . JUDE has following features :

• 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

Page 35: UML

Rational Rose:

What is Rational Rose? 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

Page 36: UML

Rational Rose:

Photo Album:

Page 37: UML

Features:• The two popular features of Rational Rose are: Iterative development Round-trip engineering.

Interactive 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.

Page 38: UML

Features:

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.

Page 39: UML

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.