
- Các tác động: kết hợp phải mô tả một đặc tính về cấu trúc của lĩnh vực ứng
dụng.
- Các kết hợp ba nhánh: các kết hợp ba nhánh nên được tách ra thành các kết
hợp hai nhánh.
- Các kết hợp dẫn xuất: các kết hợp được định nghĩa bằng các kết hợp khác.
Nhận diện các thao tác
Để nhận diện các thao tác, một công cụ thuận lợi là ta nhìn vào các hành vi của
các use case - luồng các sự kiện, sau đó phân bổ các hành vi này vào các lớp được
sử dụng bởi use case đó.
Nhận diện các thuộc tính
Các thuộc tính là đặc tính của đối tượng riêng lẻ. Thuộc tính thường tương ứng
với danh từ theo sau là nhóm từ sở hữu. Thuộc tính kém thích hợp để mô tả đầy đủ
một vấn đề. Thuộc tính ít ảnh hưởng đến cấu trúc cơ sở của vấn đề. Đầu tiên ta ghi
nhận các thuộc tính quan trọng trước, sau đó thêm dần các chi tiết vào sau.
3.4. Các lược đồ trong các gói
Sau khi tìm ra các lớp miền nghiệp vụ ta nhóm các lớp có quan hệ gần gũi vào
trong các gói. Trong mỗi gói có thể chứa gói con trong đó.
Ta có các gói sau:
+ sign in and off package: gói đăng nhập
+ shopping cart package: gói mua chọn hàng, có các gói con là: cart package
và catalog package
+ inventory package: gói thống kê số lượng hàng.

+ customer package: gói khách hàng, có các gói con là: account package,
customer package, order package.
Lược đồ quan hệ giữa các lớp nghiệp vụ và lớp giao diện:
3.4.1. các lược đồ trong gói sign in and off
Ở mô hình quan niệm phân tích, mô tả yêu cầu ứng dụng ta chỉ mô tả sơ lược
về các chức năng mà hệ thống sẽ làm. Đây là mô hình giao tiếp giữa nhà phát triển
với người dùng, nó là bản mẫu cho sự giao tiếp, chưa can thiệp vào cách thực hiện
như thế nào. Cái đó thuộc về pha thiết kế.
a) Các lược đồ trong sign in

Addres s
getStreetName1()
getStreetName2()
getCity ()
getState()
getZipCode()
getCountry ()
(from Uti li ty)
MainForm
signin()
browsec at al og()
updateac count()
dis playc at al og()
dis plays hop pingc art ()
se arch()
signout()
creat eaccount ()
Contac tInformation
telephone
email
address
getE Mail()
getA ddress()
getTelephone()
(f rom Ut il ity)
SignInForm
signin()
create ac count()
enter user name an d pas sword()
display()
display user information()
display m ess age()
0..10..1 0..10..1
Ac count
userId
password
sta tus
Contac tInform ation
create()
update()
get user info()
get email addres s ()
find ac count ()
(from a cco unt)
Signon
username
password
getPassW ord()
updatePas sW ord()
create()
remove()
add signin()
SigninHandler
sign in user()
chec k password()
validate entered usernam e and password()
(fro m P e tsto reEJB )
1..*
1
1..*
1
0..1
0..*
0..1
0..*
retrieves us erId
10..*
10..*
Hình 3.2 : lược đồ lớp sign in
Lược đồ tuần tự của sign in

: customer : MainForm : SignInForm : SigninHandler : Signon : Account
1://sign in()
2://display()
3://enter user name and password( )
4://sign in user( )
5://validate entered username and password( )
6://find account( )
7://getPassWord( )
8://check password( )
9://add signin( )
10://display user information( )
Hình 3.3: lược đồ tuần tự của sign in
b) Các lược đồ trong sign off
Lược đồ lớp của sign off

Hình 3.4: lược đồ lớp của sign off
lược đồ tuần tự của sign off
Hình 3.5: lược đồ tuần tự của sign off