TỔNG QUAN NGHIÊN CỨU
Lý do chọn đề tài
Hiện nay công nghệ thông tin được xem là một ngành mũi nhọn của các quốc gia, đặc biệt là các quốc gia đang phát triển, để tiến hành công nghiệp hóa và hiện đại hóa đất nước Sự bùng nổ thông tin và sự phát triển mạnh mẽ của thời đại công nghệ ngày nay, nhiều cơ quan tổ chức quản lý đã nhận thấy tầm quan trọng của việc xây dựng phần mềm để phục vụ công việc quản lý công việc Nó giúp cho người sử dụng có được thông tin nhanh chóng và chính xác, từ đó mà chất lượng công việc đạt hiệu quả cao.
Bộ Công nghệ và Truyền thông Lào (Minister of Technology and Communications) là cơ quan của chinh phủ thực hiện chức năng quản lý phát triển vĩ mô về bưu chính, viễn thông và công nghệ truyền thông (ICT) trên toàn đất nước Lào.
Bộ Công nghệ và Truyền thông Lào gồm các phòng ban: văn phòng, cục tổ chức cán bộ, cục thanh tra, cục kế hoạch và hợp tác, cục tài chính, cục bưu chính, cục tần số, cục công nghệ truyền thông, cơ quan thích ứng viễn thông, trung tâm quản lý chính phủ điển tử, trung tâm mạng Quốc gia Lào, trung tâm phòng chống và giải quyết tình huống khẩn cấp về điện tử
Từ trước đến nay công việc quản lý hồ sơ tính toán lương cán bộ trong Bộ bưu chính viễn thông và truyền thông là thu thập trên giấy, và các tính toán được lưu trữ dưới dạng tập tin excel Nên công việc quản lý hồ sơ thông tin, các công tác quản lý và tìm kiếm thông tin hồ sơ nội bộ, sự chính xác của các tính toán mức lương, tiền thưởng, gặp nhiều khó khăn Nhưng đối với phần phần mềm quản lý, các thông tin được thể hiện và lưu trữ trên hệ thống quản trị cơ sở dữ liệu, làm tăng khả năng quản lý, tra cứu và tinh giản đáng kể công việc.
Trước những yêu cầu đó tôi có ý định tin học hóa công việc quản lý hồ sơ trong Bộ Công nghệ và Truyền thông Lào Do đó tôi quyết định chọn đề tài “Phát triển phần mềm quản lý tiền lương Bộ Công nghệ và Truyền thông Lào” làm đề tài tốt nghiệp.
Bộ Công nghệ và Truyền thông Lào (Minister of Technology and Communications) là cơ quan của chinh phủ thực hiện chức năng quản lý phát triển vĩ mô về bưu chính, viễn thông và công nghệ truyền thông (ICT) trên toàn đất nước Lào Bộ trưởng là ông Thăn sa may Côm ma xít Cơ cấu tổ chức Bộ gồm có:
1 Cục Kế hoạch và Hợp tác
5 Cục Tổ chức nhân sự
2 Cơ quan Thích ứng Viễn thông
3 Viện Công nghệ Thông tin
1 Trung tâm mạng Quốc gia
2 Trung tâm Khuyến khích Sử dụng CNTT
3 Trung tâm Quản lý Thông tin Chính phủ
4 Trung tâm Ứng cứu Khẩn cấp Máy tính Quốc gia
Bộ Công nghệ và Truyền thông Lào có tổng số 1,127 nhân viên, 435 nữ.Trong đó, cán bộ Trung Ương là 499 nhân viên, 197 nữ; cán bộ địa phương là 628 nhân viên, 238 nữ Ngoài ra, có những nhân viên tại công ty phân phối nhà nước thuộc Bộ Công nghệ và Truyền thông Lào tổng 2,800 nhân viên, 1090 nữ.
Tình hình nghiên cứu
1.2.1 Mục đích và nhiệm vụ của đề tài
Bài toán quản lý tiền lương là công việc nhằm quản lý tiền lương và tất cả tiền thưởng của các cán bộ trong Bộ, trong đó sẽ gồm có hai khấu trừ là tiền khấu trừ An ninh xã hội và khấu trừ thuế
Mục đích của đề tài là phân tích thiết kế và phát triển hệ thống phần mềm quản lý tiền lương cán bộ trong Bộ Công nghệ và Truyền thông Lào Để thực hiện được mục đích trên em xác định một số nhiệm vụ cụ thể như sau:
Tìm hiểu về các quy trình và công thức tính toán mức lương, tiền thưởng, tiền khấu trừ
Khảo sát yêu cầu người sử dụng
Phân tích yêu cầu người sử dụng, các yêu cầu chức năng và phi chức năng.
Tìm hiểu về quy trình nghiệp vụ trong công tác quản lý
Phân tích thiết kế quy trình quản lý
Thực hiện thiết kế cơ sở dữ liệu đáp ứng
Lập trình phần mềm quản lý cơ sở dữ liệu và thiết kế hệ thống
1.2.2 Phạm vi nghiên cứu của đề tài
Nội dung luận văn tập trung nghiên cức thực trạng hoạt động của công tác quản lý tiền lương cán bộ trong Bộ Công nghệ và Truyền thông Lào, Để từ đó đưa ra phân tích và thiết kế hệ thống sử dụng trong cơ quan Chương trình gồm hai phần chính là phần quản lý và phần báo cáo Chương trình có các chức năng chính sau:
- Tạo tài khoản người sử dụng
- Quản lý thông tin cán bộ trong Bộ: thêm, chỉnh sửa, xóa thông tin
- Quản lý thông tin phòng ban
- Quản lý thông tin tiền lương: thực hiện tính toán tiền lương theo chính sách nhà nước
- Báo cáo thông tin cá nhân của cán bộ nội bộ
- Báo cáo tiền lương theo phòng ban, hoặc theo cá nhân
Do hệ thống còn đơn giản, các chức năng chưa được linh hoạt nên hệ thống chỉ sử dụng trong công tác quản lý tiền lương Bộ Công nghệ và Truyền thông Lào
Hệ thống được xây dựng dựa trên nhu cầu của hai đối tượng chính như
1.2.3 Công cụ và công nghệ sử dụng
Sử dụng công cụ Microsoft Visual Studio 2010 và phần mềm quản lý cơ sở dữ liệu Microsoft SQL Server 2014 Phần mềm sử dụng trong quá trình xây dựng gồm:
Microsoft Visual Studio là môi trường phát triển tích hợp (IDE) từ Microsoft.
Nó được sử dụng để phát triển phần mềm máy tính cho Microsoft Windows, cũng như các trang web, ứng dụng web và các dịch vụ web Visual Studio sử dụng nền tảng phát triển phần mềm Microsoft như Window API, Windows Forms, Windows Presentation Foundation, Windows Store và Microsoft Silverlight Nó có thể xuất được cả mã nguồn gốc và mã số quản lý.
Microsoft Visual Studio bào gồm một trình soạn thảo mã hỗ trợ IntelliSense (các thành phần hoàn thành mã) cũng như mã refactoring Các gỡ lỗi tích hợp công trình cả hai như là một trình gỡ lỗi nguồn cấp và sửa lỗi máy cấp Công cụ tích hợp bao gồm một thiết kế hình thức để xây dựng giao diện ứng dụng, thiết kế web, thiết kế lớp, và thiết kế giản đồ cơ sở dữ liệu Nó chấp nhận plug-ins để tăng cường các chức năng ở hầu hết các cấp Trong đó, có thêm hỗ trợ cho các hệ thống kiểm soát nguồn (như Subversion) và thêm bộ công cụ mới như biên tập và thiết kế hình ảnh cho các ngôn ngữ miền cụ thể hoặc bộ công cụ cho các khía cảnh khác của vòng đời phát triển phần mềm.
Microsoft Visual Studio hỗ trợ ngôn ngữ lập trình khác nhau và cho phép trình biên tập mã nguồn và gỡ lỗi để hỗ trợ (mức độ khác nhau) cho các ngôn ngữ lập trình, cung cấp một dịch vụ ngôn ngữ cụ thể Được xây dựng cho ngôn ngữ bao gồm: C, C++ và C++ / CLI (thông qua C++), VB.NET (thông qua Visual Basic NET), C# (thông qua Visual C#), và F# Hỗ trợ các ngôn ngữ khác như M, Python, và Ruby.
Windows Forms Designer được sử dụng với mục đích xây dựng GUI sử dụng Windows Forms, được bố trí dùng để xây dựng các nút điều khiển bên trong hoặc cũng có thể khóa chúng vào bên cạnh mẫu các nút điều khiển có thể trình bày dữ liệu và có thể được liên kết với các nguồn dữ liệu như: Cơ sở dữ liệu hoặc truy vấn. Ngôn ngữ Visual Basic
Microsoft SQL Server hay còn gọi là MS-SQL Server là một hệ quản trị cơ sở dữ liệu (Relational Database Management System) chạy trên môi trường Windows.
Sử dụng ngôn ngữ truy vấn Transac - SQL (T - SQL) để trao đổi dữ liệu giữa máy khách (Client) và máy chủ (Server) MS SQL Server có thể thao tác với cơ sở dữ liệu có kích thước lớn Phiên bản sử dụng trong luận văn là MS SQL Server phiên bản 12.0 (SQL server 2014, Hekaton).
T - SQL: là ngôn ngữ lập trình cơ sở dữ liệu hướng thủ tục độc quyền của Microsoft sử dụng trong SQL Server Được thiết kế để mở rộng khả năng của SQL Một số tính năng như các biến địa phương, xữ lý chuỗi/ dữ liệu được thêm vào.
SQL (Structured Query Language): là ngôn ngữ để tạo, thêm, sửa, xóa dữ liệu trên một hệ quản trị cơ sở dữ liệu quan hệ.
Microsoft SQL Server gồm các dịch vụ tích hợp SQL Server, dịch vụ SQL Server Data và dịch vụ SQL Server Master Hai bộ công cụ dành riêng cho DBAs (Database administrators) và developer như: SQL Server Data Tools sử dụng trong việc phát triển cơ sở dữ liệu và công cụ SQL Server Management Studio sử dụng trong mục đích triển khai, giám sát, quản lý cơ sở dữ liệu Ưu điểm của Microsoft SQL Server là:
- Câu lệnh đơn giản, ngắn gọn, dễ dàng sử dụng
- Được tối ưu hóa với những công nghệ mới
- Có tính năng bảo mật cao
- Tất cả các yêu cầu phức tạp của công việc đều có thể thực hiện được
Microsoft SQL Server cung cấp đầy đủ công cụ quản lý, từ giao diện GUI cho đến việc sử dụng ngôn ngữ truy vấn SQL Ngoài ra điểm mạnh của MS-SQL là sự tích hợp tốt với các ngôn ngữ lập trình của Microsoft như ASP.NET, VB.NET, C# xây dựng Winform.
Các phiên bản của Microsoft SQL Server:
- Enterprise: phiên bản đầy đủ chứa tất cả các điểm nổi bật của SQL Server
- Standard: phiên bản chuẩn có tính năng tương đối đầy đủ chỉ giới hạn các chức năng cao cấp (advanced features), nhưng giá thành rẻ hơn rất nhiều so với phiên bản Enterprise
- Developer: có đầy đủ các tính năng như bản Enterprise nhưng được chế tạo đặc biệt để giới hạn số lượng người kết nối và Server cùng một lúc
- Express: SQL Server Express dễ sử dụng và quản trị cơ sở dữ liệu đơn giản. Được tích hợp với Microsoft Visual Studio, nên dễ dàng để phát triển các ứng dụng dữ liệu, an toàn trong vùng lưu trữ, và nhanh chóng triển khai.
ĐỐI TƯỢNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU
Đặc tả yêu cầu hệ thống
Phòng tài chính là phòng chuyên quản lý các thông tin về tài chính chung của
Bộ, và gồm tiền lương cá nhân cán bộ trong nội bộ Khi có sự thay đổi thông tin cá nhân cán bộ như cấp – bậc, chức vụ, tiền thưởng hoặc chính sách tiền lương của nhà nước, cán bộ tài chính sẽ phải thực hiện cập nhật thông tin lại.
Các công thức tính toán gồm hai phần là khoản tiền lương và khoản trừ:
Tiền lương theo cấp – bậc:
Cấp – bậc của cán bộ công chức là dựa vào trình độ học vấn, chức vụ quản lý, hoặc chức vụ học thuật Các tính toán tiền lương theo cấp – bậc có công thức như sau: ề ươ ấ − ậ = ℎệ ố ươ ∗ 7,200
Trong đó, hệ số lương của cán bộ dựa theo bảng sau: bảng 2.1: hệ số lương cơ sở của cán bộ nhà nước Lào bậc cấp hệ số bậc cấp hệ số lương lương
Tiền thưởng theo chức vụ: tiền thưởng chức vụ của từng cá nhân là quy định chính sách tài chính nhà nước của Bộ tài chính đưa ra
Tiền hỗ trợ chức vụ: tiền hỗ trợ chức vụ của cán bộ sẽ là 96% của tiền thưởng theo chức vụ Có công thức tính toán như sau: ề ℎỗ ợ ℎứ ụ = tiền thưởng theo chức vụ ∗ 0.96
Tiền thưởng theo năm làm việc: tiền thưởng theo năm làm việc sẽ dựa theo chính sách chung của nhà nước, sẽ bắt đầu tính sau một năm làm việc và đến tối đa 50 năm làm việc, chi tiết theo bảng sau: bảng 2.2: mức lương thưởng theo năm làm việc của cán bộ nhà nước Lào
Năm làm việc Tiền thưởng Năm làm việc Tiền thưởng
Tiền hỗ trợ xăng: tiền hỗ trợ tiền xăng là do cục tài chính nội bộ của Bộ đưa ra để hỗ trợ cán bộ trong việc đi lại nơi làm việc.
Khấu trừ An ninh xã hội (bảo hiểm y tế): Khấu trừ An ninh xã hội là phần khấu trừ nhà nước thu 8% của tiền lương thu nhập cán bộ (không gồm tiền hỗ
7 trợ xăng), để hỗ trợ cán bộ khi xảy ra vấn đề về sức khỏe, tai nạn, Có công thức tính toán như sau:
- a: Tiền lương theo cấp – bậc
- b: Tiền thưởng theo chức vụ
- c: Tiền hỗ trợ chức vụ
- d: Tiền thưởng theo năm làm việc
Khấu trừ thuế: tiền thuế sẽ được tính chia thành 3 cấp tùy theo tổng tiền lương thu nhập từng cán bộ (sẽ không gồm tiền hỗ trợ xăng) Các chi tiết như sau:
- Tổng dượi 1 triệu: cán bộ có mức lương dưới 1 triệu sẽ không có khấu trừ thuế (miễn thuế tiền lương)
- Tổng dưới 3 triệu: cán bộ có mức lương từ 1 triệu đến 3 triệu sẽ có khấu trừ thuế như sau:
- Tổng trên 3 triệu: cán bộ có mức lương trên 3 triệu sẽ có khấu trừ thuế như sau:
2.1.1 Yêu cầu phi chức năng Để có thể sử dụng và vận hành hệ thống quản lý, phần mềm cần phải được xây dựng và phát triển đúng với mục tiêu đặt ra Phần mềm cần thỏa mã các yêu cầu phi chức năng như sau:
- Giao diện phần mềm dễ sử dụng, trực quan, thân thiện với người dùng
- Tốc độ xử lý phải nhanh chóng và chính xác
- Cấp quyền chi tiết cho người dùng
- Tính bảo mật và an toàn
Phần mềm cần thỏa mãn các yêu cầu chức năng như sau:
- Có sự phân quyền theo đúng chức năng của người sử dụng
- Hỗ trợ tạo tài khoản mới cho người sử dụng
- Hỗ trợ việc nhập thông tin cán bộ mới
- Hỗ trợ việc nhập thông tin tiền thưởng khác
- Tính toán các mức lương theo chính sách nhà nước
- Hỗ trợ quản lý thăng cấp cho cán bộ theo quy định nhà nước, có lưu quy định dưới dạng tập tin đính kèm
Mô hình hóa chức năng
2.2.1 Cây phân cấp chức năng
Theo yêu cầu trên tôi đã mô hình các chức năng dưới dạng cây phân cấp chức năng như sau:
Hệ thống Quản lý tiền lương
Sửa thông tin tài khoản xóa tài khoản Đăng nhập tài khoản
Thêm, sửa, xóa thông tin nhân viên
Tìm kiếm thông tin nhân viên
Lọc thông tin nhân viên
Thêm, sửa, xóa thông tin phòng ban
Báo cáo thông tin tăng cấp – bậc hình 2-1: cây phân cấp chức năng hệ thống
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ương tác với hệ thống dể đạt được mục tiêu nào đó Một hoặc nhiều kịch bản (scenario) có thể được tạo ra từ mỗi Use Case, tương ứng với chi tiết về mỗi cách thức đạt được mục tiêu nào đó Khi mô tả Use Case, ta tránh dùng thuật ngữ kỹ thuật, thay vào đó 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ân tích hệ thống và người dùng cuối. Đặc điểm của 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 Người dùng sử dụng Use Case để đại diện cho các nghiệp vụ trong hệ thống.
Các thành phần của Use Case gồm
- Actor : để chỉ người sử dụng hoặc một đối tượng nào đó bên ngoài có tương tác với hệ thống
- Use Case : là chức năng mà các actor sẽ sử dụng
Từ đặc tả và yêu cầu của hệ thống, có thể thấy rằng trong phần mềm sẽ bao gồm
2 Actor tham gia vào các hoạt động chính của hệ thống như sau:
Người quản lý hệ thống quản lý người dùng, quản lý phòng học được gọi là người quản lý.
Cán bộ công quản lý thông tin cán bộ, cập nhật thông tin thăng cấp, quản lý thông tin tiền lương được gọi là cán bộ tài chính.
Trong hệ thống quản lý sinh viên của tôi bao gồm các Use Case:
Actor người quản lý: o Đăng nhập tài khoản o Thêm người dùng mới o Xóa người dùng
Actor cán bộ tài chính: o Đăng nhập tài khoản o Sửa thông tin tài khoản o Quản lý thông tin cán bộ o Quản lý thông tin thăng cấp o Quản lý phòng ban o Quản lý thông tin mức lương, hệ số lương o In báo cáo thông tin cá nhân cán bộ o In báo cáo thông tin tiền lương o Báo cáo thăng cấp
2.2.3.1 Use Case Quản trị viên uc admin
Login ôincludeằ add new user admin ôextendằ
Manage User ôextendằ delete user ôextendằ view user info hình 2-2:biểu đồ Use Case Quản trị viên
2.2.3.2 Use Case Cán bộ tài chính uc Actors add new employee edit employee info ôextendằ ôextendằ delete employee edit account ôextendằ manage employee info
Accountant manage level degree update level ôextendằ
& degree ôextendằ view update info edit calculator calculate salary ôextendằ ôextendằ edit bonus money ôextendằ manage salary ôextendằ view salary info add new department ôextendằ manage department ôextendằ ôextendằ edit department delete department hình 2-3: biểu đồ Use Case cán bộ tài chính
2.2.4.1 Đăng nhập (Log in) bảng 2.3: bảng đặc tả Use Case chức năng đăng nhập
Tên Use Case Log in
Mô tả Use case cho phép người dùng đăng nhập vào hệ thống để sử dụng các chức năng quản lý thông tin sinh viên, giảng viên, lớp học, nhập điểm số sinh viên đối với người quản lý, quản lý người dùng đối với quản trị viên Actor Quản trị viên (Admin), cán bộ kế toán (Accountant) Điều kiện kích hoạt Người dùng chọn chức năng đăng nhập từ hệ thống
Tiền điều kiện Người dùng đã có tài khoản
Hậu điều kiện Đăng nhập thành công
Luồng sự kiện Hiển thị form đăng nhập
Người dùng nhập tên tài khoản và mật khẩu
Kiểm tra thông tin đăng nhập
Trả về form các chức năng theo từng Actor Luồng sự kiện phụ Nếu tài khoản và mật khẩu không đúng:
Hiển thị thông báo lỗi
Quay lại Use case đăng nhập
2.2.4.2 Đăng ký người dùng (Add new user) bảng 2.4: bảng đặc tả Use Case chức năng đăng ký người dùng
Tên Use Case Add New User
Mô tả Use case cho phép người dùng đăng ký tài khoản mới
Actor Quản trị viên (Admin) Điều kiện kích hoạt Người dùng chọn chức năng thêm người dùng mới trên giao diện Tiền điều kiện Người dùng đăng nhập vào hệ thống với vai trò quản trị viên Hậu điều kiện Đăng ký thành công tài khoản mới
Luồng sự kiện Hiển thị form đăng ký
Nhập thông tin tài khoản
Thực hiện đăng ký Luồng sự kiện phụ Nếu tài khoản đã tồn tại:
Hiển thị thông báo đã tồn tại tên tài khoản này
Quay lại use case đăng ký
2.2.4.3 Xem thông tin người dùng (View user info) bảng 2.5: bảng đặc tả Use Case chức năng xem thông tin người dùng
Tên Use Case View user info
Mô tả Use case cho phép người dùng là quản trị viên xem thông tin tất cả người dùng trong hệ thống
Actor Quản trị viên (Admin) Điều kiện kích hoạt Người dùng chọn chức năng xem thông tin người dùng Tiền điều kiện Người dùng đăng nhập vào hệ thống với vai trò quản trị viên Hậu điều kiện Đưa ra thông tin tất cả người dùng
Luồng sự kiện Hiển thị form quản lý người dùng
Người dùng chọn chức năng xem thông tin tất cả người dùng hoặc tìm kiếm người dùng theo tên, phòng ban.
Hiển thị danh sách người dùng Luồng sự kiện phụ Nếu không tồn tại nhân viên có tên theo người dùng nhập vào hoặc phòng ban chưa có thông tin cán bộ nào
Không hiển thị kết quả gì
2.2.4.4 Xóa người dùng (Delete user) bảng 2.6: bảng đặc tả Use Case chức năng xóa người dùng
Tên Use Case Delete user
Mô tả Use case cho phép người dùng là quản trị viên xóa người dùng
Actor Quản trị viên (Admin) Điều kiện kích hoạt Người dùng chọn chức năng xóa người dùng
Tiền điều kiện Người dùng đăng nhập vào hệ thống với vai trò quản trị viên Hậu điều kiện Xóa thành công
Luồng sự kiện Trên form quản lý người dùng
Người dùng chọn một tài khoản cần xóa
Chọn chức năng xóa người dùng
Hiển thị thông báo kiểm tra trước khi xóa
Hiển thị thông báo xóa thành công Luồng sự kiện phụ Nếu người dùng không chọn một tài khoản nào trước khi xóa
Hiển thị thông báo chọn một tài khoản nào đó trước khi thực hiện xóa
2.2.4.5 Sửa thông tin người dùng (Edit user info) bảng 2.7: bảng đặc tả Use Case chức năng sửa thông tin người dùng
Tên Use Case Edit user info
Mô tả Use case cho phép người dùng sửa đổi thông tin tài khoản của bản thân Actor Quản trị viên (Admin), cán bộ kế toán (Accountant) Điều kiện kích hoạt Người dùng chọn chức năng sửa thông tin tài khoản
Tiền điều kiện Người dùng đăng nhập vào hệ thống thành công
Hậu điều kiện Sửa đổi thông tin thành công
Luồng sự kiện Chọn chức năng sửa đổi thông tin tài khoản
Hiển thị form thông tin tài khoản
Người dùng thực hiện sửa đổi thông tin tài khoản
Người dùng xác nhận sửa đổi thông tin
Hiển thị thông báo sửa đổi thành công Luồng sự kiện phụ Nếu người dùng nhập thông tin không hợp lệ
Hiển thị thông báo thông tin không hợp lệ
Người dùng nhập thông tin lại
Người dùng xác nhận sửa đổi thông tin
2.2.4.6 Quản lý thông tin cán bộ (Manage employee info) bảng 2.8: bảng đặc tả Use Case chức năng quản lý thông tin cán bộ
Tên Use Case Manage employee info
Mô tả Use case cho phép người dùng quản lý thông tin cá nhân của cán bộ
Actor Cán bộ kế toán (Accountant) Điều kiện kích hoạt Người dùng chọn chức năng quản lý thông tin cán bộ
Tiền điều kiện Người dùng đăng nhập vào hệ thống với vài trò người cán bộ kế toán Hậu điều kiện Quản lý thông tin cán bộ
Luồng sự kiện Hiển thị form quản lý thông tin cán bộ
Hiển thị danh sách cán bộ
Cán bộ kế toán chọn cán bộ để sử dụng chức năng sửa, xóa, hoặc chọn chức năng thêm thông tin cá nhân của cán bộ mới chưa có trong hệ thống
Hệ thống trả về kết quả tương ứng
Thành công sẽ trở về form quản lý thông tin cán bộ Luồng sự kiện phụ Có lỗi khi thực hiện:
Hệ thống trả về lỗi cho người dùng thực hiện lại các thao tác
Quay lại Use case Quản lý thông tin cán bộ
2.2.4.7 Quản lý tiền lương (Manage salary) bảng 2.9: bảng đặc tả Use Case chức năng quản lý tiền lương
Tên Use Case Manage salary
Mô tả Use case cho phép người dùng quản lý thông tin tiền lương của cán bộ
Actor Cán bộ kế toán (Accountant) Điều kiện kích hoạt Người dùng chọn chức năng Quản lý tiền lương
Tiền điều kiện Người dùng đăng nhập vào hệ thống với vài trò người cán bộ kế toán Hậu điều kiện Quản lý tiền lương
Luồng sự kiện Hiển thị form Quản lý tiền lương
Hiển thị danh sách cán bộ và các chức năng về quản lý tiền lương
Cán bộ kế toán chọn các chức năng tính tiền lương, chức năng sửa đổi tiền thưởng, sửa đổi hệ số lương, xem thông tin tiền lương
Hệ thống trả về kết quả tương ứng
Thành công sẽ trở về form quản lý tiền lương Luồng sự kiện phụ Có lỗi khi thực hiện:
Hệ thống trả về lỗi cho người dùng thực hiện lại các thao tác
Quay lại Use case Quản lý tiền lương
2.2.4.8 Quản lý cấp – bậc cán bộ (Manage level – degree) bảng 2.10: bảng đặc tả Use Case quản lý cấp – bậc
Tên Use Case Manage level – degree
Mô tả Use case cho phép người dùng Quản lý cấp – bậc cán bộ
Actor Cán bộ kế toán (Accountant) Điều kiện kích hoạt Người dùng chọn chức năng Quản lý cấp – bậc cán bộ Tiền điều kiện Người dùng đăng nhập vào hệ thống với vài trò người cán bộ kế toán Hậu điều kiện Quản lý cấp – bậc cán bộ
Luồng sự kiện Hiển thị form Quản lý cấp – bậc cán bộ
Hiển thị danh sách cán bộ
Cán bộ kế toán chọn cán bộ để sử dụng chức năng chọn chức năng thăng cấp cán bộ
Người dùng nhập thông tin cấp – bậc mới và thêm ảnh quyết định thăng cấp đính kèm
Người dùng xác nhận thay đổi thông tin cấp – bậc
Hệ thống trả về kết quả tương ứng
Thành công sẽ trở về form Quản lý cấp – bậc Luồng sự kiện phụ Có lỗi khi thực hiện:
Người dùng nhập thông tin không hợp lệ
Hệ thống trả về lỗi cho người dùng thực hiện lại các thao tác
Quay lại Use case Quản lý cấp – bậc
2.2.4.9 Quản lý phòng ban (Manage department) bảng 2.11: bảng đặc tả Use Case chức năng quản lý phòng ban
Tên Use Case Manage department
Mô tả Use case cho phép người dùng Quản lý thông tin các phòng ban
Actor Cán bộ kế toán (Accountant) Điều kiện kích hoạt Người dùng chọn chức năng Quản lý phòng ban
Tiền điều kiện Người dùng đăng nhập vào hệ thống với vài trò người cán bộ kế toán Hậu điều kiện Quản lý thông tin phòng ban
Luồng sự kiện Hiển thị form Quản lý phòng ban
Hiển thị danh sách phòng ban
Cán bộ kế toán chọn một phòng ban để sử dụng chức năng sửa, xóa, hoặc chọn chức năng thêm thông tin phòng ban mới chưa có trong hệ thống
Hệ thống trả về kết quả tương ứng
Thành công sẽ trở về form Quản lý thông tin phòng ban
Luồng sự kiện phụ Có lỗi khi thực hiện:
Hệ thống trả về lỗi cho người dùng thực hiện lại các thao tác
Quay lại Use case Quản lý thông tin phòng ban
Xây dựng bản vẽ biểu đồ hoạt động (Activity Diagram)
2.3.1 Xác định nghiệp vụ cần phân tích Để có thể xây đựng được hệ thống, ta cần phải phân tích rõ luồng nghiệp vụ của từng công việc Chúng ta có thể thấy các Use case cần làm rõ bao gồm các chức năng như sau:
Đăng nhập: người dùng sử dụng chức năng để đăng nhập vào hệ thống
Đăng ký người dùng: quản trị viên thực hiện đăng ký tài khoản người dùng khác
Xóa người dùng: quản trị viên thực hiện xóa người dùng
Thêm, Sửa, Xóa thông tin cán bộ: người dùng sử dụng chức năng để thêm, sửa, xóa thông tin cán bộ
Tính toán lương cho cán bộ: người dùng sử dụng chức năng để tính toán mức lương cho cán bộ hiện thị trên danh sách tìm kiếm
Thay đổi hệ số tiền lương: người dùng sử dụng chức năng để thay đổi hệ số tiền lương
Thăng cấp cán bộ: người dùng sử dụng chức năng để thăng cấp cho cán bộ theo quy định của Bộ tài chính
Xem thông tin thăng cấp: người dùng sử dụng chức năng để theo dõi thông tin thăng cấp của cá nhân
Quản lý phòng ban: người dùng sử dụng chức năng để quản lý phòng ban như thêm, sửa đổi hoặc xóa thông tin phòng ban
2.3.2 Biểu đồ hoạt động là gì
Biểu đồ hoạt động là một mô hình logic được dùng để mô hình hóa cho các hoạt động trong quy trình nghiệp vụ biểu đồ chỉ ra luồng đi từ hoạt động này sang hoạt động khác trong hệ thống Nó đặc biệt quan trọng trong việc xây dựng mô hình chức năng của hệ thống và nhấn mạnh tới việc chuyển đổi quyền kiểm soát giữa các đối tượng.
Các bước xây dựng biểu đồ hoạt động như sau:
1 Xác định các nghiệp vụ cần mô tả : từ biểu đồ Use Case ta sử dụng để xác định nghiệp vụ nào cần mô tả hoạt động
2 Xác định trạng thái đầu tiên và trạng thái kết thúc
3 Xác định các hoạt động tiếp theo : xuất phát từ điểm bắt đầu, phân tích để xác định các hoạt động tiếp theo cho đến khi gặp điểm kết thúc để hoàn thành biểu đồ
2.3.3 Bản vẽ biểu đồ hoạt động (Activity Diagram)
2.3.3.1 Đăng nhập act Log in hiển thị form đăng nhập bắt đầu nhập tài khoản và mật khẩu xác nhận đăng nhập hệ thống hiển thị form chính thông báo lỗi đăng nhập kết thúc hình 2-4: biều đồ hoạt động chức năng đăng nhập
Chức năng đăng nhập: người dùng sẽ thấy form đăng nhập khi bắt đầu vào sử dụng hệ thông quản lý, form sẽ yêu cầu người dùng nhập tên tài khoản và mật khẩu.khi chọn đăng nhập, hệ thống sẽ kiểm tra có tồn tại tài khoản hay không, kiểm tra mật khẩu có khớp với tài khoản không Nếu có sẽ cho phép đăng nhập Nếu sai thông tin đăng nhập hệ thống sẽ hiển thị thông báo lỗi “Tài khoản hoặc mật khẩu không đúng,hãy kiểm tra lại” Hệ thống sẽ có hai loại người sử dụng hệ thống: quản trị viên
(admin), người quản lý (manager) Hệ thống sẽ trả về form riêng cho từng vai trò đăng nhập.
2.3.3.2 Đăng ký người dùng act Add new user không hợp lệ form đăng ký bắt đầu người dùng không hợp lệ kiểm tra tính hợp lệ đầu vào kiểm tra sự tồn tại thông báo kết quả thành công kết thúc hình 2-5: biều đồ hoạt động chức năng đăng ký người dùng
Chức năng đăng ký người dùng: hệ thống sẽ hiển thị form đăng ký để người dùng nhập thông tin cá nhân, tên tài khoản và mật khẩu Khi chọn đăng ký, hệ thống sẽ kiểm tra thông tin đã đúng với định dạng hay không Nếu không đúng thì hệ thống hiện thông báo bắt người dùng kiểm tra lại thông tin Sau đó, hệ thống tiếp tục kiểm tra sự tồn tại của tên tài khoản Nếu hệ thống đã tồn tại tên tài khoản thì sẽ hiện thông báo người dùng sử dụng tên tài khoản khác Nếu không, hệ thống sẽ hiện thông báo đăng ký thành công và thoát khỏi form đăng ký người dùng, quay trở về form quản lý người dùng.
2.3.3.3 Xóa người dùng act Delete user hiện thị danh bắt đầu sách người dùng hủy bỏ chọn tài khoản người dùng cần xóa xác định xác định xóa xóa tài khoản thành công kết thúc hình 2-6: biều đồ hoạt động chức năng xóa người dùng chức năng xóa người dùng: trên form quản lý người dùng, người dùng sẽ chọn một tài khoản nào đó để thực hiện xóa, sau đó chọn chức năng xóa Hệ thống sẽ hiện thị thông báo xác nhận xóa Người dùng chọn chấp nhận để xóa và hủy để hủy bỏ xóa.
2.3.3.4 Thêm, Sửa, Xóa thông tin cán bộ act Manage employee form quản lý bắt đầu thông tin cán bộ chọn chức năng chọn chức năng thêm cán bộ mới sửa thông tin cán xóa cán bộ bộ thông báo thành công kết thúc hình 2-7: biều đồ hoạt động chức năng thêm, sửa, xóa thông tin cán bộ
Chức năng thêm, sửa, xóa cán bộ: là phần chức năng quản lý chung cho người dùng Người dùng lựa chọn chức năng và hệ thống sẽ trả về form chức năng tương ứng cho phần quản lý cán bộ Khi thực hiện xong chức năng, hệ thống sẽ thông báo thực hiện thành công và trở về form quản lý cán bộ Ví dụ: Người dùng chọn chức năng sửa thông tin cán bộ Hệ thống sẽ hiển thị form sửa thông tin cán bộ và sau khi thực hiện xong sẽ trở về form quản lý cán bộ.
2.3.3.5 Tính toán lương cho cán bộ act Calculate salary chọn danh sách cán bắt đầu bộ chọn chức năng tính lương hiển thị danh sách cán bộ và thông tin lương hình 2-8: biều đồ hoạt động chức năng tính lương cán bộ
Chức năng tính lương cán bộ: người dùng cần phải chọn một cá nhân hoặc một danh sách cán bộ cần tính lương Sau đó, chọn chức năng tính lương Hệ thống sẽ tự động tính toán các mức lương theo quy định của từng cá nhân tương ứng Sau đó, trả về kết quả bảng danh sách cán bộ cùng với thông tin mức lương theo từng mục.
2.3.3.6 Thăng cấp – bậc cán bộ act Manage Level degree chọn cán bộ bắt đầu không hợp lệ chọn cấp - bậc mới kiểm tra tính hợp lệ hợp lệ thông báo thành công kết thúc hình 2-9: biều đồ hoạt động chức năng thăng cấp – bậc cán bộ
Chức năng thăng cấp – bậc cán bộ: người dùng chọn một cán bộ cần thăng cấp và chọn chức năng thăng cấp – bậc Hệ thống sẽ trả về form nhập cấp – bậc mới để người dùng nhập thông tin thăng cấp Hệ thống sẽ kiểm tra tính hợp lệ của thông tin người dùng đã nhập Nếu cấp nhỏ hơn cấp cũ hoặc thông tin không hợp lệ thì hệ thống sẽ hiện thông báo lỗi, nếu không sẽ hiện thông báo thành công.
2.3.3.7 Quản lý phòng ban act Manage department form quản lý bắt đầu phòng ban chọn chức năng chọn thêm phòng ban sửa đổi thông tin xóa phòng ban phòng ban thông báo thành công kết thúc hình 2-10: biều đồ hoạt động chức năng quản lý phòng ban
Xây dựng bản vẽ biểu đồ trình tự (Sequence Diagram)
2.4.1 Đăng nhập (Log in) sd sq_login người dùng form đăng userController userEntity nhập
2, yêu cầu nhập tài khoản và mật khẩu()
3 nhập tài khoản và mật khẩu
8 trả về kết quả() hình 2-11: biều đồ trình tự chức năng đăng nhập
Khi đăng nhập, hệ thống sẽ hiển thị form đăng nhập để người dùng nhập tài khoản và mật khẩu Sau khi nhập, hệ thống sẽ truyền thông tin cho Controller, kiểm tra thông tin đăng nhập trên cơ sở dữ liệu hệ thống và trả về kết quả cho người sử dụng.
2.4.2 Đăng ký người dùng (User registration) sd sq_user_registration người dùng userController userEntity form đăng ký người dùng
1 yêu cầu người dùng nhập thông tin đầu vào()
2 nhập thông tin đầu vào()
7 trả về kết quả() hình 2-12: biều đồ trình tự chức năng đăng ký người dùng
Khi đăng ký người dùng mới, hệ thống sẽ hiển thị form đăng ký người dùng yêu cầu người dùng nhập thông tin đầu vào Sau khi người dùng nhập đầy đủ thông tin, hệ thống sẽ thực hiện kiểm tra tính hợp lệ của thông tin đầu vào, sau đó kiểm tra sự tồn tại của tài khoản trên cơ sở dữ liệu Hệ thống trả về kết quả đăng ký.
2.4.3 Tính lương cho cán bộ (Calculate Salary) sd Calculate Salary người dùng form quản cán bộ chọn danh sách cán bộ() trả về danh sách cán bộ() chọn chức năng tính lương() trả về kết quả () lý Salary Salary
Controller Entity gửi thông tin() truy vấn csdl() trả về kết quả() trả về kết quả () gửi thông tin() tính lương () truy vấn csdl() trả về kết quả () trả về kết quả () hình 2-13: biều đồ trình tự chức năng tính lương cán bộ
Trước khi tính lương cho cán bộ, người dùng cần chọn danh sách cán bộ nào đó trước Sau khi chọn được danh sách, người dùng chọn chức năng tính tiền lương, hệ thống sẽ thực hiện tính toán mức lương cho từng cán bộ Trong đó, hệ thống sẽ kiểm tra mức lương cơ sở, mức lương theo năm làm việc, mức lương chức vụ, mức lương theo cấp – bậc, chi phí an sinh xã hội, phí thuế và sau đó sẽ trả về form kết quả lương với kết quả là bảng danh sách cán bộ cùng với mức lương tương ứng
2.4.4 Thăng cấp – bậc (Employee level degree increase) sd update level degree người dùng form quản lý level- level- chọn cán bộ và chọn chức cấp - bậc degree- degree- controller entity năng thăng cấp - bậc() trả về form thăng cấp - bậc() nhập thông tin () kiểm tra đầu vào() gửi thông tin() truy vấn csdl() trả về kết quả() trả về kết quả() trả về kết quả() hình 2-14: biều đồ trình tự chức năng thăng cấp – bậc cán bộ
Người dùng thực cán bộ cần thăng cấp –bậc Sau đó, chọn chức năng thăng cấp
– bậc Hệ thống sẽ trả về form quản lý cấp bậc và yêu cầu người dùng nhập thông tin cấp – bậc cùng với số quy định thăng cấp – bậc, mã số quy định này dùng để tham chiếu với tài liệu thật của nhà nước.
Thiết kế cơ sở dữ liệu
2.5.1 Xây dụng biểu đồ lớp (Class Diagram)
2.5.1.1 Xác định các lớp trong chương trình
Nghiên cứu kĩ các yêu cầu Use Case và nghiên cứu các hệ thống tương ứng để xác định lớp thông qua việc xác định các đối tượng trong hệ thống Xem xét Use Case của hệ thông tôi nhận thấy cần có các lớp như sau:
- Lớp mức lương theo năm làm việc
- Lớp mức lương theo cấp – bậc
2.5.1.2 Xác định thuộc tính của từng lớp
Sau khi xác định được các lớp tham gia trong hệ thống, chúng ta sẽ xác định thuộc tính của từng lớp đó như sau:
- Lớp phòng ban: mã phòng ban, tên phòng ban, trạng thái phòng ban
- Lớp người dùng: tên tài khoản, mật khẩu, tên người dùng, loại người dùng, trạng thái tài khoản
- Lớp cán bộ: mã cán bộ, họ tên cán bộ, họ tên tiếng Anh, số tài khoản ngân hàng, ngày sinh, ngày bắt đầu làm việc, cấp, bậc, trạng thái hôn nhân, số con cái, mã phòng ban, chức vụ, trạng thái cán bộ, tiền thưởng chức vụ, tiền hỗ trợ xăng
- Lớp tiền lương: mã index, mã cán bộ, năm làm việc, cấp, bậc, mức lương theo cấp – bậc, mức lương chức vụ, mức thưởng chức vụ, mức lương theo năm làm việc, phí an ninh xã hội, mức độ trả thuế, tiền hỗ trợ xăng, tiền lương tối đa, ngày tính lương, tài khoản người dùng
- Lớp hệ số lương: mã index, hệ số nhân
- Lớp mức lương theo năm làm việc: năm làm việc, mức lương
- Lớp mức lương theo cấp – bậc: mã cấp, mã bậc, mức lương
- Lớp thăng cấp – bậc: mã index, mã cán bộ, mã số quy định, ngày ra quy định thăng cấp, cấp cũ, bậc cũ, cấp mới, bậc mới, tài khoản người dùng
+ insert_new_department(): boolean - emp_name_en: varchar
+ update_department(): boolean - emp_facc: varchar
+ update_status(): boolean - emp_bd: date
- emp_wd: date + update_multiply_value(): void chỉnh
- e_id: int -emp_dep: int
+ update_year_money(): void - emp_status: boolean
+ get_year_money(): int - emp_pos_money: int
- e_position_money: int + insert_emp(): void lớp hoàn chỉnh IndexMoney
- in_level: int + delete_emp(): void - e_health_insu: int
- in_degree: int - e_criterion: nvarchar
- in_index: int - e_fuel_money: int
- e_date: date + get_index_bylvldeg(): void
+ check_if_already_add(): boolean
+ update_salary(): void - emp_acc: varchar
-emp_pass: varchar -date_ref: date
- emp_add: int + update(): boolean
+ check_authen(): boolean + update_upgrade(): void
2.5.2 Xây dựng mô hình thực thể liên kết
2.5.2.1 Xây dựng các thực thể
Thực thể phòng ban class class diagram department
+ update_status(): boolean hình 2-16: thực thể phòng ban bảng 2.12: bảng đặc tả thực thể phòng ban
Thuộc tính Đặc tả mã phòng ban Mã số phòng ban tên phòng ban Tên phòng ban trạng thái phòng ban Trạng thái hoạt động hay không hoạt động, thay vì xóa phòng ban
Thực thể người dùng class class diagram
+ get_emp_info(): void hình 2-17: thực thể người dùng
32 bảng 2.13: bảng đặc tả thực thể người dùng
Thuộc tính Đặc tả tên tài khoản Tên tài khoản dùng để đăng nhập mật khẩu Mật khẩu tài khoản tên người dùng Họ tên người dùng loại người dùng Loại người dùng: quản trị viên, cán bộ kế toán trạng thái tài khoản Trạng thái hoạt động của tài khoản
Thực thể cán bộ class class diagram
+ delete_emp(): void hình 2-18: thực thể cán bộ bảng 2.14: bảng đặc tả thực thể cán bộ
Thuộc tính Đặc tả mã cán bộ Mã cán bộ họ tên cán bộ Họ tên cán bộ họ tên tiếng Anh Họ tên cán bộ bằng tiếng Anh số tài khoản ngân hàng Số tài khoản ngân hàng của cá nhân ngày sinh Ngày tháng năm sinh ngày bắt đầu làm việc Ngày tháng năm vào làm việc cấp Cấp của cán bộ bậc Bậc của cán bộ trạng thái hôn nhân Trạng thái hôn nhân số con cái Số lượng con cái của cá nhân mã phòng ban Mã phòng ban, là khóa ngoài tham chiếu đến bảng phòng ban chức vụ Chức vụ của cán bộ trạng thái cán bộ Trạng thái hoạt động: 1 là đang hoạt động, 0 là đã bị xóa tiền thưởng chức vụ Tiền thưởng thêm cho từng chức vụ tương ứng tiền hỗ trợ xăng Tiền thưởng hỗ trợ tiền xăng qua lại nơi làm việc
Thực thể tiền lương class class diagram
+ check_if_already_add(): boolean
+ update_salary(): void hình 2-19: thực thể tiền lương
34 bảng 2.15: bảng đặc tả thực thể tiền lương
Thuộc tính Đặc tả mã index Mã số index mã cán bộ Mã cán bộ để tham chiếu đến bảng cán bộ năm làm việc Năm làm việc hiện tại (tính đến khi tính lương tháng tương ứng) cấp Cấp hiện tại (cấp khi tính lương) bậc Bậc hiện tại mức lương theo cấp – Lương tương ứng theo cấp – bậc hiện tại (tham chiếu theo bảng bậc indexmoney) mức lương chức vụ Mức lương theo chức vụ mức thưởng chức vụ mức thưởng theo chức vụ (hỗ trợ thêm 96% lương chức vụ) mức lương theo năm Mức lương theo năm làm việc (tham chiếu theo bảng làm việc yearmoney) phí an ninh xã hội Phí an ninh xã hội, các cán bộ nhà nước bắt buộc phải mất phí an ninh xã hội 8% của tiền lương, tiền này sẽ hỗ trợ các cán bộ khi gặp tai nạn, hỗ trợ tiền vào viện, hoặc khi mất mức độ trả thuế Mức độ trả thuế sẽ chia thành 3 mức: mức thấp, mức trung bình, mức cao Mức thấp sẽ không phải mất thuế tiền hỗ trợ xăng Tiền hỗ trợ xăng đi lại nới làm việc của từng cá nhân tiền lương tối đa Tiền lương tối đa sau khi trừ khoản phí an ninh xã hội và thuế ngày tính lương Ngày tính ra lương của cán bộ (sau mỗi tháng sẽ tính lại, vì có thể có thay đổi cấp – bậc, tiền thưởng, ) tài khoản người dùng Tài khoản cán bộ tính lương
Th ực thể hệ số lương class class diagram
+ update_multiply_value(): void hình 2-20: thực thể hệ số lương bảng 2.16: bảng đặc tả thực thể hệ số lương
Thuộc tính Đặc tả mã index Mã index hệ số nhân Hệ số nhân lương cơ sở
Thực thể mức lương theo năm làm việc class class diagram
+ get_year_money(): int hình 2-21: thực thể lương theo năm làm việc bảng 2.17: bảng đặc tả thực thể lương theo năm làm việc
Năm làm việc Số năm làm việc tiền lương theo năm Tiền lương theo năm tương ứng
Thực thể mức lương theo cấp – bậc class class diagram
+ get_index_bylvldeg(): void hình 2-22: thực thể mức lương theo cấp – bậc bảng 2.18: bảng đặc tả thực thể mức lương theo cấp – bậc
Tiền lương Tiền lương tương ứng cấp – bậc
Thực thể thăng cấp – bậc class class diagram
+ update_upgrade(): void hình 2-23: thực thể thăng cấp – bậc bảng 2.19: bảng đặc tả thực thể thăng cấp – bậc
Thuộc tính Đặc tả mã index Mã index mã cán bộ Mã số cán bộ tương ứng mã số quy định Mã số quy định thăng cấp của nhà nước ngày ra quy định Ngày ra quy định thăng cấp cấp cũ Cấp cũ của cán bộ bậc cũ Bậc cũ của cán bộ cấp mới Cấp mới theo quy định bậc mới Bậc mới theo quy định tài khoản người dùng Người nhập thông tin thăng cấp
2.5.2.2 Mối quan hệ giữa các thực thể
M ối quan hệ giữa lớp cán bộ và phòng ban erd emp_depart
Employee (1, 1) (1, n) Department work in hình 2-24: mối quan hệ giữa lớp cán bộ và phòng ban
M ối quan hệ giữa lớp cán bộ và lớp thăng cấp erd emp_upgrade
Employee (1, n) (1, 1) Uplvldeg upgrade hình 2-25: Mối quan hệ giữa lớp cán bộ và lớp thăng cấp
M ối quan hệ giữa lớp cán bộ và lớp tiền lương erd emp_salary
Employee (1, n) (1, 1) Salary have hình 2-26: Mối quan hệ giữa lớp cán bộ và lớp tiền lương
M ối quan hệ giữa lớp người dùng và lớp thăng cấp erd user_upgrade
(1, 1) Uplvldeg insert hình 2-27: Mối quan hệ giữa lớp người dùng và lớp thăng cấp
M ối quan hệ giữa lớp người dùng và lớp tiền lương erd user_salary
2.5.2.3 Xây dựng mô hình thực thể liên kết hình 2-29: mô hình thực thể liên kết