Đồ Án Tốt Nghiệp
LỜI NÓI ĐẦU
Thiết kế cơ sở dữ liệu là một giai đoạn quan trọng để xây dựng hệ thống thông
tin thành công. Trong thực tế nhiều hệ thống thông tin chỉ tồn tại trong một thời gian
ngắn và sau đó không còn đáp ứng được nhu cầu của người sử dụng. Một trong
những lý do là không quan tâm đến giai đoạn phân tích và thiết kế để rồi khi tổ chức
phát triển hệ thống không còn khả năng đáp ứng . CSDL được mô tả là tập hợp dữ
liệu của một tổ chức nào đó được lưu trữ trong máy tính,được nhiều người sử dụng và
được tổ chức theo một mô hình. Và việc phân tích thiết kế CSDL là một nhiệm vụ rất
quan trọng trong việc xây dựng một mô hình của một tổ chức hay một hệ thống.
Việc tin học hóa quản lý nhân sự mang lại nhiều lợi ích hơn so với quản lý thủ
công. Quản lý thông tin về cán bộ, công nhân viên là một bài toán quan trọng và có
nhiều ứng dụng trong việc quản lý nguồn nhân lực, chính sách cán bộ… nhằm đưa ra
các quyết định trong lĩnh vực xây dựng đội ngũ lao động đủ khả năng và trình độ đáp
ứng các nhu cầu trong giai đoạn mới.
Hệ thống quản lý nhân sự
- 1 -
Đồ Án Tốt Nghiệp
MỤC LỤC
LỜI NÓI ĐẦU 1
MỤC LỤC 2
Chương 1: GIỚI THIỆU VÀ PHÁT BIỂU BÀI TOÁN 3
1.1.Giới thiệu vấn đề 3
1.2. Hệ thống hiện tại 4
1.3. Yêu cầu tổ chức hệ thống đề xuất 4
Chương 2: GIỚI THIỆU CÔNG NGHỆ 9
2.1. Công nghệ Microsoft.net FRAMEWORK 3.0 9
2.2. Công nghệ Microsoft SQL Server 2005 12
Chương 3. THIẾT KẾ HỆ THỐNG 17
3.1. Biểu đồ tình huống – User case Diagram (UML) 17
3.2. Quan hệ thực thể và các bảng dữ liệu vật lý 38
tiêu. Nhân viên trông đợi mức lương thỏa đáng, điều kiện làm việc an toàn, sự gắn bó
với tổ chức, những nhiệm vụ có tính thách thức, trách nhiệm và quyền hạn. Mặt
khác, với tư cách là chủ lao động mong muốn nhân viên của mình sẽ tuân thủ quy
định tại nơi làm việc và các chính sách kinh doanh, thực hiện tốt mọi nhiệm vụ, đóng
góp sang kiến vào các mục tiêu kinh doanh,chịu trách nhiệm về cả việc tốt và việc dở,
liêm khiết và trung thực. Thứ hai, quản lý nguồn nhân lực là hoạt động nhằm đạt
được các mục tiêu chiến lược của doanh nghiệp. Quy trình này gồm các bước tuyển
dụng, quản lý, trả lương, nâng cao hiệu quả hoạt động, và sa thải nhân viên trong
doanh nghiệp.
Việc tin học hóa quản lý nhân sự mang lại nhiều lợi ích hơn so với quản lý thủ
công. Quản lý thong tin về cán bộ, công nhân viên là một bài toàn quan trọng và có
nhiều ứng dụng trong việc quản lý nguồn nhân lực, chính sách cán bộ… nhằm đưa ra
các quyết định trong lĩnh vực xây dựng đội ngũ lao động đủ khả năng và trình độ đáp
ứng các nhu cầu trong giai đoạn mới.
Hệ thống quản lý nhân sự
- 3 -
Đồ Án Tốt Nghiệp
1.2. Hệ thống hiện tại
Hiện tại ở một số công ty còn tồn tại cách quản lý thủ công. Cách quản lý này
rườm rà và nặng nề. Khi tìm kiếm thông tin một nhân viên trên giấy rất khó khăn và
mất thời gian. Đồng thời để thống kê, tổng kết, viết 1 báo cáo cũng rất khó khăn.
Trên thị trường hiện này đã có nhiều phần mềm quản lý nhưng giá cả lại quá
cao, tốn chi phí ban đầu và chi phí đào tạo.
Công ty SES giải pháp phần mềm mới đi vào hoạt động không lâu với đội ngũ
nhân viên trẻ năng động ,sáng tạo phù hợp với ngành công nghệ thông tin với sự thay
đổi nhanh chóng qua từng ngày. Lĩnh vực hoạt động chính của công ty là chuyên thiết
kế phần mềm web ,win cho các doanh nghiệp lớn và nhỏ với các ngôn ngữ lập trình
chính như C#, PHP…
Sau một thời gian nghiên cứu và học hỏi với sự giúp đỡ tận tình của thầy giáo
hướng dẫn và các thế hệ đi trước ở công ty em đã tiếp thu được rất nhiều kinh nghiệm
- 6 -
Quản lý thông
tin nhân viên
Quản lý thông tin chi tiết nhân viên
Quản lý thông tin về quan hệ gia đình
Quản lý thông tin về trình độ,chuyên môn
Quản lý cập nhật thông tin nhân viên
Quản lý phòng
ban
Quản lý hệ phòng ban
Quản lý thông tin về nhân viên theo phòng ban
Đồ Án Tốt Nghiệp
1.3.4. Quản lý khen thưởng kỷ luật
1.3.5. Quản lý danh mục dùng chung
1.3.6. Quản lý người dùng đăng nhập hệ thống
Hệ thống quản lý nhân sự
- 7 -
Quản lý khen
thưởng kỷ luật
Quản lý bảng khen thưởng
Quản lý bảng kỷ luật
Cập nhật danh sách khen thưởng nhân viên của
công ty
Cập nhật danh sách kỷ luật nhân viên của công
ty
Quả lý danh
mục dùng
chung
Cập nhật một lần vè dùng chung xuyên suốt cho
toàn hệ thống
đem lại cho thành quả tốt nhất. Ngày nay, do công nghệ thông tin liên tuc phát triển,
cho nên những nền tảng của công nghệ đó có thể thay đổi để điều tiết những sự phát
triển, cho nên những nền tảng của công nghệ đó có thể thay đổi để điều tiết sự phát
triển mới và những nhu cầu mới trên thị trường. Thậm chí một vài năm trở lại đây,
chỉ có một số ít người biết đến Internet. Ngày nay, Internet đã thâm nhập vào hầu như
mọi chỗ trong cuộc sống của chúng ta.
Sự khởi xướng ý tưởng .Net là mọt bước đột phá mới của Microsoft. Nó bao
hàm nhiều quan niệm hiện hữu và những triết lý. Microsoft đưa ra công nghệ mà nó
cho phép ý tưởng .Net trở thành hiện thực.
2.1.1. Các dịch vụ .Net
Để thực thi mô hình .Net, một vài khối hợp nhất (building block) cơ sở phải
được đặt đúng chỗ (các block này định rõ các dịch vụ Web được xây dựng như thế
nào) . Các dịch vụ này cố gắng để trợ giúp các nhà phát triển xây dựng các ứng
dụng .Net Microsoft định nghĩa các dịch vụ khối hợp nhất .Net sau đây:
Authentication: Khi sử dụng các công nghệ Authentication (chứng thực) cũng
như Pasport(hộ chiếu) của Microsoft các nhà phát triển tạo ra các dịch vụ cho riêng
mình và bảo vệ cá dịch vụ như mong muốn.
Mesaging: Các đặc tính Messaging(Truyền thông điệp) của .Net được xây
dựng trên MN Hotmail Web đã dựa vào dich e-mail, Microssoft Exchange Server
2000, và Instant Messaging (truyền thông điêoh tức thì). Những hệ thống truyền
thông điệp này và những đặc tính có thể được phân tán đến bất kì thiết bị nào do tính
không phụ thuộc nền tảng của chúng.
Hệ thống quản lý nhân sự
- 9 -
Đồ Án Tốt Nghiệp
Personalized Experience (kinh nghiệm cá nhân) : .Net cho người dùng nhiều
kiểm soát hơn thông qua cá quy tắc xử lý dữ liệu và quyền ưu tiên mà nó xác định rõ
dữ liệu phải được di chuyển và quản lý thế nào.
XML (Extensible Markup Language): XML được xem như một ngon ngữ
chung mà nó cho phép dữ liệu được di chuyển từ dạng này sang dạng khác trong khi
2.1.2.1 Thực thi ngôn ngữ chung CLR (Common Language Runtime)
Tất cả các ngôn ngữ lập trình đều có một runtime(thi hành), mọt dịch vụ hoạt
động cùng với ngôn ngữ lập trình. Common Language Runtime(CLR là bộ thi hành
ngôn ngữ chung) là một thành phần cỗi lõi(cơ bản nhất) của .Net. Nó cung cấp nền cơ
sở mà trên đó các ứng dụng cho .Net được xây dựng. CLR quản lý nhiều khía cạnh
của chu trình phát triển phải lưu tâm đến vấn đề quản lý bộ nhớ, những sự khởi tạo
luồng(thread) và loại bỏ nó, các thành phần bảo mật và những vấn đề tương tự. Điều
đó gây ra một số khó khăn do các nhà phát triển phải tiêu tốn quá nhiều thời gian vào
các vấn đề này. Bộ thi hành ngôn ngữ chung CLR quản lý tất cả các vấn đề nảy sinh
đó một cách tự động và giải phóng cho các nhà phát triển tập trung vào việc xử lý
giao dịch logic. CLR cung cấp một runtime chung mà nó được sử dụng với tất cả cá
ngôn ngữ. Thành phần này làm cho .Net có một khả năng “hỗ trợ mọi ngôn ngữ ”
(language-free)
2.1.2.2. Các lớp lập trình hợp nhất (Unified Programming Classes)
Những thư viện lớp lập trình hay các giao diện lập trình ứng dụng (API) được
sử dụng bởi nhiều ngôn ngữ khác nhau. Để sử dụng những ngôn ngữ lập trình khác
nhau, các nhà phát triển nghiên cứu các bộ thư viện lớp khác nhau để làm việc với
các ngôn ngữ lập trình khác nhau. Vấn đề này đã làm chậm quá trình phát triển ứng
dụng và làm cho công việc phát triển trở nên tẻ ngắt và lãng phí khá nhiều thời
gian. .Net cung cấp cá lớp lập trình hợp nhất với một bộ API dùng chung cho mọi
ngôn ngữ lập trình. Các ngôn ngữ có thể tương tác với một ngôn ngữ khác và lớp lập
trình hợp nhất này cho phép các nhà phát triển lựa chọn bất cứ ngôn ngữ nào mà họ
muốn trong khi chỉ cần duy nhất một bộ API mà thôi.
2.1.2.3. ASP.NET(Active Sever Pages .Net)
ASP.NET được sử dụng chung với các lớp lập trình mà nó có thể tạo các ứng
dụng Web một cách dễ dàng cho người lập trình. ASP.NET cung cấp cách truy cập
giao dieenjHTML chung và nó chạy trên chương trình máy phục vụ nhưng thể hiện
kết quả thông qua HTML (ví dụ text box chẳng hạn). Giao diện ASP.NET làm cho
việc phát triển các ứng dụng Web trở nên nhanh hơn do bởi các đối tượng điều khiển
chung này. Như một kết quả của các lớp lập trình chung và những đặc tính chuẩn của
Người sử dụng không thấy được bất cứ bảng bên dưới nào, vì thế những người dùng
không có kỹ năng hoặc có ý phá hoạt không thể thay đổi hoặc làm hư hỏng các bảng
này được. Điều này ngăn hoặc bất kỳ ai khác làm cấu trúc chính mà SQL Server phụ
thuộc vào.
B. Bắt buộc chính sách mật khẩu:
Khi cài Window Server 2003, có thể áp dụng chính sách mật khẩu của
Window (đang áp dụng) cho SQL Server 2005, có thể thi hành chính sách về mức độ
Hệ thống quản lý nhân sự
- 12 -
Đồ Án Tốt Nghiệp
và ngày hết hạn của mật khẩu trên SQL Server 2005 giống hệt như cho tài khoản
đăng nhập vào Windows mà trong 2000 không hỗ trợ tính năng này. Có thể tắt hoặc
mở việc bắt buộc chính sách mật khẩu cho từng đăng nhập riêng.
C. Tách biệt giản đồ và người dùng:
SQL Server 2000 không có khái niệm giản đồ (Schema): Người dùng sở hữu
các đối tượng CSDL. Nếu một người dùng User1 tạo một đối tượng myTable thì tên
của dối tượng sẽ là User1.mytable. Neus User1 xóa khi một nhân viên rời khỏi công
ty chẳng hạn, cần thay đổi tên đối tượng. Việc này gây ra vấn đề với những ứng dụng
phụ thuộc vào tên của đối tượng để truy xuất dữ liệu.
Trong SQL Server 2005 , người dùng có thể tạo giản đồ có tên khác với người
dùng để chứa các đối tượng CSDL. Ví dụ User1 có thể tạo ra giản đồ có tên là HR và
tạo một đối tượng Employee. Tham chiếu đến đối tượng đó như là HR.Employee. Vì
thế nếu User1 rời khỏi công ty, không cần thay đổi tên giản đồ, nghĩa là mã ứng dụng
vẫn được giữ nguyên bởi vì đối tượng vẫn được gọi là HR.Employee.
D. Tự động tạo chứng nhận cho SQL:
Trong SQL Server 2000, khi dùng Secure Sockets Layer (SSL) để đăng nhập
vào thể hiện SQL Server, phải tạo chứng nhận để làm cơ sở sử dụng SSL. SQL
Server 2005 tự tạo chứng nhận cho, điều đó cho phép sử dụng SSL, mà không cần
phải quan tâm đến việc tạo chứng nhận.
2.2.2. Mở rộng T-SQL:
biến môi trường hoặc mạng.
+ Không an toàn: ở mức độ này có thể truy xuất bất kỳ chức năng mong muốn
nào ngoài phạm vi SQL Server 2005. chỉ nên dùng mức độ bảo mật này nếu chắc
chắn mã được viết tốt, và tin cậy người viết mã đó.
B. Các kiểu dữ liệu mới:
- Varchar(max): Kiểu này cho phép dùng chuỗi kí tự lớn hơn 8000 byte (8000
kí tự). Tối đa là 2GB.
- Nvarchar(max): Kiểu này cho phép dùng chuỗi kí tự Unicode lớn hơn 8000
byte(4000 kí tự).Tối đa là 2 GB.
- Varbinary(max):kiểu này cho phép dùng dũ liệu nhị phân lớn hơn 8000
byte.
C. SQL Management Object (SMO):
SMO thay thế cho Distributed Management Object (DMO) được dùng trong
SQL Server 2000. SMO nhanh hơn DMO ở nhiều thiết lập bởi vì mỗi đối tượng chỉ
được thực hiện từng phần. Ví dụ, muốn liệt kê một danh sách hàng ngàn đối tượng
lên tree view (cấu trúc hình cây), không cần nạp đầy đủ thông tin của đối tượng ngay
một lần. Ban đầu chỉ cần hiển thị tên của đối tượng, khi nào cần thì mới nạp đầy đủ
Hệ thống quản lý nhân sự
- 14 -
Đồ Án Tốt Nghiệp
thông tin của đối tượng đó. Điều này giúp các tiết kiệm được nhiều thời gian cho các
tác vụ đơn giản.
D. Tự động thực thi mã kịch bản
Nếu dùng các chương trình của Microsoft như Microsoft Access, Excel, biết
rằng có thể tạo các macro(mã thực thi) cho phéo thực hiện tự động một số tác vụ nào
đó. SQL Server 2005 bây giờ có tính năng tự doodoognj tạo mã kịch bản T-SQL từ
những hành động mà dùng giao diện hình ảnh trong SQL Server Management Studio.
E. Truy cập HTTP:
Dùng giao thức HTTP để truy cập vào SQL Server 2005 là tính năng mới cho
phéo người lập trình truy cập vào SQL Server mà không phụ thuộc vòa việc IIS có
được ghi lại bởi Windows Performance Monitor. Có thể hiển thị dữ liệu dạng đồ thị,
xem hiêu suất thực thi trên khoảng thời gian đã chọn. Từ đồ thị , có thể truy cập đến
điểm có vấn đề.
C. SQL Server Agent:
Những khả năng của SQL Server Agent, thành phần hỗ trợ cho các tác vụ đã
được lập thời gian biểu, được nâng cao. Ví dụ: số tác vụ dồng thời mà SQL Server
Agent có thể chạy được tăng lên. SQL 2000 chỉ dùng SQL Agent trong những tác vụ
liên quan đến cỗ máy CSDL. Còn trong 2005, SQL server Agent thực thi các tác vụ
cho Analysis Services và Integration Services. SQL Server Agent dùng Windows
Management Instrumenttion (WMI), cho phép bạn viết mã tránh thực thi tác vụ, như
đĩa cứng đầy thì các tác vụ vẫn được thực thi thành công.
D. Cấu hình động:
Trong SQL Server 2005, có thể thực hiện bất kì thay đổi cấu hình nào mà
không cần dộng lại SQL Server, kể cả khi đang chạy trên Windows Server 2003. Bên
cạnh đó, cũng có thể thay đổi áp lực CPU và I/O nếu cần, có thể thêm nóng bộ nhớ
cho Server nếu có phần cứng thích hợp.
E. Gửi mai từ CSDL:
Đây là tính năng khá mới mẻ trong SQL Server 2005. Nó thay thế SQL mail
trong SQL Server 2000. Database Mail sủ dụng giao thức Simple Mail Transfer
Protocol (SMTP).Không còn bất kì phụ thuộc nào với Messaging Application
Programminh Interface (MAPI) và cũng không còn đòi hỏi phải có Outlook. Việc loại
bỏ những phụ thuộc này tránh được hiểu vấn đề mà người dùng SQL Server 2000 gặp
phải với SQL Mail. Ngoài ra, Database Mail cũng hỗ trợ hoạt động liên tiếp, ghi tập
tin Log và kiểm tra hoạt động.
Trên đây là một số những tính năng mới SQL Server 2005.
Hệ thống quản lý nhân sự
- 16 -
Đồ Án Tốt Nghiệp
Chương 3. THIẾT KẾ HỆ THỐNG
3.1. Biểu đồ tình huống – User case Diagram (UML)
sử dụng hệ thống tương ứng.Còn ngược lại thì trạng thai của
hệ thống không đổi
Điểm mở rộng Không có
Hệ thống quản lý nhân sự
- 18 -
Đồ Án Tốt Nghiệp
3.1.2. Yêu cầu chức năng cho nhóm người dùng “Nhân viên quản lý nhân sự”
* Sơ đồ Use- case (Use Case Diagram):
nhan vien quan ly nhan su
Tra cuu nhan vien
Thong ke nhan vien
hop dong lao dong
phong ban
User
Dang nhap
Khen thuong ky luat
quan ly thong tin nhan vien
<<user>>
<<extend>>
<<extends>>
<<extends>>
<<user>>
<<user>>
*
Hệ thống quản lý nhân sự
- 19 -
Đồ Án Tốt Nghiệp
Đặc tả Use-case
- Đặc tả Use-case :Quản lý thông tin nhân viên:
Mô tả chung Use case này cho phép người quản lý duy trì thông tin các nhân
+ Hệ thống sẽ nhắc người sử dụng xác nhận xóa nhân viên.
+ Người sử dụng đồng ý xóa.
+ Thông tin về nhân viên đã được xóa hoàn tòa ra khỏi hệ thống.
* Dòng sự kiện khác:
- Thông tin về nhân viên không đầy đủ:Nếu các thông tin được
người sử dụng hệ thống nhập vào trong luồng Thêm mới,và
chỉnh sửa thông tin không đầy đủ thì hệ thống sẽ hiển thị thông
báo lỗi. Người sử dụng hệ thống có thể bổ sung đầy đủ các thông
tin cần thiết hoặc hủy bỏ thao tác đang thực hiện, lúc này Use
case kết thúc.
+Thông tin về nhân viên không hợp lệ: Trong luồng Thêm Mới,
và Sửa nhân viên không hợp lệ thì hệ thống sẽ hiển thị thông báo
lỗi: các thông tin về nhân viên không hợp lệ và yêu cầu người sử
dụng hệ thống chỉnh sửa lại các thông tin không hợp lệ. Người sử
dụng hệ thống có thể chỉnh sửa các thông tin không chính xác
hoặc hủy bỏ thao tác đang thực hiện, lúc này Use Case kết thúc.
+Việc xác nhận không được người sử dụng hệ thống chấp nhận:
Trong luồng thêm mới, Chỉnh sửa thông tin và Xóa nhân viên,
nếu việc xác nhận các thao tác tương ứng không được người sử
dụng chấp nhận thì hệ thống sẽ trở lại trạng thái trước đó của
từng luồng sự kiện tương ứng.
Yêu cầu đặc biệt Không có
Tiền điều kiện Người sử dụng phải đăng nhập vào hệ thống trước khi Use case
này bắt đầu
Hậu điều kiện Nếu Use Case thành công thì nhân viên sẽ được thêm, sửa,hoặc
xóa khỏi hệ thống. Ngược lại , trạng thái của hẹ thống không
thay đổi.
Điểm mở rộng Không có
+ Đặc tả Use-case Tra cứu nhân viên:
Hệ thống quản lý nhân sự
nhân viên trong công ty.
Hệ thống hiển thị giao diện giao tiếp với người dùng.
Hệ thống quản lý nhân sự
- 22 -
Đồ Án Tốt Nghiệp
Hệ thống truy xuất từ CSDL, danh sách nhân viên sẽ được hiển
thị.
* Dòng sự kiện khác:
Yêu cầu đặc biệt Không có
Tiền điều kiện Người quản lý nhân sự phải đăng nhập vào hệ thống trước khi
Use case này bắt đầu.
Hậu điều kiện Nếu Use case thành công thì người đăng nhập sẽ có các quyền
sử dụng hệ thống tìm kiếm. Còn ngược lại thì trạng thái của hệ
thống không đổi.
Điểm mở rộng Không có
• Sơ đồ hoạt động (Activity Diagram):
Yeu cau xem
thong tin
Truy xuat CSDL trong
HRM SYSTEM
Xem thong tin
3.1.3. Yêu cầu chức năng cho nhóm người dùng “Quản lý phòng ban”
Hệ thống quản lý nhân sự
- 23 -
Đồ Án Tốt Nghiệp
* Sơ đồ Use-case:
NewPackage3
Quan ly phong ban
Quan ly phong ban-nhan vien
Tra cuu phong ban
chọn từ danh phòng ban của công ty.
Người sử dụng thay đổi một số thông tin của phòng ban này, bao
gồm tất cả các thông tin được chỉ ra trong phần Thêm Mới.
Sau khi sửa đổi thông tin người sử dụng chọn chức năng Cập
nhật.Hệ thống sẽ kiểm tra tính hợp lệ của các thông tin.
Thông tin về nhân viên đã được cập nhật vào hệ thống và đưa trở
lại màn hình.
- Xóa thông tin phòng ban nhân viên: Người sử dụng chọn
một nhân viên muốn xóa và chọn chức năng Xóa.
Hệ thống sẽ nhắc người sử dụng xác nhận xóa phòng ban.
Người sử dụng chấp nhận xóa.
Thông tin về phòng ban của nhân viên đã được xóa hoàn toàn ra
khỏi hệ thống.
* Dòng sự kiện khác:
- Thông tin về phòng ban không đầy đủ: Nếu các thông tin được
người sử dụng hệ thống nhập vào trong luồng Thêm mới, và
Chỉnh sửa thông tin không đầy đủ thì hệ thống sẽ hiển thị thông
báo lỗi.
Người sử dụng hệ thống có thể bổ sung đầy đủ các thông tin cần
thiết hoặc hủy bỏ thao tác đang thực hiện, lúc này Use Case kết
thúc.
- Thông tin về phòng ban không hợp lệ:Trong luồng Thêm mới
và Sửa nhân viên không hợp lệ thì hệ thống sẽ hiển thị thông báo
cá lỗi:Các thông tin về khen thưởng – kỷ luật không họp lệ và
yêu cầu người sử dụng hệ thống chỉnh sửa lại các thông tin
Hệ thống quản lý nhân sự
- 25 -