Nội dung đồ án được chia thành với nội dung như sau: CHUONG I: TONG QUAN VE DE TÀI VÀ LỰA CHỌN CÔNG NGHỆ Nội dung chương nay là giới thiệu dé tai, mục tiêu, yêu cầu, giới thiệu về các cô
Trang 1HỌC VIEN CÔNG NGHỆ BƯU CHÍNH VIỄN THONG
KHOA CÔNG NGHỆ THÔNG TIN
GIẢNG VIÊN HUONG DAN: Th$ NGUYEN ĐÌNH HIẾN SINH VIÊN THỰC HIỆN: PHẠM ANH TUẦN
MÃ SINH VIÊN: B19DCCN617
KHOA: 2019 - 2024
HE Chinh quy
HA NOI - 2023
Trang 2NYV(1L HNV WVHd
q-s0N2Ò26Iđ
BO THONG TIN VÀ TRUYEN THONG
HỌC VIEN CONG NGHỆ BƯU CHÍNH VIEN THONG
KHOA CONG NGHE THONG TIN
DO AN TOT NGHIEP DAI HOC
DE TAI: “UNG DUNG QUAN LY LUONG
CONG VIEC - TIMESHEET”
Giang viên hướng dẫn : ThS NGUYEN ĐÌNH HIẾN Sinh viên thực hiện © PHAM ANH TUẦN
Lớp: B19DCCN617
Hệ: Chính quy
HÀ NỘI - 2023
Trang 3HỌC VIEN CÔNG NGHỆ BƯU CHÍNH VIỄN THONG CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
KHOA CÔNG NGHỆ THÔNG TIN 1 Độc lập — Tự do - Hạnh phúc
ĐÈ TÀI ĐÒ ÁN TÓT NGHIỆP ĐẠI HỌC
1/ Tên đồ án tốt nghiệp: UNG DUNG QUAN LY LUONG CÔNG VIỆC - TIMESHEET
2/ Nội dung chính của đồ án:
- Tổng quan về dé tài va lựa chon công nghệ
- Phân tích thiết kế ứng dung quản lý luồng công việc - timesheet
- Cai dat ing dung
3/ Cơ sở dữ liệu ban dau:
4/ Ngày giao đồ án:
5/ Ngày nộp đồ án:
GIÁO VIÊN HƯỠNG DẪN SINH VIÊN THỰC HIỆN
(Ký, ghi rõ họ tên) (Ky, ghi rõ họ tên)
TRƯỞNG KHOA (Duyệt)
(Ky, ghi rõ họ tên)
Trang 4LỜI CẢM ƠN
Lời đầu tiên, em xin gửi lời cảm ơn chân thành nhất đến các thầy cô giáo khoa Công nghệ Thông tin nói riêng và toàn thê thầy cô giáo của Học viện Công nghệ Bưu chính Viễn thông nói chung Thầy cô đã tận tình giảng dạy, truyền đạt kiến thức, định
hướng va tạo mọi điều kiện tốt nhất cho em trong suốt quá trình học tập và rèn luyện
đạo đức tại trường.
Em xin gửi lời biết ơn sâu sắc nhất đến thầy giáo ThS Nguyễn Đình Hiến,
người đã hướng dẫn và giúp đỡ em trong suốt quá trình thực hiện đề tài khóa luận tốt
nghiệp Thầy đã cho em những kiến thức quý báu, những lời khuyên chân thành và
luôn sẵn sàng giải đáp mọi thắc mắc của em Những điều thầy đã dạy em không chỉ
giúp em hoàn thành tốt đề tài khóa luận mà còn là hành trang quý giá để em bước vào
đời.
Em cũng xin gửi lời cảm ơn chân thành đến gia đình và bạn bè đã luôn yêu
thương, động viên và giúp đỡ em trong suốt thời gian qua Gia đình đã là hậu phương
vững chắc, là nguồn động lực lớn lao để em vượt qua mọi khó khăn Bạn bè đã luôn
đồng hành, giúp đỡ em trong học tập và cuộc sông.
Mặc dù đã cố gắng hết sức nhưng do thời gian có hạn và trình độ còn hạn chế, nên đề tài khóa luận của em không thể tránh khỏi những thiếu sót Em rất mong nhận
được sự chỉ bảo, đóng góp ý kiến của các thầy cô để em có thé hoàn thiện dé tài và nâng cao kiến thức, kỹ năng của bản thân.
Em xin chân thành cảm ơn!
Hà nội, thang 12 năm 2023
Sinh viên thực hiện
PHAM ANH TUẦN
ii
Trang 5NHẬN XÉT, ĐÁNH GIÁ, CHO DIEM
(Của Giảng viên hướng dẫn)
Điểm: (bằng chữ: )
Đồng ý/Không đồng ý cho sinh viên bảo vệ trước hội đồng cham đồ án tốt nghiệp?
Hà Nội ngày tháng năm 2023
CÁN BO - GIANG VIÊN HƯỚNG DAN
(ky, ghi rõ họ tên)
ill
Trang 6NHAN XÉT, ĐÁNH GIÁ, CHO DIEM
(Của Giảng viên phản biện)
Điểm: (bằng chữ: )
Đồng ý/Không đồng ý cho sinh viên bảo vệ trước hội đồng chấm đồ án tốt nghiệp?
Hà Nội ngày tháng năm 2023
CAN BỘ - GIANG VIÊN PHAN BIEN
(ky, ghi rõ họ tên)
IV
Trang 7MỤC LỤC
hen — ÔỎ v
0.0 ):8//10/98:10):80 0:02 vii
J.9));8\10/08:7.90105:)19000N“ ixDANH MUC VIET TAT ecsccsssssssssssscssccsscssccsscsnccascsncsnccascsucenscsucsnccascsnccascsucsscsascsecsucaeencencenees xih7 BHANMHL HBHL)L 1
CHUONG 1: TONG QUAN VE DE TÀI VÀ LỰA CHON CÔNG NGHỆ, 2 1.1 Tổng quan về để tai ececcccccececscsssessesssssessessvessesssessessesssessessecssessesssessesssssessesasessesseasesneeess 2
1.1.1 Lý do chọn đề tài 5-5 s9S‡9S‡EEE SE EEE1E71111111111111112112112111111 1111.111 1A 21.1.2 Mục tiêu xây dựng ứng dụng - ¿6+ tk nh HT HH nưệp 2
1.1.3 Xác định yêu cầu bài toán -:¿- 25s St SE EE211271211211 1111111112111 tre 3 1.1.4 Đối tượng và phạm vi - +: se tk 2E1271211211111211 1111121111211 1111 xetrre, 4
1.1.5 Khao sát các các website tương fỰ - -cctnnh nh tnHn HT HH TH nghe 41.2 Một số công nghệ sử dụng - 2-22 S1+SE2E19EE2E122171121127112112117112112112112121 11 xe 8
1.2.1 Giới thiệu về API ¿- + kề EE121121121121121121111.111111 11111111 1 1E errreu 81.2.2 Ngôn ngữ lập trình sử dụng - - + 2+2 1311121119111 1119111911 911 11H kg re 10 1.2.3 Framework str Ung “43 121.2.4 Giới thiệu về Keycloak c.ccccccsccecsesssessessesssessessssssessesssessessssssessesssessessessessessecseeees 141.2.5 Giới thiệu về OpenKM - ¿s2 2221 212E1221211211271121121121211 11111 141.2.6 Co sốiij 0á 0H 151.3 Kết luận chương -¿- + sS1+S19E19E19E12E151121121121121121121121121121111111.11.11111 111111 17
CHƯƠNG 2: PHAN TÍCH THIET KE HE THONG QUAN LÝ LUONG CÔNG VIỆC
— ôÔỎ 18
2.1 Biểu đỒ s€case -¿- 6-56 1111111111111 11111111 11 1011121121111 211212111111 crrke 18
2.1.1 Bảng mô tả các usecase của hệ thống - 2 + £2EE‡EEEE2EEEEE2E1EE12221 E2 xe2 18
2.1.2 Biểu đồ usecase tổng qUat cccccccscscsecsesssessesssessessesssessessusssessesssessssssessesseseesesseees 202.1.3 Biéu đồ usecase chỉ tiết cho từng chức năng - 2-2 x+++Ez+£xtzxzrxzxzzsee 212.2 XAy dung kich DAN eee a5 25
2.2.1 Kịch ban tạo mẫu chữ kY cccccccccccccsccsesseseesessssesscsscsessssessesussesscsussesissessesesseesetes 25
2.2.2 Kịch bản luồng đăng ký và phê duyệt công viỆc - 2-22 2+2x++z+zxzzxez 282.2.3 Kịch bản luéng tạo yêu cầu và phê duyệt lịch nghỉ phép 5-2522 322.3 Biểu đồ tuần tự - - s11 1211211211211 1121121011111 211111111 ro ro 38
2.3.1 Biểu đồ tuần tự tạo mẫu chữ ký ¿- 2-5222 2 2 1221211221712 xe 38
2.3.2 Biéu đồ tuần tự luồng đăng ký và phê duyệt công việc - 2 2 s+xscs2 42
Trang 82.3.3 Biéu đồ tuần tự luồng tạo yêu cầu và phê duyệt lịch nghỉ phép - 462.4 Biểu đồ lớp thực thỂ - ¿5+ 552+S1£EE22EE2E12211211271211211711211112111111.211 111111 rre 51
2.5 Thiét ké CO ng NƯNỚG <a Ả 51
2.5.1 Mô tả các bảng trong cơ sở di lIỆU - c2 322112313 1 1195111511111 ree 512.5.2 Lược đồ cơ sở đữ GU cecceccecsesssessessesssessesssessessesssessesssessessusssessessssssessessuessssesaeeees 652.6 Kết luận chương ¿- s-+sz+Sx+2E2E19212112212112117121121111121111111211 112111111 rre 66
CHUONG 3: CÀI DAT UNG DUNG QUAN LÝ LUÒNG CÔNG VIỆC 67
3.1 Yêu cầu cài đặt và triỂn khai - 2-2: 2s2 1 2219221222122112211271127117112711 2111211 1 re 67
3.2 Kết quả cài đặt ứng UNG ec ccc ecsessessessessesscssessessessessessesusssessestssssesessesseseseeseseseess 683.3 Kết luận chương - +: +2 222x921 221271211271711211712111111121111711 1111.1111101 r0 76
In - ÔỎ 77
IV 08019009:7 0/84/7001 78
vi
Trang 9DANH MỤC HÌNH ẢNH
Hình 1.1: Trang web ASaTa LH TH TH TH TH HH HH ng 4 I§0)i0W2W§v i0 s01990 1115 5 Hinh 1.3: pvc) s/.30) 201.852 0n 6 Hình 1.4: App MySIgi - ch HH TT Hà TT Tàn TH TH nh Tà HH HT TH TH nh 7Hình 1.5: API là một tập hợp các thủ tục, lớp và giao điện cho phép các ứng dụng giao tiếpJ8 0 9 Hình 1.6: Ngôn ngữ lập trình ]aVa - - - c2 211211 HH TT HT TH HT ng rệp 10 Hình 1.7: Ngôn ngữ lập trình TyppeSCTIpI - - - 5- 2.22 S2 * S9 2111111112111 11k rệt 11 Hình 1.8: Spring FTafIeWOIÍK + t9 9 v1 ng TH nh HH nọ TH nh HH TH nhàn 12
Hình 1.9: Angular Fram€WOFK - - c2 3211211121121 3931 911111115111 11111 111 11 11111 11 011 1 ng Hiệp 13
I§0)i008108 45000) 1 dai 14 Hinh 0619) 0111 4 15 Hình 1.12: Cơ sở dữ liệu PostgreSQL, - - + 5c 1111219199 nh HT nh ng ng nành 15
Hình 2.1: Biểu đồ usecase toàn hệ thống 2-22 2299 E£EE2E1271211221711211 111111 c0, 20
Hình 2.2: Biểu đồ usecase quản lý nhân viên 2-2 2 2+S2+EE2EE2EE2EE2EZEEEEEEEEEEErkrrrree 21Hình 2.3: Biểu đồ usecase người dùng cập nhật thông tin khi lần đầu đăng nhập vào hệ thống
¬— .:LẼÃAA 21
Hình 2.4: Biéu đồ usecase quan ly tạo chứng thư số cho người dùng 5: 555252 21
Hình 2.5: Usecase tạo mẫu chữ kY ccccccccccsscssssessessssesscsssessssessesucsessssesscsscsesassesstsnssesessessessees 22
Hình 2.6: Usecase nhân viên đăng ký công việc tháng - - +5 set +ksirsrrsrrrerrrre 22 Hình 2.7: Usecase quản ly phê duyệt công việc tháng - - 5-3222 +22 + ++eerseerererrsree 23 Hình 2.8: Usecase xem danh sách công việc tháng - - 6 t1 2v HH ng re, 23
Hình 2.9: Usecase nhân viên tạo yêu cầu nghỉ phép - 2-2 2+ £+Ek+£E2E+2EEtEEzExerxerree 24
Hình 2.10: Usecase quản lý phê duyệt yêu cầu nghỉ phép ¿22 2+ ++E+£E+£E+rxzrxerxez 24Hình 2.11: Usecase xem danh sách yêu cầu nghỉ phep 2- 2 + 2+Sz+E+zE+zxezzzzxeez 25Hình 2.12: Biểu đồ tuần tự quản lý thêm người dùng vào hệ thống 2- 555552 38Hình 2.13: Biéu đồ tuần tự người dùng cập nhật thông tin khi lần đầu đăng nhập hệ thống 39Hình 2.14: Biéu đồ tuần tự quản lý cấp chứng thư số cho nhân viên - 2- 2 52 2552 40Hình 2.15: Biéu dé tuần tự tạo mẫu chữ 2 41Hình 2.16: Biéu đồ tuần tự nhân viên tạo 1951504110117 42Hình 2.17: Biểu đồ tuần tự nhân viên tạo quy trình ký mô tả công việc tháng - 43Hình 2.18: Biểu đồ tuần tự quản lý phê duyệt công việc tháng -.2- 2 5c cczEzxred 44Hình 2.19: Biểu đồ tuần tự nhân viên xem danh sách công việc tháng - 2-5 45
vil
Trang 10Hình 2.20: Biểu đồ tuần tự nhân viên tạo yêu cầu nghỉ phép 2-2 2 5++szx+zxzzzzxz 46
Hình 2.21: Biểu đồ tuần tự nhân viên tạo quy trình ký đơn xin nghỉ phép -. - 47
Hình 2.22: Biểu đồ tuần tự quản lý phê duyệt yêu cầu nghỉ phép trên lịch công việc 48
Hình 2.23: Biểu đồ tuần tự quản lý phê duyệt đơn xin nghỉ phép trên tài liệu 49
Hình 2.24: Biểu đồ tuần tự nhân viên xem danh sách yêu cầu nghỉ phép - 50
Hình 2.25: Biểu đồ lớp thực thẻ 2: 5¿+2<+2E£2E2EEEEE21127171121127121121171.211 1171.111 ce 51 Hình 2.26: Lược đồ cơ sở dit LiGu c.cecceccssesscssceseesesseesesessessvssesscssessesseseesavseesavsacsvsacsvsecsveecevees 65 Hình 3.1: Bash cai đặt phần mém.o cecceccscccsscesssssesssessesssessessvessessessvessesseessessesssessestsseseveeessees 67 Hình 3.2: Build ứng dụng - 1121122113211 1111 1911191111 1111111 1 T1 nh TH KH kg re 68 Hình 3.3: Đóng gói ứng dụng vào một file WAT - 2+ St **t 2 2E HH riệp 68 Hình 3.4: Ung dụng được triển khai trên Tomcat S€TVT -2- 22 52222+£S£2£E£2£E+zzzzzzcrxd 68 Hình 3.5: Giao diện Lịch công VIỆC - G2 31 191191191111 11111119118 11 11H TH tp 68 Hình 3.6: Giao diện nhập thông tin chi tiết yêu cầu nghỉ phép - 2-5 2+ +c+E+£zzxzsz 69 Hình 3.7: Giao diện lịch công việc sau khi thêm thành công yêu cầu nghỉ phép 69
Hình 3.8: Giao diện yêu cầu đã gửi sau khi thêm yêu cầu nghỉ phép : 2-5- 70 Hình 3.9: Giao diện quản lý tai lIỆU - 5 2 2c 2 122222121151 111355121111 1111111111111 11 11 tre 70 Hình 3.10: Giao diện danh sách tai liệu đã tải lên - 5 55 2 22221111 vkkeseeessszzzxz 70 Hình 3.11: Giao diện chọn danh sách người ky tải lIỆU 5 55552 S + £+esserserseersree 71 Hình 3.12: Giao diện sau khi dã chọn danh sách người ký - s5 ssvseeeserse 71 Hình 3.13: Giao diện file pdf khi chưa thêm khung chữ ký 5 + ++csesseeseess 71 Hình 3.14: Giao diện file pdf sau khi đã thêm khung chữ ký - -¿- c5 5c +2 ‡+*++sxsss2 71 Hình 3.15: Giao diện danh sách người nhận tải 1@U eee eeeceseeeeceeeeeeeseceseeeeeeeeseeesaes 72 Hình 3.16: Giao diện sau khi đã gửi tài liệu thành công 5-2555 +S+c‡+x+sssexsersersres 72 Hình 3.17: Gao diện danh sách tài liệu cần 2 72
Hình 3.18: Giao diện chỉ tiết thông tin tài liệu cần ký 2¿- 2 s2x+2ExeEEEEeEkerxerxerrres 73 Hình 3.19: Giao điện hiển thị khung chữ ký trên tai liệu - - 5 S325 ‡++ssssseeereseese 73 Hình 3.20: Giao diện nhập mật khẩu dé thực hiện ký tài liệu 2- 2 2 +s+cx+=++£zzxee: 74 Hình 3.21: Giao diện sau khi ký tài liệu thành công + 5c + #ssvEsersreseerkesree 74 Hình 3.22: Giao diện danh sách yêu cầu nghỉ phép của nhân viên của quan lý 75
Hình 3.23: Giao điện thông tin chi tiết yêu cầu nghỉ phép 2-2 52 2+Ee££EEzE+zEzxeei 75 Hình 3.24: Giao diện sau khi quản lý chấp nhận yêu cầu nghỉ phép - 2 25252 75 Hình 3.25: Giao điện xem yêu cầu nghỉ phép đã được phê duyệt ở mục Lịch công việc 76
Hình 3.26: Giao điện xem yêu cầu nghỉ phép đã được phê duyệt ở mục Phê duyệt 76
Vill
Trang 11DANH MỤC BANG BIEU
Bang 2.1: Bảng mô tả các tác nhân - - + 1k9 91191 1 01 1v TH TT Hàng nh Hàng 18 Bang 2.2: Bang m6 ta USCCASC 18Bang 2.3: Kịch bản quan lý thêm người đùng vào hệ thong ces csseseseeseeseseeseseeees 25Bảng 2.4: Kịch bản người dùng cập nhật thông tin khi lần đầu đăng nhập hệ thống 26Bảng 2.5: Kịch ban quan lý tạo chứng thư số cho người đùng 2- 2-2 5z225zzz++zx2 27
Bảng 2.6: Kịch bản tạo mẫu chữ ký - 2-5-5 SS2SE9212EE21251212123121211217121121212111 21.11 xe 28
Bang 2.7: Kịch bản nhân viên đăng ký công việc tháng - - c 2 32 vs rerrrrrre28 Bang 2.8: Kịch bản quan lý phê duyệt công việc tháng của nhân viên - 55-55: 31 Bang 2.9: Kịch ban xem danh sách công việc tháng - 5+ +2 *+2 + ++sEEsrersreerrrersrke 32Bảng 2.10: Kịch bản nhân viên tạo yêu cầu nghỉ phép - 2:22 ©5£+22++£Ez+£Eztzxzrrxezes 32Bảng 2.11: Kịch ban quản lý phê duyệt yêu cầu nghỉ phép của nhân viên - - 34Bang 2.12: Kịch ban xem danh sách yêu cầu nghỉ phép - ¿2 2 +Ez+E+E+EzEzzEzEzrxzez 36Bang 2.13: Kịch bản xoá yêu cầu nghỉ phép 2-2: 52 S2SE2EE2EEEEEEEEEEEEE2E12121 212 37
Bảng 2.1: Bảng Sr€et - Gà TH TH TT HT TT HT TH HH HH 51
Bang 2.2: Bang Commune 108 51 Bang 2.3: Bang District ccc eesccesessseessceseceseeeseecseececeeeaecseceseceseceaeceseenseenseeeseeseeeeeeeeeeeeee 52 Bang 2.4: Bang 86200 52
Bang 2.5: Bang COUTTTV 4 1S TT HT TH TH HT TH TH HH HH nàn 52
;1015010s0is.0( Tố 52
J7.10102/0051.:i1200)1-2vWV ẳẮÃỶÃỶẢ 53
20015021 10s01:860š342)010y/-15000)006) 0 431 54
›0132 0» 1:Ắ9) (290 ¿0.0 aD 54 Bang 2.10: Bảng MOnIOTLOB G1126 19111 99121191 11 1 111g Hàng nh TH nh nh nh 54 7110280085-805: 1n 55 Bảng 2.12: Bảng VocationlR€dU€S[ - óc 2c 2211121191119 111 11111110118 11 111 vn vn vết 55 Bảng 2.13: Bảng MonthlyWorkR€g1SfTafIOT - - - c3 S 23123111 211111 11H nghiệp 55 Bảng 2.14: Bang ExtendedPTODS - c1 1v 21 TH TH TH TT TH nh ng nh ng nành 56 Bang 2.15: Bang EmailUset 56 Bảng 2.16: Bảng Tag TOO - G13 2012113113111 191119118111 1111111 11 HT ng vn 57
?1015820 4851.1800614 57 Bang 2.18: Bang DigitalSignafureCOnlg hknnHnHnHT HT Hnn gnH Hh nnHh 57 Bang 2.19: Bảng NotificationSetfIng - - : c 1t 2112 1211111111 121111111 11111111 11 11 T1 gkrrrykt 58 J?710102/20057i1-06054001x.0000nn A3 59
1X
Trang 120011 -1 O 62
081128051 10ỄẼẺ3 7 ÉỶ 62
;t0i3910)isui01 1 63 Bảng PosItIonS18Ti4fUTG - - óc t1 21 1 11 1 ngàn nh Hàn HH ng Hiệp 63
Trang 13DANH MỤC VIET TAT
DB Database Cơ sở dữ liệu
HTTP Hypertext Transfer Protocol Giao thức truyên tải siêu văn bản
JSON JavaScript Object Notation Kiểu dir liệu mở rộng trong
Trang 14xI
Trang 15MỞ ĐẦU
Trong bối cảnh môi trường kinh doanh ngày nay, nơi mà sự cạnh tranh ngày càng giatăng và tiền triển công nghệ mở ra những thách thức lớn, việc tối ưu hóa quá trình làm việc và
quản lý nhân sự trở thành chìa khóa quan trọng đối với sự linh hoạt và thành công của mọi
doanh nghiệp Nhận thức sâu sắc về những thách thức này đã đưa ra quyết định chiến lược vềviệc xây dựng "Ứng dụng Quản lý Luéng Công Việc" một dự án mang tính chiến lược vahứa hẹn đối mặt với những thách thức hiện nay
Một trong những vấn đề thực tế và phổ biến mà mọi doanh nghiệp phải đối mặt là
quản lý yêu cầu nghỉ phép Điều này không chỉ đòi hỏi sự chính xác và minh bạch trong quytrình xử lý mà còn đặt ra thách thức về tốc độ và hiệu suất Đó là lý do chúng tôi quyết địnhtập trung xây dựng một ứng dụng có khả năng tự động hóa toàn bộ quy trình này, từ đăng ký
yêu cầu đến thông báo cho người quản lý, nhằm tối ưu hóa thời gian và nguồn lực.
Hơn nữa, quản lý các hé sơ, giấy tờ và yêu cầu là một phần không thể thiếu trong môitrường kinh đoanh Vì vậy, chúng tôi quyết định tích hợp chữ ký số trong quy trình ký tài liệu,nhằm tăng cường tính bảo mật và khả năng kiểm soát, giúp đảm bảo tính chính xác và uy tíncủa moi tài liệu trong hệ thống Bang cách này, chúng tôi hy vọng giảm thiểu thủ tục giấy tờtruyền thống, đồng thời bảo vệ thông tin quan trọng và ngăn chặn rủi ro mất mát
Chính vì những thách thức và cơ hội đặt ra, quyết định xây dựng một hệ thống quản lýluồng công việc toàn diện trở nên hết sức quan trọng Điều này không chỉ hướng đến việc giải
quyết những vấn đề cụ thể mà còn mục tiêu làm cho doanh nghiệp trở nên linh hoạt và thích ứng tốt với thị trường đầy biến động.
Nội dung đồ án được chia thành với nội dung như sau:
CHUONG I: TONG QUAN VE DE TÀI VÀ LỰA CHỌN CÔNG NGHỆ
Nội dung chương nay là giới thiệu dé tai, mục tiêu, yêu cầu, giới thiệu về các công nghệ sử
dụng
CHƯƠNG II: PHAN TÍCH THIET KE HE THONG QUAN LÝ LUONG CÔNG VIỆC
Nội dung chương này sẽ trình bay: xác định yêu cầu, phân tích và thiết kế hệ
thống ứng dụng quản lý luồng công việc
CHƯƠNG III: CÀI ĐẶT UNG DUNG QUAN LÝ LUONG CÔNG VIỆC
Nội dung chương này trình bày: cài đặt ứng dụng và kết quả cài đặt
PHAM ANH TUẦN - B19DCCN617 1
Trang 16sự linh hoạt và thành công của doanh nghiệp "Ứng dung Quản lý luồng công việc" là một
quyết định chiến lược, đưa ra dựa trên nhận thức sâu sắc về những thách thức và cơ hội ma
môi trường kinh doanh hiện đại mang lại.
Một trong những thách thức phổ biến mà doanh nghiệp đối diện là quản lý yêu cầunghỉ phép Ứng dụng của em sẽ giúp tự động hóa quy trình này, từ việc đăng ký yêu cầu,
thông báo đến người quản lý, đến việc cập nhật vào lịch công việc tổ chức Người dùng có thể
dé dang theo dõi tinh trạng của yêu cầu, giúp tối ưu hóa thời gian và tránh những nhầm lẫn
không cần thiết Bên cạnh đó, quản lý các hồ sơ, giấy tờ, các yêu cau, cũng là một thách
thức Ứng dụng sẽ cung cấp quy trình quản lý chữ ký, quản lý tài liệu và quản lý thư mục liên
quan Tăng tính bảo mật và khả năng kiểm soát dé dàng giúp đảm bảo tính chính xác và uy tin
của mọi tài liệu trong hệ thống Việc giảm thiêu thủ tục giấy tờ truyền thống không chỉ tiết
kiệm thời gian mà còn giảm bớt rủi ro về mat mát và truy cập trái phép
Chính vì những thách thức và cơ hội này, quyết định xây dựng một hệ thống quản lýluồng công việc toàn diện là hết sức cần thiết Hệ thống sẽ giúp tối ưu hóa hiệu suất làm việc,
giảm bớt gian lận và thiếu sót thông tin, đồng thời tạo ra môi trường làm việc tích cực và tích
hợp cho mọi thành viên trong tô chức
Như vậy, lý do em chọn dé tài này không chi là dé giải quyết những thách thức cụ thé
mà còn đề đưa ra một giải pháp toàn điện, đồng hành cùng doanh nghiệp trong hành trình phát
triển và thành công
1.1.2 Mục tiêu xây dựng ứng dụng
Em đã xác định một loạt mục tiêu rõ ràng và chỉ tiết trong quá trình xây dựng ứng
dụng quản lý luồng công việc của mình, nhằm tạo ra một công cụ toan diện và hiệu quả đề hỗ
trợ doanh nghiệp quản lý nguồn nhân lực và quá trình làm việc hàng ngày
a Tối Ưu Hóa Quy Trình Làm Việc
Một trong những mục tiêu hàng đầu của em là tối ưu hóa quy trình làm việc, từ việc
gửi yêu cầu nghỉ phép đến quy trình ký tài liệu Em hướng đến việc giảm thiểu thủ tục giấy
tờ, làm cho mọi quy trình trở nên nhanh chóng, linh hoạt và đễ dàng theo dõi, tăng cường khả
năng đáp ứng nhanh chóng đối với nhu cầu biến động
PHAM ANH TUẦN - B19DCCN617 2
Trang 17ĐỎ ÁN TÓT NGHIỆP CHƯƠNG I
b Quản Lý Thông Tin Cá Nhân và Yêu Cầu Nghỉ Phép Hiệu Quả
Mục tiêu lớn tiếp theo là quản lý thông tin cá nhân của nhân viên và yêu cầu nghỉ phépmột cách hiệu quả Em mong muốn cung cấp một nền tang dé nhân viên có thé dé dàng cập
nhật thông tin cá nhân, gửi yêu cầu nghỉ phép mà không gặp phải rắc rối hay nhằm lẫn
c Todolist - Hỗ Trợ Tổ Chức Công Việc Hàng Ngày
Tính năng todolist trong ứng dụng là một công cụ quan trọng dé hỗ trợ tổ chức côngviệc hàng ngày Mục tiêu là tạo ra một không gian làm việc linh hoạt và thông minh, giúp
người dùng theo dõi công việc, đặt mục tiêu và ưu tiên công việc một cách hiệu quả.
d Tích Hợp Chữ Ký Số - Tăng Cường Bảo Mật và Chính Xác
Với việc tích hợp chữ ký số, em nhắm đến mục tiêu tăng cường bảo mật và chính xáctrong quy trình ký tài liệu Em đảm bảo rằng mọi tải liệu được ký đều được bảo vệ chặt chẽ,
giảm rủi ro mat mát thông tin và dam bảo tính pháp lý của các giao dịch
e Giao Diện Thân Thiện và Dễ Sir Dụng
Em không chỉ hướng đến tính năng mà còn tập trung vào trải nghiệm người dùng
Mục tiêu là xây dựng một giao diện thân thiện, dé sử dụng và hiệu quả, giúp người dùng dé
dàng tiếp cận và tận dụng đầy đủ các tính năng của ứng dụng một cách tự nhiên
f Nâng Cao Trải Nghiệm Làm Việc
Cuối cùng, em đặt mục tiêu là nâng cao trải nghiệm làm việc cho mọi người dùng Từ việc quản lý công việc đến việc gửi yêu cầu nghỉ phép, em mong muốn ứng dụng sẽ làm tăng
sự thoải mái và hạnh phúc trong quá trình làm việc hàng ngày.
1.1.3 Xác định yêu cẩu bài toán
Ứng dụng quản lý luồng công việc cần đáp ứng các yêu cầu sau:
¢ Quản lý thông tin cá nhân của nhân viên: Ứng dụng cần lưu trữ và quản lý thông tin
cá nhân của nhân viên, bao gồm tên, tuổi, địa chỉ, sỐ điện thoại, email, chức danh, bộ
phận, v.v.
© Yéu cầu nghỉ phép: Ứng dụng cần giúp nhân viên gửi yêu cầu nghỉ phép một cách dễ
dàng và nhanh chóng Ứng dụng cũng cần tự động phê duyệt hoặc từ chối yêu cầunghỉ phép dựa trên các quy định của doanh nghiệp.
©_ Quản lý công việc: Ung dụng cần giúp doanh nghiệp tạo ra các quy trình làm việc
hiệu quả Ứng dụng cũng cần giúp theo dõi tiến độ của các công việc, phân công
công việc và theo dõi các nhiệm vụ.
®_ Ứng dụng chữ ký số: Ứng dụng cần ứng dung chữ ký số dé thực hiện ký tài liệu (tạo
chữ ký, quản lý tải liệu, quản lý thư mục).
PHAM ANH TUẦN - B19DCCN617 3
Trang 18ĐỎ ÁN TÓT NGHIỆP CHƯƠNG I
1.1.4 Đối tượng và phạm vi
Ứng dụng quản lý luồng công việc được thiết kế cho các doanh nghiệp thuộc mọi quy
mô và ngành nghề Ứng dụng có thể được sử dụng bởi các nhân viên, quản lý và lãnh đạo
doanh nghiệp.
1.1.5 Khảo sát các các website tưong tu
a Tong hợp thông tin
“ Trang web Asana
Asana là một trong những phần mềm quan lý công việc phô biến nhất hiện nay Nócung cấp nhiều tính năng quan lý dự án, quản lý thời gian, quản ly tai liệu, quản lý nhân sự và
quản lý tiến độ Asana cho phép người dùng tạo các danh sách công việc, lên kế hoạch và
giao việc cho các thành viên trong nhóm Asana cũng tích hợp với các ứng dụng khác như
Slack, Dropbox và Google Drive.
53 Marketing Campaign = :
Y Planning CB -———
Campaign brief and launch timeline 9 en
Campaign creative concepts 8 GTWI
Campaign messaging ® Camosion creative °
Select agency and secure SOW ^ ¢ ©
Medis pian ® c= z hư
Landing pages live on website >) U Not start
Hinh 1.1: Trang web Asana
Asana có giá cả phù hợp với các doanh nghiệp và tổ chức khác nhau, với các gói giákhác nhau tùy theo nhu cầu sử dụng Asana cũng cung cấp gói miễn phí với các tính năng cơ
bản cho các cá nhân hoặc nhóm nhỏ.
Ưu điểm của Asana bao gồm:
® Có nhiều tính năng quản lý công việc, dự án, thời gian, tài liệu, nhân sự và tiến độ
¢ Giao diện trực quan và dé sử dụng
© Cho phép người dùng tạo các danh sách công việc và lên kế hoạch cho các công việc
* Có tính năng thông báo và nhắc nhở giúp người dùng không bỏ sót công việc
e Tích hợp được với các ứng dụng khác như Slack, Dropbox va Google Drive.
Nhược điểm:
PHAM ANH TUẦN - B19DCCN617 4
Trang 19DO ÁN TOT NGHIỆP CHƯƠNG I
©_ Các tính năng phức tạp có thê khiến người ding cảm thấy khó khăn khi sử dụng
©- Gói miễn phí có giới han tính năng và không hỗ trợ cho các dự án lớn
® Giá cả của các gói cao hơn so với một số phần mềm quan lý công việc khác trên thị
trường.
% Trang web Timesheet NCC
Timesheet NCC là một trang web quản lý thời gian làm việc trực tuyến được phát triển
bởi Công ty TNHH NCC Trang web cung cấp nhiều tính năng đa dạng, giúp người dùng dễ
dàng theo dõi và quản lý thời gian làm việc của mình.
Hinh 1.1: Tramg web NCC
Uu diém cua trang web Timesheet NCC
¢ Dễ dàng sử dung: Trang web Timesheet NCC được thiết kế với giao diện đơn giản,
dé nhìn, dé thao tác Người dùng có thé dé dàng tạo mới, chỉnh sửa, xóa bỏ hoặc xem
lịch sử các bản ghi thời gian.
© Tinh năng đa dạng: Trang web Timesheet NCC cung cấp nhiều tính năng đa dang,
đáp ứng nhu cầu của các doanh nghiệp, tổ chức Bao gồm:
® Quản lý thời gian làm việc: Người dùng có thé sử dụng trang web dé ghi chép thời
gian làm việc của mình, bao gồm thời gian bắt đầu, kết thúc, thời gian nghỉ giải
lao,
® Báo cáo thời gian: Trang web cung cấp các báo cáo thời gian chi tiết, giúp người
dùng dé dang theo dõi và quản lý thời gian làm việc của minh
Nhược điểm của trang web Timesheet NCC
¢ Một số tính năng chưa được tối ưu: Một số tinh năng trên trang web Timesheet NCC
vẫn chưa được tối ưu, khiến người dùng gặp khó khăn khi sử dụng.
PHAM ANH TUAN - B19DCCN617 5
Trang 20ĐỎ ÁN TÓT NGHIỆP CHƯƠNG I
¢ Không có phiên bản dành cho thiết bị di động: Hiện tại, trang web Timesheet NCC
chỉ có phiên bản dành cho máy tính, chưa có phiên bản dành cho thiết bị di động
TT Tênthiiệu HĐ chứng thực TTchứng thực Trạng thái Thời gian cập nhật Thể Chức năng
Hình 1.1: Trang web Misa Esign
Ưu điểm của ky số từ xa MISA eSign
© Tiện lợi, dé sử dung: Ký số từ xa MISA eSign có giao diện đơn giản, dé sử dụng, phù
hợp với mọi đối tượng người dùng Người dùng có thé ký số tài liệu mọi lúc, mọi nơitrên thiết bị đi động hoặc máy tính có kết nối internet
¢ An toàn, bảo mật: Ký số từ xa MISA eSign được bảo mật bằng công nghệ mã hóa
tiên tiến, giúp bảo vệ thông tin của người dùng an toàn.
¢ Giá thành hợp lý: Ký số từ xa MISA eSign có giá thành hợp lý, phù hợp với nhu cầu
của nhiều doanh nghiệp, t6 chức
Nhược điểm của ký số từ xa MISA eSign
* Cần có kết nối internet: Dé ký số từ xa MISA eSign, người dùng cần có kết nối
internet 6n định
¢ Không có sẵn USB Token: Người dùng cần đăng ký dich vu ký số từ xa MISA eSign
dé có được chứng thư số và khóa bí mật
PHAM ANH TUẦN - B19DCCN617 6
Trang 21ĐỎ ÁN TÓT NGHIỆP CHƯƠNG I
¢ Ký số từ xa Mysign của Viettel
Viettel là một trong những nhà cung cấp dịch vụ chữ ký số hàng đầu tại Việt Nam Dịch
vụ ký số từ xa MySign của Viettel được nhiều người dùng đánh giá cao về tính tiện lợi, bảo
® Bao mật: Dữ liệu được mã hóa va bảo vệ băng các công nghệ tiên tiễn
© Chính xác: Hỗ trợ ký số nhiều loại file khác nhau, với độ chính xác cao
Nhược điểm:
© Chỉ phí: Phí sử dung dịch vụ còn cao so với một số dịch vụ ký số khác
© Chat lượng dịch vụ: Đôi khi còn gặp một số lỗi kỹ thuật, gây ảnh hưởng đến trải
nghiệm của người dùng.
PHAM ANH TUẦN - B19DCCN617 7
Trang 22ĐỎ ÁN TÓT NGHIỆP CHƯƠNG I
b Đánh giá
Trong thời đại công nghệ phát triển mạnh mẽ, các phần mềm và dịch vụ trực tuyến
đang ngày càng trở nên phô biến, đáp ứng nhu cầu của người dùng trong nhiều lĩnh vực khác
nhau Trong đó, các phần mềm và dịch vụ quản lý công việc, quản lý thời gian và chữ ký số là
những lĩnh vực phát triển mạnh mẽ nhất
Dưới đây là đánh giá chung của chúng tôi về 5 website Asana, Trello, Timesheet
NCC, Ký số từ xa MISA ESIGN và Ký số từ xa Mysign:
¢ Về phần mềm quản lý công việc
Asana là một phần mềm quản lý công việc mạnh mẽ và đầy đủ tính năng Nó phù hợpvới các doanh nghiệp và tổ chức có quy mô lớn, cần quản lý nhiều dự án và công việc phức
tạp Tuy nhiên, Asana cũng có một số nhược điểm như giá cả cao và các tính năng phức tạp
có thể khiến người dùng cảm thấy khó khăn khi sử dụng.
Về dịch vụ quan lý thời gian
Timesheet NCC là một trang web quản lý thời gian làm việc trực tuyến được phát triểnbởi Công ty TNHH NCC Trang web cung cấp nhiều tính năng đa dạng, giúp người dùng dễ
dàng theo dõi và quản lý thời gian làm việc của mình Tuy nhiên, Timesheet NCC chỉ có
phiên bản dành cho máy tính, chưa có phiên bản dành cho thiết bị di động
Về dịch vụ ký số tir xa
Ký số từ xa MISA ESIGN là một giải pháp ký số điện tử trên nền tảng đám mây,
không yêu cầu sử dung USB Token Người dùng có thé ký số mọi lúc, mọi nơi trên thiết bị di
động hoặc máy tính có kết nối internet MISA ESIGN có giao diện đơn giản, dé sử dụng, phù
hợp với mọi đối tượng người dùng Tuy nhiên, MISA ESIGN cần có kết nối internet và người
dùng cần đăng ký dich vụ dé có được chứng thư số và khóa bí mật
Ký số từ xa Mysign của Viettel là một dịch vụ ký số điện tử được cung cấp bởi Tập
đoàn Viettel Mysign có tính tiện lợi, bảo mật và chính xác cao Tuy nhiên, Mysign có chi phi
cao hơn so với một số dịch vụ ký số khác trên thị trường
1.2 Một số công nghệ sử dụng
1.2.1 Giới thiệu về API
a Khái niệm
API là viết tắt của Application Programming Interface, là một tập hợp các thủ tục, lớp
và giao điện cho phép các ứng dụng giao tiếp với nhau API thường được sử dung dé cung
cap các dịch vụ hoặc truy cập vào đữ liệu.
PHAM ANH TUẦN - B19DCCN617 8
Trang 23Hình 1.1: API /à một tập hop các thủ tục, lớp và giao diện cho phép các ứng dung giao tiếp
với nhau.
b Các loại API
Có nhiều loại API khác nhau, bao gồm:
¢ API công khai: Đây là các API có thé truy cập bởi bất kỳ ai Các API công khai
thường được sử dụng dé cung cấp các dịch vụ hoặc truy cập vào dit liệu miễn phi
¢ API riêng tư: Đây là các API chỉ có thé truy cập bởi các ứng dụng được cấp phép
Các API riêng tư thường được sử dụng để bảo vệ dữ liệu nhạy cảm.
¢ API giao điện: Đây là các API cung cấp một giao diện chung cho các ứng dụng khác
nhau Cac API giao diện thường được sử dụng dé tạo các ứng dụng có thé tương tácvới nhau.
c Ưu điểm của API
API có nhiều ưu điểm, bao gồm:
® Tăng khả năng tái sử dụng mã: API cho phép các nhà phát triển tái sử dụng mã đã
được viết bởi người khác Điều này giúp tiết kiệm thời gian và công sức cho các nhà
phát triển
¢ Tăng khả năng mở rộng: API cho phép các nhà phát triển mở rộng các ứng dụng của
họ một cách dé dàng Điều này giúp các ứng dụng có thé đáp ứng nhu cầu thay đổi
của người dùng.
s® Tăng khả năng bảo mat: API có thể được sử dụng dé bảo vệ dữ liệu nhạy cảm Điều
này giúp ngăn chặn các ứng dụng truy cập trái phép vao dữ liệu.
d Ứng dụng của API
API được ứng dụng trong nhiều lĩnh vực khác nhau, bao gồm:
® Web: API được sử dụng dé cung cap cac dich vu web, chang han nhu truy cap vao
dir liệu, xử ly thanh toán, va gui email.
® Mang xã hội: API được sử dụng để tích hợp các ứng dụng với mạng xã hội, chăng
hạn như Facebook, Twitter, và Instagram.
PHAM ANH TUẦN - B19DCCN617 9
Trang 24ĐỎ ÁN TÓT NGHIỆP CHƯƠNG I
¢ Thương mại điện tử: API được sử dung dé tích hợp các ứng dụng với các nền tảng
thương mại điện tử, chăng hạn như Amazon, eBay, và Shopify
® ToT: API được sử dụng dé kết nối các thiết bị loT với nhau và với các ứng dụng
1.2.2 Ngôn ngữ lập trình sử dụng
a Ngôn ngữ lập trình Java
s%% Khái niệm
Java là một ngôn ngữ lập trình hướng đối tượng, được phát triển bởi Sun
Microsystems Java được sử dụng dé phát triển các ứng dụng trên nhiều nền tảng khác nhau,
bao gồm máy tính dé bàn, máy tính xách tay, điện thoại thông minh, và máy tính bảng.
Java
Hình 1.1: Ngôn ngữ lập trình Java
$% Các đặc điểm của Java
Java có một số đặc điểm nổi bật, bao gồm:
® Da nền tang: Java được thiết kế để chạy trên nhiều nền tảng khác nhau, bao gồm
Windows, macOS, Linux, và Android.
e An toàn: Java được thiết kế dé an toàn, với các tính năng bảo mật tích hợp sẵn
® Tinh di động: Java bytecode có thé được di chuyển từ máy tinh này sang máy tinh
khác mà không cần thay đồi
¢ Tính hiệu quả: Java được thiết kế dé hiệu quả, với các tính năng tối ưu hóa tích hợp
săn.
¢ Ứng dụng của Java
Java được ứng dụng trong nhiều lĩnh vực khác nhau, bao gồm:
® Ung dụng web: Java được sử dung dé phát triển các ứng dung web, chang hạn như
các trang web thương mại điện tử, các ứng dụng mạng xã hội, và các ứng dụng nội
bộ.
© Ứng dụng di động: Java được sử dụng dé phát triển các ứng dụng di động, chang hạn
như các ứng dụng Android và 1OS.
¢ Ứng dụng doanh nghiệp: Java được sử dụng dé phát triển các ứng dụng doanh
nghiệp, chăng hạn như các ứng dụng CRM, ERP, và BI
PHAM ANH TUẦN - B19DCCN617 10
Trang 25ĐỎ ÁN TÓT NGHIỆP CHƯƠNG I
© Ứng dụng trò chơi: Java được sử dung dé phát triển các ứng dụng trò choi, chăng hạn
như các trò chơi điện thoại thông minh và máy tính dé bàn
b Ngôn ngữ lập trình Typescript
Khái niệm
Typescript là một ngôn ngữ lập trình hướng đối tượng, được phát triển bởi Microsoft
Typescript là một phần mở rộng của ngôn ngữ lập trình JavaScript, với thêm các tính năng
mạnh mẽ hơn, chăng hạn như kiểu dữ liệu tĩnh
TypeScript
Hình 1.1: Ngôn ngữ lập trình TypeScript
$ Các đặc điểm của Typescript
Typescript có một số đặc điểm nổi bật, bao gồm:
® Kiểu dữ liệu tĩnh: Typescript sử dụng kiểu dữ liệu tĩnh, giúp tăng cường tinh an toàn
và hiệu quả của mã.
® H6 trợ các tính năng của ES6: Typescript hỗ trợ các tính năng của ES6, chăng hạn
như class, modules, và arrow functions.
¢ Tương thích với JavaScript: Code Typescript có thé được biên dịch thành JavaScript,
giúp cho Typescript có thể chạy trên bat kỳ trình duyệt web nào hỗ trợ JavaScript.
Ứng dụng của Typescript
Typescript được ứng dụng trong nhiều lĩnh vực khác nhau, bao gồm:
¢ Ứng dụng web: Typescript được sử dung dé phát triển các ứng dụng web, chăng han
như các trang web thương mại điện tử, các ứng dụng mạng xã hội, và các ứng dụng
nội bộ.
¢ Ung dụng di động: Typescript được sử dụng để phát triển các ứng dụng di động,
chang hạn như các ứng dụng Android và iOS
® Ung dụng doanh nghiệp: Typescript được sử dụng dé phát triển các ứng dụng doanh
nghiệp, chăng hạn như các ứng dụng CRM, ERP, và BI
® Ung dụng trò chơi: Typescript được sử dụng để phát triển các ứng dụng trò chơi,
chang hạn như các trò chơi điện thoại thông minh và máy tinh dé bàn
PHAM ANH TUẦN - B19DCCN617 II
Trang 26ĐỎ ÁN TÓT NGHIỆP CHƯƠNG I
1.2.3 Framework sử dụng
a Spring Framework
s% Khái niệm
Spring Framework là một framework Java mã nguồn mở, được phát triển bởi Pivotal
Software Spring Framework cung cấp một bộ các thư viện và công cụ giúp đơn giản hóa việc
phát triển các ứng dụng Java
spring
Framework
Hinh 1.1: Spring Framework
¢ Các đặc điểm của Spring Framework
Spring Framework có một số đặc điểm nồi bật, bao gồm:
© Dependency injection: Spring Framework sử dung dependency injection để giảm sự
phụ thuộc giữa các thành phan.
¢ IoC container: Spring Framework cung cấp một IoC container dé quản lý các thành
phần của ứng dụng
¢ AOP: Spring Framework cung cấp hỗ trợ cho AOP để triển khai các tính năng xuyên
suốt ứng dụng.
¢ MVC: Spring Framework cung cấp hỗ trợ cho MVC dé phát triển các ứng dụng web
¢ Ung dụng của Spring Framework
Spring Framework được ứng dụng trong nhiều lĩnh vực khác nhau, bao gồm:
® Ung dụng web: Spring Framework được sử dụng dé phát triển các ứng dụng web,
chang hạn như các trang web thương mại điện tử, các ứng dung mạng xã hội, và các
ứng dụng nội bộ.
® Ứng dụng di động: Spring Framework được sử dụng dé phát triển các ứng dụng di
động, chăng hạn như các ứng dụng Android và iOS
® Ứng dụng doanh nghiệp: Spring Framework được sử dụng dé phát triển các ứng
dụng doanh nghiệp, chang hạn như các ứng dụng CRM, ERP, và BI
® Ung dung trò choi: Spring Framework được sử dụng dé phát triển các ứng dung trò
chơi, chang hạn như các trò chơi điện thoại thông minh và máy tính dé bàn
PHAM ANH TUẦN - B19DCCN617 12
Trang 27ĐỎ ÁN TÓT NGHIỆP CHƯƠNG I
b Giới thiệu về Angular Framework
“ Khái niệm
Angular Framework là một framework web mã nguồn mở, được phát triển bởi
Google Angular Framework cung cấp một bộ các thư viện và công cụ giúp đơn giản hóa việc
phát triển các ứng dụng web
CINGULAR
Hinh 1.1: Angular Framework
¢ Các đặc điểm của Angular Framework
Angular Framework có một số đặc điểm nỗi bat, bao gồm:
® Component-based: Angular Framework sử dung component-based dé xây dựng các
ứng dụng web.
© Dependency injection: Angular Framework sử dung dependency injection dé giảm sự
phụ thuộc giữa các thành phan
¢ Data binding: Angular Framework sử dung data binding để kết nối dữ liệu và giao
điện người dùng.
¢ Routing: Angular Framework cung cấp hỗ trợ cho routing để điều hướng giữa các
trang web.
¢ Ung dụng của Angular Framework
Angular Framework được ứng dụng trong nhiều lĩnh vực khác nhau, bao gồm:
® Ung dụng web: Angular Framework được sử dung dé phát triển các ứng dung web,
chăng hạn như các trang web thương mại điện tử, các ứng dụng mạng xã hội, và cácứng dụng nội bộ.
® Ứng dụng di động: Angular Framework có thé được sử dụng dé phát triển các ứng
dụng di động, chang hạn như các ứng dụng Android và iOS
¢ Ung dụng doanh nghiệp: Angular Framework được sử dung dé phát triển các ứng
dụng doanh nghiệp, chăng hạn như các ứng dụng CRM, ERP, và BI
PHAM ANH TUẦN - B19DCCN617 13
Trang 28ĐỎ ÁN TÓT NGHIỆP CHƯƠNG I
1.2.4 Giới thiệu về Keycloak
a Khái niệm
Keycloak là một server xác thực mã nguồn mở, được phát triển bởi Red Hat Keycloak
cung cấp một bộ các tính năng xác thực và ủy quyền cho các ứng dụng web và di động.
Hinh 1.1: Keycloak
b Các đặc điểm của Keycloak
Keycloak có một số đặc điểm nổi bật, bao gồm:
¢ Hỗ trợ nhiều loại xác thực: Keycloak hỗ trợ nhiều loại xác thực, chăng hạn như xác
thực bằng username và password, xác thực bằng mã thông báo, và xác thực bằng
OAuth 2.0.
¢ Hỗ trợ nhiều loại ủy quyền: Keycloak hỗ trợ nhiều loại ủy quyền, chang hạn như ủy
quyền dựa trên vai trò, ủy quyền dựa trên tải nguyên, và ủy quyền dựa trên chínhsách.
¢ Tính mở rộng: Keycloak có thé được mở rộng bằng cách sử dụng các plugin
c Ứng dụng của Keycloak
Keycloak được ứng dụng trong nhiều lĩnh vực khác nhau, bao gồm:
® Ung dụng web: Keycloak được sử dụng dé xác thực và ủy quyền cho các ứng dụng
OpenKM là một hệ thống quản lý tài liệu mã nguồn mở, được phát triển bởi OpenKM.
OpenKM cung cấp một bộ các tính năng dé quản lý tài liệu, bao gồm lưu trữ, truy cập, chia
sẻ, và phân phôi tài liệu.
PHAM ANH TUẦN - B19DCCN617 14
Trang 29ĐỎ ÁN TÓT NGHIỆP CHƯƠNG I
Hinh 1.1: Openkm
b Các đặc điểm của OpenKM
OpenKM có một số đặc điểm nỗi bật, bao gồm:
© Hỗ trợ nhiều loại tài liệu: OpenKM hỗ trợ nhiều loại tài liệu, chăng hạn như tài liệu
văn bản, tài liệu hình ảnh, tài liệu âm thanh, và tài liệu video.
® Hỗ trợ nhiều loại truy cập: OpenKM hỗ trợ nhiều loại truy cập, chăng hạn như truy
cập web, truy cập API, và truy cập di động.
¢ Tính bảo mật: OpenKM cung cấp các tính năng bảo mật để bảo vệ tải liệu, chang han
như mã hóa, kiểm soát truy cập, và chữ ký số
c Ứng dụng của OpenKM
OpenKM được ứng dụng trong nhiều lĩnh vực khác nhau, bao gồm:
©_ Chính phủ: OpenKM được sử dụng dé quản lý tài liệu trong các cơ quan chính phủ
® Doanh nghiệp: OpenKM được sử dụng dé quản lý tài liệu trong các doanh nghiệp.
* Giáo dục: OpenKM được sử dụng dé quản lý tài liệu trong các trường học và đại học.
1.2.6 Cơ sở dữ liệu PosteeSQL
a Khái niệm
PostgreSQL là một hệ thống quản trị cơ sở dữ liệu quan hệ và đối tượng mã nguồn mở,
được phát triển bởi PostgreSQL Global Development Group PostgreSQL là một trong những
hệ thống quản trị cơ sở dữ liệu phô biến nhất, được sử dụng bởi các doanh nghiệp, tổ chức và
cá nhân trên toàn thé giới
PostgreSQL
Hình 1.1: Co sở dit liệu PostgreSQL
PHAM ANH TUẦN - B19DCCN617 15
Trang 30ĐỎ ÁN TÓT NGHIỆP CHƯƠNG I
b Các đặc điểm của PostgreSQL
PostgreSQL có một số đặc điểm nồi bật, bao gồm:
®- Đa nền tảng: PostgreSQL có thê chạy trên nhiều nền tảng khác nhau, bao gồm Linux,
macOS, Windows, và Solaris.
¢ Mã nguồn mở: PostgreSQL là mã nguồn mở, cho phép người dùng tự do sử dụng,
sửa đổi, và phân phối
© Cộng đồng lớn: PostgreSQL có một cộng đồng người dùng và nhà phát triển lớn,
cung cấp hỗ trợ và tài nguyên phong phú.
¢ Tính năng phong phú: PostgreSQL cung cấp một bộ các tính năng phong phú, bao
o Hỗ trợ cho nhiều ràng buộc, bao gồm ràng buộc toản vẹn, ràng buộc khóa, va
ràng buộc tham chiếu
o Hỗ trợ cho nhiều truy van nâng cao, bao gồm truy vấn phức hợp, truy vấn tích
hợp, và truy vấn phân tán.
o Hỗ trợ cho nhiều tính năng bảo mật, bao gồm mã hóa, kiểm soát truy cập, và
chữ ký sé
c Ứng dụng của PostgreSQL
PostgreSQL được ứng dụng trong nhiều lĩnh vực khác nhau, bao gồm:
© Ứng dụng web: PostgreSQL được sử dụng dé lưu trữ dit liệu cho các ứng dụng web,
chang han như các trang web thương mại điện tử, các ứng dụng mang xã hội, va cácứng dụng nội bộ.
® Ung dụng di động: PostgreSQL có thé được sử dụng dé lưu trữ dit liệu cho các ứng
dụng di động, chang hạn như các ứng dụng Android và iOS
® Ung dụng doanh nghiệp: PostgreSQL được sử dung dé lưu trữ dữ liệu cho các ứng
dụng doanh nghiệp, chang hạn như các ứng dụng CRM, ERP, và BI
® Ung dụng khoa hoc: PostgreSQL được sử dung dé lưu trữ dữ liệu cho các ứng dung
khoa học, chang hạn như các ứng dụng phân tích dữ liệu và các ứng dụng mô hìnhhóa.
PHAM ANH TUẦN - B19DCCN617 16
Trang 31ĐỎ ÁN TÓT NGHIỆP CHƯƠNG I
1.3 Kết luận chương
Nội dung chương | đã cho chúng ta cái nhìn tong quan về hệ thống và cách thức vậnhành Các hệ thống hiện tại mặc dù đã đi vào hoạt động nhưng vẫn còn một số ton tại trong
trải nghiệm người dùng và cách thức thu hút người dùng Qua đó, em đã đưa ra những mục
tiêu và những yêu cầu từ cá nhân dé khắc phục những van dé cơ ban cũng như bổ sung những
hạn chế của những ứng dụng khác Ngoài ra, chương 1 cũng đã xác định được kiến trúc,
phương pháp xây dựng phần mềm cũng như công nghệ sử dụng đề tiếp cận và giải quyết vấn
đề cho hệ thống dự kiến Trong chương tiếp theo, chúng ta sẽ tìm hiểu về phân tích thiết kế hệ
thống
PHAM ANH TUẦN - B19DCCN617 17
Trang 32ĐỎ ÁN TÓT NGHIỆP CHƯƠNG II
CHƯƠNG 2: PHÂN TÍCH THIẾT KÉ HỆ THÓNG QUÁN LÝ LUÒNG
CÔNG VIỆC
2.1 Biêu đô usecase
2.1.1 Bảng mô tả các usecase của hệ thong
a Tác nhân
Bang 2.1: Bang mô tả các tác nhân
STT Tác nhân Mô tả
1 Nguoi dung Người dùng sử dung hệ thông
2 Nhân viên Người sử dụng hệ thông với các chức năng của nhân viên
3 Quản lý Người dùng hệ thống có thé sử dụng chức năng thêm
nhân viên
4 Quản lý cấp cao Người dùng hệ thông có thé sử dụng toàn bộ chức năng
b Usecase
Bảng 2.1: Bảng mô tả usecase
STT Tên usecase Mô tả
Đăng nhập Người dùng hệ thong thực hiện chức năng đăng nhập vào
Ị hệ thống để quản lý luồng công việc
Nhân viên cập nhật | Cho phép nhân viên sử dụng hệ thong có thé thay đối
; thông tin thông tin cá nhân sau khi đã được quản lý tao tai khoản
Quản lý nhân viên Cho phép quản lý thực hiện các chức năng liên quan đến
3 nhân viên bao gồm: thêm nhân viên, cập nhật thông tin cá
nhân của nhân viên, xoá nhân viên khỏi tổ chức
Quản lý tô chức Cho phép quản lý thực hiện các chức năng liên quan đến
4 tô chức bao gồm: tạo tổ chức, cập nhật thông tin của tô
chức, xoá tổ chức
Quản lý chứng thư Cho phép quản lý cấp cao thực hiện các chức năng liên
5 số quan đến chứng thư số: bao gồm tạo chứng thư số cho
nhân viên, xoá chứng thư số của nhân viênQuản lý lịch nghỉ Cho phép nhân viên thực hiện các chức năng của lịch
6 phép nghỉ phép: tạo lịch nghỉ phép, xoá lịch nghỉ phép, xem
trạng thái phê duyệt
7 Quản lý công việc Cho phép nhân viên thực hiện các chức năng cau quản lyPHAM ANH TUẦN - B19DCCN617 18
Trang 33ĐỎ ÁN TÓT NGHIỆP CHƯƠNG II
công việc bao gôm: thêm công việc, xoá công việc, thay đôi trạng thái của công việc
Quản lý phê duyệt Cho phép nhân viên thực hiện các chức năng của phê
8 duyệt bao gồm: xem chỉ tiết yêu cầu, chấp nhận hoặc từ
chôi yêu câu
Quan lý tai liệu Cho phép người dùng thực hiện các chức năng liên quan
đến quản lý tai liệu bao gồm: tạo tài liệu, xoá tải liệu,
xem chỉ tiết thông tin của tài liệu, di chuyên tài liệu đếnthư mục
Quản lý thư mục Cho phép người dùng thực hiện các chức năng liên quan
10 đến quản lý thư mục bao gồm: xem chỉ tiết thông tin tài
liệu, xoá tài liệu khỏi thư mụcCấu hình hệ thống Cho phép người dùng thực hiện các chức năng liên quan
11 đến cau hình hệ thống bao gồm: Tạo chữ ky, cài đặt thông
Trang 34Quản lý công việc
Quản lý phê duyệt
Trang 35ĐỎ ÁN TÓT NGHIỆP CHƯƠNG II
2.1.3 Biểu đô usecase chỉ tiết cho từng chức năng
a Usecase quản lý thêm người dùng vào hệ thống
Hình 2.1: Biểu đồ usecase quản lý nhân viên
b Usecase người dùng cập nhật thông tin khi lần đầu đăng nhập hệ thống
Người dùng
Hình 2.1: Biéu đồ usecase người dùng cập nhật thông tin khi lan dau đăng nhập vào hệ
thống
c Usecase quan lý tao chứng thư số cho người dùng
ð 4 \- <<Includess Chọn nhân vién \_ _ ăndudgss ¬
Tao chứng thư số nclude: cản tạo
Trang 36ĐỎ ÁN TÓT NGHIỆP CHƯƠNG II
Chọn loại chữ ký
d Usecase tạo mẫu chữ ký
hay đổi mật khẩu chứng
Hình 2.1: Usecase tao mẫu chữ ký
e Usecase nhân viên đăng ký công việc tháng
<<Include>>
` mô tả công việc tháng công việc
Trang 37ĐỎ ÁN TÓT NGHIỆP CHƯƠNG II
f Usecase quản lý phê duyệt công việc thang
Tìm kiếm theo email
Hình 2.1: Usecase quan lý phê duyệt công việc thang
g Usecase xem danh sách công việc tháng
Tìm kiếm theo tên
công việc
Tìm kiếm công việc
Xem danh sách công việc tháng
Trang 38Tạo yêu cầu nghỉ n1
Pi Tao quy trinh ky don
hey <<Include>> i my xin nghỉ phép - <<include>> > Tải lên tài liệu mô tảam
h công việc
Nhân viên và _
Mi, <<Include>>
Ẫ
hon thông tin quan ly Tim kiém
Nhân viên dan, à chánh văn phò TC “Eee di di
Hình 2.1: Usecase nhân viên tạo yêu cầu nghỉ phép
i Usecase quan lý phê duyệt yêu cầu nghỉ phép
Tìm kiếm theo email
Quản lý ` “Fe TU7 <<Include>> <<Extend>> <<Extend>>
Dang nhập k<{ Quản lý đăng nhập Xem lịch sử phê duyệt Từ chối phê duyệt
Hình 2.1: Usecase quản lý phê duyệt yêu cầu nghỉ phép
PHAM ANH TUẦN - B19DCCN617 24
Trang 39ĐỎ ÁN TÓT NGHIỆP CHƯƠNG II
j Usecase xem danh sách yêu cầu nghỉ phép
Xem trạng thái phê ^<~ - - <<Extend>> Huỷ bỏ yêu
a Kịch bản quản lý thêm người dùng vào hệ thống
Bảng 2.1: Kịch bản quản lý thêm người dùng vào hệ thống
Tên usecase Quản lý thêm người dùng vào hệ thong
Tác nhân Quản lý, Quản lý cấp cao
Tiên điêu kiện Quản lý hoặc quản lý cap cao đăng nhập vào hệ thông
Điều kiện thành công Quản lý hoặc quản lý cấp cao thực hiện được chức năng
thêm người dùng vào hệ thống
Chuỗi sự kiện chính
1 Tại giao diện chính của quản lý, quản lý chọn chức năng “Quản ly nhân viên”
2 Giao diện quản lý nhân viên hiện ra, hệ thống trả về danh sách các nhân viên thuộc tô
chức dưới dạng bảng.
3 Quản lý nhắn vào nút tạo mới (+) dé thêm nhân viên
4 Giao điện hiện lên một popup hiền thị các trường nhập thông tin bao gồm:
- Tên tài khoản
Trang 40ĐỎ ÁN TÓT NGHIỆP CHƯƠNG II
- Căn cước công dân
- Dia chi Nut “Lưu” và nút “Quay lai”
5 Quan lý nhập thông tin nhân viên và bam nút “Lưu”
6 Hệ thống lưu thông tin của nhân viên và thông báo thành công
Ngoại lệ
2 Hệ thống không trả về danh sách nhân viên thuộc tô chức
6 Hệ thống lưu thông tin nhân viên không thành công
b Kịch bản người dùng cập nhật thông tin khi lần đầu đăng nhập hệ thống
Bảng 2.1: Kịch bản người dùng cập nhật thông tin khi lan dau đăng nhập hệ thong
Tên usecase Người dùng cập nhật thông tin khi lần đầu đăng nhập hệ
thốngTác nhân Người dùng
Tiền điều kiện Người dùng đăng nhập thành công
Điều kiện thành công Người dùng cập nhật thông tin thành công
Chuỗi sự kiện chính
1 Tại giao diện chính, người dùng nhắn vào avatar
2 Giao diện hiển thị một droplist bao gồm
- Thông tin
- Đăng xuất
3 Người dùng chọn Thông tin
4 Giao diện hiển thị thông tin người dùng bao gồm:
- Tên tài khoản (disable)
- Thư điện tử (disable)
PHAM ANH TUẦN - BI9DCCN617 26