1. Trang chủ
  2. » Công Nghệ Thông Tin

Phân Tích & Thiết Kế Hướng Đối Tượng Sử Dụng UML

64 1,3K 16
Tài liệu được quét OCR, nội dung có thể không chính xác
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

Định dạng
Số trang 64
Dung lượng 372,94 KB

Nội dung

Phân Tích & Thiết Kế Hướng Đối Tượng Sử Dụng UML

Trang 1

Phân Tích & Thiết Kế

Hướng Đối Tượng Sử Dụng UML

Trang 2

Mục tiêu: Giới thiệu về Hướng Đối Tượng

zsTim hiểu các nguyên tắc cơ bản của hướng

ddi tugng (object orientation — OO)

Tìm hiểu các khái niệm cơ bản và các thuật

ngữ của hướng đổi tượng kết hợp với hệ thống ký hiệu của UML

Đánh giá chính xác sức mạnh của OO

Trang 3

Giới thiệu về Hướng Đối Tượng: Các chủ đề

«Các nguyên tắc cơ bản của OO

œsCác khái niệm co ban cua OO eSdac manh cua OO

Trang 4

ÁUu21Ð1©IH dp5 upud uuII Ấ1IJÐI"DOIN oUt UOp Yul] 00 9 ae BF UOIIÐInsdb2ua IọB Buọp uưIi 9 one ©) S > — XO G) ©) S S — tac c UOII2D1JSqQV poy Buơn nnII ^^

Giới thiệu về Hướng Đối Tượng

Dương Anh Đức, 9/2000 OOAD Sử dụng UML - Giới

Trang 5

Thế nào là trừu tượng hoa ? @ Ấ \ ww“ 5 Người bán hàng Khách hàng ean pham Quản lý được độ phức tạp OOAD Sử dụng UML - Giới thiệu về Hướng Đối Tượng

Trang 6

Encapsulation là gì?

»>

Che dấu cài đặt bên trong với clients

42sClients phu thudéc vao interface

Va Tăng tính mềm dẻo OOAD Sử dụng UML - Giới thiệu về Hướng Đối Tượng

Trang 7

Tính đơn thể là gì 2

Phân chia nhỏ một vấn đề phức tạp thành

nhiều phân nhỏ, đơn giản hơn quản lý được

Nhân

Don dat hang

Hệ théng xu ly

ca a ar

Tinh tién

Quản lý được độ phức tạp OOAD Sử dụng UML - Giới thiệu về Hướng Đối Tượng

Trang 8

Sự phân cấp (Hierarchy) là ắ ( Mức độ trừu tượng hố

Tăng mức độ Trừữu tượng

Bria 2

SS

Tài khoản Tài khoản Cổ phiếu Trái phiếu

Tiết kiệm Thanh tốn

Giám mức độ Các phân tử trên cùng một mức phải cĩ cùng Trừu tượng mức độ trừu tượng

OOAD Sử dụng UML - Giới thiệu về Hướng Đối Tượng

Trang 9

Giới thiệu về Hướng Đổi Tượng: Cac chủ đề

Các nguyên tắc cơ bản của OO

œsCác khái niệm cơ bản của OO eSdac manh cua OO

Trang 12

Object la gi 2

œsMột cách khơng hình thức, một đối tượng

biểu diên một thực thể, dạng vật lý, khá: niệm, hoặc phân mềm

zs Thuc thé vat ly Thực thể khái niệm Ị Chemical Process Sa Thực thể phần mềm Linked List OOAD St dung UML — Giới thiệu về Hướng Đối Tượng

Trang 13

Một định nghĩa hiệu quả hơn

Một đối tượng là một khái niệm, sự trừu

tượng, hoặc một vật với giới han ro ràng và cĩ ý nghĩa với một ứng dụng cụ thể

Một đối tượng cĩ:

Trạng thái s Hành vi

Trang 14

Biểu diễn đối tượng »>

Một đối tượng được biểu diễn bởi một hình

chữ nhật với tên được gạch dưới

‘ Professor ProfessorClark Chỉ cĩ tên Class Professor Clark ProfessorClark : Tên class và tên đối tượng

Trang 16

Class la gi?

»>

Class là mơ tả của một nhĩm đối tượng cĩ

chung các thuộc tính (attributes), hành vị

(operations), các mối quan hệ và ngữ nghĩa

Một đối tượng là một thể hiện của class

#MOt class là sự trừu tượng mà trong đĩ:

Nhấn mạnh các tính chất quan trọng œ Bỏ qua các tính chất khác

Nguyên tắc OO : Tritu tuong hod OOAD St dung UML — Giới thiệu về Hướng Đối Tượng

Trang 17

Vi du vé Class Properties Ten Dia diém Thời gian Số tín chỉ Giờ bắt đầu Giờ kết thúc

OOAD Sử dụng UML - Giới thiệu về Hướng Đối Tượng Dương Anh Đức, 9/2000

Class Course

Behavior

Thêm một sinh viên

Huỷ một sinh viên

Trang 18

Biểu diễn 0lass »>

Một class biểu diễn bằng một hình chữ nhật

øồm ba phần Professor Professor Clark

Trang 19

Các phần trong một Class

Một class bao gồm ba phần

Phần đầu chứa tên class

Phần thứ hai cho thấy cấu trúc của lớp

(attributes)

Phần thứ ba cho thấy các hành vi của lớp

(operations) Professor name emplD create( ) Ssave( delete( ) change( )

Trang 20

Các lớp đổi tượng »

Bạn nhìn thay bao nhiéu class?

Trang 21

Quan hệ giữa class và đối tượng

Một class là một định nghĩa trừu tượng của một đổi tượng

Nĩ định nghĩa cấu trúc và hành vi của mỗi đối

tượng trong lớp

Nĩ được dùng như khuơn mẫu để tạo đối tượng

Các đối tượng được nhĩm thành các class

Objects Class su eu _ Professor _ ` -t ` -ýt

Professor Smith $m Professor Mellon

ar’ | ad — nt |

Professor Jones

Trang 23

Thuộc tinh (Attribute) la gi? -CourseOffering number = 101 startTime = 900 endTime = 1100 |CourseOffering number =» startlime : endTime -CourseOffering number = 104 startTime = 1300 endTime = 1500

Trang 25

Hanh vi (Operation) la gi? Class a CourseOffering

Operation XÃ deleteStudent ddStudent

getStartTime getEndTime

OOAD St dung UML — Giới thiệu về Hướng Đối Tượng Dương Anh Đức, 9/2000

Trang 27

Polymorphism là gì?

»>

askha nang che dau nhiều cài đặt khác nhau

bên dưới một giao diện (interface) duy nhất

Nguyên tắc OO: Dong gol

Trang 28

Interface la gi?

slnterface hình thức hố polymorphism

œlnterface hỗ trợ kiến trúc “plug-and-play”

Tube <<interface>> Shape Pyramid Draw Move Scale Rotate

Trang 29

Biểu diễn Interface

"<< 4 ⁄ Biểu diên rút gọn Biểu diễn chính tắc (Class/Stereotype) <<interface>> Shape Draw Move Scale Rotate

OOAD St dung UML — Giới thiệu về Hướng Đối Tượng Dương Anh Đức, 9/2000

Trang 31

Component la gi?

»>

Một phần khơng tầm thường của hệ thống,

gần như độc lập và cĩ thể thay thế được, øiữ một chức năng rõ ràng trong hệ thống

Một component cĩ thể là

4s M6t source code component

Nguyên tắc OO:

#2 M6t run time components hoac |

Dong gol

# M6t executable component

Source File Ï— <<EXE>> <<DLL>> Name hcc] kxecutable Component

—_Namoe——_ Component Name

Interface

Trang 33

Package là gì?

»>

Một package là một cơ chế để tổ chức các

phẫn tử vào thành các nhĩm

Một phần tử trong mơ hình cĩ thể chứa các `

phân tử khác

Nguyên tắc OO:

Package Name NI, thể

Dùng để

œ Tổ chức mơ hình đang phát triển

«Một đơn vị trong quản trị cấu hình

Trang 35

subsystem la gi?

Tổ hợp của một package (cĩ thể chứa các

phân tử khác trong mơ hình) và một class

(cĩ hành vi)

<Hiện thực hố một hoặc nhiều interface

định nghĩa cho hành vi của nĩ

| C) <<subsystem>> Subsystem Name Interface

Nguyên tắc OO: Đĩng gĩi và Tính đơn thể OOAD Sử dụng UML - Giới thiệu về Hướng Đối Tượng

Trang 36

subsystem va Com ponent

zsComponent là thể hiện ở mức vật lý của

một khái niệm trừu tượng trong thiết kế

<Subsystem cĩ thể dùng để biểu diễn các

component trong thiét kế

Design Model Implementation Model

Ld

o= <<subsystem>> Component

Component Name Name

Component

Component

Interface Interface

Nguyên tắc OO: Đĩng gĩi và Tính đơn thể OOAD Sử dụng UML - Giới thiệu về Hướng Đối Tượng

Trang 38

Association (Kết hợp)

Aøøregation (Thu nạp)

Composition (Cấu thành)

zsDependency (Phu thudc)

0.1 Employs

A

e : employer employee

OOAD St dung UML — Giới thiệu về Hướng Đối Tượng

Trang 39

Mối quan hệ: Association

Mơ hình hố một liên kết ngữ nghĩa giữa

cac class Professor University Professor University Employee Employer

OOAD St dung UML — Giới thiệu về Hướng Đối Tượng Dương Anh Đức, 9/2000

Trang 40

Mối quan hệ: Aggregation

Trang 41

Mối quan hệ: Composition

Một dạng aggregation cĩ tính sở hữu cao và cùng chu kỳ sống

Các bộ phận khơng thể sống lâu hơn thực thể

Trang 42

Association: Bản số và Chiều

œsBản số xác định số đối tượng tham gia vào

một mối quan hệ

Số các thể hiện của một class quan hệ với MỘT

thể hiện của một class khác

œ Được chỉ ra ở mỗi đầu của quan hệ association

Association và aggregation mặc định là hai chiều, nhưng người ta thường giới hạn theo một chiêu

Mũi tên được thêm vào để chỉ chiều của mối quan hệ

Trang 43

Association: Bản số

Khơng xác định zChi mot

Khơng hoặc nhiều

Một hoặc nhiều Khơng hoặc một Khoảng được chỉ định

«Các khoảng khơng liên tục

Trang 44

Ví dụ: Bản số và Chiêu Multiplicity by ⁄ ` ne: schedule Student ea Navigation

Trang 45

Mối quan hệ: Dependency

œQuan hệ giữa hai phần tử trong mơ hình mà

thay đổi ở phần tử này cĩ thể gây ra thay đổi ở phần tử kia

Quan hệ “sử dụng”, khơng cấu trúc

Client || ————> Supplier = Client = Supplier ClientPackage

¡ thiệu về Hướng Đối Tượng

SupplierPackage

Trang 46

Moi quan hé: Generalization

(Quan hệ giữa các class trong đĩ một lớp

chia sẻ cậu trúc và/hoặc hành vi cua mot hoặc nhiều class khác

Xác định một sự phân cấp các mức độ trừu

tượng trong đĩ một subclass kể thừa từ một

hoac nhiéu superclass

Đơn kế thừa

œ< Đa kế thừa

«Generalization la quan hé “la mot dang của”

Trang 47

Ví dụ: Đơn kế thừa

Một class kế thừa từ một class khác

Account balance name number Withdraw() CreateStatement Checking Savings Withdraw(} Getinterest() Withdraw()

Trang 48

Ví dụ: Đa kể thừa »>

Một class kế thừa từ nhiều class khác

Flying Thing Animal

Đa kê thừa

AIrplane Helicopter

Chi su dung đa kế thừa khi thật cần, và luơn

phải cẩn thận !

Trang 49

Cai gi được kế thừa? »>

œsMột subclass kế thừa các thuộc tính, hành

vi và các mối quan hệ từ cha nĩ

Một subclass cĩ thể:

Bổ sung thuộc tính, hành vi và các mối quan hệ

Định nghĩa lại các hành vi (nên cẩn thận!)

asCac thuộc tính, hành vi và các mối quan hệ

chung được đặt ở mức cao nhất cĩ thể trong

cấu trúc phân cấp

Sự kế thừa làm nổi bật các điểm tương đồng giữa các class

Trang 50

Ví dụ: Gái gì được kế thừa Superclass (cha) GroundVehicle weight licenseNumber Person Subclass

Trang 51

Mối quan hệ: Realization

Một classifier đĩng vại trị một hợp đồng mà

một classifier khác đồng ý thực hiện

Xuất hiện giữa:

Cac Interface va cac classifier hién thuc ching @ ()— äSS Component ubsystem ấ Interface interface Interface

Cac Use case va cac collaboration hién thuc

Use Case Use-Case Realization

Trang 52

Giới thiệu về Hướng Đổi Tượng: Cac chủ đề

Các nguyên tắc cơ bản của OO

œsCác khái niệm co ban cua OO eSdac manh cua OO

Trang 53

Sức mạnh của Hướng đối tượng

Một mơ hình chung

Cĩ tính dễ dùng lại

Mơ hình phản ánh chính xác thế giơi thực

Na tả chính xác hơn các tập dữ liệu và các xử

s‹ Được phân rã dựa trên các phân chia tự nhiên

Dễ hiểu và dễ bảo trì

Tính ổn định

Trang 54

Một ví dụ đơn giản: SaleS Order System

¬ Ww

Trang 55

Class Diagram cua vi du “ban hang”

SIÍÍ=), buyer item sold shipoing mechanism

Salesperson

Individual OOAD Sử dụng UML - Giới thiệu về Hướng Đối Tượng

Trang 56

Hiệu ứng của sự thay đổi yêu cầu

Giả sử bạn cần

phương tiện vận chuyển mới

seller buyer item sold hipping mechanism

Salesperson | | a | | a J Individual | |

Việc thay đổi liên quan đến việc thêm 1 subclass mới

OOAD Sử dụng UML - Giới thiệu về Hướng Đối Tượng

Trang 57

Giới thiệu về Hướng Đổi Tượng: Cac chủ đề

Các nguyên tắc cơ bản của OO

œsCác khái niệm co ban cua OO eSdac manh cua OO

Trang 58

ác khuơn mẫu (Stereotype)

Phân lớp và mở rộng các phần tử trong hệ

thống ký hiệu UML

Định nghĩa một phần tử của mơ hình mới

dựa trên mot phan tu khac

Cĩ thể áp dụng cho mọi phần tử mơ hình

Được biểu diễn với tên đặt trong dấu << >>

hoặc băng các Icon khác

Trang 59

Vi du: Stereotype <<boundary>> .°" > " <<boundary>> `, ` <<trace>> “sd DesignClass <<Processor>> Processor #1 Frocessor #1

Trang 60

Cac ghi chu (note) »>

Cĩ thể đặt ghi chú cho mọi phần tử UML Ghi chú dùng để thêm thơng tin cho các

lược đồ

Nĩ là hình chữ nhật bị bẻ gĩc

Ghi chú cĩ thể mĩc nối với một phần tử

bằng một đường đứt nét

Trang 61

Cac gia trị đính (Tagged Values)

1à sự mở rộng của các thuộc tính hoặc của

các phần tử UML

Là một số thuộc tính được định nghĩa sẵn

bởi UIML

#5 Persistence

zs Location (chang han client, server)

Là các thuộc tính cĩ thể được tạo bởi các

nhà mơ hình hố UML phục vụ cho mục

đích bất kỳ

PersistentClass

Trang 62

ác ràng buộc (bConstrain†S)

z<Hỗ trợ việc thêm các luật mới hoặc hiệu

chỉnh các luật đang tồn tại

Member | Professor 1 * x Department : { subset} Department Head | |

Trang 63

Cau hoi ơn tập »>

Bốn nguyên tắc cơ bản của OO là gì ‡ Mơ tả

ngắn gọn về mối nguyên tắc

Đối tượng là gì ‡ Class là gì ¿ Những điểm

khác nhau giữa chúng ¢

zsThudéc tinh (Attribute) la øì ‡ zsHanh vi (Operation) la gi ?

zlinterface la gi ? Polymorphism la gi ? zsComponent la gi ?

Trang 64

Câu hỏi ơn tập (tt)

«Package la gi?

zsSubsystem la gi 2? NO

nao vd! Component? nào với package? No nao VGi class?

2Tén cua 4 quan hé UML co ba từng quan hệ

œsMơ tả sức mạnh của OO

asCho biết tên và mơ tác một số cơ chế tổng

quat trong UML

zStereotype là øì? Cho biết tên của một số

Ngày đăng: 12/09/2012, 15:04

HÌNH ẢNH LIÊN QUAN

?Tìm hiểu một số cơ chế mô hình hoá cơ bản - Phân Tích & Thiết Kế  Hướng Đối Tượng Sử Dụng UML
m hiểu một số cơ chế mô hình hoá cơ bản (Trang 2)
Mục tiêu: Giới thiệu về Hướng Đối Tượng - Phân Tích & Thiết Kế  Hướng Đối Tượng Sử Dụng UML
c tiêu: Giới thiệu về Hướng Đối Tượng (Trang 2)
?Các cơ chế mô hình hoá cơ bản của UML - Phân Tích & Thiết Kế  Hướng Đối Tượng Sử Dụng UML
c cơ chế mô hình hoá cơ bản của UML (Trang 3)
?Các cơ chế mô hình hoá cơ bản của UML - Phân Tích & Thiết Kế  Hướng Đối Tượng Sử Dụng UML
c cơ chế mô hình hoá cơ bản của UML (Trang 9)
?Một cách không hình thức, một đối tượng biểu diễn một thực thể, dạng vật lý, khái  niệm, hoặc phần mềm - Phân Tích & Thiết Kế  Hướng Đối Tượng Sử Dụng UML
t cách không hình thức, một đối tượng biểu diễn một thực thể, dạng vật lý, khái niệm, hoặc phần mềm (Trang 12)
?Một đối tượng được biểu diễn bởi một hình - Phân Tích & Thiết Kế  Hướng Đối Tượng Sử Dụng UML
t đối tượng được biểu diễn bởi một hình (Trang 14)
?Một class biểu diễn bằng một hình chữ nhật - Phân Tích & Thiết Kế  Hướng Đối Tượng Sử Dụng UML
t class biểu diễn bằng một hình chữ nhật (Trang 18)
?Interface hình thức hoá polymorphism - Phân Tích & Thiết Kế  Hướng Đối Tượng Sử Dụng UML
nterface hình thức hoá polymorphism (Trang 28)
?Một phần tử trong mô hình có thể chứa các - Phân Tích & Thiết Kế  Hướng Đối Tượng Sử Dụng UML
t phần tử trong mô hình có thể chứa các (Trang 33)
phần tử khác trong mô hình) và một class (có hành vi) - Phân Tích & Thiết Kế  Hướng Đối Tượng Sử Dụng UML
ph ần tử khác trong mô hình) và một class (có hành vi) (Trang 35)
?Mô hình hoá một liên kết ngữ nghĩa giữa - Phân Tích & Thiết Kế  Hướng Đối Tượng Sử Dụng UML
h ình hoá một liên kết ngữ nghĩa giữa (Trang 39)
?Một dạng đặc biệt của association mô hình - Phân Tích & Thiết Kế  Hướng Đối Tượng Sử Dụng UML
t dạng đặc biệt của association mô hình (Trang 40)
?Quan hệ giữa hai phần tử trong mô hình mà - Phân Tích & Thiết Kế  Hướng Đối Tượng Sử Dụng UML
uan hệ giữa hai phần tử trong mô hình mà (Trang 45)
?Các cơ chế mô hình hoá cơ bản của UML - Phân Tích & Thiết Kế  Hướng Đối Tượng Sử Dụng UML
c cơ chế mô hình hoá cơ bản của UML (Trang 52)
?Một mô hình chung - Phân Tích & Thiết Kế  Hướng Đối Tượng Sử Dụng UML
t mô hình chung (Trang 53)
?Các cơ chế mô hình hoá cơ bản của UML - Phân Tích & Thiết Kế  Hướng Đối Tượng Sử Dụng UML
c cơ chế mô hình hoá cơ bản của UML (Trang 57)
?Định nghĩa một phần tử của mô hình mới - Phân Tích & Thiết Kế  Hướng Đối Tượng Sử Dụng UML
nh nghĩa một phần tử của mô hình mới (Trang 58)
?Nó là hình chữ nhật bị bẻ góc - Phân Tích & Thiết Kế  Hướng Đối Tượng Sử Dụng UML
l à hình chữ nhật bị bẻ góc (Trang 60)
nhà mô hình hoá UML phục vụ cho mục đích bất kỳ - Phân Tích & Thiết Kế  Hướng Đối Tượng Sử Dụng UML
nh à mô hình hoá UML phục vụ cho mục đích bất kỳ (Trang 61)

TỪ KHÓA LIÊN QUAN

w