Chương 7: Mô hình hóa cấu trúc
Đối tượng(object) có thểbiểu diễn một
người, vị trí, sựkiện hoặc giao dịch.
fĐối tượng cụthể(concrete)
fĐối tượng trừu tượng (abstract)
Đối tượng làmột thực thểbao gồm dữliệu
(data) vàhành vi (behavior).
fCác đối tượng được phân loại thành các lớp
(class).
fMỗi đối tượng riêng biệt là một thể hiện
(instance) của một lớp.
72 trang |
Chia sẻ: tlsuongmuoi | Lượt xem: 3405 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Chương 7: Mô hình hóa cấu trúc, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Chương 7. Mô hình hóa cấu trúc 2006 1Nguyễn Trung Trực - Khoa CNTT
Chương 7
Mô hình hóa cấu trúc
Chương 7. Mô hình hóa cấu trúc 2006 2Nguyễn Trung Trực - Khoa CNTT
Nội dung
Các qui tắc và hướng dẫn cách tạo các
bản CRC, các sơ đồ lớp và các sơ đồ đối
tượng.
Các quá trình tạo các bản CRC, các sơ đồ
lớp và các sơ đồ đối tượng.
Mối liên hệ giữa các mô hình cấu trúc và
các mô hình use-case.
Chương 7. Mô hình hóa cấu trúc 2006 3Nguyễn Trung Trực - Khoa CNTT
Giới thiệu
Mô hình cấu trúc hoặc mô hình ý niệm mô
tả cấu trúc của dữ liệu được dùng trong
các quá trình nghiệp vụ của công ty.
Cấu trúc dữ liệu được sử dụng trong hệ
thống sẽ được biểu diễn thông qua các
bản CRC, các sơ đồ lớp và các sơ đồ đối
tượng.
Chương 7. Mô hình hóa cấu trúc 2006 4Nguyễn Trung Trực - Khoa CNTT
Mục đích của mô hình cấu trúc
Làm giảm các “thiếu sót ngữ nghĩa”
(semantic gap) giữa thế giới thực và phần
mềm.
Tạo từ vựng cho những người phân tích
và người sử dụng.
Biểu diễn các vật, các ý tưởng và các khái
niệm quan trọng trong lãnh vực ứng dụng.
Chương 7. Mô hình hóa cấu trúc 2006 5Nguyễn Trung Trực - Khoa CNTT
Đối tượng
Đối tượng (object) có thể biểu diễn một
người, vị trí, sự kiện hoặc giao dịch.
f Đối tượng cụ thể (concrete)
f Đối tượng trừu tượng (abstract)
Đối tượng là một thực thể bao gồm dữ liệu
(data) và hành vi (behavior).
f Các đối tượng được phân loại thành các lớp
(class).
fMỗi đối tượng riêng biệt là một thể hiện
(instance) của một lớp.
Chương 7. Mô hình hóa cấu trúc 2006 6Nguyễn Trung Trực - Khoa CNTT
Đối tượng
Qui ước đặt tên đối tượng
f Tênđốitượng: Tênlớp
f Từ đầu tiên: viết chữ thường.
f Các từ kế tiếp: viết chữ hoa cho ký tự đầu
tiên.
Chương 7. Mô hình hóa cấu trúc 2006 7Nguyễn Trung Trực - Khoa CNTT
Đối tượng
myWasher: WashingMachine
brandName = “Laundatorium”
modelName = “Washmeister”
serialNumber = “GL57774”
capacity = 16
Object Name
Attributes
Operations
An object has a specific value for every one of its class’s attributes
Chương 7. Mô hình hóa cấu trúc 2006 8Nguyễn Trung Trực - Khoa CNTT
Lớp
Lớp (class) là một tập hợp các đối tượng
có cùng các thuộc tính, các tác vụ, các mối
liên kết và ngữ nghĩa.
Tất cả các đối tượng của một lớp là các
thể hiện của lớp này.
Lớp là các khuôn mẫu (template) để tạo
các thể hiện hoặc các đối tượng.
f Lớp cụ thể (concrete)
f Lớp trừu tượng (abstract)
Qui ước đặt tên lớp
f Têngói:: Tênlớp
f Viết chữ hoa cho ký tự đầu tiên của mỗi từ.
Chương 7. Mô hình hóa cấu trúc 2006 9Nguyễn Trung Trực - Khoa CNTT
Lớp
Household Appliances:: WashingMachine
brandName
modelName
serialNumber
capacity
addClothes()
removeClothes()
addDetergent()
turnOn()
Class Name
Attributes
Operations
A Class with its attributes and operations
Chương 7. Mô hình hóa cấu trúc 2006 10Nguyễn Trung Trực - Khoa CNTT
1 // An actor with “name” and “stage name” attributes
2 public class Actor {
3 // Fields
4 private String name, stageName;
5 // Create a new actor with the given stage name
6 public Actor(String sn) {
7 name = “”;
8 stageName = sn;
9 }
10 // Get the name
11 public String getName() {
12 return name;
13 }
14 // Set the name
15 public void setName(String n) {
16 name = n
17 }
18 // Get the stage name
19 public void setStageName() {
20 return stageName
21 }
22 // Set the stage name
23 public void setStageName(String sn) {
24 stageName = sn
25 }
26 // Reply a summary of this actor’s attributes, as a string
27 public String toString() {
28 return “I am known as “ + getStageName() + “, but my real name is “ + getName()
29 }
30 }
A sample Java class
Chương 7. Mô hình hóa cấu trúc 2006 11Nguyễn Trung Trực - Khoa CNTT
Lớp
Element Purpose Example
Class name Referring to the class
elsewhere in our code.
Actor, line 2
Fields Describing the information
stored by this kind of object.
name and stageName, line 4
Constructors Controlling initialization of
the objects.
Actor(), line 6
Messages Providing other objects with
a way to use the objects.
getName(), line 11;
setName(), line 15;
getStageName(), line 19;
setStageName(), line 23;
toString(), line 27
Operations Telling the objects how to
behave.
lines 12, 16, 20, 24, 28
Comments Telling programmers how to
use or maintain the class
(ignored by the compiler).
lines starting //, e.g. lines 1, 3
Information defined by a class
Chương 7. Mô hình hóa cấu trúc 2006 12Nguyễn Trung Trực - Khoa CNTT
Lớp và đối tượng
Class
Class Student
Instances
Objects Maria and David of the Class Student
Chương 7. Mô hình hóa cấu trúc 2006 13Nguyễn Trung Trực - Khoa CNTT
Lớp và đối tượng
Chương 7. Mô hình hóa cấu trúc 2006 14Nguyễn Trung Trực - Khoa CNTT
Thuộc tính
Thuộc tính (attribute) là một đặc tính được
đặt tên của một lớp, dùng để mô tả một
miền trị có thể gán cho các thể hiện của
thuộc tính này.
Các lớp che giấu dữ liệu thông qua các
thuộc tính.
Chỉ nên đưa vào các thuộc tính quan trọng
cho công việc.
Qui ước đặt tên thuộc tính:
f Từ đầu tiên: viết chữ thường.
f Các từ kế tiếp: viết chữ hoa cho ký tự đầu
tiên.
Chương 7. Mô hình hóa cấu trúc 2006 15Nguyễn Trung Trực - Khoa CNTT
Thuộc tính
WashingMachine
brandName: String = ‘Laundatorium”
modelName: String
serialNumber: String
capacity: Integer
An attribute can show its types as well as a default value
Chương 7. Mô hình hóa cấu trúc 2006 16Nguyễn Trung Trực - Khoa CNTT
Thuộc tính
Các loại thuộc tính
f Thuộc tính đơn (simple attribute): chứa giá trị
đơn.
f Thuộc tính xác định (identifier): chứa giá trị
khóa duy nhất.
f Thuộc tính đa trị (multivalued attribute): chứa
nhiều giá trị thuộc cùng một miền trị.
f Thuộc tính phức hợp (composite attribute):
một nhóm gồm các thuộc tính liên quan với
nhau.
f Thuộc tính dẫn xuất (derived attribute) là
thuộc tính được suy từ các thuốc tính khác,
ký hiệu / đứng trước tên thuộc tính.
Chương 7. Mô hình hóa cấu trúc 2006 17Nguyễn Trung Trực - Khoa CNTT
Thuộc tính
Kiểu mở rộng (stereotype) là một thành
phần (construct) cho phép mở rộng từ
vựng của UML.
Các loại kiểu mở rộng trong sơ đồ lớp
f Kiểu mở rộng khóa chính: >.
f Kiểu mở rộng đa trị: >.
Chương 7. Mô hình hóa cấu trúc 2006 18Nguyễn Trung Trực - Khoa CNTT
Thuộc tính
Primary key is a unique
identifier; no two Student
instances will have the
same studentId value.
The Identifier shown by the Stereotype >
Chương 7. Mô hình hóa cấu trúc 2006 19Nguyễn Trung Trực - Khoa CNTT
Thuộc tính
Multivalued attribute can
contain multiple values;
a student may have
several phone numbers
Attribute phoneNumber shown by the Stereotype >
Chương 7. Mô hình hóa cấu trúc 2006 20Nguyễn Trung Trực - Khoa CNTT
Thuộc tính
Composite attributes have multiple sections (subattributes).
They are treated as separate classes in conceptual data models.
Attribute Address shown as a type Address
Composite attribute Address shown as a Class
Composite attribute Address shown as a Class
Chương 7. Mô hình hóa cấu trúc 2006 21Nguyễn Trung Trực - Khoa CNTT
Phương thức và thông điệp
Tác vụ (operation) là một hành vi của một
đối tượng.
f Tập trung vào các tác vụ cụ thể để giải quyết
vấn đề.
Tác vụ được thể hiện trong các lớp là các
phương thức (methods).
Phương thức được xác định và được yêu
cầu thông qua các dấu hiệu (signature)
của nó, bao gồm tên, các tham số và kiểu
trả về.
f Tương tự với một hàm hoặc một thủ tục.
Chương 7. Mô hình hóa cấu trúc 2006 22Nguyễn Trung Trực - Khoa CNTT
Phương thức và thông điệp
WashingMachine
brandName
modelName
serialNumber
capacity
addClothes(C: String)
removeClothes(C: String)
addDetergent(D: Integer)
turnOn(): Boolean
The signature for an operation
Chương 7. Mô hình hóa cấu trúc 2006 23Nguyễn Trung Trực - Khoa CNTT
Phương thức và thông điệp
Thông điệp (message) được gửi đến các
phương thức của đối tượng.
fGọi thủ tục (procedure call) từ một đối tượng
này đến đối tượng khác.
Tính sử dụng lại (reusability) là một đặc
tính sử dụng một đối tượng bằng cách gọi
các phương thức.
Chương 7. Mô hình hóa cấu trúc 2006 24Nguyễn Trung Trực - Khoa CNTT
Phương thức và thông điệp
Signature identifies and
invokes the behavior
Method implements the behavior
An Operation with Signature and Method Written in PL/SQL
Chương 7. Mô hình hóa cấu trúc 2006 25Nguyễn Trung Trực - Khoa CNTT
Phương thức và thông điệp
Chương 7. Mô hình hóa cấu trúc 2006 26Nguyễn Trung Trực - Khoa CNTT
Tính khả kiến
Tính khả kiến (Visibility) được áp dụng cho
các thuộc tính và các phương thức của
một lớp và cho phép các lớp khác có thể
sử dụng các thuộc tính và các phương
thức của lớp này (phương thức giao tiếp).
f Public: ký hiệu +, các lớp khác có thể sử
dụng được.
f Protected: ký hiệu #, chỉ các lớp có thừa kế
từ lớp này sử dụng được.
f Private: ký hiệu -, chỉ có lớp này sử dụng
được.
Chương 7. Mô hình hóa cấu trúc 2006 27Nguyễn Trung Trực - Khoa CNTT
Tính khả kiến
Television
+ brandName
+ modelName
+ changeVolume()
+ changeChannel()
- paintImageOnScreen()
…
Automobile
+ make
+ modelName
+ accelerate()
+ brake()
# updateMileageCount ()
…
Chương 7. Mô hình hóa cấu trúc 2006 28Nguyễn Trung Trực - Khoa CNTT
Tính tổng quát hóa
Lớp cha (superclass, general class, parent
class) là lớp ở phía trên của cây phân cấp
lớp.
Lớp con (subclass, specific class, child
class) là lớp ở phía dưới của cây phân cấp
lớp.
Tính tổng quát hóa (generalization) là mối
liên kết giữa một lớp cha với một lớp con.
Lớp con có thể có thêm các thuộc tính và
các phương thức riêng.
Chương 7. Mô hình hóa cấu trúc 2006 29Nguyễn Trung Trực - Khoa CNTT
Tính tổng quát hóa
Class Hierarchy
Chương 7. Mô hình hóa cấu trúc 2006 30Nguyễn Trung Trực - Khoa CNTT
Tính tổng quát hóa
Generalization represented by
arrows from subclass to
superclass
Subclasses inherit all
attributes and
operations of
superclasses
An Example of Generalization
Chương 7. Mô hình hóa cấu trúc 2006 31Nguyễn Trung Trực - Khoa CNTT
Tính tổng quát hóa
Multiple inheritance is
complicated and not
supported by all
object-oriented
programming
languages.
Generalization based on two characteristics
Chương 7. Mô hình hóa cấu trúc 2006 32Nguyễn Trung Trực - Khoa CNTT
Tính thừa kế
Tính thừa kế (inheritance) là một cơ chế
mà lớp con trong mối liên kết tổng quát
hóa có được các thuộc tính và các tác vụ
của lớp cha.
Lớp con thừa kế tất cả các thuộc tính và
các phương thức của các lớp cao hơn
trong cây phân cấp lớp.
Chương 7. Mô hình hóa cấu trúc 2006 33Nguyễn Trung Trực - Khoa CNTT
Tính thừa kế
Chương 7. Mô hình hóa cấu trúc 2006 34Nguyễn Trung Trực - Khoa CNTT
Tính đa hình và kết nối động
Tính đa hình (polymorphism) là khả năng
của các đối tượng khác nhau đáp ứng các
thông điệp giống nhau theo các cách khác
nhau.
fMột thông điệp có thể được hiểu khác nhau
tùy theo các lớp đối tượng khác nhau.
f Các hành vi khác nhau đối với cùng một
thông điệp.
Polymorphism = “having many forms”.
Chương 7. Mô hình hóa cấu trúc 2006 35Nguyễn Trung Trực - Khoa CNTT
Tính đa hình và kết nối động
Kết nối động (dynamic binding), còn được
gọi là kết nối về sau (late binding) là một
kết nối mà chưa định kiểu hoặc chọn một
phương thức cho một đối tượng cho đến
khi chạy chương trình.
Kết nối tĩnh (static binding) là một kết nối
mà kiểu của đối tượng được xác định ở
thời gian biên dịch.
Chương 7. Mô hình hóa cấu trúc 2006 36Nguyễn Trung Trực - Khoa CNTT
Tính đa hình và tính bao đóng
Here, each type of
vehicle has its own
version of calcPrice()
An Example of Polymorphism
Chương 7. Mô hình hóa cấu trúc 2006 37Nguyễn Trung Trực - Khoa CNTT
Tính đa hình và tính bao đóng
Chương 7. Mô hình hóa cấu trúc 2006 38Nguyễn Trung Trực - Khoa CNTT
Mối liên kết
Mối liên kết (relationship / association) là
mối quan hệ ngữ nghĩa giữa các đối tượng
của một hoặc nhiều lớp.
Trong UML, mối liên kết được biểu diễn
bằng một đường nối giữa hai hoặc nhiều
lớp (hoặc nối cùng một lớp).
Chương 7. Mô hình hóa cấu trúc 2006 39Nguyễn Trung Trực - Khoa CNTT
Mối liên kết
Roles identify the purpose of each class in the relationship.
Relationship between Classes
Chương 7. Mô hình hóa cấu trúc 2006 40Nguyễn Trung Trực - Khoa CNTT
Mối liên kết
Các loại mối liên kết
fMối liên kết đơn giản (simple relationship):
không có mối quan hệ chủ (ownership),
không có đối tượng phụ thuộc vào đối tượng
khác.
fMối liên kết bao gộp (aggregation
relationship): mối quan hệ bộ phận-toàn thể
(part-whole relationship) mà một bộ phận có
thể tồn tại độc lập với toàn thể.
fMối liên kết hợp thành (composition
relationship): mối liên kết bộ phận-toàn thể
mà một bộ phận và toàn thể hoàn toàn phụ
thuộc lẫn nhau.
Chương 7. Mô hình hóa cấu trúc 2006 41Nguyễn Trung Trực - Khoa CNTT
Mối liên kết
Transaction and Line Items as Composition
Loosely Bound Aggregation
Chương 7. Mô hình hóa cấu trúc 2006 42Nguyễn Trung Trực - Khoa CNTT
Mối liên kết
Bậc của mối liên kết (relationship degree)
là số lượng các lớp tham gia đồng thời
vào mối liên kết.
fMối liên kết một ngôi (unary relationship) là
mối liên kết giữa các đối tượng của cùng một
lớp.
fMối liên kết hai ngôi (binary relationship) là
mối liên kết giữa các đối tượng của hai lớp
lớp khác nhau.
fMối liên kết ba ngôi (ternary relationship) là
mối liên kết giữa các đối tượng của ba lớp
khác nhau.
Chương 7. Mô hình hóa cấu trúc 2006 43Nguyễn Trung Trực - Khoa CNTT
Mối liên kết
Unary Relationship
Binary Relationship
Chương 7. Mô hình hóa cấu trúc 2006 44Nguyễn Trung Trực - Khoa CNTT
Mối liên kết
Ternary Relationship
Chương 7. Mô hình hóa cấu trúc 2006 45Nguyễn Trung Trực - Khoa CNTT
Mối liên kết
Lượng số của mối liên kết (relationship
cardinality / multiplicity) là số lượng đối
tượng của lớp A có thể hoặc phải liên kết
với mỗi đối tượng của lớp B.
f Lượng số nhỏ nhất (minimum cardinality) là
số lượng nhỏ nhất các đối tượng của lớp A
liên kết với mỗi đối tượng của lớp B.
f Lượng số lớn nhất (maximum cardinality) là
số lượng lớn nhất các đối tượng của lớp A
liên kết với mỗi đối tượng của lớp B.
Các loại lượng số
fOne – to – one
fOne – to – many
fMany – to – many
Chương 7. Mô hình hóa cấu trúc 2006 46Nguyễn Trung Trực - Khoa CNTT
Mối liên kết
Husband Wife
is married to ►1 1
one–to–one
Teacher Student
teaches ►1 *
one–to–many
Bank
Teller Customer
serves ►1 1..*
House Chimney
has ►1 0,1
one–to–one or more
one–to–zero or one
Full Time
Student
Credit
Hour
takes ►1 12..18 one–to–12 through 18
Tricycle Wheel
has ►1 3 one–to–three
Egg Box Egg
holds ►1 12,24
one–to–12 or 24
Chương 7. Mô hình hóa cấu trúc 2006 47Nguyễn Trung Trực - Khoa CNTT
Mối liên kết
Roles make it clearer to see
which should be on the one
side and which should be on
the many side of the
relationship.
Use of Roles to illustrate Cardinality in a 1:M Unary Relationship
Chương 7. Mô hình hóa cấu trúc 2006 48Nguyễn Trung Trực - Khoa CNTT
Mối liên kết
Cardinality in a Ternary Relationship
Chương 7. Mô hình hóa cấu trúc 2006 49Nguyễn Trung Trực - Khoa CNTT
Lớp kết hợp
Lớp kết hợp (associative class) là một lớp
đặc biệt biểu diễn mối liên kết giữa các lớp
và chứa các thuộc tính của mối liên kết.
Lớp kết hợp được biểu diễn bởi một lớp
nối với một mối liên kết bằng một đường
thẳng nét đứt.
Lớp kết hợp có thể có mối liên kết với các
lớp khác.
Chương 7. Mô hình hóa cấu trúc 2006 50Nguyễn Trung Trực - Khoa CNTT
Lớp kết hợp
A Certificate represents a relationship between an employee and a
course, and has an attribute pertaining to that relationship
Example of an Associative Class
Chương 7. Mô hình hóa cấu trúc 2006 51Nguyễn Trung Trực - Khoa CNTT
Lớp kết hợp
Sometimes
associative classes
have their own
relationships with
other classes.
Relationship between an Associative Class and a Class
Chương 7. Mô hình hóa cấu trúc 2006 52Nguyễn Trung Trực - Khoa CNTT
Các sơ đồ cấu trúc
Các sơ đồ cấu trúc
f Sơ đồ lớp (class diagram)
f Sơ đồ đối tượng (object diagram)
f Sơ đồ gói (package diagram)
f Sơ đồ triển khai (deployment diagram)
f Sơ đồ thành phần (component diagram)
f Các sơ đồ cấu trúc phức hợp (composite
structure diagram)
Chương 7. Mô hình hóa cấu trúc 2006 53Nguyễn Trung Trực - Khoa CNTT
Các sơ đồ cấu trúc
Sơ đồ lớp
f class diagram
f Cho thấy mối liên kết giữa các lớp.
Chương 7. Mô hình hóa cấu trúc 2006 54Nguyễn Trung Trực - Khoa CNTT
Các sơ đồ cấu trúc
Class Diagram
Chương 7. Mô hình hóa cấu trúc 2006 55Nguyễn Trung Trực - Khoa CNTT
Các sơ đồ cấu trúc
Sơ đồ đối tượng
f object diagram
f Cho thấy mối liên kết giữa các đối tượng.
Chương 7. Mô hình hóa cấu trúc 2006 56Nguyễn Trung Trực - Khoa CNTT
Các sơ đồ cấu trúc
Object Diagram
Chương 7. Mô hình hóa cấu trúc 2006 57Nguyễn Trung Trực - Khoa CNTT
Các sơ đồ cấu trúc
Sơ đồ gói
f package diagram
fGom nhóm các phần tử của UML với nhau để
tạo ra các cấu trúc ở mức cao hơn.
Chương 7. Mô hình hóa cấu trúc 2006 58Nguyễn Trung Trực - Khoa CNTT
Các sơ đồ cấu trúc
Package Diagram of Dependency Relationships Among Layers
Chương 7. Mô hình hóa cấu trúc 2006 59Nguyễn Trung Trực - Khoa CNTT
Các sơ đồ cấu trúc
Package Diagram of Appointment System
Chương 7. Mô hình hóa cấu trúc 2006 60Nguyễn Trung Trực - Khoa CNTT
Các sơ đồ cấu trúc
Sơ đồ triển khai
f deployment diagram
f Cho thấy kiến trúc vật lý và các thành phần
phần mềm của hệ thống.
Sơ đồ thành phần
f component diagram
f Cho thấy mối liên kết vật lý giữa các thành
phần phần mềm.
Sơ đồ cấu trúc phức hợp
f composite structure diagram
f Cho thấy cấy trúc bên trong của một lớp.
Chương 7. Mô hình hóa cấu trúc 2006 61Nguyễn Trung Trực - Khoa CNTT
Các sơ đồ cấu trúc
Three Versions of Appointment System Deployment Diagram.
Chương 7. Mô hình hóa cấu trúc 2006 62Nguyễn Trung Trực - Khoa CNTT
Các sơ đồ cấu trúc
Simple Internet Architecture
Chương 7. Mô hình hóa cấu trúc 2006 63Nguyễn Trung Trực - Khoa CNTT
Trách nhiệm và sự cộng tác
Trách nhiệm
f responsibility
f Trách nhiệm là sự mô tả về những gì mà một
lớp phải thực hiện.
f Trách nhiệm được thể hiện bằng các tác vụ
của lớp.
f Ví dụ: trách nhiệm của máy giặt là nạp vào đồ
dơ và cho ra đồ sạch.
Chương 7. Mô hình hóa cấu trúc 2006 64Nguyễn Trung Trực - Khoa CNTT
Trách nhiệm và sự cộng tác
WashingMachine
>
brandName
modelName
serialNumber
>
capacity
>
addClothes()
removeClothes()
addDetergent()
>
turnOn()
Chương 7. Mô hình hóa cấu trúc 2006 65Nguyễn Trung Trực - Khoa CNTT
Trách nhiệm và sự cộng tác
Sự cộng tác
f collaboration
f Các đối tượng làm việc chung với nhau để
phục vụ một yêu cầu.
Chương 7. Mô hình hóa cấu trúc 2006 66Nguyễn Trung Trực - Khoa CNTT
Thẻ CRC
CRC – Class-Responsibility-Collaboration
Chương 7. Mô hình hóa cấu trúc 2006 67Nguyễn Trung Trực - Khoa CNTT
Thẻ CRC
CRC – Class-Responsibility-Collaboration
Chương 7. Mô hình hóa cấu trúc 2006 68Nguyễn Trung Trực - Khoa CNTT
Các tác vụ khác
Tác vụ Constructor
f Tạo đối tượng.
Truy vấn
f Tạo thông tin về nghiệp vụ.
Cập nhật
f Thay đổi các giá trị của một số hoặc tất cả
các thuộc tính.
Chương 7. Mô hình hóa cấu trúc 2006 69Nguyễn Trung Trực - Khoa CNTT
Đơn giản hóa sơ đồ lớp
Cơ chế khung nhìn (view mechanism) cho
thấy tập con thông tin.
Các gói cho thấy các kết hợp của các lớp
(hoặc các phần tử trong UML).
Chương 7. Mô hình hóa cấu trúc 2006 70Nguyễn Trung Trực - Khoa CNTT
Xác định đối tượng
Phân tích văn bản của đặc tả use-case.
f Các danh từ gợi ý các lớp.
f Các động từ gợi ý các tác vụ.
Tạo bản phác thảo ban đầu.
Danh sách đối tượng chung.
Các sự kiện (incident).
Các vai trò (role).
Chương 7. Mô hình hóa cấu trúc 2006 71Nguyễn Trung Trực - Khoa CNTT
Các kiểu mẫu (pattern)
Một nhóm bao gồm các lớp có ích mà
chúng xuất hiện trong các trường hợp
khác nhau.
Các giao tác
f Lớp giao tác
f Lớp chi tiết đơn hàng
f Lớp mặt hàng
f Lớp vị trí
f Lớp người tham gia
Chương 7. Mô hình hóa cấu trúc 2006 72Nguyễn Trung Trực - Khoa CNTT
1. Tạo các thẻ CRC bằng cách thực hiện việc phân
tích văn bản của các use-case.
2. Bổ sung các lớp, các thuộc tính, các tác vụ và
các mối liên kết bằng cách sử dụng cách tiếp
cận liệt kê đối tượng chung.
3. Thực hiện mỗi use-case bằng cách sử dụng các
thẻ CRC.
4. Tạo sơ đồ lớp dựa vào các thẻ CRC.
5. Xem lại mô hình cấu trúc để phát hiện các lớp,
các thuộc tính, các tác vụ và các mối liên kết bị
thiếu và / hoặc không cần thiết.
6. Kết hợp các kiểu mẫu có ích.
7. Xem lại mô hình cấu trúc.
Các bước để xác định đối tượng và mô
hình hóa cấu trúc
Các file đính kèm theo tài liệu này:
- Mô hình hóa cấu trúc.pdf