1 uml ++ mohamed t ibrahim university of greenwich -uk

22
1 UML ++ Mohamed T IBRAHIM University of Greenwich - UK

Upload: trystan-sermons

Post on 31-Mar-2015

216 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

1

UML ++Mohamed T IBRAHIM

University of Greenwich -UK

Page 2: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

2

Outline • Background – “modelling”

• What is UML?

• Why use it?

• Development methodologies

• A simple Example

Page 3: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

3

Outline • Background – “modelling”

• What is UML?

• Why use it?

• Development methodologies

• A Simple “Forest” Example

Page 4: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

4

Background – “modelling”

• Real world systems“universe of discourse”“Context / domain”

• Information Systems“Computerised or NOT”

• ICT

Real world Systems

models Models the real world

Computers & Networks

Page 5: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

5

What is the purpose of modeling?

• Developing a model for an industrial-strength software system prior to its construction or renovation is as essential as having a blueprint for large building.

• Good models are essential for communication among project teams and to assure architectural soundness.

• As the complexity of systems increase, so does the importance of good modeling techniques.

• There are many additional factors of a project's success, but having a rigorous modeling language standard is one essential factor.

Page 6: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

6

Information Models

• Data Models

• Two main kinds

–ER models / structured paradigm• Kinds of: Entity, relationships,

attributes

–Object Oriented paradigm• Classes and objects

Page 7: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

7

Information Models

–ER models: ERA• an entity: physical or conceptual thing

• E.g. forest, tree, stand, …

• E.g. seminar, course, order, …

Forest Stand Treecontains includes

Forest (id-attr, attr1, attr 2, ……………………..)

Page 8: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

8

Information Models

–Object Oriented paradigm• Classes and objects; associations,

• Encapsulation, inheritance, …

Forest:

Attributes

Methods

Stand:

Attributes

Methods

Tree:

Attributes

Methods

1 1* *

Page 9: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

9

Outline • Background – “modelling”

• What is UML?

• Why use it?

• Development methodologies

• A simple Example

Page 10: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

10

What is UML?• The Unified Modeling Language™

(UML™) is the industry-standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems.

• It simplifies the complex process of software design, making a "blueprint" for construction.

Page 11: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

11

What is UML?• Unified Modelling Language• Graphical & Visual• Models – static & dynamic• Class, object, sequence,

activity, collaboration, interaction, state, deployment, implementation/component

Page 12: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

12

UML• The heart of object-oriented problem solving is

the construction of a model. • The model abstracts the essential details of

the underlying problem from its usually complicated real world.

• Several modeling tools are wrapped under the heading of the UML™, which stands for Unified Modeling Language™.

• At the center of the UML are its nine kinds of modeling diagrams

Page 13: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

13

UML Artifacts

• Use case diagrams • Class diagrams • Object diagrams • Sequence diagrams • Collaboration diagrams • State chart diagrams • Activity diagrams • Component diagrams • Deployment diagrams

Page 14: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

14

Outline • Background – “modelling”

• What is UML?

• Why use it?

• Development methodologies

• A simple Example

Page 15: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

15

Why use it?

• It’s a language to express in a visual form our perception of a real world system, its structure, its behaviour and the constraints that apply to both – static & dynamic

Page 16: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

16

Why use it?• One characteristic of UML - in fact, the one that enables the

widespread industry support that the language enjoys - is that it is methodology-independent.

• Regardless of the methodology that you use to perform your analysis and design, you can use UML to express the results.

• And, using XMI (XML Metadata Interchange, another OMG standard), you can transfer your UML model from one tool into a repository, or into another tool for refinement or the next step in your chosen development process.

• These are the benefits of standardization!

Page 17: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

17

What can you Model with UML?

• UML defines twelve types of diagrams, divided into three categories: Four diagram types represent static application structure; five represent different aspects of dynamic behavior; and three represent ways you can organize and manage your application modules. 

• 4 Structural Diagrams include the Class Diagram, Object Diagram, Component Diagram, and Deployment Diagram. 

• 5 Behavior Diagrams include the Use Case Diagram (used by some methodologies during requirements gathering); Sequence Diagram, Activity Diagram, Collaboration Diagram, and Statechart Diagram. 

• 3 Model Management Diagrams include Packages, Subsystems, and Models. 

Page 18: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

18

Outline • Background – “modelling”

• What is UML?

• Why use it?

• Development methodologies

• A simple Example

Page 19: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

19

Development methodologies

• UML is NOT a methodology

• It can be used with any method, e.g. USDP, RUP, etc

• Methods:

–architecture-centric,

–Use-case driven,

–iterative

Page 20: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

20

Development methodologies

• Models vs. Methodologies: The process of gathering and analyzing an application's requirements, and incorporating them into a program design, is a complex one and the industry currently supports many methodologies

• A methodology defines formal procedures specifying how to go about it.

Page 21: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

21

Outline • Background – “modelling”

• What is UML?

• Why use it?

• Development methodologies

• A Simple Example:

Forest Inventory

Page 22: 1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK

22

An ER Model

Forest Stand Tree

contains includes

Forest (id-attr, attr1, attr 2, ……………………..)

Stand (id-attr, attr1, attr 2, ……………………..)

Tree(aid-attr, attr1, attr 2, ……………………..)