Phân tích miền ứng dụng.

Một phần của tài liệu Tài liệu Đồ án tốt nghiệp - Xây dựng ứng dụng J2EE với Rational Rose và UML pptx (Trang 44 - 51)

• Tầng EIS (Enterprise Information System tier) Mục đích của phát triển ứng dụng này là:

3.3. Phân tích miền ứng dụng.

Sau khi xây dựng xong mô hình yêu cầu trường hợp người dùng: use case, mô hình được người dùng tán thành, ta phát triển mô hình phân tích, phân tích miền ứng dụng đã được nắm bắt.

3.3.1. Mô hình đối tượng:

3.3.1.1. Tìm các lớp giao diện(interface class)

Bước đầu hình thành ý niệm về giao diện, là cửa sổ tương tác giữa hệ thống với người dùng. Chuyển các yêu cầu người dùng vào hệ thống, hệ thống đáp ứng lại thông tin cần thiết mà người dùng mong muốn. Giao diện có thể là các form...

3.3.1.2. Tìm các lớp miền ứng dụng(hay các lớp nghiệp vụ)

Các thể hiện của các lớp này là các đối tượng có thể lưu trữ dữ liệu, xử lý các tính toán nghiệp vụ, xử lý các thông điệp. Đối tượng được tìm như là thực thể tồn tại một cách tự nhiên trong miền ứng dụng. Để tìm đối tượng chúng ta cần rà soát lại đặc tả yêu cầu từ mô hình use case, để nắm bắt những danh từ chứa khái niệm chủ chốt của ứng dụng. Đồng thời đưa ra những chức năng mà hệ thống cần hỗ trợ.

Để tìm đối tượng miền nghiệp vụ (hay miền ứng dụng) ta làm như sau: ● Dùng các luồng sự kiện của Use case như là đầu vào.

● Các trừu tượng hoá then chốt của use case.

● Nhìn vào những khái niệm chủ chốt (những khái niệm mà hệ thống phải hỗ trợ) để rút ra những danh từ.

● Giữ lại các lớp đúng đắn: ta loại bỏ các lớp không cần thiết và không chính xác theo các tiêu chuẩn sau:

- Các lớp dư thừa: nếu hai lớp cùng biểu diễn một thông tin, giữ lại tên diễn tảđúng đắn nhất.

- Các lớp không thích hợp: nếu một lớp có ít hoặc không có gì thực hiện vấn đề, nó phải được loại bỏ.

- Các lớp mơ hồ: một lớp phải xác định, một số lớp thử có thể có biên giới không rõ ràng hoặc là quá rộng, cần được loại bỏ.

- Các thuộc tính: các tên mô tả các đối tượng riêng lẻ. Các thao tác:

- Các vai trò: tên các lớp, phải phản ánh bản chất tự nhiên của nó, không phải là vai trò mà nó đóng trong kết hợp.

- Các cấu trúc cài đặt: các cấu trúc bắt nguồn từ thế giới thực, phảI được loại bỏ, chúng sẽđược cần đến trong khi thiết kế.

Nhận diện các kết hợp

Để xác định các kết hợp, thông thường là ta dựa vào tài liệu đặc tảứng dụng và đặc biệt là từ mô tả use case để rút ra các động từ hay nhóm động từ. Sau đó ta tiến hành lọc bỏ để giữ lại các kết hợp tốt. Ta loại bỏ các kết hợp không cần thiết và không chính xác theo các tiêu chuẩn sau:

- Các kết hợp giữa các lớp bị loại ra: nếu một trong các lớp của kết hợp đã bị loại bỏ, thì kết hợp phải được loại bỏ, hoặc phát biểu lại bằng các lớp khác.

- Các kết hợp không thích hợp hoặc cài đặt: loại bỏ bất cứ kết hợp nào mà ở ngoài lĩnh vực vấn đề hoặc có quan hệ với cấu trúc cài đặt.

- 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ế.

Hình 3.2 : lược đồ lớp sign in Lược đồ tuần tự của sign in Address getStreetName1() getStreetName2() getCity() getState() getZipCode() getCountry()

(from Util ity)

MainForm signin()

browsecat al og() up dateac count() displaycat al og() displayshop pingc art () se arch() signou t() creat eaccount () ContactInformation telephone email address getEMail() getAddress() getTelephone() (f rom Ut il ity) SignInForm signin () create account()

enter user name an d password() displa y()

displa y user information() displa y message() 0..1 0..1 0..1 0..1 Account userId password sta tus Contac tInformation cre ate() update() get user info() get email addres s() fi nd account () (from account) Signon username password getPassW ord() updatePassW ord() create() remove() add signin() SigninHandler sign in user() check password()

validate entered username and password()

(from P etsto reEJB)

1..*1 1 1..* 1 0..1 0..* 0..1 0..* retrieves userId 1 0..* 1 0..*

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

: 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( )

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

3.4.2. các lược đồ trong gói shopping cart

Hình 3.6: lược đồ lớp của shopping cart

Lược đồ tuần tự shopping cart

Một phần của tài liệu Tài liệu Đồ án tốt nghiệp - Xây dựng ứng dụng J2EE với Rational Rose và UML pptx (Trang 44 - 51)