File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes OO, Patterns, UML and Refactoring and the fly likes importance of UML Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Engineering » OO, Patterns, UML and Refactoring
Bookmark "importance of UML" Watch "importance of UML" New topic

importance of UML

Kevin Knowles
Ranch Hand

Joined: Dec 29, 2002
Posts: 45
I'm still not sure I understand what UML is, much less the importance of it. It seems to be very important in Java, but it is hardly ever mentioned in C or other languages. Can someone please explain what it is why it is so important in java.
John Hembree
hired gun
Ranch Hand

Joined: Mar 07, 2003
Posts: 250

From UML Overview
The OMG's Unified Modeling Language� (UML�) helps you specify, visualize, and document models of software systems, including their structure and design, in a way that meets all of these requirements. (You can use UML for business modeling and modeling of other non-software systems too.) Using any one of the large number of UML-based tools on the market, you can analyze your future application's requirements and design a solution that meets them, representing the results using UML's twelve standard diagram types.
You can model just about any type of application, running on any type and combination of hardware, operating system, programming language, and network, in UML. Its flexibility lets you model distributed applications that use just about any middleware on the market. Built upon the MOF� metamodel which defines class and operation as fundamental concepts, it's a natural fit for object-oriented languages and environments such as C++, Java, and the recent C#, but you can use it to model non-OO applications as well in, for example, Fortran, VB, or COBOL. UML Profiles (that is, subsets of UML tailored for specific purposes) help you model Transactional, Real-time, and Fault-Tolerant systems in a natural way.
You can do other useful things with UML too: For example, some tools analyze existing source code (or, some claim, object code!) and reverse-engineer it into a set of UML diagrams. Another example: In spite of UML's focus on design rather than execution, some tools on the market execute UML models, typically in one of two ways: Some tools execute your model interpretively in a way that lets you confirm that it really does what you want, but without the scalability and speed that you'll need in your deployed application. Other tools (typically designed to work only within a restricted application domain such as telecommunications or finance) generate program language code from UML, producing most of a bug-free, deployable application that runs quickly if the code generator incorporates best-practice scalable patterns for, e.g., transactional database operations or other common program tasks. Our final entry in this category: A number of tools on the market generate Test and Verification Suites from UML models.
Dirk Schreckmann

Joined: Dec 10, 2001
Posts: 7023
Moving this to the OO, Patterns, UML and Refactoring forum...

[How To Ask Good Questions] [JavaRanch FAQ Wiki] [JavaRanch Radio]
Matt O'Toole

Joined: Feb 02, 2002
Posts: 23
For a good example of UML and how it can be used, look at the online demo of Poseidon, a UML code generating tool. Go to the Gentleware homepage, and look for the "view online demo" link in the upper right corner.
I agree. Here's the link:
subject: importance of UML
It's not a secret anymore!