1. Trang chủ
  2. » Thể loại khác

chuong-2_tong-quan-ve-uml1 docx

92 273 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Tổng Quan Về UML
Tác giả James Rumbaugh, Grady Booch, Ivar Jacobson
Người hướng dẫn GV: Phan Bá Trí
Trường học Trường Đại Học Huế
Chuyên ngành Công Nghệ Thông Tin
Thể loại Bài Giảng
Năm xuất bản 2012
Thành phố Huế
Định dạng
Số trang 92
Dung lượng 865,49 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

2.1 GIỚI THIỆU VỀ UML Lưu ý: UML quy định một loạt các ký hiệu và quy tắc để mô hình hoá các pha trong quá trình phát triển phần mềm hướng đối tượng dưới dạng các biểu đồ... 2.1 GIỚI TH

Trang 1

LOGO

PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI

TƯỢNG VỚI UML

GV: Phan Bá Trí Email: trip182@gmail.com Website: www.phanbatri.wordpess.com

Huế, 2/2012

Trang 2

Chương 2: Tổng quan về UML

Nội dung:

Chương này nhằm giới thiệu về ngôn ngữ mô hình hoá thống nhất UML và công cụ phát triển phần mềm hướng đối tượng Nội dung cụ thể

bao gồm:

- Giới thiệu UML

- Các biểu đồ trong UML

- Các bước phân tích thiết kế hướng đối tượng

sử dụng UML

- Giới thiệu bộ công cụ Enterprise Architecture

Trang 3

2.1 GIỚI THIỆU VỀ UML

2.1.1 Lịch sử ra đời của UML

- Cuối những năm 80, đầu những năm 1990, một loạt các phương pháp luận và ngôn ngữ mô hình hóa hướng đối tượng mới ra đời:

+ Booch của Grady Booch

+ OMT của James Rambaugh

+ OOSE của Ivar Jacobson

+ OOA and OOD của Coad và Yordon

Trang 4

2.1.1 Lịch sử ra đời của UML

- UML đầu tiên được đưa ra năm 1997 và sau

đó được chuẩn hoá để trở thành phiên bản 1.0

- Hiện nay chúng ta đang sử dụng ngôn ngữ UML phiên bản 2.0

- Tác giả: James Rumbaugh, Grady Booch và Ivar Jacobson

Trang 5

2.1 GIỚI THIỆU VỀ UML

2.1.2 UML – Ngôn ngữ mô hình hoá hướng đối tượng

- UML (Unified Modelling Language) là ngôn ngữ

mô hình hoá tổng quát được xây dựng:

+ Để đặc tả phần mềm hướng đối tượng

+ Phát triển phần mềm hướng đối tượng

+ Các tài liệu đính kèm trong phát triển phần mềm hướng đối tượng.

+ UML giúp người phát triển hiểu rõ và ra quyết định liên quan đến phần mềm cần xây dựng.

+ UML bao gồm một tập các khái niệm, các ký

hiệu, các biểu đồ và hướng dẫn.

Trang 6

2.1 GIỚI THIỆU VỀ UML

2.1.2 UML – Ngôn ngữ mô hình hoá hướng đối tượng

- UML hỗ trợ xây dựng hệ thống hướng đối tượng dựa trên việc nắm bắt khía cạnh cấu trúc tĩnh và các hành vi động của hệ thống

Trang 8

HÀNH VI ĐỘNG

- Các hành vi động (dynamic behavior) định nghĩa các hoạt động của các đối tượng theo thời gian

- Tương tác giữa các đối tượng hướng tới đích

Trang 9

2.1 GIỚI THIỆU VỀ UML

 Các mục đích của ngôn ngữ mô hình hoá

thống nhất UML:

• Mô hình hoá các hệ thống sử dụng các khái niệm hướng đối tượng

• Thiết lập sự liên hệ từ nhận thức của con

người đến các sự kiện cần mô hình hoá

• Giải quyết vấn đề về mức độ thừa kế trong các hệ thống phức tạp với nhiều ràng buộc khác nhau

• Tạo một ngôn ngữ mô hình hoá có thể sử dụng được bởi người và máy

Trang 10

2.1 GIỚI THIỆU VỀ UML

 Lưu ý:

UML quy định một loạt các ký hiệu và quy tắc

để mô hình hoá các pha trong quá trình phát triển phần mềm hướng đối tượng dưới dạng các biểu đồ

Trang 11

2.1 GIỚI THIỆU VỀ UML

2.1.3 Các khái niệm cơ bản trong UML

a) Khái niệm mô hình

Mô hình là một biểu diễn của sự vật hay một tập các sự vật trong một lĩnh vực áp dụng nào

đó theo một cách khác

Các mô hình thường được xây dựng sao cho

có thể vẽ được thành các biểu đồ dựa trên tập

ký hiệu và quy tắc đã cho

Trang 12

- Thể hiện tư duy về thiết kế hệ thống

- Trợ giúp ra quyết định thiết kế dựa trên việc phân tích yêu cầu

- Tổ chức, tìm kiếm, lọc, kiểm tra và sửa đổi

thông tin về các hệ thống lớn

- Làm chủ được các hệ thống phức tạp

Trang 13

hiệu Biểu diễn là phương pháp thể

hiện mô hình theo cách sao cho có thể nhìn thấy

được

- Ngữ cảnh: mô tả tổ chức bên trong, cách sử dụng

mô hình trong tiến trình phần mềm …

Trang 14

2.1 GIỚI THIỆU VỀ UML

2.1.3 Các khái niệm cơ bản trong UML

b) Khung nhìn (View) trong UML

Một khung nhìn trong UML là một tập con các biểu đồ UML được xây dựng để biểu diễn một khía cạnh nào đó của hệ thống.

Sự phân biệt giữa các khung nhìn là rất linh hoạt Các khung nhìn cùng các biểu đồ tương ứng được mô tả trong bảng sau:

Trang 15

KHUNG NHÌN (VIEW)

Khía cạnh Khung nhìn Các biểu đồ Các khái niệm chính

Cấu trúc

Cài đặt (implementation view)

Biểu đồ thành phần

Thành phần, giao diện, quan hệ phụ thuộc …

Biểu đồ hoạt động

Trạng thái, sự kiện, chuyển tiếp, kết hợp, đồng bộ … Tương tác

Biểu đồ cộng tác

Cộng tác,vai trò , thông điệp …

Quản lý

Trang 16

2.1 GIỚI THIỆU VỀ UML

2.1.3 Các khái niệm cơ bản trong UML

c) Các phần tử mô hình và quan hệ

Một số ký hiệu để mô hình hướng đối tượng thường gặp trong UML được biểu diễn trong hình sau:

Trang 17

Business Obj ects

+ datastore + report1

Business Workflow s

+ Process + Event1 + Input + Result

The Business Context package contains models of all involved stakeholders, mission statements, business goals and physical structure of the business "as-is".

The Business Objects package contains a domain model of all objects of interest and their respective data

The Workflows package documents business processes, drawing on stakeholders, structures and objects defined in the Context and Object packages showing how these work together to provide fundamental business activities.

Mô hình 1: Mô hình tiến trình nghiệp vụ

Trang 18

CÁC PHẦN TỬ MÔ HÌNH

Mô hình 2: Mô hình yêu cầu

custom Requirements Mo

Functional Requirements

+ Business Rules + Features + User Interface

Non-Functional Requirements

+ Performance + Scalability + Security + Persistence + Transport

The Functional Requirements package details behavioral requirements that specify how a proposed system will process and handle information It details the features and rules that must be present to fully implement the functionality desired.

The Non-Functional Requirements package specifies the various operational

parameters that define the environment in which the system will exist These are criteria which define performance levels, scalability, security requirements, backup, disaster recovery and other operational requirements.

Trang 19

CÁC PHẦN TỬ MÔ HÌNH

Mô hình 3: Mô hình use case

uc Use Case Mo

Actors

+ User

Primary Use Cases

+ Use Case1 + Use Case2

Actors are the users of the system being modeled Each Actor will have a well- defined role, and in the context of that role have useful interactions with the system.

A person may perform the role of more than one Actor, although they will only assume one role during one use case interaction.

An Actor role may be performed by a non-human system, such as another computer program.

This package contains use cases which define how an Actor will interact with the proposed system

Each interaction may be specified using scenarios, sequence diagrams, communication diagrams and other dynamic diagrams or textual descriptions which together how the system when viewed as a "black-box" interacts with a user.

Trang 20

CÁC PHẦN TỬ MÔ HÌNH

Mô hình 4: Mô hình miền/ lĩnh vực

class Domain Mo

The Domain Model is a view of all the objects

that make up an area of interest, and their

relationships It is used to capture the significant

objects within a system, organization or any target

domain

Domain Obj ects

+ Class1 + Class2 + Class3

Trang 21

CÁC PHẦN TỬ MÔ HÌNH

Mô hình 5: Mô hình dữ liệu

class Data Mo

Schema1

+ Table1 + Table2 A schema package

contains a logical grouping of tables

Trang 22

+ Interface1

Framew orks

Classes, interfaces and logical components for the new system

Class libraries, API's and other re-usable components

Trang 23

Internal Structures

Connections

The Components package contains modeled components and their structural constituents These include additional exposed interfaces, ports and other gateways or internal structural components The connectivity and internal structure of these are further modeled in the Internal Structures and Connections packages

Internal Structures provide a detailed view of the internal workings and dependencies of a component Using a Composite Structure diagram, they illustrate how the component fulfills its behavioral contracts and provides interface behavior to other components within the system.

The Connections package models the dependencies and connectivity between the various components, and how each is used

as part of a co-operative system to accomplish required tasks Typically, Components expose interfaces and API's which are used by other Components.

Trang 24

CÁC PHẦN TỬ MÔ HÌNH

Mô hình 8: Mô hình triển khai

deployment Deployment Mo

Nodes

+ Clients + Devices + Servers

Artifacts

Topology

The Nodes package contains models of all the processors, devices and hardware components that are required to be deployed or utilized in the final implementation of the modeled system.

The Artifacts package contains models of all software and related components that will be deployed onto the Nodes.

The Topology package models the connectivity, networks, physical locations and spatial characteristics of the system to

be implemented

Trang 25

CÁC PHẦN TỬ MÔ HÌNH

Mô hình 9: Mô hình kiểm thử

custom Test Model

The Test Model describes and maintains a catalogue of tests, test plans and results that are executed against the current model.

Test Plans

Test Cases

Trang 26

+ Build

Trang 27

CÁC PHẦN TỬ MÔ HÌNH

Mô hình 11: Mô hình dự án

act Proj ect Mo

The Project Model details the overall project plan, phases, milestones and resourcing requirements for the current project

Release Plan

Resources

Trang 28

CÁC PHẦN TỬ MÔ HÌNH

Mô hình 12: Mô hình giao diện người sử dụng

custom User Interface Mo

Primary Forms

+ Screen1 + Screen2

Administrativ e Forms

Help System

+ Content + Help + Index + Search

Main screens and pages exposed by the system

Management and reference data screens and data entry forms

Screens and pages providing user assistance

Trang 29

MỐI QUAN HỆ

Hình 1: Một số dạng quan hệ trong UML

Quan hệ phụ thuộc Quan hệ tổng quát Quan hệ liên kết Quan hệ kết tập

Trang 30

2.2 BIỂU ĐỒ UML

2.2.1 Biểu đồ use case

Mục đích:

- Biểu diễn sơ đồ chức năng của hệ thống

- Biểu đồ use case chỉ ra hệ thống cần thực hiện điều gì, thoả mãn các yêu cầu của người dùng trong hệ thống đó

- Đi kèm với biểu đồ use case là các kịch bản

Trang 31

2.2 BIỂU ĐỒ UML

2.2.2 Biểu đồ lớp

Mục đích:

- Chỉ ra các lớp đối tượng trong hệ thống

- Các thuộc tính và phương thức của từng lớp

và các mối quan hệ giữa những lớp đó

Trang 32

2.2 BIỂU ĐỒ UML

2.2.3 Biểu đồ trạng thái

Mục đích:

- Mô tả các trạng thái mà đối tượng của lớp đó

có thể có (tương ứng với mỗi lớp)

- Sự chuyển tiếp giữa những trạng thái đó

Trang 33

2.2 BIỂU ĐỒ UML

2.2.4 Biểu đồ tương tác

Mục đích:

- Biểu diễn mối liên hệ giữa các đối tượng trong

hệ thống và giữa các đối tượng với các tác nhân bên ngoài

- Có hai loại biểu đồ tương tác:

+ Biểu đồ tuần tự

+ Biểu đồ cộng tác

Trang 34

2.2 BIỂU ĐỒ UML

2.2.4 Biểu đồ tương tác

- Biểu đồ tương tác dạng tuần tự:

và giữa các đối tượng và tác nhân theo thứ

tự thời gian.

và giữa các đối tượng và tác nhân nhưng nhấn mạnh đến vai trò của các đối tượng trong tương tác.

Trang 35

2.2 BIỂU ĐỒ UML

2.2.4 Biểu đồ tương tác

- Biểu đồ tương tác dạng cộng tác:

và giữa các đối tượng và tác nhân nhưng nhấn mạnh đến vai trò của các đối tượng trong tương tác.

Trang 38

- Thành phần nào được cài đặt ở đâu

- Các liên kết vật lý hoặc giao thức truyền thông nào được sử dụng

Trang 40

2.2 BIỂU ĐỒ UML

Biểu đồ mô hình hóa cấu trúc (Structural

Modeling Diagrams): biểu diễn các cấu trúc tĩnh của hệ thống phần mềm được mô hình hoá

Các biểu đồ trong mô hình tĩnh bao gồm:

Trang 41

2.2 BIỂU ĐỒ UML

Biểu đồ mô hình hóa hành vi (Behavioral

Modeling Diagrams): Nắm bắt các hoạt động

và hành vi của hệ thống, sự tương tác giữa các phần tử bên trong và bên ngoài hệ thống

Các biểu đồ trong mô hình động bao gồm:

- Biểu đồ use case

- Biểu đồ tương tác dạng tuần tự

- Biểu đồ tương tác dạng cộng tác

- Biểu đồ trạng thái

- Biểu đồ động

Trang 42

2.2 BIỂU ĐỒ UML

2.2.1 Biểu đồ use case

a) Ý nghĩa

- Biểu đồ use case:

+ Biểu diễn sơ đồ chức năng của hệ thống

+ Tương tác giữa các tác nhân và hệ thống

thông qua các use case

Trang 43

2.2 BIỂU ĐỒ UML

2.2.1 Biểu đồ use case

- Một biểu đồ use case là một tập hợp các tác nhân, các use case và các mối quan hệ giữa chúng

- Các use case trong biểu đồ use case có thể được phân rã theo nhiều mức khác nhau

Trang 44

2.2 BIỂU ĐỒ UML

b) Tập ký hiệu

 Một biểu đồ Use Case chứa các phần tử mô hình biểu thị hệ thống, tác nhân cũng như các trường hợp sử dụng và các mối quan hệ giữa các Use Case

Trang 45

- Hệ thống không nhất thiết

là phần mềm: có thể là một chiếc máy, một doanh nghiệp, trường ĐH,…

Trang 46

2.2 BIỂU ĐỒ UML

- Actor

+ Là người dùng của hệ thống

+ Có thể là một người dùng thực hoặc các hệ thống máy tính khác

+ Thực hiện các use case + Một tác nhân có thể thực hiện nhiều use case và ngược lại một use case cũng có thể được thực hiện bởi nhiều tác nhân

uc Primary

Actor

Trang 48

uc Primary Use Cases

Use Case1 Use Case2

«extend»

Trang 49

+ X phải đáp ứng các điều kiện tiền của Y

trước khi bao hàm nó

uc Primary Use Cases

Trang 50

2.2 BIỂU ĐỒ UML

- Mối quan hệ giữa các use case

 Generalization: (Khái quát)

+ use case này được kế thừa các chức năng

từ use case kia

Trang 51

uc Primary Use Cases

«Dependency»

Trang 52

là đại diện cho việc thực thi sau này (Khách hàng).

uc Primary Use Cases

«Realization»

Trang 53

2.2 BIỂU ĐỒ UML

- Mối quan hệ giữa các Actor

 Generalization: (Khái quát)

Khái quát là một mối quan hệ phân loại giữa phân loại tổng quát và một phân loại chi tiết Mỗi thể hiện của phân loại chi tiết cũng là một thể hiện gián tiếp của phân loại tổng quát Vì vậy, phân loại chi tiết kế thừa các tính năng của phân loại tổng quát

uc Actors

Actor2 Actor1

Trang 54

2.2 BIỂU ĐỒ UML

- Mối quan hệ giữa Actor và use case

 Association: (Liên kết)

Liên kết đặt tả một mối quan hệ ngữ nghĩa mà nó

có thể xảy ra ở các dạng thể hiện Nó có ít nhất hai đầu cuối đại diện bởi các thuộc tính, mỗi trong số đó được liên kết với dạng của kết thúc

uc Primary Use Cases

X

Actor2

Trang 55

2.2 BIỂU ĐỒ UML

2.2.1 Biểu đồ use casec) Ví dụ:

Trang 57

class System

Employee

+ IdCode: int + FirstName: string + LastName: string + Address: string + Salary: long

+ Display() : void + EmployeeDelete(int) : void

Trang 59

2.2 BIỂU ĐỒ UML

2.2.2 Biểu đồ lớp

 Các mối quan hệ trong biểu đồ lớp:

- Quan hệ liên kết (Association): là một sự nối kết giữa các lớp, cũng có nghĩa là sự nối kết giữa các đối tượng của các lớp này

class System

Employee

+ IdCode: int + FirstName: string + LastName: string + Address: string + Salary: long + IdDepartement: int

+ Display() : void + EmployeeDelete(int) : void + SetDay(date) : date

Departement

+ IdDepartement: int + DepartementName: string

+ Display() : void + DepartementAdd(int) : void

Trang 60

2.2 BIỂU ĐỒ UML

2.2.2 Biểu đồ lớp

- Quan hệ khái quát (Generalization):

+ Là mối quan hệ giữa một lớp có các đặc trưng mang tính khái quát cao hơn và một lớp

+ Display() : void + EmployeeDelete(int) : void + SetDay(date) : date

Person

+ Birthday: date + Country: string

+ Display() : void + SetDay(date) : date

Trang 61

2.2 BIỂU ĐỒ UML

2.2.2 Biểu đồ lớp

- Quan hệ kết tập (Aggregation):

+ Là dạng quan hệ mô tả một lớp A là một phần của lớp B và lớp A có thể tồn tại độc lập

+ Quan hệ kết tập được biểu diễn bằng một mũi tên gắn hình thoi rỗng ở đầu hướng về lớp bao hàm

class System

Custumer

+ IdCustomer: int + CustomerName: string + Address: string

+ GetCustomer(int) : void + GetBill(int) : void

Bill

+ IdBii: int + TypeBill: string + IdCustomer: int

+ GetBill(int) : void

Trang 62

class System

Custumer

+ IdCustomer: int + CustomerName: string + Address: string

+ GetCustomer(int) : void + GetBill(int) : void

Address

+ IdAddress: int + StreetName: string + StreetNumber: int + hasProvince: string

+ GetAddress(int) : void

Ngày đăng: 29/06/2014, 14:20

HÌNH ẢNH LIÊN QUAN

Hình 1: Một số dạng quan hệ trong UML - chuong-2_tong-quan-ve-uml1 docx
Hình 1 Một số dạng quan hệ trong UML (Trang 29)

TỪ KHÓA LIÊN QUAN

w