Top Banner
1 Nhóm 2: Hoàng Anh Phương 20111965 Nguyễn Dũng 2011 Phùng Đình Tài 20112106 PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015
32

Bc tkhdt lan2

Jul 19, 2015

Download

Education

Đấy Vợ
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Bc tkhdt lan2

1

Nhóm 2:

Hoàng Anh Phương 20111965

Nguyễn Bá Dũng 2011

Phùng Đình Tài 20112106

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Page 2: Bc tkhdt lan2

2

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Page 3: Bc tkhdt lan2

3

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Page 4: Bc tkhdt lan2

4

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Chương 4. Phân tích hệ thống

4.1 Xác định yêu cầu hệ thống

4.2 Mô hình hóa chức năng

4.3 Mô hình hóa cấu trúc

4.3.1 Giới thiệu

4.3.2 Các phần tử của mô hình cấu trúc

4.3.3 Thẻ CRC ( Class-Responsibility-Collaboration)

4.3.4 Biểu đồ lớp

4.3.5 Xây dựng thẻ CRC và biểu đồ lớp

4.4 Mô hình hóa hoạt động

Page 5: Bc tkhdt lan2

5

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Chương 4. Phân tích hệ thống

4.1 Xác định yêu cầu hệ thống

4.2 Mô hình hóa chức năng (Functional Model)

4.3 Mô hình hóa cấu trúc (Structural Model)

4.3.1 Giới thiệu

4.3.2 Các phần tử của mô hình cấu trúc

4.3.3 Thẻ CRC ( Class-Responsibility-Collaboration)

4.3.4 Biểu đồ lớp

4.3.5 Xây dựng thẻ CRC và biểu đồ lớp

4.4 Mô hình hóa hoạt động

Page 6: Bc tkhdt lan2

6

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Functional Model

Information that is used and created by system

-> How the system will behave -> OK

-> NOT

-> Structural Model

Mục đích của mô hình hóa cấu trúc:

Mô tả cấu trúc dữ liệu được sử dụng trong hệ thống.

Biểu diễn sự vật, ý tưởng hoặc khái niệm (objects) quan

trọng trong hệ thống và mối quan hệ giữa chúng.

Xây dựng hệ thống thuật ngữ chung cho người sử dụng và

người thiết kế hệ thống.

Rút ngắn khoảng cách giữa thế giới thực và phần mềm

Các mô hình cấu trúc: CRC card, classes diagrams, object

diagrams.

Page 7: Bc tkhdt lan2

7

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Chương 4. Phân tích hệ thống

4.1 Xác định yêu cầu hệ thống

4.2 Mô hình hóa chức năng

4.3 Mô hình hóa cấu trúc

4.3.1 Giới thiệu

4.3.2 Các phần tử của mô hình cấu trúc

4.3.3 Thẻ CRC ( Class-Responsibility-Collaboration)

4.3.4 Biểu đồ lớp

4.3.5 Xây dựng thẻ CRC và biểu đồ lớp

4.4 Mô hình hóa hoạt động

Page 8: Bc tkhdt lan2

8

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Lớp (Classes)

Thuộc tính (Attributes)

Hoạt động (Operations)

Quan hệ (Relationships)

Page 9: Bc tkhdt lan2

9

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Khái niệm: Class là một khuôn mẫu chung dùng để tạo ra đối

tượng.

-> Các đối tượng của 1 lớp có cấu trúc và hành vi giống nhau chỉ

khác nhau về dữ liệu trong các thuộc tính của chúng.

Hai kiểu lớp:

Lớp cụ thể (Concrete): Dùng để tạo đối tượng.

Lớp trừu tượng (Abstract): Chỉ mang tính chất khái quát hóa,

không thể dùng để tạo đối tượng.

Ngoài ra, có thể phân loại theo sự vật thực tế mà lớp thể hiện:

Application domain classes, User interface classes, Data

structure classes, File structure classes, Operating environment

classes, Document classes, Multimedia classes.

Page 10: Bc tkhdt lan2

10

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Example

Page 11: Bc tkhdt lan2

11

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Khái niệm: Một thuộc tính là một đơn vị thông tin được lưu

trữ liên quan đến việc mô tả lớp nằm trong phạm vi của

ứng dụng xem xét.

Chỉ đưa vào các thông tin quan trọng liên quan đến

phạm vi ứng dụng quan tâm.

Các thuộc tính nên có kiểu dữ liệu cơ bản: integer,

double, string, date, time, Boolean,…

Các thuộc tính phức tạp nên được biểu diễn bằng

quan hệ (relationship) giữa các lớp

Page 12: Bc tkhdt lan2

12

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Page 13: Bc tkhdt lan2

13

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Page 14: Bc tkhdt lan2

14

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Chương 4. Phân tích hệ thống

4.1 Xác định yêu cầu hệ thống

4.2 Mô hình hóa chức năng

4.3 Mô hình hóa cấu trúc

4.3.1 Giới thiệu

4.3.2 Các phần tử của mô hình cấu trúc

4.3.3 Thẻ CRC ( Class-Responsibility-Collaboration)

4.3.4 Biểu đồ lớp

4.3.5 Xây dựng thẻ CRC và biểu đồ lớp

4.4 Mô hình hóa hoạt động

Page 15: Bc tkhdt lan2

15

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Chương 4. Phân tích hệ thống

4.1 Xác định yêu cầu hệ thống

4.2 Mô hình hóa chức năng

4.3 Mô hình hóa cấu trúc

4.3.1 Giới thiệu

4.3.2 Các phần tử của mô hình cấu trúc

4.3.3 Thẻ CRC ( Class-Responsibility-Collaboration)

4.3.4 Biểu đồ lớp

4.3.5 Xây dựng thẻ CRC và biểu đồ lớp

4.4 Mô hình hóa hoạt động

Page 16: Bc tkhdt lan2

16

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Page 17: Bc tkhdt lan2

17

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Class: thành phần chính của sơ đồ lớp là những lớp, chúng lưutrữ và quản lý thông tin trong hệ thống

Trong suốt pha phân tích: tập người, nơi chốn, sự kiện và đồ vậttrong hệ thống

Trong pha thiết kế: những cửa số, các form, …

Minh họa bởi một hình chữ nhật có 3 khoang: tên, thuộc tính và

thao tác

Page 18: Bc tkhdt lan2

18

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

A CLASS

AN ATTRIBUTE

AN OPERATION

AN ASSOCIATION

Class 1

-attribute

+operation ()

Attribute name/

derived attribute name

operation name ()

1..* 0..1

______verb phrase____

Page 19: Bc tkhdt lan2

19

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Các thuộc tính dẫn suất (Derived attributes)

- /tuổi, có thể tính được bằng ngày sinh và ngày hiện

tại

Visibility

- Public (+)

- Protected (#)

- Private (–)

Page 20: Bc tkhdt lan2

20

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

A public attribute: thuộc tính không bị ẩn bởi tất cả các đối tượng

khác. Như vậy, các đối tượng khác có thể thay đổi giá trị của nó

A protected attribute: là thuộc tính bị ẩn đối với tất cả các lớp trừ

các lớp con trực tiếp của nó.

A private attribute là thuộc tính bị che giấu hoàn toàn (bị ẩn) đối

với mọi lớp khác

Default visibility: tính hiện hữu mặc định của một thuộc tính bình

thường là private

Page 21: Bc tkhdt lan2

21

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Thao tác là những hành động hay chức năng mà một lớp có thểthực hiên

Chú ý các dấu ngoặc () theo sau thao tác

Cũng tương tự như thuộc tính, thao tác cũng có tính hiện hữu (+,

#, -)

Page 22: Bc tkhdt lan2

22

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Constructor

– Để tạo ra đối tượng

Query

– Để tạo thông tin về trạng thái, không thay đổi đối tượng

Update

– Để thay đổi giá trị của một số hay tất cả các thuộc tính của đối

tượng

Page 23: Bc tkhdt lan2

23

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Minh họa mối quan hệ hay liên kết giữa các lớp là một

mục tiêu quan trọng của biểu đồ lớp

Một lớp có thể có quan hệ với lớp khác hay quan hệ

với chính nó.

Mỗi quan hệ được minh họa bởi một đường có mũi tên

và một nhãn hay tên một vài lớp trong quan hệ

Page 24: Bc tkhdt lan2

24

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Giữa các lớp có thể có 3 mối liên quan

Mối liên quan phụ thuộc

Mối liên quan khái quát

Mối liên quan liên kết

Page 25: Bc tkhdt lan2

25

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Thường dùng để diễn đạt một lớp (bên phụ thuộc) chịu

ảnh hưởng của mọi thay đổi trong một lớp khác (bên độc

lập), mà ngược lại thì không nhất thiết. Thường thì bên phụ

thuộc cần dùng bên độc lập để đặc tả hay cài đặt cho

mình. UML biểu diễn mối liên quan phụ thuộc bằng một

mũi tên đứt nét (từ bên phụ thuộc sang bên độc lập).

Page 26: Bc tkhdt lan2

26

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Khái quát hoá (generalization) là sự rút ra các đặcđiểm chung của nhiều lớp để tạo thành một lớpgiản lược hơn gọi là lớp trên (hay cha).

Lớp trừu tượng là các lớp không có cá thể, mà chỉ dùngcho việc mô tả các đặc điểm chung của những lớp dưới

Page 27: Bc tkhdt lan2

27

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Kết nối và liên kết

Giữa các cá thể của hai lớp có thể tồn tại nhữngsự ghép cặp, phản ánh một mối liên hệ nào đótrên thực tế. Gọi đó là một kết nối (link).

Tập hợp những kết nối cùng loại (cùng ý nghĩa)giữa cá thể của hai lớp tạo thành một mối liênquan giữa hai lớp đó, gọi là một liên kết (association).

Page 28: Bc tkhdt lan2

28

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

• Multiplicity of relationship

• Lớp liên kết (Association class)

Page 29: Bc tkhdt lan2

29

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Kết nhập

Mô hình hóa mối quan hệ "toàn thể/bộ phận" giữa mộtlớp các vật thể lớn (cái "toàn thể") với một lớp các vậtthể bé (các "bộ phận") bao gồm trong chúng.

Được biểu diễn bằng cách gắn thêm một hình thoi nhỏvào một đầu của liên kết, phía cái toàn thể

Page 30: Bc tkhdt lan2

30

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Hợp thành Một hợp thành (composition) là một loại kết nhập đặcbiệt với quan hệ sở hữu mạnh hơn, trong đó một bộ phậnchỉ thuộc vào một cái toàn thể duy nhất và cái toàn thểcó trách nhiệm tạo lập và hủy bỏ cái bộ phận. Như vậykhi cái toàn thể bị hủy bỏ thì cái bộ phận cũng buộc phảihủy bỏ theo. Hợp thành được biểu diễn bằng cách thayhình thoi rỗng trong kết nhập bởi hình thoi đặc

Page 31: Bc tkhdt lan2

31

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Biểu đồ đối tượng diễn tả lại cấu trúc tĩnh cho trong biểu đồ lớp, song một cách cụ thể: các đối tượng thay cho các lớp, các kết nối thay cho các liên kết.

Page 32: Bc tkhdt lan2

32

PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Hà Nội, 4/8/2015

Chương 4. Phân tích hệ thống

4.1 Xác định yêu cầu hệ thống

4.2 Mô hình hóa chức năng

4.3 Mô hình hóa cấu trúc

4.3.1 Giới thiệu

4.3.2 Các phần tử của mô hình cấu trúc

4.3.3 Thẻ CRC ( Class-Responsibility-Collaboration)

4.3.4 Biểu đồ lớp

4.3.5 Xây dựng thẻ CRC và biểu đồ lớp

4.4 Mô hình hóa hoạt động