Đề tài Xây dựng một chương trình nhằm giúp đỡ những người quản lý trong một công ty nhằm làm giảm sự phụ thuộc vào sự biến đổi nhân sự trong công ty (tên tiếng Anh là Liability Management System)

Đây là báo cáo luận văn tốt nghiệp, Đề tài: Xy dựng một chương trình nhằm gip đỡ những người quản lý trong một cơng ty nhằm lm giảm sự phụ thuộc vo sự biến đổi nhân sự trong công ty (tên tiếng Anh là Liability Management System). Đề tài được thực hiện tại công ty ELCA trong mối liên kết giữa công ty ELCA và trường Đại học Kỹ Thuật. Bản báo cáo này cung cấp sự mô tả tổng quát về đề tài và những công việc đã làm: · Trình bày về UML. · Mô tả ứng dụng Liability Management System. · Xác định các ràng buộc của ứng dụng. · Trình bày thiết kế chi tiết của ứng dụng như khi ứng dụng đã được hiện thực. Nội dung của bản báo cáo được chia ra làm ba phần: · Phần thứ nhất tóm tắt về UML và trình bày làm cách nào để ứng dụng các nguyên lý vào đề tài LMS. · Phần thứ hai được trình bày như một bản báo cáo đầy đủ và diễn tả những yêu cầu của ứng dụng. Phần này trả lời cho câu hỏi "Cái gì?". · Phần thứ ba sẽ được trình bày vừa như một bản báo cáo đầy đủ vừa như bản báo cáo những màn hình (form) riêng biệt. Phần này trả lời cho câu hỏi "Làm cách nào?".

doc91 trang | Chia sẻ: lvbuiluyen | Lượt xem: 1916 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Đề tài Xây dựng một chương trình nhằm giúp đỡ những người quản lý trong một công ty nhằm làm giảm sự phụ thuộc vào sự biến đổi nhân sự trong công ty (tên tiếng Anh là Liability Management System), để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Luận văn tốt nghiệp Đề tài: Liability Management System I. Mục lục: II. Sách tham khảo: UML Distilled – Martin Fowler. ISBN: 0-201-32563-2. Applying UML and Patterns – Craig Larman. ISBN:0-13-748880-7. The Unified Modeling Language User Guide – Grady Booch, James Rumbaugh, Ivar Jacobson. ISBN: 0-201-57168-4. The Unified Modeling Language Reference Manual – James Rumbaugh, Ivar Jacobson, Grady Booch. ISBN: 0-201-30998-X. Special Using Java 1.1 Third Edition – Joe Weber. ISBN: 0-7897-1094-3 III. Những chữ viết tắt: UML: Unified Modeling Language. LMS: Liability Management System. HBS: Bui Son Hai LỜI GIỚI THIỆU: Đây là báo cáo luận văn tốt nghiệp, Đề tài: Xây dựng một chương trình nhằm giúp đỡ những người quản lý trong một cơng ty nhằm làm giảm sự phụ thuộc vào sự biến đổi nhân sự trong cơng ty (tên tiếng Anh là Liability Management System). Đề tài được thực hiện tại công ty ELCA trong mối liên kết giữa công ty ELCA và trường Đại học Kỹ Thuật. Bản báo cáo này cung cấp sự mô tả tổng quát về đề tài và những công việc đã làm: Trình bày về UML. Mô tả ứng dụng Liability Management System. Xác định các ràng buộc của ứng dụng. Trình bày thiết kế chi tiết của ứng dụng như khi ứng dụng đã được hiện thực. Nội dung của bản báo cáo được chia ra làm ba phần: Phần thứ nhất tóm tắt về UML và trình bày làm cách nào để ứng dụng các nguyên lý vào đề tài LMS. Phần thứ hai được trình bày như một bản báo cáo đầy đủ và diễn tả những yêu cầu của ứng dụng. Phần này trả lời cho câu hỏi "Cái gì?". Phần thứ ba sẽ được trình bày vừa như một bản báo cáo đầy đủ vừa như bản báo cáo những màn hình (form) riêng biệt. Phần này trả lời cho câu hỏi "Làm cách nào?". CÁC QUI ƯỚC: Phần này trình bày những qui ước áp dụng trong bản báo cáo để mô tả về Mô hình dữ liệu, nội dung, thuộc tính của các bảng… Mô hình dữ liệu: Hình vẽ Ý nghĩa Đây là mối quan hệ (0,n)-(1,1) có nghĩa là giữa 0 và n đối tượng của thực thể bên trái tương ứng với 1 đôi tượng duy nhất của thực thể bên phải. Đây là mối quan hệ (n,n)-(0,1) có nghĩa là n đối tượng của thực thể bên trái tương ứng vói 0 hay 1 đối tượng của thực thể bên phải. Mô hình ý niệm: Hình vẽ Ý nghĩa * 1 Đây là mối quan hệ nhiều-1 có nghĩa là nhiều đối tượng của thực thể bên trái tương ứng với một đối tượng của thực thể bên phải. Tables TABLENAME Attribute Type Description TABLENAME: tên của bảng. Attribute: tên của thuộc tính của bảng, khóa của bảng sẽ được gạch dưới. Type: kiểu của thuộc tính. Description:mô tả của thuộc tính. Window flowchart Ký hiệu Ý nghĩa Dialog Đây là một dialog dạng modal. Có nghĩa là khi dialog này hiển thị, toàn bộ ứng dụng sẽ dừng lại. Form Đây là một màn hình bình thường. UML Phần thứ nhất của đề tài là học về UML. Do UML đã được trình bày kỹ trong phần báo cáo Thực tập tốt nghiệp, phần này chỉ nói một cách sơ lược về UML. Giới thiệu về UML Unified Modeling Language (UML) là một ngôn ngữ mô hình hóa dùng để xác định, mô hình, xây dựng và trình bày báo cáo về những nhân tố, thành phần của một hệ thống phần mềm. Ngôn ngữ này nắm bắt những quyết định và hiểu biết về hệ thống đã được xây dựng. Nó còn được dùng để hiểu biết, thiết kế, định hình (configure), bảo trì và kiểm soát thông tin của hệ thống. UML là một hệ thống ký hiệu nhắm vào việc mô hình hệ thống sử dụng các khái niệm về hướng đối tượng. Những điểm tiện lợi của UML Mô tả các mô hình của hệ thống - cả thế giới thực và software - dựa trên những khái niệm về đối tượng. Là một ngôn ngữ mô hình hóa chuẩn, linh động và có tính diễn đạt cao. Nhờ đó, có thể trao đổi thông tin về hệ thống cho những người quan tâm về hệ thống một cách dễ dàng. Do đó, những chỗ sai sót sẽ dễ dàng được nhận ra (do nhiều người coi) và sẽ được sữa chữa sớm nên sẽ tốn ít thời gian. Mặt khác, do đây là một ngôn ngữ chuẩn nên dễ dàng khi lưu trữ cũng như khi lấy thông tin từ lưu trữ ra. Rất có ích khi muốn có một sự hiểu biết tổng quát về hệ thống. Làm thế nào để ứng dụng UML vào đề tài Dùng các tiêu chuẩn của việc phân tích và thiết kế theo hướng đối tượng (các tiêu chuẩn này cũng được đưa ra trong các sách nói về UML) - và dùng hệ thống ký hiệu của UML để diễn giải - để thực hiện những điều sau: Xác định các actor của hệ thống: Actor là người hay hệ thống khác có tương tác với hệ thống của chúng ta. Xác định các use case: use case là tài liệu mô tả về một chuỗi các sự kiện của một actor. Ngoài ra, xác định thêm use case nào tương ứng với actor nào. Use case chính là mô tả của một quá trình. Lược đồ use case (Use case diagram) được dùng để diễn tả các use case của hệ thống và mối quan hệ giữa các use case và các actor. Xác định các đối tượng của hệ thống, mối liên kết và các thuộc tính của chúng. Mô hình khái niệm (Conceptual Model) dùng để diễn tả điều này. Xác định các message được gửi đi giữa các đối tượng. Lược đồ tương tác (Interaction diagram) dùng để diễn tả điều này. Xác định mối liên kết giữa các đối tượng (hay nói cách khác: giữa các lớp) và các phương thức của mỗi lớp như khi được hiện thực. Class diagram dùng để diễn tả điều này. Define use case Define conceptual model Define collaboration diagrams Define design class diagrams Các ký hiệu UML cơ bản: Ký hiệu Ý nghĩa Tên của use case Use case: Use case là một sự tương tác giữa một hệ thống máy tính và người sữ dụng (hoặc là một hệ thống khác). Actor name Actor: Actor is người hoặc hệ thống khác tương tác với hệ thống của chúng ta. Tên class Thuộc tính: kiểu Method: kiểu trả về Class: Class là mô tả cho một tập hợp các đối tượng có các cấu trúc, hành vi và mối quan hệ tương tự nhau.. Association: Là mô tả của một sự nối kết giữa các đối tượng của các class. Dependency: Sự phụ thuộc là một mối quan hệ giữa hai thành phần mô hình hóa. Generalization: Sự tổng quát hóa: là mối liên kết dùng trong việc thừa kế.. Realization: Sự hiện thực là mối quan hệ giữa một sự mô tả và hiện thực của nó.. Package name Package: Gói: là một nhóm các thành phần. PHÂN TÍCH Giới thiệu, mục đích và các chức năng Mục đích của ứng dụng LMS là cung cấp một dịch vụ nhằm giúp đỡ những người có trách nhiệm trong việc quản trị nhân sự và đề án trong một công ty như người quản lý đồ án (project manager) hay người quản trị nhân sự (personnel manager). Nói kỹ hơn, công ty nhận thực hiện các đề án cho các khách hàng. Khách hàng của công ty có thể là một cá nhân hay công ty. Do yêu cầu công việc (như phải đúng thời hạn giao sản phẩm cho khách hàng…), khi một nhân viên đang làm cho một đề án nhưng lại muốn nghỉ việc vì một lý do nào đó (như bệnh tật, nghỉ phép….), công ty phải thay thế nhân viên nghỉ việc bằng một nhân viên khác tương đương để làm giảm đến mức thấp nhất ảnh hưởng của việc nhân viên xin nghỉ đó đến công việc đang làm. Vì những lý do đó, hệ thống phải đáp ứng được các yêu cầu: lưu trữ thông tin về khách hàng, thông tin về các nhân viên, thông tin về các đề án, các kỹ thuật (technology) để hiện thực đề án, các chức năng thương mại của đề án (business function - ví dụ một đề án làm các công việc về kế toán thì sẽ có chức năng là kế toán) và chức năng cung cấp nhân viên tương đương. Ngoài ra hệ thống phải được quản trị bởi một người admin, những ai muốn truy cập hệ thống phải được admin cấp account và password. Các actor liên quan đến hệ thống: Administrators Employee managers Project managers Ứng dụng được chia thành các phần sau: Quản trị nhân sự: thêm và quản trị thông tin của các nhân viên. Quản trị accounts: thêm và quản trị thông tin, quyền truy xuất hệ thống của các account trong hệ thống. Quản trị đề án: thêm và quản trị thông tin của các đề án (phần này bao hàm luôn cả chức năng tìm kiếm nhân viên tương đương với một nhân viên muốn nghỉ việc). Quản trị khách hàng: thêm, xóa và quản trị thông tin về các khách hàng của công ty. Quản trị kỹ thuật (Technology management): thêm và quản trị thông tin về các kỹ thuật mà công ty đã từng dùng để hiện thực các đề án. Quản trị các chức năng thương mại của các đề án mà công ty đã từng làm: thêm và quản trị thông tin về các chức năng. Administrator Employee Manager Quản trị accounts Quản trị nhân sự Quản trị đề án Quản trị khách hàng Quản trị chức năng thương mại Quản trị kỹ thuật Project Manager Mô tả các actor: Administrator: đây là người quản trị hệ thống. Administrator có nhiệm vụ quản lý các account của hệ thống, cung cấp account cho những cá nhân có nhiệm vụ quản lý đề án và nhân sự. Nhân viên quản lý nhân sự (employee manager): đây là nhân viên có nhiệm vụ quản lý nhân sự trong công ty. Ngoài ra, nhân viên quản lý nhân sự còn có thể dùng tất cả các chức năng của hệ thống (như quản lý khách hàng, quản trị đề án…) ngoại trừ chức năng quản trị hệ thống. Nhân viên quản lý đề án (project manager): đây là nhân viên có trách nhiệm quản trị thông tin của đề án mà anh ta là người quản lý của đề án đó. Thêm vào đó, nhân viên này có thể thêm và quản trị thông tin về các kỹ thuật (technology) và chức năng thương mại (business function). Yêu cầu: Hệ thống phải cung cấp chức năng để quản trị nhân sự cho công ty, thông tin về tất cả các nhân viên của công ty phải được lưu trữ (bao gồm thông tin của những nhân viên không còn làm cho công ty nữa). Chức năng này bao gồm: thêm thông tin về một nhân viên, xem thông tin của một nhân viên, cập nhật thông tin của một nhân viên… Hệ thống phải cung cấp chức năng để quản trị khách hàng của công ty: tất cả thông tin về khách hàng của công ty (có thể là cá nhân hay tổ chức) như tên, địa chỉ, số điện thoại, số fax… Chức năng này bao gồm thêm thông tin về khách hàng, xem/ cập nhật thông tin của một khách hàng, ấn định khách hàng cho một đề án và xóa thông tin của một khách hàng (chỉ những khách hàng chưa hề mua đề án nào của công ty mới có thể bị xóa được). Hệ thống phải cung cấp chức năng quản lý đề án của công ty: thông tin về các đề án của công ty được lưu trữ trong cơ sở dữ liệu của hệ thống. Đề án được xác định nhân viên, kỹ thuật và các chức năng thương mại. Đề án được lên lịch theo những giai đoạn của nó như: phân tích, thiết kế, hiện thực… Hệ thống phải cung cấp chức năng để quản lý các chức năng thương mại: chức năng này bao gồm thêm, xem, sửa… thông tin của một chức năng thương mại. Hệ thống phải cung cấp chức năng để quản trị kỹ thuật: chức năng này bao gồm thêm, xem, sửa… thông tin của một kỹ thuật (technology). Hệ thống phải cung cấp khả năng tìm kiếm đề án dựa trên các tiêu chuẩn: nhân sự, kỹ thuật, chức năng thương mại, thời gian và khách hàng. Hệ thống phải cung cấp chức năng cung cấp nhân viên tương đương để giúp đỡ những người quản lý thay thế một nhân viên nghỉ việc bằng một nhân viên tương đương nhằm làm giảm đến mức thấp nhất sự phụ thuộc của công ty vào sự biến đổi nhân sự. Ngoài ra, hệ thống còn phải cung cấp thêm các chức năng tìm kiếm một nhân viên, một khách hàng dựa vào thông tin được cung cấp. Các ràng buộc: Một nhân viên chỉ có thể làm cho một đề án tại một thời điểm nhất định. Một dự án chỉ có thể bán cho một khách hàng. Một nhân viên không thể bị đánh dấu là inactive (không còn làm cho công ty nữa) nếu anh ta đang làm cho một đề án nào đó. Một kỹ thuật hay một chức năng thương mại không thể bị đánh dấu inactive (công ty không còn dùng nữa) nếu đang có một đề án sử dụng chúng. Một khách hàng không thể bị xóa khỏi hệ thống nếu anh ta đã mua một đề án nào đó của công ty. Use cases Use cases ở mức trừu tượng cao: Use case : Đăng nhập hệ thống Actor :admin, manager. Mô tả :admin, manager muốn đăng nhập hệ thống. Nếu admin/manager cung cấp đúng user name và password thì hệ thống sẽ cho truy cập, nếu không hệ thống sẽ yêu cầu nhập lại username và password hay hệ thống sẽ tự đóng. Use case : Thay đổi password Actor : admin, manager Mô tả : admin, manager muốn đổi password của mình. Admin/Manager đăng nhập vào hệ thống, chọn chức năng “thay đổi password” và sau đó cung cấp password mới. Khi kết thúc, password sẽ bị thay đổi. Use case : Quản trị user accounts Actor : admin Mô tả : admin đăng nhập vào hệ thống. Sau khi đăng nhập, admin có thể tạo một account mới, xóa một account cũ… với chức năng "Quản trị hệ thống". Use case : Quản trị nhân sự Actor : employee manager Mô tả : employee manager quản trị nhân sự trong công ty. Employee manager có thể truy xuất tất cả thông tin của một nhân viên. Ngoài ra manager có thể thêm thông tin về một nhân viên, tìm kiếm một nhân viên thỏa mãn các yêu cầu. Use case : Quản trị đề án Actor : project manager, employee manager. Mô tả : manager quản trị đề án cho công ty. Anh ta có thể thêm thông tin về một đề án, xem sửa thông tin về một đề án, ấn định các kỹ thuật và chức năng thương mại của đề án, lập thời gian biểu cho các giai đoạn của đề án. Ngoài ra manager có thể tìm kiếm các đề án thỏa các yêu cầu, xác định nhân viên làm việc cho đề án. Và đặc biệt là có thể thay thế một nhân viên bằng một nhân viên tương đương do hệ thống cung cấp. Use case : Quản trị khách hàng Actor : employee manager Mô tả : manager quản trị thông tin về các khách hàng của công ty. Manager có thể thêm thông tin về một khách hàng, truy xuất và cập nhật thông tin của một khách hàng, tìm kiếm thông tin về một khách hàng. Use case : Quản trị chức năng thương mại và kỹ thuật Actor : employee manager, project manager. Mô tả : quản trị chức năng thương mại và kỹ thuật bao gồm thêm thông tin về một chức năng hay kỹ thuật mới, truy xuât và cập nhật thông tin của một chức năng hay kỹ thuật. Use case diagram Project Manager Administrator Employee Manager Quản trị account Quản trị nhân sự Đăng nhập Quản trị khách hàng Quản trị chức năng thương mại Quản trị kỹ thuật Quản trị đề án Thay đổi password Use case ở mức chi tiết : Các use case ở trên có thể được chi tiết hóa như sau: Use case: Đăng nhập hệ thống Use case : đăng nhập hệ thống Actors : administrator, managers. Type : primary Mô tả : đăng nhập và sử dụng hệ thống Diễn biến các sự kiện: Hành động của Actor Đáp ứng của hệ thống 1. Use case này bắt đầu khi admin hay manager chạy chương trình 2. Hệ thống hiện một dialog và yêu cầu nhập vào username và password. 3. Admin/ manager nhập vào username và password. 4. Hệ thống kiểm tra sự đúng đắn của username và password đã được cung cấp. Nếu đúng, hệ thống sẽ cho đăng nhập. Nếu không, hệ thống sẽ hiện lại dialog nhập password hay tự động thoát. Use case: Quản trị user account Use case này được chia nhỏ ra như sau: a) Use case : thêm một user account Actor : administrator Type : primary Mô tả : admin muốn thêm một account mới vào hệ thống. Admin đăng nhập vào hệ thống, yêu cầu chức năng "thêm một account", hệ thống sẽ yêu cầu cung cấp một số thông tin như tên và password của account. Nếu tên của account bị trùng với account cũ, hệ thống sẽ báo lỗi, nếu không hệ thống sẽ tạo ra một account mới. Tham khảo : use case “sửa đổi user account” Diễn biến các sự kiện: Hành động của Actor Đáp ứng của hệ thống 1. Use case này bắt đầu khi admin đăng nhập chương trình và yêu cầu chức năng "thêm account mới". 2. Hệ thống hiển thị dialog cho admin nhập vào tên và password của account mới. 3. Admin cung cấp tên, password và thông tin về account mới. 4. Hệ thống tạo một account mới trong cơ sở dữ liệu Diễn biến thay thế: Dòng 3: nếu tên của account bị trùng, hệ thống sẽ báo lỗi. b) Use case : Xem thông tin của một user account Actor : admin Mục đích : xem thông tin về một account. Type : primary Mô tả : admin đăng nhập vào hệ thống. Sau khi đăng nhập, admin chọn một account, sau đó admin chọn chức năng "Xem thông tin", hệ thống sẽ hiển thị thông tin của account đó. Diễn biến các sự kiện: Hành động của Actor Đáp ứng của hệ thống 1. Use case này bắt đầu khi admin đăng nhập hệ thống rồi chọn chức năng "quản trị hệ thống". 2. Hệ thống hiển thị một danh sách các account đang tồn tại. 3. Admin chọn một account. 4. Hệ thống hiển thị thông tin của account đã chọn c) Use case : Cập nhật user account Actor : admin Mục đích : sửa đổi quyền đăng nhập của một account hay thông tin về account đó. Type : primary Mô tả : admin đăng nhập vào hệ thống. Sau khi đăng nhập, admin chọn một account, sau đó admin chọn chức năng "Sửa đổi" rồisửa quyền đăng nhập hay thông tin của account đó. Diễn biến các sự kiện: Hành động của Actor Đáp ứng của hệ thống 1. Use case này bắt đầu khi admin đăng nhập hệ thống rồi chọn chức năng "quản trị hệ thống". 2. Hệ thống hiển thị một danh sách các account đang tồn tại. 3. Admin chọn một account và rồi sửa đổi thông tin của account đó. Sau đó, admin xác nhận việc sửa đổi bằng cách nhấn nút "OK" hay "Apply. 4. Hệ thống ghi nhận sự thay đổi Diễn biến thay thế: Dòng 3: nếu admin hủy việc sửa đổi bằng cách nhấn nút "Cancel", việc sửa đổi sẽ bị hủy bỏ. d) Use case : xóa một user account. Actor : admin Purpose : xóa một account ra khỏi hệ thống. Type : primary Mô tả : Admin đăng nhập vào hệ thống, sau khi đăng nhập, admin chọn account muốn xóa rồi chọn chức năng "xóa", hệ thống sẽ xóa account đã chọn. Diễn biến các sự kiện: Hành động của Actor Đáp ứng của hệ thống 1. Use case này bắt đầu khi admin đăng nhập hệ thống rồi chọn chức năng "quản trị hệ thống". 2. Hệ thống hiển thị một danh sách các account đang tồn tại. 3. Admin chọn một account rồi chọn chức năng "xóa" bằng cách nhấn nút "Delete". 4. Hệ thống hiển thị dialog yêu cầu xác nhận việc xóa. 5. Admin xác nhận việc xóa bằng cách nhấn "Yes". 6. Hệ thống xóa account đã chọn Diễn biến thay thế: Dòng 3: admin hủy việc xóa account bằng cách