Professional Documents
Culture Documents
OOAD5.Modelling Static Structure-Le's MacBook Pro
OOAD5.Modelling Static Structure-Le's MacBook Pro
đối tượng
Chế độ xem tĩnh Phối cảnh kiến trúc
Sơ đồ lớp Sơ đồ gói
Sơ đồ đối tượng Sơ đồ thành phần
Sơ đồ ca sử dụng
OOAD
134
Machine Translated by Google
Yêu cầu
Phân tích Thiết kế
Thu thập
Xác định mô hình khái Thiết kế giải pháp/kế
Xác định đặc tả yêu niệm hoạch phần mềm
cầu
Hội nhập và
Thực hiện Bài kiểm tra Triển khai
yêu cầu
BẢO TRÌ
OOAD
135
Machine Translated by Google
huyền thoại
hành vi
Biểu đồ Đồ thị
OOAD
Machine Translated by Google
Sơ đồ lớp
Sơ đồ lớp ■ bao
gồm một tập hợp các lớp, giao diện và mối quan hệ của chúng
■ thể hiện chế độ xem tĩnh của hệ thống
■ có thể sản xuất/xây dựng bộ xương của hệ thống
Mô hình hóa sơ đồ lớp là bước thiết yếu trong thiết kế hướng đối
tượng
OOAD
137
Machine Translated by Google
OOAD
138
Machine Translated by Google
■ không chứa thông tin về cách triển khai hệ thống phần mềm
Địa chỉ
Học sinh
Đường phố
Tên
sống ở Thành phố
Số điện thoại 1 1
Tình trạng
Đi a chi email
Mã bưu điện
Mã số sinh viên
Quốc gia
Điểm trung bình
Xác thực
Có đủ điều kiện để đăng ký
Xuất dưới dạng nhãn
Cung cấp các hội thảo đã thực hiện
OOAD
139
Machine Translated by Google
Sơ đồ lớp thiết kế
■ chứa thông tin về cách triển khai hệ thống phần mềm khả năng hiển
thị của các thuộc
tính và phương thức tên thuộc tính và
phương thức phù hợp với ngôn ngữ lập trình đích
Địa chỉ
Học sinh
Đường phố
Tên
1
sống ở 1
Tình trạng
Đi a chi email
Mã số sinh viên Mã bưu điện
Xác thực
Có đủ điều kiện để đăng ký
Cung cấp các hội thảo đã thực hiện Xuất dưới dạng nhãn
Đối tượng là sự trừu tượng của các thực thể trong thế giới thực hoặc hệ thống
xe buýt
mô hình
xe hơi
mô hình
tách
mô hình
OOAD
Machine Translated by Google
Một lớp là một khuôn mẫu cho các cá thể thực tế, trong bộ nhớ
sản phẩm
số seri
tên
giá
Tên lớp
mua()
hiển thị()
Thuộc tính
Hoạt động
OOAD
Giới thiệu | Lớp học | Quan hệ | Khái quát hóa | Hướng dẫn
Machine Translated by Google
Lớp học
Lớp UML
■ đại diện cho khái niệm lớp hoặc giao diện của ngôn ngữ lập trình
hướng đối tượng
■ bao gồm một tập hợp các thuộc tính và thao tác ■
có thể được biểu diễn bằng đồ họa dưới nhiều dạng
Tên lớp Tên lớp Tên lớp Tên lớp
thuộc tính1 hoạt động1 thuộc tính1
thuộc tính2 hoạt động2 thuộc tính2
… … …
hoạt động1
hoạt động2
…
Thuộc tính
Thuộc tính thể hiện dữ liệu cần thiết của các thể hiện của lớp Thuộc tính có thể
có
■ một loại
số nguyên = 10
OOAD
145
Machine Translated by Google
Thuộc tính
OOAD
147
Machine Translated by Google
Các hoạt động thể hiện các hành vi của thể hiện của lớp Hành vi của một lớp bao gồm
trường hợp
■ Một số nhiệm vụ nhất định gắn liền với trách nhiệm của lớp
OOAD
148
Machine Translated by Google
Các thuộc tính có thể được khấu trừ khỏi các thuộc tính khác
OOAD
149
Machine Translated by Google
Hiển thị
“ - “
+ thay đổi kích thước (các: thực)
OOAD
150
Machine Translated by Google
OOAD
Machine Translated by Google
Mối quan hệ ngữ nghĩa giữa các lớp ■ Tập hợp Một
Thành phần
Lớp thực hiện các thao tác và thuộc tính được xác định bởi giao diện. ■ Sự
OOAD
152
Machine Translated by Google
HOẶC
■ Tổng hợp
HOẶC
■ Thành phần
■ Sự phụ thuộc
OOAD
Machine Translated by Google
thành phần
OOAD
Machine Translated by Google
Lớp học
Giao diện
■ Lớp triển khai một mẫu à Triển khai các chức năng
OOAD
Machine Translated by Google
Tên
Hiển thị
Công cộng
Thuộc tính
Được bảo vệ
Riêng tư
hoạt động
Tên
OOAD
Machine Translated by Google
Sự kết hợp
■ được dùng để chỉ ra cách hai lớp được liên kết với nhau
■ thể hiện một kết nối ngữ nghĩa hai chiều giữa
các lớp học
■ là sự trừu tượng hóa các liên kết giữa các thể hiện của các lớp
■ Ký hiệu
1 *
tên của hiệp hội
Hạng A Lớp B
vai trò 1 vai trò 2
■ Mỗi đầu của một liên kết được gọi là một vai trò
■ Ví dụ: “Một nhân viên làm việc trong một phòng ban của
Công ty"
OOAD
157
Machine Translated by Google
Sự kết hợp
Tính đa dạng
■ định nghĩa có bao nhiêu thể hiện của lớp A được liên kết với một thể hiện của lớp B
1 chứa *
Mục lục Sản phẩm
Sự kết hợp
OOAD
160
Machine Translated by Google
Sự kết hợp
■ Theo mặc định, các liên kết là hai chiều ■ Tuy nhiên, các liên
1
Thu ngân Doanh thu
hiện tạiBán
■ Khả năng điều hướng trỏ từ Thu ngân đến Bán hàng cho thấy một thuộc tính
có loại Bán hàng ■ Thuộc tính này được
gọi là currentSale
OOAD
161
Machine Translated by Google
Sự kết hợp
■ Khi nào chúng ta sử dụng liên kết hoặc thuộc tính định hướng?
Chúng tôi sử dụng thuộc tính này cho các kiểu dữ liệu “nguyên thủy”, chẳng hạn như
Boolean, Thời gian, Số thực, Số nguyên, …
Chúng tôi sử dụng liên kết định hướng cho các lớp khác
Chỉ để thể hiện tốt hơn thôi, 2 cách này tương đương nhau về mặt ngữ
nghĩa
Ví dụ
1
Thu ngân Doanh thu
hiện tạiBán
số ID thời gian: Thời gian
OOAD
162
Machine Translated by Google
Sự kết hợp
■ Một ví dụ khác
phẩm: Sản số ID
phẩm[1..*]
…
1..*
Mục lục các sản phẩm
Sản phẩm
số ID
…
OOAD
163
Machine Translated by Google
Sự kết hợp
■ Một lớp liên kết cho phép một liên kết được xem xét
như một lớp học
Khi một thuộc tính không thể được gắn vào bất kỳ lớp nào trong hai lớp của một
liên kết
■ Ví dụ
* *
Công ty Người
* *
Công ty Thuê người làm Người
lương
chức vụ
OOAD
164
Machine Translated by Google
Được biểu thị là một lớp gắn liền với liên kết và chỉ định
tên ngày
giá
Thủ tục thanh toán()
số sản phẩm
addAnother()
loại bỏOne()
OOADGiới thiệu | Lớp học | Quan hệ | Khái quát hóa | Hướng dẫn
Machine Translated by Google
Sự kết hợp
Người
OOAD
166
Machine Translated by Google
Di sản
Đa giác
di sản
Hình bình hành Tam giác
Quảng trường
OOAD
167
Machine Translated by Google
Di sản
■ Một đối tượng của lớp con có thể ghi đè lên một đối tượng của
lớp cha của nó
Không chính thức
tộ
àml
Tam giác
OOAD
168
Machine Translated by Google
Di sản
Tam giác
ựq
h
Lớp chuyên
s
k
biệt
OOAD
169
Machine Translated by Google
Di sản
Động vật
người phân biệt đối xử
môi trường sống
OOAD
170
Machine Translated by Google
Tổng hợp
Tập hợp là một hình thức liên kết thể hiện một
sự ghép nối mạnh mẽ hơn (so với liên kết thông thường) giữa lớp
Sự kết hợp được sử dụng giữa hai lớp
■ chủ và nô lệ: “thuộc về”
■ toàn bộ và một phần: “là một phần của”
Ký hiệu
■ Ký hiệu biểu thị vị trí tập hợp của mặt tập hợp
sự tổng hợp
*
Trọn Phần
Ví dụ
2..* 1..*
Xe hơi
Cửa Căn nhà
* 1..* *
1..*
Nhà tuyển dụng Người lao động Trường đại học Học sinh
OOAD
171
Machine Translated by Google
■ Có phải một số giá trị thuộc tính được truyền từ tổng thể tới tất cả
Cửa là một bộ phận của ô tô. Một chiếc ô tô không phải là một phần của cánh cửa.
OOAD
172
Machine Translated by Google
Thành phần
*
Trọn Phần
thành phần
3 1
Điểm
Ví dụ
1
1 Phong cách
bán kính
màu sắc
nó đã đầy
OOAD
173
Machine Translated by Google
Thành phần
trọn.
Vòng tròn
Vòng tròn Điểm
3..* Điểm
Đa giác
OOAD
174
Machine Translated by Google
Một phần có thể được chia sẻ Một phần luôn là một phần của một
bởi nhiều tổng thể tổng thể duy nhất
0..4 * *
loại tài liệu Cửa sổ Khung
Các bộ phận có thể Các bộ phận chỉ tồn tại như một
hoạt động độc lập (tức là toàn bộ phần của tổng thể. Khi bức tường bị
phá hủy
OOAD
Machine Translated by Google
OOAD
176
Machine Translated by Google
phụ thuộc
OOAD
177
Machine Translated by Google
Ký hiệu
Đa giác
Đa giác {trừu tượng}
Hình bình hành Tam giác Hình bình hành Tam giác
khu vực() khu vực() khu vực() khu vực()
OOAD
178
Machine Translated by Google
Giao diện
Giao diện
■ mô tả một phần hành vi nhìn thấy được của một tập hợp
các đối tượng
■ rất giống với một lớp trừu tượng chỉ chứa các thao tác trừu
tượng
■ chỉ xác định các thao tác mà không thực hiện
Hai ký hiệu
giao diện
« giao diện »
Thu ngân
Thu ngân
ATM ATM
OOAD
179
Machine Translated by Google
Giao diện
« giao diện »
Ví dụ
Thu ngân
Người rút Máy móc
tiền gửi
OOAD
180
Machine Translated by Google
Các ràng buộc và ghi chú chú thích cùng những thứ khác
Ràng buộc là các hạn chế về mặt ngữ nghĩa được ghi chú là Boolean
biểu thức.
Khách hàng *
1
có thể
Đặt hàng bị hủy
{ tổng số <$50 }
OOAD
181
Machine Translated by Google
Ví dụ về TVRS
1..*
cảnh sát
id : tên Sự vi phạm
<<trừu tượng>>
OOAD
182
Machine Translated by Google
Lớp chung
Một lớp chung (hoặc được tham số hóa) cho phép xem xét các kiểu
dữ liệu dưới dạng tham số
Các lớp generic thường được sử dụng cho các kiểu tập hợp
các lớp: vector, bảng, ngăn xếp, …
Ký hiệu Tham số
Lớp chung
Ví dụ T
Danh sách
intList = 5 3 9 11
OOAD
183
Machine Translated by Google
Lớp mô tả
idSản phẩm
tên
dãy
giáSố màu
tên
giá
OOAD
184
Machine Translated by Google
Lớp mô tả
trong thế giới thực ■ Giữ thông tin trong đối tượng ngay cả khi các đối tượng
Ví dụ ■ Mô tả
được mô tả bởi1 *
số thời ngày con số
gian giờ …
ngày
OOAD
185
Machine Translated by Google
Sơ đồ lớp được xây dựng ở các giai đoạn khác nhau và ở các thời điểm khác nhau
cấp độ
■ Mô hình miền
Mô hình hóa một tập hợp các lớp khái niệm (khái niệm) và mối quan hệ giữa chúng
■ Mô hình hệ thống
Lập mô hình tất cả các lớp và mối quan hệ của chúng, bao gồm các lớp kiến
trúc và các lớp giao diện người dùng
OOAD
186
Machine Translated by Google
giao diện Xác định trách nhiệm chính của từng lớp khái niệm
■ Trong quá trình phát triển, tinh chỉnh dần dần các sơ đồ lớp cho đến khi hài
lòng Thêm hoặc xóa các lớp,
OOAD
187
Machine Translated by Google
OOAD
188
Machine Translated by Google
Sơ đồ lớp được xây dựng dần dần ở các giai đoạn khác nhau của
quá trình phát triển phần mềm
Địa chỉ
Học sinh
Đường phố
Tên
1 sống ở 1
Tình trạng
Đi a chi email
Mã bưu điện
Mã số sinh viên
Quốc gia
Điểm trung bình
Xác thực
Có đủ điều kiện để đăng ký
Cung cấp các hội thảo đã thực hiện Xuất dưới dạng nhãn
Chuỗi
OOAD
189
Machine Translated by Google
OOAD
190
Machine Translated by Google
doanh nghiệp) liên quan đến giao dịch Sản phẩm, Chuyến bay
giao dịch được ghi lại ở đâu? Bàn thu ngân, Tiền mặt
lý mô tả sự vật Xe hơi
Thuế
OOAD
191
Machine Translated by Google
Xem xét các tài liệu bằng văn bản như đặc tả hoặc mô
tả các trường hợp sử dụng
Trích xuất các tên và coi chúng như các ứng viên của lớp khái niệm
OOAD
192
Machine Translated by Google
• Khách hàng đến quầy thu ngân mang theo sản phẩm cần
mua
• Nhân viên thu ngân mã hóa mã định danh của từng • Quầy thu ngân hiển thị mô tả và giá của
sản phẩm sản phẩm
Nếu một sản phẩm có nhiều hơn một mặt hàng thì Số này được hiển thị
•Sau khi mã hóa xong toàn bộ sản phẩm, nhân viên thu • Bàn thu ngân tính toán và hiển thị
ngân ra hiệu kết thúc việc mua hàng tổng số tiền mà khách hàng phải trả
• Nhân viên thu ngân thông báo tổng số tiền cho khách
hàng
OOAD
193
Machine Translated by Google
Ví dụ (tiếp theo)
•Nhân viên thu ngân nhận tiền thanh toán • Quầy thu ngân in biên lai
• Nhân viên thu ngân đưa tiền thối • Quầy thu ngân lưu lại việc mua hàng
lại cho khách hàng và biên lai
OOAD
194
Machine Translated by Google
Các lớp ứng viên từ các danh từ được xác định từ mô tả ca sử dụng
■ khách hàng, quầy thu ngân, sản phẩm, mặt hàng, nhân viên thu ngân, mua hàng,
thay đổi
OOAD
195
Machine Translated by Google
■ Tránh thêm quá nhiều thuộc tính hoặc liên kết vào một
lớp học
OOAD
196
Machine Translated by Google
A sở hữu B A
kiểm soát B
…
■ Xác định bội số ở mỗi đầu của liên kết ■ Nhãn liên kết
OOAD
197
Machine Translated by Google
Nếu một tập hợp con của các thuộc tính tạo thành một nhóm mạch
lạc thì có thể một lớp mới sẽ được đưa vào
■ Chỉ xác định tên của các thuộc tính ở giai đoạn này (tức là giai
đoạn phân tích)
OOAD
198
Machine Translated by Google
tên bànSố
tên
tiền mặtBànSố
■ Nếu một tập hợp con của các thuộc tính tạo thành một nhóm mạch
lạc thì có thể một lớp mới sẽ được đưa vào
Người
Địa chỉ *
Người Địa chỉ
tên
số1 đường1 tên số đường
thành thành
phố1 phố
số2 đường2
thành
phố2
OOAD
199
Machine Translated by Google
Từ trên xuống
■ Chuyên môn hóa: xây dựng các lớp con từ các lớp chung hiện có
các lớp học
Losange
Hình chữ nhật Losange
OOAD
200
Machine Translated by Google
chạy()
OOAD
201
Machine Translated by Google
■ Trách nhiệm là một hoặc nhiều nhiệm vụ mà hệ thống phải thực hiện
■ Mỗi yêu cầu chức năng phải được quy cho một trong các lớp
Tất cả trách nhiệm của một lớp phải được quy cho một lớp
của các lớp
Nếu một lớp có quá nhiều trách nhiệm thì phải phân chia
thành nhiều lớp
Nếu không thể giao trách nhiệm cho bất kỳ lớp nào thì có thể giới thiệu một lớp
mới
■ Trách nhiệm có thể được xác định bằng cách phân tích các hành động/động từ
trong đặc tả ca sử dụng.
OOAD
202
Machine Translated by Google
OOAD
203
Machine Translated by Google
định kiểu mới cho một thuộc tính (lớp mới), nếu ■ Nó bao gồm một số phần
■ Xác định giá trị ban đầu nếu cần thiết ■ Xác định mức độ
Giới thiệu các mối quan hệ theo các lớp mới được thêm vào ■ Xác định xem một liên kết
là một tập hợp hay một thành phần ■ Đặt tên cho mối quan hệ ■ Đưa ra hướng dẫn
OOAD
204
Machine Translated by Google
Các hoạt động chỉ phục vụ trong lớp được khai báo là "riêng tư"
hoặc "được bảo vệ" nếu lớp đó được kế thừa
OOAD
205
Machine Translated by Google
OOAD
206
Machine Translated by Google
OOAD
207
Machine Translated by Google
OOAD
208
Machine Translated by Google
■ Loại khóa được gán cho sản phẩm có thể xác định loại
quyền có thể được sản xuất. Họ không thể thêm một sản phẩm chỉ được xác định bằng loại khóa HL và
một sản phẩm khác chỉ được xác định bằng loại khóa SL (cho dù là Chế độ quản trị hay Chế độ
người dùng) vào cùng một quyền:
Các sản phẩm chỉ được xác định bằng loại khóa HL có thể được đưa vào
quyền đối với khóa HASP HL, khóa sản phẩm hoặc cập nhật khóa bảo vệ.
Các sản phẩm chỉ được xác định bằng SL AdminMode hoặc SL UserMode
loại khóa chỉ có thể được bao gồm trong các quyền đối với khóa sản phẩm hoặc đối với các
cập nhật khóa bảo vệ.
Các sản phẩm được xác định bằng Chế độ quản trị HL hoặc SL hoặc HL hoặc SL
Loại khóa Chế độ quản trị hoặc Chế độ người dùng SL có thể được bao gồm trong các
quyền đối với khóa HASP HL, khóa sản phẩm hoặc để cập nhật khóa bảo vệ.
OOAD
209
Machine Translated by Google
OOAD
210
Machine Translated by Google
khoản thanh toán, có thể không có khoản thanh toán nào. Mỗi khoản thanh toán có id duy nhất và liên
quan đến chính xác một tài khoản. Mỗi
đơn hàng đều có trạng thái đơn hàng hiện tại. Cả đơn đặt hàng và giỏ hàng đều có các chi tiết đơn hàng
được liên kết với một sản phẩm cụ thể. Mỗi chi tiết đơn hàng có liên quan đến chính xác một
sản phẩm. Một sản phẩm có thể được liên kết với nhiều mục hàng hoặc không có mục nào cả.
OOAD
211
Machine Translated by Google
Ví dụ:
Mua sắm trực tuyến
OOAD
212
Machine Translated by Google
Ví dụ:
OOAD
213
Machine Translated by Google
Ví dụ:
OOAD
214
Machine Translated by Google
Sơ đồ đối tượng
Đối tượng ■
Lớp học
Sự vật
vòng trònObj
:Vòng tròn
OOAD
215
Machine Translated by Google
Sơ đồ đối tượng
Đối tượng ■
tự ■ Sơ đồ cộng tác
Sơ đồ ca sử dụng
OOAD
216
Machine Translated by Google
Sơ đồ đối tượng
Sơ đồ đối tượng
■ đại diện cho một tập hợp các đối tượng và liên kết giữa chúng
■ là các khung nhìn tĩnh của các thể hiện của các phần tử xuất hiện
trong sơ đồ lớp
:Bánh xe
1 4
Động cơ Bánh xe :Động cơ :Bánh xe
:Bánh xe
:Bánh xe
OOAD
217