CSC/ECE 517 Summer 2008/wiki2 3 uml

From Expertiza_Wiki
Jump to navigation Jump to search

Introduction

UML. There are literally hundreds of pages describing UML on the Web. If someone wants to learn about it, what should (s)he do? Look at the first few hits in Google? I expect we can do better than that. Write a review of the MVC sites on the Web. Which are best for learning about the concept? Which have the most instructive examples? Which are best for explaining how to apply UML in Ruby and Java? If you choose this topic, you should be sure to peruse at least several dozen sites.

What is UML

Introductions and Overviews

These links function are our introduction to the world of UML modeling. If someone didn't know what the subject was or had only the most rudimentary understanding of what was being discussed or asked for these would be a good source of starting information. Several of them serve as basic tutorials into the use and structure of an UML document, going into common components and simple designs. The seven main types of diagrams it is typically used for is Use-Class, Class, Sequence, State Chart, Activity, Component, and Deployment.

Wikipedia UML Article

A Wikipedia article is typically an informative article which gives a brief definition of a subject and the history that is currently associated with it. As only a brief overview, it lacks more than a few basic examples and does not provide any information that is language specific. Further links are provided but each provide only more clarification and less instruction. While generally a fair source of information, though the veracity on debatable or obscure topics can be questioned, it is not recommended as a learning tool.

Practical UML™: A Hands-On Introduction for Developers

The title is a good summary for the the guide. It is a brief description of why UML is important starts this introductions. This is particularly important as it gives us a good idea what we would use UML modeling for and what you gain by using it. It has a brief discussions of use cases, classes, sequences, and other objects that can be modeled using UML. Each includes an illustration and a basic example. It covers a number of the most important uses of UML and how they are implemented. While it may not deal with interpretation or anything language specific, it does deal with most types of objects that are used in Java and Ruby.

Allen Holub's UML Quick Reference

This is less of an introduction for those who are unfamiliar and more a reminder for those who are experienced and need to recall specifics. It covers a large number of specific type of objects and connections you would be using to define the UML. It has a significant coverage of the design symbols that are associated with object oriented and basic modeling. If you were familiar with the proper methods of design, this would certainly be a solid reminder for working with UML. Again this is dealing with object oriented design without any real specific language or interpretation so that it would function with Java and Ruby but is not modified for them.

UML basics: An introduction to the Unified Modeling Language

The article by IBM is a basic overview of UML. It starts with a basic description of UML and then moves into the seven types of diagrams. It covers each in a simple and straight forward manner. Each type includes a description, example, and the necessary elements to construct the diagram and the corresponding UML. The examples are easy to understand though they lack depth. More complicated examples would prove more useful. There are no object oriented aspects beyond the basic discussion of objects to be diagrammed so this doesn't deal with Ruby or Java specifically.

Advanced Topics and Examples

Unified Modeling Language Resource Page

This is the homepage of the organization that defines the UML standard, the Object Management Group. This site contains all the basic information that you would need to implement UML as well as a number of links to other tutorials that are slightly less dense. This is the most comprehensive source of information about UML, though it is not structured in a straight forward manner. There are white papers that detail any aspect of UML that you would wish to know about. The examples are less straight forward than some of the sources when they are presence or absent entirely. A number of more straight forward tutorials are linked from this page which helps partially. No real distinction is drawn between languages for UML, rather focusing on Object Oriented Implementations in general. This could be said to apply to Ruby and Java as they are primarily object oriented languages.

Unified Modeling Language (UML) Tutorial

UML Tutorial

Visual Case Tool - UML Tutorial

Architecture and Design: Unified Modeling Language (UML) Possibly out of date

IBM Rational - Unified Modeling Language

UML 2 Class Diagrams

UML By Examples

Discussion and Related Subjects

Java and UML

UML Forum

Object Oriented Training and UML