Tiêu chí lựa chọn các giải pháp CMS để so sánh

Một phần của tài liệu xây dựng CMS MODULE cho hệ thống intranet của công ty TMA (Trang 127 - 143)

1. Giới thiệu các giải pháp hiện tại

1.2.1Tiêu chí lựa chọn các giải pháp CMS để so sánh

Do đây là một CMS module được xây dựng cho công ty TMA nên chúng tôi chỉ

chọn so sánh một số giải pháp CMS đáp ứng được yêu cầu của công ty. Nghĩa là các hệ

CMS này phải có ít nhất các đặc điểm sau:

• Mã nguồn mở: đặc điểm này cho phép sửa đổi mã nguồn không bị ràng buộc đểđáp ứng tốt nhất yêu cầu đề ra.

• Mã nguồn miễn phí.

• Mã nguồn phải được lập trình bằng Java và sử dụng các công nghệ của Java: nguyên nhân do portal hiện tại của công ty được lập trình bằng Java và yêu cầu đặt ra là phải xây dựng hệ CMS dưới dạng portlet để tích hợp vào portal hiện tại. Do đó, giải pháp CMS phải được viết bằng Java.

1.2.2 Các tiêu chí so sánh

Chúng tôi so sánh các giải pháp CMS mã nguồn mở và lập trình bằng Java dựa trên các khía cạnh sau:

• Yêu cầu hệ thống • Bảo mật • Tiện dụng • Hiệu suất • Tính khả chuyển • Khả năng quản lý • Các hỗ trợ khác

Phát triển CMS module cho hệ thống Intranet cuả Công ty TMA 1.2.2.1Yêu cầu hệ thống Cofax 2.0 Daisy 1.1 Magnolia 2.1 OpenCMS 5.0

Application Server TomCat (Built-in) J2EE TomCat

Hệ quản trị cơ sở dữ liệu MySQL MySQL Postgres JCR MySQL Oracle MSSQL Hệđiều hành Mọi Mọi Mọi Mọi

Ngôn ngữ lập trình Java Java Java Java 1.3+

Web server Mọi Mọi Mọi TomCat

Apache IIS Bảng 4: So sánh yêu cầu hệ thống của một số CMS 1.2.2.2Bảo mật Cofax 2.0 Daisy 1.1 Magnolia 2.1 OpenCMS 5.0 Quản lý quyền truy cập Có Có Có Có

Lưu thông tin đăng nhập Không Không Không Không

Quản lý phiên làm việc Không Không Có Không

Tương thích với SSL Không Có Có Không

Xác nhận bằng email Không Có Không Không

Phát triển CMS module cho hệ thống Intranet cuả Công ty TMA 1.2.2.3Tiện dụng Cofax 2.0 Daisy 1.1 Magnolia 2.1 OpenCMS 5.0

Hỗ trợ cơ chế drag’n’drop Không Không Có Không

Thay đổi kích cỡảnh Không Không Có Không

Phục hồi lại thao tác trước đó Không Có Có Không Hỗ trợWYSIWYG Có Có Có Có Bảng 6: So sánh tính tiện dụng của một số CMS 1.2.2.4Hiệu suất Cofax 2.0 Daisy 1.1 Magnolia 2.1 OpenCMS 5.0 Hỗ trợ lưu trữ dữ liệu tạm thời (cache) cho toàn bộ hệ

thống

Không Có Có Không

Hỗ trợ lưu trữ dữ liệu tạm

thời cho trang web Có Có Có Không

Phát triển CMS module cho hệ thống Intranet cuả Công ty TMA 1.2.2.5Tính khả chuyển Cofax 2.0 Daisy 1.1 Magnolia 2.1 OpenCMS 5.0

Cho phép thêm thông tin

của người sử dụng Có Không Không Không

Hỗ trợđa ngôn ngữ Không Có Có Không (adsbygoogle = window.adsbygoogle || []).push({});

Cho phép cơ sở dữ liệu

phân tán Không Có Có Không

Bảng 8: So sánh tính khả chuyển của một số CMS 1.2.2.6Khả năng quản lý Cofax 2.0 Daisy 1.1 Magnolia 2.1 OpenCMS 5.0

Lập lịch cho nội dung Có Không Không Không

Quản lý trực tiếp từng phần trang web

Không Có Có Không

Phân loại nội dung Không Có Có Không

Hỗ trợ theme Không Có Giới hạn Không

Quản lý template Không Không Có Giới hạn

Phát triển CMS module cho hệ thống Intranet cuả Công ty TMA 1.2.2.7Các hỗ trợ khác Cofax 2.0 Daisy 1.1 Magnolia 2.1 OpenCMS 5.0 Xuất dữ liệu dạng RSS Có Không Giới hạn Không Hỗ trợ upload dữ liệu thông qua FTP

Giới hạn Không Không Không

Hỗ trợ UTF-8 Không Có Có Không

Tuân theo XHTML Không Không Có Không

Phát triển CMS module cho hệ thống Intranet cuả Công ty TMA

2. Mô t các gii pháp đã so sánh 2.1 Gii pháp Cofax 2.0

Hình 25: Giao diện Cofax

Cofax là một CMS hỗ trợ mạnh về văn bản và đa phương tiện. Giải pháp này

được phát triển ban đầu bởi Knight Ridder để đơn giản hoá việc thể hiện và đẩy nhanh tốc độ xuất bản các thông tin, sự kiện trên tờ báo điện tử của họ. Giải pháp này đã được sử dụng bởi nhiều tờ báo điện tử lớn như : Philadelphia Inquirer News, Philadelphia Daily News...

Phát triển CMS module cho hệ thống Intranet cuả Công ty TMA

Hiện nay, Cofax được sử dụng bởi rất nhiều tổ chức trên thế giới dưới dạng một CMS mã nguồn mở.

Giải pháp này sử dụng Java, cơ sở dữ liệu MySQL và XML để phát triển. Đây là một giải pháp được thiết kế theo hướng đối tượng. Trong đó, mỗi module độc lập với module khác. Điều này cho phép thay đổi một module không phù hợp bằng một module khác thích hợp hơn. Ngoài ra, điều này còn giúp cho việc cấu hình một cách

độc lập các module với nhau.

Kiến trúc hệ thống của Cofax bao gồm 4 tầng chính như sau :

• Hệ thống quản lý giao tác.

ƒ Cofax sử dụng các lớp của Java để nhập dữ liệu dưới dạng XML, sau

đó lưu dữ liệu này vào trong Repository của Cofax.

ƒ Hệ thống này xử lý các giao tác bằng cách trao đổi các gói.

• Repository của Cofax

ƒ Repository của Cofax được đặt trên một tầng riêng rẽ và cung cấp các APIs cho các tầng khác có thể sử dụng các chức năng của nó.

ƒ Theo thiết kế, tầng này chịu trách nhiệm giao tiếp với cơ sở dữ liệu, như : Oracle, Sybase, Object Store, XML... (adsbygoogle = window.adsbygoogle || []).push({});

• Hệ thống CMS : tầng này có thể hỗ trợ ASP, JSP hay Servlet

• Hệ thống trình diễn nội dung : tầng này có thể hỗ trợ nhiều ngôn ngữ thể

hiện cho các template

Trong các tầng vừa nêu trên, người ta sử dụng thư viện các lớp chia sẻ của Java cho các chức năng của chúng. Do đó, khi lập trình viên triển khai hay sửa đổi một chức năng, họ có thể thao tác chỉ trên thư viện đó mà không cần thay đổi nhiều mã nguồn.

Phát triển CMS module cho hệ thống Intranet cuả Công ty TMA

2.2 Gii pháp Daisy 1.1

Hình 26: Giao diện Daisy

Hệ thống CMS này bao gồm một Repository server có thể truy cập được bằng cách sử dụng giao thức HTTP.

Daisy được phát triển đầu tiên bởi Schaubroeck, sau đó giải pháp này được phát triển bởi Outerthought, trung tâm hỗ trợ mã nguồn mở dưới dạng Java và XML.

Trung tâm Outerthought có nhiều kinh nghiệm trong việc phát triển các công cụ

mã nguồn mở, và các công cụ này được sử dụng để phát triển các ứng dụng có tính chất thương mại. Vì lý do này, các lập trình viên không những sử dụng mã nguồn của Cofax trong ứng dụng của mình mà họ còn ra sức chia sẻ kinh nghịêm để cùng nhau phát triển giải pháp này.

Phát triển CMS module cho hệ thống Intranet cuả Công ty TMA

Giải pháp này bao gồm 2 thành phần chính như sau :

• Repository chứa nội dung.

• Giao diện web.

2.2.1 Repository cha ni dung

Thành phần này của Daisy bao gồm những đặc điểm sau :

• Lưu trữ và phục hồi dữ liệu.

• Mỗi trang web cho phép chứa nhiều phần và nhiều paragraph. Loại trang web sẽđịnh nghĩa các phần và các paragraph mà nó cần có.

• Trang web có thể chứa hình ảnh, tài liệu PDF hay XML.

• Mọi trang và mọi tài liệu đều được lưu trong một vùng lưu dữ liệu duy nhất và vùng lưu dữ liệu này không có cấu trúc cây thư mục. Mỗi trang và tài liệu được xác định bởi một định danh duy nhất.

• Dữ liệu được lưu trữ trong hệ quản trị cơ sở dữ liệu MySQL. Hiện nay, Daisy đã hỗ trợ hệ quản trị cơ sở dữ liệu PostgreSQL.

2.2.2 Giao din web

Thành phần này của Daisy bao gồm những đặc điểm sau :

• Môi trường biên soạn nội dung trang web WYSIWYG.

ƒ Hỗ trợ trình duyệt Internet Explorer và Mozilla/Firefox

ƒ Sử dụng các hình ảnh trong Repository của Daisy hay tải các hình ảnh lên và sử dụng

• Nội dung các trang web được trình bày dưới dạng cây để duyệt dễ dàng.

Phát triển CMS module cho hệ thống Intranet cuả Công ty TMA

• Cung cấp cơ chế tìm kiếm. (adsbygoogle = window.adsbygoogle || []).push({});

ƒ Sử dụng Search Engine giống như của Yahoo và Google.

ƒ Hỗ trợ tìm kiếm theo ngôn ngữđịnh nghĩa của riêng Daisy.

ƒ Các trang web sử dụng template dựa trên XSLT.

ƒ Cho phép thêm các ghi chú vào tài liệu.

2.3 Gii pháp Magnolia 2.1

Hình 27: Giao diện Magnolia

Magnolia là hệ CMS mã nguồn mở có hõ trợ chuẩn JSR 170, chuẩn bao gồm những API hỗ trợ cho các thao tác trên Repository chứa dữ liệu của Java.

Phát triển CMS module cho hệ thống Intranet cuả Công ty TMA

Giải pháp này có thể hoạt động trên mọi hệ điều hành mà chỉ cần cài đặt JDK 1.4.1 trở lên. Sở dĩ làm được điều này do giải pháp này được phát triển dựa trên Java và công nghệ XML

Các template của Magnolia được xây dựng dựa trên các tập tin JSP và các thẻ

quy định. Magnolia hoạt động trên một server J2EE.

Giải pháp này được phát triển đầu tiên bởi công ty Obinary và sau đó được phát triển bởi Magnolia International.

Magnolia hỗ trợ rất nhiều ngôn ngữ như : Anh, Pháp, Trung Quốc, Đức, Ý, Nhật, Tây Ban Nha, Nga, BồĐào Nha...

Trong giải pháp này, người ta chia mã nguồn thành 3 modules chính sau :

• Module quản lý nội dung.

ƒ Module này bao gòm các tập tin JSP, JavaScript và Servlet để thực hiện chức năng.

ƒ Môi trường chỉnh sửa nội dung WYSIWYG.

ƒ Cho phép sửa đổi nội dung tại nơi nội dung đó xuất hiện trên trang web.

ƒ Hỗ trợ các trình duyệt Internet Explorer và Mozilla/Firefox.

ƒ Cung cấp cơ chế phân loại nội dung dựa trên cấu trúc cây.

ƒ Dữ liệu được lưu trữ trong hệ thống tập tin của hệđiều hành dựa trên chuẩn JSR 170. Do đó, giải pháp này không cần phải có hệ quản trị

cơ sở dữ liệu.

• Module Repository.

ƒ Hỗ trợ việc truy cập vào Repository chứa nội dung.

Phát triển CMS module cho hệ thống Intranet cuả Công ty TMA

ƒ Hỗ trợ việc chuyển đổi dễ dàng Repository chứa nội dung : do module này được xây dựng dựa trên chuẩn JSR 170, do đó nhà phát triển có thể chuyển đổi qua lại việc sử dụng các Repository chứa nội dung, như : các tập tin XML, hệ thống tập tin của hệ điều hành, hệ

quản trị cơ sở dữ liệu...cho giải pháp của họ.

• Module bảo mật.

ƒ Cung cấp những chức năng để phân chia vai trò và người sử dụng trên hệ thống CMS này.

2.4 Gii pháp OpenCMS 5.0 (adsbygoogle = window.adsbygoogle || []).push({});

Hình 28: Giao diện OpenCMS

Giải pháp này hỗ trợ những nguời sử dụng tạo ra các trang web mà không cần phải biết về HTML. Môi trường biên soạn nội dung WYSIWYG với giao diện giống như giao diện của Microsoft Office tạo sự thân thiện hơn với người sử dụng.

Phát triển CMS module cho hệ thống Intranet cuả Công ty TMA

Giải pháp này là một giải pháp mã nguồn mở và hoàn toàn miễn phí. Nó được xây dựng chủ yếu bởi công ty Alkacon Software. Ngoài ra còn có một số công ty khác tham gia phát triển như : Advent Consulting, Agora Telematica, Aliacom.

OpenCMS phát triển dựa trên Java, JSP, Servlet và XML. Ngoài ra, giải pháp này có thể hoạt động dựa trên các thành phần mã nguồn mở như : Linux, Apache, Tomcat, MySQL, cũng nhữ các thành phần cần đến bản quyền như : Windows NT, IIS, BEA Weblogic, Oracle DB.

Nội dung các trang web trong OpenCMS được lưu trong các tập tin XML va các template của các trong web được xây dựng bằng cách sử dụng các trang JSP và Java.

Giải pháp này hỗ trợ chuẩn UTF-8, do đó nó cho phép hiển thị nhiều ngôn ngữ

khác nhau.

Ngoài môi trường biên soạn WYSIWYG, OpenCMS còn cung cấp cơ chế

command line để tăng tốc độ truy cập vào các tài nguyên hệ thống.

3. Kết lun

Sau khi so sánh các điểm mạnh và các mặt hạn chế của giải pháp : Cofax 2.0, Daisy 1.1, Magnolia 2.1 và OpenCMS 5.0, chúng tôi chọn giải pháp Magnolia 2.1 để

phát triển thành module CMS của công ty TMA. Sự lựa chọn này dựa trên những lý do sau :

• Giải pháp này tuân thủ chuẩn JSR 170, chuẩn dùng để xây dựng các hệ

CMS, do đó trong tương lai nếu yêu cầu thay đổi hệ thống này thì sẽ

Phát triển CMS module cho hệ thống Intranet cuả Công ty TMA

• Giải pháp này cho phép chỉnh sửa mã nguồn không giới hạn và là mã nguồn mở

• Magnolia có thể hoạt động trên Linux và JBoss, môi trường mà portal hiện tại của TMA đang hoạt động. Do đó, giải pháp này có khả năng sẽ

tích hợp được vào portal hiện tại của công ty.

• Có nhiều lập trình viên hiện đang phát triển giải pháp này, do đó, trong trường hợp xảy ra các vấn đề về kỹ thuật, chúng tôi có thể nhận được nhiều sự hỗ trợ từ phía họ.

• Chúng tôi có thể chuyển đổi giải pháp này để nó tuân thủ theo chuẩn JSR 168 nhằm tích hợp vào portal hiện tại của công ty. Nguyên nhân là giải pháp này sử dụng ngôn ngữ lập trình Java và JSP, Servlet, JavaScript và theo dạng dự án J2EE.

• Giải pháp này hỗ trợ nhiều ngôn ngữ nên người sử dụng có thể chọn ngôn ngữ thân quen nhất với họ.

• Giải pháp này hỗ trợ tốt việc phân loại nội dung các trang web.

• Magnolia cung cấp môi trường biên soạn nội dung WYSIWYG tiện dụng cho người sử dụng..

• Giải pháp này hỗ trợ mạnh và linh động việc phân quyền người sử dụng trên hệ thống .

• Giải pháp này cho phép thay đổi dễ dàng các thông số cấu hình mà không cần phải sửa đổi mã nguồn.

• Magnolia cung cấp chức năng drag’n’drop tạo tính tiện dụng cho người dùng.

• Magnolia hỗ trợ việc quản lý nội dung tại vị trí hiển thị của nội dung trên trang web.

Phát triển CMS module cho hệ thống Intranet cuả Công ty TMA

Phát triển CMS module cho hệ thống Intranet cuả Công ty TMA (adsbygoogle = window.adsbygoogle || []).push({});

Chương 8

Phát triển CMS module cho hệ thống Intranet cuả Công ty TMA

Một phần của tài liệu xây dựng CMS MODULE cho hệ thống intranet của công ty TMA (Trang 127 - 143)