Xây dựng hệ thống quản lý văn bản tại công ty TNHH TT-KTS Toàn Cầu Xanh

  • Số trang: 84 |
  • Loại file: DOC |
  • Lượt xem: 85 |
  • Lượt tải: 2
nhattuvisu

Đã đăng 26946 tài liệu

Mô tả:

1 LỜI CAM ĐOAN Em xin cam đoan đây là công trình nghiên cứu của em được thực hiện tại công ty TNHH TT-KTS Toàn Cầu Xanh, với sự giúp đỡ của giáo viên hướng dẫn thầy Đặng Trung Thành, các anh chị trong đơn vị thực tập. Các số liệu, kết quả nêu trong khóa luận tốt nghiệp là trung thực và chưa từng được ai công bố trong bất kỳ công trình nào khác. Đà Nẵng, ngày tháng năm 2011 Trần Thị Thúy Hằng Đề tài: Phân tích và thiết kế hệ thống quản lý văn bản 2 LỜI CẢM ƠN Em chân thành cảm ơn các thầy cô giáo Khoa Thống Kê Tin Học – Trường Đại học Kinh Tế – Đại học Đà Nẵng và công ty TNHH TT-KTS Toàn Cầu Xanh đã hỗ trợ mọi điều kiện giúp em có được một môi trường học tập tốt, trang bị cho em những kiến thức và hành trang quý báu để bước vào đời. Đặc biệt, em xin chân thành cảm ơn thầy giáo Đặng Trung Thành đã tận tình hướng dẫn, động viên và giúp đỡ em trong suốt thời gian thực hiện đề tài. Đà Nẵng, ngày tháng năm 2011 Sinh viên thực hiện Trần Thị Thúy Hằng Đề tài: Phân tích và thiết kế hệ thống quản lý văn bản 3 DANH MỤC BẢNG BIỂU Bảng 2-1: Xác định các tác nhân và use case...............................................................- 38 Bảng 2-2: Bảng documents..........................................................................................- 66 Bảng 2-3: Bảng document_types..................................................................................- 66 Bảng 2-4: Bảng users...................................................................................................- 67 Bảng 2-5: Bảng send_users..........................................................................................- 67 Bảng 2-6: Bảng send_departments...............................................................................- 68 Bảng 2-7: Bảng document_users..................................................................................- 68 Bảng 2-8: Bảng group_users........................................................................................- 68 Bảng 2-9: Bảng tasks....................................................................................................- 69 Bảng 2-10: Bảng document_tasks................................................................................- 69 Bảng 2-11: Bảng task_details......................................................................................- 69 Bảng 2-12: Bảng permissions.......................................................................................- 70 Bảng 2-13: Bảng group_permissions...........................................................................- 70 Bảng 2-14: Bảng groups...............................................................................................- 70 Bảng 2-15: Bảng departments......................................................................................- 70 - Đề tài: Phân tích và thiết kế hệ thống quản lý văn bản 4 DANH MỤC HÌNH ẢNH Hình 1-1: Mô tả mô hình MVC....................................................................................- 22 Hình 2-1: Sơ đồ tổ chức công ty TNHH TT-KTS Toàn Cầu Xanh..............................- 26 Hình 2-2: Lưu đồ quy trình xử lý văn bản đến.............................................................- 31 Hình 2-3: Lưu đồ quy trình xử lý văn bản đi................................................................- 32 Hình 2-4: Lưu đồ quy trình xử lý văn bản nội bộ.........................................................- 34 Hình 2-5: Mối quan hệ giữa các tác nhân trong hệ thống.............................................- 39 Hình 2-6: Biểu đồ Use case tổng quát..........................................................................- 40 Hình 2-7: Gói quản lý văn bản đến...............................................................................- 41 Hình 2-8: Gói quản lý văn bản đi.................................................................................- 44 Hình 2-9: Gói quản lý văn bản nội bộ..........................................................................- 47 Hình 2-10: Gói Quản lý công việc................................................................................- 51 Hình 2-11: Gói quản trị hệ thống.................................................................................- 54 Hình 2-12: Biểu đồ tuần tự của Ghi bút phê.................................................................- 56 Hình 2-13: Biểu đồ tuần tự của Xem chi tiết văn bản...................................................- 57 Hình 2-14: Biểu đồ tuần tự của Chuyển văn bản..........................................................- 57 Hình 2-15: Biểu đồ tuần tự của Thêm văn bản đến......................................................- 58 Hình 2-16: Biểu đồ tuần tự của Cập nhật văn bản........................................................- 59 Hình 2-17: Xóa văn bản trong bảng SendUser.............................................................- 60 Hình 2-18: Xóa văn bản trong bang SendDepartment..................................................- 61 Hình 2-19: Biểu đồ hoạt động của Chuyển văn bản.....................................................- 62 Hình 2-20: Biểu đồ hoạt động của Cập nhật thông tin văn bản....................................- 63 Hình 2-21: Biểu đồ lớp.................................................................................................- 64 Hình 2-22: Mô hình cơ sở dữ liệu quan hệ...................................................................- 66 Hình 3-1: Màn hình đăng nhập.....................................................................................- 72 Hình 3-2: Giao diện chính............................................................................................- 73 Hình 3-3: Màn hình hiển thị danh sách văn bản đến....................................................- 73 HÌnh 3-4: Màn hình hiển thị danh sách văn bản đi.......................................................- 73 HÌnh 3-5: Màn hình thêm mới văn bản đến..................................................................- 74 Đề tài: Phân tích và thiết kế hệ thống quản lý văn bản 5 Hình 3-6: Màn hình thêm mới văn bản đi....................................................................- 74 Hình 3-7: Màn hình ghi bút phê của lãnh đạo..............................................................- 75 - Đề tài: Phân tích và thiết kế hệ thống quản lý văn bản 6 MỤC LỤC LỜI CAM ĐOAN..........................................................................................................- 1 LỜI CẢM ƠN................................................................................................................- 2 DANH MỤC BẢNG BIỂU............................................................................................- 3 DANH MỤC HÌNH ẢNH..............................................................................................- 4 MỤC LỤC..................................................................................................................... - 6 LỜI MỞ ĐẦU................................................................................................................ - 8 Chương 1 CƠ SỞ LÝ LUẬN.......................................................................................- 11 1.1. Phương pháp phân tích thiết kế..........................................................................- 11 1.1.1. Thế nào là hệ thống?...................................................................................- 11 1.1.2. Phân tích thiết kế hệ thống..........................................................................- 12 1.1.3. Ngôn ngữ Unified Modeling Language (UML)..........................................- 14 1.2. Ngôn ngữ lập trình PHP và hệ quản trị cơ sở dữ liệu MySQL...........................- 16 1.2.1. Hệ quản trị cơ sở dữ liệu MySQL...............................................................- 16 1.2.2. Ngôn ngữ lập trình PHP..............................................................................- 17 1.2.3. Apache........................................................................................................- 18 1.2.4. Wamp Server..............................................................................................- 18 1.3. CakePHP Framework........................................................................................- 19 1.3.1. PHP Framework..........................................................................................- 19 1.3.2. CakePHP Framework..................................................................................- 19 1.4. Một số vấn đề liên quan đến quản lý văn bản....................................................- 21 1.4.1. Quản lý văn bản đi......................................................................................- 22 1.4.2. Quản lý văn bản đến....................................................................................- 23 Chương 2 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG.................................................- 25 2.1. Khảo sát hệ thống..............................................................................................- 25 2.1.1. Sơ đồ tổ chức công ty..................................................................................- 25 2.1.2. Chức năng, nhiệm vụ của công ty...............................................................- 25 2.1.3. Mô tả tổng quan thực tế trong công tác văn thư..........................................- 28 2.2. Phân tích hệ thống.............................................................................................- 34 Đề tài: Phân tích và thiết kế hệ thống quản lý văn bản 7 2.2.1. Xác định tác nhân và ca sử dụng.................................................................- 34 2.3. Biểu đồ tuần tự..................................................................................................- 54 2.3.1. Ghi bút phê..................................................................................................- 54 2.3.2. Xem chi tiết văn bản...................................................................................- 55 2.3.3. Chuyển văn bản...........................................................................................- 55 2.3.4. Thêm văn bản đến.......................................................................................- 56 2.3.5. Cập nhật thông tin văn bản..........................................................................- 57 2.3.6. Xoá văn bản................................................................................................- 58 2.4. Chức năng theo từng hoạt động.........................................................................- 59 2.4.1. Chuyển văn bản...........................................................................................- 59 2.4.2. Cập nhật thông tin văn bản..........................................................................- 61 2.5. Biểu đồ Lớp.......................................................................................................- 62 2.6. Thiết kế cơ sở dữ liệu........................................................................................- 62 2.6.1. Mô hình cơ sở dữ liệu quan hệ....................................................................- 63 2.6.2. Danh mục bảng...........................................................................................- 64 Chương 3 CÀI ĐẶT KẾT QUẢ CHẠY THỬ.............................................................- 70 3.1. Cài đặt................................................................................................................ - 70 3.2. Kết quả chạy thử................................................................................................- 70 3.2.1. Màn hình đăng nhập....................................................................................- 70 3.2.2. Giao diện chính:..........................................................................................- 70 3.2.3. Màn hình hiển thị danh sách văn bản đến...................................................- 71 3.2.4. Màn hình hiển thị danh sách văn bản đi......................................................- 71 3.2.5. Màn hình thêm mới văn bản đến.................................................................- 71 3.2.6. Màn hình thêm mới văn bản đi....................................................................- 72 3.2.7. Màn hình ghi bút phê..................................................................................- 73 3.2.8. Màn hình tạo mới công việc........................................................................- 73 KẾT LUẬN.................................................................................................................. - 74 DANH MỤC CÁC TÀI LIỆU THAM KHẢO............................................................- 76 PHỤ LỤC..................................................................................................................... - 77 Đề tài: Phân tích và thiết kế hệ thống quản lý văn bản 8 ĐÁNH GIÁ CỦA GIÁO VIÊN HƯỚNG DẪN..........................................................- 81 ĐÁNH GIÁ CỦA GIÁO VIÊN HƯỚNG DẪN..........................................................- 82 ĐÁNH GIÁ CỦA HỘI ĐỒNG PHẢN BIỆN..............................................................- 83 - Đề tài: Phân tích và thiết kế hệ thống quản lý văn bản 9 LỜI MỞ ĐẦU 1. Lý do chọn đề tài Trước đây công tác quản lý của hầu hết các cơ quan, đơn vị, xí nghiệp trường học ở nước ta chủ yếu là phương pháp thủ công vì thế mọi công tác quản lý lưu trữ hồ sơ đều sử dụng các giấy tờ. Điều này gây ra nhiều khó khăn trong việc lưu trữ như dễ bị thất lạc hay hư hỏng qua thời gian, việc tìm kiếm tốn nhiều thời gian, công sức và đòi hỏi nhiều nguồn nhân lực… do vậy hiệu quả của công tác chưa cao. Với sự phát triển nhanh và mạnh mẽ của Công nghệ thông tin ở nước ta hiện nay, việc ứng dụng tin học vào đời sống và công việc đã trở nên rất phổ biến và cần thiết. Công nghệ thông tin có mặt ở tất cả các lĩnh vực của xã hội, làm thay đổi phương pháp làm việc, mang lại một hiệu suất công việc cao và hiệu quả. Ngày nay hầu hết mọi hoạt động kinh doanh đều dựa trên Internet để phát triển. Website là một sản phẩm tất yếu của công nghệ thông tin được ra đời nhằm đáp ứng nhu cầu cần thiết của con người trong xã hội hiện đại. Các công ty, tổ chức hay cá nhân đều muốn xây dựng website để phục vụ cho các nhu cầu lợi ích của mình. Các hoạt động thương mại điện tử thông qua các website ngày càng phát triển và hiệu quả. Quản lý văn bản là công việc hằng ngày của các văn thư hay thư ký văn phòng của mỗi cơ quan để thuận lợi và quản lý một cách có hiệu quả nên đã có nhiều phần mềm quản lý văn bản ra đời. Tại đơn vị thực tập công ty đang phát triển hệ thống văn phòng điện tử, nhưng công tác quản lý trong nội bộ công ty còn chưa được ứng dụng công nghệ thông tin. Dựa trên những lý do trên mà em lựa chọn đề tài: “Xây dựng hệ thống quản lý văn bản tại công ty TNHH TT-KTS Toàn Cầu Xanh”, ứng dụng cho công việc quản lý văn bản tại công ty. 2. Mục đích và nhiệm vụ nghiên cứu Đề tài: Phân tích và thiết kế hệ thống quản lý văn bản 10 Mục đích chính là xây dựng hệ thống quản lý văn bản trên nền tảng ứng dụng web thực hiện các chức năng quản lý văn bản. Hệ thống giúp cho việc lưu trữ văn bản một các tập trung và có hệ thống, thuận tiện cho việc tra cứu và sử dụng văn bản. Hệ thống còn cho phép theo dõi quản lý công viêc theo văn bản liên quan, cho phép lãnh đạo ghi ý kiến xử lý, giao việc cho văn thư và nhân viên trong công ty. Và khi đó công việc của văn thư sẽ nhẹ nhàng hơn, họ chủ động trong việc kiểm soát, theo dõi công việc và tiết kiệm thời gian xử lý văn bản. Những kết quả nghiên cứu nhằm ứng dụng có hiệu quả cho công tác quản lý văn bản tại công ty TNHH TT-KTS Toàn Cầu Xanh. Để hoàn thành mục đích ý tưởng đề ra cần nghiên cứu các nội dung như sau:  Phân tích quy trình quản lý văn bản tại công ty để đề ra giải pháp hợp lý trong việc xây dựng và triển khai hệ thống quản lý văn bản.  Nghiên cứu ứng dụng cakePHP, hệ quản trị cơ sở dữ liệu MySQL, ngôn ngữ lập trình PHP,…trong tiến trình phân tích thiết kế hệ thống. 3. Phạm vi nghiên cứu Ứng dụng cho công tác quản lý văn bản tại công ty TNHH TT-KTS Toàn Cầu Xanh. 4. Phương pháp nghiên cứu - Sử dụng phương pháp phân tích thiết kế hướng đối tượng để phân tích yêu cầu thực tế của bài toán và xây dựng các bước phân tích hệ thống để hỗ trợ việc lập trình, xây dựng ứng dụng. 5. Kết quả dự kiến - Phân tích được quy trình quản lý, lưu trữ văn bản. - Phân tích thiết kế hệ thống quản lý văn bản. - Chạy chương trình demo. 6. Đặt tên đề tài Đề tài: Phân tích và thiết kế hệ thống quản lý văn bản 11 “Xây dựng hệ thống quản lý văn bản tại công ty TNHH TT-KTS Toàn Cầu Xanh” 7. Bố cục đề tài Nội dung chính của luận văn được chia thành 3 chương như sau: Chương 1: Cơ sở lý luận Chương 2: Khảo sát, phân tích và thiết kế hệ thống Chương 3: Cài đặt và kết quả chạy thử Đề tài: Phân tích và thiết kế hệ thống quản lý văn bản 12 Chương 1 CƠ SỞ LÝ LUẬN 1.1. Phương pháp phân tích thiết kế 1.1.1. Thế nào là hệ thống? Hệ thống là tập hợp các phần tử tương tác được tổ chức nhằm thực hiện một mục đích xác định. Hệ thống có rất nhiều thành phần bao gồm các phần tử, môi trường của hệ thống, các đầu vào và đầu ra, trạng thái và hành vi, cấu trúc và mục tiêu của hệ thống. Các phần tử ở đây tập hợp các phương tiện vật chất và nhân lực. Tổ chức tạo thành một hệ thống mở, nghĩa là liên hệ với môi trường. Một số phần tử của hệ thống có sự tương tác với bên ngoài (cung ứng, thương mại,…). Các tổ chức đều là những hệ thống sống và phát triển. Hệ thống thông tin là một hệ thống mà mục tiêu tồn tại của nó là cũng cấp thông tin phục vụ cho hoạt động của con người trong một tổ chức nào đó. Ta có thể hiểu hệ thống thông tin là hệ thống mà mối liên hệ giữa các thành phần của nó cũng giống như mối liên hệ giữa nó với các hệ thống khác là sự trao đổi thông tin. Hệ thống thông tin quản lý trợ giúp các hoạt động quản lý của tổ chức như lập kế hoạch, kiểm tra thực hiện, tổng hợp và làm báo cáo, làm các lý thuyết quản lý trên cơ sở các quy trình thủ tục cho trước. Trong bất kỳ một cơ quan tổ chức xã hội nào thì thông tin luôn là một phần không thể thiếu, do đó việc quản lý cũng là một điều tất yếu. Tùy theo nhu cầu và đặc thù thông tin riêng của từng tổ chức mà mỗi tổ chức có một cách quản lý thông tin khác nhau. Tuy nhiên để có thể quản lý và tổ chức các thông tin ấy có hiệu quả người quản lý cần phải phân tích toàn bộ hệ thống của tổ chức cũng như HTTT trong tổ chức để có thể tạo nên một HTTTQL có hiệu quả. Đó là lý do chúng ta cần phải phân tích và thiết kế hệ thống thông tin. Đề tài: Phân tích và thiết kế hệ thống quản lý văn bản 13 1.1.2. Phân tích thiết kế hệ thống 1.1.2.1. Thế nào là phân tích thiết kế hệ thống Phân tích thiết kế hệ thống chính là sự khảo sát một hệ thống hay một vấn đề để cải tiến hệ thống đang tồn tại hoặc thiết kế và cài đặt hệ thống mới. Thiết kế hệ thống chính là việc thiết kế các thành phần, các hệ thống con của hệ thống, tạo dựng các mối liên hệ, liên kết giữa các thành phần và đảm bảo toàn hệ thống vận hành tốt. Những người thiết kế hệ thống chính là các kiến trúc sư của hệ thống. Việc phân tích thiết kế hệ thống gắn liền với việc sử dụng phần cứng và phần mềm tin học, bao gồm việc nghiên cứu chi tiết vấn đề, thiết kế, xây dựng những phương pháp tốt để giải quyết, nhằm đạt được mục đích theo những hạn chế và khả năng có thể. 1.1.2.2. Các phương pháp phân tích thiết kế a. Phương pháp phân tích thiết kế hướng cấu trúc Đây là lối tiếp cận truyền thống của ngành Công nghệ phần mềm. Theo lối tiếp cận này, chúng ta quan tâm chủ yếu tới những thông tin mà hệ thống sẽ giữ gìn. Chúng ta hỏi người dùng xem họ sẽ cần những thông tin nào, rồi chúng ta thiết kế ngân hàng dữ liệu để chứa những thông tin đó, cung cấp Forms để nhập thông tin và in báo cáo để trình bày các thông tin. Nói một cách khác, chúng ta tập trung vào thông tin và không mấy để . đến những gì có thể xảy ra với những hệ thống đó và cách hoạt động (ứng xử) của hệ thống là ra sao. Đây là lối tiệm cận xoay quanh dữ liệu và đã được áp dụng để tạo nên hàng ngàn hệ thống trong suốt nhiều năm trời. Lối tiếp cận xoay quanh dữ liệu là phương pháp tốt cho việc thiết kế ngân hàng dữ liệu và nắm bắt thông tin, nhưng nếu áp dụng cho việc thiết kế ứng dụng lại có thể khiến phát sinh nhiều khó khăn. Một trong những thách thức lớn là yêu cầu đối với các hệ thống thường xuyên thay đổi. Một hệ thống xoay quanh dữ liệu có thể dễ dàng xử lý việc thay đổi ngân hàng dữ liệu, nhưng lại khó thực thi những thay đổi trong nguyên tắc nghiệp vụ hay cách hoạt động của hệ thống. Đề tài: Phân tích và thiết kế hệ thống quản lý văn bản 14 Phương pháp hướng đối tượng đã được phát triển để trả lời cho vấn đề đó. Với lối tiếp cận hướng đối tượng, chúng ta tập trung vào cả hai mặt của vấn đề : thông tin và cách hoạt động. b. Phương pháp phân tích thiết kế hướng đối tượng Hướng đối tượng là thuật ngữ thông dụng hiện thời của ngành công nghiệp phần mềm. Các công ty đang nhanh chóng tìm cách áp dụng và tích hợp công nghệ mới này vào các ứng dụng của họ. Thật sự là đa phần các ứng dụng hiện thời đều mang tính hướng đối tượng. Nhưng hướng đối tượng có nghĩa là gì? Lối tiếp cận hướng đối tượng là một lối tư duy về vấn đề theo lối ánh xạ các thành phần trong bài toán vào các đối tượng ngoài đời thực. Với lối tiếp cận này, chúng ta chia ứng dụng thành các thành phần nhỏ, gọi là các đối tượng, chúng tương đối độc lập với nhau. Sau đó ta có thể xây dựng ứng dụng bằng cách chắp các đối tượng đó lại với nhau. Hãy nghĩ đến trò chơi xây lâu đài bằng các mẫu gỗ. Bước đầu tiên là tạo hay mua một vài loại mẫu gỗ căn bản, từ đó tạo nên các khối xây dựng căn bản của mình. Một khi đã có các khối xây dựng đó, bạn có thể chắp ráp chúng lại với nhau để tạo lâu đài. Tương tự như vậy một khi đã xây dựng một số đối tượng căn bản trong thế giới máy tính, bạn có thể chắp chúng lại với nhau để tạo ứng dụng của mình. Phân tích dựa trên việc tìm hiểu hệ thống là cái gì và hệ thống làm gì. Các chức năng của hệ thống được biểu diễn thông qua các đối tượng, nên việc thay đổi, tiến hóa các chức năng sẽ không ảnh hưởng đến cấu trúc tĩnh của phần mềm, có khả năng thống nhất cao để xây dựng các thực thể phức tạp từ các thực thể đơn giản. Phương pháp phân tích thiết kế hệ thống hướng đối tượng thực hiện tìm kiếm, mô tả các đối tượng từ đó thực hiện đặc tả các hành vi, bổ sung chi tiết nếu cần thiết để cài đặt hệ thống. 1.1.2.3. Lựa chọn phương pháp phân tích thiết kế Phương pháp phân tích và thiết kế hệ thống hướng đối tượng giúp chúng ta hiểu rõ những công việc phải làm, những yêu cầu thực tế về số liệu cần phải đáp ứng, và trên cơ sở đó xây dựng các mô hình cần thiết để mô tả mối tương quan giữa các thành phần trong Đề tài: Phân tích và thiết kế hệ thống quản lý văn bản 15 hệ thống, từ đó dễ dàng hơn rất nhiều trong việc triển khai lập trình cũng như bảo trì, nâng cấp cho hệ thống hoạt động tốt, đáp ứng các yêu cầu hay thay đổi của người sử dụng. Phương pháp phân tích và thiết kế hướng đối tượng thực hiện theo các thuật ngữ và khái niệm của phạm vi lĩnh vực ứng dụng (tức là của doanh nghiệp hay đơn vị mà hệ thống tương lai cần phục vụ), nên nó tạo sự tiếp cận tương ứng giữa hệ thống và vấn đề thực ngoài đời. Trong ví dụ bán xe ô tô, mọi giai đoạn phân tích thiết kế và thực hiện đều xoay quanh các khái niệm như khách hàng, nhân viên bán hàng, xe ô tô, … Vì quá trình phát triển phần mềm đồng thời là quá trình cộng tác của khách hàng/người dùng, nhà phân tích, nhà thiết kế, nhà phát triển, chuyên gia lĩnh vực, chuyên gia kỹ thuật, ... nên lối tiếp cận này khiến cho việc giao tiếp giữa họ với nhau được dễ dàng hơn. Vì thế trong đề tài này em chọn phương pháp phân tích thiết kế hướng đối tượng để phân tích thiết kế bài toán của mình. Trên cơ sở yêu cầu trên, chúng em chọn UML để tiến hành phân tích thiết kế hệ thống cho hệ thống quản lý văn bản tại công ty TNHH TTKTS Toàn Cầu Xanh. UML được phát triển bởi Grady Booch, James Rumbaugh và Ivar Jacobson tại công ty phần mềm Rational. Mục tiêu của họ là tạo ra một phương pháp mới, phương pháp thống nhất dựa trên các phương pháp PTTK hướng đối tượng đề xuất riêng rẽ trước đó bởi Grady Booch, James Rumbaugh và Jacobson. Dựa vào việc hợp nhất các ký hiệu sử dụng trong khi phân tích và thiết kế các phương pháp đó, UML đưa ra một nền tảng chuẩn bị cho việc Phân tích và thiết kế và kết quả có thể vận dụng để tự sinh mã nguồn. UML ra đời cuối năm 1980, được hợp nhất từ các phương pháp hướng đối tượng Booch, Oose (Jacobson) và OMT (Rum buygh), UML được hãng Rational phát triển từ năm 1997, từ năm 1997 được hãng OMG phát triển. 1.1.3. Ngôn ngữ Unified Modeling Language (UML) 1.1.3.1. UML là gì? UML là một ngôn ngữ mô hình hoá thống nhất có phần chính bao gồm những ký hiệu hình học, được các phương pháp hướng đối tượng sử dụng để thể hiện và miêu tả các Đề tài: Phân tích và thiết kế hệ thống quản lý văn bản 16 thiết kế của một hệ thống. UML có thể được sử dụng làm công cụ giao tiếp giữa người dùng, nhà phân tích, nhà thiết kế và nhà phát triển phần mềm. Ngôn ngữ mô hình hóa thống nhất (Unifield Modeling Language – UML) là một ngôn ngữ để biểu diễn mô hình theo hướng đối tượng với chủ đích là: - Mô hình hoá các hệ thống sử dụng các khái niệm hướng đối tượng. - Thiết lập một kết nối từ nhận thức của con người đến các sự kiện cần mô hình hoá. - Giải quyết vấn đề về mức độ thừa kế trong các hệ thống phức tạp, có nhiều rang buộc khác nhau. - Tạo một ngôn ngữ mô hình hoá có thể sử dụng được bởi người và máy. 1.1.3.2. UML và các giai đoạn của chu trình phát triển phần mềm Sử dụng UML để PTTKHT cần thực hiện các bước như sau: Bước 1: Xác định các Tác nhân (tác nhân), các trường hợp sử dụng (use case), mối quan hệ giữa các trường hợp sử dụng, từ đó xây dựng được biểu đồ các trường hợp sử dụng. Bước 2: Mô tả các thuộc tính và các phương pháp cho từng lớp. Bước 3: Xác định lớp các đối tượng, mối quan hệ giữa chúng để xây dựng biểu đồ lớp, từ đó xây dựng các biểu đồ đối tượng. Bước 4: Xác định các thủ tục từ các trường hợp sử dụng, từ đó xây dựng biểu đồ trình tự và biểu đồ hợp tác. Bước 5: Xác định các ứng xử của mỗi đối tượng thông qua các biểu đồ. Bước 6: Xác định kiến trúc của hệ thống bằng cách xác định các thành phần của hệ thống, xây dựng các biểu đồ thành phần và biểu đồ triển khai. 1.1.3.3. Các biểu đồ trong mô hình UML Biểu đồ là các hình vẽ bao gồm các ký hiệu phần tử mô hình hóa được sắp xếp để minh họa một thành phần cụ thể hay một khía cạnh cụ thể của hệ thống. Một mô hình hệ thống thường có nhiều loại biểu đồ, mỗi loại có nhiều biểu đồ khác nhau. Một biểu đồ là Đề tài: Phân tích và thiết kế hệ thống quản lý văn bản 17 một thành phần của một hướng nhìn cụ thể; và khi được vẽ ra, nó thường thường cũng được xếp vào một hướng nhìn. Mặt khác, một số loại biểu đồ có thể là thành phần của nhiều hướng nhìn khác nhau, tùy thuộc vào nội dung của biểu đồ. - Biểu đồ tình huống sử dụng (Use Case Diagrams) - Biểu đồ hoạt động (Activity Diagrams) - Biểu đồ trạng thái (State Diagrams) - Biểu đồ tuần tự (Sequence Diagrams) - Biểu đồ truyền thông (Communication Diagrams) - Biểu đồ tổng quan tương tác (Collaboration Diagrams Interaction Overview Diagrams) - Biểu đồ thời gian (Timing Diagrams) - Biểu đồ lớp (Class Diagrams) - Biểu đồ đối tượng ( Object Diagrams) - Biểu đồ gói (Package Diagrams) - Biểu đồ thành phần (Component Diagrams) - Biểu đồ triển khai (Deployment Diagrams) - Biểu đồ cấu trúc phức hợp (Composite Structure Diagrams) 1.2. Ngôn ngữ lập trình PHP và hệ quản trị cơ sở dữ liệu MySQL 1.2.1. Hệ quản trị cơ sở dữ liệu MySQL MySQL là hệ quản trị cơ sở dữ liệu miễn phí, được tích hợp sử dụng chung với Apache, PHP. Chính yếu tố phát triển trong cộng đồng mã nguồn mở nên MySQL đã qua rất nhiều sự hỗ trợ của những lập trình viên yêu thích mã nguồn mở. MySQL cũng có một các truy xuất và mã lệnh tương tự với ngôn ngữ SQL. Nhưng MySQL không bao quát toàn bộ những câu truy vấn cao cấp như SQL. Về bản chất MySQL chỉ đáp ứng việc truy xuất đơn giản trong quá trình vận hành của website nhưng hầu hết có thể giải quyết các bài toán trong PHP. MySQL cũng là hệ quản trị cơ sở dữ liệu được lựa chọn cho một thế hệ ứng dụng được xây dựng trên LAMP (Linux, Apache, MySQL, PHP/ Perl/ Python). Nhiều tổ chức Đề tài: Phân tích và thiết kế hệ thống quản lý văn bản 18 lớn và phát triển nhanh bao gồm Facebook, Google, Adobe, Alcatel Lucent và Zappos dựa vào MySQL để tiết kiệm thời gian và tiền bạc cung cấp chất lượng cao cho web-sites, hệ thống kinh doanh quan trọng và gói phần mềm. MySQL chạy trên hơn 20 nền tảng bao gồm cả Linux, Windows, Mac OS, Solaris, HP-UX, IBM AIX, đưa cho bạn sự linh hoạt trong kiểm soát. Cũng giống như các hệ cơ sở dữ liệu khác, khi làm việc với cơ sở dữ liệu MySQL, đăng ký kết nối, tạo cơ sở dữ liệu quản lý người dùng, phân quyền sử dụng, thiết kế đối tượng Table của cơ sở dữ liệu và xử lý dữ liệu. 1.2.2. Ngôn ngữ lập trình PHP PHP là chữ viết tắt của “Personal Home Page” do Rasmus Lerdorf tạo ra năm 1994, để theo dõi người dùng truy cập lý lịch trực tuyến của ông. Vì tính hữu dụng, khả năng phát triển, PHP đã bắt đầu được sử dụng trong môi trường chuyên nghiệp và nó đã trở thành “PHP: Hypertext Preprocessor”. Theo Website chính thức của PHP ở địa chỉ www.php.net thì PHP là “một ngôn ngữ kịch bản nhúng trong HTML”. “PHP nhúng trong HTML”, có nghĩa là PHP có thể được đặt rải rác trong HTML, giúp cho việc phát triển các website động được dễ dàng, PHP là ngôn ngữ kịch bản (scripting language). PHP được sử dụng để phát triển Website động vì nó tốt, nhanh và dễ dàng nghiên cứu hơn các giải pháp khác. PHP có khả năng thực hiện và tích hợp chặt chẽ với hầu hết các cơ sở dữ liệu có sẵn, có tính bền vững, linh động và khả năng phát triển không giới hạn. PHP là module thông dụng cho Apache (máy chủ web phổ biến nhất) và đã có mặt trên rất nhiều Website. PHP là một ngôn ngữ máy chủ, mã lệnh PHP sẽ tập trung trên máy chủ để phục vụ các trang web theo yêu cầu của người dùng thông qua trình duyệt. 1.2.3. Apache Apache, chương trình máy chủ Hyper Text Transfer Protocol (HTTP) là một chương trình dành cho máy chủ đối thoại giao thức HTTP. Apache chạy trên hệ điều hành tương Đề tài: Phân tích và thiết kế hệ thống quản lý văn bản 19 tự như Unix, Microsoft Windows, Novell Netware và các hệ điều hành khác. Apache đóng một vai trò quan trong trong quá trình phát triển của World Wide Web. Khi được phát hành lần đầu, Apache là chương trình máy chủ mã nguồn mở duy nhất có khả năng cạnh tranh với chương trình máy chủ tương tự của Netscape Communications Corporation mà ngày nay được biết đến qua tên thương mại Sun Java System Web Server. Từ đó trở đi, Apache đã không ngừng tiến triển và trở thành một phần mềm có sức cạnh tranh mạnh so với các chương trình máy chủ khác về mặt hiệu suất và tính năng phong phú. Từ tháng 4 năm 1996, Apache trở thành một chương trình máy chủ HTTP thông dụng nhất. Hơn nữa Apache thường được dùng để so sánh với các phầm mềm khác có chức năng tương tự. Tính đến tháng 1 năm 2007 thì Apache chiếm đến 60% thị trường các chương trình phân phối trang web. Apache được phát triển và duy trì bởi một cộng đồng mã nguồn mở dưới sự bảo trợ của Apache Software Foundation. Apache được phát hành giấy với giấy phép Apache license và là một phần mềm tự do và miễn phí. 1.2.4. Wamp Server Wamp là một gói phần mềm Web Server tất cả trong một gồm: Apache, MySQL, PHP chạy trên nền Windows. Các tính năng nổi bật của Wamp: - Có thể cài đặt dễ dàng. - Wamp được cập nhật đều đặn. - Cho phép lựa chọn các phiên bản PHP, MySQL khác nhau. - Rất tốt cho việc tạo máy chủ Web để chạy thử, thiết kế website bằng PHP. - Hỗ trợ phiên bản PHP 5 mới nhất. - Tương thích Windows XP/ Windows Vista/ Windows 7. - Hoàn toàn miễn phí. Đề tài: Phân tích và thiết kế hệ thống quản lý văn bản 20 1.3. CakePHP Framework 1.3.1. PHP Framework PHP Framework làm cho sự phát triển của những ứng dụng web viết bằng ngôn ngữ PHP trở nên trôi chảy hơn bằng cách cung cấp một cấu trúc cơ bản để xây dựng những ứng dụng đó. Hay nói cách khác, PHP framework giúp đỡ các bạn thúc đẩy nhanh chóng quá trình phát triển ứng dụng, giúp bạn tiết kiệm được thời gian và sự ổn định cho ứng dụng, và giảm thiểu số lần phải viết lại mã cho lập trình viên. Ngoài ra Framework còn giúp những người mới bắt đầu có thể xây dựng các ứng dụng ổn định hơn nhờ việc tương tác chính xác giữa các database, mã PHP và giao diện HTML một cách riêng biệt. Ý tưởng đằng sau các thức làm việc của một PHP Framework được kể đến là Model View Controller (MVC). MVC là một mô hình trong lập trình, cho phép tách biệt mã nghiệp vụ và giao diện thành các phần riêng biệt, điều này đồng nghĩa với việc ta có thể chỉnh sửa chúng riêng lẻ. Hiện tại thì có nhiều PHP Framework nhưng trong đề tài của em thì em sử dụng Framework CakePHP. 1.3.2. CakePHP Framework CakePHP là một Framework cho PHP, mục đích của nó là cung cấp một Framework cho người sử dụng PHP phát triển những ứng dụng nhanh, mạnh mà không mất tính linh hoạt của nó. 1.3.2.1. Tính năng của CakePHP - Cộng đồng năng động thân thiện. - Việc cấp phép linh động - Tương thích với PHP 4 và PHP 5 - Tích hợp sẵn CRUD (Khi làm việc với cơ sở dữ liệu: Create, Read, Update, Delete). - Hỗ trợ làm việc với cơ sở dữ liệu - Ứng dụng Scaffolding (Scaffolding cho phép các lập trình viên định nghĩa và tạo ra một ứng dụng cơ bản với các chức năng như thêm, cập nhật, xóa, truy vấn dữ Đề tài: Phân tích và thiết kế hệ thống quản lý văn bản
- Xem thêm -