Bài giảng Phân tích và thiết kế hướng đối tượng - Bài giảng 4: Phân tích hệ thống – mô hình khái niệm và biểu đồ lớp - Đào Nam Anh
PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG
OBJECT ORIENTED ANALYSIS AND DESIGN
DR. DAO NAM ANH
Bài giảng 4:
PHÂN TÍCH HỆ THỐNG –
MÔ HÌNH KHÁI NIỆM VÀ BIỂU ĐỒ LỚP
1
RESOURCE - REFERENCE
1. Ian Sommerville, Software Engineering, Ninth Edition, 2011
2. Bernd Bruegge & Allen H. Dutoit. Object-Oriented
Software Engineering: Using UML, Patterns, and Java,
Third Edition, Prentice Hall, 2010
3. Russell C. Bjork, ATM Simulation Links, Gordon College
4. Hans-Erik Eriksson, Magnus Penker, Brian Lyons, David
Fado, UML 2 Toolkit, John Wiley & Sons Inc, 2003
5. Dương Kiều Hoa – Tôn Thất Hoà An, Phân tích và thiết kế
Hệ thống thông tin với UML, 2006
6. Đào Nam Anh, Giáo Trình Phân Tích Và Thiết Kế Hướng
Đối Tượng, Đại học Điện lực, 2013
2
CONTENT – NỘI DUNG
Phân tích hệ thống – Mô hình khái niệm và biểu
đồ lớp
4.1 Mô hình khái niệm – mô hình đối tượng
4.2 Xác định các lớp, đối tượng
4.3 Mối quan hệ giữa các lớp đối tượng
4.4 Nâng cấp mô hình
3
1. Mô hình khái niệm – mô hình đối tượng
1.1 Đối tượng và lớp
Trong mô hình hóa hướng đối tượng, những phần tử cấu
thành căn bản nhất của mô hình là lớp, đối tượng và
mối quan hệ giữa chúng với nhau.
Lớp và đối tượng sẽ mô hình hóa những gì có trong hệ
thống mà chúng ta muốn miêu tả, các mối quan hệ sẽ
biểu thị cấu trúc.
Khi sử dụng lập trình hướng đối tượng để xây dựng các
hệ thống phần mềm thì lớp và các mối quan hệ của
chúng là các thông tin cơ bản để xây dựng sản phẩm
phần mềm.
4
1. Mô hình khái niệm – mô hình đối tượng
1.2 Trạng thái, ứng xử và nhận diện của đối tượng
Cho đến nay, lớp là không có gì mới. Darwin là người đã
sử dụng các lớp để mô tả các nhóm sinh vật. Ông nhóm
các loài vào các lớp để mô tả lý thuyết tiến hóa.
Thiết kế hướng đối tượng phân loại thông tin một cách
tương tự. Song UML cung cấp một điều mới: một sự
phân biệt rõ ràng giữa lớp và đối tượng.
5
1. Mô hình khái niệm – mô hình đối tượng
1.2 Trạng thái, ứng xử và nhận diện của đối tượng
Đối tượng (object) tồn tại trong thế giới thực. Nó có thể
là một phần của bất kỳ loại hệ thống, ví dụ, một máy
tính, một tổ chức, hoặc một nghiệp vụ.
Một số đối tượng có xu hướng lý thuyết (chẳng hạn như
các đối tượng thực hiện trong một hệ thống phần mềm):
Ta có thể lấy chúng bằng cách phân tích cấu trúc và hành
vi của các đối tượng trong thế giới thực. Các đối tượng,
trong cách này hay cách khác, đại diện cho sự hiểu biết
của bạn về thế giới thực.
6
1. Mô hình khái niệm – mô hình đối tượng
1.2 Trạng thái, ứng xử và nhận diện của đối tượng
7
1. Mô hình khái niệm – mô hình đối tượng
1.2 Trạng thái, ứng xử và nhận diện của đối tượng
Trạng thái (state) của một đối tượng thường sẽ thay đổi
theo thời gian, và được định nghĩa qua một tổ hợp các
thuộc tính.
Ví dụ một danh sách ghi danh cho một lớp trong hệ
thống trường học có thể có hai trạng thái: trạng thái đóng
và trạng thái mở.
Nếu danh sách sinh viên ghi danh cho lớp này còn nhỏ
hơn số tối đa cho phép (ví dụ là 10), thì trạng thái của
bảng ghi danh này là mở.
Một khi đã đủ 10 sinh viên ghi danh cho lớp, danh sách
sẽ chuyển sang trạng thái đóng
8
1. Mô hình khái niệm – mô hình đối tượng
1.2 Trạng thái, ứng xử và nhận diện của đối tượng
Ứng xử (Behaviour) xác định một đối tượng sẽ phản ứng
như thế nào trước những yêu cầu từ các đối tượng khác,
nó tiêu biểu cho những gì mà đối tượng này có thể làm.
Ứng xử được thực thi qua loạt các Phương thức
(operation) của đối tượng.
Trong ví dụ trường đại học, một đối tượng bảng ghi danh
lớp có thể có ứng xử là bổ sung thêm một sinh viên hay
xóa đi tên của một sinh viên khi sinh viên đăng ký học
hay bãi bỏ đăng ký.
9
1. Mô hình khái niệm – mô hình đối tượng
1.2 Trạng thái, ứng xử và nhận diện của đối tượng
Sự nhận diện (Identity) đảm bảo rằng mỗi đối tượng là
duy nhất – dù trạng thái của nó có thể giống với trạng
thái của các đối tượng khác.
Ví dụ, khóa học đại số 101 chương 1 và khóa học đại số
101 chương 2 là hai đối tượng trong hệ thống ghi danh
trường học.
Mặc dù cả hai đều thuộc loại bảng ghi danh, mỗi khóa
học vẫn có sự nhận dạng duy nhất của mình.
10
1. Mô hình khái niệm – mô hình đối tượng
1.3 Biểu đồ lớp
Một biểu đồ lớp (class diagram) là một dạng mô hình
tĩnh.
Một biểu đồ lớp miêu tả hướng nhìn tĩnh của một hệ
thống bằng các khái niệm lớp và mối quan hệ giữa
chúng với nhau.
Mặc dù có những nét tương tự với một mô hình dữ liệu,
nhưng các lớp không chỉ thể hiện cấu trúc thông tin mà
còn miêu tả cả hành vi.
Một trong các mục đích của biểu đồ lớp là tạo nền tảng
cho các biểu đồ khác, thể hiện các khía cạnh khác của hệ
thống.
11
1. Mô hình khái niệm – mô hình đối tượng
1.3 Biểu đồ lớp
Một lớp trong một biểu đồ lớp có thể được thực thi trực
tiếp trong một ngôn ngữ hướng đối tượng có hỗ trợ trực
tiếp khái niệm lớp.
Một biểu đồ lớp chỉ chỉ ra các lớp, nhưng bên cạnh đó
còn có một biến tấu hơi khác đi một chút chỉ ra các đối
tượng thật sự là các thực thể của các lớp này (biểu đồ đối
tượng).
12
1. Mô hình khái niệm – mô hình đối tượng
1.3 Biểu đồ lớp
Để tạo một biểu đồ lớp, đầu tiên ta
phải nhận diện và miêu tả các lớp.
Một lớp được biểu diễn bằng hình
cùng là tên lớp. Ô
huộc tính, ô cuối
nh vi. Một khi đã
các lớp, ta sẽ xét
a các lớp đó với
13
2. Xác định các lớp, đối tượng
Cần phải sử dụng kiến thức của các chuyên gia trong
lĩnh vực chuyên môn, với sự hiểu biết của người sử dụng
và hệ thống để nắm bắt được hệ thống.
Các lớp phản ánh được vấn đề và có tên gọi, không gây
nhầm lẫn.
Mô hình Use Case tốt sẽ giúp rất nhiều trong tìm kiếm
lớp.
Dựa trên mô hình Use Case và đặc tả yêu cầu trong việc
tìm kiếm cho các lớp.
14
2. Xác định các lớp, đối tượng
Thông tin nào cần được lưu trữ hoặc phân tích? Nếu có bất
kỳ thông tin cần được lưu trữ, chuyển đổi, phân tích, hoặc
xử lý, thì nó là một ứng viên có thể cho một lớp. Các thông
tin có thể bao gồm những khái niệm cần phải được đăng
ký trong hệ thống, các sự kiện hoặc giao dịch xảy ra tại
một thời điểm cụ thể.
Có tồn tại hệ thống bên ngoài? Hệ thống bên ngoài có
thể được xem như lớp mà hệ thống của bạn có tương tác.
Có mô hình tái sử dụng, các thư viện lớp, hoặc các thành
phần nào không? Nếu có các mô hình, thư viện lớp, hoặc
các thành phần từ các dự án trước đó, từ đồng nghiệp
hoặc nhà sản xuất, thì có các ứng viên lớp.
15
2. Xác định các lớp, đối tượng
Hệ thống phải xử lý các thiết bị nào mà? Bất kỳ thiết bị
kỹ thuật kết nối với hệ thống có thể là ứng viên lớp.
Có các bộ phận tổ chức nào? Đại diện cho một tổ chức
có thể được thực hiện với các lớp, đặc biệt là trong các
mô hình nghiệp vụ.
Những vai trò của tác nhân trong nghiệp vụ? Những vai
trò này có thể được xem như các lớp, chẳng hạn như
người sử dụng, hệ thống điều hành, khách hàng.
Tìm các lớp cũng có dẫn đến việc sửa đổi, cải thiện các mô
hình Use Case hoặc đặc tả yêu cầu.
16
2. Xác định các lớp, đối tượng
2.1 Tên lớp
Ngăn trên cùng của hình chữ
nhật lớp chứa tên của lớp.
Tên gọi nên càng rõ ràng
càng tốt, phải là một danh từ
ví dụ “hóa đơn”. Tên lớp
không nên có một tiền tố
hoặc hậu tố.
17
2. Xác định các lớp, đối tượng
2.2 Thuộc tính của lớp
Lớp có các thuộc tính mô tả các
đặc tính của các đối tượng.
Lớp Printer với các thuộc tính
serialNumber, memory, status.
Các thuộc tính chính xác bản
nhất đế mô tả lớp.
Tuy nhiên, chỉ có các thuộc tính
có ích trong hệ thống mới được
chọn. Mục đích của hệ thống ảnh
hưởng đến việc lựa chọn các
thuộc tính
18
2. Xác định các lớp, đối tượng
2.2 Thuộc tính của lớp
Thuộc tính có các giá trị trong
các đối tượng của lớp.
Thuộc tính có kiểu cho biết loại
của thuộc tính, như thể hiện tron
hình bên.
Loại thuộc tính điển hình là số
nguyên, boolean, chuỗi, ngày, số
thực được gọi là các kiểu dữ liệu
Với mỗi ngôn ngữ lập tình, thuộc
tính được có các kiểu dữ liệu cụ
thể của ngôn ngữ lựa chọn.
19
2. Xác định các lớp, đối tượng
2.2 Thuộc tính của lớp
Các thuộc tính có thể có khả
năng hiển thị khác nhau. Khả
năng hiển thị mô tả liệu thuộc
tính có thể được tham khảo từ
các lớp như thế nào.
20
Tải về để xem bản đầy đủ
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Phân tích và thiết kế hướng đối tượng - Bài giảng 4: Phân tích hệ thống – mô hình khái niệm và biểu đồ lớp - Đào Nam Anh", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
- bai_giang_phan_tich_va_thiet_ke_huong_doi_tuong_bai_giang_4.pdf