KHẢO SÁT VÀ PHÂN TÍCH THIẾT KẾ HỆ THỐNG
Khảo sát hệ thống
Mục đích, yêu cầu của Quản lý cán bộ
- Đây là quá trình thống nhất tin học hóa quy trình quản lý cán bộ
- Nâng cao hiệu quả ứng dụng Công nghệ Thông tin
- Quản lý chặt chẽ, kịp thời các biến động về nhân sự
- Cung cấp đầy đủ tổng hợp, chi tiết thông tin về cán bộ và phòng ban
- Đáp ứng nhanh chóng nhu cầu báo cáo, thống kê cho các biểu mẫu, báo cáo về quản lý cán bộ công chức theo các quy định
Tiến hành khảo sát hệ thống
- Sơ đồ cơ cấu tổ chức bộ máy tại UBND huyện Hưng Nguyên, tỉnh Nghệ An
Thường trực Huyện Ủy Phó bí thư thường trực Huyện ủy
Bí thư Huyện Ủy HUYỆN ỦY
Phó chủ tịch UBND huyện
UVUB phụ trách Quân sự
UVUB phụ trách Công an
Chủ tịch UBND huyện ỦY VIÊN ỦY BAN
Phòng Chủ tịch Hội phụ nữ Phòng Hội khuyến học Phòng Chủ tịch MTTQ
Phòng Kế toán tài chính
Phòng Văn hóa thông tin
Phòng Đô thị xây dựng
Phòng Địa chính môi trường
Phòng Tư pháp hộ tịch
Phòng Lao động và Chính sách xã hội Phòng Thống kê
CƠ CẤU TỔ CHỨC CỦA UBND HUYỆN HƯNG NGUYÊN - TỈNH NGHỆ AN
Phó chủ tịch kinh tế huyện
Tổng quan về hệ quản trị cơ sở dữ liệu
Hệ quản trị cơ sở dữ liệu (HQTCSDL) là một hệ thống cho phép người dùng định nghĩa, tạo lập và bảo trì các cơ sở dữ liệu, đồng thời cung cấp quyền truy cập có kiểm soát đến các dữ liệu này.
- Cơ sở dữ liệu là một thành phần trong HQTCSDL
- Các HQTCSDL thường gặp như: Oracle, SQL Server, DB2, Paradox, MS Access, Sybase, Foxpro,
2.2.2 Chức năng của hệ quản trị cơ sở dữ liệu
Mô hình dữ liệu cung cấp cho người dùng khả năng mô tả và khai báo cấu trúc dữ liệu, đồng thời diễn giải các mối liên hệ giữa các dữ liệu và quy tắc quản lý áp dụng cho chúng.
- Cung cấp một giao diện giữa người dùng với cơ sở dữ liệu, giữa cơ sở dữ liệu với các hệ thống khác
- Cung cấp một ngôn ngữ bậc cao (phi thủ tục) giúp người dùng truy xuất và thao tác cơ sở dữ liệu
- Quản lý giao tác, phân quyền và an toàn dữ liệu
- Điều khiển được sự tương hợp, tính toàn vẹn khi chuyển hóa dữ liệu và có sự cố của hệ thống
- Kiểm tra độ tin cậy của dữ liệu
2.2.3 Tổng quan hệ quản trị cở dữ liệu SQL Server
A Relational Database Management System (RDBMS) utilizes Transact-SQL to facilitate data exchange between client computers and SQL Server computers.
Được tối ưu hóa cho môi trường cơ sở dữ liệu rất lớn (Very Large Database Environment) lên đến Tera-Byte, hệ thống có khả năng phục vụ hàng ngàn người sử dụng đồng thời.
There are various versions of SQL Server available, each tailored to specific usage needs and the complexity of different systems These include the Enterprise (Developer) Edition, Standard Edition, and SQL Server Express Edition.
- Một số khái niệm về hệ quản trị SQL SEVER:
Kiểu dữ liệu là các dạng lưu trữ cơ bản cho thông tin của bạn, cho phép lựa chọn giữa nhiều loại khác nhau như ký tự, số và ngày tháng.
+ Stored procedure (thủ tục thường trú – thủ tục lưu trữ): Là mã lệnh Transact
+ User – defined functions (các hàm do người dùng định nghĩa): Là mã lệnh
Transact-SQL tương tự như các mã lệnh của thủ tục lưu trữ, có thể được sử dụng trong các truy vấn cơ sở dữ liệu để chỉnh sửa cột dữ liệu hoặc hoạt động như các bảng.
+ Constraints (các ràng buộc): Là các cơ chế được hệ thống cài đặt dựa trên máy chủ nhằm bảo vệ tính toàn vẹn của dữ liệu
Triggers (bẫy lỗi) là các thủ tục tự động được kích hoạt trước hoặc sau khi thực hiện các thao tác bổ sung, sửa chữa hoặc xóa dữ liệu trong cơ sở dữ liệu Chúng giúp đảm bảo tuân thủ các quy tắc kinh doanh và các quy tắc toàn vẹn dữ liệu khác trong hệ thống cơ sở dữ liệu.
Views, hay còn gọi là các khung nhìn hoặc bảng ảo, là những truy vấn lưu trữ trong cơ sở dữ liệu (CSDL) cho phép tham chiếu đến một hoặc nhiều bảng Chúng có thể hiển thị hoặc không hiển thị một số cột nhất định trong bảng, đồng thời cũng có khả năng kết nối hai hoặc nhiều bảng với nhau.
+ Indexes (các chỉ mục): Là giúp tổ chức lại dữ liệu, nên các truy vấn chạy nhanh hơn
2.2.4 Mô hình SQL Sever và mô hình Client/Sever
+ Ứng dụng Client / Sever (Khách/chủ) là một ứng dụng gồm hai thành phần (một phần chạy trên máy trạm – client, một phần chạy trên Sever)
Phần ứng dụng phía Sever cung cấp: Sự bảo mật; Khả năng chịu lỗi; Hiệu suất;
Xử lý đồng thời; Sao lưu tin cậy
Phần ứng dụng phía Client cung cấp: Giao diện người dung; Báo cáo; Truy vấn; Biểu mẫu
Ưu điểm phía Client: Dễ sử dụng, hỗ trợ nhiều nền phần cứng; Hỗ trợ cho nhiều ứng dụng phần mềm; Thân thiện với người dùng
Ưu điểm phía Sever: Tin cậy, thực thi đồng thời; Khóa tinh vi, khả năng chịu lỗi cao; Quản lý tập trung
Hệ quản trị SQL Server cung cấp nhiều tính năng vượt trội, cho phép lưu trữ và xử lý dữ liệu hiệu quả, đáp ứng nhu cầu của nhiều hệ thống quản lý ứng dụng và máy chủ Một trong những ứng dụng nổi bật từ hệ quản trị cơ sở dữ liệu này là phần mềm quản lý cán bộ.
Thiết kế hệ thống
2.3.1 Biểu đồ phân cấp chức năng
HỆ THỐNG QUẢN LÝ CÁN BỘ
Cập nhật cán bộ Tìm kiếm-Thống kê Báo cáo
Báo cáo cán bộ Quản lý tài khoản Tổng hợp
Chỉnh sửa hồ sơ Báo cáo theo phòng ban
Lọc sau nâng lương Quản lý văn bằng
Quản lý văn bằng Quản lý chức vụ
Người quản trị hệ thống (admin) có vai trò quan trọng trong việc quản lý tài khoản, bao gồm khả năng thêm và xóa tài khoản người dùng Bên cạnh đó, admin cũng có thể bổ sung văn bằng và bộ phận khi cần thiết để đảm bảo hoạt động của hệ thống diễn ra hiệu quả.
Người dùng (Users): Có chức năng quản trị hệ thống gồm cập nhật cán bộ, tìm kiếm – thống kê và báo cáo
2.3.2 Biểu đồ luồng dữ liệu 3 mức
Biểu đồ mức khung cảnh (mức ngữ cảnh)
Các báo cáo Yêu cầu báo cáo
Thông tin về cán bộ Thông tin về cán bộ
Thông tin về cán bộ
2.3.3 Chuẩn hóa cơ sở dữ liệu
Thiết kế cơ sở dữ liệu từ các thông tin ra:
Liệt kê các phần tử thông tin bao gồm các thuộc tính
Họ tên Ngày sinh Quê quán Giới tính Dân tộc Tôn giáo
Mã trạng thái Ngày tháng Tên Lương
Mã bộ phận Tên loại cán bộ Tên bộ phận
Mã trạng thái Tên trạng thái Tên chức vụ Tên trình độ Tên văn bằng
Họ tên Ngày sinh Quê quán Giới tính Dân tộc Tôn giáo
Mã trạng thái Ngày tháng Tên Lương
Mã loại Tên loại cán bộ
Mã bộ phận Tên bộ phận
Mã chức vụ Tên chức vụ
Mã trình độ Tên trình độ
Mã văn bằng Tên văn bằng
Mã trạng thái Tên trạng thái
Hệ số sau Ngày tháng
Từ ngày Công việc Ghi chú
Mã cán bộ Nâng theo
Hệ số sau Ngày tháng Ghi chú
Từ ngày Công việc Ghi chú
Thiết kế cơ sở dữ liệu cho các chức năng hệ thống
2.4.1 Biểu đồ biểu diễn một thực thể
Loại cán bộ Bộ phận
Văn bằng Quá trình nâng lương
Quá trình công tác Trình độ
2.4.2 Sơ đồ liên kết các bảng trong cơ sở dữ liệu
- Các bảng liên kết với nhau bằng các khóa chính, khóa ngoại
- Chủ yếu là sử dụng liên kết một-nhiều để liên kết các bảng với nhau
Bảng thông tin cán bộ: tblCanBo
STT Tên trường Kiểu dữ liệu Mô tả
1 MaCB Nchar(10) Mã cán bộ(khóa chính)
2 HoTen Nvachar(50) Họ và tên cán bộ
8 MaBoPhan Nchar(10) Mã bộ phận(khóa ngoại)
9 MaChucVu Nchar(10) Mã chức vụ(khóa ngoại)
10 MaTD Nchar(10) Mã trình độ(khóa ngoại)
11 MaLoai Nchar(10) Mã loại cán bộ(khóa ngoại)
12 MaTT Nchar(10) Mã trạng thái(khóa ngoại)
13 NgayThang Date Ngày trạng thái
15 HeSo Real Hệ số lương
- Bảng chi tiết trong cơ sở dữ liệu:
Bảng quản lý bộ phận: tblBoPhan
STT Tên trường Kiểu dữ liệu Mô tả
1 MaBoPhan Nchar(10) Mã bộ phận(khóa chính)
2 TenBP Nvarchar(50) Tên bộ phận
- Bảng chi tiết trong cơ sở dữ liệu:
Bảng quản lý chức vụ: tblChucVu
STT Tên trường Kiểu dữ liệu Mô tả
1 MaChucVu Nchar(10) Mã chức vụ(khóa chính)
2 TenCV Nvarchar(50) Tên chức vụ
- Bảng chi tiết trong cơ sở dữ liệu:
Bảng quản lý trình độ học vấn, chuyên ngành: tblTrinhDo
STT Tên trường Kiểu dữ liệu Mô tả
1 MaTD Nchar(10) Mã trình độ(khóa chính)
2 TenTĐ Nvarchar(50) Tên trình độ
- Bảng chi tiết trong cơ sở dữ liệu:
Bảng quản lý loại cán bộ: tblLoaiCanBo
STT Tên trường Kiểu dữ liệu Mô tả
1 MaLoai Nchar(10) Mã loại cán bộ(khóa chính)
2 TenLoaiCB Nvarchar(50) Tên loại cán bộ
- Bảng chi tiết trong cơ sở dữ liệu:
Bảng quản lý trạng thái cán bộ: tblTrangThai
STT Tên trường Kiểu dữ liệu Mô tả
1 MaTT Nchar(10) Mã trạng thái(khóa chính)
2 TenTT Nvarchar(50) Tên trạng thái)
- Bảng chi tiết trong cơ sở dữ liệu:
Bảng quản lý văn bằng:tblVanBang
STT Tên trường Kiểu dữ liệu Mô tả
1 MaVB Nchar(10) Mã văn bằng(khóa chính)
2 TenVB Nvarchar(50) Tên văn bằng
- Bảng chi tiết trong cơ sở dữ liệu:
Bảng quản lý cán bộ văn bằng: tblCanBo_VanBang
STT Tên trường Kiểu dữ liệu Mô tả
1 ID Int Trường tự tăng(khóa chính)
2 MaCB Nchar(10) Mã cán bộ(khóa ngoại)
3 MaVB Nchar(10) Mã văn bằng(khóa ngoại)
4 Loai Nchar(10) Loại của văn bằng
- Bảng chi tiết trong cơ sở dữ liệu:
Bảng nâng lương cán bộ: tblNangLuong
STT Tên trường Kiểu dữ liệu Mô tả
1 ID Int Trường tự tăng(khóa chính)
2 MaCB Nchar(10) Mã cán bộ(khóa ngoại)
3 NangTheo Nvarchar(50) Nâng lương theo tháng, quý
4 HeSoTruoc Real Hệ số lương trước khi nâng
5 HeSoSau Real Hệ số lương sau khi nâng
6 NgayNang Date Ngày thực hiện nâng lương
- Bảng chi tiết trong cơ sở dữ liệu:
Bảng quản lý quá trình công tác, làm việc cán bộ:
STT Tên trường Kiểu dữ liệu Mô tả
1 ID Int Trường tự tăng(khóa chính)
2 MaCB Nchar(10) Mã cán bộ(khóa ngoại)
3 FromNgay Date Ngày bắt đầu công việc
4 CongViec Nvarchar(70) Tên quá trình công tác
5 Ghichu Nvarchar(200) Mô tả chi tiết quá trình
- Bảng chi tiết trong cơ sở dữ liệu:
Bảng quản lý tài khoản đăng nhập hệ thống: tblDangNhap
STT Tên trường Kiểu dữ liệu Mô tả
1 UserName Nvarchar(50) Tên đăng nhập(khóa chính)
- Bảng chi tiết trong cơ sở dữ liệu:
XÂY DỰNG PHẦN MỀM QUẢN LÝ CÁN BỘ TẠI UBND HUYỆN HƯNG NGUYÊN – TỈNH NGHỆ AN
Giới thiệu tổng quan về lập trình ứng dụng trên Windows
Các ứng dụng trên Windows mang lại sự dễ dàng cho người dùng, nhưng việc phát triển chúng lại là một thách thức lớn đối với lập trình viên Để tạo ra tính năng thân thiện và dễ sử dụng, các lập trình viên phải đầu tư rất nhiều công sức trong quá trình thiết lập và phát triển.
Lập trình trên Windows phức tạp hơn so với lập trình trên DOS, nhưng nó giải quyết nhiều vấn đề như xây dựng giao diện người dùng, quản lý bộ nhớ ảo, độc lập thiết bị vào ra, thâm nhập Internet và khả năng chia sẻ tài nguyên.
Windows cung cấp giao diện lập trình ứng dụng (API) cho phép lập trình viên truy cập các đặc trưng của hệ điều hành Các hàm này được lưu trữ trong thư viện liên kết động (DLL) và các chương trình ứng dụng sử dụng chúng thông qua các lời gọi hàm Tuy nhiên, các hàm này chỉ có thể được chia sẻ khi hệ thống đã cài đặt Windows.
Tổng quan về Net Framework
.NET Framework là một công nghệ hỗ trợ việc xây dựng và chạy các ứng dụng trên nền tảng Framework và dịch vụ Web XML
NET Framework được thiết kế để thực hiện các mục tiêu:
Để tạo ra một môi trường lập trình hướng đối tượng hiệu quả, cần thiết phải xem xét mã đối tượng được lưu trữ và thực thi cục bộ, cũng như khả năng thực thi từ xa hoặc trên nền Internet.
- Để cung cấp một môi trường thực thi mã nguồn giảm thiểu việc đóng gói phần mềm, xung đột phiên bản
Để tạo ra một môi trường thực thi an toàn cho mã, bao gồm cả các công cụ từ bên thứ ba, cần đảm bảo tuân thủ kiến trúc Net.
Để tạo ra một môi trường thực thi mã hiệu quả, cần loại bỏ các vấn đề về hiệu suất từ môi trường làm việc như script hay môi trường thông dịch Điều này giúp các nhà phát triển có kinh nghiệm vững chắc có thể làm việc với nhiều ứng dụng khác nhau, từ ứng dụng trên nền tảng Windows đến ứng dụng Web Đồng thời, việc thiết lập chuẩn làm việc cho phát triển ứng dụng sẽ đảm bảo sự thống nhất giữa các bên sử dụng và cho phép mã nguồn NET tích hợp dễ dàng với các mã nguồn khác.
.NET application được chia ra làm hai loại: cho Internet gọi là ASP.NET, gồm có Web Forms và Web Services và cho desktop gọi là Windows Forms
- Windows Forms giống như Forms của VB6 Nó hổ trợ Unicode hoàn toàn, rất tiện cho chữ Việt và thật sự Object Oriented
Web Forms feature Server Controls that operate similarly to Controls in Windows Forms, allowing for event handling through code just like in Windows Forms The primary distinction between ASP (Active Server Pages) and ASP.NET is that in ASP.NET, the visual components and code are separated, avoiding the clutter found in ASP Additionally, ASP.NET is entirely Object Oriented Web Services function like callable methods accessible via URLs on the Internet, such as credit card authorization.
Phần mềm quản lý cán bộ là ứng dụng Net chạy trên nền Windows Form C#, được phát triển bằng Visual Studio 2012 Để sử dụng ứng dụng này, người dùng cần cài đặt và thiết lập các thư viện chuẩn cần thiết để biên dịch.
Xây dựng phần mềm quản lý cán bộ
Mô hình chức năng của hệ thống:
Hệ thống quản lý Cán bộ
Quản lý các văn bằng
Cập nhật cán bộ Quản lý thông tin cán bộ
Thống kê cán bộ theo từng phòng ban, bộ phận
Tìm kiếm cán bộ Quản lý quá trình công tác
Tổng hợp báo cáo theo nhiều tiêu chí
Giao diện chức năng đăng nhập hệ thống
Khi người dùng đăng nhập vào tài khoản, hệ thống sẽ xác minh kết nối với cơ sở dữ liệu Nếu có lỗi trong kết nối do thông tin đăng nhập không chính xác, hệ thống sẽ thông báo để người dùng kiểm tra lại thông tin.
Sau khi kết nối thành công với cơ sở dữ liệu, chương trình sẽ tiến hành kiểm tra tài khoản và mật khẩu của bạn Nếu thông tin không chính xác, bạn sẽ cần nhập lại để tiếp tục.
Giao diện Form chính
- Đây là toàn bộ các chức năng đã hoàn thiện của hệ thống, với giao diện trực quan
- Các chức năng được phân chia thành 4 nhóm chính:
+ Chức năng cập nhật cán bộ
+ Chức năng tìm kiếm, thống kê
+ Chức năng xuất các báo cáo
+ Chức năng quản trị hệ thống (chỉ dùng cho tài khoản admin)
- Các nút điều khiển: bao gồm đăng nhập lại, thay đổi mật khẩu, thông tin phần mềm và thoát khỏi chương trình
Sau khi nghiên cứu về đề tài “Xây dựng phần mềm quản lý cán bộ tại UBND huyện Hưng Nguyên – tỉnh Nghệ An”, tôi đã đạt được những kết quả đáng ghi nhận.
Để xây dựng hệ thống quản lý cán bộ hiệu quả, cần nắm rõ các yêu cầu cơ bản của bài toán quản lý và cách tổ chức cơ sở dữ liệu trong quá trình phân tích và thiết kế.
Sử dụng thành thạo hệ quản trị cơ sở dữ liệu (SQL Server 2012) và công cụ lập trình MS Visual studio 2012
Biết cách tạo ra ứng dụng từ mã nguồn Net Framework chạy trên nền tảng Windows form
Xây dựng cấu trúc hệ thống rõ ràng với các chức năng cơ bản
Việc lưu trữ sẽ đơn giản, không cần phải có nơi lưu trữ lớn, các thông tin về cán bộ sẽ chính xác và nhanh chóng
Hệ thống hỗ trợ cập nhật, tìm kiếm, thống kê và báo cáo linh hoạt, giúp quản lý nhân sự một cách thuận tiện và nhanh chóng Với các tiêu chí tùy chọn cụ thể, công cụ này rút ngắn thời gian làm việc của nhân viên quản lý, giảm thiểu số lượng nhân viên cần thiết, đồng thời tránh tình trạng dư thừa và xử lý hiệu quả các yêu cầu thực tế.
Chức năng nhập và quản lý cán bộ được thực hiện logic đảm bảo cho dữ liệu được hợp lệ hoá và cập nhật chính xác
Chương trình có giao diện thân thiện, thuận tiện cho người dùng
Hướng phát triển ứng dụng sau này:
Trong đề tài này, tôi đã tiến hành phân tích và xây dựng một phần mềm đơn giản, tuy nhiên chưa đạt đến mức độ phức tạp Do hạn chế về thời gian nghiên cứu và khả năng, một số chức năng vẫn chỉ dừng lại ở ý tưởng mà chưa được thực hiện Chương trình hiện tại chưa có tính chuyên nghiệp cao, vì vậy hướng phát triển tiếp theo của đề tài này sẽ tập trung vào việc cải thiện và hoàn thiện các tính năng đã đề xuất.
Hoàn thiện các chức năng quản lý thông tin qua mạng, đồng thời mở rộng ứng dụng web form, cho phép người dùng nhập và chỉnh sửa thông tin từ xa một cách dễ dàng.
Nghiên cứu đề tài này đã giúp em củng cố kiến thức lập trình ứng dụng Windows bằng C#, cho phép em xây dựng phần mềm hoàn chỉnh Từ dự án quản lý cán bộ, em tự tin phát triển các phần mềm tương tự như quản lý thư viện và quản lý sinh viên.
Tôi xin chân thành cảm ơn cô TS Phan Lê Na đã hướng dẫn và hỗ trợ tôi hoàn thành đồ án tốt nghiệp đúng thời hạn Tôi cũng gửi lời cảm ơn tới các thầy cô trong khoa Công nghệ Thông tin đã giúp đỡ tôi trong việc nghiên cứu và tìm hiểu về lĩnh vực công nghệ phần mềm.