BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO THỰC TẬP PHÂN TÍCH THIẾT KẾ, XÂY DỰNG CƠ SỞ DỮ LIỆU HỆ THỐNG PHẦN MỀM CHẤM CÔNG Giảng viên hướng dẫn Vương Xuân.
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO THỰC TẬP PHÂN TÍCH THIẾT KẾ, XÂY DỰNG CƠ SỞ DỮ LIỆU
Thiết Kế Phần Mềm Cánh Cam
TP.HCM, tháng 05 năm 2022
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO THƯC TẬP
NHẬP LIỆU VÀ PHÂN TÍCH THIẾT KẾ HỆ THỐNG PHẦN MỀM CHẤM CÔNG TÍNH
LƯƠNG Giảng viên hướng dẫn : Vương Xuân Chí
Sinh viên thực hiện : Nguyễn Trần Phú Quí
Trang 3LỜI CẢM ƠN
Trong suốt thời gian gần 4 năm theo học tại trường, Quý Thầy
Cô đã giành nhiều thời gian và sự tận tình để truyền đạt và chỉ dạycho chúng em những kiến thức cần thiết Thực tập tốt nghiệp là mộttrong những khâu quan trọng nhằm đánh giá chính xác kết quả vàkiến thức đã học tập của sinh viên trong suốt thời gian theo họckhóa học Công Nghệ Thông Tin tại trường Đại học Nguyễn TấtThành Bên cạnh đó thực tập còn là cơ hội để tìm hiểu thêm về tìnhhình thực tế giúp sinh viên ứng dụng những kiến thức đã học, liên hệthực tiễn nhằm rút ra được những kinh nghiệm trong lĩnh vực kinhdoanh nói chung và những linh vực mình quan tâm nói riêng
Để hoàn thành được khóa thực tập và bài cáo thực tập này Emxin biết ơn sự quan tâm chỉ dẫn và giúp đỡ của Thầy Vương Xuân Chítrong suốt thời gian thực tập Bên cạnh đó là sự cho phép, hỗ trợnhiệt tình, tạo điều kiện thuận lợi trong quá trình thực tập của AnhNguyễn Hưu Nguyên Khương của Công ty TNHH Tư Vấn, Thiết KếPhần Mềm Cánh Cam
Em xin được gửi lời chúc tốt đẹp nhất đến quý Thầy Cô trongKhoa Công Nghệ Thông Tin Một lần nữa chân thành cảm ơn ThầyVương Xuân Chí và Ban lãnh đạo cùng toàn thể nhân viên Công tyTNHH Tư Vấn, Thiết Kế Phần Mềm Cánh Cam Kính chúc Thầy Cô sứckhỏe và thành đạt Kính chúc Quý Công ty thuận lợi và thành côngtrong việc xây dựng và phát triển những chiến lược sản xuất – kinhdoanh, đạt được những bước tiến mới, những kết quả tốt hơn vớimục tiêu đề ra
Em xin chân thành cảm ơn!
Trang 4Sinh viên thực hiện
NGUYỄN TRẦN PHÚ QUÍ
4
Trang 5LỜI MỞ ĐẦU
Trong đời sống hiện nay, ứng dụng tin học hóa vào các ngànhkinh tế góp phần quan trọng trong sự thành công và tăng trưởng củatừng ngành Đặc biệt hơn hết đó là ứng dụng tin học vào các lĩnh vựcquản lý có hệ thống như bến xe, siêu thị, nhà sách, công ty, ngânhàng, kí túc xá, nhà hàng….Với việc góp sức từ các phần mềm quản
lý đã giảm thiểu được số lượng chi phí đầu tư cho nguồn nhân công,đồng thời còn giúp tăng hiệu quả tính chính xác trong việc quản lý,giúp tiết kiệm thời gian và nâng cao chất lượng cuộc sống con người
Ngày nay công nghệ thông tin đang ngày càng phát triển Viêcứng dụng công nghệ thông tin vào trong công viêc kinh doanh đangrất thịnh hành Các doanh nghiệp ngày nay đã quá quen thuộc vớiviêc ứng dụng công nghệ thông tin vào các hoạt động của mình, từnhững công viêc đơn giản ha phức tạp Thế giới công nghệ vẫn đangthay đổi từng ngày và ngày càng đơn giản hóa mọi việc, tìm ra giảipháp nhanh nhất cho mọi vấn đề Để có thể kiệp theo sự phát triểncủa thời đại thì bản thân chúng ta phải thay đổi chính mình, khôngngừng phát triển bản thân
Trang 6NHẬN XÉT CỦA CƠ QUAN THỰC TẬP
Sinh viên hoàn thành tốt công việc được giao
Tác phong chỉnh tề, giao tiếp tốt
TPHCM, Ngày 20 tháng 5 năm 2022
Xác nhận của đơn vị thực tập
(Ký tên, đóng dấu)
Khương Nguyễn Hữu Nguyên Khương
6
Trang 7MỤC LỤC
LỜI CẢM ƠN 1
LỜI MỞ ĐẦU 2
NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN 3
NHẬN XÉT CỦA CƠ QUAN THỰC TẬP 4
DANH MỤC BẢNG BIỂU 5
DANH MỤC BẢNG HÌNH 6
DANH MỤC TỪ VIẾT TẮT 7
SỔ NHẬT KÝ THỰC TẬP 8
PHIẾU NHẬN XÉT SINH VIÊN THỰC TẬP 12
MỤC LỤC 14
Chương I : Giới Thiệu 15
1.1 Giới Thiệu Công Ty 15
Chương II : Nội Dung Thực Tập 16
2.1 Vị trí và nội dung thực tập 16
2.1.1 Vị trí công việc: 16
2.1.2 Thời gian thực tập 16
2.1.3 Công việc thực tập 16
2.2 Tìm Hiểu về nhập liệu 16
2.2.1 Giới thiệu về nhập liệu tại công ty 16
2.2.3 Thuận lợi và khó khăn trong nhập liệu 17
2.2.2 HDQT cho KH 18
2.3 Tìm hiểu về phân tích thiết kế hệ thống thông tin 24
2.4 Tiến hành phân tích đề tài 38
2.5 Thiết kế CSDL 46
2.5.1 Thiết kế sơ đồ class và chuyển sang lược đồ quan hệ 46
2.5.2 Thiết kế lược đồ csdl quan hệ 48
2.5.3 Các Bảng CSDL 48
2.5.4 Tạo các Stored Procedure: 54
Chương III Kết Luận 59
TÀI LIỆU THAM KHẢO 60
Trang 8DANH MỤC BẢNG BIỂU
Bảng 1: Table Account 48
Bảng 2: Table BoPhan 49
Bảng 3: Table PhongBan 49
Bảng 4: Table NhanVien 50
Bảng 5: Table ChamCong 51
Bảng 6: Table Luong 51
Bảng 7: TableDSBaoHiem 51
Bảng 8: TableDSKhenThuong 52
Bảng 9: TableDSKyLuat 52
Bảng 10: Table DSThaiSan 53
Bảng 11: TableHopDong 53
Bảng 12: Table TongLuong 54
8
Trang 9DANH MỤC BẢNG HÌNH
Hình 1:Giới thiệu HRM 17
Hình 2:Vai trò HRM 18
Hình 3:Tính năng HRM 21
Hình 4:Lý do nên chọn HRM 22
Hình 5: Lợi ích HRM 24
Hình 6: Sơ đồ Sitemap tổng thể 39
Hình 7: Sơ đồ Use case tổng quát 39
Hình 8: Sơ đồ Use case Quản Lý Tiền Lương 40
Hình 9: Sơ đồ Use Case Quản Lý Chế Độ 40
Hình 10: Sơ đồ Use case Quản lý Hồ Sơ Nhân Viên 41
Hình 11: Sơ đồ Use Case Quản lý chấm công 41
Hình 12: Sơ đồ Use case Chức năng quản lý 42
Hình 13: Sơ đồ Use case Quản lý tài khoản 42
Hình 14: Sơ đồ Use Case Chấm công 43
Hình 15: Sơ đồ Use Case Lương cơ bản 43
Hình 16: Sơ đồ Use Case Danh sách bảo hiểm 44
Hình 17: Sơ đồ Use Case Danh Sách Khen Thưởng 44
Hình 18: Sơ đồ Use Case Danh sách kỷ luật 45
Hình 19: Sơ đồ Use Case Tính lương 45
Hình 20: Sơ đồ Cơ sở dữ liệu 46
Hình 21: Sơ đồ Lược Đồ CSDL Quan Hệ 48
Hình 22: Stored Procedure: Đăng nhập 55
Hình 23: Stored Procedure: Thay đổi mật khẩu 55
Hình 24: Stored Procedure: Kiểm tra hạn sử dụng của bảo hiểm .56
Hình 25: Stored Procedure: Kiểm tra chấm công theo ngày 56
Hình 26: Stored Procedure: Lọc báo cáo chấm công theo mã bộ phận 56
Hình 27: Stored Procedure: Lọc nhân viên theo mã bộ phận 57
Hình 28: Stored Procedure: Lọc nhân viên đi trễ 57
Trang 10Hình 29: Stored Procedure: Lọc thâm niên của nhân viên 58 Hình 30: Stored Procedure: Lọc hợp đồng nhân viên sắp hết hạn .58
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC NGUYỄN TẤT
10
Trang 11Tháng 02/2022
Trang 16Chương I : Giới Thiệu
1.1 Giới Thiệu Công Ty
Công Ty TNHH Tư Vấn Thiết Kế Phần Mềm Cánh Cam
Đại diện pháp luật:
Nguyễn Xuân Việt
Ngày Cấp:
2005-08-12
16
Trang 17Chương II : Nội Dung Thực Tập
2.1 Vị trí và nội dung thực tập
2.1.1 Vị trí công việc:
Nhân viên thực tập
2.1.2 Thời gian thực tập
- Thời gian thực tập: 3 tháng – Trung bỉnh 5 ngày/ 1 tuần
- Thời gian làm việc: sáng 8h30-12h; chiều 1h – 17h
2.2.1 Giới thiệu về nhập liệu tại công ty
Nhân viên nhập liệu là gì?
- Vị trí nhân viên nhập liệu tưởng chừng đơn giản và cóphần “nhẹ đô” nhưng lại không thể thiếu trong tổ chức Nhân viênnhập liệu là gì? Họ là những nhân sự chuyên nhập dữ liệu và quản lý,lưu trữ chúng trên nền tảng website Trong xã hội công nghệ số,công việc nhân viên nhập liệu tại nhà đang được nhiều bạn trẻ ưachuộng bởi tính linh động và ít yêu cầu kinh nghiệm
Quy trình nhập liệu
- Nhân viên nhập liệu luôn phải làm việc cùng rất nhiều
thông tin dữ liệu Quy trình làm việc nhìn chung không quá khó.Bạn có thể tham khảo một số mô tả sau:
Bước 1: Tiến hành nhập dữ liệu theo yêu cầu cấp trên Chú
ý nhập chính xác và đủ KPI Nhân viên nhập liệu sau một
Trang 18thời gian kinh nghiệp có thể kèm theo phân tích dữ liệu khi nhập
Bước 2: Áp dụng cấu trúc child-parent để phân chia các
items trong dữ liệu Nhân viên cần biên tập và kiểm tra lỗi
để hạn chế nhầm lẫn
Bước 3: Sau khi nhập xong dữ liệu cần so sánh và đối
chiếu với yêu cầu ban đầu Hãy coi lúc này là lần kiểm tra cuối cùng quan trọng nhằm bổ sung những gì còn thiếu
- Bên cạnh đó, danh sách nhiệm vụ khác của nhân viên nhập liệu là gì?Cùng liệt kê qua một số công việc quan trọng không kém:
So sánh, đối chiếu để kiểm tra tính đồng nhất của dữ liệu vớinguồn tài liệu gốc
Thực hiện cập nhật dữ liệu hàng ngày
Nhập dữ liệu dạng giấy vào hệ thống máy tính
Nhập dữ liệu khách hàng vào máy tính
Tạo lập bảng tính để kiểm kê dữ liệu
Tiến hành sao lưu thường xuyên nhằm lý do bảo quản
Cách thức làm việc
- Việc nhập liệu có tính chất thoải mái và không bắt buộc vềkhông gian nên đa số nhân viên nhập liệu có thể làm việc từ xa Nhân viên nhập liệu thế hệ số hoàn toàn có thể chọn một trong các hình thức làm việc như sau:
Nhân viên nhập liệu tại nhà: Nhập dữ liệu ngay tại nhà
hoặc bất cứ nơi đâu Bạn chỉ cần liên hệ qua điện thoại, mạng xã hội với team ở công ty để được hướng dẫn cụ thể
Làm việc tại công ty: Hoạt động trong môi trường văn
phòng Nếu bạn có thời gian làm full-time hoặc muốn thăng chức dần tại doanh nghiệp nào đó thì nên chọn hình thức này
Làm việc kết hợp online và offline: Nếu bạn là sinh viên
thì nên chọn hình thức này để vừa lên công ty học hỏi kinh nghiệm, vừa có thời gian làm việc linh động theo lịch học
2.2.2 Thuận lợi và khó khăn trong nhập liệu
Thuận lợi
- Hiện nay rất nhiều doanh nghiệp cần tuyển nhân viênnhập liệu hoặc cộng tác viên nhập liệu Hơn nữa, đây là công việckhông yêu cầu quá nhiều kinh nghiệm cũng như có tính chất linh
18
Trang 19động trong thời gian Vì vậy, đây là công việc phù hợp với các bạnsinh viên đang học hoặc mới ra trường.
-Ngoài ra, như đã tìm hiểu thì những “Data Entry” được thoảimái lựa chọn làm việc ở nơi mong muốn Nếu bạn là một ngườiyêu thích sự tự do, yêu thích những công việc freelancer thì bạn
có thể lựa chọn công việc này để kiếm tiền
- Thông thường, công việc cộng tác viên nhập liệu tại nhàthường được các bạn trẻ chưa có kinh nghiệm quan tâm Điều này khiến một số kẻ gian nhắm tới để lợi dụng những bạn nhẹ
dạ cả tin Để tránh gặp tình trạng này thì bạn hãy tránh xa những nơi không cung cấp hợp đồng hoặc yêu cầu đóng phí để nhận việc
2.2.2 Hướng dẫn quản trị
-Hướng dẫn khách hàng về hình thức quản trị trong admin
-Note lại phản hồi về trang web bên khách hàng
-Tiến hàng sửa lại các phản hồi bên khách hàng yêu cầu
2.3 Tìm hiểu về phân tích thiết kế hệ thống thông tin
Mô hình Use-case
Khái niệm
Use case là kỹ thuật được dùng trong kỹ thuật phần mềm và
hệ thống nhằm nắm bắt những yêu cầu chức năng của hệ thống.Use case mô tả sự tương tác đặc trưng giữa người dùng bên ngoài(actor) và hệ thống Use case cũng mô tả các yêu cầu đối với hệthống
Mỗi Use case sẽ mô tả cách thức người dùng bên ngoài tươngtác với hệ thống để đạt được mục tiêu nào đó Một hoặc nhiều kịchbản (scenario) có thể được tạo ra từ mỗi use case, tương ứng với chitiết về mỗi cách thức đạt được mục tiêu nào đó Khi mô tả Use case,
Trang 20người ta thường tránh dùng thuật ngữ kỹ thuật, thay vào đó họ sửdụng ngôn ngữ của người dùng cuối hoặc chuyên gia về lĩnh vực đó.
Để tạo ra use case, cần phải có sự hợp tác chặt chẽ giữa người phântích hệ thống và người dùng cuối Một trong những cách biểu diễntrực quan phổ biến hiện nay là lược đồ use case của UML
Use case thường được đặt tên giống động từ hoặc động từ +cụm danh từ Đặc điểm của tên Use case là ngắn gọn, cụ thể vàmiêu tả đầy đủ nghĩa của đối tượng người dùng Những động từ như
“do”, “perform”, các danh từ như ”data”, “information” nên tránhnếu có thể
Người dùng sử dụng Use case để đại diện cho các nghiệp vụtrong hệ thống
Trang 21 Các quan hệ trong Use case:
Use case «include»: Một Use case (gọi là base Use case) có thểchứa («include») chức năng của một Use case khác (gọi làinclusion Use case) như một phần xử lý của nó Nói chung, nógiả sử rằng mọi Use case «include» sẽ được gọi mỗi khi tuyếnUse case chính chạy Quan hệ này còn gọi là quan hệ sử dụng
«uses» Ví dụ, việc thực thi Use case Card Identification (Xácnhận thẻ) là một phần của Use case Withdraw (Rút tiền) Khithực thi Use case Withdraw, Use case Card Identification sẽđược gọi
Use case «extend»: Một Use case mở rộng (gọi là extensionUse case) có thể được mở rộng («extend») hành vi từ một Usecase khác (gọi là base Use case); điều này thường dùng chocác trường hợp tùy chọn, ngoại lệ, chèn thêm vào … Ví dụ, nếutrước khi thay đổi một kiểu đặt hàng cụ thể (Modify Order),người dùng có thể phải nhận được sự chấp thuận (GetApproval) từ cấp phân quyền cao hơn, thì Use case GetApproval có thể tùy chọn mở rộng («extend») Use case ModifyOrder thông thường
Use case Generalizations: Một quan hệ generalization có giữamột Use case cụ thể hơn (specifilized) đến với một Use casetổng quát hơn (generalized) Một generalized có thể cụ thể hóathành nhiều specifilized, một specifilized cũng có thể được cụthể hóa từ nhiều generalized Một quan hệ generalization giữacác Use case trình bày thành một đường đặc từ specifilized đếngeneralized, với đầu mũi tên là một tam giác rỗng chỉgeneralized Tránh nhằm lẫn với quan hệ phụ thuộc «extend»
Biểu đồ hoạt động
Trang 22 Giới thiệu
Biểu đồ hoạt động là biểu đồ mô tả các bước thực hiện, cáchành động, các nút quyết định và điều kiện rẽ nhánh để điềukhiển luồng thực hiện của hệ thống Đối với những luồng thực thi
có nhiều tiến trình chạy song song thì biểu đồ hoạt động là sự lựachọn tối ưu cho việc thể hiện Biểu đồ hoạt động khá giống vớibiểu đồ trạng thái ở tập các kí hiệu nên rất dễ gây nhầm lẫn Khi
vẽ chúng ta cần phải xác định rõ điểm khác nhau giữa hai dạngbiểu đồ này là biểu đồ hoạt động tập trung mô tả các hoạt động
và kết qủa thu được từ việc thay đổi trạng thái của đối tượng cònbiểu đồ trạng thái chỉ mô tả tập tất cả các trạng thái của một đốitượng và những sự kiện dẫn tới sự thay đổi qua lại giữa các trạngthái đó
Các thành phần của biểu đồ hoạt động
Trạng thái khởi tạo hoặc điểm bắt đầu (Initial State or StartPoint)
Trạng thái khởi tạo
Hoạt động hoặc trạng thái hoạt động (Activity or Action State):Hoạt động và sự chuyển đổi hoạt động được ký hiệu và cách sửdụng hoàn toàn giống như trạng thái trong biểu đồ trạng thái
Trang 24Luồng hoạt động
Phân làn (Swimlanes): Phân làn trong biểu đồ sử dụng là nhữngđường nét đứt thẳng đứng theo các đối tượng Phần kí hiệu nàythường được sử dụng để làm rõ luồng hoạt động của các đốitượng riêng biệt
Thời gian sự kiện (Time Event)
Thời gian sự kiện
Gửi và nhận tín hiệu (Sent and Received Signals)
Trang 25Biểu đồ tuần tự là biểu đồ dùng để xác định các trình tự diễn ra sựkiện của một nhóm đối tượng nào đó Nó miêu tả chi tiết các thôngđiệp được gửi và nhận giữa các đối tượng đồng thời cũng chú trọngđến việc trình tự về mặt thời gian gửi và nhận các thông điệp đó.
Đường đời đối tượng
Thông điệp (Message): biểu diễn bằng các đường mũi tên.Thông điệp được dùng để giao tiếp giữa các đối tượng và lớp
Thông điệp
Trang 26 Xử lí bên trong đối tượng (biểu diễn bằng các đoạn hình chữnhật rỗng nối với các đường đời đối tượng)
Xử lý bên trong đối tượng
Các loại thông điệp trong biểu đồ tuần tự
Thông điệp đồng bộ (Synchronous Message): Thông điệp đồng
bộ cần có một request trước hành động tiếp theo
Thông điệp đồng bộ
Thông điệp không đồng bộ (Asynchronous Message): Thôngđiệp không đồng bộ không cần có một request trước hành độngtiếp theo
Thông điệp không đồng bộ
Thông điệp chính mình (Self Message): Là thông điệp mà đốitượng gửi cho chính nó để thực hiện các hàm nội tại
26
Trang 27Thông điệp chính mình
Thông điệp trả lời hoặc trả về (Reply or Return Message): Làthông điệp trả lời lại khi có request hoặc sau khi kiểm tra tínhđúng đắn của một điều kiện nào đó Ví dụ thông điệp loại nàynhư tin nhắn trả về là success hoặc fail
Thông điệp trả lời hoặc trở về
Thông điệp tạo mới (Create Message): Là thông điệp được trả
về khi tạo mới một đối tượng
Thông điệp tạo mới
Thông điệp xóa (Delete Message): Là thông điệp được trả vềkhi xóa một đối tượng
Thông điệp xóa
Sơ đồ Class
Trang 28 Khái niệm
Một biểu đồ lớp chỉ ra cấu trúc tĩnh của các lớp trong hệ thống.Các lớp là đại diện cho các “đối tượng” được xử lý trong hệ thống.Các lớp có thể quan hệ với nhau trong nhiều dạng thức:
liên kết (associated - được nối kết với nhau),
phụ thuộc (dependent - một lớp này phụ thuộc vào lớp khác),
chuyên biệt hóa (specialized - một lớp này là một kết quảchuyên biệt hóa của lớp khác),
hay đóng gói ( packaged - hợp với nhau thành một đơn vị)
Tất cả các mối quan hệ đó đều được thể hiện trong biểu đồ lớp, đikèm với cấu trúc bên trong của các lớp theo khái niệm thuộc tính(attribute) và thủ tục (operation) Biểu đồ được coi là biểu đồ tĩnhtheo phương diện cấu trúc được miêu tả ở đây có hiệu lực tại bất kỳthời điểm nào trong toàn bộ vòng đời hệ thống
Một hệ thống thường sẽ có một loạt các biểu đồ lớp – không phảibao giờ tất cả các biểu đồ lớp này cũng được nhập vào một biểu đồlớp tổng thể duy nhất – và một lớp có thể tham gia vào nhiều biểu đồlớp
Trang 29Ví dụ:
Bội số quan hệ