1. Trang chủ
  2. » Luận Văn - Báo Cáo

bài tập nhóm mô hình dữ liệu gis ba chiều bài tập tìm hiểu về uml

36 1 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ìm hiểu về UML
Tác giả Tran Pham My Duyen, Pham Thi Tuyet Huyen, Vu Thi Kim Kieu, Luong Ngoc Diem Lo
Người hướng dẫn Tran Thong Nhat, Giảng viên
Trường học Trường Đại học Nông Lâm Thành phố Hồ Chí Minh
Chuyên ngành Mô Hình Dữ Liệu GIS Ba Chiều
Thể loại Bài tập nhóm
Năm xuất bản 2023 - 2024
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 36
Dung lượng 5,88 MB

Nội dung

Khải nệm Ngôn ngữ mô hình hóa thống nhất tiéng Anh: Unified Modeling Language, viét tắt thành UML là một ngôn ngữ mô hình gồm các ký hiệu đồ họa mà các phương pháp hướng đối tượng sử đụn

Trang 1

BAI TAP : TIM HIEU VE UML

Giảng viên hướng dẫn: Trần Thống Nhất

Nhóm thực hiện: Nhóm 01

Lớp: DH2IHM Khoa: Môi Trường và Tài Nguyên Chuyên ngành: Hệ thống thông tin

Thành phố Hồ Chí Minh, ngày 07 tháng 03 năm 2024

Trang 2

ĐẠI HỌC NONG LAM TP HO CHI MINH KHOA MOI TRUONG VA TAI NGUYEN NGANH HE THONG THONG TIN Hoc phan: MO HINH DU LIEU GIS BA CHIEU

HK II nam hoc 2023 - 2024

BAI TAP NHOM

DE BAI:

TIM HIEU VE UML

DANH SACH NHOM

Ho va tén MSSV

Võ Thi Kim Kiéu 21166135

Trang 3

LỜI CẢM ƠN

Nhóm 01 chúng em xin bày tỏ lòng biết ơn sâu sắc tới thầy Trần Thống Nhất, người

đã định hướng, hướng dẫn chúng em tìm hiểu về những bài tập này, để chúng em có

thêm kiến thức chuyên môn vững vàng hơn, thôi thúc chúng em chủ động tìm tòi, học

hỏi nhiều hơn

Dù nhận được những sự hướng dẫn nhiệt tình nhưng do trình độ còn hạn chế nên bài

làm của chúng em chắc chắn sẽ không tránh khỏi những thiếu sót, rất mong nhận được

sự đóng góp của thầy và các bạn đề bài tập nhóm chúng em được hoàn thiện hơn Xin

chân thành cảm ơn!

Trang 4

1 Lich str phat trién

Việc áp dụng rộng rãi phương pháp hướng đối tượng đã đặt ra yêu cầu cần phải xây

dựng một phương pháp mô hình hóa để có thể sử dụng như một chuẩn chung cho

những người phát triển phần mềm hướng đối tượng trên khắp thế giới Trong khi các

ngôn ngữ hướng đối tượng ra đời khá sớm, ví dụ như Simula-67 (năm 1967),

Smalltalk (đầu những năm 1980), C++, CLOS (giữa những năm 1980) thì những

phương pháp luận cho phát triển hướng đối tượng lại ra đời khá muộn 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, như Booch cua Grady Booch, OMT cua James

Rambaugh, OOSE cua Ivar Jacobson, hay OOA and OOD cua Coad va Yordon

Mỗi phương pháp luận và ngôn ngữ trên đều có hệ thống ký hiệu riêng, phương pháp

xử lý riêng và công cụ hỗ trợ riêng Chính điều này đã thúc đây những người tiên

phong trong lĩnh vực mô hình hóa hướng đối tượng ngồi lại cùng nhau đề tích hợp

những điểm mạnh của mỗi phương pháp và đưa ra một mô hình thống nhất chung Nỗ

lực thống nhất đầu tiên bắt đầu khi Rumbaugh gia nhập nhóm nghiên cứu của Booch

tại tập đoàn Rational năm 1994 và sau đó Jacobson cũng gia nhập nhóm này vào năm

1995

James Rumbaugh, Grady Booch va Ivar Jacobson dA cing có gắng xây dựng được

một Ngôn Ngữ Mô Hình Hoá Thống Nhất và đặt tên là UML (Unifñeld Modeling

Language) UML dau tién duoc dua ra nam 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

2 Khải nệm

Ngôn ngữ mô hình hóa thống nhất (tiéng Anh: Unified Modeling Language, viét tắt

thành UML) là một ngôn ngữ mô hình gồm các ký hiệu đồ họa mà các phương pháp

hướng đối tượng sử đụng đề thiết kế các hệ thống thông tin một cách nhanh chóng

UML cung cấp các ký hiệu đồ họa để mô tả cấu trúc và hoạt động của hệ thông

Phương pháp mô hình hóa này hữu ích cho việc thiết kế và triển khai hệ thống thông

tin, đồng thời giúp người dùng có cái nhìn tổng quan và đầy đủ về hệ thống UML

cũng là cơ sở cho việc tự động sinh mã trong lập trình hướng đối tượng Các mô hỉnh

trong UML bao gồm mô hình đối tượng (mô hình tĩnh) và mô hình động

3 Ứng dụng

Giúp hiểu rõ và mô hình hóa yêu cầu: Băng cách sử dụng các biểu d6 UML nhu Use

Case Diagrams, bạn có thê mô tả cách hệ thống nên hoạt động và phản ứng trong các

tỉnh huống cụ thê

Thiết kế cấu trúc và quan hệ hóa phần mềm: UML cung cấp các biểu đồ như Class

Diagrams dé thiét ké cau trúc của phần mềm

Tạo tài liéu thiét ké: Cac biéu dé UML cé thé duoc str dung dé tạo tài liệu mô tả câu

trúc và hành vi của hệ thống, giúp cho việc triển khai dự án và giao tiếp với các bên

liên quan

Trang 5

Mô phỏng và kiếm tra hệ thống: Giúp kiếm tra tính đúng đắn và hiệu suất của phần

mềm trước khi triển khai nó vào môi trường thực tế

Duy trì và nâng cấp phần mềm: Các biếu đồ UML có thê hỗ trợ trong việc hiểu cầu

trúc hiện tại, nắm vững thay đối cần thiết, và đảm bảo tính nhất quán trong quá trình

phát triển tiếp theo

Ngoài ra, UML còn là cách để giao tiếp hiệu quả giữa các nhóm và các thành viên

tham gia vào quá trình phát triển phần mềm UML giúp tạo ra một ngôn ngữ chung đề

mô tả và trao đôi ý tưởng, đảm bảo mọi người trong dự án hiểu và làm việc theo

hướng dẫn chung

4 Vai tro cua UML trong thiét kế hệ thông

UML có thê được sử dụng trong nhiều giai đoạn, từ phát triển, thiết kế cho tới thực

hiện và bảo trì Vì mục đích chính của ngôn ngữ này là dùng các biêu đồ hướng đối

tượng đề mô tả hệ thống nên miền ứng dụng cia UML bao gồm nhiều loại hệ thống

khác nhau:

Hệ thống thống tin (Information System): Cất giữ, lấy, biến đôi biểu diễn thông tin

cho người sử dụng Xử lý những khoảng dữ liệu lớn có các quan hệ phức tạp , mà

chúng được lưu trữ trong các cơ sở đữ liệu quan hệ hay hướng đối tượng

Hệ thống kỹ thuật (Technical System): Xử lý và điều khiển các thiết bị kỹ thuật như

viễn thông, hệ thống quân sự, hay các quá trình công nghiệp Đây là loại thiết bị phải

xử lý các giao tiếp đặc biệt, không có phần mềm chuẩn và thường là các hệ thống thời

gian thực (real time)

Hệ thông nhúng (Embeded System): Thực hiện trên phần cứng gắn vào các thiết bị

như điện thoại di động, điều khiến xe hơi, Điều này được thực hiện bằng việc lập

trình mức thấp với hỗ trợ thời gian thực Những hệ thống này thường không có các

thiết bị như màn hình đĩa cứng,

Hệ thống phân bố ( Distributed System): Được phân bố trên một số máy cho phép

truyền dữ liệu từ nơi này đến nơi khác một cách dễ dàng Chúng đòi hỏi các cơ chế

liên lạc đồng bộ dé dam bảo toàn vẹn dữ liệu và thường được xây dựng trên một số

các kỹ thuật đối tượng như CORBA, COM/DCOM, hay Java Beans/RMI

Hệ thống Giao địch (Business System): Mô tả mục đích, tài nguyên (con người, máy

tính, .), các quy tắc (luật pháp, chiến thuật kinh đoanh, cơ chế, .), và công việc

hoạt động kinh doanh

Phần mềm hệ thống (System Software): Định nghĩa cơ sở hạ tầng kỹ thuật cho phần

mềm khác sử dụng, chăng hạn như hệ điều hành, cơ sở dữ liệu, giao diện người sử

dụng

5 Vai tro cua UML trong thiét ké OO (Object-Oriented)

Mô hình hóa hành vi: UML cung cấp các biêu đồ như biêu đồ trạng thái, biêu đồ hoạt

động, và biểu đồ tuần tự để mô hình hóa hành vi của các thành phần trong hệ thống

Những biểu đồ này giúp hiểu cách các đối tượng tương tác với nhau và thực hiện các

chức năng

Trang 6

Hỗ trợ giao tiếp: UML cung cấp các phương tiện đề trình bày va truyền đạt ý tưởng và

thông tin về hệ thống giữa các thành viên trong nhóm phát triển phần mềm và giữa các

bên liên quan

Tạo tài liệu: UML có thê được sử dụng dé tao ra tài liệu chỉ tiết về cầu trúc và hành vi

của hệ thống Các biểu đồ UML cung cấp một cách trực quan để diễn giải và giải

thích cho các bên liên quan vẻ hệ thống

Hỗ trợ phát triển phần mềm: UML giup tạo ra một kế hoạch thiết kế rõ rang va hiéu

được yêu cầu của hệ thông trước khi bắt đầu việc triển khai Điều này giúp giảm thiểu

rủi ro và lỗi trong quá trình phát triển phần mềm

6 Các khối xây dựng của ngôn ngữ UML

6.1 Thành phan mang tinh cau tric

6.1.1 Lop (Class)

Là một tập hợp các đối tượng có cùng một tập hợp thuộc tính, các hành vi, các mối

quan hệ của những đối tượng khác

6.1.2 Hop tac (Collaboration)

Thê hiện một giải pháp thi hành bên trong hệ thống, bao gồm các lớp/ đối tượng mối

quan hệ và sự tương tác giữa chúng dé đạt được một chức nang mong doi cua Use

case

a ——

6.1.3 Giao diện (Interface)

Là một tập hợp các phương thức (operation) tạo nên dịch vụ của một lớp hoặc một

thành phần (component) Nó chỉ ra một tập các operation ở mức khai báo chứ không

phải ở mức thực thi (mplementation)

Trang 7

6.1.4 Use case

Là mô tả một tap hop của nhiều hành động tuần tự mà hệ thống thực hiện đề đạt được

một kết quả có thê quan sát được đối với một actor cụ thê nào đó Actor là những gì ở

bên ngoài mà tương tác với hệ thống se case mô tả sự tương tác giữa actor và hệ

thống Nó thê hiện chức năng mà hệ thống sẽ cung cấp cho actor Tập hợp các Use

case của hệ thống sẽ tạo nên tất cả các trường hợp mà hệ thống có thê được sử dụng

/ Tén Use Case )

N sa”

6.1.5 Lớp tích cue (Active class)

là một lớp mà các đối tượng của nó thực hiện các hoạt động điều khiến Lớp tích cực

cũng giống như lớp bình thường ngoại trừ việc các đối tượng của nó thê hiện các phần

tử mà ứng xử của chúng có thê thực hiện đồng thời với các phần từ khác Lớp này

thường dùng đề biêu diễn tiễn trình(process) và luồng(thread)

Là biểu diễn vật lý của mã nguồn Trong hệ thống ta sẽ thấy các kiểu khác nhau của

component như các thành phần COM+ hay JavaBeans cũng như là các thành phần

như các ñle mã nguồn, các ñle nhị phân tạo ra trong quá trình phát triển hệ thống

Trang 8

6.2.1 Tương tác (Interaction)

Bao gồm một tập các thông báo (message) trao đôi giữa các đối tượng trong một ngữ

cảnh cụ thể nào đó đề thực hiện một chức năng nảo đó

display

Oo

6.2.2 May chuyén trang thai (States Machine)

Thê hiện các trạng thái của một đối tượng trong thời gian sống của nó nhằm đáp ứng

các sự kiện, các tác động từ bên ngoài

6.3 Thành phần mang tính nhóm

6.3.1 Goi (Package)

Dùng để nhóm các phần tử có một ý nghĩa chung nào đó vào thành nhóm Không

giống như các thành phần (component - tồn tại trong lúc thực thí), một package chỉ

mang tính trừu tượng Package dùng đề nhìn hệ thống ở một mức độ tổng quát hơn so

với việc xem xét từng phần tử trong package

6.4 Mang tính chất giải thích (Annotational)

là các chú thích dùng để mô tả, làm sáng tỏ và ghi chú về bất cứ phần tử nào trong mô

hình Thường dùng nhất là Note gồm các ràng buộc hoặc ghi chú, được gắn với một

phần tử hoặc một tập hợp các phần tử

Business

Rules

6.5 Cac méi quan hé ( Relationships)

6.5.1 Quan hệ phụ thudc (Relationships)

Thể hiện mối quan hé ma: nếu có một sự thay đổi ở đối tượng độc lập sẽ ảnh hưởng

tới đối tượng phụ thuộc Kí hiệu:

6.5.2 Quan hệ kết hợp (Association)

Là mỗi quan hệ liên kết giữa hai lớp Nói một cách đơn giản, khi một đối tượng của

lớp này gửi thông điệp tới hoặc nhận thông điệp từ một đối tượng của lớp kia thì ta nói

giữa hai lớp có mối quan hệ association

+employer +empioyee

6.5.3 Quan hé tap hop (Aggregation)

Trang 9

Là một dạng đặc biệt của quan hệ liên kết Nó thê hiện sự liên kết “chặt” hơn, đó là

mỗi quan hệ toàn thể bộ phận

6.5.4 Quan hé g6p ( Composition)

Là một dạng đặc biệt của quan hệ Aggregation Trong đó nếu như đối tượng toàn thể

bị hủy thì các đối tượng bộ phận của nó cũng bị hủy theo

6.5.5 Quan hệ thừa kế (Generalization)

Là mỗi quan hệ tông quát/ cụ thế hóa trong đó đối tượng cụ thể sẽ kế thừa các thuộc

tính và phương thức của đối tượng tổng quát

6.5.6 Quan hệ hiện thực hóa (Realization)

Mỗi quan hệ giữa Interface và Class hay Component hiện thực hóa hoặc mối quan hệ

gitra Use case va Collaboration hiện thực hoá se case đó

[>

6.6 Các sơ đồ lớp

6.6.1 Sơ đồ cầu trúc

Các sơ đồ cấu trúc đại diện cho khía cạnh tĩnh của hệ thống Các khía cạnh tĩnh này

đại điện cho các phần của sơ đồ, được biếu diễn bằng các lớp, giao điện, đối tượng,

thành phần và nút, tạo thành cấu trúc chính và đo đó ổn định

Có bốn sơ đỗ cấu trúc:

6.6.1.1 So dé lép (Class Diagram)

So đồ lớp là một biểu đồ tĩnh trong UML, mô tả cấu trúc của một ứng dụng phần

mềm Nó không chỉ được sử dụng để trực quan hóa, mô tả và ghI lại các khía cạnh của

hệ thống, mà còn để xây dựng mã thực thi của ứng dụng Sơ đồ lớp mô tả thuộc tính,

hoạt động và ràng buộc của các lớp, là một phần quan trong trong việc mô hình hóa hệ

thống hướng đối tượng

Mục đích của sơ đỗ lớp bao gồm phân tích và thiết kế chế độ xem tĩnh của ứng đụng,

mô tả trách nhiệm của hệ thông, Huy

cung cấp cơ sở cho các sơ đỗ

z x ` À ` Customer Order

khác như sơ đô thành phân và Fzãnssung : | dateDate a

triên khai, va ho tro quy trình tiên }-Saen cording

và lùi Đặc biệt, sơ đồ lớp thường _ L£°9we©r4er) c ossaVlàn

dụng phân mêm hướng đôi _ Ta

tươn) close{) close{)

Trang 10

Dé vé so do lớp, cân xác định tên và môi quan hệ của các yêu tô, định rõ trách nhiệm của từng lớp, và sử dụng ghi chú khi cân thiệt

6.6.1.3 Sơ đồ thành phần (Component Diagram)

Sơ đỗ thành phần trong UML có mục đích chính là hình dung các thành phần vật lý của một hệ thống phần mềm Thay vì tập trung vào chức năng của hệ thống như các loại sơ đồ khác, sơ đồ thành phần tập trung vào các thành phần cấu thành hệ thống và mỗi quan hệ giữa chúng

Cụ thể, mục đích của sơ đồ thành phần bao gồm:

Hình dung các thành phần của hệ thống: Sơ đồ thành phần giúp người phát triển và người sử dụng hình dung được các thành phần vật lý của hệ thống, như các thư viện,

201, tép tin, v.v

Xây dựng các tệp thực thi: Sơ đồ thành phần hỗ trợ trong việc xây dựng các tệp thực thi của hệ thống bằng cách sử đụng kỹ thuật tiến và ngược Điều này có nghĩa là nó cung cấp thông tin cần thiết để tổ chức và xây dựng các phần mềm

Mô tả tô chức và mối quan hệ của các thành phần: Sơ đồ thành phần cho phép mô tả cách các thành phần được tổ chức và mối quan hệ giữa chúng trong hệ thống Điều này giúp hiểu rõ hơn về cách các phần mềm được phân chía và làm việc cùng nhau Nói chung, sơ đồ thành phần là một công cụ quan trọng đề hiểu và mô hình hóa các phần cấu thành của hệ thống phần mềm, giúp tăng tính rõ ràng và tổ chức trong quá trình phát triên và bảo trì phần mềm

Sơ đồ thành phần có thê được sử dụng dé:

¢ M6 hinh hoa cdc thành phần của một hệ thống

® - Lập mô hinh lược đồ cơ sở dữ liệu

® - Mô hinh hóa các tệp thực thi của một ứng dụng

© - Mô hình hóa mã nguồn của hệ thống

Đề vẽ được sơ đồ thành phần, phải xác định rõ ràng:

¢ Các tập tin được sử dụng trong hệ thông

e _ Thư viện và các hiện vật khác có liên quan đến ứng dụng

®© Mối quan hệ giữa các hiện vật

Sau khi xác định các hiện vật, những điểm sau đây cần được ghi nhớ:

© Sử dụng tên có ý nghĩa để xác định thành phần mà sơ đồ sẽ được vẽ

e Chuan bi mét bé cuc tinh than

théng quan ly don hang O day, cac

Trang 11

các tệp trong ứng dụng và mối quan hệ của chúng Trong thực tế, sơ đồ thành phần cũng chứa dll, thư viện, thư mục, v.v

Trong sơ đồ sau, bốn tệp được xác định và mỗi quan hệ của chúng được tạo ra Sơ dé thành phần không thể khớp trực tiếp với các sơ đồ UML khác được thảo luận cho đến nay vì nó được vẽ cho mục đích hoàn toàn khác

6.6.1.4 So dé trién khai (Deployment Diagram)

Sơ đồ triển khai thê hiện chế độ xem triển khai của một hệ thống Nó liên quan đến sơ

đỗ thành phần vì các thành phần được triển khai băng sơ đỗ triển khai Một sơ đồ triển khai bao gồm các nút Các nút không có gì ngoài vật lý phần cứng được sử dụng để

triên khai ứng dụng

Mục đích của sơ đồ triển khai có thể được mô tả như sau:

e _ Trực quan hóa cấu trúc liên kết phần cứng của một hệ thông

¢ Mô tả các thành phần phần cứng được sử đụng để triển khai các thành phần phần mềm

® - Mô tả các nút xử lý thời gian chạy

Sơ đồ triển khai rất hữu ích cho các kỹ sư hệ thống Một sơ đồ triển khai hiệu quả là rat quan trọng vì nó kiêm soát các tham số sau:

® Hiệu năng

® Khả năng mở rộng

® Kha nang bao tri

® Di

So dé trién khai có thế được sử dụng :

© - Đề mô hình hóa cấu trúc liên kết phần cứng của một hệ thống

© - Đề mô hình hóa hệ thống nhúng

¢ Đề mô hình hóa các chỉ tiết phần cứng cho hệ thống máy khách/ máy chủ

e - Đề mô hình hóa các chỉ tiết phần cứng của một ứng dung phan tan

© Déi voi ky thuật Chuyến tiếp và Đảo ngược

Trước khi vẽ sơ đỗ triển khai, cần xác định các nút (Node) và mối quan hệ giữa các nút

Sau đây là sơ đỗ triển khai mẫu để cung cấp ý tưởng về chế độ xem triển khai của hệ thống quản lý đơn hàng Ở đây, chúng tôi đã hiền thị các nút là -

ứng dụng dựa trên web, được triên 8 Modern J

khai theo cụm môi trường sử dụng &- > <<Proceeeor=> | |* Caching server oda ⁄ máy chủ |, máy chủ 2 và máy chủ 3 "°° J

se gett eal

Oe IS _<

sy tự Ni <n | + es, Server 3 Server 1 Server 2

Trang 12

Người dùng kết nỗi với ứng dụng bằng Internet Điều khiến chạy từ máy chủ bộ nhớ đệm đến môi trường cụm

6.6.2 Sơ đồ hành vi

Sơ dé hành vi về cơ bản nắm bắt khía cạnh năng động của một hệ thống Khia canh động có thê được mô tả thêm là các bộ phận thay đôi/ chuyên động của một hệ thống UML có năm loại sơ đồ hành vi sau:

6.6.2.1 Sơ đồ trường hợp sử dụng (Use Cases Diagram)

Sơ đồ trường hợp sử đụng minh họa các tương tác động trong một hệ thống thông qua các yếu tô nội và ngoại được gọi là các actor Sơ đồ này gồm actors, use cases và mối quan hệ giữa chúng (relationships), nhằm đề mô hình hóa một hệ thống hoặc một phần

hệ thống của một ứng dụng Mỗi biểu đỗ tập trung vào một chức năng cụ thê, nên đòi hỏi sử dụng nhiều biểu đồ để mô hình hóa toàn bộ hệ thống một cách toàn diện Mục đích của Sơ đồ trường

hợp sử dụng là thu thập các | Use case diagram of an order management system

yéu cau (chu yéu vé thiét ké) Use cases

hưởng bên trong và bên se è-~~“{ SpecialOrder —

ngoài của một hệ thống và thể =—-—1 / order Extends

hiện sự tương tác giữa các yêu /\ Ki come sage

Dé vé So đồ tình huông sử Extends ¬

actor thé hién duoc chức Syston =

sự phụ thuộc rõ ràng và sử Figure: Sample Use Case diagram

dụng ghi chú khi cần thiết

6.6.2.2 Sơ đồ trình tự (Sequence Diagram)

Sơ đồ trình tự ghi lại trình tự thời gian của luồng thông báo từ đối tượng này sang đối tượng khác Nó nhân mạnh vào trình tự thời gian của các thông điệp

Sơ đồ trình tự có bốn đối tượng (Customer, Order, SpecialOrder và NormalOrđer)

Sơ đồ sau đây cho thấy chuỗi thông báo cho đối tượng SpecialOrder và tương tự có thê được sử dụng trong trường hợp đối tượng NormalOrder Điều quan trọng là phải hiểu trình tự thời gian của các luỗng tin nhắn Luông tin nhắn không là gì ngoài một cuộc gọi phương thức của một đối tượng

Lệnh gọi đầu tiên là sendOrder() là một phương thức của đối tượng Order Cuộc gọi tiếp theo là confirm () là một phương thức của đối tượng SpecialOrder và cuộc gọi cuối cùng là Dispatch() là một phương thức của đối tượng SpecialOrder Sơ đồ sau

Trang 13

đây chủ yêu mô tả các cuộc gọi phương thức từ đối tượng này sang đối tượng khác, và đây cũng là kịch bản thực tế khi hệ thống đang chạy

Sequence diagram of an order management system

Trong sơ đồ cộng tác, chuỗi cuộc gọi phương thức được biểu thị bằng một số kỹ thuật đánh số Con số cho biết làm thế nào Các phương pháp được gọi lần lượt Chúng tôi

đã thực hiện cùng một hệ thông quản lý đơn hàng đề mô tả sơ đồ cộng tác

Các cuộc gọi phương thức tương tự như các lệnh gọi của sơ đồ trình tự Tuy nhiên, sự khác biệt là sơ đồ trình tự không mô tả tô chức đối tượng, trong khi sơ đồ cộng tác cho thấy tô chức đối tượng

Đề lựa chọn giữa hai sơ đồ này, nhân mạnh vào loại yêu cầu Nếu chuỗi thời gian là quan trọng, thì sơ đồ trình tự được sử dụng Nếu tổ chức là bắt buộc, sau đó sơ đồ cộng tác được sử dụng

Collaboratlon điagram of an order managomenft system

| _— Object _ Sequence number

Customer” ee X

= se Su”

| 1:sendOrder() [ Note: Sequence Is indicated by

| numbering the messages/method calls Lirder

6.6.2.4 So đỗ biểu dé trạng thai (State Machine Diagram)

Sơ đỗ trạng thái mô tả các trạng thái khác nhau của một thành phần trong hệ thống,

mô hỉnh hóa các bản chất động của hệ thống

Trang 14

6.6.2.5 So dé hoat déng (Activity Diagram )

Sơ đồ hoạt động trong UML được sử dụng đề mô ta các luỗng hoạt động của hệ thống, tập trung vào các hoạt động và mỗi quan hệ giữa chúng Mục đích cơ bản của sơ đồ này là hiển thị cách các hoạt động chuyên từ hoạt động này sang hoạt động khác Nó phủ hợp đề mô hình hóa luồng hoạt động của hệ thông và mô tả cách các hệ thông liên quan chuyền đữ liệu từ một hệ thống sang hệ thống khác

Mục đích cụ thể có thể được mô tả như sau:

e Vẽ luồng hoạt động của một hệ thống

® - Mô tả trỉnh tự từ hoạt động này sang hoạt động khác

¢ Mô tả dòng chảy song song, phân nhánh và đồng thời của hệ thống

Sơ đồ hoạt động không chính xác là sơ đồ vì chúng có một số khả năng bô sung Những khả năng bồ sung này bao gồm phân nhánh, đòng chảy song song, đường bơi,

Sau đây là một ví dụ về sơ đồ hoạt động cho hệ thống quản lý đơn hàng Trong sơ đồ, bốn hoạt động được xác định có liên quan đến các điều kiện

Sơ đồ sau đây được vẽ với bốn hoạt động chính:

® Gửi đơn đặt hang cua Activity diagram of an order management system

khach hang i “ Adactivities 4 Condition

/ “Order request system N a

Í confirms the receipt of the Ƒ

⁄ Na

e {Customer sends |

order / [Check if the

® Nhan don dat hang

© Giri lénh \ oa ef

Start of < >

process (No) NY

Sau khi nhận được yêu cầu đặt

hàng, kiểm tra tỉnh trạng được

thực hiện để kiểm tra xem đó là

đơn hàng bình thường hay đặc

biệt Sau khi loại đơn đặt hàng

được xác định, hoạt động điều

phối được thực hiện và được

đánh dấu là chấm dứt quá trình

6.6.3 Một số sơ đồ khác

[Yes]

{Check if the order is special order]

» —_.- a2 K——‹ os X [Yes] » a ( €onfirm the ` verter.)

Trang 15

6.6.3.1 Sơ đồ gói (Package Diagram)

Các hệ thống lớn cung cấp những thách thức đặc biệt Vẽ một mô hình của một lớp cho một hệ thống lớn là quá lớn đề nó có thể hiểu được Có quá nhiều kết nỗi giữa các

lớp để hiểu Một kỹ thuật hữu ích để đối phó với vấn đề này là gói UML Các gói

trong Trợ giúp Ngôn ngữ Mô hình Thống nhất

e Để nhóm các thành phần

e - Để cung cấp không gian tên cho các phần tử được nhóm

e©_ Một gói có thê chứa các gói khác, do đó cung cấp cho một tô chức phân cấp của các gói

® Các phần tử UML có thê được nhóm thành các 201

Do đó, sơ đỗ gói, sơ đồ cấu trúc, cho thấy sự sắp xếp và tổ chức các yếu tố mô hình trong một dự án vừa và lớn Sơ đồ gói có thê hiển thị cả cầu trúc và sự phụ thuộc giữa các hệ thống con hoặc mô-đun, hiền thị các chế độ xem khác nhau của một hệ thống,

vi dụ, dưới dạng ứng dụng nhiều lớp (hay còn gọi là đa lớp) - mô hình ứng dụng nhiều lớp Sơ đồ gói cho thấy sự sắp xếp và tổ chức các yếu tổ mô hình trong dự án quy mô trung bình đến lớn có thể được sử dụng đề hiện thị cả cấu trúc và sự phụ thuộc giữa các hệ thống con hoặc mô-đun

6.6.3.2

Sơ đồ tương tác được sử dụng để mô tả một số loại tương tác giữa các phần tử khác nhau trong mô hình - một phần của hành vi động của hệ thống Nó được sử dụng khi chúng ta muốn hiểu luồng thông điệp và tô chức cấu trúc

Sơ đỗ tương tác (Interaction Overview Diapram)

Mục đích của sơ đồ tương tác là trực quan hóa hành vi tương tác của hệ thống bằng cách sử dụng các loại mô hình khác nhau để nắm bắt các khía cạnh khác nhau của sự tương tác, mô tả luồng tin nhắn trong hệ thông, tổ chức cấu trúc và sự tương tác giữa các đối tượng

Đề vẽ được sơ đồ tương tác cần xác định các yếu tô: Các đối tượng tham gia tương tác, thông điệp giữa các đối tượng, trình tự mà các thông điệp được truyền đi và tô chức đối tượng

6.6.3.3 Sơ đồ phối hợp thời gian (Timing Diapram - UML 2.0)

Sơ đồ thời gian trong UML là một biểu điễn đồ họa tập trung vào thời gian của các sự kiện liên quan đến các đối tượng trong một khoảng thời gian cụ thể Các sơ đồ này là công cụ trong việc quản lý các hệ thống phức tạp, đảm bảo rằng mỗi thành phần hoạt động hài hòa với các thành phần khác về thời gian và trình tự

Các thành phần của sơ đồ thời gian UML

Trang 16

Sơ đồ thời gian UML bao gồm một số thành phần chính, mỗi thành phân cần thiết để

mô tả các mối quan hệ thời gian trong một hệ thống:

Đường đời: Đại điện cho các yếu tổ hệ thống riêng lẻ, được hiền thị đưới dang các đường thăng đứng minh họa cách các đối tượng thay đối theo thời gian Trạng thái: Các phân đoạn ngang trên đường đời cho biết tình trạng của một vật thể tại các thời điểm cụ thê

Thay đổi trạng thái: Các điểm trên đường đời nơi một đối tượng chuyên từ trạng thái này sang trạng thái khác, rất quan trọng đề phân tích hành vi

Hạn chế về thời gian: Chú thích chỉ ra các yêu cầu về thời gian đối với các thay đổi hoặc sự kiện trạng thái, cần thiết để hiểu các khía cạnh thời gian

Sự xuất hiện tương tác: Mũi tên hoặc đường kết nỗi giữa các đường dây cứu sinh hién thị sự tương tác giữa các thành phần hệ thống

Chú thích: Thông tin bỗ sung hoặc nhận xét được thêm vào đề làm rõ hoặc giải thích các khía cạnh của sơ đồ thời gian

Trục thời gian: Một thang đo ngang giao nhau với các đường huyết mạch, cung cấp khung đo thời gian cho sơ đồ

Mỗi thành phần đóng một vai trò quan trọng trong việc truyền đạt thời gian và tương tác phức tạp của các yếu tô hệ thống, làm cho sơ đồ thời gian UML trở thành một công cụ quan trọng trong phân tích và thiết kế hệ thống

Tạo sơ đồ thời gian UML bao gồm một quy trình chỉ tiết, từng bước đảm bảo thê hiện chính xác thời gian và tương tác trong hệ thống Phần mở rộng này sẽ hướng dẫn bạn qua từng bước, cung cấp một cách tiếp cận toàn điện để xây dựng sơ đồ thời gian hiệu quả

Xác định quy trình hoặc đối tượng: Bắt đầu băng cách xác định rõ ràng quy trình hoặc đối tượng bạn muốn đại diện Đây có thể là một phần cụ thể của hệ thống, một loạt các sự kiện hoặc tương tác giữa các thành phần khác nhau Hiểu phạm vi và ranh giới của những gì bạn đang mô tả là rất quan trọng cho

tố hoặc đối tượng khác nhau trong hệ thống Mỗi đường huyết mạch thường là một đường thăng đứng cho thấy thời gian trôi qua từ trên xuống dưới Dán nhãn rõ ràng cho từng dây cứu sinh đề cho biết nó đại điện cho thành phần hệ thống nào

Minh họa các trạng thái và thay đôi trạng thái: Đối với mỗi đòng đời, hãy mô tả các trạng thái khác nhau mà đối tượng hoặc phần tử có thể ở Các trạng thái thường được biểu diễn dưới đạng các phân đoạn ngang dọc theo đường sống

Trang 17

Phân định rõ ràng thời điểm và cách thức thay đổi trạng thái xảy ra theo thời gian

® Kết hợp các ràng buộc về thời gian: Hạn chế về thời gian là rất quan trọng trong sơ đồ thời gian Chúng bao gồm các khoảng thời gian cụ thê cho các trạng thái nhất định hoặc khoảng thời gian giữa các sự kiện Mô tả chính xác các ràng buộc này giúp hiểu được mối quan hệ thời gian giữa các phần khác nhau của hệ thống

e Thém lần xuất hiện tương tác: Nếu quy trình của bạn liên quan đến tương tác giữa các yếu tố khác nhau, hãy thê hiện chúng trên sơ đồ Điều này có thể được thực hiện bằng cách vẽ mũi tên hoặc đường giữa các đường sống, hiển thi luồng điều khiển hoặc giao tiếp giữa các thành phần hệ thống khác nhau

e Xem xét và tinh chỉnh: Khi bạn đã có cấu trúc cơ bản của sơ đồ thời gian, hãy xem lại nó để có độ chính xác và rõ ràng Đảm bảo rằng tất cả các yêu tố được thể hiện chính xác và sơ đồ dễ hiểu Tinh chỉnh sơ đồ bằng cách điều chỉnh bố cục, khoảng cách và nhãn dé dé doc hon

© - Xác thực với các bên liên quan: Chia sẻ sơ đồ với các bên liên quan chính hoặc thành viên trong nhóm đề xác thực Phản hồi từ những người khác có thê giúp xác định bất kỳ sự khác biệt hoặc lĩnh vực nào cần làm rõ hơn Thực hiện các điều chỉnh cần thiết dựa trên phản hồi này

¢ - Hoàn thiện và Lập tài liệu: Sau khi xác nhận và điều chỉnh cuối cùng, hãy hoàn

thiện sơ dé thời gian của bạn Đảm bảo rằng nó được ghi lại đúng cách, với tiêu

đề rõ ràng, chú giải nếu cần thiết và mô tả ngăn gọn giải thích bối cảnh và mục đích của sơ đồ

Hướng dẫn chỉ tiết từng bước này nhằm mục đích làm cho quá trình tạo sơ đồ thời gian UML dễ tiếp cận và có cấu trúc hơn Băng cách làm theo các bước này, bạn có thê phát triển một sơ đồ thời gian rõ ràng, chính xác và hữu ích đề truyền đạt hiệu quả các mối quan hệ thời gian trong hệ thống hoặc quy trình của bạn

Trang 18

state, condition or value tick mark value timing ruler

7 Céng cu dé vé cac ban ve UML

Có rất nhiều công cụ được sử dụng để vẽ các bản vẽ UML rất chuyên nghiệp như Rational Rose, Enterprise Architect, Microsoft Visio v.v và rất nhiều các công cụ phần mềm nguồn mở miễn phí có thê sử dụng tốt

Các công cụ có cách sử dụng khá giống nhau và ký hiệu của các bạn vẽ trên UML cũng đã thống nhất nên việc năm bắt một công cụ khi chuyên sang làm việc với một công cụ khá không quá khó khăn Nhóm tìm hiểu về công cụ StarUML

7.1 _ Giới thiệu tông quan về StarUML

StarUML là một mô hình nền tảng, là phần mềm hỗ trợ UML (Unified Modeling Language) Nó hỗ trợ các phương pháp tiếp cận MDA (Mođel Driven Architecture) bằng cách hỗ trợ các khái niệm hồ sơ UML Tức là StafUML hỗ trợ phân tích và thiết

kế hệ thống một điều mà bất cứ dự án nào đều cần có Ngoài ra dùng StarUML sẽ đảm bảo tối đa hóa năng suất và chất lượng của các dự án phần mềm của bạn Vì nó cho phép mô hình hóa nên sẽ không phụ thuộc vào người code, ngôn ngữ code hay nền tảng sử dụng Do mô hình hóa nên rất để đọc và để hiểu Ngoài ra, StaUML còn có khả năng tự sinh code từ những mô hình class

7.2 _ Mục tiêu chính của người dùng

e - Nhóm phát triển nhỏ và linh hoạt

® - Người chuyên nghiệp

® Cac vién giáo dục

® - Các tính năng chính của StarUML là:

¢ H6 tro da nén tang (MacOS, Windows va Linux)

Ngày đăng: 30/07/2024, 16:45

w