1. Trang chủ
  2. » Nghệ sĩ và thiết kế

THỰC HÀNH XÂY DỰNG BIỂU ĐỒ LỚP, BIỂU ĐỒ TRẠNG THÁI

13 165 0

Đ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 13
Dung lượng 533,82 KB

Nội dung

 Xác định được các lớp cơ bản, các phương thức và thuộc tính của các lớp cơ bản đó  Sử dụng thành thạo phần mềm để biểu diễn biểu đồ lớp của hệ thống..  Xây dựng được biểu đồ lớp[r]

(1)

Bài thực hành 02:

THỰC HÀNH XÂY DỰNG BIỂU ĐỒ LỚP, BIỂU ĐỒ TRẠNG THÁI

1 Mục tiêu:

 Trình bày thành phần biểu đồ lớp, biểu đồ trạng thái

 Xác định lớp bản, phương thức thuộc tính lớp  Sử dụng thành thạo phần mềm để biểu diễn biểu đồ lớp hệ thống

 Xây dựng biểu đồ lớp thực thể

 Xây dựng biểu đồ lớp phân tích cho Use case dựa vào kịch Use case  Xây dựng biểu đồ trạng thái lớp ứng dụng, Use case

2 Cơ sở lý thuyết:

2.1 Các thành phần vẽ Class

Trước tiên, xem vẽ Class:

Classes (Các lớp): Class thành phần vẽ Class Diagram Class mơ tả

một nhóm đối tượng có tính chất, hành động hệ thống Ví dụ mơ tả khách hàng “Customer” Class mơ tả gồm tên Class, thuộc tính phương thức

(2)

Trong đó:

 Class Name: tên lớp

 Attributes (thuộc tính): mơ tả tính chất đối tượng Ví dụ khách hàng có Mã khách hàng, Tên khách hàng, Địa chỉ, Ngày sinh v.v…

 Method (Phương thức): hành động mà đối tượng thực hệ thống Nó thể hành vi đối tượng lớp tạo

Relationship (Quan hệ): Relationship thể mối quan hệ Class với

các quan hệ thường sử dụng sau:  Association

 Aggregation  Composition  Generalization

+ Association:

Association quan hệ hai lớp với nhau, thể chúng có liên quan với Association thể qua quan hệ “has: có”, “Own: sở hữu” v.v…

Ví dụ quan hệ thể Khách hàng nắm giữ Tài khoản Tài khoản sở hữu

bởi Khách hàng

+ Aggregation:

(3)

Ví dụ quan hệ thể lớp Window(cửa sổ) lắp Khung cửa hình chữ nhật Nó sinh lúc

+ Composition

Composition loại mạnh Aggregation thể quan hệ class phần class nên dẫn đến tạo chết

Ví dụ class Mailing Address phần class Customer nên có đối

tượng Customer phát sinh đối tượng Mailing Address

+Generalization

Generalization quan hệ thừa kế sử dụng rộng rãi lập trình hướng đối tượng

Các lớp cuối Short Term, Long Term, Curent a/c, Savings a/c gọi lớp cụ thể (concrete Class) Chúng tạo đối tượng đối tượng thừa kế toàn thuộc tính, phương thức lớp

Các lớp Account, Term Based, Transaction Based lớp trừu tượng (Abstract Class), lớp không tạo đối tượng

2.2 Cách xây dựng vẽ Class

(4)

Thực theo bước sau để xây dựng Class Diagram

Bước 1: Tìm Classes dự kiến

Entity Classes(các lớp thực thể) thực thể có thật hoạt động hệ thống, bạn dựa vào nguồn sau để xác định chúng

 Requirement statement: Các yêu cầu Chúng ta phân tích danh từ yêu cầu để tìm thực thể

 Use Cases: Phân tích Use Case cung cấp thêm Classes dự kiến  Previous Similar System: cung cấp thêm cho bạn lớp dự kiến  Application Experts: chuyên gia ứng dụng giúp bạn

Xem xét, ví dụ ATM thấy đối tượng Entity Class sau:  Customers: khách hàng giao dịch thực thể có thật quản lý hệ

thống

 Accounts: Tài khoản khách hàng đối tượng thực tế

 ATM Cards: Thẻ dùng để truy cập ATM quản lý hệ thống  ATM Transactions: Các giao dịch lưu giữ lại, đối tượng có

thật

 Banks: Thơng tin ngân hàng bạn giao dịch, có nhiều nhà Bank tham gia

vào hệ thống bạn phải quản lý Lúc Bank trở thành đối tượng bạn phải quản

 ATM: Thông tin ATM bạn giao dịch Nó quản lý tương tự

Banks

Lưu ý: Chỉ thực thể bên hệ thống xem xét, thực bên ngồi hệ

thống khơng xem xét Ví dụ Customers người khách hàng quản lý

(5)

Bước 2: Tìm thuộc tính phương thức cho lớp

 Tìm thuộc tính: phân tích thơng tin từ form mẫu có sẵn, bạn tìm thuộc tính cho đối tượng lớp Ví dụ thuộc tính lớp Customer thể Form đăng ký thơng tin khách hàng

 Tìm phương thức: phương thức hoạt động mà đối tượng lớp có thể thực Chúng ta bổ sung phương thức đầy đủ cho lớp phân tích Sequence Diagram sau

Bước 3: Xây dựng quan hệ lớp phát lớp phát sinh

Phân tích quan hệ lớp định nghĩa lớp phát sinh quan hệ sinh Chúng ta phân tích thực thể nhận thấy

Lớp Accounts chia thành nhiều loại tài khoản Current Accounts

Saving Accounts có quan hệ thừa kế với

Lớp ATM Transactions chia thành nhiều loại giao dịch Deposit,

Withdraw, Transfer v.v chúng có quan hệ thừa kế với

 Tách vẽ chúng lên vẽ, có Class Diagram cho hệ thống ATM sau:

2.3 Đặc tả Class

Nhìn vào Class Diagram thấy cấu trúc hệ thống gồm lớp để cài đặt chúng, phải đặc tả chi tiết Trong đó, cần mơ tả:

(6)

+ Tên + Mô tả

+ Tham số đầu vào: Tên, kiểu liệu, kích thươcs

+ Kết đầu ra: Tên, kiểu liệu, kích thước

+ Luồng xử lý

+ Điều kiện bắt đầu + Điều kiện kết thúc

2.4 Sử dụng vẽ Class

Có thể tóm tắt số ứng dụng vẽ Class Diagram sau:  Hiểu cấu trúc hệ thống

 Thiết kế hệ thống

 Sử dụng để phân tích chi tiết chức (Sequence Diagram, State Diagram v.v…)

 Sử dụng để cài đặt (coding)

Bài tập 1:

“Một công ty chuyên kinh doanh thiết bị điện tử công nghệ thông tin

trong nhiều năm có lượng khách hàng định.Để mở rộng hoạt động kinh doanh mình, cơng ty mong muốn xây dựng hệ thống thương mại điện tử nhằm mở rộng phạm vi kinh doanh mạng Internet

Hệ thống phải đảm bảo cho khách hàng viếng thăm Website dễ dàng lựa chọn sản phẩm, xem khuyến mua hàng Việc tốn thực qua mạng toán trực tiếp cửa hàng Khách hàng nhận hàng cửa hàng sử dụng dịch vụ chuyển hàng có phí cơng ty

Ngồi ra, hệ thống cần có phân hệ để đảm bảo cho cơng ty quản lý hoạt động kinh doanh số lượng hàng có kho, quản lý đơn đặt hàng, tình trạng giao hàng, tốn v.v…

Thơng tin chi tiết chức bạn tham khảo thêm Website bán hàng

1 Xây dựng Class Diagram cho hệ thống eCommerce

Bước 1: Tìm Classes dự kiến

Nghiên cứu kỹ yêu cầu, Use Case nghiên cứu kỹ hệ thống tương tự để xác định lớp dự kiến thơng qua việc xác định đối tượng có hệ thống

(7)

 Phân tích Use Case “Xem sản phẩm” xác định thực thể sản phẩm

(Products) Sản phẩm phân loại theo chủng loại (Product Types) Nhà

sản xuất (Providers) nên lớp có quan hệ với class Products

 Xem xét Use Case “Xem khuyến mãi” xác định Class Chương trình khuyến

(Promotions)

 Use Case “Quản lý giỏ hàng” -> Class giỏ hàng (Shopping Carts)

 Use Case Chat -> Class Chat session Những người dùng tham gia Chat Sales và Guest hai class dự kiến

 Use Case “Đăng ký thành viên” -> Khách hàng (Customers)

 Use Case “Quản lý đơn hàng” -> Class đơn hàng (Orders), class thu tiền

(Payments) Quản lý chuyển hàng (Shipping Orders) lớp có liên

quan với Class Orders

Tạm thời vẽ xác định quan hệ sơ có vẽ Class dự kiến sau:

Bản vẽ giúp có nhìn cấu trúc hệ thống để tiếp tục phân tích Tất nhiên, phân tích tất Use Case cịn lại tìm hiểu thêm hệ thống để bổ sung đầy đủ Class dự kiến cho hệ thống

Bước 2: Xác định thuộc tính quan hệ cho lớp

Chúng ta bổ sung thuộc tính cho lớp phân tích quan hệ chúng

 Products: xem xét tài liệu mô tả sản phẩm hệ thống thấy Class

Products cần thuộc tính sau: Tên sản phẩm, mơ tả, cấu hình, Giá bán, khuyến

mãi, bảo hành (xem mơ tả chi tiết sản phẩm Website)… Trong đó, thuộc tính giá thay đổi theo thời gian nên nên tách thành lớp riêng Giá (Prices) Tương tự thuộc tính khuyến tách thành lớp Promotions

(8)

 Promotions: tương tự giá cần có lớp riêng với thuộc tính Mã sản phẩm, Mơ tả khuyến mãi, Giá trị khuyến mãi, Ngày bắt đầu, Ngày hết hạn

 ProductTypes: chứa loại sản phẩm  Providers: chưa tên nhà sản xuất

 ShoppingCarts: chứa thông tin như: cartID, ngày, mã sản phẩm, số lượng, đơn giá Chúng ta nhận thấy để nguyên lớp tạo đối tượng chúng lặp thông tin cartID ngày mua nên tách chúng thành ShoppingCarts với thuộc tính CartID, ngày CartDetails với thuộc tính ProductID, số lượng, đơn giá

 Tương tự có class Orders với OrderID, ngày, customerID class

Orderdetails với ProductID, số lượng, đơn giá

 Payments: chứa thông tin PaymentID, OrderID, ngày trả, số tiền, hình thức tốn

 Shippings: chứa ShippingID, OrderID, Ngày chuyển, ngày đến, số tiền, phương thức vận chuyển

 Customers: CustomerID, Họ tên, địa chỉ, điện thoại, ngày đăng ký v.v…  Guests: chứa sessionID để xác định thông tin chat

 Sales: gộp với lớp người dùng (Users) chứa UserID, Name

 ChatSessions: ChatsessionID, tên người bán hàng, mã khách, mã tin nhắn, nội dung tin nhắn, ngày

Nhập đầy đủ thuộc tính vẽ, có vẽ sau:

(9)

Phương thức hành động mà đối tượng sinh từ lớp thực trong hệ thống Ví dụ đối tượng lớp Customers đăng ký mới, thay đổi mật (password), kích hoạt người dùng (Active) v.v

Bước 4: Thiết kế chi tiết thuộc tính phương thức cho lớp

Khi có Class Diagram, bạn cần thiết kế chi tiết lớp cách đặc tả thuộc tính phương thức

 Đặc tả thuộc tính: xác định kiểu liệu kích thước

 Đặc tả phương thức: xác định liệu đầu vào, liệu đầu

Việc sử dụng kiểu liệu mô tả phương thức lớp học lập trình hướng đối tượng

Bài tập 2: Mô tả chức yêu cầu HỆ THỐNG QUẢN LÝ THƯ VIỆN

Xây dựng hệ thống quản lý thư viện cho trường Đại học gồm hoạt động quản lý thông tin sách, quản lý thông tin độc giả, quản lý hoạt động mượn trả sách:

 Sinh Viên trường muốn mượn sách thư viện trước tiên phải đăng ký làm

(10)

 Các sách thư viện quản lý thông tin theo đầu sách, đầu sách

trong thư viện có nhiều khác Thơng tin đầu sách gồm (Mã đầu sách, tên đầu sách, nhà xuất bản, số trang, kích thước, tác giả, số lượng sách), thông tin đầu sách gồm (mã đầu, mã sách, tình trạng, ngaynhap) Khi thư viện nhập sách thủ thư có nhiệm vụ nhập thông tin sách vào thư viện, thông tin sách có thay đổi loại bỏ khỏi thư viện, thủ thư thực sửa thông tin sách xóa sách

 Thư viện quản lý đầu sách theo chuyên ngành, đầu sách phân thành

các chuyên ngành khác Thông tin chuyên ngành gồm (Mã chuyên ngành, tên

chuyên ngành, mô tả)

 Mỗi độc giả lần mượn mượn sách, độc giả muốn

mượn sách vào tìm sách thư viện ghi thông tin vào phiếu mượn gồm mã sách, mã độc giả gửi cho thủ thư Thủ thư tiến hành ghi nhận thông tin phiếu mượn vào hệ thống, giữ lại thẻ độc giả giao sách cho độc giả Thông tin phiếu mượn gồm (Mã sách, mã độc giả, mã thủ thư cho mượn sách, ngày mượn, tình trạng)

 Khi độc giả trả sách thủ thư thực chức trả sách để ghi nhận tình trạng trả

sách cho phiếu mượn

 Định kỳ thủ thư phải làm báo cáo thống kê gửi lên lãnh đạo thư viện báo cáo

gồm: Thông tin đầu sách cho mượn nhiều nhất, thông tin độc giả chưa trả sách

 Để quản lý người dùng hệ thống, thư viện có nhân viên đóng người quản trị

vai trị làm Nhân viên có quyền quản lý thơng tin người dùng hệ thống Khi có nhân viên thư viện người quản trị cập nhật thông tin thủ thư vào hệ thống, tạo tài khoản cấp quyền cho nhân viên thư viện Khi thông tin nhân viên thư viện có sai sót loại bỏ khỏi hệ thống người quản trị sửa xóa thơng tin nhân viên thư viện khỏi hệ thống

 Người dùng hệ thống phải đăng nhập trước thực

Yêu cầu:

1 Dựa vào đặc tả trên, xác định lớp thực thể gồm (tên lớp, thuộc

tính bản, phương thức bản)

2 Xác định mối quan hệ lớp, sử dụng Rational Rose để biểu diễn lớp

(11)

3 Phân tích Use case dựa vào kịch bản, ví dụ Use case thêm đầu sách xác

định lớp Use case

4 Xây dựng biểu đồ trạng thái lớp DocGia ứng dụng dựa vào đặc tả

phần mềm

5 Xây dựng biểu đồ trạng thái lớp DocGia Use case trả sách

6 Phân tích Use case cịn lại hệ thống xây dựng biểu đồ lớp phân tích cho

các Use case

7 Xem xét lớp cịn lại, xây dựng biểu đồ chuyển trạng thái có Hướng dẫn thực hiện:

1 Dựa vào đặc tả trên, xác định lớp bao gồm (tên lớp, thuộc tính bản, phương thức bản)

Phân tích toán:

- Bước 1: Xem xét kỹ lại đặc tả hệ thống, kịch Use case, sử dụng phương pháp

trích chọn danh từ: Sinh viên, lớp, thẻ thư viện, Mã độc giả, họ tên, lớp, ngày sinh, giới tính, thủ thư, sách, đầu sách, sao, mã đầu, mã sách, tình trạng, chuyên ngành, Mã chuyên ngành, tên chuyên ngành, mô tả, độc giả, phiếu mượn, Mã sách, mã độc giả, mã thủ thư cho mượn sách, ngày mượn, tình trạng, tài khoản, người dùng

- Bước 2: Loại bỏ danh từ trung khơng có giá trị Ví dụ danh từ Sinh

viên, thẻ thư viện, bạn đọc, độc giả đối tượng người tham gia mượn sách thư viện độc giả

- Bước 3: Xác định thuộc tính cho lớp Các danh từ trở thành lớp,

và danh từ khác trở thành thuộc tính lớp Ví dụ danh từ phiếu mượn thành lớp PhieuMuon danh từ Mã sách, mã độc giả, mã thủ thư cho mượn sách, ngày mượn, tình trạng thành thuộc tính lớp PhieuMuon

- Bước 4: Xác định quan hệ lớp

2 Xác định liên kết lớp có

(12)

3 Sau xây dựng biểu đồ lớp dựa vào danh từ, phân tích kịch cho Use case để xây dựng biểu đồ lớp cho Use case

Hướng dẫn:

Phân tích: Dựa vào kịch người sử dụng phân tích Use case tìm lớp

- B1 Tìm lớp Bound, theo nguyên tắc Actor Use case có lớp Bound

- B2 Xác định lớp Control, theo ngun tắc Use case có lớp

Control

- B3 Xác định lớp thực thể, Đọc kịch xác định danh từ tham gia Use

case để tìm lớp thực thể

(13)

4 Xây dựng biểu đồ trạng thái

Hướng dẫn: Phân tích

 B1: Đọc đặc tả phần mềm, đặc tả chi tiết dựa vào nghiệp vụ hệ thống  B2: Xác định trạng thái lớp

 B2: Xác định chuyển trạng thái, kiện, điều kiện chuyển, hành động để chuyển trạng thái

Minh họa:

Bài tập tự thực hiện:

1 Phân tích Use case lại hệ thống xây dựng biểu đồ lớp phân tích cho

các Use case

2 Xem xét lớp cịn lại, xây dựng biểu đồ chuyển trạng thái có

Ngày đăng: 16/12/2020, 13:17

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w