Questions tagged [uml]

Unified Modeling Language, an object-oriented modeling and specification language used in software engineering. For questions about user-mode Linux, use the [user-mode-linux] tag.

Introduction

The Unified Modeling Language (UML) is a standardized general-purpose modeling language heavily oriented towards the field of object-oriented software engineering.

UML includes a set of graphic notation techniques to create visual models of object-oriented software-intensive systems.

Enter image description here

The UML specifications and their development process is managed by the Object Management Group (OMG).

History

UML has been evolving since the second half of the 1990s and has its roots in the object-oriented methods developed in the late 1980s and early 1990s. It was created and developed by Grady Booch, Ivar Jacobson and James Rumbaugh at Rational Software (AKA the three amigos) during 1994–95, with further development led by them through 1996.

In 1997 it 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. Since then it has been periodically revised to cover the latest revision of UML.

The current release of the specification can always be found at: http://www.omg.org/spec/UML/Current.

Resources

6907 questions
37
votes
4 answers

Difference between StateChart and Activity Diagram

I am really unable to understand the real difference between these 2 diagrams. I mean both of these deal is "states" but I am not sure what deals with what?
itsaboutcode
  • 24,525
  • 45
  • 110
  • 156
36
votes
7 answers

How to generate TypeScript UML class diagrams?

I'm using Visual Studio 2015 to create Web Apps and I just start using TypeScript. As my project gets bigger, I'm wondering if there's a way to get UML diagram of TypeScript code using Visual Studio, extensions or any other free tool.
Mhd
  • 2,778
  • 5
  • 22
  • 59
36
votes
3 answers

"UML Support" Plugin for IntelliJ

I must be missing something. I am reading this article and it says that there is a plugin called "UML Support" which is enabled by default. I didn't have it, so I went to Preferences > Plugins and see no such plugin. Searching didn't show it as…
boltup_im_coding
  • 6,345
  • 6
  • 40
  • 52
35
votes
2 answers

Shortcut for denoting or implying getters and setters in UML class diagrams

In a UML class diagram, if a class has 5 private attributes that need to be mutable and readable, the UML gets pretty ugly with 10 get/set methods even without any of the class' interesting functionality: Ugliness aside, I feel like the UML should…
kdbanman
  • 10,161
  • 10
  • 46
  • 78
34
votes
11 answers

OOP: Which class should own a method?

I’m having trouble understanding how classes relate to their methods. Is a method something that the object does, or something that’s done to it? Or is this a different concept entirely? Specifically, in a library’s software system, should the…
Frungi
  • 506
  • 5
  • 16
33
votes
2 answers

C# code to class diagram

I have a C# solution which has 2 projects in it and I need to generate class diagram from code. I know there is a built-in diagram tool in visual studio, but I'm using 2010 express and it doesn't have that. Is there any free software that is able to…
isklenar
  • 974
  • 2
  • 14
  • 34
33
votes
8 answers

What is the UML analogue to the Data Flow Diagram from Structured Analysis?

Back in the Dark Ages (mid-1980s), I used Data Flow Diagrams from Structured Analysis a fair amount, and found them very useful. My current employer loves UML. I normally use BOUML, which doesn't do non-UML drawings. What is the UML drawing that…
John R. Strohm
  • 7,547
  • 2
  • 28
  • 33
33
votes
6 answers

Association vs. Aggregation

I have reviewed a lot of information about these things, but can't understand what is the difference between them? In Fowler's UML Distilled says that Aggreagation is strictly meaningless, so author recommends not to use it in diagrams. Explain,…
maks
  • 5,911
  • 17
  • 79
  • 123
32
votes
3 answers

UML for C programming language

UML is most commonly used for modelling system by using C++. In my projects C is the implementation language. I am looking for resources on UML strategies which are applicable for C. I want to use UML during design and represent the different…
Andy
  • 1,035
  • 2
  • 9
  • 14
31
votes
3 answers

What is the best source for learning UML?

What is a great way to learn good UML design? How often do you draw diagrams (other than static diagram of classes)? What is the best source for learning it?
rafek
  • 5,464
  • 13
  • 58
  • 72
31
votes
3 answers

How to use Eclipse UML Generators plugin

I have installed Eclipse UML Generators in eclipse Luna using it's update site. The installation was successful, but there is no documentation in how to use the plugin. My objective is to generate class diagrams from java code. Can I achieve it…
DesirePRG
  • 6,122
  • 15
  • 69
  • 114
31
votes
4 answers

When a system should be included as an actor in use case diagram?

I'm making a use case diagram for a new system. I'm wondering when a system should be included as an actor in use case diagram?
Thea
  • 7,879
  • 6
  • 28
  • 40
31
votes
3 answers

Generating UML diagram in Android Studio

What is the best tool for generating UML diagrams from Java source files in Android Studio? Are there any plugins similar to ObjectAid in Android Studio. There is no Visual Paradigm EE shown as described…
Ranjana Dangol
  • 1,319
  • 2
  • 13
  • 24
31
votes
4 answers

Difference between dependency and composition?

Definitions taken from here Dependency Change in structure or behaviour of a class affects the other related class, then there is a dependency between those two classes. It need not be the same vice-versa. When one class contains the other…
danihodovic
  • 1,151
  • 3
  • 18
  • 28
31
votes
1 answer

How to build project-wide UML diagram in IntelliJ IDEA?

Trying to reverse-engineer existing project and it would be of great help to see how classes collaborate/depend on each other. Is there a way to build project-wide UML diagram (or class diagram of any kind) in IntelliJ IDEA using build-in…
Denis Kulagin
  • 8,472
  • 17
  • 60
  • 129