Huấn luyện viên là vai trò của một người hướng dẫn tập luyện Personal Trainer tại trung tâm sau khi đã đăng nhập thành công vào hệ thống.. Khi khách đăng nhập thành công có thể sử dụng m
Trang 1ĐẠI HỌC BÁCH KHOA HÀ NỘI TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
-BÁO CÁO ĐỒ ÁN 2 PHÂN TÍCH YÊU CẦU PHẦN MỀM
Đề tài: Xây dựng website quản lý phòng tập thể hình RubyGym
Giảng viên hướng dẫn: TS Đỗ Tiến Dũng
Nguyễn Quang Dũng – 20194256 Nguyễn Văn Đương – 20194260
Hà Nội, tháng 4 năm 2022
Trang 2MỤC LỤC
1 Giới thiệu 4
2 Tổng quan chức năng 4
2.1 Các chức năng 4
2.2 Các tác nhân 4
2.3 Biểu đồ use case tổng quan 5
2.4 Biểu đồ use case phân rã 7
2.4.1 Phân rã use case “Quản lý thông tin cá nhân” 7
2.4.2 Phân rã use case “Quản lý huấn luyện viên” 7
2.4.3 Phân rã use case “Quản lý học viên” 8
2.4.4 Phân rã use case “Quản lý sự kiện” 8
2.4.5 Phân rã use case “Quản lý lịch tập” 9
2.5 Quy trình nghiệp vụ 9
2.5.1 Quy trình đăng nhập 9
2.5.2 Quy trình theo dõi lịch tập của học viên 10
2.5.3 Quy trình lên lịch tập của huấn luyện viên 11
2.5.4 Quy trình quản lý Huấn luyện viên 11
2.5.5 Quy trình quản lý Học viên 12
3 Đặc tả các chức năng 13
3.1 Khách hàng 13
3.1.1 Đặc tả use case UC001 “Đăng nhập” 13
3.1.2 Đặc tả use case UC002 “Đăng xuất” 15
3.1.3 Đặc tả use case UC003 “Xem các sự kiện” 15
3.1.4 Đặc tả use case UC004 “Đổi mật khẩu” 16
3.1.5 Đặc tả use case UC005 “Quản lý thông tin cá nhân (xem, sửa)” 16
3.2 Quản trị viên 18
3.2.1 Đặc tả use case UC006 “Thêm sự kiện” 18
3.1.6 Đặc tả use case UC007 “Chỉnh sửa sự kiện” 18
2
Trang 33.2.3 Đặc tả use case UC008 “Xóa sự kiện” 19
3.2.4 Đặc tả use case UC009 “Xem danh sách lịch tập” 20
3.2.5 Đặc tả use case UC010 “Tìm kiếm người dùng” 21
3.2.6 Đặc tả use case UC011 “Chức năng thêm, xem, sửa, xóa” 22
3.3 Huấn luyện viên 24
3.3.1 Đặc tả use case UC013 “Xem thông tin luyện tập” 24
3.3.2 Đặc tả use case UC014 “Xem, thêm, sửa, xóa lịch tập” 24
4 Các yêu cầu khác 28
4.1 Tính năng 28
4.2 Hiệu năng 28
4.3 Tính tin cậy 28
4.4 Tính khả dụng 28
4.5 Tính dễ bảo trì 28
Trang 4Trong hệ thống mới, admin sẽ được trao quyền quản lý các huấn luyện viên và khách hàng của phòng tập Các huấn luyện viên có thể theo dõi lịch hướng dẫn của mình, quản
lý danh sách các khách hàng là học viên của mình Trong khi đó, các khách hàng có thể theo dõi được lịch tập, cũng như quá trình tập luyện của bản thân Cụ thể các chức năng chi tiết sẽ được đề cập chi tiết ở các mục sau.
Hệ thống mới được triển khai với mục tiêu hệ thống hóa, công nghệ hóa các tác vụ trước đây được làm trực tiếp trên giấy tờ sổ sách Ngoài ra, đây cũng là một nền tảng giúp đơn
vị kinh doanh phòng tập có thể quảng bá các dịch vụ của mình đến với khách hàng.
Mỗi vai trò người dùng được thiết lập để có thể sử dụng một số chức năng nào đó Quản trị viên có thể thêm, sửa, xóa, xem thông tin một tài khoản học viên hoặc huấn luyện viên Huấn luyện viên có thể lên lịch tập cho học viên và cập nhật quá trình tập luyện Học viên có thể xem lịch tập, cũng như theo dõi quá trình tập luyện.
2.2 Các tác nhân
Phần mềm có 4 tác nhân là Khách, Học viên, Huấn luyện viên và Quản trị viên Khách là vai trò của người dùng khi chưa đăng nhập vào hệ thống Học viên là vai trò của một
4
Trang 5người đăng ký tập luyện tại trung tâm sau khi đã đăng nhập thành công vào hệ thống Huấn luyện viên là vai trò của một người hướng dẫn tập luyện (Personal Trainer) tại trung tâm sau khi đã đăng nhập thành công vào hệ thống Quản trị viên là vai trò của một người quản lý tại trung tâm sau khi đã đăng nhập thành công vào hệ thống.
2.3 Biểu đồ use case tổng quan
Khi chưa đăng nhập, khách chỉ có thể xem thông tin về trung tâm và các sự kiện được tổ chức tại trung tâm Khi khách đăng nhập thành công có thể sử dụng một số nhóm chức năng nhất định, tương ứng với vai trò của tài khoản (Học viên, Huấn luyện viên hoặc Quản trị viên) Một số chức năng mà học viên, huấn luyện viên hay quản trị viên đều có thể sử dụng: Quản lý thông tin cá nhân, Đổi mật khẩu, Đăng xuất Học viên có thể xem lịch tập Huấn luyện viên có thể lên lịch tập Quản trị viên có thể quản lý tài khoản của Học viên và Huấn luyện viên cũng như theo dõi việc tập luyện.
Trang 72.4 Biểu đồ use case phân rã
2.4.1 Phân rã use case “Quản lý thông tin cá nhân”
2.4.2 Phân rã use case “Quản lý huấn luyện viên”
Trang 82.4.3 Phân rã use case “Quản lý học viên”
2.4.4 Phân rã use case “Quản lý sự kiện”
8
Trang 92.4.5 Phân rã use case “Quản lý lịch tập”
2.5 Quy trình nghiệp vụ
Trong phân hệ này, có 5 quy trình nghiệp vụ chính: Quy trình đăng nhập, Quy trình theo dõi lịch tập của học viên, Quy trình lên lịch tập của huấn luyện viên, Quy trình quản lý huấn luyện viên của quản trị viên, Quy trình quản lý học viên của quản trị viên Chi tiết về hành động trong các quy trình này được mô hình hoá trong các mục con của từng quy trình.
Sau khi đăng nhập thành công vào hệ thống, người dùng có thể sử dụng các chức năng như Xem và cập nhật thông tin cá nhân của mình, Thay đổi mật khẩu, và các chức năng được hệ thống cấp phép tùy theo vai trò của họ.
Trang 102.5.2 Quy trình theo dõi lịch tập của học viên
Học viên có thể theo dõi lịch tập của mình theo quy trình như sau Học viên sử dụng chức năng “Xem lịch tập”, hệ thống sẽ hiển thị lịch tập trong tháng Học viên có thể chọn ngày
cụ thể để xem chi tiết về buổi tập (Thời gian, bài tập, mục tiêu, v.v.).
10
Trang 112.5.3 Quy trình lên lịch tập của huấn luyện viên
Huấn luyện viên có thể xếp lịch tập tương ứng với từng học viên theo quy trình như sau Huấn luyện viên chọn tính năng Xem lịch tập, sau đó chọn ngày tập, chọn thời điểm tập trong ngày đó và chọn học viên Huấn luyện viên có thể điền thêm các thông tin về buổi tập, ví dụ như nội dung bài tập, mục tiêu của buổi tập, v.v Nếu lịch tập này của Huấn luyện viên thỏa mãn điều kiện (kèm không quá 3 học viên cùng một thời điểm và một ngày làm việc không quá 8 tiếng, thời gian buổi tập từ khoảng 5h - 11h30 hoặc 13h30 - 20h và kéo dài không quá 2 tiếng), và học viên không bị trùng buổi tập, hệ thống sẽ cập nhật lịch buổi tập
2.5.4 Quy trình quản lý Huấn luyện viên
Quản trị viên có thể quản lý tài khoản huấn luyện viên theo quy trình sau Quản trị viên chọn tính năng Quản lý tài khoản Huấn luyện viên, hệ thống sẽ hiển thị danh sách Huấn
Trang 12luyện viên đang có của trung tâm Để xem thông tin chi tiết, quản trị viên chọn huấn luyện viên tương ứng Quản trị viên có thể sửa thông tin tài khoản huấn luyện viên, bao gồm thông tin cá nhân, mật khẩu và trạng thái hoạt động Quản trị viên có thể tạo tài khoản cho huấn luyện viên mới.
2.5.5 Quy trình quản lý Học viên
Quản trị viên có thể quản lý tài khoản học viên theo quy trình sau Quản trị viên chọn tính năng Quản lý tài khoản Học viên, hệ thống sẽ hiển thị danh sách Học viên đang có của trung tâm Để xem thông tin chi tiết, quản trị viên chọn học viên tương ứng Quản trị viên
có thể sửa thông tin tài khoản học viên, bao gồm thông tin cá nhân và mật khẩu, có thể thay đổi ngày hết hạn của gói tập Quản trị viên có thể tạo tài khoản cho học viên mới.
12
Trang 141 Khách chọn chức năng Đăng nhập
2 Hệ thống hiển thị giao diện đăng nhập
3 Khách nhập số điện thoại và mật khẩu
4 Khách Gửi yêu cầu đăng nhập lên hệ thống
5 Hệ thống kiểm tra xem khách đã nhập đầy đủ các trường hay chưa
6 Hệ thống kiểm tra số điện thoại, mật khẩu có hợp lệ hay không
7 Hệ thống Kiểm tra tài khoản có trong cơ sở dữ liệu hay không
8 Hệ thống Tạo 1 access token và refresh token cho người dùng
9 Hệ thống Đưa người dùng về trang chủ, hiển thị giao diện ứng với
quyền hạn của người dùng
Lu
Lu ng sồồồồồ ng sng s kiựựựựự ệệệệệ ki ki n thay n thay
th
thếếếếế STSTTT ThTh c hiựựựựực hi nnnnnc hiệệệệệ
bbbbb iiiiiởởởởở
Hành đHành đ ngộộộộộng
6a Hệ thống thông báo lỗi: Cần nhập các trường bắt buộc nhập nếu
khách nhập thiếu6b Hệ thống thông báo lỗi: tài khoản, mật khẩu sai định dạng7a Hệ thống thông báo lỗi: Tài khoản không có trong hệ thống.7b Hệ thống Thông báo lỗi: Có tài khoản trong hệ thống nhưng sai mật
khẩu7c Hệ thống Gọi use case: “Quên mật khẩu”
H
H u điậậậậậu điu đi uuuuu kiềềềềề ki nnnnn kiệệệệệ Không
* Dữ liệu đầu vào của thông tin cá nhân gồm các trường dữ liệu sau:
STT Trườngdữ liệu Mô tả Bắt buộc? Điều kiện hợp lệ Ví dụ
1 SDT Số điện thoại Có Chỉ bao gồm số, 9-10 số 0123456789
2 Mật khẩu Có Lớn hơn 6 ký tự, không bao
gồm ‘ ‘
12A4Hgkf
3 Role Vai trò đăng nhập: Huấn
luyện viên, học viên,
Trang 15
(Thành công) STSTTT ThTh c hiựựựựực hic hi n bệệệệệ ởởởởởn bn b iiiii Hành đHành đ ngộộộộộng
1 Người dùng chọn chức năng Đăng xuất
2 Hệ thống hiển thị giao diện đăng xuất
3 Người dùng Xác nhận đăng xuất
4 Hệ thống Xóa token của user, thu hồi quyền, và chuyển
hướng về trang chủ với tư cách khách
Lu
Lu ng sồồồồồ ng sng s kiựựựựự ệệệệệ ki ki n thay thn thay thếếếếế
ST
STTT ThTh c hiựựựựực hic hi n bệệệệệ ởởởởởn bn b iiiii Hành đHành đ ngộộộộộng3a Người dùng Hủy bỏ đăng xuất
H
H u điậậậậậu đi uuuuu kiu điềềềềề ki ki nnnnnệệệệệ Không
3.1.3 Đặc tả use case UC003 “Xem các sự kiện”
1 Người dùng Chọn chức năng xem danh sách các sự kiện
2 Hệ thống Hiển thị Giao diện danh sách sự kiện
STTT ThTh c hiựựựựực hic hi n bệệệệệ ởởởởởn bn b iiiii Hành đHành đ ngộộộộộng
H
H u điậậậậậu đi uuuuu kiu điềềềềề ki ki nnnnnệệệệệ Không
3.1.4 Đặc tả use case UC004 “Đổi mật khẩu”
Trang 163 Người dùng Nhập mật khẩu cũ
4 Hệ thống Kiểm tra mật khẩu cũ đúng không
5 Người dùng Nhập mật khẩu mới
6 Hệ thống Kiểm tra mật khẩu có hợp lệ không
7 Người dùng Xác nhận mật khẩu
8 Hệ thống Kiểm tra mật khẩu mới có trùng khớp không
9 Hệ thống Thông báo đổi mật khẩu thành công và cập nhật
mật khẩu mới
Lu
Lu ng sồồồồồ ng sng s kiựựựựự ệệệệệ ki ki n thay thn thay thếếếếế
ST
STTT ThTh c hiựựựựực hic hi nnnnn bệệệệệ ởởởởở b b iiiii Hành đHành đ ngộộộộộng4a Hệ thống Thông báo lỗi nếu mật khẩu cũ không đúng6a Hệ thống Thông báo mật khẩu không hợp lệ8a Hệ thống Thông báo mật khẩu không trùng khớp
H
H u điậậậậậu đi uuuuu kiu điềềềềề ki ki nnnnnệệệệệ Không
3.1.5 Đặc tả use case UC005 “Quản lý thông tin cá nhân (xem, sửa)”
Mã Use case UC005 Tên Use case Qu n lý thông tin cáả
nhân (xem, s a)ử
Tác nhân ườNg i dùng (Hu n luy n viên, h c viên, admin)ấ ệ ọ
1 Người dùng Chọn yêu cầu xem thông tin
2 Hệ thống Hiển thị thông tin lên giao diện (*)Xem:
S a:ử
ST
STTT ThTh c hiựựựựực hic hi n bệệệệệ ởởởởởn b iiiiin b Hành đHành đ ngộộộộộng
1 Người dùng Chọn yêu cầu sửa
2 Hệ thống Lấy thông tin chi tiết của người dùng và hiển thị
thông tin cũ của người dùng trên giao diện sửathông tin
3 Người dùng Tiến hành sửa các thông tin cần thiết (**)
16
Trang 175 Hệ thống Kiểm tra các trường có hợp lệ không
6 Hệ thống Cập nhật các thông tin đã chỉnh sửa và thông báo
STTT ThTh c hiựựựựực hic hi nnnnn bệệệệệ ởởởởở b b iiiii Hành đHành đ ngộộộộộng4a Hệ thống Thông báo nhập thiếu thông tin5a Hệ thống Thông báo trường không hợp lệ
H
H u điậậậậậu đi uuuuu kiu điềềềềề ki ki nnnnnệệệệệ Không
(*) Dữ liệu đầu ra khi hiển thị thông tin cá nhân
STT Trường dữliệu Mô tả Định dạng hiển thị Ví dụ
2 Giới tính Có Nam / nữ / khác Nam
4 Số điện thoại Có Duy nhất 0976777999
1 Quản trị viên chọn chức năng Quản lý sự kiện
2 Hệ thống Hiển thị giao diện danh sách sự kiện
Trang 184 Hệ thống Hiển thị giao diện thêm sự kiện
5 Quản trị viên Điền các thông tin của sự kiện: ngày bắt đầu, ngày
kết thúc, các ưu đãi, đối tượng áp dụng,…
6 Quản trị viên Chọn lưu sự kiện
7 Hệ thống Kiểm tra các trường bắt buộc
8 Hệ thống Lưu sự kiện lên database, cập nhật lên trang sự
kiện, và trả về trang hiển thị danh sách sự kiện
Lu
Lu ng sồồồồồ ng sng s kiựựựựự ệệệệệ ki ki n thay thn thay thếếếếế
ST
STTT ThTh c hiựựựựực hic hi n bệệệệệ ởởởởởn bn b iiiii Hành đHành đ ngộộộộộng6a Quản trị viên Không lưu sự kiện7a Hệ thống Thông báo lỗi: thiếu các trường thông tin quan
trọng
H
H u điậậậậậu đi uuuuu kiu điềềềềề ki ki nnnnnệệệệệ Không
3.1.6 Đặc tả use case UC007 “Chỉnh sửa sự kiện”
1 Quản trị viên chọn chức năng Quản lý sự kiện
2 Hệ thống Hiển thị giao diện danh sách sự kiện
3 Quản trị viên Chọn sự kiện cần chỉnh sửa
4 Quản trị viên Chọn chức năng chỉnh sửa sự kiện
5 Quản trị viên Điền các thông tin cần chỉnh sủa của sự kiện
6 Quản trị viên Chọn lưu sự kiện
7 Hệ thống Kiểm tra các trường bắt buộc
8 Hệ thống Thay đổi thông tin sự kiện trên database, cập nhật
lên trang sự kiện, và trả về trang hiển thị danh sách
sự kiện
18
Trang 19STTT ThTh c hiựựựựực hic hi nnnnn bệệệệệ ởởởởở b b iiiii Hành đHành đ ngộộộộộng7a Hệ thống Không lưu sự kiện cập nhật, xóa bản nháp8a Hệ thống Thông báo lỗi: Cần thêm thông tin tại trường bắt
buộc
H
H u điậậậậậu đi uuuuu kiu điềềềềề ki ki nnnnnệệệệệ Không
3.2.3 Đặc tả use case UC008 “Xóa sự kiện”
1 Quản trị viên chọn chức năng Quản lý sự kiện
2 Hệ thống Hiển thị giao diện danh sách sự kiện
3 Quản trị viên Chọn sự kiện muốn xóa
4 Quản trị viên Chọn chức năng xóa sự kiện
5 Quản trị viên Xác nhận xóa sự kiện
6 Hệ thống Xóa sự kiện ở trong database, cập nhật lại trang sự
kiện, và trả về trang hiển thị danh sách sự kiện
Lu
Lu ng sồồồồồ ng sng s kiựựựựự ệệệệệ ki ki n thay thn thay thếếếếế
ST
STTT ThTh c hiựựựựực hic hi nnnnn bệệệệệ ởởởởở b b iiiii Hành đHành đ ngộộộộộng5a Hệ thống Không lưu sự kiện, xóa bản nháp6a Hệ thống Thông báo lỗi: Xóa không thành công
H
H u điậậậậậu đi uuuuu kiu điềềềềề ki ki nnnnnệệệệệ Không
3.2.4 Đặc tả use case UC009 “Xem danh sách lịch tập”
Trang 202 Hệ thống Hiển thị lịch của tháng hiện tại
3 Quản trị viên Bấm vào ngày muốn xem lịch
4 Hệ thống Hiển thị lịch tập của trung tâm ngày hôm đó ( hiển thị
từng khung giờ, thông tin HLV, thông tin học viên,phòng,… của buổi tập )
H
H u điậậậậậu điu đi uuuuu kiềềềềề ki nnnnn kiệệệệệ Không
3.2.5 Đặc tả use case UC010 “Tìm kiếm người dùng”
1 Quản trị viên chọn chức năng Tìm kiếm người dùng
2 Hệ thống lấy danh sách vai trò người dùng và hiển thị giao diện tìm
kiếm người dùng
3 Quản trị viên nhập họ, tên, số điện thoại hoặc chọn vai trò người dùng
muốn tìm kiếm (mô tả phía dưới *)
4 Quản trị viên yêu cầu tìm kiếm
5 Hệ thống kiểm tra xem khách đã nhập ít nhất một thông tin tìm kiếm
chưa
6 Hệ thống tìm và lấy về thông tin những người dùng thoả mãn các tiêu
chí tìm kiếm
7 Hệ thống hiển thị danh sách những người dùng thoả mãn điều kiện tìm
kiếm (mô tả phía dưới **) nếu có ít nhất một người dùngđược tìm thấy
6a Hệ thống thông báo: Cần nhập ít nhất một tiêu chí tìm kiếm nếu người
dùng không nhập thông tin nào7a Hệ thống thông báo: Không tìm thấy thông tin người dùng nào thoả
20
Trang 21
H
H u điậậậậậu điu đi uuuuu kiềềềềề ki nnnnn kiệệệệệ Không
* Dữ liệu đầu vào khi tìm kiếm:
STT Trường dữliệu Mô tả Bắt buộc? Điều kiện hợp lệ Ví dụ1
3.2.6 Đặc tả use case UC011 “Chức năng thêm, xem, sửa, xóa”
Chú ý: Người dùng bao gồm Huấn luyện viên hoặc Học viên
1 Quản trị viên yêu cầu Xem danh sách người dùng
12320 Hệ thống lấy danh sách vai trò người dùng
12400 Hệ thống lấy danh sách tất cả người dùng
13360 Hệ thống hiển thị giao diện Xem danh sách người dùng gồm:
● Phía trên: Danh sách vai trò người dùng để quản trịviên có thể lọc người dùng theo vai trò
Trang 22Luồng sự kiện
thay thế
5a1 Quản trị viên lựa chọn một vai trò người dùng
5a2 Hệ thống lấy các thông tin của người dùng dựa vào vai trò đã chọn, hiển
thị lên giao diện
1 Quản trị viên chọn một người dùng và yêu cầu sửa
12480 Hệ thống lấy thông tin chi tiết của người dùng và hiển thị thông tin cũ của
người dùng trên giao diện sửa thông tin
9440 Quản trị viên chỉnh sửa các thông tin (mô tả phía dưới **) mà người dùng yêu
cầu sửa
12640 Hệ thống kiểm tra các trường bắt buộc nhập
12800 Hệ thống kiểm tra các trường cần đảm bảo duy nhất
19760 Hệ thống cập nhật các thông tin cần chỉnh sửa và thông báo chỉnh sửa
thành công
Luồng sự kiện
thay thế
5a Hệ thống thông báo lỗi: chưa nhập đủ các trường cần thiết nếu quản trị
viên nhập thiếu trường6a Hệ thống thông báo lỗi: thông báo cụ thể trường nào không duy nhất nếu
quản trị viên nhập trùngXoá
STTT ThTh c hiựựựựực hic hi n bệệệệệ ởởởởởn bn b iiiii Hành đHành đ ngộộộộộng
1 Quản trị viên chọn một người dùng và yêu cầu xoá
21040 Hệ thống hiển thị thông báo yêu cầu quản trị viên xác nhận việc xoá
19920 Quản trị viên xác nhận xóa người dùng hoặc thông tin người dùng
23680 Hệ thống xóa người dùng hoặc thông tin và thông báo xóa thành
côngLuồng sự kiện thay
1 Quản trị viên yêu cầu thêm người dùng mới
22160 Hệ thống lấy danh sách vai trò người dùng và hiển thị giao diện thêm
người dùng
20720 Quản trị viên nhập các thông tin của người dùng (mô tả phía dưới **)
20000 Hệ thống kiểm tra các trường bắt buộc nhập
20800 Hệ thống kiểm tra các trường cần đảm bảo duy nhất
18720 Hệ thống cập nhật các thông tin cần chỉnh sửa và thông báo thêm thành
22