Một biểu đồ lớp

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Phân tích thiết kế hệ thống thời gian thực theo cách tiếp cận hướng đối tượng (Trang 31)

Trong biểu đồ lớp trên thể hiện một nhân viên có thể không dùng, dùng một hay nhiều máy tính. Và mỗi nhân viên đƣợc thể hiện qua tên và tuổi, cũng nhƣ mỗi máy tính có các đặc trƣng của nó nhƣ tên, bộ nhớ.

2) Biểu đồ đối tượng: Biểu đồ đối tƣợng thể hiện các đối tƣợng thay cho các

lớp. Một biểu đồ đối tƣợng đƣa ra một tập các đối tƣợng và các mối quan hệ của chúng tại một thời điểm. Nó dùng các ký pháp nhƣ biểu đồ lớp (xem hình 2.2), ngoại trừ hai điểm: tên đối tƣợng đƣợc gạch dƣới và mọi kết nối cụ thể trong liên kết đều đƣợc vẽ ra. Biểu đồ đối tƣợng ít đƣợc dùng, trừ khi nó đƣợc dùng làm nền cho biểu đồ truyền thông, trên đó đƣợc vẽ thêm các thông điệp chuyển giao giữa các đối tƣợng.

Hình 2.2. Biểu đồ đối tượng tương ứng với biểu đồ lớp ở hình 2.1.

Biểu đồ này trình bày một đối tƣợng Ba của lớp Nhan vien sử dụng cụ thể là hai máy tính: máy tính ở nhà và máy tính ở cơ quan.

0..1 1..* Dung Nhan vien ten : String tuoi : Integer May tinh ten : String bo nho : Integer

Ba: Nhan vien ten = “Le Ba” tuoi = 30

pc o so cua Ba: May tinh ten = “Dell 466” bo nho = 64

pc o nha cua Ba: May tinh ten = “Compaq MMX” bo nho = 32

C:Console Bo tri: admin.exe config.exe :Kiosk Bo tri: uses.exe s: Server toc do Processor=300Hz bo nho = 128 meg Bo tri: dbadmin.exe tkmsd.exe :RAID farm <<RS-232>> <<Tethernet>>

3) Biểu đồ thành phần: Biểu đồ thành phần trình bày cấu trúc vật lý của

chƣơng trình dƣới dạng các thành phần, cùng với các mối quan hệ phụ thuộc giữa chúng (xem hình 2.3). Một thành phần có thể là thành phần mã nguồn, thành phần mã nhị phân, hoặc thành phần exe. Mỗi thành phần trong biểu đồ thành phần tƣơng ứng với một hay nhiều lớp, giao diện hay hợp tác trong biểu đồ lớp. Biểu đồ thành phần dùng để trình bày góc nhìn thực thi của hệ thống.

Hình 2.3. Biểu đồ thành phần.

Trong biểu đồ thành phần trên thể hiện mối quan hệ giữa tệp thực thi (find.exe), hai tệp thƣ viện (abcd.dll, nagha.dll) và hai tệp tài liệu (index.html, find.html).

4) Biểu đồ triển khai: Biểu đồ triển khai trình bày kiến trúc vật lý của phần

cứng và phần mềm hệ thống. Nó cho thấy các máy tính và thiết bị (các nút), cùng với các kết nối giữa chúng. Các thành phần thực hiện đƣợc (exe) đƣợc phân vào các nút, cho thấy các đơn vị phần mềm đƣợc thực hiện trên các nút nào (hình 2.4).

Hình 2.4. Biểu đồ triển khai.

<<tài liệu>> find.html <<thƣ viện>> abcd.dll <<tài liệu>> index.html <<thƣ viện>> nagha.dll <<thi hành>> find.exe

5) Biểu đồ gói: Gói là một hình thức gom nhóm các phần tử. Phần tử ở đây có thể là các lớp, các ca sử dụng, các thành phần, v.v … Giữa các gói (hình chữ nhật có quai) có thể có các mối quan hệ phụ thuộc, tạo nên một biểu đồ, gọi là biểu đồ gói (hình 2.5).

Hình 2.5. Biểu đồ gói.

6) Biểu đồ cấu trúc đa hợp: Là biểu đồ diễn tả cấu trúc bên trong của một loài

(classifier), nhƣ lớp, gói, giao diện, hợp tác, v.v…, chỉ ra các điểm tƣơng tác của loài đó với các thành phần còn lại của hệ thống, cũng nhƣ chỉ ra vai trò của các bộ phận tham gia thực hiện hành vi chung của loài đó.

Hình 2.6. Biểu đồ cấu trúc đa hợp.

Trong biểu đồ trên diễn tả cấu trúc nội tại của lớp ô tô, đối tƣợng bánh sau của lớp bánh xe liên kết với động cơ qua khớp nối.

2.1.2.2. Các biểu đồ hành vi

Đây là các biểu đồ dùng để phản ánh sắc thái động của hệ thống. Gồm có bảy loại biểu đồ.

7) Biểu đồ ca sử dụng: Biểu đồ ca sử dụng trình bày một số tác nhân ngoài

và sự liên hệ của chúng với các ca sử dụng mà hệ thống cung cấp (hình 2.7). Một ca sử dụng là sự diễn tả một chức năng mà hệ thống có khả năng cung cấp. Ca sử dụng có thể đƣợc đặc tả (ngoài biểu đồ) bằng một

Dich vu Nguoi dung

Dich vu Nghiep vu Dich vu CSDL <<import>> <<import>> class Oto banhsau: Banhxe [2] d: dong co khop

văn bảng hay bằng một biểu đồ hoạt động, ở đó chỉ đề cập hệ thống làm gì, chứ không nói hệ thống làm nhƣ thế nào.

Khach hang

Thong ke ban hang

Ky hop dong bao hiem

Nguoi ban bao hiem

Thong ke khach hang

Hình 2.7. Biểu đồ ca sử dụng.

8) Biểu đồ trình tự: Biểu đồ trình tự trình bày một số đối tƣợng với các

thông điệp đƣợc chuyển giao giữa chúng, đặc biệt làm rõ trình tự chuyển giao các thông điệp dọc theo trục thời gian (trục thẳng đứng). Biểu đồ trình tự dùng để diễn tả một sự hợp tác (hay tƣơng tác) của một nhóm đối tƣợng (xem hình 2.8)

Hình 2.8. Biểu đồ trình tự.

Trong biểu đồ trên mô tả yêu cầu in tệp của máy tính. Máy tính gởi yêu cầu tới dịch vụ in, nếu máy in rãnh thì tiến hành in nội dung của tệp, còn ngƣợc lại thì lƣu tệp vào hàng đợi và gởi thông tin phản hồi về dịch vụ in, máy tính.

9) Biểu đồ truyền thông: Biểu đồ truyền thông cũng trình bày một sự hợp tác

(tƣơng tác) của một nhóm đối tƣợng nhƣ biểu đồ trình tự song biểu đồ truyền thông lại nhấn mạnh đến bối cảnh của sự hợp tác. Nó cũng cho một nhóm các đối tƣợng cùng với các liên kết giữa chúng, nhƣ trong biểu đồ

In (tep)

[may in ban]

: May tinh : Dich vu in : May in : Hang doi

[may in ranh] In (tep)

đối tƣợng, nhƣng vẽ thêm các thông điệp (mũi tên nhỏ) dọc theo các kết nối đó. Các thông điệp đƣợc đánh số để phân biệt trƣớc sau (xem hình 2.9)

Hình 2.9. Biểu đồ truyền thông.

10)Biểu đồ máy trạng thái: Có những đối tƣợng có các cách phản ứng linh

hoạt trƣớc những sự kiện từ bên ngoài. Hành vi của loại đối tƣợng này đƣợc diễn tả bởi một biểu đồ máy trạng thái. Biểu đồ máy trạng thái trình bày các trạng thái có thể của đối tƣợng và chỉ rõ các sự kiện nào sẽ làm cho đối tƣợng thay đổi từ trạng thái này sang trạng thái kia (xem hình 2.10). Một sự kiện có thể là một tín hiệu đặc biệt, một tin báo vừa hết một thời hạn hay một điều kiện nào đó vừa đƣợc thỏa mãn, mà đối tƣợng tiếp nhận qua thông điệp gởi tới từ một đối tƣợng khác. Một sự thay đổi trạng thái gọi là một dịch chuyển. Có thể có các hành động xảy ra gắn với trạng thái hay các bƣớc dịch chuyển. Biểu đồ máy trạng thái không phải đƣợc vẽ cho tất cả các lớp, mà chỉ cho các lớp khi đối tƣợng của nó có khả năng ứng xử trƣớc các sự kiện xảy đến tùy thuộc vào trạng thái hiện tại của nó.

Hình 2.10. Biểu đồ máy trạng thái.

11)Biểu đồ hoạt động: Biểu đồ hoạt động trình bày luồng dịch chuyển từ

hành động này sang hành động khác, bao gồm sự dịch chuyển tuần tự, rẽ nhánh theo điều kiện hay rẽ nhánh song song (xem hình 2.11). Thƣờng thì biểu đồ hoạt động dùng để đặc tả một thao tác của một lớp, song nó cũng

[ May in ranh] 1.1: In (tep)

[ May in ban] 1.2: Luu (tep) 1: In (tep)

:May tinh

:Dich vu in :May in :Hang doi

het thơi gian

 len (tang)

len (tang) den noi

xuong (tang) den noi den tang tret

o tang tret Di len Di xuong tang tret Di xuon g Dung

có thể đƣợc dùng để mô tả các luồng hoạt động khác, nhƣ là ca sử dụng hay tƣơng tác.

Hình 2.11. Biểu đồ hoạt động.

12)Biểu đồ bao quát tương tác: Đây là một biến thể của biểu đồ hoạt động,

mà trong đó các nút không những là các hành động, mà còn có thể là các biểu đồ tƣơng tác. Nó cho ta một cái nhìn bao quát đối với một tƣơng tác phức tạp (hình 2.12)

Hình 2.12. Biểu đồ bao quát tương tác.

Trong biểu đồ này, ký hiệu ref chỉ ra khung tƣơng tác cụ thể, ký hiệu sd

biểu đồ tuần tự, cd là biểu đồ truyền thông.

13)Biểu đồ thời khắc: Là biểu đồ diễn tả các giai đoạn trải qua theo thời gian

của một (hay nhiều) đối tƣợng (hình 2.13)

Hình 2.13. Biểu đồ thời khắc. {5 phut} {5 phut} :May giat {30 phut} Ket thuc Tron xa

phong Giu sach Vat kho

{60 phut} {30 phut} Mayin.In(tep) [dia con] [dia day] In(tep)   

Hien thi thong bao dia day

Hien thi thong bao dang in

Huy thong

bao Tao tep in sau

[viec B] [ra] [viec A]   ref Dang nhap ref

Chon mot viec

sd viec A cd viec B

DT1 DT2 DT2

Biểu đồ trên thể hiện thời gian thực hiện cụ thể các công đoạn của máy giặt, từ công đoạn trộn xà phòng cho đến công đoạn kết thúc.

2.2. Hệ thống điều khiển thang máy (ECS)

2.2.1. Mô tả hệ thống

Xây dựng hệ thống thang máy phục vụ trong một tòa nhà nhiều tầng. Trong buồng thang máy có các nút số tƣơng ứng với số tầng trong toà nhà. Mỗi tầng cũng có các nút để yêu cầu thang máy. Thang máy có thể đƣợc yêu cầu dừng tại một tầng hay di chuyển theo hƣớng phù hợp. Thang máy phải phục vụ tất cả các yêu cầu trong cùng hƣớng trƣớc khi nó di chuyển theo hƣớng ngƣợc lại. Khi thang máy đến một tầng khác tầng đích (tầng hành khách muốn đến), mà không có yêu cầu ra vào thang máy trong cùng hƣớng di chuyển của nó thì nó tiếp tục di chuyển đến tầng đích mà không dừng lại hay mở cửa tầng. Tuy nhiên, khi có yêu cầu thì thang máy sẽ dừng lại và mở cửa (trong khoảng thời gian quy định). Khi thang máy đến một tầng là yêu cầu cuối cùng theo hƣớng di chuyển của nó, cửa mở và sau đó hành vi của nó phụ thuộc vào trạng thái của toà nhà (nếu không có yêu cầu gì thì thang máy sẽ dừng ở tầng hiện tại và cửa thang máy đóng). Nếu thang máy không có yêu cầu di chuyển trong cùng hƣớng mà hành khách có yêu cầu đi thang máy theo hƣớng đó thì phải bƣớc vào buồng thang máy và nhấn nút đến tầng mong muốn trƣớc khi cửa thang máy đóng. Mặt khác thang máy sẽ tự do di chuyển theo hƣớng ngƣợc lại để phục vụ yêu cầu khác, nếu có. Yêu cầu của hệ thống thang máy là phải phục vụ hành khách trong thời gian (thời gian thực) phù hợp thực tế.

2.2.2. Các chức năng chính của hệ thống

Dựa vào sự mô tả hoạt động của ECS ở phần trên, có thể đƣa ra các chức năng chính của hệ thống nhƣ sau:

 Phục vụ yêu cầu gọi thang máy của hành khách;

 Đƣa hành khách đến tầng đƣợc yêu cầu;

 Mở/đóng cửa thang máy phục vụ yêu cầu ra, vào thang máy của hành khách;

 Di chuyển/dừng thang máy;

2.2.3. Mục tiêu của hệ thống

 Minh họa việc phân tích thiết kế hƣớng đối tƣợng với UML;

 Minh họa tiêu biểu cho hệ thống thời gian thực;

 Ứng dụng mô phỏng phần mềm theo ngôn ngữ lập trình hƣớng đối tƣợng

Java – là một ngôn ngữ lập trình hƣớng đối tƣợng hiện nay đang đƣợc dùng rất phổ biến;

 Hiển thị giao diện thuận tiện giúp cho hành khách có thể điều khiển thang máy;

 Mô phỏng chức năng chính của hệ thống là phục vụ yêu cầu đi lại của

hành khách giữa các tầng trong toà nhà một cách tự động, nhanh chóng, tiện lợi và an toàn.

2.3. Phân tích thiết kế hệ thống ECS qua các biểu đồ của UML

2.3.1. Biểu đồ ca sử dụng

Các hệ thống tƣơng tác với con ngƣời hay các tác nhân. Các tác nhân sử dụng hệ thống cho mục đích nào đó, các tác nhân đều mong đợi hệ thống phải có nhiều cách dự đoán trƣớc hành vi của mình. Trong UML, một ca sử dụng mô hình hóa các hành vi của một hệ thống hay một phần hệ thống, là sự mô tả của một tập các hành động, bao gồm các sự biến đổi, cái mà hệ thống thực hiện để mang lại một kết quả có giá trị cho một tác nhân.

Một biểu đồ ca sử dụng mô hình hóa khung nhìn thiết kế động của hệ thống. Các biểu đồ ca sử dụng đặt trọng tâm vào việc mô hình hóa hành vi của một hệ thống, một hệ thống con, hay một lớp. Biểu đồ ca sử dụng trình bày một tập các các ca sử dụng, các tác nhân và các mối quan hệ của chúng. Các thành phần chính của một biểu đồ ca sử dụng:

 Các ca sử dụng

 Các tác nhân

 Các quan hệ phụ thuộc, tổng quát hóa và liên kết.

Qua sự khảo sát, và dựa vào các chức năng chính của ECS, các biểu đồ ca sử dụng của hệ thống thang máy đƣợc thể hiện trong hình sau:

Hình 2.14. Biểu đồ ca sử dụng của hệ thống thang máy.

Có tám ca sử dụng của hệ thống thang máy đƣợc mô tả chi tiết nhƣ sau:

Yeu cau thang may (yêu cầu thang máy): ca sử dụng này gồm một số các kịch bản đƣợc trình bày trong phần sau. Những kịch bản này mô tả việc thang máy nhận yêu cầu thang máy từ hành khách, bật tắt đèn, chuyển nút nhấn (chế độ đƣợc nhấn hay chƣa nhấn), cập nhật các yêu cầu gọi thang máy tới bộ phận điều khiển thang máy, v.v …

Yeu cau den tang (yêu cầu đến tầng): tƣơng tự nhƣ ca sử dụng yêu cầu thang máy, ca sử dụng này gồm các chức năng thang máy nhận yêu cầu đến tầng từ hành khách, bật tắt đèn, chuyển nút nhấn (chế độ đƣợc nhấn hay chƣa nhấn) trong thang máy, cập nhật các yêu cầu đến tầng tới bộ phận điều khiển thang máy, v.v …

Cho biet huong di chuyen (cho biết hướng di chuyển lên/xuống): thang máy nên cung cấp cơ chế này để hành khách biết đƣợc hƣớng di chuyển hiện tại của thang máy, để có thể quyết định là bƣớc vào hay ra khỏi thang máy.

Cho biet vi tri thang may (cho biết vị trí thang máy hiện tại đang đến

tầng nào): giúp cho hành khách chuẩn bị rời khỏi thang máy.

Mo/dong cua (mở/đóng cửa): thang máy có thể mở hay đóng cửa để hành khách có thể bƣớc vào hay ra khỏi thang máy. Ca sử dụng này còn bao hàm chức năng chuyển trạng thái của cửa (cửa đang đóng nếu hành khách muốn vào thang máy thì cửa phải mở trong thời gian quy định).

Hanh khach <<uses>> <<uses>> <<uses>> <<uses>> Thang may Yeu cau thang may Yeu cau den tang Di chuyen/ dung thang may Mo/dong cua Cho biet huong di chuyen thang may Cho biet vi tri thang may Khoi dong/ dong thang máy Nguoi quan ly Bo kich hoat ngat khan cap

Di chuyen/dung thang may (di chuyển/dừng thang máy): đây là chức năng chính của thang máy, đƣa ra quyết định dừng hay điều khiển hƣớng của thang máy.

Khoi dong/dong thang máy (khởi động/đóng thang máy): cho phép ngƣời quản lý có thể khởi động hay kết thúc việc sử dụng thang máy.

Bo kich hoat ngat khan cap (bộ kích hoạt ngắt khẩn cấp): đây là cơ chế an toàn trong buồng thang máy để đảm bảo không phát sinh tình trạng không an toàn.

Từ đây có thể nhận thấy có hai tác nhân tƣơng tác với ECS: một tác nhân cụ thể là ngƣời quản lý, chỉ rõ ngƣời quản lý thang máy, một tác nhân trừu tƣợng là hành khách sử dụng thang máy. Trong đó hành khách sử dụng thang máy đóng vai trò tƣơng tác chính đến hệ thống. Hành khách tƣơng tác với thang máy bằng cách ra yêu cầu gọi thang máy và yêu cầu đến tầng nào trong tòa nhà, thang máy phải cho hành khách biết hƣớng di chuyển cũng nhƣ vị trí thang máy đang đi đến đâu (tầng nào) theo hƣớng nào (lên hay xuống).

2.3.2. Biểu đồ lớp

Biểu đồ lớp, một trong những biểu đồ đƣợc sử dụng phổ biến nhất trong hệ thống hƣớng đối tƣợng, mô hình hóa khung nhìn thiết kế tĩnh của một hệ thống. Mục đích chính của khung nhìn này là hỗ trợ các yêu cầu chức năng của hệ thống – là các dịch vụ mà hệ thống cung cấp cho ngƣời dùng cuối. Các biểu đồ lớp trong hệ thống qua hai khung nhìn khác nhau (khung nhìn xây dựng đối tƣợng và khung nhìn kiến trúc phần mềm) sẽ đƣợc trình bày cụ thể trong phần sau.

Một biểu đồ lớp thể hiện một tập các lớp, các giao diện, các sự cộng tác và các mối quan hệ của chúng. Các biểu đồ lớp mô tả tổng thể hệ thống, nhƣ là kiến trúc hệ thống, bao gồm các thuộc tính và các thao tác trong lớp. Thƣờng các thành phần của một biểu đồ lớp bao gồm:

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Phân tích thiết kế hệ thống thời gian thực theo cách tiếp cận hướng đối tượng (Trang 31)

Tải bản đầy đủ (PDF)

(81 trang)