Chuyên đề Xây dựng phần mềm quản lý nhân sự cho Kho bạc Nhà nước Hải Dương

Cùng với sự phát triển của xã hội, công nghệ thông tin cũng phát triển không ngừng và ngày càng không thể thiếu trong cuộc sống hiện nay. Công nghệ thông tin đã giúp cho con người rất nhiều trong mọi lĩnh vực của đời sống xã hội. Nhờ có công nghệ thông tin mà con người đã tiết kiệm được thời gian và chi phí trong mọi công việc của mình, công nghệ thông tin cho phép con người có thể cập nhật những thông tin, tin tức mới nhất về mọi lĩnh vực của đời sống xã hội ở khắp mọi nơi trên thế giới để phục vụ cho yêu cầu của công việc cũng như đáp ứng được nhu cầu học hỏi, trao đổi kiến thức của mọi người. Phần mềm quản lý nhân sự được viết bằng ngôn ngữ Visual Basic 6.0 và sử dụng hệ quản trị cơ sở dữ liệu Microsoft Access, phần mềm đưa vào hoạt động sẽ giúp cho người quản lý tiết kiệm được thời gian, việc lưu trữ thông tin, dữ liệu cũng trở nên thuận lợi và nhanh hơn, việc đưa ra các báo cáo cũng trở nên dễ dàng và có độ chính xác cao hơn, việc sử dụng phần mềm sẽ giúp cho việc quản lý nhân sự ở cơ quan đạt hiệu quả cao, đồng thời phát huy được năng lực của cán bộ nhân viên trong cơ quan. Với kinh nghiệm và kiến thức vẫn còn hạn chế nên đề tài không thể tránh khỏi những thiếu sót, em rất mong nhận được sự đóng góp ý kiến của các thầy cô và các bạn để trong thời gian tới chương trình sẽ đáp ứng ngày càng tốt hơn cho công việc quản lý nhân sự tại Kho bạc Nhà nước Hải Dương. Em xin gửi lời cảm ơn chân thành đến thầy Phùng Tiến Hải cùng các thầy cô trong khoa Tin học kinh tế, các cô, các chú tại Kho bạc Nhà nước Hải Dương đã tận tình giúp đỡ, hướng dẫn em trong suốt quá trình thực tập này.

doc93 trang | Chia sẻ: oanh_nt | Lượt xem: 1268 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Chuyên đề Xây dựng phần mềm quản lý nhân sự cho Kho bạc Nhà nước Hải Dương, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ời bị quan sát không thực hiện giống như ngày thường. Ngoài việc lựa chọn công cụ, phân tích viên phải xác định các nguồn thông tin, những nguồn dùng trong giai đoạn đánh giá yêu cầu đương nhiên vẫn được xem xét ở đây. Tuy nhiên cần phải đi sâu hơn, phải phỏng vấn nhân viên chịu trách nhiệm về các hoạt động xử lý dữ liệu khác nhau và gặp những người quản lý họ. Khi phỏng vấn các câu hỏi cần phải chính xác hơn và phân tích viên phải hiểu chi tiết, cần lưu ý đến vai trò quan trọng của người sử dụng và lợi thế khi có họ tham gia vào trong đội ngũ phân tích. 2.3.3 Mã hoá dữ liệu. Mã hiệu được xem như là một biểu diễn theo quy ước, thông thường là ngắn gọn về mặt thuộc tính của một thực thể hoặc tập hợp thực thể. Bên cạnh những thuộc tính định danh theo ngôn ngữ tự nhiên người ta thường tạo ra những thuộc tính nhận diện mới gồm một dãy kí hiệu, chủ yếu là những chữ cái chữ số, được gán cho một ý nghĩa mang tính ước lệ. Mã hoá được xem là việc xây dựng một tập hợp những hàm thức mang tính quy ước và gán cho tập hợp này một ý nghĩa bằng cách cho liên hệ với tập hợp những đối tượng cần biểu diễn. Mã hoá là một công việc của thiết kế viên hệ thống thông tin. Có thể coi đây là việc thay thế thông tin ở dạng “tự nhiên” thành một dãy kí hiệu thích ứng với mục tiêu của người sử dụng, mục tiêu đó có thể là nhận diện nhanh chóng, không nhầm lẫn, tiết kiệm không gian lưu trữu và thời gian xử lý, thực hiện những phép kiểm tra logic hình thức hoặc thể hiện và đặc tính của đối tượng. Các phương pháp mã hoá cơ bản. - Phương pháp mã hoá phân cấp: Nguyên tắc tạo lập bộ mã này rất đơn giản, người ta phân cấp đối tượng từ trên xuống và mã số được xây dựng từ trái qua phải các chữ số được kéo dài về phía bên phải để thể hiện sự phân cấp sâu hơn. - Phương pháp mã liên tiếp: Mã kiểu này được tạo ra bởi một quy tắc tạo dãy nhất định, chẳng hạn nếu người được tuyển dụng vào làm việc trước có mã số 999 thì người tiếp theo mang mã số 1000. Ưu điểm: Không nhầm lẫn và tạo lập dễ dàng. Nhược điểm: Không gợi nhớ và không cho phép chèn thêm mã vào giữa hai mã cũ. Khi kết hợp việc mã hoá phân cấp với mã hoá liên tiếp thì ta có phương pháp mã hoá tổng hợp. - Phương pháp mã hoá theo xeri: Phương pháp chính này là sử dụng một tập hợp theo dãy gọi là xeri. Xeri được coi như một giấy phép theo mã quy định. - Phương pháp mã hoá gợi nhớ: Phương pháp này căn cứ vào đặc tính của đối tượng để xây dựng, chẳng hạn dùng việc viết tắt các chữ cái đầu làm mã như mã tiền tệ quốc tế: VND, USD… Ưu điểm: Gợi nhớ cao, có thể nới rộng dễ dàng. Nhược điểm: Ít thuận lợi cho tổng hợp và phân tích, dài hơn mã phân cấp. - Phương pháp mã hoá ghép nối: Phương pháp này chia mã ra thành nhiều trường, mỗi trường tương ứng với một đặc tính, những liên hệ có thể có giữa những tập hợp con khác nhau với đối tượng được gán mã. Ví dụ: Nhân viên có mã số A00172 050 06 01 08 thể hiện các thuộc tính của nhân viên đó như sau: A00172 050 06 01 08 Mã hồ sơ Nghề nghiệp Chức vụ Giới tính Đơn vị công tác Ưu điểm: Nhận diện không nhầm lẫn, có khả năng phân tích cao, có nhiều khả năng kiểm tra thuộc tính. Nhược điểm: Khá cồng kềnh vì phải cần nhiều kí tự, phải chọn những đặc tính ổn định nếu không bộ mã mất ý nghĩa. Yêu cầu đối với bộ mã: - Bảo đảm tỷ lệ kén chọn và tỷ lệ sâu sắc bằng 1. Tỷ lệ kén chọn = Số lượng đối tượng thoả mãn được lọc ra/Tổng số đối tượng được lọc ra. Tỷ lệ sâu sắc = Số lượng đối tượng thoả mãn lọc ra/Tổng số đối tượng thoả mãn có trong tập tin. - Có tính uyển chuyển và lâu bền. - Tiện lợi khi sử dụng. Cách thức tiến hành mã hoá: 1. Xác định tập hợp các đối tượng cần mã hoá. Xác định các xử lý cần thực hiện. Lựa chọn giải pháp mã hoá. - Xác định trật tự đẳng cấp các tiêu chuẩn lựa chọn. - Kiểm tra lại những bộ mã hiện hành. - Tham khảo ý kiến của người sử dụng. - Kiểm tra độ ổn định của các thuộc tính. - Kiểm tra khả năng thay đổi của đối tượng. 4. Triển khai mã hoá. 2.3.4 Các công đoạn của giai đoạn phân tích chi tiết. Có 7 công đoạn: Lập kế hoạch, nghiên cứu môi trường, nghiên cứu hệ thống, đưa ra chuẩn đoán và xác định các yếu tố giải pháp, đánh giá lại tính khả thi, thay đổi đề xuất dự án, chuẩn bị và trình bày báo cáo. Đây cũng là trình tự thực hiện của chúng: Sau khi lập kế hoạch, thu thập một khối lượng lớn thông tin về hệ thống đang tồn tại và về môi trường của nó. Khi có một lượng lớn thông tin, phân tích viên đưa ra chuẩn đoán tức là xác định vấn đề và nguyên nhân, đánh giá lại tính khả thi. Rất có thể một số yếu tố mới không được nêu ra trong khi đánh giá yêu cầu sẽ xuất hiện và làm thay đổi mức khả thi của dự án. Những yếu tố này cũng có thể khẳng định lại việc đánh giá tính khả thi của giai đoạn đi trước. Do có những yếu tố mới này mà đề xuất của dự án trong báo cáo về đánh giá yêu cầu sẽ phải thay đổi, dữ liệu chính xác hơn về mục tiêu cần đạt được, về thời hạn, về chi phí và lợi ích phải được đưa nhập vào đề xuất, cuối cùng thì báo cáo về nghiên cứu chi tiết phải được chuẩn bị và được trình bày cho những người có trách nhiệm quyết định. Quá trình được mô tả ở đây có tính lặp, trong thực tế rất có thể trong lúc tiến hành đưa ra chuẩn đoán, đánh giá lại tính khả thi hoặc thay đổi đề xuất phân tích viên thấy thiếu một số thông tin nào đó hoặc là về hệ thống hoặc là về môi trường, phân tích viên phải thu thập thêm thông tin, cũng có thể ngay trong khi trình bày báo cáo một số yếu tố mới nảy sinh và như vậy một số công đoạn phải làm lại. 2.3.5 Nghiên cứu môi trường của hệ thống đang tồn tại. Một hệ thông tin bị ảnh hưởng bởi rất nhiều nhân tố bên ngoài và ngược lại nó có ảnh hưởng tới các nhân tố đó. Tập hợp các nhân tố đó được gọi là các ràng buộc của hệ thống. Như chúng ta đã biết giá trị của một hệ thống thông tin phụ thuộc vào năng lực tôn trọng các ràng buộc này, khi đưa ra chuẩn đoán về hệ thống hiện thời, phân tích viên phải cố gắng để có được sự hiểu biết sâu sắc về môi trường hệ thống nghiên cứu để đánh giá mức độ phù hợp giữa các đặc trưng hệ thống với các ràng buộc của môi trường. Sự hiểu biết này cũng rất quý cho giai đoạn thiết kế hệ thống mới sau này. Trong giai đoạn đánh giá yêu cầu, một số thông tin về môi trường đã được thu thập nhưng nói chung thì những thông tin đó vẫn chưa đủ và việc tìm kiếm thông tin thêm vẫn phải tiếp tục. Thông tin về môi trường được chia làm ba lĩnh vực: tổ chức, kỹ thuật và tài chính. Khi việc nghiên cứu hệ thống đang tồn tại kết thúc, đội ngũ phân tích phải có sự hiểu biết đầy đủ về hệ thông tin nghiên cứu, có nghĩa là hiểu lý do tồn tại của nó, các mối liên hệ của nó với các hệ thống khác trong tổ chức, những người sử dụng, các bộ phận cấu thành, các phương thức xử lý, thông tin mà nó sản sinh ra, những dữ liệu mà nó thu nhận, khối lượng dữ liệu mà nó xử lý, giá cả gắn liền với thu nhập, xử lý và phân phát thông tin, hiệu quả xử lý dữ liệu và hàng loạt những cái như vậy. Thêm vào đó cần phải xác định những vấn đề có liên quan với hệ thống và nguyên nhân của chúng, khối lượng thông tin thu thập và phân tích lớn hơn nhiều so với các hoạt động trước đây. Trong công đoạn này bao gồm ba nhiệm vụ chính: thu thập thông tin, xây dựng mô hình vật lý ngoài và xây dựng mô hình logic. 2.4 THIẾT KẾ LOGIC CHO HỆ THỐNG THÔNG TIN MỚI. 2.4.1 Mục đích. Mục đích của giai đoạn này là xác định một cách chi tiết và chính xác những cái gì mà hệ thống mới phải làm để đạt được những mục tiêu đã được thiết lập từ giai đoạn phân tích chi tiết mà vẫn luôn tuân thủ các ràng buộc của môi trường. Sản phẩm đưa ra của giai đoạn thiết kế logic là mô hình hệ thống mới bằng các sơ đồ luồng dữ liệu DFD (Data Flow Diagram), các sơ đồ cấu trúc dữ liệu DSD (Data Structure Diagram), các sơ đồ phân tích tra cứu và các phích logic của từ điển hệ thống. Mô hình này phải được những người sử dụng xem xét và thông qua đảm bảo rằng chúng đáp ứng tốt các yêu cầu của họ. Xây dựng mô hình logic cho hệ thống thông tin mới là một quá trình tương đối phức tạp, cần phải có một sự hiểu biết sâu sắc hệ thống thông tin đang nghiên cứu, cần phải biết làm chủ các công cụ tạo ra và hoàn chỉnh các tài liệu hệ thống mức lô gíc và cần phải am hiểu tinh tế những khái niệm cơ bản của cơ sở dữ liệu, cần phải có một phương pháp thực hiện các công việc thiết kế logic một cách có cấu trúc. Việc thiết kế logic nên bắt đầu từ việc thiết kế cơ sở dữ liệu cho hệ thống thông tin mới. Cách tiếp cận như vậy đảm bảo tất cả các dữ liệu cần thiết, chỉ những dữ liệu đó sẽ được nhập vào và lưu trữ trong hệ thống và chỉ những xử lý yêu cầu sẽ được thực hiện, như vậy công việc phát triển hệ thống thông tin sẽ được xác định rõ ràng. 2.4.2 Thiết kế cơ sở dữ liệu và tính nhu cầu bộ nhớ. Thiết kế cơ sở dữ liệu là xác định yêu cầu thông tin của người sử dụng hệ thống thông tin mới. Công việc này đôi khi là rất phức tạp, đó không chỉ là việc phân tích viên gặp gỡ những người sử dụng và hỏi họ danh sách dữ liệu mà họ cần để hoàn thành có hiệu quả công việc đang làm. Việc xác định nhu cầu thông tin là một công việc rất khó thực hiện và không tồn tại một phương pháp nào thích hợp cho mọi hoàn cảnh, những nguyên nhân để giải thích cho sự khó khăn này được nhóm thành 4 loại sau: - Đặc trưng của nhiệm vụ mà hệ thống thông tin phải trợ giúp: + Mức độ cấu trúc của nhiệm vụ. + Mức độ phức tạp và biến động của nhiệm vụ. - Đặc trưng của hệ thống thông tin: + Kích cỡ của hệ thống thông tin (chi phí về tiền và thời gian dự kiến để phát triển). + Sự phức tạp của công nghệ được sử dụng. + Mức phân tán địa lý của người sử dụng và nguồn dữ liệu. + Số lượng người sử dụng. - Đặc trưng của người sử dụng: + Thiên hướng đối với sự thay đổi. + Kinh nghiệm trong nhiệm vụ mà hệ thống thông tin cần trợ giúp. + Kinh nghiệm tham gia vào việc phát triển hệ thống thông tin. - Đặc trưng của những người phát triển hệ thống: + Sự lành nghề trong việc phát triển hệ thống thông tin. + Kinh nghiệm với những hệ thống thông tin tương tự. + Sự hiểu biết về nhiệm vụ phải trợ giúp. Bốn cách thức cơ bản để xác định yêu cầu thông tin: Hỏi người sử dụng cần thông tin gì? Phương pháp đi từ hệ thống thông tin đang tồn tại. Tổng hợp từ đặc trưng của nhiệm vụ mà hệ thống thông tin trợ giúp. Phương pháp thực nghiệm. * Thiết kế cơ sở dữ liệu logic đi từ các thông tin ra: Bước 1: Xác định các đầu ra. Liệt kê toàn bộ các thông tin đầu ra. Nội dung, khối lượng, tần suất và nơi nhận của chúng. Bước 2: Xác định các tệp cần thiết cung cấp đủ dữ liệu cho việc tạo ra từng đầu ra. Bước 3: Tích hợp các tệp để chỉ tạo ra một cơ sở dữ liệu. Bước 4: Xác định khối lượng dữ liệu cho từng tệp và toàn bộ sơ đồ. Bước 5: Xác định liên hệ logic giữa các tệp và thiết lập sơ đồ cấu trúc dữ liệu. 2.4.3 Thiết kế logic xử lý. Các sơ đồ logic của xử lý chỉ làm rõ những quan hệ có tính chất ngữ nghĩa của các dữ liệu và không quan tâm tới những yếu tố mang tính tổ chức như ai thực hiện xử lý, ở đâu, khi nào và như thế nào? Để biểu diễn những hoạt động như vậy chúng ta phải dùng những khái niệm sự kiện, công việc và kết quả. Sự kiện: việc thực khi đến nó làm khởi sinh sự thực hiện của một hoặc nhiều việc khác. Công việc: là một tập hợp các xử lý có thể thực hiện có chung các sự kiện khởi sinh. Kết quả: Sản phẩm của việc thực hiện một công việc, kết quả có chung một bản chất như sự kiện, nó có thể là cái phát sinh việc thực hiện một công việc khác. Về mặt logic thì một hệ thống thông tin bao gồm các xử lý liên quan tới ba loại hoạt động: Thực hiện các tra cứu thông tin, cập nhật dữ liệu vào các tệp và hợp lệ hoá dữ liệu. Phân tích tra cứu là tìm hiểu xem, bằng cách nào để có được những thông tin đầu ra từ các tệp đã được thiết kế trong phần thiết kế cơ sở dữ liệu. Phân tích tra cứu một mặt giúp cho việc xem xét lại khâu thiết kế cơ sở dữ liệu đã hoàn tất chưa, nghĩa là cơ sở dữ liệu đã đủ để sản sinh các đầu ra hay không, mặt khác nó phát triển logic xử lý để tạo các thông tin ra, đối với mỗi đầu ra người ta tìm cách xác định các tệp cần thiết, thứ tự mà chúng được đọc và các xử lý được thực hiện trên các dữ liệu đã đọc, kết quả của việc phân tích này sẽ được thể hiện thành sơ đồ phân tích tra cứu và đưa vào các phích xử lý trong từ điển hệ thống. 2.5 THIẾT KẾ VẬT LÝ NGOÀI. 2.5.1 Mục đích. Thiết kế vật lý ngoài là mô tả chi tiết phương án của giải pháp đã được chọn ở giai đoạn trước đây. Đây là một giai đoạn rất quan trọng vì những mô tả chính xác ở đây có ảnh hưởng và tác động trực tiếp tới công việc thường ngày của những người sử dụng. Các nhiệm vụ chính của thiết kế vật lý bao gồm: Lập kế hoạch, thiết kế chi tiết các giao diện vào ra, thiết kế cách thức tương tác với phần tin học hoá, thiết kế các thủ tục thủ công, chuẩn bị và trình bày báo cáo. Thiết kế các giao diện là xác định hệ thống thông tin trình bày thông tin như thế nào cho người sử dụng khi nhập dữ liệu vào hệ thống hoặc đưa kết quả ra. Thiết kế cách thức tương tác với phần tin học hoá là xác định cách thức mà người sử dụng hội thoại với hệ thống thông tin và thiết kế các thủ tục thủ công cần phải đặc trưng hoá mọi tiến trình thủ công quanh việc sử dụng hệ thống thông tin tin học hoá. 2.5.2 Lập kế hoạch và một số nguyên tắc thực hiện. Ở đây phân tích viên phải lựa chọn phương tiện, khuôn dạng của các dòng vào/ra, xác định cách thức hội thoại với phần tin học hoá của hệ thống và cách thức thực hiện các thủ tục thủ công, phân bố thời gian và lập danh mục các sản phẩm. Đó chính là việc lập kế hoạch cho giai đoạn này. Theo Joseph Dusmas thì thiết kế vật lý ngoài một hệ thống thông tin phải dựa vào 7 nguyên tắc chung sau đây: - Đảm bảo rằng người sử dụng luôn đang kiểm soát hệ thống, có nghĩa là anh ta luôn luôn có thể thông báo cho hệ thống những việc phải thực hiện. - Thiết kế hệ thống theo thói quen và kinh nghiệm của người sử dụng. - Gắn chặt chẽ với các thuật ngữ, dạng thức và các thủ tục đã được dùng. - Che khuất những bộ phận bên trong của các phần mềm và phần cứng tạo thành hệ thống. - Cung cấp thông tin tư liệu trên màn hình. - Giảm tới mức tối thiểu lượng thông tin mà người sử dụng phải nhớ trong khi sử dụng hệ thống. -Dựa vào những quy tắc đã được chấp nhận về đồ hoạ, ký hoạ khi thể hiện thông tin trên màn hình hoặc trên giấy. Thiết kế vật lý ngoài yêu cầu phân tích viên phải có khả năng đặt mình vào vị trí người sử dụng, không bao giờ được quên rằng hệ thống thông tin sẽ được sử dụng bởi những người có hiểu biết ít nhiều về tin học và sẽ thực hiện một công việc nào đó trong một môi trường riêng. Phân tích viên phải luôn luôn tiếp tục tính đến khía cạnh chi phí, lợi ích vì mỗi một đề xuất khi thiết kế luôn đi liền với những chi phí và lợi ích khác nhau. Phân tích viên phải luôn luôn có quan điểm của mình khi chọn giải pháp vật lý tốt nhất. Đối với mỗi một giải pháp được xem xét, phân tích viên phải đánh giá lợi ích hữu hình và lợi ích vô hình, phải so sánh chúng với chi phí phải bỏ ra, nhất là khi các chi phí của giải pháp quá cao. 2.6 TRIỂN KHAI HỆ THỐNG THÔNG TIN. 2.6.1 Mục đích. Giai đoạn triển khai hệ thống thông tin có nhiệm vụ đưa ra các quyết định có liên quan tới việc lựa chọn công cụ phát triển hệ thống, tổ chức vật lý của cơ sở dữ liệu, cách thức truy nhập tới các bản ghi của của các tệp và những chương trình máy tính khác nhau cấu thành nên hệ thống thông tin. Việc viết các chương trình máy tính, thử nghiệm các chương trình, các môđun và toàn bộ hệ thống cũng được thực hiện trong giai đoạn này. Mục tiêu chính của giai đoạn triển khai hệ thống là xây dựng một hệ thống hoạt động tốt, kết quả quan trọng nhất của giai đoạn này là phần tin học hoá của hệ thống thông tin - đó chính là phần mềm. Việc hoàn thiện mọi tài liệu hệ thống và tài liệu hướng dẫn cho người sử dụng, cho thao tác viên cũng là trách nhiệm của những nhà thiết kế hệ thống. Những công đoạn chính của giai đoạn triển khai bao gồm: - Lập kế hoạch triển khai. - Thiết kế vật lý trong. - Lập trình. - Thử nghiệm. - Hoàn thiện hệ thống các tài liệu. - Đào tạo người sử dụng. Lập kế hoạch thực hiện: Nhiệm vụ quan trọng nhất của lập kế hoạch triển khai là lựa chọn các công cụ. Sự lựa chọn này sẽ quy định tới những hoạt động thiết kế vật lý trong (thiết kế vật lý cơ sở dữ liệu, thiết kế các chương trình) cũng như những hoạt động lập trình sau này. 2.6.2 Thiết kế vật lý trong. - Thiết kế cơ sở dữ liệu vật lý trong: Trong giai đoạn thiết kế logic, thiết kế viên bảo đảm cho cơ sở dữ liệu chứa tất cả những dữ liệu chính nhưng không có dữ liệu dư thừa để tạo ra những thông tin đầu ra của hệ thống. Thiết kế vật lý trong nhằm mục đích tìm cách tiếp cận tới dữ liệu nhanh và hiệu quả. Có hai phương thức quan trọng để đạt mục đích trên là chỉ số hoá các tệp và thêm các dữ liệu hỗ trợ cho các tệp. Một số khái niệm cơ sở: Sự kiện là một việc thực khi đến nó làm khởi sinh việc thực hiện của một hoặc nhiều xử lý nào đó. Có những sự kiện nằm ngay trong cơ chế của tổ chức. Ví dụ sau khi tính lương xong thì kết quả của việc tính lương này sẽ là sự kiện khởi sinh cho xử lý in bảng lương sau đó. Công việc là một dãy xử lý có chung một sự kiện khởi sinh. Tiến trình là một dãy các công việc mà các xử lý bên trong của nó nằm trong cùng một lĩnh vực nghiệp vụ. Nếu tiến trình quá lớn thì lên chia cắt thành những lĩnh vực nhỏ hơn. Nhiệm vụ là một xử lý được xác định thêm các yếu tố về tổ chức. Pha xử lý là tập hợp các nhiệm vụ có tính đến các yếu tố tổ chức và sự thực hiện của chúng, không phụ thuộc vào sự kiện nào khác mà chỉ phụ thuộc vào sự khởi sinh ban đầu. Mô đun xử lý là một xử lý cập nhật hoặc tra cứu bên trong của một pha và thao tác với số lượng tương đối ít dữ liệu. Đây là cách chia nhỏ các xử lý, yêu cầu xử lý với ít dữ liệu là một khái niệm tương đối, tuỳ thuộc vào một số các tiêu chuẩn khác và nhiều khi mang tính chủ quan của nhà thiết kế. Một số lưu ý khi thiết kế các mô đun lập trình: - Xây dựng các mô đun nhỏ để dễ kiểm tra. - Mô đun đủ nhỏ để có thể sử dụng trong nhiều pha. - Tính đến khả năng trợ giúp của các phần mềm phát triển. - Tích hợp các đặc trưng vật lý của máy tính để phân chia mô đun. - Xếp theo nhóm mô đun có sự liên thông hết cái này đến cái kia. 2.7 CÀI ĐẶT, BẢO TRÌ VÀ KHAI THÁC HỆ THỐNG. Cài đặt là quá trình chuyển đổi từ hệ thống cũ sang hệ thống mới. Mục tiêu của giai đoạn này là tích hợp hệ thống được phát triển vào các hoạt động của tổ chức một cách ít va vấp nhất và đáp ứng với những thay đổi có thể xảy ra trong suốt quá trình sử dụng, giai đoạn này có 2 khối công việc: Chuyển đổi về mặt kỹ thuật và chuyển đổi về mặt con người. 2.7.1 Các phương pháp cài đặt hệ thống. Có bốn kiểu cài đặt cơ bản: Trực tiếp, song song, cục bộ từng bộ phận và phân giai đoạn. Việc lựa chọn phương pháp cài đặt tuỳ thuộc vào quy mô và độ phức tạp của những thay đổi liên quan đến hệ thống mới. Cài đặt trực tiếp: Theo phương pháp này, người ta dừng hoạt động của hệ thống cũ và đưa ngay hệ thống mới vào sử dụng. Với phương pháp này bất cứ lỗi nào do hệ thống mới gây ra đều ảnh hưởng trực tiếp tới những người sử dụng, nói cách khác nếu hệ thống mới trục trặc sẽ cần thời gian đáng kể để có thể phục hồi lại hệ thống cũ hoạt động trở lại và cập nhập lại các giao dịch nghiệp vụ, nhằm đảm bảo tính cập nhật của cơ sở dữ liệu Hệ thống cũ Cài đặt hệ thống mới Hệ thống mới Thời gian Hình 2.2: Phương pháp cài đặt trực tiếp Cài đặt song song: Với phương pháp cài đặt song song, cả hai hệ thống mới và cũ đều cùng hoạt động, cho tới khi có thể quyết định dừng hệ thống cũ lại, tức là khi người sử dụng và bộ phận quản lý nhận thấy hệ thống mới đã đáp ứng được yêu cầu nhiệm vụ. Hệ thống cũ Cài đặt hệ thống mới Hệ thống mới Thời gian Hình 2.3: Phương pháp cài đặt song song Kết quả của hai hệ thống được so sánh với nhau nhằm giúp để xác định xem hệ thống mới có hoạt động tốt như hệ thống cũ hay không. Lỗi của hệ thống mới, nếu có sẽ không ảnh hưởng lắm tới tổ chức vì chúng sẽ được khoanh vùng và hoạt động nghiệp vụ sẽ được hỗ trợ bởi hệ thống cũ. Phương pháp này sẽ tốn kém vì phải duy trì một lúc các nguồn lực cho hai hệ thống mới và cũ, ngoài ra nó cũng gây ra sự phân tán đối với người sử dụng vì cùng một lúc phải sử dụng cả hai hệ thống. Cài đặt thí điểm cục bộ: Thời gian Hệ thống cũ Cài đặt hệ thống mới Hệ thống mới Thời gian Hình 2.4: Phương pháp cài đặt song song áp dụng cho bộ phận 1 Thời gian Hệ thống cũ Cài đặt hệ thống mới Hệ thống mới Thời gian Hình 2.5: Phương pháp cài đặt trực tiếp áp dụng cho bộ phận 2 Đây là phương pháp dung hoà giữa cài đặt trực tiếp và cài đặt song song. Cài đặt cục bộ chỉ thực hiện chuyển đổi từ hệ thống cũ sang hệ thống mới cục bộ tại một hoặc một vài bộ phận (một xí nghiệp hoặc một chi nhánh văn phòng). Lợi thế của cài đặt thí điểm cục bộ là hạn chế tối đa chi phí và các sự cố khác vì chỉ giới hạn ảnh hưởng trong một hoặc một vài bộ phận mà thôi, thêm vào đó là bộ phận quản lý hệ thống thông tin có thể ưu tiên tập trung nỗ lực của mình vì sự thành công tại bộ phận chuyển đổi thử nghiệm. Chuyển đổi theo giai đoạn: Đây là phương pháp chuyển đổi từ hệ thống thông tin cũ sang hệ thống thông tin mới một cách dần dần, bắt đầu bằng một hay một vài mô đun và sau đó là mở rộng dần việc chuyển đổi sang toàn bộ hệ thống mới. Những phần khác nhau của các hệ thống cũ và mới được sử dụng phối hợp với nhau cho tới tận khi toàn bộ hệ thống mới được cài đặt xong. 2.7.2 Chuyển đổi các tệp và cơ sở dữ liệu. Khi một hệ thống mới được thực hiện thì nó có 3 khả năng về dữ liệu như sau: - Các kho dữ liệu cần thiết đã có theo đúng các đặc trưng thiết kế. - Các kho dữ liệu đã tồn tại nhưng không đầy đủ và cấu trúc chưa phù hợp. - Các kho dữ liệu hoàn toàn chưa tồn tại. Đối với trường hợp đầu tiên, chúng ta không cần phải chuẩn bị gì, trường hợp thứ hai cần phải nhập thêm những dữ liệu mới chưa có trên máy và trích các dữ liệu có cấu trúc chưa phù hợp từ các tệp hay từ các cơ sở dữ liệu, sửa và ghi lại vào cơ sở dữ liệu của hệ thống. Trường hợp các kho dữ liệu chưa có thì buộc phải tạo ra, nếu dữ liệu chưa được tin học hoá nhưng đã có trên các vật mang tin thủ công thì việc thu thập và nhập dữ liệu vào cơ sở dữ liệu chỉ là vấn đề nhanh hay chậm mà thôi. 2.7.3 Đào tạo và hỗ trợ người sử dụng. - Đào tạo người sử dụng hệ thống thông tin: Để sử dụng máy tính, đòi hỏi những kĩ năng nhất định và việc đào tạo người sử dụng các ứng dụng máy tính đòi hỏi một chi phí tương đối, đòi hỏi các tổ chức phải có một hệ thống đào tạo hoàn chỉnh dành cho người sử dụng hệ thống. - Hỗ trợ người sử dụng hệ thống thông tin: Hỗ trợ người sử dụng là quá trình hỗ trợ trong việc đào tạo người sử dụng và trong việc giải quyết các vấn đề đối với người sử dụng. 2.7.4 Bảo trì hệ thống thông tin. Bảo trì hệ thống thông tin gồm 4 hoạt động chính: - Thu nhận các yêu cầu bảo trì. - Chuyển đổi các yêu cầu thành những thay đổi cần thiết. - Thiết kế những thay đổi cần thiết đối với hệ thống. - Triển khai các thay đổi. Các kiểu bảo trì hệ thống: - Bảo trì hiệu chỉnh: Với mục tiêu giải quyết các lỗi thiết kế và lỗi lập trình còn tiềm ẩn trong hệ thống sau cài đặt. - Bảo trì thích nghi: Với mục tiêu sửa đổi hệ thống để phù hợp với các thay đổi của môi trường. - Bảo trì hoàn thiện: Cải tiến hệ thống để giải quyết những vấn đề mới hoặc để tận dụng những lợi thế của những cơ hội mới. - Bảo trì phòng ngừa: Với mục đích phòng ngừa những vấn đề có thể xảy ra trong tương lai, một số thay đổi được tiến hành đối với hệ thống. Chương 3: PHÂN TÍCH, THIẾT KẾ HỆ THỐNG THÔNG TIN QUẢN LÝ NHÂN SỰ CHO KHO BẠC NHÀ NƯỚC HẢI DƯƠNG 3.1 PHÂN TÍCH HỆ THỐNG. Việc quản lý nhân sự hiện tại ở Kho bạc vẫn còn thực hiện một cách thủ công nên không tránh khỏi những sai sót và mất nhiều thời gian, một nhân viên từ lúc bắt đầu vào làm việc tại cơ quan cho đến khi nghỉ hưu hay buộc phải chuyển việc, thôi việc thì cơ quan vẫn phải lưu trữ hồ sơ của người đó, như vậy thì việc lưu trữ thủ công sẽ rất phức tạp, cồng kềnh và mất nhiều thời gian, khi hệ thống thông tin quản lý nhân sự được đưa vào sử dụng ở cơ quan thì sẽ giúp cho ban lãnh đạo đưa ra các quyết định kịp thời nhanh chóng mà vẫn đảm bảo được tính chính xác, nó còn giúp cho phòng tổ chức cán bộ làm việc hiệu quả hơn, hệ thống quản lý gọn nhẹ hơn, việc sử dụng cũng đơn giản và giảm thiểu được những sai sót không đáng có. Một hệ thống quản lý nhân sự bao gồm các dữ liệu đầu vào và các dữ liệu đầu ra. Đầu vào bao gồm các thông tin liên quan đến cán bộ nhân viên trong cơ quan, các phòng ban, các thông tin về khen thưởng, kỉ luật… Đầu ra của hệ thống thường được thể hiện dưới dạng các báo cáo như báo cáo về lý lịch của các cán bộ nhân viên, báo cáo lương… Như vậy chương trình quản lý nhân sự sẽ có một cơ sở dữ liệu để lưu trữ các dữ liệu về hồ sơ cán bộ, các danh mục phòng ban, thông tin lương… cho phép cập nhật, sửa đổi hay xoá những thông tin không cần thiết, đồng thời nó còn cho phép tìm kiếm, xử lý thông tin, in báo cáo để có được những thông tin sao cho phù hợp với những yêu cầu của người sử dụng. 3.2 SƠ ĐỒ PHÂN TÍCH. 3.2.1 Sơ đồ luồng thông tin (IFD) * Sơ đồ luồng thông tin trong quản lý hồ sơ. Thời điểm Nhân viên Phòng nhân sự Ban giám đốc Bắt đầu vào Cuối tháng Hồ sơ nhân viên Xử lý thông tin Kho hồ sơ nhân viên Điều chỉnh hồ sơ Kho hồ sơ Nhập hồ sơ nhân sự Báo cáo Yêu cầu Hinh 3.1: Sơ đồ luồng thông tin trong quản lý hồ sơ * Sơ đồ luồng thông tin trong chấm công nhân viên. Thời điểm Các phòng ban Phòng nhân sự Hàng ngày Cuối tháng Bảng chấm công Cập nhật bảng chấm công Điều chỉnh bảng chấm công Kho dữ liệu bảng chấm công Tổng hợp thông tin In báo cáo Hình 3.2: Sơ đồ luồng thông tin trong chấm công nhân viên * Sơ đồ luồng thống tin trong quản lý lương. Thời điểm Phòng nhân sự Phòng kế toán Giám đốc Cuối tháng Tính lương Bảng chấm công đã xử lý Kho DL Lương Chi trả lương Các loại báo cáo Hình 3.3: Sơ đồ luồng thông tin trong quản lý lương 3.2.2 Sơ đồ luồng dữ liệu (DFD). * Sơ đồ DFD mức ngữ cảnh. Phòng nhân sự Giám đốc Bảng chấm công Yêu cầu Quản lý nhân sự Phòng ban khác Phòng kế toán Nhân viên Lưu trữ hồ sơ Báo cáo Thông tin nhân sự Báo cáo Phiếu lương Bảng chấm công Lương Hình 3.4: Sơ đồ DFD mức ngữ cảnh * Sơ đồ DFD mức 0: Sơ đồ ngữ cảnh của hệ thống chỉ cho ta cái nhìn khái quát về hệ thống, khi các vấn đề khác phát sinh được đặt ra thì với sơ đồ ngữ cảnh như trên chưa vạch ra được chi tiết vấn đề, ta cần phân rã sơ đồ ra các mức cụ thể hơn để thấy được nội dung cụ thể của hệ thống thông tin quản lý nhân sự. Khi có nhân viên mới được tuyển dụng vào hay có sự thay đổi nhân sự trong cơ quan thì nhân viên sẽ nộp hồ sơ cho phòng tổ chức cán bộ, phòng tổ chức cán bộ sẽ xử lý và tổng hợp thông tin sau đó lưu thông tin cá nhân vào kho dữ liệu hồ sơ, mỗi khi có yêu cầu về nhân sự thì yêu cầu sẽ được gửi đến phòng quản lý nhân sự và phòng quản lý có nhiệm vụ thu thập thông tin và xử lý yêu cầu đó rồi gửi lại báo cáo cho các phòng ban cần thông tin, cuối ngày các phòng ban sẽ gửi bảng chấm công lên phòng quản lý nhân sự làm cơ sở cho việc tính toán lương. Phòng nhân sự Hồ sơ nhân viên mới Giám đốc Yêu cầu Yêu cầu 2.0 Quản lý chấm công 1.0 Quản lý hồ sơ bảng chấm công Phòng nhân sự báo cáo bảng chấm công hồ sơ Các phòng ban khác TT nhân sự Kho hồ sơ Kho dữ liệu bảng chấm công Nhân viên yêu cầu 3.0 Quản lý lương Lương Phòng kế toán Kho dữ liệu lương Hình 3.5: Sơ đồ DFD mức 0 * Sơ đồ luồng dữ liệu mức 1 - Quản lý chấm công: Hàng ngày các phòng ban sẽ gửi bảng chấm công cho bộ phận cập nhật bảng chấm công, phòng nhân sự sẽ có nhiệm vụ cập nhật bảng chấm công do các phòng ban khác gửi tới và lưu vào kho dữ liệu. Khi phòng quản lý nhân sự thấy trong bảng chấm công còn có sai sót thì yêu cầu này sẽ được gửi đến bộ phận điều chỉnh bảng chấm công, khi có yêu cầu báo cáo về bảng chấm công phát sinh từ phòng nhân sự thì yêu cầu này sẽ được gửi đến bộ phận báo cáo, bộ phận báo cáo sẽ lấy thông tin từ kho dữ liệu bảng chấm công đã xử lý và gửi kết quả báo cáo cho phòng tổ chức. Phòng tổ chức Bảng chấm công 2.3 Báo cáo 2.2 Điều chỉnh bảng chấm công 2.1 Cập nhật bảng chấm công Báo bảng chấm Cáo yêu cầu công Kho chấm công Bảng chấm công chưa xử lý đã xử lý Đã điều chỉnh Các phòng ban Phòng tổ chức Hình 3.6: Sơ đồ luồng dữ liệu mức 1_Quản lý chấm công * Sơ đồ luồng dữ liệu mức 1 - Quản lý lương: Phòng tổ chức Kho hồ sơ Bảng chấm công đã xử lý Phòng kế toán (1) (2) (3) (4) (5) (6) (7) 3.4 Tính khấu trừ 3.3 Tính tạm ứng 3.2 Tính thưởng 3.1 Tính lương (8) (9) (10) (11) (12) Kho dữ liệu lương Kho dữ liệu hồ sơ (13) 3.5 Báo cáo Phòng kế toán Phòng tổ chức (14) (15) Hình 3.7: Sơ đồ luồng dữ liệu mức 1_Quản lý lương Trong đó: (1): Yêu cầu lương. (9): Thông tin lương. (2): Thông tin bảng chấm công. (10): Thông tin thưởng. (3): Thông tin yêu cầu. (11): Tạm ứng. (4): Thông tin nhân sự. (12): Khấu trừ. (5): Yêu cầu. (13): Lấy thông tin lương. (6): Yêu cầu tính tạm ứng. (14): Phiếu lương. (7): Yêu cầu tính khấu trừ. (15): Lương, thưởng. (8): Thông tin nhân sự. Quan hệ giữa các thực thể theo phương pháp mô hình hoá: Có Chức vụ Nhân viên N N Được Tính lương Nhân viên 1 N Lương Có Nhân viên N N Hợp đồng Nhân viên Kí 1 N Khen Được Nhân viên 1 N Phòng ban Có Nhân viên N 1 Hình 3.8: Quan hệ giữa các thực thể theo phương pháp mô hình hoá 3.3 THIẾT KẾ CƠ SỞ DỮ LIỆU. Các bảng dữ liệu bao gồm: Bảng tblHoSoNhanVien (Hồ sơ nhân viên): Field Name Data Type Description MaNV (*) Text Mã nhân viên (10) HoDemNV Text Họ đệm nhân viên (20) TenNV Text Tên nhân viên (20) HoKhauTT Text Hộ khẩu thường trú (50) NgaySinh Date/Time Ngày sinh (dd/mm/yyyy) NoiSinh Text Nơi sinh (50) GioiTinh Text Giới tính (6) DienThoai Text Điện thoại (12) QueQuan Text Quê quán (50) TG Text Tôn giáo (10) DT Text Dân tộc (10) TinhTrangHN Text Tình trạng hôn nhân (10) TrinhDoVH Text Trình độ văn hoá (18) LyLuanCT Text Lý luận chính trị (18) SoCMND Text Số chứng minh nhân dân (18) NgayBD Date/time Ngày bắt đầu (dd/mm/yyyy) MaCV Text Mã chức vụ (18) MaPB Text Mã phòng ban (15) QuocTich Text Quốc tịch (18) ChoOHT Text Chỗ ở hiện tại (50) Email Text Email (50) Fax Text Fax (20) DangVien Yes/No Đảng viên DoanVien Yes/No Đoàn viên QuanDoi Yes/No Quân đội ThoiViec Yes/No Thôi việc CongTac Yes/No Công tác DiHoc Yes/No Đi học GhiChu Text Ghi chú (50) Bảng tblBacLuong (Bậc lương): Field Name Data Type Description MaBacLuong (*) Text Mã bậc lương (12) TenBacLuong Text Tên bậc lương (20) MucLuong Number Mức lương (long) Bảng tblChucVu (Chức vụ): Field Name Data Type Description MaCV (*) Text Mã chức vụ (18) TenCV Text Tên chức vụ (20) Bảng tblCongTac (Công tác): Field Name Data Type Description MaNV (*) Text Mã nhân viên (10) NgayBD Date/Time Ngày bắt đầu (dd/mm/yyyy) NgayKT Date/Time Ngày kết thúc (dd/mm/yyyy) DonViCongTac Text Tên đơn vị công tác (30) DiaChi Text Địa chỉ đơn vị công tác (50) ChucDanh Text Chức danh công tác (20) LyDoCT Text Lý do công tác (30) Bảng tblDangVien (Đảng viên): Field Name Data Type Description MaTheDang (*) Text Mã thẻ Đảng (10) MaNV Text Mã nhân viên (10) NgayVD Date/Time Ngày vào Đảng (dd/mm/yyyy) NgayVDCT Date/Time Ngày vào Đảng chính thức (dd/mm/yyyy) NguoiGT Text Người giới thiệu (20) NguoiKy Text Người ký (20) NoiVD Text Nơi vào Đảng (30) NơiSHDang Text Nơi sinh hoạt Đảng (30) ChucVuDang Text Chức vụ Đảng (20) LyLuanCT Text Lý luận chính trị (20) NXSHDang Text Nhận xét sinh hoạt Đảng (50) Bảng tblDanToc (Dân tộc): Field Name Data Type Description MaDT (*) Text Mã dân tộc (10) TenDT Text Tên dân tộc (20) Bảng tblDoanVien (Đoàn viên): Field Name Data Type Description MaNV (*) Text Mã nhân viên (10) NgayVDoan Date/Time Ngày vào Đoàn (dd/mm/yyyy) NguoiKy Text Người ký (30) NoiVDoan Text Nơi vào Đoàn (30) NoiSHDoan Text Nơi sinh hoạt Đoàn (30) ChucVuDoan Text Chức vụ Đoàn (20) NXSHDoan Text Nhận xét sinh hoạt Đoàn (50) Bảng tblHocTap (Học tập): Field Name Data Type Description MaNV (*) Text Mã nhân viên (10) MaHT (*) Text Mã học tập (10) TenTruong Text Tên trường nhân viên học (50) Nganh Text Ngành học (20) NgayBD Date/Time Ngày bắt đầu (dd/mm/yyyy) NgayKT Date/Time Ngày kết thúc (dd/mm/yyyy) HinhThuc Text Hình thức học tập (20) TrinhDo Text Trình độ (20) LoaiTN Text Loại tốt nghiệp (20) TTKhac Text Thông tin khác (50) Bảng tblHopDong (Hợp đồng): Field Name Data Type Description MaNV (*) Text Mã nhân viên (10) NgayVaoLam Date/time Ngày vào làm (dd/mm/yyyy) SoQD Text Số quyết định (20) LoaiLD Text Loại lao động (20) ChucVu Text Chức vụ (20) KiemChucVu Text Kiêm chức vụ (20) SoTruong Text Sở trường (30) TTKhac Text Thông tin khác (50) Bảng tblKhenThuong (Khen thưởng): Field Name Data Type Description MaNV (*) Text Mã nhân viên (10) SoQDKT Text Số quyết định khen thưởng (20) TenLoạiKT Text Tên loại khen thưởng (20) NgayKhen Date/Time Ngày khen (dd/mm/yyyy) CapKhen Text Cấp khen (20) HinhThucKT Text Hình thức khen thưởng (30) NoiKhen Text Nơi khen (50) NgayKyKT Date/Time Ngày ký khen thưởng (dd/mm/yyyy) LyDoKT Text Lý do khen thưởng (20) TTKhacKT Text Thông tin khác (50) Bảng tblKyLuat (Kỷ luật): Field Name Data Type Description MaKyLuat (*) Text Mã kỷ luật (10) TenKyLuat Text Tên kỷ luật (20) MucKyLuat Number Mức kỷ luật (long) Bảng tblLuong (Lương): Field Name Data Type Description MaCC (*) Text Mã chấm công (10) Thang Number Tháng (long) Nam Number Năm (long) MaNV Text Mã nhân viên (10) HoDemNV Text Họ đệm nhân viên (20) TenNV Text Tên nhân viên (10) MaPB Text Mã phòng ban (10) MaBacLuong Text Mã bậc lương (10) SoNgayLV Number Số ngày làm việc (long) SoNgayNghiCP Number Số ngày nghỉ có phép (long) SoNgayNghiKP Number Số ngày nghỉ không phép (long) KhenThuong Text Khen thưởng (20) KyLuat Text Mã kỷ luật (10) PhuCapCV Number Phụ cấp chức vụ (long) BHXH Number Bảo hiểm xã hội (long) BHYT Number Bảo hiểm y tế (long) Bảng tblPhongBan (Phòng ban): Field Name Data Type Description MaPB (*) Text Mã phòng ban (10) TenPB Text Tên phòng ban (20) NgayTL Date/Time Ngày thành lập (dd/mm/yyyy) DiaChi Text Địa chỉ (50) DienThoai Text Điện thoại (10) Fax Text Fax (10) Email Text Email (30) TTKhac Text Thông tin khác (50) Bảng tblQuanDoi (Quân đội): Field Name Data Type Description MaNV (*) Text Mã nhân viên (10) NgayNhapNgu Date/Time Ngày nhập ngũ (dd/mm/yyyy) NgayXuatNgu Date/Time Ngày xuất ngũ (dd/mm/yyyy) QDQuanSu Text Quyết định quân sự (18) QDQuanHam Text Quyết định quân hàm (18) QDChucVu Text Quyết định chức vụ (18) QDThuongTat Text Quyết định thương tật (18) NhanXet Text Nhận xét (50) Bảng tblThoiViec (Thôi việc): Field Name Data Type Description MaNV (*) Text Mã nhân viên (10) SoQD Text Số quyết định thôi việc (10) NgayKy Date/Time Ngày ký (dd/mm/yyyy) NguoiKy Text Người ký (30) LyDoTV Text Lý do thôi việc (50) Bảng tblTonGiao (Tôn giáo): Field Name Data Type Description MaTG(*) Text Mã tôn giáo (10) TenTG Text Tên tôn giáo (20) Bảng ttblTangLuong (Tăng lương): Field Name Data Type Description MaNV (*) Text Mã nhân viên (10) MaBacLuong Text Mã bậc lương (10) NgayTangLuong Date/Time Ngày tăng lương (dd/mm/yyyy) LyDo Text Lý do (30) HeSoMoi Number Hệ số mới (long) Bảng tblUser (bảng tài khoản): Field Name Data Type Description Username Text Tên đăng nhập (20) Password Text Mật khẩu (20) QuyenHan Text Quyền quản trị (20) Mối quan hệ giữa các bảng (Relationships): Hình 3.9: Mô hình mối quan hệ giữa các thực thể 3.4 MỘT SỐ GIAO DIỆN CHÍNH CỦA CHƯƠNG TRÌNH. Để bắt đầu chương trình thì người sử dụng phải khai báo đầy đủ các thông tin vào màn hình đăng nhập của hệ thống: Khi đăng nhập thành công thì màn hình giao diện chính của chương trình xuất hiện, tuỳ theo nhu cầu của người sử dụng mà ta có thể cập nhập dữ liệu thông qua các màn hình nhập dữ liệu (các Form nhập dữ liệu). Giao diện màn hình quản lý hồ sơ: Cho phép thêm, cập nhật, xoá dữ liệu cán bộ nhân viên tuỳ theo công việc, yêu cầu của người sử dụng. Giao diện màn hình danh sách phòng ban: Giao diện form chức vụ: Giao diện màn hình quản lý thôi việc: Giao diện màn hình quản lý quá trình công tác của cán bộ nhân viên: Giao diện màn hình quản lý lương: Giao diện form khen thưởng: Giao diện màn hình tra cứu: Giao diện form báo cáo lý lịch trích ngang: Giao diện form báo cáo lương: Một số mẫu báo cáo được in ra: Một số thuật toán được sử dụng: Thuật toán đăng nhập: Nhập tên, mật khẩu Hiển thị màn hình làm việc của chương trình Bắt đầu Đúng Kiểm tra? Thông báo lỗi Sai Đúng Sai Kết thúc Hình 3.10: Sơ đồ khối thuật toán đăng nhập hệ thống Thuật toán cập nhật hồ sơ: Bắt đầu Kết thúc Lưu dữ liệu vào bảng Nhập dữ liệu Dữ liệu hợp lệ? Thông báo lỗi Sai Đúng Hình 3.11: Sơ đồ khối thuật toán cập nhật hồ sơ Thuật toán tìm kiếm: Bắt đầu Chọn cách tìm kiếm Nhập dữ liệu cần tìm Kiểm tra dữ liệu? S Đ Thông báo kết quả Kết thúc Hình 3.12: Sơ đồ khối thuật toán tìm kiếm Thuật toán in báo cáo: Bắt đầu Chọn loại báo cáo Chọn các trường dữ liệu cần in Kiểm tra dữ liệu? S Đ In báo cáo Kết thúc Hình 3.13: Thuật toán in báo cáo KẾT LUẬN Cùng với sự phát triển của xã hội, công nghệ thông tin cũng phát triển không ngừng và ngày càng không thể thiếu trong cuộc sống hiện nay. Công nghệ thông tin đã giúp cho con người rất nhiều trong mọi lĩnh vực của đời sống xã hội. Nhờ có công nghệ thông tin mà con người đã tiết kiệm được thời gian và chi phí trong mọi công việc của mình, công nghệ thông tin cho phép con người có thể cập nhật những thông tin, tin tức mới nhất về mọi lĩnh vực của đời sống xã hội ở khắp mọi nơi trên thế giới để phục vụ cho yêu cầu của công việc cũng như đáp ứng được nhu cầu học hỏi, trao đổi kiến thức của mọi người. Phần mềm quản lý nhân sự được viết bằng ngôn ngữ Visual Basic 6.0 và sử dụng hệ quản trị cơ sở dữ liệu Microsoft Access, phần mềm đưa vào hoạt động sẽ giúp cho người quản lý tiết kiệm được thời gian, việc lưu trữ thông tin, dữ liệu cũng trở nên thuận lợi và nhanh hơn, việc đưa ra các báo cáo cũng trở nên dễ dàng và có độ chính xác cao hơn, việc sử dụng phần mềm sẽ giúp cho việc quản lý nhân sự ở cơ quan đạt hiệu quả cao, đồng thời phát huy được năng lực của cán bộ nhân viên trong cơ quan. Với kinh nghiệm và kiến thức vẫn còn hạn chế nên đề tài không thể tránh khỏi những thiếu sót, em rất mong nhận được sự đóng góp ý kiến của các thầy cô và các bạn để trong thời gian tới chương trình sẽ đáp ứng ngày càng tốt hơn cho công việc quản lý nhân sự tại Kho bạc Nhà nước Hải Dương. Em xin gửi lời cảm ơn chân thành đến thầy Phùng Tiến Hải cùng các thầy cô trong khoa Tin học kinh tế, các cô, các chú tại Kho bạc Nhà nước Hải Dương đã tận tình giúp đỡ, hướng dẫn em trong suốt quá trình thực tập này. TÀI LIỆU THAM KHẢO 1. TS Trương Văn Tú - TS Trần Thị Song Minh, giáo trình Hệ thống thông tin quản lý, Hà Nội - 2000. 2. Trần Thành Trai, Phân tích, thiết kế và cài đặt hệ thống thông tin quản lý, Nhà xuất bản Trẻ, 1996. 3. Giáo trình tự học Visual Basic 6.0 trong 21 ngày. 4. Nguyễn Văn Ba, Phân tích, thiết kế hệ thống thông tin, Nhà xuất bản Đại học Quốc gia Hà Nội, 2005. 5. Thạc Bình Cường, Phân tích, thiết kế hệ thống thông tin, Nhà xuất bản Khoa học & kỹ thuật, Hà Nội 2002. 6. Bài giảng Công nghệ phần mềm, TS Hàn Viết Thuận. PHỤ LỤC Code đăng nhập: Private Sub OK_Click() Dim conn As ADODB.Connection Set conn = New ADODB.Connection conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & db_file & "; Persist Security Info=False" conn.Open Uname = TxtTen_user.Text If Me.TxtTen_user.Text = "" Then If Me.TxtMat_khau.Text = "" Then Unload Me MDIMain.DangNhap.Enabled = False MDIMain.Show Else MsgBox " Bạn gõ sai mật khẩu!", vbOKOnly + vbCritical, "Thông báo" Me.TxtTen_user.SetFocus DemSoLanTruyCap = DemSoLanTruyCap + 1 End If Else sqlstr = "select * from tbluser where username = '" & TxtTen_user.Text & "'" & _ " and password = '" & TxtMat_khau.Text & "'" Rs.Open sqlstr, conn If Not Rs.EOF Then UserPassword = TxtMat_khau.Text Unload Me MDIMain.DangNhap.Enabled = False MDIMain.Show If Rs!QuyenHan = "NguoiDung" Then MDIMain.mnubl.Enabled = False MDIMain.mnuqtct.Enabled = False MDIMain.MnuCN.Enabled = False MDIMain.QLTKND.Enabled = False MDIMain.mnuqtctac.Enabled = False End If Else Rs.Close MsgBox "Bạn gõ sai mật khẩu!", vbOKOnly + vbCritical, "Thông báo" Me.TxtTen_user.SetFocus DemSoLanTruyCap = DemSoLanTruyCap + 1 End If If DemSoLanTruyCap = 3 Then End End If End Sub Code Đổi mật khẩu Private Sub cmdOK_Click() Set Rs = New ADODB.Recordset Rs.Open "SELECT * FROM tblUser WHERE Password ='" & txtOldPass.Text & "'", conn, adOpenDynamic, adLockOptimistic If Rs.BOF And Rs.EOF Then MsgBox "Mật khẩu cũ không đúng !", vbOKCancel + vbExclamation txtOldPass.SetFocus Exit Sub End If If txtNewPass.Text = txtConfirm.Text Then Rs!Password = txtNewPass.Text Rs.Update Unload Me Else MsgBox "Xác nhận không hợp lệ !", vbOKOnly + vbCritical, "Thay mật khẩu" txtNewPass.SetFocus End If End Sub Code Tìm kiếm QTimKiem = “ SELECT tblPhongBan.TenPB, tblHoSoNhanVien.MaNV, tblHoSoNhanVien.HoDemNV, tblHoSoNhanVien.TenNV, tblHoSoNhanVien.NgaySinh, tblHoSoNhanVien.GioiTinh, tblHoSoNhanVien.DienThoai, tblHoSoNhanVien.QueQuan, tblHoSoNhanVien.NgayBD, tblHoSoNhanVien.Thoiviec, tblHoSoNhanVien.TrinhDoVH, tblHoSoNhanVien.MaCV FROM tblPhongBan INNER JOIN tblHoSoNhanVien ON tblPhongBan.MaPB = tblHoSoNhanVien.MaPB” Private Sub Command1_Click() Dim Key As String Key = txttracuu.Text If cbtracuu.Text = "" Then MsgBox " Bạn phải chọn loại tra cứu ", vbOKOnly, " Thông báo " cbtracuu.SetFocus End If If cbtracuu.Text = "Ten" Then Dim Sql As String Sql = " select * FROM QTimKiem where TenNV like '%" + Key + "%'" Adodc7.CommandType = adCmdText Adodc7.RecordSource = Sql Adodc7.Refresh cbtracuu.SetFocus End If If cbtracuu.Text = "Phong ban" Then Sql = " select * FROM QTimKiem where TenPB like '%" + Key + "%' " Adodc7.CommandType = adCmdText Adodc7.RecordSource = Sql Adodc7.Refresh cbtracuu.SetFocus End If Set DataGrid1.DataSource = Adodc7 End Sub Code Báo cáo Lương Private Sub btnExit_Click() Unload Me End Sub Private Sub btnInBC_Click() If optAll.Value = True Then InBaoCao Else Inbaocaotheoma (cbMaCB.Text) End If End Sub Sub InBaoCao() Dim Rs As ADODB.Recordset Dim Sql As String Set Rs = New ADODB.Recordset Sql = "SELECT tblLuong.MaNV, tblLuong.HoDemNV, tblLuong.TenNV, tblBacLuong.MucLuong, tblLuong.BHXH, tblLuong.BHYT, tblLuong.PhuCapCV, tblLuong.KhenThuong, tblLuong.KyLuat" Sql = Sql + " FROM tblLuong INNER JOIN tblBacLuong ON tblLuong.MaBacLuong = tblBacLuong.MaBacLuong" Sql = Sql + " where tblLuong.Thang = '" + cboThang.Text + "'" Sql = Sql + " GROUP BY tblLuong.MaNV, tblLuong.HoDemNV, tblLuong.TenNV, tblBacLuong.MucLuong, tblLuong.BHXH, tblLuong.BHYT, tblLuong.PhuCapCV, tblLuong.KhenThuong, tblLuong.KyLuat" Sql = Sql + " ORDER BY tblLuong.MaNV, tblLuong.HoDemNV" Rs.Open Sql, conn cr.SetTablePrivateData 0, 3, Rs cr.ReportFileName = App.Path + "\rp\bangluong2.rpt" cr.PrintReport Rs.Close End Sub Sub Inbaocaotheoma(Ma As String) Dim Rs As ADODB.Recordset Dim Sql As String Set Rs = New ADODB.Recordset Sql = "SELECT tblLuong.MaNV, tblLuong.HoDemNV, tblLuong.TenNV, tblBacLuong.MucLuong, tblLuong.BHXH, tblLuong.BHYT, tblLuong.PhuCapCV, tblLuong.KhenThuong, tblLuong.KyLuat" Sql = Sql + " FROM tblLuong INNER JOIN tblBacLuong ON tblLuong.MaBacLuong = tblBacLuong.MaBacLuong" Sql = Sql + " where tblLuong.MaPB ='" + Ma + "' and tblLuong.Thang = '" + cboThang.Text + "'" Sql = Sql + " GROUP BY tblLuong.MaNV, tblLuong.HoDemNV, tblLuong.TenNV, tblBacLuong.MucLuong, tblLuong.BHXH, tblLuong.BHYT, tblLuong.PhuCapCV, tblLuong.KhenThuong, tblLuong.KyLuat" Sql = Sql + " ORDER BY tblLuong.MaNV, tblLuong.HoDemNV" Rs.Open Sql, conn cr.SetTablePrivateData 0, 3, Rs cr.ReportFileName = App.Path + "\rp\bangluong2.rpt" cr.PrintReport Rs.Close End Sub Private Sub cbMaCB_Click() Dim Rs As ADODB.Recordset Dim Sql As String Set Rs = New ADODB.Recordset Sql = "SELECT MaPB,TenPB FROM tblPhongBan WHERE MaPB='" + cbMaCB.Text + "'" Rs.Open Sql, conn If Not Rs.EOF Then lblTenCB.Caption = Rs("TenPB") End If Rs.Close End Sub Private Sub Form_Load() Dim Rs As New ADODB.Recordset Dim Sql As String Set Rs = New ADODB.Recordset Sql = "SELECT MaPB, TenPB FROM tblPhongBan" Rs.Open Sql, conn Do While Not Rs.EOF cbMaCB.AddItem Rs("MaPB") Rs.MoveNext Loop Rs.Close lblTenCB.Caption = "" cbMaCB.Visible = False lblTenCB.Visible = False End Sub Private Sub optAll_Click() cbMaCB.Visible = False lblTenCB.Visible = False End Sub Private Sub optPerson_Click() cbMaCB.Visible = True lblTenCB.Visible = True End Sub Code Báo cáo lý lịch trích ngang Private Sub btnInBC_Click() If optAll.Value = True Then InBaoCao Else Inbaocaotheoma (cbMaCB.Text) End If End Sub Sub InBaoCao() Dim Rs As ADODB.Recordset Dim Sql As String Set Rs = New ADODB.Recordset Sql = "SELECT tblHoSoNhanVien.MaNV, tblHoSoNhanVien.HoDemNV, tblHoSoNhanVien.TenNV, tblHoSoNhanVien.NgaySinh, tblHoSoNhanVien.GioiTinh, tblHoSoNhanVien.MaDT, tblHoSoNhanVien.NoiSinh, tblHoSoNhanVien.HoKhauTT, tblHoSoNhanVien.TrinhDoVH, tblPhongBan.TenPB, tblChucVu.TenCV, tblHoSoNhanVien.DienThoai, tblHoSoNhanVien.NgayBD" Sql = Sql + " FROM (tblChucVu INNER JOIN tblHoSoNhanVien ON tblChucVu.MaCV = tblHoSoNhanVien.MaCV) INNER JOIN tblPhongBan ON tblHoSoNhanVien.MaPB = tblPhongBan.MaPB" Rs.Open Sql, conn cr.SetTablePrivateData 0, 3, Rs cr.ReportFileName = App.Path + "\rp\lilichfix.rpt" ' cr.Formulas(0) = "TenABC='" + lblTenCB.Caption + "'" 'Cr.ReportTitle = "Ly lich trinh ngang" cr.PrintReport Rs.Close End Sub Sub Inbaocaotheoma(Ma As String) Dim Rs As ADODB.Recordset Dim Sql As String Set Rs = New ADODB.Recordset Sql = "SELECT tblHoSoNhanVien.MaNV, tblHoSoNhanVien.HoDemNV, tblHoSoNhanVien.TenNV, tblHoSoNhanVien.NgaySinh, tblHoSoNhanVien.GioiTinh, tblHoSoNhanVien.MaDT, tblHoSoNhanVien.NoiSinh, tblHoSoNhanVien.HoKhauTT, tblHoSoNhanVien.TrinhDoVH, tblPhongBan.TenPB, tblChucVu.TenCV, tblHoSoNhanVien.DienThoai, tblHoSoNhanVien.NgayBD" Sql = Sql + " FROM (tblChucVu INNER JOIN tblHoSoNhanVien ON tblChucVu.MaCV = tblHoSoNhanVien.MaCV) INNER JOIN tblPhongBan ON tblHoSoNhanVien.MaPB = tblPhongBan.MaPB WHERE MaNV ='" + Ma + "'" Rs.Open Sql, conn cr.SetTablePrivateData 0, 3, Rs cr.ReportFileName = App.Path + "\rp\lilichfix.rpt" cr.PrintReport Rs.Close End Sub Private Sub cbMaCB_Click() Dim Rs As ADODB.Recordset Dim Sql As String Set Rs = New ADODB.Recordset Sql = "SELECT MaNV,TenNV FROM tblHoSoNhanVien WHERE MaNV='" + cbMaCB.Text + "'" Rs.Open Sql, conn If Not Rs.EOF Then lblTenCB.Caption = Rs("TenNV") End If Rs.Close End Sub Private Sub Form_Load() Dim Rs As New ADODB.Recordset Dim Sql As String Set Rs = New ADODB.Recordset Sql = "SELECT MaNV, TenNV FROM tblHoSoNhanVien" Rs.Open Sql, conn Do While Not Rs.EOF cbMaCB.AddItem Rs("MaNV") Rs.MoveNext Loop Rs.Close lblTenCB.Caption = "" cbMaCB.Visible = False lblTenCB.Visible = False End Sub Private Sub optAll_Click() cbMaCB.Visible = False lblTenCB.Visible = False End Sub Private Sub optPerson_Click() cbMaCB.Visible = True lblTenCB.Visible = True End Sub Code báo cáo quá trình công tác Private Sub btnInBC_Click() If optAll.Value = True Then InBaoCao Else Inbaocaotheoma (cbMaCB.Text) End If End Sub Sub InBaoCao() Dim Rs As ADODB.Recordset Dim Sql As String Set Rs = New ADODB.Recordset Sql = "SELECT tblCongTac.MaNV, tblHoSoNhanVien.HoDemNV, tblHoSoNhanVien.TenNV, tblPhongBan.TenPB, tblCongTac.ChucDanh, tblCongTac.NgayBD, tblCongTac.NgayKT, tblCongTac.DonViCongTac" Sql = Sql + " FROM (tblCongTac INNER JOIN tblHoSoNhanVien ON tblCongTac.MaNV = tblHoSoNhanVien.MaNV) INNER JOIN tblPhongBan ON tblCongTac.MaPB = tblPhongBan.MaPB" Rs.Open Sql, conn cr.SetTablePrivateData 0, 3, Rs cr.ReportFileName = App.Path + "\rp\quatrinh1.rpt" cr.PrintReport Rs.Close End Sub Sub Inbaocaotheoma(Ma As String) Dim Rs As ADODB.Recordset Dim Sql As String Set Rs = New ADODB.Recordset Sql = "SELECT tblCongTac.MaNV, tblHoSoNhanVien.HoDemNV, tblHoSoNhanVien.TenNV, tblPhongBan.TenPB, tblCongTac.ChucDanh, tblCongTac.NgayBD, tblCongTac.NgayKT, tblCongTac.DonViCongTac" Sql = Sql + " FROM (tblCongTac INNER JOIN tblHoSoNhanVien ON tblCongTac.MaNV = tblHoSoNhanVien.MaNV) INNER JOIN tblPhongBan ON tblCongTac.MaPB = tblPhongBan.MaPB where tblCongTac.MaNV ='" + Ma + "'" Rs.Open Sql, conn cr.SetTablePrivateData 0, 3, Rs cr.ReportFileName = App.Path + "\rp\quatrinh1.rpt" cr.PrintReport Rs.Close End Sub Private Sub cbMaCB_Click() Dim Rs As ADODB.Recordset Dim Sql As String Set Rs = New ADODB.Recordset Sql = "SELECT tblCongTac.MaNV, tblHoSoNhanVien.TenNV as Ten FROM tblCongTac, tblHoSoNhanVien WHERE tblCongTac.MaNV = tblHoSoNhanVien.MaNV and tblCongTac.MaNV='" + cbMaCB.Text + "'" Rs.Open Sql, conn If Not Rs.EOF Then lblTenCB.Caption = Rs("Ten") End If Rs.Close End Sub Private Sub Form_Load() Dim Rs As ADODB.Recordset Dim Sql As String Set Rs = New ADODB.Recordset Sql = "SELECT tblCongTac.MaNV, tblHoSoNhanVien.TenNV FROM tblCongTac, tblHoSoNhanVien WHERE tblCongTac.MaNV = tblHoSoNhanVien.MaNV" Rs.Open Sql, conn Do While Not Rs.EOF cbMaCB.AddItem Rs("MaNV") Rs.MoveNext Loop Rs.Close lblTenCB.Caption = "" cbMaCB.Visible = False lblTenCB.Visible = False End Sub Private Sub optAll_Click() cbMaCB.Visible = False lblTenCB.Visible = False End Sub Private Sub optPerson_Click() cbMaCB.Visible = True lblTenCB.Visible = True End Sub

Các file đính kèm theo tài liệu này:

  • doc36669.doc
Tài liệu liên quan