Bản Vẽ Sơ đồ Lớp - Class Diagram - IViettech - Poki Mobile
Có thể bạn quan tâm
Class Diagram là một trong những bản vẽ quan trọng nhất của thiết kế phần mềm, nó cho thấy cấu trúc và quan hệ giữa các thành phần tạo nên phần mềm. Trong quá trình xây dựng Class Diagram chúng ta sẽ phải quyết định rất nhiều yếu tố về thiết kế nên nó là bản vẽ khó xây dựng nhất. Bản vẽ này sẽ cho thấy cấu trúc tĩnh của phần mềm, tương tự như bản vẽ mặt bằng trong thiết kế của ngành xây dựng.
Trong bài này, tất cả chúng ta sẽ tìm hiểu và khám phá những thành phần tạo nên bản vẽ, cách kiến thiết xây dựng và sử dụng class diagram để giúp những bạn hiểu và vận dụng bản vẽ này trong phong cách thiết kế. Ở đây, mặc định những bạn đã có kiến thức và kỹ năng về lập trình hướng đối tượng người dùng và không nhắc lại những khái niệm trong lập trình hướng đối tượng người dùng .
1. Các thành phần trong bản vẽ Class
Trước tiên, chúng ta xem một bản vẽ Class.
Bạn đang đọc: Bản vẽ sơ đồ lớp – Class Diagram – iViettech
Hình 1. Ví dụ về Class Diagram của ATM
Ví dụ trên là Class Diagram của ứng dụng ATM. Tiếp theo tất cả chúng ta sẽ bàn kỹ về những thành phần của bản vẽ này và lấy ứng dụng về ATM ở trên để minh họa .
Classes (Các lớp)
Class là thành phần chính của bản vẽ Class Diagram. Class diễn đạt về một nhóm đối tượng người tiêu dùng có cùng đặc thù, hành vi trong mạng lưới hệ thống. Ví dụ miêu tả về người mua tất cả chúng ta dùng lớp “ Customer ”. Class được miêu tả gồm tên Class, thuộc tính và phương pháp .
Hình 2. Ký hiệu về Class
Trong đó , – Class Name : là tên của lớp . – Attributes ( thuộc tính ) : diễn đạt đặc thù của những đối tượng người dùng. Ví dụ như người mua có Mã người mua, Tên người mua, Địa chỉ, Ngày sinh v.v … – Method ( Phương thức ) : chỉ những hành vi mà đối tượng người dùng này hoàn toàn có thể thực thi trong mạng lưới hệ thống. Nó thể hiện hành vi của những đối tượng người tiêu dùng do lớp này tạo ra .
Hình 3. Ví dụ về một Class
Một số loại Class đặc biệt quan trọng như Abstract Class ( lớp không tạo ra đối tượng người tiêu dùng ), Interface ( lớp khai báo mà không setup ) v.v.. tất cả chúng ta xem thêm những tài liệu về lập trình hướng đối tượng người dùng để hiểu rõ hơn những yếu tố này .
2. Relationship (Quan hệ)
Relationship bộc lộ mối quan hệ giữa những Class với nhau. Trong UML 2.0 có những quan hệ thường sử dụng như sau : – Association – Aggregation – Composition – Generalization Chúng ta sẽ lần lượt tìm hiểu và khám phá về chúng .
+ Association
Association là quan hệ giữa hai lớp với nhau, biểu lộ chúng có tương quan với nhau. Association bộc lộ qua những quan hệ như “ has : có ”, “ Own : chiếm hữu ” v.v …
Hình 4. Ví dụ về Association
Ví dụ quan hệ trên bộc lộ Khách hàng nắm giữ Tài khoản và Tài khoản được chiếm hữu bởi Khách hàng .
+ Aggregation
Aggregation là một loại của quan hệ Association nhưng mạnh hơn. Nó hoàn toàn có thể cùng thời hạn sống ( cùng sinh ra hoặc cùng chết đi )
Hình 5. Ví dụ về Aggregation
Ví dụ quan hệ trên bộc lộ lớp Window ( hành lang cửa số ) được lắp trên Khung cửa hình chữ nhật. Nó hoàn toàn có thể cùng sinh ra cùng lúc .
+ Composition
Composition là một loại mạnh hơn của Aggregation bộc lộ quan hệ class này là một phần của class kia nên dẫn đến cùng tạo ra hoặc cùng chết đi .
Hình 5. Ví dụ về Composition
Ví dụ trên class Mailing Address là một phần của class Customer nên chỉ khi nào có đối tượng người tiêu dùng Customer thì mới phát sinh đối tượng người dùng Mailing Address .
+Generalization
Xem thêm: Xì ke là gì
Generalization là quan hệ thừa kế được sử dụng thoáng đãng trong lập trình hướng đối tượng người tiêu dùng .
Hình 6. Ví dụ về Genelization
Các lớp ở sau cuối như Short Term, Long Term, Curent a / c, Savings a / c gọi là những lớp đơn cử ( concrete Class ). Chúng hoàn toàn có thể tạo ra đối tượng người dùng và những đối tượng người tiêu dùng này thừa kế hàng loạt những thuộc tính, phương pháp của những lớp trên . Các lớp trên như Account, Term Based, Transaction Based là những lớp trừu tượng ( Abstract Class ), những lớp này không tạo ra đối tượng người dùng . Ngoài ra, còn 1 số ít quan hệ như khác như dependence, realization nhưng ít được sử dụng nên tất cả chúng ta không bàn ở đây .
3. Cách xây dựng bản vẽ Class
Class Diagram là bản vẽ khó thiết kế xây dựng nhất so với những bản vẽ khác trong OOAD và UML. Bạn phải hiểu được mạng lưới hệ thống một cách rõ ràng và có kinh nghiệm tay nghề về lập trình hướng đối tượng người dùng mới hoàn toàn có thể kiến thiết xây dựng thành công xuất sắc bản vẽ này . Thực hiện theo những bước sau đây để kiến thiết xây dựng Class Diagram .
Bước 1: Tìm các Classes dự kiến
Entity Classes ( những lớp thực thể ) là những thực thể có thật và hoạt động giải trí trong mạng lưới hệ thống, bạn dựa vào những nguồn sau để xác lập chúng .
Hình 7. Các nguồn thông tin có thể tìm Class dự kiến
– Requirement statement: Các yêu cầu. Chúng ta phân tích các danh từ trong các yêu cầu để tìm ra các thực thể.
– Use Cases: Phân tích các Use Case sẽ cung cấp thêm các Classes dự kiến.
– Previous và Similar System: có thể sẽ cung cấp thêm cho bạn các lớp dự kiến.
– Application Experts: các chuyên gia ứng dụng cũng có thể giúp bạn.
Xem xét, ví dụ ATM ở trên tất cả chúng ta hoàn toàn có thể thấy những đối tượng người dùng là Entity Class như sau :
– Customers: khách hàng giao dịch là một thực thể có thật và quản lý trong hệ thống.
– Accounts: Tài khoản của khách hàng cũng là một đối tượng thực tế.
– ATM Cards: Thẻ dùng để truy cập ATM cũng được quản lý trong hệ thống.
– ATM Transactions: Các giao dịch được lưu giữ lại, nó cũng là một đối tượng có thật.
– Banks: Thông tin ngân hàng bạn đang giao dịch, nếu có nhiều nhà Bank tham gia vào hệ thống bạn phải quản lý nó. Lúc đó Bank trở thành đối tượng bạn phải quản lý.
– ATM: Thông tin ATM bạn sẽ giao dịch. Nó cũng được quản lý tương tự như Banks.
Lưu ý: Chỉ các thực thể bên trong hệ thống được xem xét, các thực thế bên ngoài hệ thống không được xem xét. Ví dụ Customers là những người khách hàng được quản lý trong hệ thống chứ không phải người dùng máy ATM bên ngoài. Bạn phải lưu ý điều này để phân biệt Class và Actor.
Bước 2: Tìm các thuộc tính và phương thức cho lớp
– Tìm thuộc tính: phân tích thông tin từ các form mẫu có sẵn, bạn sẽ tìm ra thuộc tính cho các đối tượng của lớp. Ví dụ các thuộc tính của lớp Customer sẽ thể hiện trên Form đăng ký thông tin khách hàng.
– Tìm phương thức: phương thức là các hoạt động mà các đối tượng của lớp này có thể thực hiện. Chúng ta sẽ bổ sung phương thức đầy đủ cho các lớp khi phân tích Sequence Diagram sau này.
Bước 3: Xây dựng các quan hệ giữa các lớp và phát hiện các lớp phát sinh
– Phân tích những quan hệ giữa những lớp và định nghĩa những lớp phát sinh do những quan hệ sinh ra. Chúng ta nghiên cứu và phân tích những thực thể ở trên và nhận thấy .
- Lớp Accounts có thể chia thành nhiều loại tài khoản như Current Accounts và Saving Accounts và có quan hệ thừa kế với nhau.
- Lớp ATM Transactions cũng có thể chia thành nhiều loại giao dịch như Deposit, Withdraw, Transfer v.v.. và chúng cũng có quan hệ thừa kế với nhau.
– Tách tất cả chúng ta và vẽ chúng lên bản vẽ tất cả chúng ta sẽ có Class Diagram cho mạng lưới hệ thống ATM như sau :
Hình 8. Ví dụ về Class Diagram cho hệ thống ATM
4. Đặc tả Class
Nhìn vào Class Diagram tất cả chúng ta hoàn toàn có thể thấy cấu trúc của mạng lưới hệ thống gồm những lớp nào nhưng để thiết lập chúng, tất cả chúng ta phải đặc tả cụ thể hơn nữa. Trong đó, cần miêu tả : – Các thuộc tính : Tên, kiểu tài liệu, kích cỡ – Các phương pháp :
- + Tên
- + Mô tả
- + Tham số đầu vào: Tên, kiểu dữ liệu, kích thươcs
- + Kết quả đầu ra: Tên, kiểu dữ 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
Tuy nhiên, việc này cũng mất khá nhiều thời hạn. Nếu tăng trưởng theo quy mô Agile thì bạn không phải thao tác này mà những thành viên tăng trưởng phải nắm điều này để thiết lập .
5. Sử dụng bản vẽ Class
Có thể tóm tắt một số ít ứng dụng của bản vẽ Class Diagram như sau : – Hiểu cấu trúc của mạng lưới hệ thống – Thiết kế mạng lưới hệ thống – Sử dụng để nghiên cứu và phân tích cụ thể những công dụng ( Sequence Diagram, State Diagram v.v … ) – Sử dụng để thiết lập ( coding )
6. Kết luận
Như vậy, tất cả chúng ta đã tìm hiểu và khám phá xong về Class Diagram, những bạn cần thực hành thực tế nhiều để hiểu về bản vẽ quan trọng này .
Để giúp các bạn nắm rõ hơn về Class Diagram, trong bài tiếp theo chúng ta sẽ thực hành xây dựng Class Diagram cho hệ thống eCommerce đã mô tả trong Case Study ở bài 3.
Xem thêm: Daddy là gì
Bài tiếp: Thực hành xây dựng Class Diagram
Bài trước: Thực hành xây dựng bản vẽ Use Case
Từ khóa » Trong Class Diagram (sơ đồ Lớp) Có đối Tượng Actor
-
Bản Vẽ Sơ đồ Lớp - Class Diagram - IViettech
-
Phân Tích Thiết Kế Hệ Thống Thông Tin Sử Dụng Biểu đồ UML (Phần 1)
-
Tìm Hiểu Về Cách Thiết Kế Class Diagram - Viblo
-
[PDF] THỰC HÀNH XÂY DỰNG BIỂU ĐỒ LỚP, BIỂU ĐỒ TRẠNG THÁI
-
Bản Vẽ Sơ đồ Lớp – Class Diagram - Khóa Học đấu Thầu
-
[PDF] Bài 13: Tổng Quan Về UML - Soict
-
Sơ đồ Lớp (Class Diagram) Và Cách Xây Dựng Bản Vẽ Class - Bepress
-
[PDF] Phân Tích Hướng đối Tượng UML - FIT@MTA
-
Phân Tích Hướng đối Tượng | Other - Quizizz
-
[PDF] HIENLTH_OOAD_05_ClassDiag...
-
Hướng Dẫn Cách Thiết Kế Sơ đồ Lớp - Class Diagram Trong UML
-
[PDF] PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG VỚI UML
-
[PDF] Chương 2: Mô Hình Hóa Hệ Phần Mềm Hướng đối Tượng