YÊU CẦU
Nhận diện vấn đề
Với sự phát triển của công nghệ, thiết bị không người lái ngày càng trở nên quan trọng trong ngành giao thông, đặc biệt trong việc giao nhận hàng hóa Những thiết bị này giúp doanh nghiệp giảm thiểu việc sử dụng máy bay trực thăng và nhân công cho các hoạt động kiểm tra trên cao, tăng cường an toàn Tuy nhiên, do thiếu sự can thiệp trực tiếp từ con người, việc quản lý từ xa trở nên cần thiết Người dùng cần theo dõi vị trí, lộ trình và tình trạng thiết bị để kịp thời xử lý sự cố Do đó, việc phát triển hệ thống quản lý cho các thiết bị không người lái là vô cùng quan trọng.
Hệ thống được xây dựng để cho phép theo dõi thiết bị, xác định lộ trình, vị trí và quản lý đăng kí của thiết bị.
Hệ thống được thiết kế dưới dạng ứng dụng Web, cho phép người dùng tương tác dễ dàng qua các thiết bị như máy tính xách tay, PC và điện thoại thông minh.
Người dùng có thể dễ dàng đăng ký tài khoản và đăng nhập để quản lý thông tin cá nhân Sau khi đăng nhập, họ có khả năng quản lý các thiết bị đang sở hữu và tra cứu thông tin liên quan đến vị trí, thời gian xuất phát và thời gian dự kiến đến điểm đến.
Quản trị viên đăng nhập vào hệ thống để giám sát và quản lý thông tin Họ có quyền chỉnh sửa hoặc xóa các thông tin độc hại, cũng như phê duyệt các yêu cầu đăng ký quản lý thiết bị của người dùng.
Người dùng cuối của hệ thống bao gồm:
- Người dùng: đăng ký thiết bị, được xem vị trí, thời gian dự đoán điểm đến,
Quản trị viên có quyền xóa người dùng và thống kê dữ liệu tổng quan, bao gồm quản lý tài khoản người dùng và theo dõi lịch sử lộ trình của các thiết bị.
Bảng thuật ngữ
Phần này sẽ định nghĩa các thuật ngữ đặc biệt liên quan đến giải quyết vấn đề, giúp giải thích các cụm từ có thể gây khó hiểu cho độc giả khi tiếp xúc với tài liệu mẫu và các tài liệu dự án khác Tài liệu này có thể được coi là một từ điển không chính thức, hỗ trợ các tài liệu khác tập trung vào mô tả hệ thống giải quyết vấn đề.
Bảng thuật ngữ chứa các định nghĩa hoạt động cho các khái niệm chính trong hệ thống định vị thiết bị bay không người lái.
Một tài khoản người dùng hoặc quản trị viên chứa thông tin quan trọng như tên, tuổi, địa chỉ email, mật khẩu và số điện thoại Mỗi tài khoản được gán một mã số định danh riêng, giúp hệ thống phân biệt quyền hạn giữa quản trị viên và người dùng, từ đó quản lý quyền truy cập hiệu quả trong hệ thống.
Người quản lý hệ thống có trách nhiệm đảm bảo hệ thống hoạt động hiệu quả và đúng mục đích Họ có quyền can thiệp và truy cập vào thông tin của tất cả các tài khoản người dùng cùng với thiết bị đã được đăng ký trên hệ thống.
Các thiết bị không người lái được đăng ký dưới tên người dùng và có mã số định danh riêng, giúp người dùng dễ dàng quản lý các thiết bị mà mình đã đăng ký.
Bản ghi chép vị trí của thiết bị bay không người lái được thực hiện sau mỗi khoảng thời gian ngắn, bao gồm thời gian xuất phát, thời gian đến nơi và tên địa danh Điều này giúp quản trị viên và người dùng theo dõi lịch trình di chuyển của thiết bị một cách hiệu quả.
Người dùng đăng ký thiết bị trên hệ thống và phải tuân thủ sự quản lý của quản trị viên Mỗi người chỉ có quyền theo dõi lịch trình của thiết bị mà mình đã đăng ký.
Trạng thái của thiết bị trong một khoảng thời gian phản ánh lượng điện và tình trạng hiện tại của nó, có thể là bình thường, đang sửa chữa hoặc bị hỏng Thông tin này giúp người dùng hiểu rõ tình hình thiết bị, từ đó sử dụng đúng mục đích và đảm bảo hiệu quả trong quá trình vận hành.
Đặc tả bổ sung
Tài liệu này nhằm xác định các yêu cầu hệ thống cho việc theo dõi thiết bị bay không người lái, bao gồm cả các yêu cầu phi chức năng không chỉ liên quan đến một trường hợp sử dụng cụ thể Sự kết hợp giữa các yêu cầu bổ sung và mô hình ca sử dụng sẽ tạo thành một tập hợp đầy đủ các yêu cầu cần thiết cho hệ thống.
Phạm vi Đặc tả bổ sung nêu rõ các yêu cầu phi chức năng của hệ thống, bao gồm độ tin cậy, tính khả dụng, hiệu suất và khả năng hỗ trợ Ngoài ra, nó cũng đề cập đến các yêu cầu chức năng phổ biến trong một số tình huống sử dụng cụ thể.
Nhiều người dùng có thể thực hiện truy cập và thao tác đồng thời.
Phần mềm phải dễ sử dụng để người dùng mới có thể học cách sử dụng hệ thống trong một khoảng thời gian ngắn.
Giao diện người dùng phải thân thiện và trực quan. Độ tin cậy
Hệ thống phải hoạt động 24 giờ một ngày, 7 ngày một tuần Hệ thống cũng phải có ít hơn 5% thời gian ngừng hoạt động.
Hệ thống có khả năng hỗ trợ tối đa 2000 người dùng đồng thời thông qua cơ sở dữ liệu trung tâm, và lên đến 100 người dùng đồng thời khi sử dụng các máy chủ cục bộ tại bất kỳ thời điểm nào.
Hệ thống sẽ cung cấp quyền truy cập vào cơ sở dữ liệu với độ trễ không quá
Hệ thống phải có khả năng hoàn thành 90% tất cả truy vấn trong vòng 30 giây.
Hệ thống phải ngăn người dùng đăng nhập nếu họ không có mật khẩu. Chỉ Quản trị viên mới có thể xóa tài khoản Người dùng.
Ràng buộc về thiết kế
Hệ thống có thể sử dụng được trên máy tính và thiết bị di động.
Sơ đồ use case
Hình 1 Biểu đồ Use-Case về sự tương tác của các tác nhân với thành phần khác
Hình 2 Biểu đồ Use-Case về sự tương tác và phụ thuộc của các Use-Case
Đặc tả Use case
Hình 3 Biểu đồ hoạt động ca sử dụng Đăng ký tài khoản
Người dùng khai báo thông tin của mình để được cấp quyền tài khoản sử dụng hệ thống
Người dùng, Hệ thống Điều kiện kích hoạt ca sử dụng:
Người dùng chọn chức năng đăng ký tài khoản.
Người dùng chưa có sẵn tài khoản
Người dùng có đầy đủ thông tin mà hệ thống yêu cầu
Thiết bị của người dùng được kết nối internet trong suốt ca sử dụng
Hậu điều kiện: Người dùng đăng ký tài khoản thành công
1 Người dùng truy cập vào ứng dụng
2 Người dùng chọn chức năng đăng ký tài khoản.
3 Hệ thống cung cấp form điền thông tin đăng ký tài khoản
4 Người dùng điền thông tin đầy đủ vào các trường dữ liệu trong form đăng ký
5 Hệ thống xác nhận tính hợp lệ của thông tin mà người dùng điền vào form
6 Hệ thống gửi đường dẫn mã xác nhận kích hoạt tài khoản bằng tin nhắn đến số điện thoại mà người dùng cung cấp
7 Người dùng xác nhận kích hoạt tài khoản
Luồng thay thế: Không có
5.1e Hệ thống hiển thị thông báo lỗi cho các trường dữ liệu không hợp lệ và không thay đổi trạng thái hiện tại
5.2e Người dùng nhập lại thông tin cho các trường không hợp lệ
5.3e Hệ thống xác nhận lại tất cả các trường đã đạt yêu cầu
7.1e Hệ thống gửi lại mã mới sau thời gian mười phút tính từ lúc gửi mã cũ nếu người dùng chưa xác nhận
Người dùng yêu cầu mã mới 6 lần sẽ bị khóa đăng ký trong vòng 30p
Yêu cầu phi chức năng: Không có
Hình 4 Biểu đồ hoạt động ca sử dụng Đăng nhập
Người dùng xác minh danh tính của mình để đăng nhập sử dụng hệ thống
Người dùng, Hệ thống Điều kiện kích hoạt ca sử dụng:
Người dùng chọn chức năng đăng nhập tài khoản
Hệ thống hiển thị giao diện đăng nhập ở trạng thái chờ
Thiết bị của người dùng được kết nối internet trong suốt ca sử dụng
Hậu điều kiện: Không có
1 Người dùng truy cập vào ứng dụng
2 Người dùng chọn chức năng đăng nhập
3 Hệ thống cung cấp form điền thông tin đăng nhập tài khoản
4 Người dùng điền số điện thoại của mình và mật khẩu vào form đăng nhập được hệ thống đưa ra
5 Hệ thống xác minh thông tin của người dùng trùng khớp dữ liệu và cho phép họ đăng nhập sử dụng hệ thống
Luồng thay thế: Không có
5.1 Hệ thống hiển thị thông báo không có tài khoản trùng khớp
5.1e Người dùng chọn chức năng đăng ký tài khoản
5.2 Hệ thống hiển thị thông báo sai mật khẩu
5.2e Người dùng chọn chức năng lấy lại mật khẩu
Người dùng nhập sai thông tin đăng nhập ở lần thứ 6 liên tiếp sẽ bị khóa tài khoản 30 phút.
Yêu cầu phi chức năng:
Time out dành cho màn hình đăng nhập dưới 60 giây
Mật khẩu của người dùng phải được hash bằng MD5.
5.2.1 Tại giao diện đăng nhập, người dùng chọn chức năng quên mật khẩu 5.2.2 Hệ thống yêu cầu người dùng nhập số điện thoại để xác minh tài khoản
5.2.3 Người dùng nhập số điện thoại vào trường dữ liệu hệ thống hiển thị 5.2.4 Hệ thống xác nhận tài khoản trùng khớp với số điện thoại và yêu cầu nhập mật khẩu mới
5.2.4a Hệ thống xác nhận không tồn tại tài khoản trùng khớp và chuyển về ca sử dụng Đăng ký tài khoản
5.2.5 Người dùng nhập mật khẩu mới và bấm tiếp tục
5.2.6 Hệ thống thống báo tạo mật khẩu mới thành công
Chỉnh sửa thông tin hồ sơ:
5.3.1 Tại giao diện chính, người dùng chọn chức năng thay đổi thông tin 5.3.2 Hệ thống hiển thị form dữ liệu mà người dùng cung cấp khi đăng ký tài khoản
5.3.3 Người dùng thay đổi thông tin trên các trường dữ liệu cần đổi và bấm hoàn thành
5.3.4 Hệ thống hiển thị thông báo xác nhận thay đổi thông tin thành công
5.4.1 Tại giao diện chính, người dùng chọn chức năng xóa tài khoản 5.4.2 Hệ thống hiển thị thông báo xác nhận yêu cầu xóa tài khoản
5.4.3 Người dùng bấm chọn xác nhận lại yêu cầu
5.3.4 Sau khi được phê duyệt từ quản trị viên, hệ thống xóa dữ liệu tài khoản người dùng.
Hình 5 Biểu đồ hoạt động ca sử dụng đăng ký thiết bị
Người dùng chưa có thiết bị hoặc muốn thêm một thiết bị bay khác để quản lý muốn đăng ký thiết bị trực tuyến thông qua ứng dụng
Các tác nhân: Người dùng, hệ thống Điều kiện kích hoạt ca sử dụng:
Người dùng muốn đăng ký thiết bị bay trực tuyến qua ứng dụng
Người dùng đã được quản trị viên phê duyệt tài khoản
Người dùng đăng nhập vào ứng dụng.
Thiết bị của người dùng được kết nối internet
Người dùng đăng ký thiết bị bay thành công.
Hệ thống lưu lại thông tin và gửi thông báo báo đã đăng ký thiết bị thành công
1 Người dùng chọn lệnh đăng ký thiết bị
2 Người dùng điền form đăng ký thiết bị
3 Hệ thống xác thực thông tin đăng ký
4 Hệ thống ghi nhận hành động đăng ký thiết bị và hiển thị thông báo
5 Người dùng chờ phê duyệt thiết bị từ quản trị viên
6 Hệ thống thông báo thiết bị phê duyệt thành công.
Luồng thay thế: Không có
2e Người dùng hủy lệnh đăng ký thiết bị
3e Hệ thống xác thực thông tin không thành công và hiển thị thông báo 3e Hệ thống báo thiết bị này đã tồn tại
Hệ thống ghi nhận các hành động không thành công và hiển thị thông báo tương ứng Đồng thời, hệ thống cũng thông báo khi thiết bị không được phê duyệt và yêu cầu người dùng thực hiện đăng ký lại.
Yêu cầu phi chức năng: Không có
Hình 6 Biểu đồ hoạt động ca sử dụng phê duyệt thiết bị
Quản trị viên sử dụng hệ thống để phê duyệt thiết bị cho từng tài khoản 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 cần phê duyệt thiết bị cho người dùng
Quản trị viên đăng nhập vào giao diện dành cho mình
Thiết bị được phê duyệt khi tài khoản của người dùng đã được phê duyệt
Thiết bị kết nối với internet
Quản trị viên xác nhận việc đăng ký thiết bị cho người dùng thành công
Hệ thống lưu lại thông tin và gửi thông báo báo đã phê duyệt thiết bị thành công
1.Quản trị viên chọn lệnh phê duyệt hồ sơ, chọn hồ sơ thiết bị
2 Sau khi xác thực thông tin cần thiết về thiết bị và người dùng, quản trị viên bấm nút chấp nhận
3 Hệ thống ghi nhận và thông báo phê duyệt thiết bị của người dùng thành công.
Sau khi xác thực thông tin, quản trị viên sẽ nhấn nút không chấp nhận và nhập lý do từ chối thiết bị vào biểu mẫu mà hệ thống cung cấp.
3a Hệ thống ghi nhận lý do và thông báo phê duyệt thành công.
Hệ thống ghi nhận hành động không thành công và hiển thị thông báo cho người dùng Đồng thời, hệ thống không ghi nhận lý do từ quản trị viên và cũng cung cấp thông báo tương ứng Ngoài ra, người dùng có thể hủy đăng ký thiết bị một cách dễ dàng.
Business rules: Phê duyệt thiết bị không được quá 3 ngày
Yêu cầu phi chức năng: Không có
Hình 7 Biểu đồ hoạt động ca sử dụng phê duyệt người dùng
Quản trị viên sử dụng hệ thống để phê duyệt tài khoản 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 cần phê duyệt tài khoản cho người dùng
Quản trị viên đăng nhập vào giao diện dành cho mình
Thiết bị kết nối với internet
Quản trị viên xác nhận việc đăng ký tài khoản cho người dùng thành công
Hệ thống lưu lại thông tin và gửi thông báo báo đã phê duyệt tài khoản thành công
1 Quản trị viên chọn lệnh phê duyệt hồ sơ, chọn hồ sơ người dùng
2.Sau khi xác thực thông tin cần thiết về người dùng, quản trị viên bấm nút chấp nhận
3.Hệ thống ghi nhận và thông báo phê duyệt tài khoản của người dùng thành công.
Sau khi xác thực thông tin, quản trị viên sẽ nhấn nút không chấp nhận Tiếp theo, quản trị viên cần nhập lý do tài khoản không được chấp nhận vào form mà hệ thống hiển thị.
3a Hệ thống ghi nhận lý do và thông báo phê duyệt thành công.
Hệ thống ghi nhận hành động không thành công và hiển thị thông báo cho người dùng Đồng thời, hệ thống không ghi nhận lý do từ quản trị viên và cũng sẽ hiển thị thông báo tương ứng Ngoài ra, người dùng có thể thực hiện việc hủy đăng ký một cách dễ dàng.
Business rules: Việc phê duyệt một tài khoản không được quá 3 ngày
Yêu cầu phi chức năng: Không có
Hình 8 Biểu đồ hoạt động ca sử dụng thanh toán
Người dùng thanh toán khoản tiền cần trả cho việc sử dụng hệ thống bằng các hình thức khác nhau
Các tác nhân: Người dùng, Hệ thống Điều kiện kích hoạt ca sử dụng:
Người dùng chọn chức năng thanh toán
Người dùng đã đăng nhập vào hệ thống
Người dùng đã đăng ký thành công thiết bị của mình
Thiết bị của người dùng kết nối internet trong suốt ca sử dụng
Người dùng tiến hành trả phí cho hệ thống
Người dùng thanh toán phí thành công
1 Người dùng truy cập vào chức năng Thanh toán bằng tài khoản ngân hàng
2 Hệ thống cung cấp form điền thông tin tài khoản ngân hàng của người dùng
3 Người dùng điền thông tin tài khoản và bấm chọn thanh toán
4 Hệ thống xác thực thông tin tài khoản ngân hàng và yêu cầu tài khoản ngân hàng thanh toán
5 Người dùng nhập mã xác thực mà ngân hàng cung cấp để thanh toán cho hệ thống trong thời gian nhất định
6 Hệ thống xác nhận thanh toán thành công
1a Người dùng truy cập vào chức năng Thanh toán bằng ví điện tử
2a Hệ thống cung cấp form điền thông tin ví điện tử của người dùng
3a Người dùng điền thông tin tài khoản và bấm chọn thanh toán
4a Hệ thống xác thực thông tin tài khoản và yêu cầu tài ví điện tử thanh toán
5a Người dùng nhập mã xác thực mà bên ví điện tử cung cấp để thanh toán cho hệ thống trong thời gian nhất định
Use Case tiếp tục bước 6.
1e Nếu người dùng không thanh toán trong khoảng thời gian nhất định thì hệ thống hủy bỏ yêu cầu thanh toán
2e Nếu số tiền trong tài khoản không đủ thì hệ thống sẽ hiển thị thông báo thanh toán thất bại và thoát ca sử dụng
3e Nếu tài khoản không hợp lệ thì hệ thống sẽ hiển thị không hợp lệ thông tin tài khoản
Nếu quá hạn thanh toán thì tài khoản sẽ bị khóa lại cho đến khi người dùng thanh toán đủ phí
Yêu cầu phi chức năng:
Time out cho màn hình xác nhận thanh toán là 60 giây
6.a Sau khi hệ thống thanh toán thành công, người dùng bấm chọn xem hóa đơn
6.b Hệ thống hiển thị giao diện hóa đơn
Hình 9 Biểu đồ hoạt động ca sử dụng theo dõi thiết bị
Người dùng sử dụng chức năng theo dõi xe để theo dõi thiết bị ngay thời điểm hiện tại
Các tác nhân: Người dùng, Hệ thống Điều kiện kích hoạt ca sử dụng:
Người dùng chọn mục theo dõi xe
Thiết bị của người dùng được kết nối internet
Người dùng phải đăng nhập hệ thống
Người dùng đã đăng ký thành công thiết bị cần theo dõi
Hệ thống hiển thị giao diện theo dõi thiết bị
1 Người dùng chọn theo dõi xe trên giao diện ứng dụng
2 Người dùng chọn thiết bị muốn theo dõi
3 Sau khi chọn được thiết bị, hệ thống hiển thị giao diện theo dõi thiết bị với trạng thái của xe đang đứng ở vị trí nào hay đang di chuyển (thời gian sẽ đến điểm dừng, tốc độ di chuyển, khoảng cách tới điểm dừng)
Luồng thay thế: Không có
2.a Hệ thống không tìm được thiết bị phù hợp, thông báo "Không có thiết bị nào phù hợp với từ khóa bạn vừa nhập"
3.a Người dùng thoát ra khỏi giao diện Theo dõi xe
3.b Hệ thống hiển thị thông báo không thể theo dõi xe do xe đã gặp sự cố
Yêu cầu phi chức năng:
Thông tin vị trí và xe dựa trên vị trí thực và thời gian thực của xe
Chọn xe cụ thể để xem thông tin:
3.1 Người dùng có thể chọn xe cụ thể để xem chi tiết thông tin xe, vị trí hiện tại của xe trên bản đồ
Hình 10 Biểu đồ hoạt động ca sử dụng Tìm kiếm thiết bị
Người dùng sử dụng chức năng chọn xe để tìm thiết bị mình muốn biết thông tin.
Các tác nhân: Người dùng, Hệ thống Điều kiện kích hoạt ca sử dụng:
Người dùng muốn tìm kiếm thiết bị của mình thông qua ứng dụng
Người dùng đã đăng nhập vào hệ thống
Người dùng đã đăng ký thiết bị thành công
Thiết bị của người dùng được kết nối internet
Người dùng tìm được thiết bị thành công
Hệ thống hiển thị thông tin thiết bị
1 Người dùng truy cập vào ứng dụng
2 Tại giao diện, hệ thống cung cấp cho người dùng giao diện danh sách xe của người dùng
3.Người dùng chọn thiết bị cần tìm trên danh sách đã hiển thị
4 Hệ thống hiển thị thông tin của thiết bị bao gồm: tên, ngày đăng ký, thông số kỹ thuật, vị trí hiện tại, tình trạng của xe
2.1 Người dùng điền tên xe/ mã số xe vào thanh công cụ
2.2 Hệ thống đưa ra thiết bị có tên/ mã số xe phù hợp với yêu cầu của người dùng.
3.1 Người dùng chọn thiết bị cần tim phù hợp
Use case tiếp tục thực hiện bước 4
2.2.a Hệ thống không tìm được thiết bị phù hợp, thông báo "Không có thiết bị phù hợp với từ khóa bạn vừa nhập"
1.a Người dùng thoát khỏi giao diện tìm xe
Yêu cầu phi chức năng:
Thông tin vị trí và xe dựa trên vị trí thực và thời gian thực của xe.
5.9 Xem lịch sử di chuyển của thiết bị
Hình 11 Biểu đồ hoạt động ca sử dụng xem lịch sử
Người dùng chọn xem lịch sử di chuyển thiết bị của mình
Các tác nhân: Người dùng, hệ thống Điều kiện kích hoạt ca sử dụng:
Người dùng chọn mục xem lịch sử di chuyển
Người dùng đăng nhập vào hệ thống
Người dùng đã sử dụng chức năng điều khiển xe
Thiết bị kết nối internet
Người dùng xem lịch sử thành công
Hệ thống hiển thị danh sách di chuyển của thiết bị
1 Người dùng chọn chức năng xem lịch sử
2 Người dùng chọn thiết bị muốn xem
3 Hệ thống hiển thị giao diện xem lịch sử di chuyển
2.1 Người dùng tìm kiếm thiết bị muốn xem
Use case tiếp tục bước 3
2.1e Hệ thống không tìm thấy thiết bị người dùng muốn xem lịch sử
Yêu cầu phi chức năng: Không có
Hình 12 Biểu đồ hoạt động ca sử dụng điều khiển thiết bị
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
Các tác nhân: Người dùng, Hệ thống Đ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
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
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
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
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
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
Yêu cầu phi chức năng:
Vị trí xe di chuyển phải ở thời gian thực
Hình 13 Biểu đồ hoạt động ca sử dụng thống kê
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
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
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ó
Yêu cầu phi chức năng: Không có
PHÂN TÍCH HỆ THỐNG
Phân tích kiến trúc
1.1 Thành phần cấp cao và sự phụ thuộc
Hình 14 Phương pháp phân lớp
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.
Tài khoản là bản ghi thông tin về người dùng hoặc quản trị viên, mỗi tài khoản sở hữu một tên đăng nhập duy nhất Tên đăng nhập này không chỉ giúp xác minh danh tính của người dùng hoặc quản trị viên mà còn cấp quyền truy cập vào các 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.
Phân tích Use case
2.1 Biểu đồ tuần tự các Use case
Hình 15 Biểu đồ tuần tự đăng ký tài khoản
Hình 16 Biểu đồ tuần tự đăng nhập
Hình 17 Biểu đồ tuần tự xoá tài khoản
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
HÌnh 23 Biểu đồ tuần tự theo dõi thiết bị
Hình 24 Biểu đồ tuần tự tìm kiếm thiết bị
2.1.9 Xem lịch sử di chuyển của thiết bị
Hình 25 Biểu đồ tuần tự xem lịch sử di chuyển của thiết bị
Hình 26 Biểu đồ tuần tự điều khiển xe
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 Tạo tài khoản sử dụng
VOPC cho chức năng đăng nhập tài khoản
VOPC cho chức năng đăng ký thiết bị
VOPC cho chức năng phê duyệt thiết bị
VOPC cho chức năng duyệt người dùng
VOPC cho chức năng thanh toán
VOPC cho chức năng theo dõi thiết bị
VOPC cho chức năng tìm thiết bị
VOPC cho chức năng xem lịch sử di chuyển của 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
PaymentController Distribution, Error detection /handling /reporting
VehicleStatisticsForm None Đặc điểm cơ chế phân tích
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ỉ có quản trị viên mới được phép xem thông tin về thiết bị, vị trí, số lượng thiết bị đang vận chuyển và trong kho Họ cũng có quyền truy cập hồ sơ người dùng, thực hiện thêm, sửa, xóa người dùng và thiết bị, cũng như xem thống kê chi tiết.
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?
THIẾT KẾ HỆ THỐNG
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ế
CreateAccountController Map directly to design classes
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ó
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 bao gồm ranh giới và các lớp điều khiển, được tích hợp trong ứng dụng khách hàng Gói này được chia thành bốn gói phụ, mỗi gói đảm nhận một phần cụ thể 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 cho phép người dùng thực hiện hai chức năng chính: xem và tìm kiếm các thiết bị không hoạt động Phần này của ứng dụng hoàn toàn miễn phí và có thể truy cập bởi tất cả mọi người.
Lớp con Tương tác người dùng bao gồm các lớp chức năng cho phép người dùng thực hiện các hành động như cập nhật hồ sơ cá nhân và tìm kiếm, chỉnh sửa hoặc báo cáo vị trí thiết bị của mình.
Lớp con Quản trị cung cấp các công cụ cần thiết cho quản trị viên để duy trì tài khoản, quản lý thiết bị và thực hiện báo cáo Chỉ có quản trị viên mới được phép truy cập vào những tiện ích này.
Gói Dịch vụ Doanh nghiệp bao gồm hệ thống cơ sở dữ liệu (CSDL) cùng với các giao diện và lớp thực thể liên quan Những thành phần này được áp dụng 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.
1.2 Xác định cơ chế thiết kế
Cơ chế phân tích Cơ chế thiết kế Cơ chế thực hiện
Security Web tokens Java Spring framework
Distribution REST API Java Spring framework
Thiết kế ca sử dụng
4.1 Thiết kế biểu đồ tuần tự
Hình 29 Biểu đồ tuần tự đăng ký tài khoản
Hình 30: Biểu đồ tuần tự đă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ị
Hình 34 Biểu đồ tuần tự phê duyệt thiết bị
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
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
Hình 41 Biểu đồ tuần tự thống kê
4.2 Khung nhìn các lớp tham gia
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.
Thiết kế hệ thống con
Hình 42 Biểu đồ cấu trúc Vehicle SubSystem
Biểu đồ tuần tự trong Vehicle Subsystem
Hình 43 Biểu đồ cấu trúc User SubSystem
Biểu đồ tuần tự trong User Subsystem
Thiết kế lớp
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ị