Hệ thống Thông báo không tìm thấy thông tin khi trả về danh sách rỗng Hậu điều kiện Cập nhật thông tin Thêm, Cập nhật, Xoá vào hệ thống 4.2.1.2 Quản lý lịch làm việc: việc Mô tả Tác nhâ
Trang 1
BÁO CÁO PBL3: ĐỒ ÁN CÔNG NGHỆ PHẦN MỀM
ĐỀ TÀI: Quản Lý Nhân Viên Quán Cafe
GIẢNG VIÊN HƯỚNG DẪN
1 QÚA TRÌNH TRIỂN KHAI 3
2 DANH SÁCH PHÂN CÔNG NHIỆM VỤ 4
Trang 22.1 Bảng phân công nhiệm vụ 4
2.2 Quản lý dự án 5
3 GIỚI THIỆU 5
3.1 Mục đích 5
3.2 Phạm vi 6
3.3 Phân tích nghiệp vụ hệ thống 6
4 PHÂN TÍCH THIẾT KẾ HỆ THỐNG 6
4.1 Tác nhân 6
4.2 Biểu đồ ca sử dụng 8
4.3 Biểu đồ hoạt động 18
4.3.1 Của Admin 18
4.3.2 Của User 19
4.4 Biểu đồ tuần tự 19
4.5 Biểu đồ lớp 20
4.6 Cơ sở dữ liệu 21
Bảng Diagram 21
5 YÊU CẦU PHI CHỨC NĂNG: 24
5.1 Yêu cầu phi chức năng về giao diện 24
5.1.1 Cách nhìn giao diện trên lý thuyết 24
5.1.2 Cách nhìn giao diện trên phần mềm 24
5.2 Yêu cầu phi chức năng về tính bảo mật 34
5.3 Yêu cầu phi chức năng về tính ràng buộc 34
6 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 34
6.1 Kết luận 34
6.2 Hướng phát triển 34
7 TÀI LIỆU THAM KHẢO 34
Trang 3LỜI NÓI ĐẦU
Trong thế giới hiện đại 4.0 ngày nay ngành công nghệ thông tin hiện tại đang trong đàphát triển vượt bậc với nhiều thành tựu lớn Việc áp dựng khoa học kĩ thuật công nghệtiên tiến đã một phần nào đó nâng cao cải thiện đời sống vật chất lẫn tinh thần của mỗingười Máy tính điện thoại hiện đã trở thành một trong những công cụ làm việc, họctập , giải trí có hiệu quả nơi mà mọi người có thể trao đổi, giao lưu trực tiếp ngay khikhông cần phải gặp mặt nhau Và nó đang dần trở thành một phần không thể thiếu đốivới của mỗi người Nhờ vào đó con người có thể thoải mái học tập lao động, thoải máitìm kiếm những nguồn tài liệu khổng lồ trên internet
Đứng trước sự cạnh tranh gay gắt các hoạt động công nghệ thông tin, các doanhnghiệp, nhà tư bản luôn luôn muốn áp dụng khoa học kĩ thuật, công nghệ thông tin vào
mô hình kinh doanh của họ để phần nào hiện đại hóa quy trình hoạt động của doanhnghiệp để giảm bớt sức lao động của công nhân đồng nâng cao lợi nhuận
Nắm bắt được những nhu cầu thiết yêu đấy và cũng muốn một phần đóng góp vào sựphát triển của công nghệ thông tin, nhóm chúng em đã tìm hiểu, nghiên cứu và ứngdụng hóa phần mềm quản lí quán cafe cho nhân viên bán thời gian
Qua sự hướng dẫn và giúp đỡ của thầy Mai Văn Hà chúng em đã có thể hoàn thànhđược đồ án một cách thuận lợi nhất Tuy đã nghiên cứu và tìm hiểu khá lâu nhưng đây
là đồ án lập trình ứng dụng đầu tiên của chúng em nên chắc chắn sẽ gặp những thiếusót Chúng em rất mong nhận được sự cảm thông và hi vọng nhận được những sự đánhgiá của quý thầy cô
Qua đây em xin được cảm ơn sự chỉ bảo tận tình của thầy Mai Văn Hà và thầy côtrong hội đồng phản biện đã cho em lời chỉ dẫn và đánh giá cực kì quý báu Những lờibình luận này sẽ là một trong những bài học quí báu để chúng em có thể rút kinhnghiệm cũng như phát huy được những điểm mạnh và điểm yếu của mình Chúng emxin cảm ơn
Trang 41 QUÁ TRÌNH TRIỂN KHAI
- Quá trình triển khai làm đồ án được thực hiện thông qua các giai đoạn dưới đây:
Các Giai Đoạn Khoảng Thời Gian Nhiệm Vụ
Giai đoạn 2 1 tuần Phân tích các tác nhân sẽ có và các
chức năng cơ bản của phần mềm
Giai đoạn 3 2 tuần Lên ý tưởng và bắt đầu thiết kế giao
diện trên Figma để có thể hình dung được giao diện của phần mềm
Giai đoạn 4 2 tuần Thiết kế cơ sở dữ liệu cho phần mềm
Giai đoạn 5 1 tuần Thực hiện thiết kế giao diện từ bản vẽ
Figma trước đó
Giai đoạn 6 3 tuần Lên ý tưởng và nghiên cứu thuật toán
cho phần mềm
Giai đoạn 7 4 tuần Bắt tay vào code các chức năng đưa
thuật toán từ lý thuyết vào phần mềm
Giai đoạn 8 2 tuần Viết báo cáo về đồ án công nghệ
phầm mềm
Trang 52 DANH SÁCH PHÂN CÔNG NHIỆM VỤ
2.1 Bảng phân công nhiệm vụ
- Xây dựng cơ sở dữ liệu, mô hình 3 lớp
- Code chức năng đăng nhập, phân quyền,đổi mật khẩu, xếp lịch làm việc , tính lương nhân viên, xem thông tin cá nhân và toàn bộ nhân viên
- Quản lý source code
- Viết báo cáoNguyễn Tiến Thịnh - Thiếu kế giao diện Figma
- Code GUI,các chức năng thêm, sửa, xóa, xem thông tin nhân viên
- Viết báo cáo
- Làm slide
viên, đăng ký lịch bận, xem lịch làm việc
cá nhân
- Viết báo cáo
- Làm slide
Trang 62.2 Quản lý dự án
Quá trình nêu ý tưởng, phân tích hệ thống và thống nhất ý tưởng: Được trao đổi thông qua hình thức mạng xã hội và trò chuyện trực tiếp, những văn bản đã thống nhất được đưa lên Google Drive, Figma
Quá trình phân công công việc: Các thành viên bàn bạc phần mình sẽ thực hiện của ứng dụng, sau đó chia từng hạng mục cho mỗi thành viên, thực hiện theo cáccông việc đã thống nhất
Quá trình thiết kế giao diện: Sau khi nhận nhiệm vụ được giao, thành viên được phân công và đưa phần giao diện đã hoàn thành của mình lên Google Driver, Github và Figma
Quá trình code: Triển khai code và trao đổi code từng phần được giao và bảo quản code chung trên Github
Quá trình kiểm tra: Họp cùng nhau để review Task, kiểm tra lỗi, thực hiện testing và tiến hành sửa lỗi
Quá trình làm báo cáo: Tất cả các thành viên đều tham gia làm báo cáo
- Người quản lý có thể quản lý tất cả các nhân viên của mình cũng như quản lý mọi vấn đề nằm trong tầm kiểm soát trên phầm mềm
- Nhân viên có thể dễ dàng sử dụng phần mềm này để thực hiện những chức năng như điểm danh, xem lịch làm việc, tra cứu lương của cá nhân
3.2 Phạm vi
- Phần mềm được sử dụng trong phạm vi là một quán cafe
- Hệ thống đáp ứng được cho người quản lý, nhân viên trong quán
3.3 Phân tích nghiệp vụ hệ thống
- Trước khi sử dụng hệ thống thì người dùng sẽ được cấp một tài khoản có phân quyền là nhân viên hoặc admin, mỗi người nhân viên hoặc admin chỉ được sử dụng các chức năng trong phạm vi phân quyền của mình
- Nhân viên khi đi làm sẽ điểm danh trong hệ thống phần mềm bằng cách đăng nhập vào hệ thống và chọn chức năng điểm danh để xác nhận checkin hoặc
Trang 7- Nhân viên có thể đăng ký ngày bận hoặc xóa đi ngày bận đã đăng ký trước đó (nếu muốn) Dữ liệu đăng ký lịch bận sẽ được phục vụ cho quá trình sắp xếp lịch làm việc cho nhân viên.
- Nhân viên có thể sử dụng các chức năng khác như xem thông tin cá nhân, xem lịch làm việc của cá nhân hoặc toàn bộ nhân viên, tra cứu lương của cá nhân
- Quản lý có thể sử dụng được các chức năng khác như xem, sửa, xóa, thêm nhân viên, xếp lịch làm việc của nhân viên
Xếp lịch làm việcXem lịch làm việcTính lương cho toàn bộ nhân viênChỉnh sửa lương theo giờ
Xem giới thiệuNhân viên Đăng nhập
Đổi mật khẩu Điểm DanhĐăng ký lịch bậnXóa lịch bậnXem toàn bộ lịch làm việcXem lịch làm việc cá nhânXem thông tin cá nhânXem giới thiệu
4.2 Biểu đồ ca sử dụng
4.2.1 Phân Quyền Admin
Trang 84.2.1.1 Chức năng quản lý nhân viên:
Mã Use case
Tác nhân Quản Lý
Mô tả Thực hiện các tác vụ như thêm, sửa, xóa, tìm kiếm tài khoản nhân
viên
Sự kiện kích hoạt
Chọn chức năng “Thêm”, “Xoá”, “Sửa, “Tìm kiếm” tương ứng vớicác sự kiện thêm mới, xóa, sửa, tìm kiếm nhân viên
Trang 9Luồng sự kiện chính - - Chức năng Tạo mới
ST
1 Quản lý Chọn chức năng Quản lý nhân viên
2 Hệ thống Hiển thị giao diện Quản lý nhân viên
3 Quản lý Nhập các thông tin nhân viên và chọn chức năng
Lưu
4 Hệ thống Kiểm tra các trường nhập liệu
5 Hệ thống Thêm mới thông tin nhân viên
Luồng sự kiện thay thế
4a Hệ thống Thông báo lỗi nếu dữ liệu nhập vào không đúng
định dạng 5a Hệ thống Thông báo lỗi nếu thêm mới không thành công
Luồng sự kiện chính
Chức năng Cập nhật
STT Thực hiện
1 Quản lý Nhập Mã nhân viên hoặc chọn nhân viên ở
bảng thông tin để chọn
2 Hệ thống Lấy thông tin chi tiết nhân viên và hiển thị
thông tin lên giao diện của chức năng Cập nhật
3 Quản lý Chỉnh sửa các thông tin nhân viên và chọn
chức năng Lưu
4 Hệ thống Kiểm tra các trường nhập liệu
5 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ế
1a Hệ thống Thông báo lỗi nếu Mã nhân viên cần tìm kiếm
không tồn tại4a Hệ thống Thông báo lỗi nếu các trường nhập liệu không
đúng định5a Hệ thống Thông báo lỗi nếu cập nhật không thành công
Trang 10Luồng sự kiện chính
Chức năng Xoá
1 Quản lý Nhập Mã nhân viên để tìm kiếm nhân viên
hoặc chọn ở bảng thông tin nhân viên
2 Hệ thống Hiển thị thông báo yêu cầu xác nhận xoá
3 Quản lý Xác nhận xoá Nhân viên
4 Hệ thống Xoá và thông báo thành công
Luồng sự kiện thay thế
1a Hệ thống Thông báo lỗi nếu Mã nhân viên cần tìm kiếm
không tồn tại4a Hệ thống Thông báo lỗi nếu xoá không thành công
Luồng sự kiện chính
Chức năng Tìm Kiếm
STT Thực hiện
bởi
Hành động
1 Quản lý Chọn chức năng Tìm kiếm
2 Hệ thống Hiển thị giao diện chức năng Tìm kiếm
3 Quản lý Nhập các tiêu chí cần tìm kiếm
4 Quản lý Yêu cầu tìm kiếm
5 Hệ thống Tìm và hiển thị thông tin về người thoả mãn
các tiêu chí
Luồng sự kiện thay thế
5a Hệ thống Thông báo không tìm thấy thông tin khi trả về
danh sách rỗng
Hậu điều kiện Cập nhật thông tin Thêm, Cập nhật, Xoá vào hệ thống
4.2.1.2 Quản lý lịch làm việc:
việc
Mô tả Tác nhân muốn sắp xếp lịch làm việc cho nhân viên
Sự kiện kích hoạt Chọn Lịch làm việc của nhân viên trên trang chủ của ứng dụng
Trang 11khoản quản lý
Luồng sự kiện chính (Thành công)
ST T
Thực hiện bởi
Hành động
1 Quản lý Chọn chức năng Lịch làm việc của
nhân viên
2 Hệ thống Hiển thị giao diện Lịch làm việc của
nhân viên
3 Quản lý Chọn chức năng xếp lịch làm việc
4 Hệ thống Lấy thông tin từ đăng kí lịch bận của
các nhân viên để sắp xếp lịch làm việc cho tất cả nhân viên
5 Hệ thống Hiển thị lịch làm việc của nhân viên
sau khi sắp xếp
Luồng sự kiện thay
Thực hiện bởi
Hành động
5.a Quản lý Nếu hệ thống sắp xếp không theo ý
muốn của quản lý có thể sửa trực tiếp ởbảng lịch làm việc sau khi sắp xếp
Hậu điều kiện Cập nhật thông tin vào hệ thống
4.2.1.3 Chức năng tính lương nhân viên:
Mô tả Tác nhân muốn tính lương cho nhân viên hoặc thay đổi hệ số
lương của nhân viên
Sự kiện kích hoạt Chọn chức năng tính lương trên giao diện chínhTiền điều kiện Tác nhân đăng nhập thành công vào hệ thống và thuộc tài
khoản quản lý
Luồng sự kiện chính (Thành công)
ST
1.Quản lý Chọn chức năng Tính lương nhân viên
2
Hệ thống Hiển thị giao diện chức năng Tính
lương nhân viên3
Quản lý Chọn thông tin chức vụ cần tínhlương, nhập hệ số lương hoặc lương
theo giờ của chức vụ đó của chức vụđó
Trang 124 Quản lý Chọn lưu và yêu cầu Tính lương5
Hệ thống Hiển thị giao diện danh sách thông tin
các nhân viên đã tính lương và sốlương theo từng phòng ban
Luồng sự kiện thay
5a Hệ thống Thông báo lỗi nếu hệ số lương/ lương
theo giờ bé hơn 0/ không đúng định dạng
- Thay đổi hệ số lượng:
Luồng sự kiện chính
STT Thực hiện
1 Quản lý Chọn chức năng Tính lương nhân viên
2 Hệ thống Hiển thị danh sách thông tin lương nhân
viên
3 Quản lý Sửa hệ số lương/ lương theo giờ của
nhân viên trực tiếp tại danh sách và chọnlưu
4 Hệ thống Lưu và thông báo thành công
Luồng sự kiện thay thế
4a Hệ thống Thông báo lỗi nếu hệ số lương/ lương
theo giờ bé hơn 0/ không đúng định dạng
Trang 134.2.2 Phân Quyền User
Trang 14
1 Người dùng Mở ứng dụng.
2 Hệ thống Hiển thị giao diện đăng nhập
3 Người dùng Nhập tài khoản và mật khẩu (mô tả phía
dưới *)
4 Người dùng Yêu cầu đăng nhập
5 Hệ thống Kiểm tra xem người dùng đã nhập các
trường bắt buộc nhập hay chưa
6 Hệ thống Kiểm tra tài khoản và mật khẩu có hợp
lệ do người dùng nhập trong hệ thống hay không
7 Hệ thống Hiển thị chức năng tương ứng đối với
Người dùng
Luồng sự kiện thay thế STT Thực hiện bởi
Hành độ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 người dùng nhập thiếu7a Hệ thống Thông báo lỗi: Tài khoản và/hoặc mật
khẩu chưa đúng nếu không tìm thấy tài khoản và mật khẩu trong hệ thống
Hậu điều kiện Tác nhân đăng nhập được vào hệ thống
Trang 154.2.2.2 Thay đổi mật khẩu
khẩu
Mô tả Tác nhân muốn thay đổi mật khẩu để bảo vệ tài khoản
Sự kiện kích hoạt Chọn chức năng Thay đổi mật khẩu ở phần trang chủTiền điều kiện Tác nhân đăng nhập thành công vào hệ thống
Luồng sự kiện chính (Thành công)
ST
1.Người dùng Chọn chức năng Thay đổi mật khẩu
2 Hệ thống Hiển thị giao diện chức năng thay đổi mật khẩu3
Người dùng Điền thông tin mật khẩu cũ để xácminh, mật khẩu mới để thay đổi và
xác minh lại mật khẩu mới trùngkhớp với mật khẩu cần thay đổi4
.Người dùng Yêu cầu thay đổi mật khẩu
5 Hệ thống Kiểm tra mật khẩu cũ, mật khẩu mớivà xác nhận mật khẩu mới có trùng
khớp và tiến hành thay đổi mật khẩu
Luồng sự kiện thay
Thực hiện bởi
Hành động
5a Hệ thống Thông báo lỗi nếu thông tin mật khẩu
đối tượng cung cấp không đúng hoặc không trùng khớp
Hậu điều kiện Cập nhật mật khẩu mới vào hệ thống
4.2.2.3 Điểm danh
Mô tả Tác nhân muốn điểm danh để xác nhận ngày và thời điểm
bắt đầu làm việc của mình
Sự kiện kích hoạt Chọn chức năng điểm danh trên trang chủ của ứng dụngTiền điều kiện Tác nhân đăng nhập thành công vào hệ thống và thuộc tài
khoản nhân viên
Trang 16Luồng sự kiện chính
ST
T Thực hiện bởi Hà nh động
1 Nhân viên Chọn chức năng Điểm danh
2 Hệ thống Hiển thị giao diện chức năng Điểm
danh
3 Nhân viên Chọn vào ô “Điểm danh” để điểm
danh cho ngày làm việc của mình
4 Hệ thống Lưu và thông báo thành công
Luồng sự kiện thay thế
4a Hệ thống Thông báo không cho phép điểm danh
vì đã quá thời gian cho phép
danh vào hệ thống
4.2.2.4 Đăng ký lịch bận
Mô tả Tác nhân muốn đăng ký lịch bận của mình
Sự kiện kích hoạt Chọn chức năng đăng ký lịch bận trên trang chủ của ứng
dụng
Tiền điều kiện Tác nhân đăng nhập thành công vào hệ thống và thuộc tài
khoản nhân viên
Luồng sự kiện chính
ST T
Thực hiện bởi
Hành động
1 Nhân viên Chọn chức năng Đăng ký lịch bận
2 Hệ thống Hiển thị giao diện chức năng Đăng ký
lịch bận cho nhân viên
3 Nhân Viên Chọn ngày, ca bận trong ngày hoặc
xóa đi lịch bận đã đăng ký từ trước vànhấn “Xác nhận”
4 Hệ thống Lưu và thông báo thành công
Luồng sự kiện thay thế 4a. Hệ thống Thông báo lỗi nếu lịch bận đăng ký bịtrùng với lần đăng ký trước
viên vào hệ thống
Trang 174.2.2.5 Xem lịch làm việc:
Mô tả Tác nhân muốn xem lịch làm việc của mình
Sự kiện kích hoạt Chọn chức năng xem lịch làm việc trên trang chủ của ứng
dụng
Tiền điều kiện Tác nhân đăng nhập thành công vào hệ thống và thuộc tài
khoản nhân viên
Luồng sự kiện chính
ST
T Thực hiện bởi Hành động
1 Nhân viên Chọn chức năng Xem lịch làm việc
2 Hệ thống Hiển thị thông tin lịch làm việc của
nhân viên đã đăng nhập vào hệ thống
Luồng sự kiện thay thế
2a Hệ thống Thông báo lỗi nếu nhân viên chưa
được xếp lịch làm việc
4.2.2.6 Xoá lịch bận:
Mô tả Tác nhân muốn Xoá lịch bận của mình
Sự kiện kích hoạt Chọn chức năng Xoá lịch bận trên trang chủ của ứng dụngTiền điều kiện Tác nhân đăng nhập thành công vào hệ thống và thuộc tài
khoản nhân viên
Luồng sự kiện chính
ST
T Thực hiện bởi Hành động
1 Nhân viên Chọn chức năng Xoá lịch bận
2 Hệ thống Hiển thị danh sách thông tin chi tiết
lịch bận của nhân viên của nhân viên
Luồng sự kiện thay thế
2a Hệ thống Thông báo lỗi nếu nhân viên đăng kí
lịch bận
Hậu điều kiện Cập nhật thông tin lịch bận của nhân viên
Trang 184.2.2.7 Tra cứu lương:
Mô tả Tác nhân muốn xem lương làm việc của mình
Sự kiện kích hoạt Chọn chức năng Tra cứu lương trên trang chủ của ứng dụngTiền điều kiện Tác nhân đăng nhập thành công vào hệ thống và thuộc tài
khoản nhân viên
Luồng sự kiện chính
ST
T Thực hiện bởi Hành động
1 Nhân viên Chọn chức năng Tra cứu lương
2 Hệ thống Hiển thị danh sách thông tin chi tiết
lương của nhân viên
Luồng sự kiện thay thế 2a. Hệ thống Thông báo lỗi nếu nhân viên chưa làmđược ca nào cả
4.2.2.8 Xem thông tin cá nhân
Mô tả Tác nhân muốn xem thông tin cá nhân của mình
Sự kiện kích hoạt Chọn chức năng xem lịch thông tin cá nhân trên trang chủ
của ứng dụng
Tiền điều kiện Tác nhân đăng nhập thành công vào hệ thống và thuộc tài
khoản nhân viên
Luồng sự kiện chính
ST T
Thực hiện bởi
Hành động
1 Nhân viên Chọn chức năng Xem thông tin cá
nhân
2 Hệ thống Hiển thị thông tin lịch làm việc của
nhân viên đã đăng nhập vào hệ thống
Luồng sự kiện thay thế
2a Hệ thống Thông báo lỗi nếu nhân viên chưa
được xếp lịch làm việc
Trang 194.2.2.9 Xem lịch làm việc của toàn bộ nhân viên:
Mô tả Tác nhân muốn xem lịch làm việc của toàn bộ nhân viên
Sự kiện kích hoạt Chọn chức năng xếp lịch làm việc trên trang chủ của ứng
dụng
Tiền điều kiện Tác nhân đăng nhập thành công vào hệ thống và thuộc tài
khoản nhân viên
Luồng sự kiện chính
ST T
Thực hiện bởi
Hành động
1 Nhân viên Chọn chức năng Xếp lịch làm việc
2 Hệ thống Hiển thị thông tin lịch làm việc của
nhân viên đã đăng nhập vào hệ thống
Luồng sự kiện thay thế 2a. Hệ thống Thông báo lỗi nếu chưa có lịch làmviệc đã xếp
4.3 Biểu đồ hoạt động
4.3.2 Phân rã chức năng Đăng nhập
Trang 204.3.3 Phân rã chức năng Đổi mật khẩu:
Trang 214.3.4 Phân rã chức năng Quản lý nhân viên:
Trang 234.3.5 Phân rã chức năng Xếp lịch làm việc:
Trang 244.3.6 Phân rã chức năng Tính lương nhân viên:
Trang 254.3.7 Phân rã chức năng điểm danh
Trang 264.3.8 Phân rã chức năng Đăng kí và Xoá lịch bận
4.3.9 Phân rã chức năng tra cứu thông tin: Lương, Lịch làm việc, Tài khoản,…