Downloaded by Lynh Nguyen
(lynhn228@gmail.com)
lOMoARcPSD| 58675420
lOMoARcPSD| 58675420
Sport Booking Mobile App Technical Specification
Objective
Ứng dụng đặt sân thể thao cung cấp nền tảng trực tuyến cho phép người dùng
dễ dàng tìm kiếm, đặt lịch thanh toán cho các sân ththao như bóng đá,
tennis, cầu lông, bóng rổ,... của một trung tâm thể thao. Ứng dụng hướng đến
việc tối ưu hóa quy trình đặt sân, tiết kiệm thời gian mang lại trải nghiệm
thun tiện, nhanh chóng cho người dùng.
General Requirements
Nền tảng tương thích : Android
Phiên bn hđiều hành tối thiểu: Android 8.0
Hỗ trcho cả điện thoại thông minh máy tính bảng Hỗ
trnhiều ngôn ng
User Interface
Giao diện người dùng nên trực quan, nhất quán thân thiện theo các yếu tố
sau:
● Home Screen:
Thanh điều hướng truy cập nhanh vào các chức năng
○ Gợi ý các nội dung theo sở thích nhân
Profile Screen:
Thông tin người dùng và các cài đặt liên quan
○ Lựa chọn đăng tải điều chỉnh hồ
Settings Screen:
○ Cài đặt tài khoản
Tùy chọn quyền riêng tư
○ Cài đặt thông báo
Features
ng dụng này sẽ bao gồm những tính năng sau:
Xác thực (Authentication):
Đăng bằng cách sử dụng email,
mạng xã hội hoặc số điện thoại
○ Xác thực hai lớp
lOMoARcPSD| 58675420
○ Khôi phục và đt li mt khẩu
Thông báo (Notifications):
Thông báo vcập nhật ○ Tùy chỉnh cài
đặt thông báo TÌm kiếm (Search
functionality): ○ Tìm kiếm các sân thể thao
Tìm kiếm các khung giờ còn trống
Đặt sân (Booking functionality)
Đặt sân theo khung giờ, môn thể thao
Thanh toán (Payment)
Thanh toán qua ngân hàng, ví đin t
Performance Requirements
Ứng dụng phải tuân thủ các tiêu chuẩn về hiệu suất sau:
Thời gian ti dưới 3 giây với tốc độ kết nối trung bình
○ Gian diện người dùng phản hi nhanh với các hiu ứng mượt mà
Tiêu thụ pin thấp
○ Quản lý dliu hiu qu
Security Requirements
Ứng dụng phải tuân thủ các phương pháp bảo mật phù hợp với phạm vi dự án,
bao gm:
Mã hóa dữ liệu
Bảo vệ thông tin người dùng bằng các phương pháp hóa phù
hợp
Sử dụng HTTPS để đảm bảo an toàn trong quá trình trao đổi dữ liu
giữa client và server
Xác thực
Áp dụng quy trình đăng nhập và đăng ký an toàn
Giới hạn số lần đăng nhập thất bại để ngăn chặn tấn công brute
force
Bảo mật dữ liệu
Tuân thủ các quy định bảo vệ dliệu cá nhân phù hợp với dán
○ Cung cấp chính sách bảo mật rõ ràng cho người dùng
Quản lý lỗ hổng bo mật
Kiểm tra bảo mt định kỳ trong quá trình phát triển
lOMoARcPSD| 58675420
○ Phát hiệnkhắc phục kịp thời các lỗ hổng có thể ảnh hưởng đến
ng dng
Technical Stack
ng dng sđược xây dựng bằng các công nghệ sau:
Giao diện người dùng (Frontend): Java
Backend: Java
Cơ sở dữ liệu (Database): MySQL
Xác thực (Authentication): Spring Security, JWT ● APIs: RESTful
APIs
Development Process
Quy trình phát triển tuân theo phương pháp Agile, có các giai đoạn sau:
Lập kế hoch
Thu thập yêu cầu
○ Phân tích tính khthi
Thiết lập lộ trình dự án
Thiết kế
Lên khung và tạo nguyên mẫu
Thiết kế UI/UX
Phát triển
Phát triển frontend
○ Phát triển backend
Tích hợp
Kim th
Kiểm thử đơn vị
■ Kiểm thử tích hp
■ Kiểm thử chấp nhận ngưi dùng
○ Triển khai và bảo trì
■ Triển khai lên các cửa hàng ứng dụng
Sửa li và cp nhật liên tục
lOMoARcPSD| 58675420
Dependencies
Dự án sẽ phthuộc vào các dịch vụ và thư viện bên ngoài như:
Spring Security, JWT để xác thực
Spring Boot để viết Restful Api
Lombok để rút gọn code
Hibernate ORM để hỗ trợ ánh xạ các đối tượng từ cơ sở dữ liu
Retrofit Cho Kết Ni Mạng Trên Android
Converter-gson Chuyển đổi dữ liệu JSON thành đối tượng Java Spring-
boot-starter-mail: Htr gửi email trong ng dụng.
Milestones and Deadlines
Milestones
Deadlines
Thu thập và phân tích yêu cầu
2 tun từ khi dự án bt đầu
Nguyên mẫu thiết kế (Demo)
4 tun từ khi dự án bt đầu
Phát triển (Frontend & Backend)
12 tuần từ khi dự án bắt đầu
Giai đon kim th
16 tuần từ khi dự án bắt đầu
Triển khai
20 tuần từ khi dự án bắt đầu
Risk Management
Rủi ro tim ẩn và chiến lược giảm thiểu bao gồm:
Phạm vi dự án m rộng (Scope Creep)
Tuân thủ kế hoạch và phạm vi ban đầu của dán
Thảo luận ràng với giảng viên thành viên nhóm để tránh thay
đổi ngoài kế hoch
Thách thc kthuật (Technical Challenges)
Thực hiện kiểm tra, đánh giá định kỳ vtiến độ và kỹ thuật
○ Tham khảo tài liệu, hướng dẫn chính thức hỏi ý kiến giảng viên
khi gặp khó khăn
Trì hoãn tiến độ (Timeline Delays)
Chia nhỏ công việc theo mốc thời gian với thời gian đệm hợp lý
○ Theo dõi tiến độ thường xuyên điều chỉnh linh hoạt đđảm bảo
hoàn thành đúng hạn
lOMoARcPSD| 58675420
Conclusion
Tài liệu này cung cấp một hướng dẫn chi tiết về quá trình phát triển ứng dụng
đặt sân thể thao, bao gồm các yêu cầu kthuật, thiết kế, triển khai và bảo trì.
Việc tuân thủ các tiêu chuẩn và quy trình trong tài liệu sẽ đảm bảo ứng dụng
được phát triển hiệu quả, đáp ứng nhu cầu của người dùng, vận hành ổn định
dễ dàng mở rộng trong tương lai. Đây sẽ nền tảng quan trọng giúp đội
ngũ phát triển xây dựng một sản phẩm chất lượng, tối ưu hóa trải nghiệm người
dùng và đạt được mục tiêu kinh doanh đề ra.

Preview text:

lOMoAR cPSD| 58675420 Downloaded by Lynh Nguyen (lynhn228@gmail.com) lOMoAR cPSD| 58675420
Sport Booking Mobile App Technical Specification Objective
Ứng dụng đặt sân thể thao cung cấp nền tảng trực tuyến cho phép người dùng
dễ dàng tìm kiếm, đặt lịch và thanh toán cho các sân thể thao như bóng đá,
tennis, cầu lông, bóng rổ,... của một trung tâm thể thao. Ứng dụng hướng đến
việc tối ưu hóa quy trình đặt sân, tiết kiệm thời gian và mang lại trải nghiệm
thuận tiện, nhanh chóng cho người dùng. General Requirements
Nền tảng tương thích : Android
Phiên bản hệ điều hành tối thiểu: Android 8.0
Hỗ trợ cho cả điện thoại thông minh và máy tính bảng Hỗ trợ nhiều ngôn ngữ User Interface
Giao diện người dùng nên trực quan, nhất quán và thân thiện theo các yếu tố sau: ● Home Screen:
○ Thanh điều hướng truy cập nhanh vào các chức năng
○ Gợi ý các nội dung theo sở thích cá nhân ● Profile Screen:
○ Thông tin người dùng và các cài đặt liên quan
○ Lựa chọn đăng tải và điều chỉnh hồ sơ ● Settings Screen: ○ Cài đặt tài khoản
○ Tùy chọn quyền riêng tư ○ Cài đặt thông báo Features
Ứng dụng này sẽ bao gồm những tính năng sau:
● Xác thực (Authentication):
○ Đăng ký bằng cách sử dụng email,
mạng xã hội hoặc số điện thoại ○ Xác thực hai lớp lOMoAR cPSD| 58675420
○ Khôi phục và đặt lại mật khẩu
● Thông báo (Notifications):
○ Thông báo về cập nhật ○ Tùy chỉnh cài
đặt thông báo ● TÌm kiếm (Search
functionality):
○ Tìm kiếm các sân thể thao
○ Tìm kiếm các khung giờ còn trống
● Đặt sân (Booking functionality)
○ Đặt sân theo khung giờ, môn thể thao Thanh toán (Payment)
○ Thanh toán qua ngân hàng, ví điện tử
Performance Requirements
● Ứng dụng phải tuân thủ các tiêu chuẩn về hiệu suất sau:
○ Thời gian tải dưới 3 giây với tốc độ kết nối trung bình
○ Gian diện người dùng phản hồi nhanh với các hiệu ứng mượt mà ○ Tiêu thụ pin thấp
○ Quản lý dữ liệu hiệu quả Security Requirements
Ứng dụng phải tuân thủ các phương pháp bảo mật phù hợp với phạm vi dự án, bao gồm:
● Mã hóa dữ liệu
○ Bảo vệ thông tin người dùng bằng các phương pháp mã hóa phù hợp
○ Sử dụng HTTPS để đảm bảo an toàn trong quá trình trao đổi dữ liệu giữa client và server ● Xác thực
○ Áp dụng quy trình đăng nhập và đăng ký an toàn
○ Giới hạn số lần đăng nhập thất bại để ngăn chặn tấn công brute force
● Bảo mật dữ liệu
○ Tuân thủ các quy định bảo vệ dữ liệu cá nhân phù hợp với dự án
○ Cung cấp chính sách bảo mật rõ ràng cho người dùng
● Quản lý lỗ hổng bảo mật
○ Kiểm tra bảo mật định kỳ trong quá trình phát triển lOMoAR cPSD| 58675420
○ Phát hiện và khắc phục kịp thời các lỗ hổng có thể ảnh hưởng đến ứng dụng Technical Stack
Ứng dụng sẽ được xây dựng bằng các công nghệ sau:
Giao diện người dùng (Frontend): Java ● Backend: Java
Cơ sở dữ liệu (Database): MySQL
Xác thực (Authentication): Spring Security, JWT ● APIs: RESTful APIs Development Process
Quy trình phát triển tuân theo phương pháp Agile, có các giai đoạn sau: ● Lập kế hoạch ○ Thu thập yêu cầu
○ Phân tích tính khả thi
○ Thiết lập lộ trình dự án ● Thiết kế
○ Lên khung và tạo nguyên mẫu ○ Thiết kế UI/UX ● Phát triển ○ Phát triển frontend ○ Phát triển backend ● Tích hợpKiểm thử ■ Kiểm thử đơn vị ■ Kiểm thử tích hợp
■ Kiểm thử chấp nhận người dùng
○ Triển khai và bảo trì
■ Triển khai lên các cửa hàng ứng dụng ■
Sửa lỗi và cập nhật liên tục lOMoAR cPSD| 58675420 Dependencies
Dự án sẽ phụ thuộc vào các dịch vụ và thư viện bên ngoài như: ●
Spring Security, JWT để xác thực
● Spring Boot để viết Restful Api
● Lombok để rút gọn code
● Hibernate ORM để hỗ trợ ánh xạ các đối tượng từ cơ sở dữ liệu
● Retrofit Cho Kết Nối Mạng Trên Android
● Converter-gson Chuyển đổi dữ liệu JSON thành đối tượng Java ● Spring-
boot-starter-mail: Hỗ trợ gửi email trong ứng dụng.
Milestones and Deadlines Milestones Deadlines
Thu thập và phân tích yêu cầu
2 tuần từ khi dự án bắt đầu
Nguyên mẫu thiết kế (Demo)
4 tuần từ khi dự án bắt đầu
Phát triển (Frontend & Backend)
12 tuần từ khi dự án bắt đầu Giai đoạn kiểm thử
16 tuần từ khi dự án bắt đầu Triển khai
20 tuần từ khi dự án bắt đầu Risk Management
Rủi ro tiềm ẩn và chiến lược giảm thiểu bao gồm:
Phạm vi dự án mở rộng (Scope Creep)
○ Tuân thủ kế hoạch và phạm vi ban đầu của dự án
○ Thảo luận rõ ràng với giảng viên và thành viên nhóm để tránh thay đổi ngoài kế hoạch
Thách thức kỹ thuật (Technical Challenges)
○ Thực hiện kiểm tra, đánh giá định kỳ về tiến độ và kỹ thuật
○ Tham khảo tài liệu, hướng dẫn chính thức và hỏi ý kiến giảng viên khi gặp khó khăn
Trì hoãn tiến độ (Timeline Delays)
○ Chia nhỏ công việc theo mốc thời gian với thời gian đệm hợp lý
○ Theo dõi tiến độ thường xuyên và điều chỉnh linh hoạt để đảm bảo hoàn thành đúng hạn lOMoAR cPSD| 58675420 Conclusion
Tài liệu này cung cấp một hướng dẫn chi tiết về quá trình phát triển ứng dụng
đặt sân thể thao, bao gồm các yêu cầu kỹ thuật, thiết kế, triển khai và bảo trì.
Việc tuân thủ các tiêu chuẩn và quy trình trong tài liệu sẽ đảm bảo ứng dụng
được phát triển hiệu quả, đáp ứng nhu cầu của người dùng, vận hành ổn định
và dễ dàng mở rộng trong tương lai. Đây sẽ là nền tảng quan trọng giúp đội
ngũ phát triển xây dựng một sản phẩm chất lượng, tối ưu hóa trải nghiệm người
dùng và đạt được mục tiêu kinh doanh đề ra.