Beruflich Dokumente
Kultur Dokumente
MODEL?
A model should:
use a standard notation y be understandable by clients and users y lead software engineers to have insights about the system y provide abstraction
y
WHAT IS UML?
UML = Unified Modeling Language A language for visualizing, specifying, constructing and documenting artifacts of software-intensive systems. Examples of artifacts: requirements, architecture, design, source code, test cases, prototypes, etc. UML is suitable for modeling various kinds of systems: 1. enterprise information systems, 2. distributed web-based, 3. real-time embedded system, etc.
HISTORY OF UML
1) Started as a unification of the Booch and Rumbaugh
methods - Unified Method v. 0.8 (1995) 2) Jacobson contributes to produce UML 0.9, 1996 3) UML Partners work with three Amigos to propose UML as a standard modeling language to OMG in 1996. 4) UML partners tender their proposal (UML 1.0) to OMG in 1997, and 9 months later submit final UML 1.1. 5) Minor revision is UML 1.4 adopted in May 2001, and the most recent revision is UML 1.5, March 2003. 6) UML 2.0 released by the end 2004.
Many people think in pictures and a picture can express a lot of ideas in a quick way. UML is a standard way to draw various views of a piece of software: the user's view, the architecture, the internal structure of the software, the source code, and the hardware involved. If you become familiar with the UML you will find that you will be able to think of more ideas and also to work out how good an idea is. You'll be able to share your idea with others. UML is becoming valuable in the job market.
Magic Draw
organization: No Magic Inc. web-site: http://www.nomagic.com/
Poseidon
organization: Gentleware web-site: http://www.gentleware.com/
Rational Rose
organization: IBM web-site: http://www-306.ibm.com/software/rational/
DIAGRAMS OF UML
UML 2.0 has 13 types of diagrams divided into three categories. Six diagram types represent the structure application, seven represent general types of behavior, including four that represent different aspects of interactions. These diagrams can be categorized hierarchically as shown in the following class diagram:
STRUCTURE DIAGRAMS
Structure diagrams emphasize what things must be in the system being modeled:
y
y
y
y y
BEHAVIOR DIAGRAMS
Behavior diagrams emphasize what must happen in the system being modeled:
y
Activity diagram: represents the business and operational step-bystep workflows of components in a system. An activity diagram shows the overall flow of control. State machine diagram: standardized notation to describe many systems, from computer programs to business processes.
Since behavior diagrams illustrate the behavior of system, they are used extensively to describe the functionality of software systems.
INTERACTION DIAGRAMS
Interaction diagrams, a subset of behavior diagrams, emphasize the flow of control and data among the things in the system being modeled:
objects or parts in terms of sequenced messages. They represent a combination of information taken from Class, Sequence, and Use Case Diagrams describing both the static structure and dynamic behavior of a system. Interaction overview diagram: are a type of activity diagram in which the nodes represent interaction diagrams. Sequence diagram: shows how objects communicate with each other in terms of a sequence of messages. Also indicates the lifespan of objects relative to those messages. Timing diagrams: are a specific type of interaction diagram, where the focus is on timing constraints.
Domain Expert
Use Case 1
[yes] Actor B
Actor A
Use Case 2
Deployment Diagram
- 95 : - NT - : - : - -, - -IBM : -, - Window95 Windows95 Windows95
Use Case 3
- .EXE
9: sortByNam ( ) e
Class Diagram
Docum entList F gr ileM fetchDoc( ) sortByNam ) e( add( ) delete( ) Docum ent nam : int e docid : int num ield : int F get( ) open( ) close( ) read( ) sortF ileList( ) create( ) fillDocum ent( ) read() fill the code.. Windows NT 4: create ( ) 8: fillF ( ) ile
-.EXE
mainWnd : MainWnd
1: Doc view request ( ) L
IBM M ainfram e
2: fetchDoc( )
gFile : GrpFile
Repository FileManager
Document
GrpF ile read( ) open( ) create( ) fillF ) ile(
read( )
repository : Repository
document : Document
GraphicFile
File
FileList
f ileMgr : FileMgr
document : Document
gFile repository
Model space
Executable System
ADVANTAGES OF UML
UML is effective for modeling large, complex software systems It is simple to learn for most developers, but provides advanced features for expert analysts, designers and architects. It can specify systems in an implementation-independent manner. 10-20% of the constructs are used 80-90% of the time. Structural modeling specifies a skeleton that can be refined and extended with additional structure and behavior. Use case modeling specifies the functional requirements of system in an object-oriented manner.
THANK YOU!!
COMMENTS & QUESTIONS