TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN ──────── * ─────── ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC NGÀNH CÔNG NGHỆ THÔNG TIN NGHIÊN CỨU, XÂY DỰNG HỆ THỐNG QUẢN LÍ NỘI DUNG (CMS) Sinh viên thực hiện[.]
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN ──────── * ─────── ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC NGÀNH CÔNG NGHỆ THÔNG TIN NGHIÊN CỨU, XÂY DỰNG HỆ THỐNG QUẢN LÍ NỘI DUNG (CMS) Sinh viên thực hiện: CAO LÂM CHÂU Lớp: CNPM - K48 Giáo viên hướng dẫn: ThS BÙI THỊ HÒA Hà nội 6-2008 LỜI CÁM ƠN Đồ án Tốt Nghiệp thể kết trình năm học tập nghiên cứu trường Để có kết này, em xin gửi lời cám ơn chân thành đến Trường Đại Học Bách Khoa Hà Nội, Khoa Công Nghệ thông tin, Bộ môn Công nghệ phần mềm tạo điều kiện để em hồn thành chương trình học trường Em xin cám ơn q thầy tận tình tình dạy, giúp đỡ em trình học tập, cung cấp cho em kiến thức tảng giúp em nghiên cứu thực đồ án Em xin chân thành cám ơn ThS Bùi Thị Hòa, người giúp em từ việc định hướng đến thực thành công đồ án Xin chân thành cám ơn Công Ty Cổ Phần Tin Học DUY VIỆT tạo điều kiện để em thực tập, học tập công nghệ, tiếp thu vấn đề từ thực tế để đưa vào đồ án Hà Nội, ngày 22 tháng năm 2008 CAO LÂM CHÂU Sinh viên thực hiện: Cao Lâm Châu Khóa K48 Lớp CNPM PHIẾU GIAO NHIỆM VỤ ĐATN Mục đích nội dung ĐATN Nghiên cứu, xây dựng hệ thống quản lí nội dung phù hợp với nhu cầu xây dựng trang tin với qui mô vừa nhỏ Việt Nam Các nhiệm vụ cụ thể ĐATN Nghiên cứu tổng quan CMS Nghiên cứu công nghệ: Kiến trúc ứng dụng Web, PHP, MySQL, HTML, Javascript, Symfony Framework Xác định yêu cầu CMS xây dựng Phân tích, thiết kế, lập trình triển khai CMS xây dựng Lời cam đoan sinh viên: Tôi: Cao Lâm Châu cam kết ĐATN cơng trình nghiên cứu thân tơi hướng dẫn ThS Bùi Thị Hịa Các kết nêu ĐATN trung thực, chép tồn văn cơng trình khác Hà Nội, ngày 20 tháng năm 2008 Tác giả ĐATN Cao Lâm Châu Xác nhận giáo viên hướng dẫn mức độ hoàn thành ĐATN cho phép bảo vệ: Hà Nội, ngày tháng năm Giáo viên hướng dẫn ThS Bùi Thị Hòa Sinh viên thực hiện: Cao Lâm Châu Khóa K48 Lớp CNPM TÓM TẮT NỘI DUNG ĐỒ ÁN TỐT NGHIỆP Ngày nay, với phát triển mạnh mẽ ngành cơng nghệ thơng tin – viễn thơng nói chung Internet nói riêng, bên cạnh hình thức xuất nội dung truyền thống biên tập sách, báo chí, việc xuất thơng tin thơng qua Internet xu chủ đạo việc xuất nội dung Trong thời gian gần đây, Việt Nam xuất ngày nhiều trang tin điện tử, hầu hết số trang tin với nội dung tin tức với qui mô nhỏ Việc đầu tư mua lại CMS tiếng thường đắt tiền, vượt khả chi trả công ty vừa nhỏ Việt Nam Các CMS mã nguồn mở phổ biến Joomla, drupal lại có hạn chế định khơng cung cấp qui trình làm việc (Thành phần quan trọng thể đặc trưng tịa soạn điện tử), khơng tiện lợi cho việc trì nâng cấp khó cập nhật thay đổi nhà cung cấp vào sản phẩm cụ thể dùng phiên trước đó, Nhằm cung cấp giải pháp phù hợp mặt cơng nghệ lẫn chi phí, Đồ Án Tốt Nghiệp mình, em tiến hành nghiên cứu xây dựng hệ thống quản lí nội dung (Content Management System -CMS) Đồ án bao gồm nội dung sau Giới thiệu CMS: Phần tập trung vào khái niệm, thành phần CMS, giúp người đọc hiểu rõ CMS gì, lại ứng dụng để xây dựng trang tin điện tử Tìm hiểu lựa chọn cơng nghệ: Nghiên cứu, lựa chọn công nghệ vừa đảm bảo sức mạnh để giải toán, vừa phù hợp với khả tài cơng ty tổ chức vừa nhỏ Việt Nam Trên sở lí thuyết CMS, em lựa chọn cách tiếp cận, đưa yêu cầu cụ thể thể đầy đủ thành phần CMS xây dựng CMS dựa yêu cầu cụ thể Sau sản phẩm hoàn thành, giải pháp mềm dẻo để áp dụng để xây dựng trang tin điện tử áp dụng cho website động với nội dung tin tức thông thường (các trang giới thiệu, quảng bá doanh nghiệp) Đây hệ thống mở, dễ dàng cho việc xây dựng tích hợp module làm tăng sức mạnh CMS Tiến hành triển khai thử nghiệm CMS việc xây dựng trang tin công nghệ Sinh viên thực hiện: Cao Lâm Châu Khóa K48 Lớp CNPM ABSTRACT OF THESIS Today, with the high development of Information Technology – Community, beside original content publishing methods such as: book, newspaper, publishing over the Internet is becoming a main big trend Recently, In Vietnam, a lot of electrical news websites have been being built, and almost of them are small and medium websites It’s difficult for small and medium companies and organization to buy full CMS because it’s very expensive Using some general open source CMS such as Joomla, Drupal occurs some inconvenient such as: it’s difficult to customize, maintain and develop them In almost general cases, you cann’t update new features from a newer version to a typical product that was developed by using older version To provide a solution that compatibility with small and medium Vietnamese companies and organizations, both technology and budget, in my project, I studied, developed a CMS Content of this project consists of: Introduce CMS: This part provides an overview about CMS, includes basic definitions, components and architecture of CMS Study and chose Technologies: Study and chose powerful, low budget technologies Base on theory of CMS, I chose a way to approach, resolve main functions of CMS One finished, it’s a flexible solution for build electrical news or simple article websites It’s also an open system, that means it’s easy to develop plug-ins module for this CMS Test this CMS by deploying an electrical news about digital technology Sinh viên thực hiện: Cao Lâm Châu Khóa K48 Lớp CNPM MỤC LỤC Chương I : TỔNG QUAN VỀ CMS I- Nội dung (Content) gì? IIQuản lí nội dung (CM- Content Management )là gì? II.1- Khái niệm II.2- Tiến trình 10 II.3- Cơ sở hạ tầng .10 III- Các thành phần CMS 13 III.1- Hệ thống thu thập 15 III.2- Hệ thống quản lí .16 III.3- Hệ thống xuất 19 IV- Mô hỉnh tổng quan kiến trúc CMS 22 Chương II : GIỚI THIỆU CÔNG NGHỆ 23 I- Giới thiệu kiến trúc ứng dụng WEB 23 I.1- Kiến trúc ứng dụng Web cổ điển 23 I.2- Kiến trúc ứng dụng web khung nhìn khác 24 I.3- Giới thiệu mơ hình kiến trúc MVC 25 IITổng quan PHP .27 II.1- PHP ? 27 II.2- Những cải tiến PHP5 28 II.3- Tại lại chọn PHP? 28 III- Tổng quan MySQL .29 III.1- MySQL ? 29 III.2- Lí chọn MySQL 29 III.3- Bảo mật MySQL số kĩ thuật 31 IV- Tổng quan Symfony Framework 32 IV.1- Sơ lược symfony 32 IV.2- Các đặc điểm symfony .32 Chương III : PHÂN TÍCH THIẾT KẾ HỆ THỐNG 34 I- Yêu cầu chung 34 IIKhung nhìn ngữ cảnh sử dụng 34 III- Đặc tả khung nhìn ngữ cảnh sử dụng 36 III.1- UC01: Manage Staff 36 III.2- UC02: Manage Configuration 47 Sinh viên thực hiện: Cao Lâm Châu Khóa K48 Lớp CNPM III.3- UC03: Manage File 51 III.4- UC04: Manage Module 52 III.5- UC05: Manage Accession 56 III.6- UC06: Security .64 III.7- UC07: Manage Workflow 68 III.8- UC09: Manage Content 73 III.9- UC11: Manage Menu .84 IV- Biểu đồ lớp 84 VBiểu đồ trạng thái 85 V.1- Mangane Staff : quản lí người dùng 85 V.2- Manage Configuration .85 V.3- Manage Module 86 V.4- Manage Accession .86 V.5- Security 86 V.6- Manage Workflow .87 V.7- Manage Menu 87 VI- Biểu đồ thực thi .88 VII- Thiết kế sở liệu 89 Chương IV : TRIỂN KHAI HỆ THỐNG 90 I.1- Yêu cầu môi trường cài đặt 90 I.2- Phần cứng 90 I.3- Phần mềm 90 I.4- Nhân .90 Chương V : ĐÁNH GIÁ VÀ TỔNG KẾT .91 I- Các vấn đề giải 91 IIHướng phát triển 91 Sinh viên thực hiện: Cao Lâm Châu Khóa K48 Lớp CNPM CÁC THUẬT NGỮ VIẾT TẮT Viết tắt Ý nghĩa CSDL Cơ sở liệu CM Content Management CMS Content Management System Sinh viên thực hiện: Cao Lâm Châu Khóa K48 Lớp CNPM Chương I : TỔNG QUAN VỀ CMS I- Nội dung (Content) gì? Máy tính xây dựng để xử lí liệu Dữ liệu (data) bao gồm mẩu tin, gồm dạng số, hình ảnh, âm thanh, từ Sau xử lí chiết xuất trở thành thơng tin có ý nghĩa cho người dùng Ngày nay, có quan điểm cho máy tính xây dựng để xử lí nội dung (content) Giống liệu, nội dung cịn bao gồm thơng tin Dữ liệu (Data): Trong ứng dụng web, cách tương đối định nghĩa liệu sau: Dữ liệu mẩu thông tin nhỏ người thu thập, kết hợp lại với thành ghi liệu lưu trữ CSDL Thông tin (Information): Từ “Thông tin (Infomation)” có nhiều ý nghĩ khác Trong tài liệu này, sử dụng từ “thông tin” với ý nghĩ bao gồm dạng giao tiếp ghi lại thông dụng sau: Văn bản: Như viết, tin tức, sách Âm thanh: Như nhạc, hội thoại, đọc… Hình ảnh: Như tranh, hình minh họa Chuyển động: Như video hoạt hình Các file máy tính: Như bảng tính, … Nội dung (Content): thông tin (Information) cộng với liệu (data) II- Quản lí nội dung (CM- Content Management )là gì? II.1- Khái niệm Nhiều người cho CM kĩ thuật (cơng cụ) Có vẻ CM cịn bao hàm nhiều so với cơng cụ đơn CM bao gồm trình từ thu thập, xử lí đến việc quản lí, lưu trữ xuất nội dung Một CM thành công CM cung cấp nhiều lưạ chọn triển khai hiệu Nó thay đổi cách thức làm việc người, giúp người vượt qua cản trở việc thay đổi phương pháp làm việc cách hỗ trợ tác giả công cụ q trình làm việc họ Quản lí nội dung Web CM Tuy nhiên đồng khái niệm với Nội dung Web loại nội dung cần quản lí Nhiều tổ chức cần quản lí nội dung web lẫn nội dung giấy Thông thường CM hiểu việc quản lí nội dung Tuy nhiên, CM hiệu việc soạn thảo kết thúc việc xuất nội dung Bạn cần phải soạn thảo nội dung để lưu trữ, tìm, sử dụng lại cách hiệu Nếu khơng Sinh viên thực hiện: Cao Lâm Châu Khóa K48 Lớp CNPM 10 dành thời gian để tổ chức nội dung trước lưu trữ bạn khơng nhận đầy đủ lợi ích kĩ thuật phương pháp quản lí nội dung Chú ý việc xuất nội dung theo định dạng thích hợp với hầu hết người dùng việc quan trọng Tóm lại, CM hiệu phương pháp có tính lặp lại việc xác định tất nội dung cần thiết, tạo nội dung, tổ chức nội dung cho thuận lợi cho việc sử dụng lại, quản lí nội dung, tổ hợp nội dung với xuất đáp ứng yêu cầu khách hàng II.2- Tiến trình Nếu nhìn theo quan điểm tiến trình, CM tiến trình bao gồm thu thập, quản lí xuất nội dung Thu thập (Collecting): Ta tạo có thơng tin từ nguồn khác Tùy thuộc vào nguồn mà khơng cần phải chuyển thơng tin định dạng hợp lí phù hợp với phương thức lưu trữ hệ thống Cuối việc tập hợp thông tin vào hệ thống việc soạn thảo, phân chia thêm vào metadata hợp lí Quản lí (Management): Tạo kho lưu trữ, CSDL hoặc/ file chứa nội dung quản lí kho nội dung Xuất bản: (Publishing): Xuất nội dung cho người dùng cách chiết xuất thành phần từ kho lưu trữ tổ chức lại để phù hợp với cách xuất Website, tài liệu để in tin gửi cho khách hàng II.3- Cơ sở hạ tầng a Website tĩnh (Static Web) Web tĩnh tập hợp file HTML file tài nguyên liên quan Tất lưu trữ riêng biệt Web server Để cập nhật nội dung, ta cần phải thay đổi trang site Mô hình Web tĩnh sau: Web tĩnh hình thức site đơn giản nhất, thích hợp với site nhỏ, thay đổi khơng cần cá nhân hóa Lợi ích Web tĩnh tốc độ nhanh khơng cần phải xử lí nghiệp vụ Hạn chế Webtĩnh tính mềm dẻo, khó thay đổi nội dung số lượng trang site nhiều b Web động (Dynamic Web) Sinh viên thực hiện: Cao Lâm Châu Khóa K48 Lớp CNPM