Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is UML for object oriented only?

Tags:

oop

uml

Currently, during my thesis there was hot debate about "Is UML only made for OO development only?" I've searched from some sources, that give many arguments about it. For myself, I believe that not all UML diagrams are made only for OO system/software development i.e (state diagram). So, I hope for your enlighten, and please give strong theory that support your answer from books or international journal not from wiki or web.

please help me out, I don't know what to say

Many thanks

like image 392
Briant Stevanus Avatar asked Mar 19 '15 13:03

Briant Stevanus


2 Answers

Historically, the three founders (Ivar, Grady and James) all came from backgrounds as OO-software development methodologists when they decided to join their three respective methodologies into what later became UML 1.0.

However, the language as such is not restricted to modelling software. Ivar himself demonstrated its applicability for modelling business situations as early as 1994 (three years before UML 1.0 was release) in the "The object advantage" book and many others have done the same after this.

Moreover, UML is not restricted to model something based on an object oriented stand point. One might argue that object orientation is a methodological perspective you have on the problem domain; not just a name for a type of programming languages. Hence, you might model your problem domain using OO techniques and then implement a system based on that analysis using procedural languages and vice verse. And in all situations you can use UML, but maybe you would employ different elements and diagram types in different situations.

Finally, many people miss to make the distinction between notation and language, on the one hand, and how and what you do with the notation, on the other hand. UML is a language! what you "write" in this language is up to you; english is a language, but no one would make the claim that you could only write novels and not scientific text or recipes for food using english.

UML is a language; object orientation is a philosophical perspective on how to understand and structure a problem.

If you are interested in these sorts of questions, you might be interested in a course that I am delivering in advanced conceptual modeling using UML on Udemy. You can get it with a 90% discount using this link: https://www.udemy.com/get-your-concepts-straight/?couponCode=CONCEPTS29

Cheers!

like image 104
Per Avatar answered Oct 04 '22 21:10

Per


I think UML is independent of the type of language. For example, in you can implement c language project with UML and also c++ for the same UML. As you can use structure and use of pointers in C for defining class like structure.

All structural and behavioral UML diagram can be put into non-object oriented code also.

like image 44
s_ag Avatar answered Oct 04 '22 23:10

s_ag