Are UML diagrams just for an object oriented approach?

Is there any limitation that UML diagrams can only be drawn for systems with an object-oriented approach? Can we use them for other approaches (eg: procedural)?

+3


source to share


3 answers


Yes, you can definitely use UML for modeling with other approaches such as use diagram or feature diagram are not OOP tied.



+3


source


The discussion in the comments of another exchange made me make a different answer here because I think the other answer is a little short.

In fact, the original authors of the UML, Booch , Jacobson and Rumbaugh in his books ( UML User Guide , Reference Guide UML ) describe the UML in OOP term.

OMG is currently making the evolution of the language in the Meta-Object Facility (MOF) perspective . In the UML 2.5 beta 2 document (page 1), things get thin. The text is rather blurry on the topic.

The original UML versions (UML 1) are based on three leading object-oriented methods (Booch, OMT and OOSE)

(...)

With respect to UML 1, this revision of UML has been improved with significantly more precise definitions, its abstract syntax rules and semantics, a more modular language structure, and significantly improved ability to model large-scale, large-scale systems.

(...)

The purpose of the UML is to provide system architects, software developers, and software developers with tools for analyzing, designing, and implementing software systems, and for modeling business processes and similar processes.



(...)

One of the main goals of UML is to advance the state of the art by enabling interoperability with a visual object modeling tool. However, semantics and syntax agreement is required to enable meaningful exchange of model information between tools.

Depending on the section, OOP is mentioned or not. The "modular structure of the language" can invoke some elements that can be used outside of OOP.

I personally think MOF is a direct reference to OOP (please give me some MOF example outside of any OOP framework). From my point of view, there is no doubt that the UML is genetically difficult for OOP.

However, some UML diagrams ( a state diagram , chart action ) allow represent software systems, avoiding the obvious function of OOP features. This is why the UML can be used for any programming style, but this is not the original use of the UML.

Conclusion

The goal of the UML is OOP, but you can use it for anything: there is no law against it.

+1


source


The UML says "everything is a class" see the MOF section on the OMG page. Some UML diagrams have non-object roots (like usage diagram or activity diagram), but this is now a notation based on the concept of object / classifier. OOP and "classifier system" are not the same ... You can use UML for all models based on classifiers and object concepts (se SysML, UML profile).

0


source







All Articles