Cơ sở dữ liệu hướng đối tượng Quản Lí Nhân Sự

doc 13 trang phuongnguyen 2900
Bạn đang xem tài liệu "Cơ sở dữ liệu hướng đối tượng Quản Lí Nhân Sự", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • docco_so_du_lieu_huong_doi_tuong_quan_li_nhan_su.doc

Nội dung text: Cơ sở dữ liệu hướng đối tượng Quản Lí Nhân Sự

  1. Quản lí nhân sự k57c_CNTT Cơ sở dữ liệu hướng đối tượng Quản Lí Nhân Sự Mở đầu Thành viên trong nhóm: 1. Nguyễn Văn Hoành. 2. Bùi Thị Hương. 3. Phạm Thị Thêm. 4. Trần Thế Hào. 5. Trần Trọng Phương. Đề tài:Quản lí nhân sự cho công ty máy tính. Nhân sự là một yếu tố quan trọng quyết định đến sự họat động tồn tại của bất kì một cơ quan hành chính nào. Vì thế quản lí nhân sự là một đề tài quan trọng mà tất cả các cơ quan đều đề cập đến bởi nó quyết định đến sự họat động có hiệu quả hay không của cơ quan, quản lý nhân sự có tối ưu không đến sự hoạt động của cơ quan. Đặc biệt trong vấn đề quản lý nhân sự của công ty máy tính. Đây là một hình thức của công ty tư nhân, do vậy quản lý nhân sự là một vấn đề quan trọng cần quan tâm của công ty. Việc quản lý nhân sự trong công ty giúp công ty sẽ có kế hoạch cho sự hoạt động của công ty. Nội dung. Phân tích bài toán: I. Đặc điểm của hệ thống quản lí. 1. Phân cấp quản lí. Hệ thống thông tin quản lí là một hệ thống được tổ chức thống nhất từ trên xuống giúp các nhà quản lí quản lí tốt cơ sở của mình. Mọi hệ thống thông tin được quản lí từ trên xuống. Mọi thông tin được chuyển từ dưới lên và được xử lí từ trên xuống. 2. Các luồng thông tin quản lí. 2.1. Luồng thông tin vào. Luồng thông tin này bao gồm: - Các thông tin từ hệ thống cấp trên. - Các thông tin từ bên ngoài môi trường. Gồm có 3 loại thông tin: - Thông tin luân chuyển: loại thông tin đựơc cập nhật hàng ngày. - Thông tin tổng hợp định kì: loại thông tin được cấp dưới tổng hợp và báo lên cấp trên. 1
  2. Quản lí nhân sự k57c_CNTT - Thông tin tra cứu: loại thông tin dùng trong hệ thống, dùng trong một thời gian dài và ít bị thay đổi. Dùng tra cứu các thông tin luân chuyển và thông tin tổng hợp định kì. 2.2 Luồng thông tin ra. Thông tin đầu ra này bao gồm thông tin được tổng hợp từ các thông tin đầu vào và dựa trên các yêu cầu xử lí của người dùng. Thông tin ra là việc tra cứu nhanh về một đối tượng cần quan tâm. Mỗi lần tra cứu thông tin có thể khác nhau nhưng yêu cầu thông tin ra cần phải chính xác, và nhanh chóng. 3. Mô hình hệ thống thông tin trong quản lí. Cần xây dựng mô hình quản lí theo các modul: - Modul cập nhật xử lí thông tin tổng hợp và thông tin luân chuyển vì lượng thông tin này lớn đòi hỏi phải xử lí nhanh và chính xác. - Modul cập nhật thông tin tra cứu: thông tin tra cứu ít được thay đổi nó được sử dụng trong một thời gian dài, nên cần dùng đến modul này. - Modul bảng biểu báo cáo: nó được lập dựa trân mẫu báo cáo của hệ thống. II. Yêu cầu của bài toán. 1. Cập nhật hồ sơ của nhân viên. Khi tuyển nhân viên vào cần phải cập nhật về sơ yếu lí lịch của nhân viên. 2. Cập nhật về quá trình công tác. Khi một cán bộ được tăng lương hay thăng chức hoặc đi học thì thông tin cần được cập nhật. 3. Quản lí các vấn đề của nhân viên. - Quản lí tiền lương. - Quản lí chức vụ. - Quản lí trình độ. - Quản lí về công tác của nhân viên. - Quản lí sơ yếu lí lịch. - Quản lí về ngoại ngữ của nhân viên 4. Tìm kiếm và tra cứu thông tin về một đối tượng theo một cơ sở hay tiêu chí nào đó. 5. Phân tích và báo cáo về nhân sự. Đưa ra các thông tin về sự thay đổi nhân sự trong đơn vị. VD: nghỉ hưu, chuyển công tác 6. Quản trị hệ thống: thực hiện phân quyền truy nhập từng phần riêng biệt, phải rõ ràng, chi tiết, chặt chẽ. 2
  3. Quản lí nhân sự k57c_CNTT III. Bài toán Một doanh nghiệp M đã trang bị 1 máy vi tính và dự định thiết kế 1 CSDL hướng đối tượng để lưu trữ những thông tin về nhân viên trong doanh nghiệp phục vụ cho việc quản lí nhân sự của doanh nghiệp.Sau khi khảo sát nhóm quản trị CSDL A đã xây dựng mô hình được chỉ ra trong hình sau: Phân tích: Trong vấn đề quản lí nhân sự cần có những người đóng vai trò là người quản lí và điều chỉnh các thông tin cần liên quan tới nhân viên. Ta có thực thể NGUOIDUNG để đưa ra danh sách những người quản lí. Thực thể bao gồm các thuộc tính: 1. Ten_nd.khóa chính bởi không có hai người dùng có cùng tên sử dụng. 2. Matkhau. Quản lí nhân sự là ta cần quản lí các vấn đề liên quan tới hồ sơ của nhân viên. Ta có thực thể HOSO để đưa ra các thông tin liên quan tới nhân viên.Thực thể này bao gồm các thuộc tính: 1. Ma_nv là khóa chính. Vì đây là thuộc tính quan trọng giúp xác định các thông tin về nhân viên. 2. Hoten nv 3. gioitinh 4. Ngaysinh. 5. Noisinh 6. Diachi. 7. Hokhau_TT. 8. So_CMND. 9. So_dt. 10.Ngayvao_cty. 11.Donvi_ctactruoc. 12.Dantoc 13.So_BHXH. 14.So_BHYT. Để quản lí nhân sự một cách tốt ta cần có thêm việc quản lí về công tác của nhân viên đó tại công ty. Ta đưa ra thực thể NHANVIEN. Thực thể này xác định các vấn đề về phòng, chức vụ, trình độ, của nhân viên. Thực thể bao gồm các thuộc tính: 1. Ma_nv là khóa chính 2. Hoten nv 3. Ma_phong. Khóa ngoài 3
  4. Quản lí nhân sự k57c_CNTT 4. Ma_cv. Khóa ngoài. 5. Ma_td. Khóa ngoài Ta cần biết rõ xem nhân viên đó thuộc phòng ban nào? Do vậy ta đưa ra thực thể PHONG để tra cứu tìm hiểu về phòng mà nhân viên đó công tác. Thực thể PHONG bao gồm các thuộc tính: 1. Ma_phong khóa chính 2. Ten_phong. 3. So_dt. 4. Ten_truongphong. Thực thể CHUCVU giúp ta xác định chức vụ mà một nhân viên đảm nhiệm là gì? Thực thể bao gồm các thuộc tính: 1. Ma_cv khóa chính 2. Ten_cv. Thực thể TRINHDO xác định trình độ của nhân viên, để từ đó đưa ra quyết định sắp xếp vị trí cho nhân viên đó. Thực thể bào gồm các thuộc tính: 1. Ma_td khóa chính. 2. Ten_td. Để xác định lương của nhân viên ta cần có sự xác định rõ chi tiết về lương của nhân viên đó. Ta đưa ra thực thể LUONG quản lí về lương của các nhân viên. Thực thể bao gồm các thuộc tính: 1. Ma_nv khóa 2. songaylv. 3. tiencong1ngay. 4. Giotangca 5. luong1h_tangca. 6. Bhxh. 7. thuong 8. Tongluong. Trong đó: Tongluong = thuong+tiencong1ngay*songaylv+giotangca*luong1h_tangca- bhxh. Ta có các bảng thực thể sau: Bảng thực thể HOSO Thuộc tính Kiểu dữ liệu Ghi chú Manv Nvarchar(10) Khóa chính Hotennv Nvarchar(50) Gioitinh Nvarchar(5) Có 2 giá trị nam/nữ Noisinh Nvarchar(50) Ngaysinh Datetime Hokhautt Nvarchar(50) 4
  5. Quản lí nhân sự k57c_CNTT Diachi Nvarchar(50) Nơi ở hiện nay So_CMND Int So_dt Int Ngayvao_cty Datetime Donvi_ctactruoc Nvarchar(50) Dantoc Nvarchar(10) So_bhxh Int So_bhyt int Bảng thực thể NGUOIDUNG: Thuộc tính Kiểu dữ liệu Ghi chú Ten_nd Nvarchar(50) Khoá chính Matkhau Nvarchar(50) Bảng thực thể NHANVIEN. Thuộc tính Kiểu dữ liệu Ghi chú Manv Nvarchar(10) Khoá chính Hotennv Nvarchar(50) Maphong Nvarchar(10) Khóa ngoài Macv Nvarchar(10) Khóa ngoài Matd Nvarchar(10) Khóa ngoài Mann Nvarchar(10) Khóa ngoài Bảng thực thể PHONG: Thuộc tính Kiểu dữ liệu Ghi chú Maphong Nvarchar(10) Khoá chính Tenphong Nvarchar(50) So_dt Int Ten_truongphong Nvarchar(50) Bảng thực thể TRINHDO: Thuộc tính Kiểu dữ liệu Ghi chú Matd Nvarchar(10) Khoá chính Tentd Nvarchar(50) Bảng thực thể CHUCVU Thuộc tính Kiểu dữ liệu Ghi chú Macv Nvarchar(10) Khoá chính Tencv Nvarchar(50) Bảng thực thể LUONG: Thuộc tính Kiểu dữ liệu Ghi chú Maluong Nvarchar(10) Khoá chính Manv Nvarchar(10) Khóa ngoài 5
  6. Quản lí nhân sự k57c_CNTT songaylv Int Tiencong1ngay Int Sogiotangca Int Luong1h Int Bhxh Int Thuong Int Tongluong Int Quan hệ giữa các thực thể: Thực thể HOSO và thực thể NHANVIEN có quan hệ với nhau theo quan hệ 1- 1. Mỗi nhân viên có một hồ sơ của chính mình và mỗi hồ sơ lại gắn với 1 nhân viên. Thực thể NHANVIEN sẽ có những quan hệ với các thực thể PHONG, TRINHDO theo quan hệ N-1. Tức là một nhân viên chỉ có thể thuộc 1 phòng, có trình độ và ngoại ngữ nhất định( tính theo trình độ cao nhất và gần nhất). Trong khi đó 1 phòng có nhiều nhân viên. Một trình độ sẽ gắn được với nhiều nhân viên. Thực thể NHANVIEN quan hệ với thực thể NGOAINGU theo quan hệ N-N. Tức là: 1 nhân viên có thể có nhiều trình độ ngoại ngữ khác nhau, và có nhiều nhân viên cùng đạt 1 loại ngoại ngữ Thực thể NHANVIEN có quan hệ với thực thể CHUCVU theo quan hệ N-1 thì trong quan hệ này thì nhiều nhân viên có thể cùng làm 1 chức vụ. Mô hình thực thể liên kết: 6
  7. Quản lí nhân sự k57c_CNTT macv diachi tencv Ma_nv CHUCVU hokhautt Tennv SoCMND HOSO 1 giotinh Ma_phong So_dt NV- CV ngaysinh Ten_phong h noisinh 1 PHONG 1 HSNV So_dt NV-P N N 1 Ma_nv Ma_nn macv Ma_phong NHANVIEN N N Ma_td NV- NV- hoten_nv TD L 1 Ma_nv Ma_luong 1 ngaycap TRINHDO songaylv Ma_td LUONG Luong1h Luong1n tentd noicap giotangca ngaycap BHXH 7
  8. Quản lí nhân sự k57c_CNTT Cách thức hoạt động của cơ sở dữ liệu: 1. Luồng thông tin vào. Luồng thông tin này bao gồm: - Các thông tin từ hệ thống cấp trên: tức là từ trên ban giám đốc, từ các người quản lí trong công ty: các trưởng phòng, phó phòng với yêu cầu thay đổi luân chuyển nhân sự giữa các phòng trong công ty, hay tăng lương, thăng chức cho nhân viên. - Các thông tin từ bên ngoài môi trường: do yêu cầu tìm hiểu nhân sự trong công ty của các cơ quan nhà nước có thẩm quyền, xét việc đóng góp bảo hiểm cho nhân viên, Gồm có 3 loại thông tin: - Thông tin luân chuyển: loại thông tin đựơc cập nhật hàng ngày: là thông tin về việc tuyển người làm hàng ngày hay số giờ tăng ca của nhân viên trong ngày, . - Thông tin tổng hợp định kì: loại thông tin được cấp dưới tổng hợp và báo lên cấp trên: là báo cáo định kì hàng tháng về nhân sự hay lương của nhân viên đưa lên để có thể giúp công ty có kế hoạch trả lương cho nhân viên trong công ty. - Thông tin tra cứu: loại thông tin dùng trong hệ thống, dùng trong một thời gian dài và ít bị thay đổi. Dùng tra cứu các thông tin luân chuyển và thông tin tổng hợp định kì. 2 Luồng thông tin ra. Thông tin đầu ra này bao gồm thông tin được tổng hợp từ các thông tin đầu vào và dựa trên các yêu cầu xử lí của người dùng. Thông tin ra là việc tra cứu nhanh về một đối tượng cần quan tâm. Mỗi lần tra cứu thông tin có thể khác nhau nhưng yêu cầu thông tin ra cần phải chính xác, và nhanh chóng. Dựa trên yêu cầu tra cứu của thông tin đầu vào, cơ sở dữ liệu sẽ đưa ra các kết quả cho việc tìm kiếm như các thông tin về nhân viên hay thông tin về các phòng trong công ty. Sơ đồ cơ sở dữ liệu hướng đối tượng: 1. Trong quan hệ giữa hai thực thể NHANVIEN và thực thể HOSO có mối quan hệ Is- . Tức là mọi nhân viên trong công ty đều phải có hồ sơ quản lí. Thực thể NHANVIEN có mối quan hệ Is-a với tập thực thể HOSO, NHANVIEN sẽ kế thừa tất cả các thuộc tính trong lớp HOSO và có thể bổ sung thêm các thuộc tính của lớp NHANVIEN.(Quy tắc 1) 8
  9. Quản lí nhân sự k57c_CNTT Mô hình ER Ma_nv Hotennv HOSO Gioitinh Ngaysinh Noisinh Hokhautt So_CMND So_dt Diachi Ngayvao_cty Dantoc Ma_nv Hotennv Ma_phong NHANVIEN Macv Matd Mann Mô hình hướng đối tượng: Class HOSO { Ma_nv: string; Hotennv: string; Gioitinh: string; Ngaysinh: date; Noisinh: string; Hokhautt: string; So_cmnd: integer; So_dt: integer; Diachi: string; Ngayvao_cty: date; Dantoc: string; so_BHXH: integer; } Class NHANVIEN { 9
  10. Quản lí nhân sự k57c_CNTT Inherits: HOSO; Maphong: string; Macv: string; Matd: string; Mann: string; } 2. Giữa các tập thực thể NHANVIEN và TRINHDO là có mối quan hệ R với nhau. NHANVIEN và TRINHDO: có mối quan hệ theo Matd. Mô hình hướng đối tượng: Nhanvien { Manv: string; Hotennv:string; Maphong:string; Macv: string; Mann: string; } TRINHDO { Matd: string; Tentd:string; Noicap: string; Ngaycap: datetime; } 3. Quan hệ giữa thực thể NHANVIEN và NGUOIDUNG và HOSO thì tập thực thể NGUOIDUNG sẽ có quan hệ Is-a với thực thể NHANVIEN, HOSO. Tức là thực thể NGUOIDUNG sẽ được thừa kế các thuộc tính của NHANVIEN. Và NGUOIDUNG sẽ thừa kế các thuộc tính của HOSO.( quy tắc 1) HOSO { Ma_nv: string; Hotennv: string; Gioitinh: string; Ngaysinh: date; Noisinh: string; Hokhautt: string; So_cmt: integer; So_dt: integer; 10
  11. Quản lí nhân sự k57c_CNTT Diachi: string; Ngayvao_cty: date; Dantoc: string; so_BHXH: integer; } NHANVIEN { Inherits: HOSO; Maphong: string; Macv: string; Matd: string; Mann: string; } NGUOIDUNG { Tend: string; Matkhau: string; Inherits: NHANVIEN; } 4:Quan hệ giữa thực thể NHÂN VIÊN với CHỨC VỤ.Mỗi nhân viên mang một chức vụ riêng.Nhiều nhân viên cùng một chức vụ. CHỨC VỤ { Macv :string; Tencv:string; } 5:Quan hệ giữa thực thể NHÂN VIÊN với LƯƠNG.Mỗi nhân viên có một mức lương riêng. Lương { Ngaycap:datetime; Malương:string; Manv:string; Sốngàylv:int; Sotien1n:double; Sogiotangca:int; Sotien1h:double; Khenthuong:int; 11
  12. Quản lí nhân sự k57c_CNTT } Lược đồ cài đặt toàn bộ ODL tương ứng lược đồ khái niệm: Class HOSO(extend HOSO) { Attribute short manv; Attribute string(50) hotennv; Attribute string(10) gioitinh; Attribute string(50) noisinh; Attribute dateime ngaysinh; Attribute string(max) hokhautt; Attribute int socmt; Attribute datetime ngayvaoct; Attribute string(50) congtactruoc; Attribute string() Attribute int sodt; Relationship Nhanvien manv Interse has::Nhanvien; Void Hoso(); Void drop(); } Class Nhanvien extends Hoso(extent Nhanvien key manv) { Attribute short mavn; Attribute string(50)hotennv; Relationship Hoso mavn inverse::Hoso; Relationship Trinhdo matd inverse::Trinhdo; Relationship Phongban maphong inverse::Phongban; Relationship Chucvu macv inverse::Chucvu; Void Nhanvien(); Void drop(); } Class Chucvu (extent Chucvu key macv) { Attribute string(10) manv; Attribute string(50) tencv; Relationship Nhanvien macv inverse cua:nhanvien; Void Chucvu(); Void drop(); } 12
  13. Quản lí nhân sự k57c_CNTT Class Trinhdo(extent Trinhdo key matd) { Attribute string(10) matd; Attribute string(50) tentd; Attribute string(50) noicap; Attribute datetime ngaycap; Relationship Nhanvien matd inverse cua::Nhanvien; Void Trinhdo(); Void drop(); } Class Phongban(extent Phongban key maphong) { Attribute string(10) maphong; Attribute string(50) tenphong; Attribute int sodt; Attribute string(50) tentruongphong; Relationship Nhanvien maphong inverse cua:nhanvien; Void phongban(); Void drop(); } Class Luong(extent Luong) { Attribute string(10) maluong; Attribute datetime ngaycap; Attribute int songaylv; Attribute double tien1h; Attribute int sogiotangca; Attribute double tien1n Attribute int khenthuong; Attribute double tongluong; Relationship Nhanvien maluong inverse cua:nhanvien; Void luong(); Void drop(); } 13