SlideShare a Scribd company logo
1 of 38
CS 690
REPORT-03
Unified Modeling Language
1
Reference:http://www.csfa47.edu.ar/user/sitio/acerca_de_uml.php
Contents
2
Contents Slide No.
Introduction 3-4
Main features/functions/characteristics 5-9
Real World Examples 10-16
SWOT:Advantage 17-18
SWOT:Weaknesses/Potential Problems 19-20
OPTIONAL Part 21-30
References Recommended 31-37
1.1 Introduction(Basics)
 UML stands for Unified Modeling Language.
 UML is a graphical language for visualizing, specifying, constructing, and documenting the
artifacts of a software-intensive system.
 The UML offers a standard way to write a system's blueprints, including conceptual
things such as business processes and system functions
 UML is different from the other common programming languages like C++, Java, COBOL etc.
 The UML is used to define a software system; to detail the artifacts in the system, to document
and construct
 The UML may be used in a variety of ways to support a software development methodology (such
as the Rational Unified Process) - but in itself it does not specify that methodology or process.
 Although UML is generally used to model software systems but it is not limited within this
boundary. It is also used to model non software systems as well like process flow in a
manufacturing unit etc.
 UML is not a programming language but tools can be used to generate code in various languages
using UML diagrams. UML has a direct relation with object oriented analysis and design
3
1.2 Introduction(History)
 Object oriented concepts were introduced
much earlier than UML. So at that time
there were no standard methodologies to
organize and consolidate the object
oriented development. At that point of time
UML came into picture.
 UML was created by Object Management
Group (OMG) and UML 1.0 specification draft
was proposed to the OMG in January 1997.
 In 1997 UML was adopted as a standard by
the Object Management Group (OMG), and
has been managed by this organization ever
since
 In 2005 the Unified Modeling Language
was also published by the International
Organization for Standardization (ISO) as
an approved ISO standard.
4
Reference:https://en.wikipedia.org/wiki/Unified_Modeling_Language
2. Main Features
5
Features Description
Classifications of
UML
Behavior diagrams. Includes
behavioral features of a system or
business process. This includes
activity, state machine, and use
case diagrams as well as the four
interaction diagrams.
Structure diagrams. A type of
diagram that depicts the elements
of a specification that are
irrespective of time. This includes
class, composite structure,
component, deployment, object,
and package diagrams
Reference:http://www.sparxsystems.com/uml-tutorial.html
Cont’d
6
Types of
Models in
UML
Functional Model
Showcases the functionality of the system from the user's Point of View.
Object Model
Showcases the structure and substructure of the system using objects
Dynamic Model
Showcases the internal behavior of the system.
Most widely
used UML
Diagrams
Use Case Diagram
Class Diagram
Sequence Diagram
Collaboration Diagram
State Diagram
Note:This is only a subset of diagrams … but are most widely used
Cont’d
7
Use Case Diagram (core
components)
Actors: A role that a user plays with respect to the system, including
human users and other systems. e.g., inanimate physical objects
(e.g. robot); an external system that needs some information from
the current system.
Use case: A set of scenarios that describing an interaction between a
user and a system, including alternatives
System boundary: rectangle diagram representing the boundary
between the actors and the system.
Reference:http://www.tutorialspoint.com/uml/uml_overview.htm
Cont’d
8
Class diagram Used for describing structure and
behavior in the use cases
Provide a conceptual model of the
system in terms of entities and their
relationships
Used for requirement capture, end-user
interaction
Detailed class diagrams are used for
developers
Sequence
Diagram
Sequence diagrams demonstrate the
behavior of objects in a use case by
describing the objects and the messages
they pass.
The horizontal dimension shows the
objects participating in the interaction.
The vertical arrangement of messages
indicates their order.
Reference:http://www.omg.org
Cont’d
9
State Diagrams State Diagrams show the sequences of states an object goes
through during its life cycle in response to stimuli, together
with its responses and actions; an abstraction of all possible
behaviors.
Take the example of online shopping system.
Reference:
3.Real World Examples
10
Examples Description
Information system
Handle large amounts of data with complex
relationships, which are stored in relational
or object databases
Technical system Handle control technical equipment such as
telecommunications, military systems, or
industrial processes. They must handle the
special interfaces of the equipment and have
less standard software than Information
system. The are often real-time system.
Embedded real-time systems Execute on simple hardware embedded in
some other equipment such as a mobile
phone, car, household appliance, etc.
Cont’d
11
Distributed System Distributed on a number of machines where
data Is transferred easily from one machine
to another. They require synchronized
communication mechanisms to ensure data
integrity and are often built upon object
mechanisms such as CORBA,
COM/DCOM, or Java Beans/RMI
System software Define the technical infrastructure that other
software uses. Operating system. Databases.
Business system Describe the goals, the resources (human,
computers), the rules (laws, business
strategies, policies), and the actual work in
the business
3.1.Real-Time Embedded Systems
12
The UML was designed as a graphical notation for use with object-oriented systems and
applications. Because of its popularity, now it is emerging in the field of embedded systems
design as a modeling language. The UML notation is useful in capturing the requirements,
documenting the structure, decomposing into objects and defining relationships between objects.
It is a notational language that is very useful in modelling the real-time embedded systems.
Like: designing of electromechanical systems that are controlled by multi-processors
 Low-Current Sytems Prototyping
 Bikes Modeling
 Motors Modeling Etc.
Reference:http:/www.engineering.com
3.2.Real-Time Information system
13
 Accounts Systems
 Business Management Systems
 Health Care Systems
 Social Networking Systems
 Softwares developed for database management
 Security systems
 Brain Mapping Systems
Reference:http:/www.engineering.com
3.3.Real Time Technical Systems
14
 Complicated Technical systems need modeling
 Example In Amazon there are Robots not man power for packaging
They used UML for creating prototypes
Like :
Robots
Aircrafts
Rockets are complex technical
Systems designed through
UML
Reference:http:/technoworld.com
3.4.Real Time Distributed systems
15
 telephone networks and cellular networks,
 computer networks such as the Internet,
 wireless sensor networks,
 routing algorithms;
 World wide web and peer-to-peer networks,
 massively multiplayer online games and virtual reality communities,
 distributed databases and distributed database management systems,
 network file systems,
Reference:http:/www.w7cloud.com
3.4.Real World Applications of UML in Fields
16
 Enterprise information systems
 Banking and financial services
 Telecommunications
 Defense
 Transportation
 Retail
 Science and Research
 Distributed Web-based services
 Agriculture
Reference:http:/engineeringworld.com
4. SWOT: Advantages and Benefits
17
# Advantages Brief explanation
1 Easy to Organize Use case diagrams help to organize the requirements. The
notations for a use case represents a cohesive set of interaction
between the user and the system. By simply referring to a use case
, a complex set of interactions can be accessed easily thereby
simplifying the discussions
2 Reduces
documentation
Use case documents complete the functional requirement. Thus
for the projects using use case diagrams no additional document
needed.
3 Use case diagram is
strength
The ability to show an abstract actor that deals with the common
user is one of the major strength of use case diagrams.
4 Cost Efficient The right decisions are made before you are
given poorly written code. Less overall costs
Cont’d
18
5 Easy to Understand UML breaks the complex system into discrete pieces that can be
understood easily
Complex system can be understood by the disparate developers
who are working on different platforms
6 Standards UML is the current standard for programming in object-oriented
programming languages. When creating classes and other objects
with relationships between each other, UML is what is used to
visually describe these relationships. Because it is used as a standard,
it is widely understood and well known. This makes it easy for a new
programmer to step into a project and be productive from day one.
7 Planning Tool UML helps to plan a program before the programming takes place.
In some tools used to model UML, the tool will generate code based
on the classes set up in the model. This can help reduce overhead
during the implementation stage of any program.
Additionally, a UML model diagram is easy to change, whereas
reprogramming a section of code can be tedious and time-
consuming.
5.SWOT:Weaknesses/Potential Problems
19
# Advantages Brief explanation
1 Specification Still no specification for modeling of user interfaces.
2 Poor for distributed systems No way to formally specify serialization and object
persistence. E.g. no way to specify that an object resides on
a server process and shared among instances of a running
process.
3 Synchronizing code with
models is difficult
Using multiple models/diagrams makes it difficult to keep
them consistent with each other and the code and much
code has to be added by hand
4 Unclear Who Benefits UML is not advantageous to software developers, mainly
because software developers work with code, not pictures
or diagrams. UML diagrams may be beneficial to project
managers or executives to illustrate how a software tool
will work, but it might be easier to draw the diagram out on
a whiteboard or piece of paper, rather than take the time to
learn the UML language.
Cont’d
20
5 Too Much Emphasis on Design UML places much emphasis on design, which can be
problematic for some developers and companies
Companies cannot solve every problem with a
software tool using a UML diagram -- eventually, they
just have to start coding and testing
6 Time One disadvantage some developers might find when
using UML is the time it takes to manage and maintain
UML diagrams. To work properly, UML diagrams must
be synchronized with the software code, which requires
time to set up and maintain, and adds work to a
software development project. Small companies and
independent developers might not be able to handle the
added amount of work required to synchronize the
code.
6. List of Open Source(Optional)
21
# Source tool Exact Web address
to download that
tool
OPTIONAL: Test tool and provide your evaluation of
this tool
1 ArgoUML
http://argouml.tig
ris.org/
The diagramming features are easy to use and provides
useful assistance in the formatting / aligning process.
The nicer aspects of ArgoUML lie in its design assistance
features.
The design evaluation and checklists provides valuable
help to make sure that your models are well formed. This
will be specifically attractive for people that are learning
UML diagrams or don't use them continuously.
Cont’d
22
2 UMLet http://www.umlet.c
om/
UMLet is a UML tool aimed at providing a fast way of
creating UML diagrams. UML elements are modified
using text input instead of pop-up dialogs. Users can easily
tailor UMLet to their modeling needs. UMLet supports a
variety of UML diagram types: class diagrams, use case
diagrams, sequence diagrams, state diagrams, deployment
diagrams, activity diagrams
3 StarUML http://staruml.io/ StarUML supports many shorthands in Quick Edit to
create elements and relationships at once
StarUML is compatible with UML 2.x standard and
supports totally 11 kinds of UML diagrams
4 Umbrello https://umbrello.kd
e.org/
Umbrello UML Modeller is a Unified Modelling
Language (UML) diagram program based on KDE
Technology.
UML allows you to create diagrams of software and other
systems in a standard format to document or design the
structure of your programs.
Cont’d
23
www.rational.com Rational Rose By IBM Rational Rose supports an
internal scripting and
extension language
BasicScript. BasicScript is
compliant with the VBA
(Visual Basic for Applications)
language. VBA is considered
to be the standard Microsoft
Windows extension and
scripting language for
applications. Applications like
Microsoft Office, Visio,
AutoCAD for NT, and many
other Windows applications
all use VBA as their extension
language
http://www.borland.com/togethe
r/index.html
TogetherSoft Control Center,
Borland
Cont’d
24
Reference: http://www.cs.utah.edu/~ndykman/Draft.pdf
6.1.(Optional)Why AgroUML?
25
• Systems: platform independent (Java Runtime Environment)
• Exports to: XMI, PNG, SVG, GIF, JPEG, EPS, PS
Supports:
o Class Diagram
o Use Case Diagram
o Sequence Diagram
o Collaboration Diagram
o State Diagram
o Activity Diagram
o Deployment Diagram
• Code generation for: C++, C#, Java, PHP4, PHP5, SQL
• Code reverse engineering (Code to UML): Java, C++, C#, IDL (including relationships)
• Code generation from UML Code to UML Exports to XMI UI a bit crowded, harder for
beginners
Reference: http://argouml.tigris.org/
6.2.(Optional)Why UMLet?
26
• Systems: platform independent (Java Runtime Environment)
• Exports to: PNG, PDF, SVG, JPEG, EPS, BMP
• Supports:
o Class Diagram
o Use Case Diagram
o Interaction Diagram
o State Diagram
o Activity Diagram
o Deployment Diagram
o Context Diagram
o code reverse engineering (Code to UML): Java (only classes, no relationships)
 It also works as eclipse plugin no code generation from UML not very user friendlySummary:
This tool offers no functionality which could not also be found in most other UML tools. But it is more difficult to use, so I
would not personally recommend it.
Notes: attributes, operations, etc. cannot be changed via GUI, but via a custom Properties file (which may be edited directly in the
GUI, but you do need to learn the layout of this file, which means reading the documentation)
Reference: http://www.umlet.com/
6.3.(Optional)Why StarUML?
27
Features of StarUML are as follows:
 Accurate UML standard model
 Open software model format
 True MDA support
 Excellent extensibility
 Software model verification function
 Useful Add-Ins
Reference: http://staruml.sourceforge.net
6.4.(Optional)Why Umbrello?
28
Umbrello UML Modeller supports the following types:
 Class Diagram
 Sequence Diagram
 Collaboration Diagram
 Use Case Diagram
 State Diagram
 Activity Diagram
 Component Diagram
 Deployment Diagram
 Entity Relationship Diagram
Reference: http://umbrello.kde.org/
6.5.(Optional)Why Rational Rose?
29
 Capture information visually and directly - provides a visual modeling language to improve
creation of database applications.
 Evolve database design into the application’s logic - allows you to visualize the database
architecture and how it ties to the application.
 Integrate database design with development - unifies the project team by providing common UML
model execution and notation.
Reference: http://www-03.ibm.com/software/products/en/datamodeler
6.6.(Optional)Why TogetherSoft(TCC) ?
30
 Togethersoft is a very good product that combines the design and development environment.
 But Togethersoft's target is Java, which is unique in this industry, and it does a very good job as
well. I would say, from a pure object modeling point of view.
 TCC has an integrated Java development environment.
 Togethersoft Control Center isn't just a UML modeling tool. It is a full development platform that
supports the software development process from requirements through testing. It supports bi-
directional updates between UML models and project source, so changes that you make to a
model simultaneously update the corresponding project source (and vice-versa).
 It can retro-engineer an existing project from its source which is very handy when you're trying to
understand an undocumented application (which, of course, never happens).
 Control Center is built in Java, so it runs under any Java-enabled platform.
 TCC has a full-featured editor that is somewhat reminiscent of IntelliJ's IDEA.
Reference: http://codeverge.com/sybase.powerdesigner.general/togethersoft-control-center-
6.0/819005
7. References
31
Topic of articles, papers or
reports
Exact Web address to
download that article
Topics covered
UML Based Object-oriented
Development: Experience with
Inexperienced Developers
https://bib.irb.hr/datoteka/
85049.055_C28.pdf
UML in practise
Development process
Reverse engineering
Experiments with inexperience
developers
Unified Modeling Language
(UML) for Database Systems
and
Computer Applications
http://www.sersc.org/jour
nals/IJDTA/vol5_no1/9.pd
f
UML for database system
Database systems
Uml diagram for DB syatem
Using UML for Automatic
Test Generation
https://www.research.ibm.
com/haifa/projects/verific
ation/mdt/papers/uml4test
gen.pdf
Architecture
The Agedis modelling language
Chooding UML
Target language
Class diagrams
Object diagrams
State diagrams
Cont’d
32
UML-Based Integration Testing https://www4.in.tum.de/publ/pa
pers/meisinge00.pdf
Modeling components in UML.
Establishing a Global
Behavioral Model
Test Generation and Execution
Implementatiopn of TnT
Evaluation of example
Software Design Testing Based
on UML Diagrams
http://www.ijarcsse.com/docs/p
apers/Special_Issue/icadet2014/
Lord_38.pdf
The UML
UML Based Software Testing
Related work
Proposed technique
Data extraction from UML
8.1.1 Our Own Conclusion
33
 UML amounts to a combination of EER diagrams, statecharts and other diagrammatic notations.
 Much of this is useful for conceptual modeling. Some diagrams, however, are appropriate for
software modeling only.
 The great contribution of UML is that for the first time ever, there is a modeling standard; this has
led to compatibility and portability of conceptual models.
 The great weakness of UML is that it was designed by committee, and some design decisions
were based on political, rather than technical considerations.
 Another major weakness of UML is that it is (still largely) informal. Informal models are not
scalable!
 Unified Modeling Language - UML.
 A modeling language, not a method.
 Provides a graphical representation that allows developers and architects to model a software
system before the system is ever built.
 Analogy - an architect creating a blueprint before a house or office building is ever built.
8.1.2.Summary
34
 The UML does not specify a methodology/process. Therefore, saying ``We use the UML
methodology is incorrect.'‘
 Structure Diagram
 Class Diagram (shows the static, structural, model elements, mainly classes and types)
 Composite Structure Diagram (shows the internal structure and interaction points of a class
or component or use case)
 Object Diagram (shows objects and their relationships at a point in time)
 Package Diagram (shows the grouping of model elements into packages and the
releationships between packages)
 Component Diagram (shows components — e.g., source code, binaries, media — and their
dependencies)
 Deployment Diagram (shows the configuration of processing devices and which components
run on them)
8.1.3.Summary
35
 Behavior Diagram
 Use Case Diagram (shows actors and use cases)
 Activity Diagram (shows processes)
 State Machine Diagram (shows behavior in terms of state transitions)
 Interaction Diagram
 Sequence Diagram (shows an interaction by laying out objects across the top and running
their lifelines down the diagram, wit messages exchanged between lifelines to make the
sequence of messages clear)
 Communication Diagram (shows an interaction where the layout of objects is arbitrary
and the sequence of messages is shown by numbering them)
 Interaction Overview Diagram (groups interaction diagrams into a high level activity
diagram)
 Timing Diagram (shows state changes over time)
8.2.1.Our Own Recommendations(Part-A)
36
A)Should companies and businesses invest financial and human resources, deploy and use Unified Modeling Language?
Yes,The good thing about UML is It can model any kind of software(like Linux kernel, open office, any web application, etc)
or only can model a software which uses Object Oriented language(Java, c++, etc).
Only thing is we should decide what kind of modeling methods is used for giant open source projects(Linux kernel, Openoffice.org,
Firefox, Apache http, MySQL, Eclipse, VIM, etc.
Yes,We think modeling is good way to figure out software so, UML need to be used.
Yes,UML is first and foremost a communication tool, it helps you communicate ideas to other people on your team (or to
yourself three months in the future), and as such, should be evaluated based on how easy it can express whatever you have in mind.
Yes,Being language-independent, UML cannot be used to express the expected, idiomatic way to use a given API or module, yet
this is an essential part of the design.
No,Here is a pitfall as well UML cannot easily capture some specific properties of data structures that are relied on by
algorithms
Yes,Finally, languages may have features that are not represented elegantly in UML at all - for instance, Objective Caml module
functors, or closures in any language that has them.
Yes, Engineers use standards for building bridges, so that they do not fall over (at least in developed countries); to ensure that the
purchaser and the supplier mean the same thing when they draw a symbol for a standard bolt; and we use standards in designing
i.e. UML to in the same way.
Yes,For small UML diagrams Gaphor is recommended, and for complex UML tool with a lot of functionality ArgoUML
recommended.Use tools as per the requirements of projects
8.2.2Our Own Recommendations(Part-B)
37
B)Should we (CS/IS Department) recommend Unified Modeling Language for active use in CS/IS curricula, for example, as a
separate DIS or Advanced Topics course?
Yes, A software engineer should know how to choose a right tool for the particular software modeling.
Yes, A software engineer should know UML Modeling Standard.
Yes, A software engineer should have knowledge of all kinds of UML Tools available and their usage.
Yes, UML is being used for fighter aircraft, banks and financial institutions and govt. depts. in developed countries for Information
Modeling, Relational Database Modeling, Function Modeling .
So, people involved in Information Modeling, Relational Database Modeling, Function Modeling and architecting the softwares
of all types should have knowledge in UML
Yes, To represent complex things in simplified manner, UML is primary requirement to learn.
Yes, Learning UML helps promote a deeper understanding of the system, exposing opportunities for simplification and re-use
Manage risk.
Yes, UML is for the communication of the desired structure and behaviour of a system between analysts, architects, developers,
stakeholders and users.
Yes, Learning UML helps visualisation and control of system architecture.
Final words:
As explained in real world examples above all kinds of fields require the usage of UML: Accounts Systems, Business Management
Systems, Health Care Systems, Social Networking Systems, Software's developed for database management, Security systems, Brain
Mapping Systems.
Credits(Content help+Pictures)
 http://www.sparxsystems.com/uml-tutorial.html
 https://en.wikipedia.org/wiki/Unified_Modeling_Language
 http://www.tutorialspoint.com/uml/uml_overview.htm
 https://www.google.co.in/imgres?imgurl=http://www.softwaretestinggenius.com/photos/TA45.JPG&imgrefurl=http://m.softwaretes
tinggenius.com/?page%3Ddetails%26url%3Distqb-advanced-level-test-analyst-and-technical-test-analyst-exam-sample-paper-q-
41-to-
50&h=200&w=542&tbnid=es08jcJVDhGLBM:&docid=p8frQms2eHpeyM&ei=qKCYVpn6OIGLuATl8Y7QDg&tbm=isch&ved=
0ahUKEwiZ7ubLpqvKAhWBBY4KHeW4A-oQMwg3KAcwBw
 http://www-306.ibm.com/software/rational/uml/
 http://www.togethersoft.com/services/practical_guides/umlonlinecourse/
 http://www.ehow.com/info_8584011_list-advantages-uml.html
 http://www.methodsandtools.com/tools/tools.php?argouml
 http://www.soi.wide.ad.jp/class/20040034/slides/11/25.html
 http://www.omg.org
 http://www.rational.com/uml/index.jsp
 UML Distilled - http://www.awl.com/cseng/titles/0-201-32563-2
38

More Related Content

What's hot

Uml class diagram and packages ppt for dot net
Uml class diagram and packages ppt for dot netUml class diagram and packages ppt for dot net
Uml class diagram and packages ppt for dot netmekhap
 
Basic Behavioral Modeling
Basic Behavioral ModelingBasic Behavioral Modeling
Basic Behavioral ModelingAMITJain879
 
UML and Software Modeling Tools.pptx
UML and Software Modeling Tools.pptxUML and Software Modeling Tools.pptx
UML and Software Modeling Tools.pptxNwabueze Obioma
 
Uml diagrams
Uml diagramsUml diagrams
Uml diagramsbarney92
 
Unit 4- Software Engineering System Model Notes
Unit 4- Software Engineering System Model Notes Unit 4- Software Engineering System Model Notes
Unit 4- Software Engineering System Model Notes arvind pandey
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentationanasz3z3
 
Elaboration and domain model
Elaboration and domain modelElaboration and domain model
Elaboration and domain modelVignesh Saravanan
 
SE_Lec 05_System Modelling and Context Model
SE_Lec 05_System Modelling and Context ModelSE_Lec 05_System Modelling and Context Model
SE_Lec 05_System Modelling and Context ModelAmr E. Mohamed
 
UML- Unified Modeling Language
UML- Unified Modeling LanguageUML- Unified Modeling Language
UML- Unified Modeling LanguageShahzad
 
Uml in software engineering
Uml in software engineeringUml in software engineering
Uml in software engineeringMubashir Jutt
 
UML for Aspect Oriented Design
UML for Aspect Oriented DesignUML for Aspect Oriented Design
UML for Aspect Oriented DesignEdison Lascano
 
Class diagram presentation
Class diagram presentationClass diagram presentation
Class diagram presentationSayedFarhan110
 
analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with umlsabin kafle
 

What's hot (20)

Uml
UmlUml
Uml
 
UML
UMLUML
UML
 
Uml class diagram and packages ppt for dot net
Uml class diagram and packages ppt for dot netUml class diagram and packages ppt for dot net
Uml class diagram and packages ppt for dot net
 
Use Case Modeling
Use Case ModelingUse Case Modeling
Use Case Modeling
 
Basic Behavioral Modeling
Basic Behavioral ModelingBasic Behavioral Modeling
Basic Behavioral Modeling
 
UML and Software Modeling Tools.pptx
UML and Software Modeling Tools.pptxUML and Software Modeling Tools.pptx
UML and Software Modeling Tools.pptx
 
Uml diagrams
Uml diagramsUml diagrams
Uml diagrams
 
Unit 4- Software Engineering System Model Notes
Unit 4- Software Engineering System Model Notes Unit 4- Software Engineering System Model Notes
Unit 4- Software Engineering System Model Notes
 
Uml
UmlUml
Uml
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
 
Uml class Diagram
Uml class DiagramUml class Diagram
Uml class Diagram
 
Elaboration and domain model
Elaboration and domain modelElaboration and domain model
Elaboration and domain model
 
SE_Lec 05_System Modelling and Context Model
SE_Lec 05_System Modelling and Context ModelSE_Lec 05_System Modelling and Context Model
SE_Lec 05_System Modelling and Context Model
 
UML- Unified Modeling Language
UML- Unified Modeling LanguageUML- Unified Modeling Language
UML- Unified Modeling Language
 
Uml in software engineering
Uml in software engineeringUml in software engineering
Uml in software engineering
 
UML for Aspect Oriented Design
UML for Aspect Oriented DesignUML for Aspect Oriented Design
UML for Aspect Oriented Design
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
 
Class diagram presentation
Class diagram presentationClass diagram presentation
Class diagram presentation
 
Design Patterns
Design PatternsDesign Patterns
Design Patterns
 
analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with uml
 

Viewers also liked

Papyrus for RealTime - Executable Modeling on Eclipse
Papyrus for RealTime - Executable Modeling on EclipsePapyrus for RealTime - Executable Modeling on Eclipse
Papyrus for RealTime - Executable Modeling on EclipseCharles Rivet
 
EMF Compare 2.0: Scaling to Millions (updated)
EMF Compare 2.0: Scaling to Millions (updated)EMF Compare 2.0: Scaling to Millions (updated)
EMF Compare 2.0: Scaling to Millions (updated)mikaelbarbero
 
MoDisco EclipseCon2010
MoDisco EclipseCon2010MoDisco EclipseCon2010
MoDisco EclipseCon2010fmadiot
 
Textual Modeling Framework Xtext
Textual Modeling Framework XtextTextual Modeling Framework Xtext
Textual Modeling Framework XtextSebastian Zarnekow
 
Unified modeling language diagrams
Unified modeling language diagramsUnified modeling language diagrams
Unified modeling language diagramsAlaa Ahmed
 
You need to extend your models? EMF Facet vs. EMF Profiles
You need to extend your models? EMF Facet vs. EMF ProfilesYou need to extend your models? EMF Facet vs. EMF Profiles
You need to extend your models? EMF Facet vs. EMF ProfilesPhilip Langer
 
Industrial and Academic Experiences with a User Interaction Modeling Language...
Industrial and Academic Experiences with a User Interaction Modeling Language...Industrial and Academic Experiences with a User Interaction Modeling Language...
Industrial and Academic Experiences with a User Interaction Modeling Language...Marco Brambilla
 
The Unbearable Stupidity of Modeling
The Unbearable Stupidity of ModelingThe Unbearable Stupidity of Modeling
The Unbearable Stupidity of ModelingPeter Friese
 
Domain-Specific Languages
Domain-Specific LanguagesDomain-Specific Languages
Domain-Specific LanguagesJavier Canovas
 
Real world DSL - making technical and business people speaking the same language
Real world DSL - making technical and business people speaking the same languageReal world DSL - making technical and business people speaking the same language
Real world DSL - making technical and business people speaking the same languageMario Fusco
 
IFML - The interaction flow modeling language, the OMG standard for UI modeli...
IFML - The interaction flow modeling language, the OMG standard for UI modeli...IFML - The interaction flow modeling language, the OMG standard for UI modeli...
IFML - The interaction flow modeling language, the OMG standard for UI modeli...Marco Brambilla
 
Model-Driven Software Engineering in Practice - Chapter 1 - Introduction
Model-Driven Software Engineering in Practice - Chapter 1 - IntroductionModel-Driven Software Engineering in Practice - Chapter 1 - Introduction
Model-Driven Software Engineering in Practice - Chapter 1 - IntroductionMarco Brambilla
 
MDD - Desarrollo de software dirigido por modelos que funciona (de verdad!)
MDD - Desarrollo de software dirigido por modelos que funciona (de verdad!)MDD - Desarrollo de software dirigido por modelos que funciona (de verdad!)
MDD - Desarrollo de software dirigido por modelos que funciona (de verdad!)Jordi Cabot
 
Programming in UML: An Introduction to fUML and Alf
Programming in UML: An Introduction to fUML and AlfProgramming in UML: An Introduction to fUML and Alf
Programming in UML: An Introduction to fUML and AlfEd Seidewitz
 
ATL tutorial - EclipseCon 2008
ATL tutorial - EclipseCon 2008ATL tutorial - EclipseCon 2008
ATL tutorial - EclipseCon 2008William Piers
 

Viewers also liked (19)

Papyrus for RealTime - Executable Modeling on Eclipse
Papyrus for RealTime - Executable Modeling on EclipsePapyrus for RealTime - Executable Modeling on Eclipse
Papyrus for RealTime - Executable Modeling on Eclipse
 
EMF Compare 2.0: Scaling to Millions (updated)
EMF Compare 2.0: Scaling to Millions (updated)EMF Compare 2.0: Scaling to Millions (updated)
EMF Compare 2.0: Scaling to Millions (updated)
 
MoDisco EclipseCon2010
MoDisco EclipseCon2010MoDisco EclipseCon2010
MoDisco EclipseCon2010
 
Textual Modeling Framework Xtext
Textual Modeling Framework XtextTextual Modeling Framework Xtext
Textual Modeling Framework Xtext
 
Unified modeling language diagrams
Unified modeling language diagramsUnified modeling language diagrams
Unified modeling language diagrams
 
Acceleo Code Generation
Acceleo Code GenerationAcceleo Code Generation
Acceleo Code Generation
 
You need to extend your models? EMF Facet vs. EMF Profiles
You need to extend your models? EMF Facet vs. EMF ProfilesYou need to extend your models? EMF Facet vs. EMF Profiles
You need to extend your models? EMF Facet vs. EMF Profiles
 
Industrial and Academic Experiences with a User Interaction Modeling Language...
Industrial and Academic Experiences with a User Interaction Modeling Language...Industrial and Academic Experiences with a User Interaction Modeling Language...
Industrial and Academic Experiences with a User Interaction Modeling Language...
 
The Unbearable Stupidity of Modeling
The Unbearable Stupidity of ModelingThe Unbearable Stupidity of Modeling
The Unbearable Stupidity of Modeling
 
Eugenia
EugeniaEugenia
Eugenia
 
Domain-Specific Languages
Domain-Specific LanguagesDomain-Specific Languages
Domain-Specific Languages
 
Introducing MDSD
Introducing MDSDIntroducing MDSD
Introducing MDSD
 
Real world DSL - making technical and business people speaking the same language
Real world DSL - making technical and business people speaking the same languageReal world DSL - making technical and business people speaking the same language
Real world DSL - making technical and business people speaking the same language
 
IFML - The interaction flow modeling language, the OMG standard for UI modeli...
IFML - The interaction flow modeling language, the OMG standard for UI modeli...IFML - The interaction flow modeling language, the OMG standard for UI modeli...
IFML - The interaction flow modeling language, the OMG standard for UI modeli...
 
Model-Driven Software Engineering in Practice - Chapter 1 - Introduction
Model-Driven Software Engineering in Practice - Chapter 1 - IntroductionModel-Driven Software Engineering in Practice - Chapter 1 - Introduction
Model-Driven Software Engineering in Practice - Chapter 1 - Introduction
 
MDD - Desarrollo de software dirigido por modelos que funciona (de verdad!)
MDD - Desarrollo de software dirigido por modelos que funciona (de verdad!)MDD - Desarrollo de software dirigido por modelos que funciona (de verdad!)
MDD - Desarrollo de software dirigido por modelos que funciona (de verdad!)
 
Programming in UML: An Introduction to fUML and Alf
Programming in UML: An Introduction to fUML and AlfProgramming in UML: An Introduction to fUML and Alf
Programming in UML: An Introduction to fUML and Alf
 
ATL tutorial - EclipseCon 2008
ATL tutorial - EclipseCon 2008ATL tutorial - EclipseCon 2008
ATL tutorial - EclipseCon 2008
 
OCL tutorial
OCL tutorial OCL tutorial
OCL tutorial
 

Similar to Unified Modeling Language

an analysis and new methodology for reverse engineering of uml behavioral
an analysis and new methodology for reverse engineering of uml behavioralan analysis and new methodology for reverse engineering of uml behavioral
an analysis and new methodology for reverse engineering of uml behavioralINFOGAIN PUBLICATION
 
Application Of UML In Real-Time Embedded Systems
Application Of UML In Real-Time Embedded SystemsApplication Of UML In Real-Time Embedded Systems
Application Of UML In Real-Time Embedded Systemsijseajournal
 
Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfMeagGhn
 
Cs 2401 Unit 1
Cs 2401 Unit 1Cs 2401 Unit 1
Cs 2401 Unit 1Susan Cox
 
Object Oriented Database
Object Oriented DatabaseObject Oriented Database
Object Oriented DatabaseMegan Espinoza
 
Ooad Overview
Ooad OverviewOoad Overview
Ooad OverviewDang Tuan
 
ekshitha rev 2 (1).pptx
ekshitha rev 2 (1).pptxekshitha rev 2 (1).pptx
ekshitha rev 2 (1).pptxAbdulsyed37
 
4.o o design tools=uml -_lecture 4
4.o o design tools=uml -_lecture 44.o o design tools=uml -_lecture 4
4.o o design tools=uml -_lecture 4Warui Maina
 
18540PhDreport.pdf
18540PhDreport.pdf18540PhDreport.pdf
18540PhDreport.pdfTaraTrends
 
Modeling software with UML
Modeling software with UMLModeling software with UML
Modeling software with UML6020 peaks
 
Development of Mobile Cloud Applications using UML
Development of Mobile Cloud Applications using UML Development of Mobile Cloud Applications using UML
Development of Mobile Cloud Applications using UML IJECEIAES
 
General Methodology for developing UML models from UI
General Methodology for developing UML models from UIGeneral Methodology for developing UML models from UI
General Methodology for developing UML models from UIijwscjournal
 
General Methodology for developing UML models from UI
General Methodology for developing UML models from UIGeneral Methodology for developing UML models from UI
General Methodology for developing UML models from UIijwscjournal
 
General Methodology for developing UML models from UI
General Methodology for developing UML models from UIGeneral Methodology for developing UML models from UI
General Methodology for developing UML models from UIijwscjournal
 

Similar to Unified Modeling Language (20)

an analysis and new methodology for reverse engineering of uml behavioral
an analysis and new methodology for reverse engineering of uml behavioralan analysis and new methodology for reverse engineering of uml behavioral
an analysis and new methodology for reverse engineering of uml behavioral
 
Chapter1
Chapter1Chapter1
Chapter1
 
Application Of UML In Real-Time Embedded Systems
Application Of UML In Real-Time Embedded SystemsApplication Of UML In Real-Time Embedded Systems
Application Of UML In Real-Time Embedded Systems
 
Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdf
 
l1_introuml.pdf
l1_introuml.pdfl1_introuml.pdf
l1_introuml.pdf
 
Cs 2401 Unit 1
Cs 2401 Unit 1Cs 2401 Unit 1
Cs 2401 Unit 1
 
Object oriented analysis and design unit- iii
Object oriented analysis and design unit- iiiObject oriented analysis and design unit- iii
Object oriented analysis and design unit- iii
 
Object Oriented Database
Object Oriented DatabaseObject Oriented Database
Object Oriented Database
 
Ooad Overview
Ooad OverviewOoad Overview
Ooad Overview
 
Ooad overview
Ooad overviewOoad overview
Ooad overview
 
ekshitha rev 2 (1).pptx
ekshitha rev 2 (1).pptxekshitha rev 2 (1).pptx
ekshitha rev 2 (1).pptx
 
4.o o design tools=uml -_lecture 4
4.o o design tools=uml -_lecture 44.o o design tools=uml -_lecture 4
4.o o design tools=uml -_lecture 4
 
Apostila UML
Apostila UMLApostila UML
Apostila UML
 
18540PhDreport.pdf
18540PhDreport.pdf18540PhDreport.pdf
18540PhDreport.pdf
 
UML Notation
UML NotationUML Notation
UML Notation
 
Modeling software with UML
Modeling software with UMLModeling software with UML
Modeling software with UML
 
Development of Mobile Cloud Applications using UML
Development of Mobile Cloud Applications using UML Development of Mobile Cloud Applications using UML
Development of Mobile Cloud Applications using UML
 
General Methodology for developing UML models from UI
General Methodology for developing UML models from UIGeneral Methodology for developing UML models from UI
General Methodology for developing UML models from UI
 
General Methodology for developing UML models from UI
General Methodology for developing UML models from UIGeneral Methodology for developing UML models from UI
General Methodology for developing UML models from UI
 
General Methodology for developing UML models from UI
General Methodology for developing UML models from UIGeneral Methodology for developing UML models from UI
General Methodology for developing UML models from UI
 

Recently uploaded

Electronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfElectronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfme23b1001
 
computer application and construction management
computer application and construction managementcomputer application and construction management
computer application and construction managementMariconPadriquez1
 
Vishratwadi & Ghorpadi Bridge Tender documents
Vishratwadi & Ghorpadi Bridge Tender documentsVishratwadi & Ghorpadi Bridge Tender documents
Vishratwadi & Ghorpadi Bridge Tender documentsSachinPawar510423
 
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncWhy does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncssuser2ae721
 
lifi-technology with integration of IOT.pptx
lifi-technology with integration of IOT.pptxlifi-technology with integration of IOT.pptx
lifi-technology with integration of IOT.pptxsomshekarkn64
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AIabhishek36461
 
Introduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHIntroduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHC Sai Kiran
 
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)Dr SOUNDIRARAJ N
 
Correctly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleCorrectly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleAlluxio, Inc.
 
Piping Basic stress analysis by engineering
Piping Basic stress analysis by engineeringPiping Basic stress analysis by engineering
Piping Basic stress analysis by engineeringJuanCarlosMorales19600
 
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfCCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfAsst.prof M.Gokilavani
 
Class 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm SystemClass 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm Systemirfanmechengr
 
Solving The Right Triangles PowerPoint 2.ppt
Solving The Right Triangles PowerPoint 2.pptSolving The Right Triangles PowerPoint 2.ppt
Solving The Right Triangles PowerPoint 2.pptJasonTagapanGulla
 
Indian Dairy Industry Present Status and.ppt
Indian Dairy Industry Present Status and.pptIndian Dairy Industry Present Status and.ppt
Indian Dairy Industry Present Status and.pptMadan Karki
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfAsst.prof M.Gokilavani
 
An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...Chandu841456
 

Recently uploaded (20)

Electronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfElectronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdf
 
computer application and construction management
computer application and construction managementcomputer application and construction management
computer application and construction management
 
Vishratwadi & Ghorpadi Bridge Tender documents
Vishratwadi & Ghorpadi Bridge Tender documentsVishratwadi & Ghorpadi Bridge Tender documents
Vishratwadi & Ghorpadi Bridge Tender documents
 
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncWhy does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
 
lifi-technology with integration of IOT.pptx
lifi-technology with integration of IOT.pptxlifi-technology with integration of IOT.pptx
lifi-technology with integration of IOT.pptx
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AI
 
Introduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHIntroduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECH
 
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
 
Correctly Loading Incremental Data at Scale
Correctly Loading Incremental Data at ScaleCorrectly Loading Incremental Data at Scale
Correctly Loading Incremental Data at Scale
 
Piping Basic stress analysis by engineering
Piping Basic stress analysis by engineeringPiping Basic stress analysis by engineering
Piping Basic stress analysis by engineering
 
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfCCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
 
Class 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm SystemClass 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm System
 
Solving The Right Triangles PowerPoint 2.ppt
Solving The Right Triangles PowerPoint 2.pptSolving The Right Triangles PowerPoint 2.ppt
Solving The Right Triangles PowerPoint 2.ppt
 
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
young call girls in Green Park🔝 9953056974 🔝 escort Service
young call girls in Green Park🔝 9953056974 🔝 escort Serviceyoung call girls in Green Park🔝 9953056974 🔝 escort Service
young call girls in Green Park🔝 9953056974 🔝 escort Service
 
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptxExploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
 
Indian Dairy Industry Present Status and.ppt
Indian Dairy Industry Present Status and.pptIndian Dairy Industry Present Status and.ppt
Indian Dairy Industry Present Status and.ppt
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
 
An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...
 

Unified Modeling Language

  • 1. CS 690 REPORT-03 Unified Modeling Language 1 Reference:http://www.csfa47.edu.ar/user/sitio/acerca_de_uml.php
  • 2. Contents 2 Contents Slide No. Introduction 3-4 Main features/functions/characteristics 5-9 Real World Examples 10-16 SWOT:Advantage 17-18 SWOT:Weaknesses/Potential Problems 19-20 OPTIONAL Part 21-30 References Recommended 31-37
  • 3. 1.1 Introduction(Basics)  UML stands for Unified Modeling Language.  UML is a graphical language for visualizing, specifying, constructing, and documenting the artifacts of a software-intensive system.  The UML offers a standard way to write a system's blueprints, including conceptual things such as business processes and system functions  UML is different from the other common programming languages like C++, Java, COBOL etc.  The UML is used to define a software system; to detail the artifacts in the system, to document and construct  The UML may be used in a variety of ways to support a software development methodology (such as the Rational Unified Process) - but in itself it does not specify that methodology or process.  Although UML is generally used to model software systems but it is not limited within this boundary. It is also used to model non software systems as well like process flow in a manufacturing unit etc.  UML is not a programming language but tools can be used to generate code in various languages using UML diagrams. UML has a direct relation with object oriented analysis and design 3
  • 4. 1.2 Introduction(History)  Object oriented concepts were introduced much earlier than UML. So at that time there were no standard methodologies to organize and consolidate the object oriented development. At that point of time UML came into picture.  UML was created by Object Management Group (OMG) and UML 1.0 specification draft was proposed to the OMG in January 1997.  In 1997 UML was adopted as a standard by the Object Management Group (OMG), and has been managed by this organization ever since  In 2005 the Unified Modeling Language was also published by the International Organization for Standardization (ISO) as an approved ISO standard. 4 Reference:https://en.wikipedia.org/wiki/Unified_Modeling_Language
  • 5. 2. Main Features 5 Features Description Classifications of UML Behavior diagrams. Includes behavioral features of a system or business process. This includes activity, state machine, and use case diagrams as well as the four interaction diagrams. Structure diagrams. A type of diagram that depicts the elements of a specification that are irrespective of time. This includes class, composite structure, component, deployment, object, and package diagrams Reference:http://www.sparxsystems.com/uml-tutorial.html
  • 6. Cont’d 6 Types of Models in UML Functional Model Showcases the functionality of the system from the user's Point of View. Object Model Showcases the structure and substructure of the system using objects Dynamic Model Showcases the internal behavior of the system. Most widely used UML Diagrams Use Case Diagram Class Diagram Sequence Diagram Collaboration Diagram State Diagram Note:This is only a subset of diagrams … but are most widely used
  • 7. Cont’d 7 Use Case Diagram (core components) Actors: A role that a user plays with respect to the system, including human users and other systems. e.g., inanimate physical objects (e.g. robot); an external system that needs some information from the current system. Use case: A set of scenarios that describing an interaction between a user and a system, including alternatives System boundary: rectangle diagram representing the boundary between the actors and the system. Reference:http://www.tutorialspoint.com/uml/uml_overview.htm
  • 8. Cont’d 8 Class diagram Used for describing structure and behavior in the use cases Provide a conceptual model of the system in terms of entities and their relationships Used for requirement capture, end-user interaction Detailed class diagrams are used for developers Sequence Diagram Sequence diagrams demonstrate the behavior of objects in a use case by describing the objects and the messages they pass. The horizontal dimension shows the objects participating in the interaction. The vertical arrangement of messages indicates their order. Reference:http://www.omg.org
  • 9. Cont’d 9 State Diagrams State Diagrams show the sequences of states an object goes through during its life cycle in response to stimuli, together with its responses and actions; an abstraction of all possible behaviors. Take the example of online shopping system. Reference:
  • 10. 3.Real World Examples 10 Examples Description Information system Handle large amounts of data with complex relationships, which are stored in relational or object databases Technical system Handle control technical equipment such as telecommunications, military systems, or industrial processes. They must handle the special interfaces of the equipment and have less standard software than Information system. The are often real-time system. Embedded real-time systems Execute on simple hardware embedded in some other equipment such as a mobile phone, car, household appliance, etc.
  • 11. Cont’d 11 Distributed System Distributed on a number of machines where data Is transferred easily from one machine to another. They require synchronized communication mechanisms to ensure data integrity and are often built upon object mechanisms such as CORBA, COM/DCOM, or Java Beans/RMI System software Define the technical infrastructure that other software uses. Operating system. Databases. Business system Describe the goals, the resources (human, computers), the rules (laws, business strategies, policies), and the actual work in the business
  • 12. 3.1.Real-Time Embedded Systems 12 The UML was designed as a graphical notation for use with object-oriented systems and applications. Because of its popularity, now it is emerging in the field of embedded systems design as a modeling language. The UML notation is useful in capturing the requirements, documenting the structure, decomposing into objects and defining relationships between objects. It is a notational language that is very useful in modelling the real-time embedded systems. Like: designing of electromechanical systems that are controlled by multi-processors  Low-Current Sytems Prototyping  Bikes Modeling  Motors Modeling Etc. Reference:http:/www.engineering.com
  • 13. 3.2.Real-Time Information system 13  Accounts Systems  Business Management Systems  Health Care Systems  Social Networking Systems  Softwares developed for database management  Security systems  Brain Mapping Systems Reference:http:/www.engineering.com
  • 14. 3.3.Real Time Technical Systems 14  Complicated Technical systems need modeling  Example In Amazon there are Robots not man power for packaging They used UML for creating prototypes Like : Robots Aircrafts Rockets are complex technical Systems designed through UML Reference:http:/technoworld.com
  • 15. 3.4.Real Time Distributed systems 15  telephone networks and cellular networks,  computer networks such as the Internet,  wireless sensor networks,  routing algorithms;  World wide web and peer-to-peer networks,  massively multiplayer online games and virtual reality communities,  distributed databases and distributed database management systems,  network file systems, Reference:http:/www.w7cloud.com
  • 16. 3.4.Real World Applications of UML in Fields 16  Enterprise information systems  Banking and financial services  Telecommunications  Defense  Transportation  Retail  Science and Research  Distributed Web-based services  Agriculture Reference:http:/engineeringworld.com
  • 17. 4. SWOT: Advantages and Benefits 17 # Advantages Brief explanation 1 Easy to Organize Use case diagrams help to organize the requirements. The notations for a use case represents a cohesive set of interaction between the user and the system. By simply referring to a use case , a complex set of interactions can be accessed easily thereby simplifying the discussions 2 Reduces documentation Use case documents complete the functional requirement. Thus for the projects using use case diagrams no additional document needed. 3 Use case diagram is strength The ability to show an abstract actor that deals with the common user is one of the major strength of use case diagrams. 4 Cost Efficient The right decisions are made before you are given poorly written code. Less overall costs
  • 18. Cont’d 18 5 Easy to Understand UML breaks the complex system into discrete pieces that can be understood easily Complex system can be understood by the disparate developers who are working on different platforms 6 Standards UML is the current standard for programming in object-oriented programming languages. When creating classes and other objects with relationships between each other, UML is what is used to visually describe these relationships. Because it is used as a standard, it is widely understood and well known. This makes it easy for a new programmer to step into a project and be productive from day one. 7 Planning Tool UML helps to plan a program before the programming takes place. In some tools used to model UML, the tool will generate code based on the classes set up in the model. This can help reduce overhead during the implementation stage of any program. Additionally, a UML model diagram is easy to change, whereas reprogramming a section of code can be tedious and time- consuming.
  • 19. 5.SWOT:Weaknesses/Potential Problems 19 # Advantages Brief explanation 1 Specification Still no specification for modeling of user interfaces. 2 Poor for distributed systems No way to formally specify serialization and object persistence. E.g. no way to specify that an object resides on a server process and shared among instances of a running process. 3 Synchronizing code with models is difficult Using multiple models/diagrams makes it difficult to keep them consistent with each other and the code and much code has to be added by hand 4 Unclear Who Benefits UML is not advantageous to software developers, mainly because software developers work with code, not pictures or diagrams. UML diagrams may be beneficial to project managers or executives to illustrate how a software tool will work, but it might be easier to draw the diagram out on a whiteboard or piece of paper, rather than take the time to learn the UML language.
  • 20. Cont’d 20 5 Too Much Emphasis on Design UML places much emphasis on design, which can be problematic for some developers and companies Companies cannot solve every problem with a software tool using a UML diagram -- eventually, they just have to start coding and testing 6 Time One disadvantage some developers might find when using UML is the time it takes to manage and maintain UML diagrams. To work properly, UML diagrams must be synchronized with the software code, which requires time to set up and maintain, and adds work to a software development project. Small companies and independent developers might not be able to handle the added amount of work required to synchronize the code.
  • 21. 6. List of Open Source(Optional) 21 # Source tool Exact Web address to download that tool OPTIONAL: Test tool and provide your evaluation of this tool 1 ArgoUML http://argouml.tig ris.org/ The diagramming features are easy to use and provides useful assistance in the formatting / aligning process. The nicer aspects of ArgoUML lie in its design assistance features. The design evaluation and checklists provides valuable help to make sure that your models are well formed. This will be specifically attractive for people that are learning UML diagrams or don't use them continuously.
  • 22. Cont’d 22 2 UMLet http://www.umlet.c om/ UMLet is a UML tool aimed at providing a fast way of creating UML diagrams. UML elements are modified using text input instead of pop-up dialogs. Users can easily tailor UMLet to their modeling needs. UMLet supports a variety of UML diagram types: class diagrams, use case diagrams, sequence diagrams, state diagrams, deployment diagrams, activity diagrams 3 StarUML http://staruml.io/ StarUML supports many shorthands in Quick Edit to create elements and relationships at once StarUML is compatible with UML 2.x standard and supports totally 11 kinds of UML diagrams 4 Umbrello https://umbrello.kd e.org/ Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology. UML allows you to create diagrams of software and other systems in a standard format to document or design the structure of your programs.
  • 23. Cont’d 23 www.rational.com Rational Rose By IBM Rational Rose supports an internal scripting and extension language BasicScript. BasicScript is compliant with the VBA (Visual Basic for Applications) language. VBA is considered to be the standard Microsoft Windows extension and scripting language for applications. Applications like Microsoft Office, Visio, AutoCAD for NT, and many other Windows applications all use VBA as their extension language http://www.borland.com/togethe r/index.html TogetherSoft Control Center, Borland
  • 25. 6.1.(Optional)Why AgroUML? 25 • Systems: platform independent (Java Runtime Environment) • Exports to: XMI, PNG, SVG, GIF, JPEG, EPS, PS Supports: o Class Diagram o Use Case Diagram o Sequence Diagram o Collaboration Diagram o State Diagram o Activity Diagram o Deployment Diagram • Code generation for: C++, C#, Java, PHP4, PHP5, SQL • Code reverse engineering (Code to UML): Java, C++, C#, IDL (including relationships) • Code generation from UML Code to UML Exports to XMI UI a bit crowded, harder for beginners Reference: http://argouml.tigris.org/
  • 26. 6.2.(Optional)Why UMLet? 26 • Systems: platform independent (Java Runtime Environment) • Exports to: PNG, PDF, SVG, JPEG, EPS, BMP • Supports: o Class Diagram o Use Case Diagram o Interaction Diagram o State Diagram o Activity Diagram o Deployment Diagram o Context Diagram o code reverse engineering (Code to UML): Java (only classes, no relationships)  It also works as eclipse plugin no code generation from UML not very user friendlySummary: This tool offers no functionality which could not also be found in most other UML tools. But it is more difficult to use, so I would not personally recommend it. Notes: attributes, operations, etc. cannot be changed via GUI, but via a custom Properties file (which may be edited directly in the GUI, but you do need to learn the layout of this file, which means reading the documentation) Reference: http://www.umlet.com/
  • 27. 6.3.(Optional)Why StarUML? 27 Features of StarUML are as follows:  Accurate UML standard model  Open software model format  True MDA support  Excellent extensibility  Software model verification function  Useful Add-Ins Reference: http://staruml.sourceforge.net
  • 28. 6.4.(Optional)Why Umbrello? 28 Umbrello UML Modeller supports the following types:  Class Diagram  Sequence Diagram  Collaboration Diagram  Use Case Diagram  State Diagram  Activity Diagram  Component Diagram  Deployment Diagram  Entity Relationship Diagram Reference: http://umbrello.kde.org/
  • 29. 6.5.(Optional)Why Rational Rose? 29  Capture information visually and directly - provides a visual modeling language to improve creation of database applications.  Evolve database design into the application’s logic - allows you to visualize the database architecture and how it ties to the application.  Integrate database design with development - unifies the project team by providing common UML model execution and notation. Reference: http://www-03.ibm.com/software/products/en/datamodeler
  • 30. 6.6.(Optional)Why TogetherSoft(TCC) ? 30  Togethersoft is a very good product that combines the design and development environment.  But Togethersoft's target is Java, which is unique in this industry, and it does a very good job as well. I would say, from a pure object modeling point of view.  TCC has an integrated Java development environment.  Togethersoft Control Center isn't just a UML modeling tool. It is a full development platform that supports the software development process from requirements through testing. It supports bi- directional updates between UML models and project source, so changes that you make to a model simultaneously update the corresponding project source (and vice-versa).  It can retro-engineer an existing project from its source which is very handy when you're trying to understand an undocumented application (which, of course, never happens).  Control Center is built in Java, so it runs under any Java-enabled platform.  TCC has a full-featured editor that is somewhat reminiscent of IntelliJ's IDEA. Reference: http://codeverge.com/sybase.powerdesigner.general/togethersoft-control-center- 6.0/819005
  • 31. 7. References 31 Topic of articles, papers or reports Exact Web address to download that article Topics covered UML Based Object-oriented Development: Experience with Inexperienced Developers https://bib.irb.hr/datoteka/ 85049.055_C28.pdf UML in practise Development process Reverse engineering Experiments with inexperience developers Unified Modeling Language (UML) for Database Systems and Computer Applications http://www.sersc.org/jour nals/IJDTA/vol5_no1/9.pd f UML for database system Database systems Uml diagram for DB syatem Using UML for Automatic Test Generation https://www.research.ibm. com/haifa/projects/verific ation/mdt/papers/uml4test gen.pdf Architecture The Agedis modelling language Chooding UML Target language Class diagrams Object diagrams State diagrams
  • 32. Cont’d 32 UML-Based Integration Testing https://www4.in.tum.de/publ/pa pers/meisinge00.pdf Modeling components in UML. Establishing a Global Behavioral Model Test Generation and Execution Implementatiopn of TnT Evaluation of example Software Design Testing Based on UML Diagrams http://www.ijarcsse.com/docs/p apers/Special_Issue/icadet2014/ Lord_38.pdf The UML UML Based Software Testing Related work Proposed technique Data extraction from UML
  • 33. 8.1.1 Our Own Conclusion 33  UML amounts to a combination of EER diagrams, statecharts and other diagrammatic notations.  Much of this is useful for conceptual modeling. Some diagrams, however, are appropriate for software modeling only.  The great contribution of UML is that for the first time ever, there is a modeling standard; this has led to compatibility and portability of conceptual models.  The great weakness of UML is that it was designed by committee, and some design decisions were based on political, rather than technical considerations.  Another major weakness of UML is that it is (still largely) informal. Informal models are not scalable!  Unified Modeling Language - UML.  A modeling language, not a method.  Provides a graphical representation that allows developers and architects to model a software system before the system is ever built.  Analogy - an architect creating a blueprint before a house or office building is ever built.
  • 34. 8.1.2.Summary 34  The UML does not specify a methodology/process. Therefore, saying ``We use the UML methodology is incorrect.'‘  Structure Diagram  Class Diagram (shows the static, structural, model elements, mainly classes and types)  Composite Structure Diagram (shows the internal structure and interaction points of a class or component or use case)  Object Diagram (shows objects and their relationships at a point in time)  Package Diagram (shows the grouping of model elements into packages and the releationships between packages)  Component Diagram (shows components — e.g., source code, binaries, media — and their dependencies)  Deployment Diagram (shows the configuration of processing devices and which components run on them)
  • 35. 8.1.3.Summary 35  Behavior Diagram  Use Case Diagram (shows actors and use cases)  Activity Diagram (shows processes)  State Machine Diagram (shows behavior in terms of state transitions)  Interaction Diagram  Sequence Diagram (shows an interaction by laying out objects across the top and running their lifelines down the diagram, wit messages exchanged between lifelines to make the sequence of messages clear)  Communication Diagram (shows an interaction where the layout of objects is arbitrary and the sequence of messages is shown by numbering them)  Interaction Overview Diagram (groups interaction diagrams into a high level activity diagram)  Timing Diagram (shows state changes over time)
  • 36. 8.2.1.Our Own Recommendations(Part-A) 36 A)Should companies and businesses invest financial and human resources, deploy and use Unified Modeling Language? Yes,The good thing about UML is It can model any kind of software(like Linux kernel, open office, any web application, etc) or only can model a software which uses Object Oriented language(Java, c++, etc). Only thing is we should decide what kind of modeling methods is used for giant open source projects(Linux kernel, Openoffice.org, Firefox, Apache http, MySQL, Eclipse, VIM, etc. Yes,We think modeling is good way to figure out software so, UML need to be used. Yes,UML is first and foremost a communication tool, it helps you communicate ideas to other people on your team (or to yourself three months in the future), and as such, should be evaluated based on how easy it can express whatever you have in mind. Yes,Being language-independent, UML cannot be used to express the expected, idiomatic way to use a given API or module, yet this is an essential part of the design. No,Here is a pitfall as well UML cannot easily capture some specific properties of data structures that are relied on by algorithms Yes,Finally, languages may have features that are not represented elegantly in UML at all - for instance, Objective Caml module functors, or closures in any language that has them. Yes, Engineers use standards for building bridges, so that they do not fall over (at least in developed countries); to ensure that the purchaser and the supplier mean the same thing when they draw a symbol for a standard bolt; and we use standards in designing i.e. UML to in the same way. Yes,For small UML diagrams Gaphor is recommended, and for complex UML tool with a lot of functionality ArgoUML recommended.Use tools as per the requirements of projects
  • 37. 8.2.2Our Own Recommendations(Part-B) 37 B)Should we (CS/IS Department) recommend Unified Modeling Language for active use in CS/IS curricula, for example, as a separate DIS or Advanced Topics course? Yes, A software engineer should know how to choose a right tool for the particular software modeling. Yes, A software engineer should know UML Modeling Standard. Yes, A software engineer should have knowledge of all kinds of UML Tools available and their usage. Yes, UML is being used for fighter aircraft, banks and financial institutions and govt. depts. in developed countries for Information Modeling, Relational Database Modeling, Function Modeling . So, people involved in Information Modeling, Relational Database Modeling, Function Modeling and architecting the softwares of all types should have knowledge in UML Yes, To represent complex things in simplified manner, UML is primary requirement to learn. Yes, Learning UML helps promote a deeper understanding of the system, exposing opportunities for simplification and re-use Manage risk. Yes, UML is for the communication of the desired structure and behaviour of a system between analysts, architects, developers, stakeholders and users. Yes, Learning UML helps visualisation and control of system architecture. Final words: As explained in real world examples above all kinds of fields require the usage of UML: Accounts Systems, Business Management Systems, Health Care Systems, Social Networking Systems, Software's developed for database management, Security systems, Brain Mapping Systems.
  • 38. Credits(Content help+Pictures)  http://www.sparxsystems.com/uml-tutorial.html  https://en.wikipedia.org/wiki/Unified_Modeling_Language  http://www.tutorialspoint.com/uml/uml_overview.htm  https://www.google.co.in/imgres?imgurl=http://www.softwaretestinggenius.com/photos/TA45.JPG&imgrefurl=http://m.softwaretes tinggenius.com/?page%3Ddetails%26url%3Distqb-advanced-level-test-analyst-and-technical-test-analyst-exam-sample-paper-q- 41-to- 50&h=200&w=542&tbnid=es08jcJVDhGLBM:&docid=p8frQms2eHpeyM&ei=qKCYVpn6OIGLuATl8Y7QDg&tbm=isch&ved= 0ahUKEwiZ7ubLpqvKAhWBBY4KHeW4A-oQMwg3KAcwBw  http://www-306.ibm.com/software/rational/uml/  http://www.togethersoft.com/services/practical_guides/umlonlinecourse/  http://www.ehow.com/info_8584011_list-advantages-uml.html  http://www.methodsandtools.com/tools/tools.php?argouml  http://www.soi.wide.ad.jp/class/20040034/slides/11/25.html  http://www.omg.org  http://www.rational.com/uml/index.jsp  UML Distilled - http://www.awl.com/cseng/titles/0-201-32563-2 38