Cùng với sự phát triển không ngừng về kỹ thuật máy tính và mạng điện tử, công nghệ thông tin cũng được những công nghệ có đẳng cấp cao và lần lượt chinh phục hết đỉnh cao này đến đỉnh cao khác. Mạng Internet là một trong những sản phẩm có giá trị hết sức lớn lao và ngày càng trở nên một công cụ không thể thiếu, là nền tảng chính cho sự truyền tải, trao đổi thông tin trên toàn cầu. Giờ đây, chúng ta đang sống trong thời đại mà cuộc cách mạng thông tin đang diễn ra mạnh mẽ trên thế giới và tác động hầu hết mọi hoạt động kinh tế xã hội, làm thay đổi không chỉ lối sống, phong cách làm việc cũng như tư duy của con người mà còn tạo ra sự thay đổi lớn trong phương thức điều hành, quản lý của các tổ chức cũng như việc sản suất kinh doanh của các doanh nghiệp. Nhờ ứng dụng công nghệ thông tin mà việc quản lý các tổ chức, cơ quan trở nên đơn giản gọn nhẹ và hiệu quả hơn. Hiện nay theo su thế phát triển của ngành công nghệ thông tin các doanh nghiệp lớn nhỏ của Việt Nam cũng đang đưa vào sử dụng các phần mềm quản lý phù hợp với doanh nghiệp của mình ví dụ như một sự chuyeng trình quản lý hoạt động kinh doanh, quản lý kho bãi, quản lý khách hàng…… hay nhưng chương trình quản lý nhân sự, quản lý hóa đơn, quản lý hồ sơ,……. Việc sử dụng những chương trình quản lý này không nhưng đem lại những lợi ích về mặt kết quả công việc mà còn làm giảm tối đa các chi phí phát sinh
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ GTVT
KHOA CÔNG NGHỆ THÔNG TIN
Giảng viên hướng dẫn:
Sinh viên thực hiện:
Lớp:
Mã sinh viên:
Chuyên ngành:
xxx Nguyễn Hiếu xxx
xxx Công nghệ thông tin
HÀ NỘI – 2022
Trang 2MỤC LỤC
Chương 1: Tổng quan 1
1.1 Lý do chọn đề tài: 2
1.2 Mục tiêu của đề tài: 2
1.3 Giới hạn và phạm vi của đề tài: 3
1.4 Kết quả dự kiến đạt được: 3
Chương 2: Cơ sở lý thuyết 4
2.1 Cơ sở lý thuyết: 4
2.1.1 Phân tích và thiết kế hướng đối tượng: 4
2.1.2 Ngôn ngữ thiết kế website HTML và CSS: 6
2.1.3 Ngôn ngữ lập trình JAVASCRIPT: 7
2.1.4 Ngôn ngữ lập trình PHP: 8
2.1.5 Hệ quản trị cơ sở dữ liệu: 9
2.2 Công cụ sử dụng: 10
2.2.1 Thư viện JQUERY: 10
2.2.2 Mô hình MVC: 10
2.2.3 Framework Laravel: 11
2.2.4 MySQL: 12
Chương 3: Hệ thống tổ chức và đặc tả yêu cầu 13
3.1 Khảo sát hoạt động nghiệp vụ: 13
3.1.1 Sơ đồ tổng quát: 13
3.1.2 Mô tả nghiệp vụ: 14
3.2.3 Yêu cầu đối với hệ thống: 15
3.2 Use Case của hệ thống: 16
3.2.1 Các tác nhân của hệ thống: 16
Trang 33.2.2 Use Case tổng quát: 17
3.2.3 Use Case hệ thống: 18
3.2.4 Use Case của tác nhân NHANVIEN: 20
3.2.5 Use Case quản lý phòng ban: 21
3.2.6 Use Case quản lý tài khoản: 23
3.2.7 Use Case quản lý nhân sự: 25
3.2.8 Use Case quản lý khen thưởng: 27
3.2.9 Use Case quản lý kỉ luật: 28
3.2.10 Use Case quản lý ngày nghỉ: 30
3.2.11 Use Case quản lý phụ cấp: 31
3.2.12 Use Case quản lý thai sản: 33
3.3 Biểu đồ hoạt động hệ thống: 34
3.4 Biểu đồ tuần tự hệ thống: 39
3.5 Biểu đồ trạng thái: 44
3.6 Biểu đồ lớp: 47
3.7 Thiết kế cơ sở dữ liệu: 48
3.7.1 Bảng admins(quản trị): 48
3.7.2 Bảng staffs(nhân viên): 48
3.7.3 Bảng allowances(phụ cấp): 49
3.7.4 Bảng dayoffs(ngày nghỉ): 49
3.7.5 Bảng disciplines(kỷ luật): 50
3.7.6 Bảng departments(phòng ban): 50
3.7.7 Bảng maternity(thai sản): 51
3.7.8 Bảng paychecks(lương): 51
Trang 4Chương 4: Cài đặt và thử nghiệm 52
4.1 Giao diện trang danh sách phòng ban: 52
4.2 Giao diện trang thêm phòng ban: 52
4.3 Giao diện trang danh sách nhân sự: 53
4.4 Giao diện trang thêm nhân sự: 53
4.5 Giao diện trang danh sách khen thưởng: 54
4.6 Giao diện trang thêm khen thưởng: 54
4.7 Giao diện trang danh sách kỉ luật: 54
4.8 Giao diện trang thêm kỉ luật: 55
4.9 Giao diện trang danh sách ngày nghỉ: 55
4.10 Giao diện trang thêm ngày nghỉ: 55
4.11 Giao diện trang danh sách phụ cấp: 56
4.12 Giao diện trang thêm phụ cấp: 56
4.13 Giao diện trang danh sách thai sản: 56
4.14 Giao diện trang thêm thai sản: 56
Chương 5: Đánh giá và kết luận 57
Kết luận 57
Hướng phát triển: 57
Tài liệu tham khảo 58
Trang 5DANH MỤC HÌNH
Trang 6DANH MỤC BẢNG
Trang 7Chương 1: Tổng quan1.1 Lý do chọn đề tài:
Cùng với sự phát triển không ngừng về kỹ thuật máy tính và mạng điện tử, côngnghệ thông tin cũng được những công nghệ có đẳng cấp cao và lần lượt chinh phục hếtđỉnh cao này đến đỉnh cao khác Mạng Internet là một trong những sản phẩm có giá trị hếtsức lớn lao và ngày càng trở nên một công cụ không thể thiếu, là nền tảng chính cho sựtruyền tải, trao đổi thông tin trên toàn cầu
Giờ đây, chúng ta đang sống trong thời đại mà cuộc cách mạng thông tin đang diễn
ra mạnh mẽ trên thế giới và tác động hầu hết mọi hoạt động kinh tế - xã hội, làm thay đổikhông chỉ lối sống, phong cách làm việc cũng như tư duy của con người mà còn tạo ra sựthay đổi lớn trong phương thức điều hành, quản lý của các tổ chức cũng như việc sản suấtkinh doanh của các doanh nghiệp Nhờ ứng dụng công nghệ thông tin mà việc quản lý các
tổ chức, cơ quan trở nên đơn giản gọn nhẹ và hiệu quả hơn Hiện nay theo su thế pháttriển của ngành công nghệ thông tin các doanh nghiệp lớn nhỏ của Việt Nam cũng đangđưa vào sử dụng các phần mềm quản lý phù hợp với doanh nghiệp của mình ví dụ nhưmột sự chuyeng trình quản lý hoạt động kinh doanh, quản lý kho bãi, quản lý kháchhàng…… hay nhưng chương trình quản lý nhân sự, quản lý hóa đơn, quản lý hồ sơ,…….Việc sử dụng những chương trình quản lý này không nhưng đem lại những lợi ích về mặtkết quả công việc mà còn làm giảm tối đa các chi phí phát sinh
Nhận thức được tầm quan trọng đó, em đã chọn đề tài “PHÂN TÍCH THIẾT KẾ
VÀ XÂY DỰNG PHẦN MỀM QUẢN LÝ NHÂN SỰ CHO CÔNG TY BẢO HIỂMNHÂN THỌ DAIICHI” là đề tài cho khóa luận của mình
1.2 Mục tiêu của đề tài:
- Trình bày được các vấn đề liên quan đến ngôn ngữ PHP, cơ sở dữ liệu Mysql, mô
hình MVC
- Khảo sát thực trạng và nhu cầu cũng như nhân sự của công ty.
- Phân tích hệ thống chương trình bao gồm các giao diện, các activity nhằm đáp ứng
nhu cầu người dùng
Trang 8- Triển khai và cài đặt chương trình.
1.3 Giới hạn và phạm vi của đề tài:
- Xây dựng chương trình dựa vào ngôn ngữ lập trình PHP với Framework Laravel và
cơ sở dữ liệu Mysql
- Chương trình tập chung chức năng nghiệp vụ từ khảo sát thực trạng
1.4 Kết quả dự kiến đạt được:
- Hiểu về ngôn ngữ lập trình PHP và áp dụng cho xây dựng website
- Hoàn thành phần mềm quản lý nhân sự cho công ty bảo hiểm Daiichi với các tínhnăng như:
o Admin: thực hiện các chức năng như quản trị hệ thống,quản lý nhân sự công
ty, xem thống kê
o Người dùng: có thể thực hiện các chức năng như cập nhật thông tin cá nhân,đăng nhập tài khoản trên hệ thống
Trang 9Chương 2: Cơ sở lý thuyết2.1 Cơ sở lý thuyết:
2.1.1 Phân tích và thiết kế hướng đối tượng:
Phân tích thiết kế hướng đối tượng(OOAD) là giai đoạn phát triển một mô
hình chính xác và súc tính của vấn đề, có thành phần là các đối tượng và khái niệmđời thực, dễ hiểu đối với người sử dụng
Năm nguyên tắc trong thiết kế hướng đối tượng:
Một lớp chỉ nên có một lý do để thay đổi, tức là một lớp chỉ nên xử lý mộtchức năng đơn lẻ duy nhất Nếu đặt nhiều chức năng vào một lớp sẽ dẫn đến sựphụ thuộc giữa các chức năng với nhau và mặc dù sau đó thay đổi một chứcnăng cũng phá vỡ các chức năng còn lại
Các lớp, module, chức năng nên dễ dàng Mở cho việc thêm chức năng mới vàĐóng cho việc thay đổi
Lớp dẫn xuất phải có khả năng thay thế được lớp cha
Chương trình không nên buộc phải cài đặt một Interface mà nó không sử dụngđến
Các module cấp cao không nên phụ thuộc vào các module cấp thấp Cả hai nênphụ thuộc thông qua lớp trừu tượng Lớp trừa tượng không nên phụ thuộc vàochi tiết Chi tiết nên phụ thuộc vào trừu tượng
UML là ngôn ngữ mô hình hóa hợp nhất dùng để đặc tả, trực quan hóa và tư
liệu hóa phần mềm hướng đối tượng, có phần chính bao gồm những ký hiệu hìnhhọc, được các phương pháp hướng đối tượng sử dụng để thể hiện và miêu tả cácthiết kế của một hệ thống
Phân tích và thiết kế hướng đối tượng cần các bản vẽ, sơ đồ để mô tả hệ thốngđược thiết kế, còn UML là ngôn ngữ mô tả các bản vẽ, sơ đồ nên cần nội dung thểhiện OOAD sử dụng UML trong ngành phần mềm bao gồm:
View (góc nhìn):
Mỗi góc nhìn thể hiện một khía cạn Trong phần mềm OOAD sử dụngUML có các góc nhìn: Về ca sử dụng, về cấu trúc, về triển khai hệ thống, về
Trang 10Hình 2.1 Các view trong OOAD sử dụng UML
Diagram (sơ đồ):
Các sơ đồ dùng để thể hiện các view của hệ thống Sơ đồ mô tả về các ca
sử dụng, mô tả cấu trúc hệ thống, mô tả sự tương tác của các đối tượng trong
Trang 112.1.2 Ngôn ngữ thiết kế website HTML và CSS:
HTML(Hypertext Markup Language) là mã được dùng để xây dựng nên cấu
trúc và nội dung của trang web Ví dụ, nội dung có thể được cấu thành bởi một loạtcác đoạn văn, một danh sách liệt kê, hoặc sử dụng những hình ảnh và bảng biểu HTML không phải là một ngôn ngữ lập trình, nó là một ngôn ngữ đánh dấuvăn bản (markup language) xác định cấu trúc nội dung trang web HTML bao gồmmột loạt các thuộc tính, dùng để đính kèm, hoặc gói các phần khác nhau của nộidung để làm chúng hoạt động theo một cách nhất định Các thẻ kèm theo có thể làmmột đoạn văn hay hình ảnh siêu liên kết từ nơi khác, có thể in đậm, thay đổi phôngchữ
Một số đặc điểm của HTML:
Là một ngôn ngữ rất đơn giản
Rất dễ dàng để trình bày hiệu quả với HTML vì nó có nhiều thẻ định dạng
Đây là một ngôn ngữ đánh dấu, vi vậy có thể sử dụng nó một cách linh hoạt đểthiết kế web cùng với văn bản
Có thể thêm các hình ảnh, video và âm thanh sống động vào các trang web,khiến hiệu quả tương tác cao hơn
Có thể liên kết trực tiếp đến trang web khác
Là nền tảng độc lập, nên có thể hiển thị trên bất kì nền tảng nào khác
CSS – được dùng để miêu tả cách trình bày các tài liệu viết bằng ngôn ngữ
HTML và XHTML CSS là viết tắt của Cascading Style Sheets CSS được hiểu một
cách đơn giản đó là cách mà chúng ra thêm các kiểu hiển thị (font chữ, kích thước,màu sắc,…) cho một tài liệu Web CSS có tác dụng chính là:
Hạn chế tối thiểu việc làm rối HTML của trang Web bằng các thẻ quy địnhkiểu dáng(chữ đậm, in nghiêng, ), giúp mã nguồn của trang Web trở nên gọngàng hơn
Tách biệt nội dung trang Web và định dạng hiển thị, dễ dàng cho việc thay đổi
Tạo ra các kiểu dáng áp dụng được cho nhiều trang Web, tránh lặp lại việcđịnh dạng cho các trang Web giống nhau
Trang 12Hình 2.3 Minh họa trang web sử dụng HTML và CSS
2.1.3 Ngôn ngữ lập trình JAVASCRIPT:
JavaScript là một ngôn ngữ lập trình của HTML và ứng dụng Web Nó là nhẹ
và được sử dụng phổ biến nhất như là một phần của các trang web, mà sự thi hànhcủa chúng cho phép Client-Side script tương tác với người sử dụng và tạo các trangweb động Nó là một ngôn ngữ chương trình thông dịch với các khả năng hướng đốitượng
JavaScript có một số ưu điểm:
Tiết kiệm băng thông máy chủ:
Javascript sử dụng trong thiết kế website có thể giúp tiết kiệm băng thông máymáy chủ vô cùng tốt bởi chúng được chạy trực tiếp trên máy của người dùng.Các dòng Script đều được thực thi trên trình duyệt người dùng để gia tăng hiệusuất, kéo dài tuổi thọ máy chủ và tiết kiệm diện tích băng thông
Linh hoạt vận hành, tương thích tốt:
Để thực thi, trình duyệt web chỉ cần tải file JavaScript về hoặc nhúng thẳng vàofile HTML và chạy, mà không cần tải thêm nhiều file khác Javascript có thểchạy được trên hầu hết các trình duyệt phổ biến hiện nay như Cốc Cốc,Chrome, Firefox, Safari
Trang 13Không những thế, hầu hết các trình duyệt web đều có tích hợp sẵn trình thôngdịch ngôn ngữ JavaScript, đảm bảo người dùng có thể sử dụng ngay Điều này
vô cùng tiện lợi cho người dùng khi không có mạng
Dễ dàng kiểm tra, xử lý vấn đề:
Với lợi thế có nhiều trình duyệt hỗ trợ nên việc kiểm tra và xử lý vấn đề dễ dànghơn Đa số các trình duyệt web hiện nay đều có cài sẵn các công cụ xử lý lỗiJavascript trong bảng điều khiển trình duyệt
Javascript sở hữu cấu trúc dễ đọc với các nguyên tắc rõ ràng nên việc xác định và
gỡ lỗi trở nên đơn giản hơn nhiều
Nâng cao trải nghiệm người dùng:
Website sử dụng ngôn ngữ lập trình giúp thu hút người dùng bởi những tính nănghay ho, hình ảnh sinh động hấp dẫn, chức năng lướt và tương tác nhanh nhạy Nhờ những tính năng đó, người dùng cảm thấy thoải mái, thích thú và tin dùngtrang web hơn
2.1.4 Ngôn ngữ lập trình PHP:
PHP là ngôn ngữ script được tạo cho các giao tiếp phía server Do đó, nó có
thể xử lý các giao tiếp phái server như thu thập dữ liệu, biểu mẫu, quản lý file trênserver, sửa đổi cơ sở dữ liệu và nhiều hơn
PHP không phải là ngôn ngữ script phía server duy nhất có sẵn - vẫn còn nhiềungôn ngữ khác nữa Tuy nhiên, nó lợi thế hơn các đối thủ cạnh tranh nếu chạy trangweb WordPress WordPress được xây dựng dựa trên việc sử dụng PHP Vì vậy, sửdụng ngôn ngữ này giúp cải thiện đáng kể số lượng tùy chỉnh trên trang web Cònmột số lý do khác khiến PHP là ngôn ngữ script tuyệt vời để sử dụng:
Dễ học: Có thể học dễ dàng vì nó có tài liệu tuyệt vời về các chức năng về vídụ
Được sử dụng rộng rãi, phổ biến: Nó được sử dụng để tạo ra các loại nền tảngnhư thương mại điện tử, blogs, phương tiện truyền thông xã
Chi phí thấp: Nó là nguồn mở để có thể sử dụng miễn phí
Cộng đồng lớn: Nếu gặp phải những khó khăn nào đó, sẽ không phải là điều lolắng vì có rất nhiều blog PHP trên Internet
Trang 14 Tích hợp với cơ sở dữ liệu: Ví dụ như MySQL, Oracle
2.1.5 Hệ quản trị cơ sở dữ liệu:
Cơ sở dữ liệu (Database) là một tập hợp các dữ liệu có tổ chức, thường được
lưu trữ và truy cập điện tử từ hệ thống máy tính Khi cơ sở dữ liệu phức tạp hơn,chúng thường được phát triển bằng cách sử dụng các kỹ thuật thiết kế và mô hìnhhóa chính thức
Hệ quản trị cơ sở dữ liệu (Database Management System) là hệ thống được
thiết kế để quản lý một khối lượng dữ liệu nhất định một cách tự động và có trật tự.Các hành động quản lý bao gồm chỉnh sửa, xóa, lưu và tìm kiếm thông tin trong mộtnhóm dữ liệu nhất định
Hình 2.4 Kiến trúc của một hệ quản trị cơ sở dữ liệu
Hệ quản trị CSDL có các chức năng chính như:
Cung cấp môi trường tạo lập cơ sở dữ liệu: Hệ quản trị CSDL đóng vai tròcung cấp cho người dùng một ngôn ngữ định nghĩa dữ liệu để mô tả, khai báokiểu dữ liệu, các cấu trúc dữ liệu
Trang 15 Cung cấp cách cập nhật và khai thác dữ liệu: Hệ quản trị CSDL cung cấp chongười dùng ngôn ngữ thao tác dữ liệu để diễn tả các yêu cầu, các thao tác cậpnhật và khai thác cơ sở dữ liệu Thao tác dữ liệu bao gồm: cập nhật (thêm, sửa,xóa) và khai thác (tìm kiếm, kết xuất dữ liệu).
Cung cấp các công cụ kiểm soát, điều khiển các truy cập vào cở dữ liệu: Đảmbảo việc thực hiện một số yêu cầu cơ bản của hệ quản trị CSDL Bao gồm:Đảm bảo an ninh, phát hiện và ngăn chặn các truy cập bất hợp pháp; Duy trìtính nhất quán của dữ liệu; Tổ chức và điều khiển các truy cập; Khôi phục dữliệu khi có sự cố
2.2 Công cụ sử dụng:
2.2.1 Thư viện JQUERY:
JQuery là một thư viện kiểu mới của JavaScript, hệ thống lại các hàm của
JavaScript một cách ngắn gọn, dễ dùng, được tạo vào năm 2006 JQuery làm đơngiản hóa việc truyền tải HTML, xử lý sự kiện và tương tác với Ajax, tích hợp nhiềumodule khác nhau từ module hiệu ứng cho đến module truy vấn selector
Nhờ một số tính năng ưu việt của Jquery, nên nó được sử dụng trong hầu hếtcác website trên thế giới Thư viện lập trình này cho phép người dùng nâng cao khảnăng tương tác và hoạt động của trang:
Đơn giản hóa việc code, giúp người dùng có thể viết các mã chức năng liênquan đến giao diện một cách dễ dàng, nhanh chóng
Cho phép các ứng dụng web tương thích với trình duyệt cùng phát triển
JQuery rất nhanh có khả năng mở rộng
Sử dụng hầu hết các tính năng hiện đại của trình duyệt mới
Hỗ trợ hầu hết trên các trình duyệt
2.2.2 Mô hình MVC:
MVC(viết tắt của Model-View-Controller) đại diện cho các nhà phát triển kiến
trúc áp dụng khi xây dựng các ứng dụng Với kiến trúc MVC, chúng ta xem xét cấutrúc ứng dụng liên quan đến cách luồng dữ liệu hoạt động
Trang 16 Tạo ra được các chức năng chuyên biệt hóa, đồng thời kiểm soát được luồng
xử lý
Tạo mô hình chuẩn cho dự án, người chuyên môn ngoài dễ tiếp cận hơn
Xử lý nghiệp đơn giản và dễ dàng triển khai với các dự án nhỏ
2.2.3 Framework Laravel:
Framework chính là một thư viện với các tài nguyên có sẵn cho từng lĩnh vực
để lập trình viên sử dụng thay vì phải tự thiết kế Với Framework, lập trình viên chỉcần tìm hiểu và khai thác những tài nguyên đó, gắn kết chúng lại với nhau và hoànchỉnh sản phẩm của mình
Laravel là một PHP Framework mã nguồn mở miễn phí Được phát triển nhằm
mục đích hỗ trợ phát triển các ứng dụng web theo mô hình MVC Có những tínhnăng nổi bật như:
Trang 17 Cú pháp dễ hiểu, rõ ràng.
Nhiều tiện ích khác nhau hỗ trợ triển khai và bảo trì ứng dụng, phần mềm
Có hệ thống gói modular và quản lý gói phụ thuộc
Hình 2.6 Mô hình MVC trong Laravel 2.2.4 MySQL:
MySQL là hệ quản trị cơ sở dữ liệu sử dụng mã nguồn mở phổ biến nhất thế
giới và được ưa chuộng trong quá trình phát triển web, ứng dụng Với tốc độ vàtính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có CSDL trên Internet.Một số ưu điểm của MySQL:
Bảo mật cao: Không phải ngẫu nhiên mà MySQL có lượng người dùng lớnnhư hiện nay Đầu tiên cần nhắc tới là khả năng bảo mật, chống hack cực tốt
Nhiều tính năng: MySQL hỗ trợ nhiều tính năng ưu việt vượt cả trực tiếp vàgián tiếp
Dễ sử dụng: Dễ dàng nắm bắt các kiến thức và khá đơn giản trong quá trình sửdụng, kể cả với người mới bắt đầu
Hoàn toàn miễn phí: MySQL là mã nguồn mở, vì vậy có thể sử dụng miễn phí.Tuy nhiên, có một số tính năng hỗ trợ vẫn cần trả phí
Tốc độ: Khả năng Request dữ liệu cực nhanh, điều này rất quan trọng trong lậptrình web
Trang 18Chương 3: Hệ thống tổ chức và đặc tả yêu cầu3.1 Khảo sát hoạt động nghiệp vụ:
3.1.1 Sơ đồ tổng quát:
Trang 19Hình 3.1 Sơ đồ tổng quát
3.1.2 Mô tả nghiệp vụ:
Khi công ty cần tuyển thêm nhân sự, bộ phận quản lý nhân sự sẽ đăng tintuyển dụng kèm các yêu cầu về hồ sơ xin việc(gồm phiếu xin việc, sơ yếu lýlịch, bằng tốt nghiệp(nếu có…) Những hồ sơ đủ tiêu chuẩn sẽ được nộp lêncác trưởng phòng, trưởng phòng của từng phòng ban sẽ xem xét hồ sơ xin việc
và phỏng vấn, những ứng viên phù hợp với yêu cầu của công ty sẽ được tiếpnhận hồ sơ Sau quá trình thử việc thành công, ứng viên sẽ được nhận làmnhân viên chính thức và thông báo ngày tới kí hợp đồng
Trở thành nhân viên của công ty sẽ được hưởng các chế độ và bảo hiểm.Nhân viên sẽ được xem các danh sách bảo hiểm và chế độ của công ty, phảnhồi ý kiến nếu có điểm nào đó muốn thay đổi hay thuộc trường hợp đặc biệt.Trưởng phòng sẽ phụ trách xem xét các ý kiến phản hồi của nhân viên để điềuchỉnh Nếu ứng viên chấp nhận các thỏa thuận trong hợp đồng, thì hai bên thựchiện kí và lưu lại hợp đồng, ứng viên sẽ trở thành nhân viên chính thức, trưởngphòng sẽ lưu lại các thông tin nhân viên và bản hợp đồng Ngược lại, nếu ứngviên có điểm không đồng ý với hợp đồng, thì trưởng phòng dựa trên hợp đồng
đã chuẩn bị và những ý kiến tiếp nhận được, xem xét và thống nhất đưa ra mộtbản hợp đồng mới phù hợp nhất để hai bên kí thỏa thuận
Với những nhân viên văn phòng, đến công ty làm việc theo giờ hànhchính, sẽ chấm công thông qua máy chấm công, nhân viên thực hiện check mãvân tay khi đi làm và khi kết thúc giờ làm Các trưởng phòng lấy danh sáchchấm công từ máy chấm công vào cuối tháng và tổng hợp gửi nhân viên thuộcphòng ban tương ứng Nhân viên sẽ xác nhận, nếu có các thắc mắc sẽ gửi phảnhồi tới các trưởng phòng, còn không thì trưởng phòng thực hiện hoàn thànhviệc chấm công để chuyển sang giai đoạn tính lương Những ngày nhân viên đi
Trang 20làm tăng ca cũng sẽ được trưởng phòng lập danh sách chấm công và lưu lại sốgiờ tăng ca.
Với những nhân viên tư vấn tài chính, đến công ty theo giờ phân côngcủa các trưởng phòng, thực hiện chấm công tương tự như nhân viên văn phòng.Thêm vào đó, nhân viên tư vấn tài chính còn được chấm công theo KPI, nếuKPI thấp hơn quy định của công ty, thì nhân viên tư vấn tài chính sẽ bị trừlương, ngược lại khi KPI cao hơn mức quy định sẽ được thưởng theo từng hợpđồng, cùng với mức lương cơ bản
Cuối tháng, mỗi trưởng phòng tạo bảng lương nhân viên, dựa theo từngloại nhân viên Với những nhân viên văn phòng, sẽ dựa theo các bảng công vàdanh sách tăng ca, cùng với các quy tắc và công thức được sử dụng để tínhlương của nhân viên Với những nhân viên tư vấn tài chính, sẽ dựa theo cácbảng công và KPI mà nhân viên đạt được để tính lương cho nhân viên
Danh sách lương sau khi hoàn thành được in và gửi nhân viên, khi nhânviên đã kiểm tra và xác nhận mức lương, trưởng phòng sẽ lưu lại danh sáchlương, để bộ phận kế toán thực hiện việc phát lương tháng đến toàn thể nhânviên trong công ty
3.2.3 Yêu cầu đối với hệ thống:
Về giao diện:
Về cơ bản, phần mềm quản lý nhân sự chỉ dành cho những người làm vềmảng nhân sự hay những người đứng đầu công ty dể kiểm soát nhân viên, ưutiên sử dụng nội bộ và không công khai ra ngoài nên giao diện của phần mềmkhông cần quá cầu kỳ, chỉ cần bố cục tốt, sắp xếp nội dung trình bày đơn giản,
dễ hiểu
Về xử lý:
- Xem thông tin nhân viên: khi nhập tên nhân viên hay mã nhân viên, hệthông sẽ trả về tất cả những thông tin liên quan đến ứng viên là chúng ta tìmkiếm
Trang 21- Thêm mới nhân viên: thêm mới các thông tin cơ bản về nhân viên như họtên, ngày tháng năm sinh, quê quán…
- Cập nhật hồ sơ nhân sự
- Cập nhật lương, hợp đồng, thời gian làm việc…
Yêu cầu của hệ thống:
- Dành cho người quản trị:
Tạo, xóa và sửa user
Thêm, sửa, xóa các quyền
Gán quyền cho user
- Dành cho trưởng phòng:
Kiểm tra thông tin nhân viên
Thêm mới nhân viên
Cập nhật danh mục từ điển bao gồm: chức vụ, phòng ban, thời gian thử việc, đánh giá sau thử việc, lịch phỏng vấn, kết quả phỏng vấn
Quản lý danh sách chấm công và bảng lương
Xem các báo cáo thống kê
Đăng nhập vào hệ thống
Đổi mật khẩu
- Dành cho nhân viên:
Đăng nhập tài khoản và chỉnh sửa thông tin cá nhân
Điểm danh các ngày đi làm
3.2 Use Case của hệ thống:
3.2.1 Các tác nhân của hệ thống:
Trang 22Hình 3.2 Các tác nhân của hệ thống
QUANTRIVIEN: Là người quản lý toàn bộ hệ thống, thêm các tài khoản và
phân quyền người sử dụng hệ thống
TRUONGPHONG: Là các trưởng phòng thực hiện quản lý thông tin cá nhân,
hồ sơ nhân sự và chấm công nhân viên
NHANVIEN: Là nhân viên của công ty, thực hiện đăng nhập, chỉnh sửa thông
tin cá nhân, xem danh sách chấm công, hợp đồng và thực hiện điểm danh cácngày đi làm
3.2.2 Use Case tổng quát:
Trang 23Hình 3.3 Use Case tổng quát
Trang 243.2.3 Use Case hệ thống:
Hình 3.4 Use Case hệ thống
Đổi mật khẩu:
Tác nhân: Trưởng phòng và nhân viên
Mô tả tổng quát: Người dùng đổi mật khẩu của tài khoản truy cập
Điều kiện đầu vào: Khi người dùng truy cập và chọn đổi mật khẩu
Dòng sự kiện chính:
Người dùng chọn đổi mật khẩu
Hệ thống hiển thị trang đổi mật khẩu
Người dùng nhập các trường thông tin và chọn đổi mật khẩu
Hệ thống kiểm tra các trường dữ liệu:
▫ Nếu thỏa mãn thì thông báo đổi mật khẩu thành công, và chuyển hướngđến trang chủ
▫ Nếu không thỏa mãn thì thực hiện dòng sự kiện rẽ nhánh A1
Dòng sự kiện rẽ nhánh A1:
Hệ thống thông báo việc nhập dữ liệu không hợp lệ
Trang 25 Nhập lại thông tin.
Quay lại bước 3 của sự kiện chính
Điều kiện đầu ra: Lưu mật khẩu mới của người dùng
Đăng nhập:
Tác nhân: Trưởng phòng, nhân viên và quản trị viên
Mô tả tổng quát: Người dùng đăng nhập vào hệ thống
Điều kiện đầu vào: UseCase sử dụng khi người dùng muốn đăng nhập vào hệthống
Dòng sự kiện chính:
Hệ thống yêu cầu nhập tài khoản và mật khẩu
Người dùng nhập tài khoản và mật khẩu
Hệ thống kiểm tra tên và mật khẩu vừa nhập:
▫ Nếu đúng sẽ kiểm tra quyền, và hiển thị quyền tương ứng của tài khoản
▫ Nếu sai thực hiện luồng sự kiện phụ A1
Dòng sự kiện phụ A1:
Hệ thống sẽ thông báo việc nhập dữ liệu không hợp lệ
Người dùng nhập lại tài khoản và mật khẩu
Quay lại bước 2 của luồng sự kiện chính, hoặc hủy bỏ việc đăng nhập, khi
đó ca sử dụng kết thúc
Đăng xuất:
Tác nhân: Trưởng phòng, nhân viên và quản trị viên
Mô tả tổng quát: Người dùng muốn thoát tài khoản khỏi hệ thống
Trang 26 Điều kiện đầu vào: UseCase sử dụng khi người dùng chọn đăng xuất.
Dòng sự kiện chính:
Hệ thống hủy việc lưu thông tin đăng nhập
Quay về màn hình trang chủ
3.2.4 Use Case của tác nhân NHANVIEN:
Hình 3.5 Use Case của tác nhân NHANVIEN
Xem các chế độ:
Tác nhân: Nhân viên
Mô tả tổng quát: Nhân viên muốn xem các chế độ đãi ngộ của công ty
Trang 27 Điều kiện đầu vào: UseCase sử dụng khi nhân viên truy cập vào hệ thống vàchọn xem các chế độ.
Dòng sự kiện chính:
Hệ thống lấy thông tin các chế độ của nhân viên
Hiển thị giao diện xem các chế độ
Cập nhật thông tin cá nhân:
Tác nhân: Nhân viên
Mô tả tổng quát: Nhân viên cập nhật thông tin cá nhân của mình
Điều kiện đầu vào: Khi nhân viên ùng đăng nhập hệ thống thành công và chọnthông tin cá nhân
Dòng sự kiện chính:
Nhân viên chọn cập nhật thông tin cá nhân
Hệ thống hiển thị form cập nhật thông tin
Người dùng nhập các thông tin muốn sửa đổi, và chọn cập nhật
Hệ thống kiểm tra các trường dữ liệu:
▫ Nếu đầy đủ và đúng định dạng thì chuyển qua bước tiếp theo
▫ Nếu không thì thực hiện dòng sự kiện rẽ nhánh A1
Hệ thống thông báo cập nhật thông tin cá nhân thành công
Hệ thống cập nhật thông tin cá nhân vào cơ sở dữ liệu
Dòng sự kiện rẽ nhánh A1:
Hệ thống thông báo việc nhập dữ liệu không hợp lệ
Nhập lại thông tin
Trang 28 Quay lại bước 3 của sự kiện chính.
Điều kiện đầu ra: Thông tin của nhân viên được cập nhật vào cơ sở dữ liệu
3.2.5 Use Case quản lý phòng ban:
Hình 3.6 Use Case quản lý phòng ban
Tác nhân: Quản trị viên
Mô tả tổng quát: Người quản trị quản lý các bộ phận phòng ban trong hệ thống
Điều kiện đầu vào: Người dùng đăng nhập thành công, với quyền quản trị
Dòng sự kiện chính:
Quản trị viên chọn quản lý phòng ban
Hệ thống hiển thị danh sách phòng ban, và các chức năng: thêm, sửa và xóaphòng ban:
▫ Thêm phòng ban:
Hệ thống hiển thị form nhập thông tin phòng ban
Người quản lý nhập thông tin phòng ban
Nhập nút thêm phòng ban
Hệ thống kiểm tra các trường dữ liệu: Nếu thỏa mãn, thì thực hiệnbước tiếp theo Nếu không, thì thực hiện luồng sự kiện A1
Trang 29 Hệ thống thông báo thêm phòng ban thành công.
Hệ thống lưu lại thông tin phòng ban
▫ Sửa phòng ban:
Hệ thống hiển thị form cập nhật thông tin phòng ban
Quản trị viên nhập thông tin cần thay đổi
Nhập nút cập nhật phòng ban
Hệ thống kiểm tra các trường dữ liệu: Nếu thỏa mãn, thì thực hiệnbước tiếp theo Nếu không, thì thực hiện luồng sự kiện A1
Hệ thống thông báo cập nhật phòng ban thành công
Hệ thống cập nhật thông tin phòng ban
▫ Xóa phòng ban:
Quản trị viên chọn thông tin phòng ban cần xóa
Hệ thống kiểm tra: Nếu không có ràng buộc, thực hiện xóa phòng ban vàtrả về trang hiện hành Ngược lại, hủy thao tác xóa
Dòng sự kiện rẽ nhánh A1:
Hệ thống báo lỗi
Quản trị thưc hiện nhập lại dữ liệu
Quay lại bước 2 của sự kiện
Điều kiện đầu ra: Danh sách các phòng ban được cập nhật đầy đủ vào cơ sở dữliệu
Trang 303.2.6 Use Case quản lý tài khoản:
Hình 3.7 Use Case quản lý tài khoản
Tác nhân: Quản trị viên
Mô tả tổng quát: Người quản trị quản lý các tài khoản đăng nhập hệ thống
Điều kiện đầu vào: Người dùng đăng nhập thành công, với quyền quản trị
Dòng sự kiện chính:
Quản trị viên chọn quản lý tài khoản
Hệ thống hiển thị danh sách tài khoản, và các chức năng: thêm, sửa, xóa, tìmkiếm và phân quyền tài khoản:
▫ Thêm tài khoản:
Hệ thống hiển thị form nhập thông tin tài khoản
Người quản lý nhập thông tin tài khoản
Nhập nút thêm tài khoản
Trang 31 Hệ thống kiểm tra các trường dữ liệu: Nếu thỏa mãn, thì thực hiệnbước tiếp theo Nếu không, thì thực hiện luồng sự kiện A1.
Hệ thống thông báo thêm tài khoản thành công
Hệ thống lưu lại thông tin tài khoản
▫ Sửa tài khoản:
Hệ thống hiển thị form cập nhật thông tin tài khoản
Quản trị viên nhập thông tin cần thay đổi
Nhập nút cập nhật tài khoản
Hệ thống kiểm tra các trường dữ liệu: Nếu thỏa mãn, thì thực hiệnbước tiếp theo Nếu không, thì thực hiện luồng sự kiện A1
Hệ thống thông báo cập nhật tài khoản thành công
Hệ thống cập nhật thông tin tài khoản
▫ Xóa tài khoản:
Quản trị viên chọn thông tin tài khoản cần xóa
Hệ thống kiểm tra: Nếu không có ràng buộc, thực hiện xóa tài khoản vàtrả về trang hiện hành Ngược lại, hủy thao tác xóa
▫ Phân quyền:
Quản trị viên chọn mục phân quyền
Hệ thống hiển thị form phân quyền
Quản trị viên phân quyền tài khoản người dùng
Hệ thống kiểm tra: Nếu không có ràng buộc, thực hiện cập nhật phânquyền và trả về trang hiện hành Ngược lại, hủy thao tác
▫ Tìm kiếm tài khoản:
Trang 32 Quản trị thưc hiện nhập lại dữ liệu.
Quay lại bước 2 của sự kiện
Điều kiện đầu ra: Danh sách các tài khoản đã phân quyền được cập nhật đầy đủvào cơ sở dữ liệu
3.2.7 Use Case quản lý nhân sự:
Hình 3.8 Use Case quản lý nhân sự
Tác nhân: Quản trị viên và trưởng phòng
Mô tả tổng quát: Trưởng phòng và quản trị viên quản lý nhân sự của công ty
Trang 33 Điều kiện đầu vào: Người dùng đăng nhập thành công, với quyền quản trị vàtrưởng phòng.
Dòng sự kiện chính:
Người dùng chọn quản lý nhân sự
Hệ thống hiển thị danh sách nhân sự, và các chức năng: thêm, sửa, xóa, tìmkiếm nhân sự:
Hệ thống thông báo thêm nhân sự thành công
Hệ thống lưu lại thông tin nhân sự
▫ Sửa nhân sự:
Hệ thống hiển thị form cập nhật nhân sự
Người dùng nhập thông tin cần thay đổi
Nhập nút cập nhật nhân sự
Hệ thống kiểm tra các trường dữ liệu: Nếu thỏa mãn, thì thực hiệnbước tiếp theo Nếu không, thì thực hiện luồng sự kiện A1
Hệ thống thông báo cập nhật nhân sự thành công
Hệ thống cập nhật thông tin nhân sự
▫ Xóa nhân sự:
Trang 34 Người dùng chọn thông tin nhân sự cần xóa.
Hệ thống kiểm tra: Nếu không có ràng buộc, thực hiện xóa nhân sự và trả
về trang hiện hành Ngược lại, hủy thao tác xóa
▫ Tìm kiếm nhân sự:
Nhập từ khóa cần tìm
Nhấn nút tìm kiếm
Hệ thống kiểm tra thông tin nhân sự: Nếu có hiển thị danh sách nhân
sự Nếu không, hiển thị danh sách rỗng
Dòng sự kiện rẽ nhánh A1:
Hệ thống báo lỗi
Người dùng thưc hiện nhập lại dữ liệu
Quay lại bước 2 của sự kiện
Điều kiện đầu ra: Danh sách các nhân sự được cập nhật đầy đủ vào cơ sở dữliệu