Điều khiển thiết bị

Một phần của tài liệu BÀI tập lớn môn PHÂN TÍCH và THIẾT kế HƯỚNG đối TƯỢNG PHÂN TÍCH hệ THỐNG QUẢN lý THIẾT bị BAY (Trang 26)

5) Đặc tả Use case

5.10. Điều khiển thiết bị

Hình 12. Biểu đồ hoạt động ca sử dụng điều khiển thiết bị

Mô tả:

Người dùng sử dụng chức năng điều khiển để điều khiển thiết bị đi từ địa điểm này đến địa điểm kia

Điều kiện kích hoạt ca sử dụng:

Người dùng muốn điều khiển thiết bị của mình

Tiền điều kiện:

 Người dùng đã đăng ký thành công thiết bị của mình trên hệ thống

 Thiết bị được kết nối internet

Hậu điều kiện:

 Người dùng điều khiển thiết bị từ điểm bắt đầu là vị trí của xe đến điểm đến theo mong muốn của mình

 Hệ thống ghi nhận hành trình của xe và thông báo kết thúc hành trình khi xe đến điểm dừng

Các luồng sự kiện:

Luồng cơ bản:

1. Ở giao diện chính của ứng dụng, người dùng chọn thẻ điều khiển xe. 2. Người dùng chọn thiết bị muốn sử dụng và nhập điểm đến

3. Sau khi chọn xong, người dùng ấn vào nút xem

4. Hệ thống sẽ cung cấp danh sách kết quả các chuyến đi sắp xếp theo thứ tự thời gian kết thúc hành trình từ nhanh nhất đến lâu nhất. Mỗi kết quả sẽ cung cấp 4 thông tin gồm: thời gian dự tính kết thúc hành trình, tổng quãng đường, thời gian khởi hành, tình trạng giao thông lúc đó

5. Người dùng chọn chuyến phù hợp trong danh sách kết quả, sau đó bấm nút bắt đầu

6. Hệ thống chuyển sang Use case theo dõi thiết bị để người dùng có thể theo dõi chi tiết hành trình của xe

Luồng thay thế:

2.1. Người dùng sử dụng Use case tìm kiếm thiết bị. Sau khi tìm được thiết bị chọn lệnh điều khiển xe

2.2 Hệ thống sẽ hiển thị giao diện điều khiển xe với bản đồ để người dùng có thể chọn vị trí điểm đến ngay trên bản đồ

Use case tiếp tục thực hiện các bước tiếp theo

Luồng ngoại lệ:

1.1e. Người dùng thoát khỏi chế độ điều khiển xe

1.2e Người dùng chọn thiết bị đang thực hiện một hành trình khác. Hệ thống sẽ thông báo “Thiết bị này đang thực hiện hành trình khác” 2e. Hệ thống thông báo “Không tìm được vị trí mà người dùng nhập” 3.1e. Nếu điểm đến chưa được chọn, hệ thống sẽ thông báo "Không có vị trí của địa điểm kết thúc".

5e. Người dùng chọn hành trình nhưng chưa chọn bắt đầu khởi hành đã thoát khỏi chế độ điều khiển xe

Business rules: Không có Yêu cầu phi chức năng:

Vị trí xe di chuyển phải ở thời gian thực

Extension point: Không có 5.11. Thống kê

Hình 13. Biểu đồ hoạt động ca sử dụng thống kê

Mô tả:

Quản trị viên muốn tổng hợp thông tin thiết bị và người dùng

Các tác nhân: Quản trị viên, hệ thống Điều kiện kích hoạt ca sử dụng:

Quản trị viên chọn lệnh thống kê dữ liệu

 Quản trị viên đăng nhập hệ thống thành công

 Thiết bị kết nối internet

Hậu điều kiện:

 Quản trị viên lấy được bảng thống kê thành công

 Hệ thống hiển thị các thống kê theo quản trị viên

Các luồng sự kiện:

Luồng cơ bản:

1. Quản trị viên chọn lệnh thống kê dữ liệu

2. Quản trị viên chọn mốc thời gian muốn thống kê: tháng/ quý/ năm

3. Hệ thống hiển thị giao diện các lựa chọn để quản trị viên chọn các thông tin cần thiết ví dụ như thống kê xe hay thống kê người dùng hoặc thống kê doanh thu

4. Hệ thống hiển thị bảng thống kê tổng số lượng xe/ người dùng/ doanh thu theo tháng/ quý/ năm

Luồng thay thế: Không có

Luồng ngoại lệ: Không có

Business rules: Không có

Yêu cầu phi chức năng: Không có Extension point: Không có

II. PHÂN TÍCH HỆ THỐNG1) Phân tích kiến trúc 1) Phân tích kiến trúc

1.1. Thành phần cấp cao và sự phụ thuộc

Hình trên mô tả tổ chức cấp cao của hệ thống phần mềm. Hệ thống bao gồm ba lớp:

 Tầng Ứng dụng (Application): chứa các yếu tố thiết kế cụ thể cho từng trường hợp sử dụng của hệ thống.

 Tầng Dịch vụ (Services): bao gồm một số trừu tượng chính và các dịch vụ phổ biến cho tất cả các trường hợp sử dụng.

 Tầng Middleware: cung cấp các dịch vụ cho phép giao tiếp và quản lý dữ liệu trên các hệ thống phân tán.

1.2. Key abstraction

Account: Bản ghi về người dùng/quản trị viên. Mỗi tài khoản có một tên

đăng nhập duy nhất, được sử dụng để xác minh người dùng/quản trị viên và cấp cho họ quyền truy cập và sử dụng phần an toàn của hệ thống.

Vehicle: Bản ghi về thông tin của các thiết bị. Mỗi thiết bị được đăng ký

bởi một tài khoản duy nhất và có được phân loại.

History: Lịch sử di chuyển của mỗi thiết bị. Cho biết thiết bị đã từng đi

đến đâu vào thời gian nào.

2) Phân tích Use case

2.1. Biểu đồ tuần tự các Use case 2.1.1. Đăng ký tài khoản

Hình 15. Biểu đồ tuần tự đăng ký tài khoản

2.1.2. Đăng nhập

Hình 18. Biểu đồ tuần tự thay đổi thông tin

Hình 19. Biểu đồ tuần tự đăng ký thiết bị

Hình 20 Biểu đồ tuần tự phê duyệt thiết bị

Hình 21. Biểu đồ tuần tự phê duyệt người dùng

Hình 22. Biểu đồ tuần tự thanh toán

2.1.7. Theo dõi thiết bị

2.1.8.Tìm thiết bị

Hình 24. Biểu đồ tuần tự tìm kiếm thiết bị

Hình 25. Biểu đồ tuần tự xem lịch sử di chuyển của thiết bị

2.1.10. Điều khiển xe

2.1.11. Thống kê

Hình 27. Biểu đồ tuần tự thống kê

2.2. Biểu đồ lớp pha phân tích

VOPC cho chức năng đăng nhập tài khoản

VOPC cho chức năng phê duyệt thiết bị

VOPC cho chức năng thanh toán

VOPC cho chức năng tìm thiết bị

VOPC cho chức năng điều khiển xe

VOPC cho chức năng thống kê

2.3. Ánh xạ từ lớp phân tích tới cơ chế phân tích

Analysis Class Analysis Mechanism(s)

CreateAccountForm Distribution CreateAccountController Distribution

Account Persistency, Security

LoginForm None

LoginControllerForm Distribution VehicleRegistrationForm None

VehicleRegistrationController Distribution

Vehicle Persistency, Security VehicleApproveForm None

VehicleApproveController Distribution UserApproveForm None

UserApproveController Distribution

PaymentForm None

PaymentController Distribution, Error detection /handling /reporting Payment Persistence, Security

TrackingVehicleForm None TrackingVehicleController Distribution FindingVehicleForm None FindingVehicleController Distribution LocationHistoryForm None LocationHistoryController Distribution MapView None MapController Distribution

MapAPISystem Persistency, Security LocationFindingForm None

VehicleStatisticsController Distribution

Statistics None

VehicleStatisticsForm None Đặc điểm cơ chế phân tích

Security

 Mức độ chi tiết của thuộc tính: mức thuộc tính

 Mức độ chi tiết của người dùng: 3 vai trò - chưa đăng ký, đã đăng ký và quản trị viên.

 Các quy tắc bảo mật:

 Chỉ người dùng, quản trị viên đã đăng ký mới có thể đăng nhập vào hệ thống.

 Chỉ những người dùng đã đăng nhập mới có thể xem và chỉnh sửa hồ sơ của họ.

 Chỉ những người dùng đã đăng nhập mới có thể xem vị trí đơn hàng (thiết bị), thay đổi vị trí giao hàng của họ.

 Chỉ quản trị viên mới có thể: xem thông tin thiết bị, vị trí, số lượng các thiết bị đang vận chuyển và ở trong kho, hồ sơ người dùng, thêm, sửa, xóa người dùng, thiết bị, xem thống kê chi tiết.

Persistency

 Mức độ chi tiết của thuộc tính: Phạm vi kích thước của các đối tượng để duy trì liên tục.

 Mức độ chi tiết của người dùng: Số lượng đối tượng cần lưu giữ.

 Thời lượng: Đối tượng thường cần được lưu giữ trong bao lâu.

 Cơ chế truy xuất: Làm thế nào một đối tượng nhất định được xác định và truy xuất duy nhất?

 Tần suất cập nhật: Các đối tượng nhiều hay ít không đổi; chúng có được cập nhật vĩnh viễn không?

 Độ tin cậy: Các đối tượng sẽ tồn tại sau sự cố của quy trình; bộ xử lý; hay toàn bộ hệ thống?

III. THIẾT KẾ HỆ THỐNG 1) Làm mịn kiến trúc 1) Làm mịn kiến trúc

1.1. Cải tiến mẫu thiết kế

1.1.1 Xác định các thành phần thiết kế

Analysis class Design element

Account Account, Database subsystem Vehicle Vehicle, Database subsystem MapAPISystem MapAPISystem, Database subsystem

CreateAccountController Map directly to design classes MapController VehicleRegistrationController LoginControllerForm TrackingVehicleController VehicleStatisticsController PaymentController UserApproveController FindingVehicleController LocationHistoryController 1.1.2 Xác định cơ chế thiết kế

Hệ thống con cung cấp hỗ trợ cho CSDL quan hệ được viết bằng SQL. Hệ thống con được thiết kế như sau:

Hình 28. Hệ thống con Cơ sở dữ liệu và các giao diện của nó

1.1.3. Xác định các gói

Mỗi lớp trong phân tích tương ứng với một gói cấp cao trong hệ thống.

Gói ứng dụng có chứa ranh giới và các lớp điều khiển, có trong ứng dụng khách hàng. Nó được chia thành bốn gói phụ, mỗi gói chịu trách nhiệm về một phần khác nhau của ứng dụng:

 Lớp con Xác thực xử lý việc tạo và đăng nhập tài khoản.

 Lớp con View là việc thực hiện hai trường hợp sử dụng liên quan đến việc xem và tìm kiếm thiết bị không hoạt động. Phần này của ứng dụng có thể được truy cập miễn phí bởi bất cứ ai.

 Lớp con Tương tác người dùng chứa các lớp liên quan đến các hành động yêu cầu người dùng đăng nhập: cập nhật hồ sơ và tìm kiếm / chỉnh sửa / báo cáo vị trí thiết bị của mình.

 Lớp con Quản trị chứa các tiện ích giúp quản trị viên duy trì tài khoản, quản lý thiết bị và báo cáo. Chỉ Quản trị viên mới có quyền truy cập vào các công cụ này.

Gói Business Services

Gói Dịch vụ Doanh nghiệp cũng chứa hệ thống con CSDL và các giao diện của nó như các lớp thực thể. Những yếu tố này là chung cho tất cả các trường hợp sử dụng.

Gói Middleware bao gồm gói SQL của Java, cung cấp quyền truy cập vào cơ sở dữ liệu và Java Spring framework, cung cấp các dịch vụ mạng.

Gói và phụ thuộc của chúng

Như đã nói ở trên, gói Gói Application phụ thuộc vào gói Business Services, từ đó phụ thuộc vào gói Middleware.

Cơ chế phân

tích Cơ chế thiết kế Cơ chế thực hiện

Persistency RDBMS JDBC

Security Web tokens Java Spring framework Distribution REST API Java Spring framework

2) Mô tả kiến trúc thực thi

4) Thiết kế ca sử dụng

4.1 Thiết kế biểu đồ tuần tự 4.1.1. Đăng ký tài khoản

Hình 29. Biểu đồ tuần tự đăng ký tài khoản

4.1.2. Đăng nhập

Hình 31. Biểu đồ tuần tự xoá tài khoản

Hình 32. Biểu đồ tuần tự thay đổi thông tin

Hình 33. Biểu đồ tuần tự đăng ký thiết bị

4.1.4. Phê duyệt thiết bị

4.1.5. Phê duyệt người dùng

Hình 35. Biểu đồ tuần tự phê duyệt người dùng

Hình 36. Biểu đồ tuần tự thanh toán

4.1.7. Theo dõi thiết bị

Hình 37. Biểu đồ tuần tự theo dõi thiết bị

Hình 38. Biểu đồ tuần tự tìm kiếm thiết bị

4.1.9. Xem lịch sử di chuyển của thiết bị

Hình 39. Biểu đồ tuần tự xem lịch sử di chuyển của thiết bị

Hình 40. Biểu đồ tuần tự điều khiển xe

4.1.11. Thống kê

Hình 41. Biểu đồ tuần tự thống kê

Cách thức làm mịn các lớp tham gia cho từng ca sử dụng được mô tả trong phần 6: Thiết kế Lớp học.

5) Thiết kế hệ thống con5.1. Vehicle Subsystem 5.1. Vehicle Subsystem

Hình 42. Biểu đồ cấu trúc Vehicle SubSystem

Biểu đồ tuần tự trong Vehicle Subsystem

Hàm approveUser()

Hàm trackVehicle()

Hàm VehicleHistory()

5.2. User Subsystem

Hình 43. Biểu đồ cấu trúc User SubSystem

Biểu đồ tuần tự trong User Subsystem

Hàm checkLoginInfo()

Hàm editAccount()

Hàm trackVehicle()

Hàm VehicleHistory()

6) Thiết kế lớp

6.1. Đăng ký tài khoản

6.3. Đăng ký thiết bị

6.4. Phê duyệt thiết bị

6.6. Thanh toán

6.8. Tìm kiếm thiết bị

6.9. Theo dõi lịch sử di chuyển của thiết bị

Chọn điểm đến

Định vị thiết bị

Tìm đường

Một phần của tài liệu BÀI tập lớn môn PHÂN TÍCH và THIẾT kế HƯỚNG đối TƯỢNG PHÂN TÍCH hệ THỐNG QUẢN lý THIẾT bị BAY (Trang 26)

Tải bản đầy đủ (PDF)

(74 trang)