website trường THPT bằng mã nguồn mở liferay MỤC LỤC 1 GIỚI THIỆU 1 1.1 Portal (Cổng thông tin điện tử) 1 1.1.1 Tổng quan 1 1.1.2 Sự khác biệt giữa Website thông thường và Portal 3 1.2 Liferay Portal 3 1.2.1 Tổng quan 3 1.2.2 Tính năng nổi bật của Liferay Portal 4 1.2.3 Đặc trưng của Liferay 6 1.2.4 Kiến trúc Liferay Portal 8 1.3 Phạm vi đề tài 11 2 LICENSE SỬ DỤNG TRONG LIFERAY PORTAL 11 2.1 Liferay Portal sử dụng bản quyền mã nguồn mở: GNU LGPL. 11 2.2 GNU LGPL 11 2.2.1 Nhà phát hành 11 2.2.2 Vài nét về LGPL 12 3 XÂY DỰNG WEBSITE TRƯỜNG THPT VỚI LIFERAY PORTAL 12 3.1 Đặc tả yêu cầu 12 3.1.1 Cấu trúc tổng quan của website đã xây dựng 13 3.1.2 Yêu cầu trọng tâm 13 3.2 Các chức năng chính của website 14 3.2.1 Actor chính 14 3.2.2 Các use case hệ thống 14 3.2.3 Danh sách các chức năng của hệ thống 15 3.2.4 Lược đồ cơ sở dữ liệu 17 4 PHÁT TRIỂN, TRIỂN KHAI LIFERAY PORTAL ĐỂ XÂY DỰNG WEBSITE TRƯỜNG THPT 18 4.1 Những phần đã triển khai tốt 18 4.1.1 Đăng nhập 18 4.1.2 Trang chính 19 4.1.3 Trang quản lý dành cho Admin 20 4.1.4 Trang dành cho giáo viên 25 4.1.5 Trang dành cho học sinh – phụ huynh 25 4.2 Những phần còn hạn chế Hướng phát triển 26 5 HƯỚNG DẪN CÀI ĐẶT LIFERAY 26 5.1 Hưỡng dẫn cài đặt 26 5.1.1 Cài đặt Database 26 5.1.2 Sau khi cài đặt Database xong ta tiến hành chỉnh File Config để phù hợp với các thông số mình đã làm ở bước 1 27 5.1.3 Khi hoàn tất các bước trên ta tiến hành Start Server. 27 5.2 Hưỡng dẫn cài đặt các module mà nhóm thực hiện đối với khi triển khai một hệ thống liferay mới. 28 5.2.1 Ta cũng sẽ làm tương tự các bước bên trên để cài đặt một hệ thống Liferay mới. 28 5.2.2 Cài Theme, Layout, Module. 30 6 TÀI LIỆU THAM KHẢO 32
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM
BÁO CÁO
ĐỒ ÁN MÔN HỌC MÃ NGUỒN MỞ
Đề tài
PHÁT TRIỂN WEBSITE TRƯỜNG THPT
VỚI LIFERAY PORTAL
Ths PHAN TRUNG HIẾU Nhóm thực hiện: Phạm Văn Trung - 11520438
Võ Văn Tịnh - 11520415 Nguyễn Văn Tiến - 11520408
Lớp: SE417.F11
Tp Hồ Chí Minh, tháng 1 năm 2015
Trang 2Lời đầu tiên, nhóm em xin chân thành cảm ơn Thầy Vũ Thanh Nguyên và Thầy Phan Trung Hiếu! Các thầy đã tận tình chỉ bảo, truyền đạt những kiến thức vô cùng bổ ích, quý báu cũng như những ví dụ cụ thể, sinh động, hấp dẫn để nhóm em có thể thực hiện tốt đề tài này.
- -Nhóm em cũng xin cảm ơn Trường Đại Học Công Nghệ Thông Tin! Trường đã tạo thư viện học tập rất lý tưởng cho chúng em có thể họp nhóm hiệu quả
Nhóm em cũng xin gửi lời cảm ơn sâu sắc đến gia đình, bạn bè và những người thân
đã động viên, cổ vũ về vật chất cũng như tinh thần giúp em vượt qua khó khăn, trở ngại để tiếp tục hoàn thành đề tài
Xin chân thành cảm ơn!
Tp HCM, tháng 1– 2015
Nhóm thực hiện
Trang 4Công nghệ thông tin phát triển mạnh mẽ đã tác động tích cực đến mọi mặt đời sống kinh tế, xã hội Các công việc dễ dàng được quản lý và thực hiện trên máy tính Điều này giúp tăng năng suất, hiệu quả làm việc một cách đáng kể.
Các phần mềm được ra đời ngày càng nhiều để phục vụ cho nhu cầu tin học hoá của con người Nhưng để sản xuất ra một sản phẩm phần mềm, đòi hỏi các nhà phát triển, kỹ sư phải làm việc với quy trình chặt chẽ, từ khâu khảo sát hiện trạng, xác định yêu cầu cho đến phân tích, thiết kế, cài đặt, kiểm thử, vận hành và bảo trì phần mềm Việc này đòi hỏi nhiều
thời gian, công sức Một giải pháp khá hay được đặt ra là sử dụng “Phần mềm mã nguồn
mở” Theo đó, người kỹ sư không cần phải tốn nhiều công sức để tạo ra một sản phẩm phần
mềm theo yêu cầu của khách hàng Họ chỉ việc tuỳ chỉnh, gia công, phát triển thêm những tính năng, chức năng của phần mềm hiện có để tạo ra sản phẩm đến tay người dùng
Hoà nhịp với xu thế đó, nhóm chúng em đã nghiên cứu và phát triển ứng dụng mang
tên “Website trường THPT Trần Cao Vân” Với ứng dụng này, các thông tin, hoạt động
của trường THPT (quản lý điểm số học sinh, tài liệu giảng dạy…) tin học hoá một cách tiện lợi
Mặc dù nhóm đã cố gắng hoàn thành tốt đề tài, nhưng chắc hẵn không tránh khỏi thiếu sót Rất mong nhận được lời nhận xét, góp ý của quý Thầy và các bạn!
Xin chân thành cảm ơn!
Tp Hồ Chí Minh, tháng 1 – 2015
Nhóm thực hiện
Trang 5Trang 6
1.1.1.2 Phân loại
Cổng thông tin cung cấp cho người dùng cuối nhiều loại dịch vụ khác nhau với nhiều nhu cầu khác nhau, có thể phân loại các công thông tin (portal) như sau:
• Cổng thông tin công cộng (Public portals): ví dụ như Yahoo, loại cổng thông tin này
thường được sử dụng để ghép nối các thông tin lại với nhau từ nhiều nguồn, nhiều ứng dụng và từ nhiều người, cho phép cá nhân hoá (personalization) các website theo tuỳ từng đối tượng sử dụng
• Cổng thông tin doanh nghiệp (“Enterprise portals” hoặc “Corporate
Desktops”): được xây dựng để cho phép các thành viên của doanh nghiệp sử dụng và tương tác trên các thông tin và ứng dụng nghiệp vụ tác nghiệp của doanh nghiệp
Trang 7• Cổng giao dịch điện tử (Marketplace portals): ví dụ như eBay và ChemWeb, cổng
thông tin này là nơi liên kết giữa người bán và người mua
• Cổng thông tin ứng dụng chuyên biệt (Specialized portals): ví dụ như SAP portal,
cổng thông tin loại này cung cấp các ứng dụng chuyên biệt khác nhau
1.1.1.3 Các tính năng cơ bản của một portal
Tuy có nhiều loại cổng thông tin khác nhau, cung cấp nhiều loại dịch vụ và ứng dụng khác nhau, nhưng tất cả các loại cổng thông tin đều có chung một số tính năng cơ bản Các tính năng này là được sử dụng như là một tiêu chuẩn để phân biệt giữa cổng thông tin với một website tổng hợp tin tức, với ứng dụng quản trị nội dung web (web content management system - Web CMS), hoặc với một ứng dụng chạy trên nền tảng Web (web application)
Các tính năng cơ bản (bắt buộc phải có) của một portal bao gồm:
• Khả năng cá nhân hoá (Customization hay Personalization): cho phép thiết đặt các
thông tin khác nhau cho các loại đối tượng sử dụng khác nhau theo yêu cầu Tính năng này dựa trên hoạt động thu thập thông tin về người dùng và cộng đồng người dùng, từ đó cung cấp các thông tin chính xác tại thời điểm được yêu cầu
• Tích hợp nhiều loại thông tin (Content aggregation): cho phép xây dựng nội dung
thông tin từ nhiều nguồn khác nhau cho nhiều đối tượng sử dụng
• Xuất bản thông tin (Content syndication): thu thập thông tin từ nhiều nguồn khác
nhau, cung cấp cho người dùng thông qua các phương pháp hoặc giao thức (protocol) một cách thích hợp
• Hỗ trợ nhiều môi trường hiển thị thông tin (Multidevice support): cho phép hiển
thị cùng một nội dung thông tin trên nhiều loại thiết bị khác nhau như: màn hình máy tính (PC), thiết bị di động (Mobile phone, Wireless phone, PDA), sử dụng để in hay cho bản fax… một cách tự động bằng cách xác định thiết bị hiển thị thông qua các thuộc tính khác nhau
• Khả năng đăng nhập một lần (Single Sign On - SSO): cho phép dịch vụ xuất bản
thông tin hoặc các dịch vụ khác của portal lấy thông tin về người dùng khi hoạt động
mà không phải yêu cầu người dùng phải đăng nhập lại mỗi khi có yêu cầu
• Quản trị portal (Portal administration): xác định cách thức hiển thị thông tin cho
người dùng cuối Tính năng này không chỉ đơn giản là thiết lập các giao diện người dùng với các chi tiết đồ hoạ (look-and-feel), với tính năng này, người quản trị phải định nghĩa được các thành phần thông tin, các kênh tương tác với người sử dụng cuối, định nghĩa nhóm người dùng cùng với các quyền truy cập và sử dụng thông tin khác nhau
• Quản trị người dùng (Portal user management): cung cấp các khả năng quản trị
người dùng cuối, tuỳ thuộc vào đối tượng sử dụng của portal Tại đây, người sử dụng
có thể tự đăng ký trở thành thành viên tại một công thông tin công cộng (như Yahoo, MSN…) hoặc được người quản trị tạo lập và gán quyền sử dụng tương ứng đối với các công thông tin doanh nghiệp
Trang 81.1.1.4 Portlet
Là một thành phần Web có khả năng gắn nối được quản lý bởi một portlet container, cái cung cấp một cách linh động nội dung như là một phần của sự kết hợp giao diện người dùng
Portlet là một thành phần nhỏ của ứng dụng web, chạy bên trong trang portal cùng với một số lượng bất kỳ các thực thể nào đó khác, nó có thể xử lý các request và tạo ra các nội dung động
1.1.2 Sự khác biệt giữa Website thông thường và Portal
Portal là bước phát triển kế tiếp của công nghệ web Sự khác biệt chính giữa Portal và Website là: Website được xây dựng như một đơn vị thông tin độc lập, còn Portal được thiết
kế để trở thành trung tâm tích hợp thông tin, ứng dụng và dịch vụ mạng Với Portal, người dùng có thể tìm được mọi dịch vụ cần thiết để khai thác và xử lý thông tin chỉ cần đăng nhập một lần theo cơ chế một cửa Điểm khác biệt này cũng quy định nên sự khác biệt về ứng dụng giữa Portal và Website Trên thế giới, xu hướng ứng dụng Portal đang ngày càng trở nên phổ biến trong các lĩnh vực như chính phủ điện tử (E-government), thương mại điện
tử, đào tạo trực tuyến
1.2 Liferay Portal
1.2.1 Tổng quan
Liferay Portal là giải pháp Cổng điện tử được thiết kế phù hợp với các mô hình ứng dụng trong các cơ quan, tổ chức và doanh nghiệp có nhu cầu phát triển hệ thống thông tin trên môi trường web nhằm thực hiện các giao dịch trực tuyến và sử dụng Intranet/Internet như một công cụ thiết yếu trong các hoạt động, cung cấp thông tin, giao tiếp, quản lý và điều hành, trao đổi và cộng tác
Là giải pháp cổng thông tin dành cho cả những tổ chức cá nhân và cộng đồng
Thực thi trên tất cả các ứng dụng servers & servlet, cơ sở dữ liệu và các hệ điều hành chính yếu (có hơn 700 sự phối hợp triển khai)
Có khả năng thiết kế, dàn trang theo sở thích từng cá nhân cho tất cả người sử dụngĐiểm chuẩn giữa các nền cổng thông tin được bảo mật nhất sử dụng bộ Logiscan của LogicLibrary
Được tích hợp bộ Cộng tác và Hệ thống quản lý dữ liệu (CMS)
Trang 91.2.2 Tính năng nổi bật của Liferay Portal
1.2.2.1 Giao diện AJAX dễ sử dụng
Liferay Portal cung cấp một giao diện giàu tính thân thiện với người sử dụng, bao gồm:
- Kéo-thả vị trí các ứng dụng trên 1 trang của cổng thông tin
- Tải các ứng dụng được triển khai vào sử dụng linh động, dễ dàng
- Cho phép người sử dụng có thể sửa đổi màu sắc, kiểu chữ và liên kết cho các ứng dụng mà không cần phải có trình chỉnh sửa stylesheets hay HTML
1.2.2.2 Xây dựng dịch vụ
Công cụ riêng biệt Liferay giúp đội ngũ phát triển có thể phát triển mã nguồn của
họ dựa trên những công nghệ tầng cơ sở đã được xây dựng như Web Service, Spring, AJAX và EJB Với sự hỗ trợ này, họ chỉ phải tập trung vào việc triển khai tầng business logic cho các ứng dụng
1.2.2.3 Thay đổi Look-And-Feel chỉ với một thao tác nhấn chuột đơn giản
Kiến trúc triển khai nhanh hiệu ứng trình bày giao diện cho phép các nhà quản trị cổng thông tin triển khai các giao diện mới và người sử dụng có thể tùy thích chọn lựa mà không có bất kỳ sự thay đổi nào trên mã nguồn chính
Những hiệu ứng trình bày giao diện mới có thể được đưa thêm vào một cách nhanh chóng với chương trình Người quản lý cập nhật phần mềm Liferay
1.2.2.6 Nâng cấp các hiệu ứng giao diện/bố cục trang Web cổng thông tin
Quản lý hiệu ứng giao diện theo quyền sử dụng hệ thống
Chuẩn hóa sườn jQuery Javascript
Đơn giản hóa quy trình phát triển hiệu ứng giao diện
Cải tiến ngôn từ và tính năng sử dụng phù hợp hơn với thực tế sử dụng
Chuẩn hóa
Nhập/Xuất LAR cho hiệu ứng giao diện
Trang 101.2.2.9 Thời gian trình bày ứng dụng
Các ứng dụng được tải độc lập khi chúng đã được triển khai sẵn sàng Vì vậy, người sử dụng không cần phải chờ khởi động cổng thông tin
1.2.2.10Tính năng quy trình làm việc
Giảm thời gian cập nhật các ứng dụng để phản ánh hiện thực những hoạt động kinh doanh của bạn thay đổi như thế nào
Các quy trình được cập nhật dễ dàng như thanh toán thương mại điện tử, đăng ký người sử dụng, công bố nội dung và xác nhận tài liệu
Cài đặt mặc định của jBPM có thể được thay thế bằng Intalio hoặc các cơ chế quy trình làm việc khác
1.2.2.11 Trợ giúp nhanh
Người sử dụng cổng thông tin có thể được truy cập thông tin cụ thể cho từng công cụ họ đang sử dụng bất kỳ lúc nào bằng cách nhấn biểu tượng dấu chấm hỏi
1.2.2.12Tích hợp Liferay trong Eclipse
Để giảm bớt thời gian phát triển một ứng dụng cổng thông tin mới, Liferay đã kết hợp với Eclipse để tạo ra những tập tin cấu hình XML tự động và cho phép phát triển JSP/những lớp xử lý hành động chỉ bằng một vài thao tác nhấn chuột đơn giản
1.2.2.13Những công cụ giao diện AJAX
Tính linh hoạt của Liferay Portal cho phép nó được triển khai theo nhiều cách khác nhau để đáp ứng nhu cầu kinh doanh then chốt
Trang 11- Kết hợp mạng bên ngoài (Extranet)
- Công cụ người phát triển
1.2.2.16Những lợi ích kinh doanh cơ bản mà life mang lại
Cung cấp kinh nghiệm cộng tác trực quan cho các đối tượng người sử dụng
Củng cố, tổ chức và truy xuất tất cả dữ liệu và ứng dụng của bạn thông qua cơ chế điểm truy cập đơn
Tối ưu hóa những hạ tầng CNTT sẵn có
Có khả năng điều chỉnh, thích ứng những yêu cầu tương ứng với sự thay đổi của thị trường
Sắp xếp hoạt động kinh doanh của bạn một cách an toàn nhất, giảm thiểu tối đa
sự ảnh hưởng đến hạ tầng CNTT có sẵn
Giúp bạn thu được TCO thấp nhất
1.2.3 Đặc trưng của Liferay
Những thuận lợi thu được trong mội trường làm việc thực tế hiện nay được đưa vào
- Hệ thống tin nhắn doanh nghiệp – Công nghệ AJAX trên nền nghi thức Jabber cho phép người sử dụng thêm bạn tán gẫu từ danh sách người sử dụng cổng thông tin Cửa sổ tán gẫu hiện diện trên trang cổng thông tin
Trang 12- Lịch công tác chia sẻ – Lịch công tác cộng đồng với danh sách các tác vụ được lưu giữ theo nhóm sự kiện cơ bản.
- Sổ địa chỉ – Quản lý những đối tác liên lạc của bạn trong Liferay Portal
- Thư điện tử – Hệ thống WebMail trên nền AJAX được cấu hình để giao tiếp với nhiều hệ thống thư chủ IMAP nổi tiếng
- RSS – Yêu cầu đọc tin RSS thường xuyên trong cổng thông tin
- Wikis – Cộng tác trên những tri thức thu thập với Liferay wiki, cho phép đánh dấu và phục hồi phiên bản
- Hỗ trợ Microformat – Chuyển lịch công tác của bạn và thông tin người sử dụng thông qua chuẩn Web 2.0 Các ứng dụng Liferay chuẩn hóa dữ liệu theo microformats (hCard, hCalendar …) để dễ sử dụng và tích hợp với các ứng dụng khác (như Yahoo, Technorati …)
- Hỗ trợ lịch biểu – Nhập và xuất các sự kiện từ ứng dụng lịch công tác Liferay
hỗ trợ iCal và Exchange
- Hỗ trợ Meta-Tagging – Sử dụng chức năng tag của Liferay với ứng dụng CMS của Liferay để chia sẻ những nội dung thú vị và quan trọng với những người sử dụng khác
Trang 131.2.4 Kiến trúc Liferay Portal
1.2.4.1 Kiến trúc
Kiến trúc logic của Liferay gồm 6 layer như hình dưới
Mỗi layer sẽ được phân biệt bởi một màu nền khác nhau
- Layer 1: OS
• Dĩ nhiên các software muốn chạy được thì cần có hệ điều hành
• Liferay hỗ trợ Windows, Mac and Linux
o Application servers là phần mềm hệ thống để cho các ứng dụng web, ứng dụng desktop chạy trên đó Application servers bao gồm trình kết nối máy chủ web, ngôn ngữ lập trình, các thư viện runtime, trình kết nối csdl, deployed, config, quản lý, kết nối các thành phần của 1 web host Application servers chạy phía sau một máy web server (ví dụ như Apache hay IIS của Microsoft) và (gần như luôn luôn) ở phía trước của
Trang 14một csdl SQL (ví dụ như PostgreSQL, MySQL hoặc Oracle) Các ứng dụng Web là mã máy mà chạy trên Application servers và được viết bằng các ngôn ngữ hỗ trợ Application servers và gọi các thư viện runtime và các thành phần Application servers cung cấp.
o JNDI: là 1 chuẩn cho Java Naming and Directory Interface Nó là Java API JNDI như là một công cụ, ta sẽ dùng nó cho các hoạt động naming ( vd: packet, lấy tên đầy đủ của class, tạo kết nối cơ sở dũ liệu…)
o JTS: Java Transaction Service
o JMS: Java Message Service
o JAAS: Java Authentication and Authorization Service
o JDO: Java Data Objects
o JavaMail: là 1 api, dùng để gởi và nhận mai thông qua các giao thức SMTP, POP3 và IMAP
• Liferay cũng sử dụng các dịch vụ mở rộng và cách dịch vụ đó có thể được deploy vào application services Các dịch vụ đó nhứ là SOLR Search engine, DROOLS Rule Engine and Tunneling Servlets
o SOLR Search engine
o DROOLS Rule Engine
o Tunneling Servlets
- Layer 4: Đây mới thực sự là cốt lõi kiến trúc và công nghệ của Liferay.
• Language adapter: Cung cấp cơ chế để phát triển và chạy các portlet của ngôn ngữ khác như là PHP, Ruby, Python và Groovy
• JCR ( Java Content Repository):
• BPM(Business Process Management):
• Lucene Engine:
- Layer 5:
o Layer này cung cấp cơ chế như vậy mà chúng ta có thể tùy chỉnh hoặc mở rộng các tính năng liferay và cung cấp các công cụ implementation các dịch vụ nhanh chóng, ví dụ như service builder
- Layer 6:
Trang 15o Đây là layer ứng dụng, mang lại trải nghiệm cho người dùng cuối, cung cấp các tính năng cốt lõi mạnh mẽ như Quản lý Portal, quản lý nội dung Web, quản lý doanh nghiệp, quản lý tài liệu, quản lý tài khoản, quản Work flow, quản lý bảo mật
1.2.4.2 Sơ đồ triển khai
- Frameworks: cung cấp các thư viện về liferay
- Frontend : Liferay sẽ cung cấp các thành phần giao diện
- Web Services API: cung cấp các web service để hiển thị và giao tiếp trên Mobile Apps
Layer này được xây dựng tự động bằng công cụ tuyệt vời mà được gọi
là Service Builder dựa trên giao diện dịch vụ từ xa và các chú thích còn lại trong việc thực hiện của các nhà phát triển của nó
Lớp này được xây dựng tự động bằng công cụ tuyệt vời mà được gọi là Service Builder dựa trên interface remote service và các chú thích còn lại trong việc implement của các nhà phát triển
Layer này có 2 giao thức quan trọng và thường được sử dụng nhất là:
• JSON Web Services
• SOAP
- Services: cung cấp các service lưu trữ gồm 2 Loai Remote và Local
Local Services: Đây là những người có chứa các business logic và giao tiếp với persistence layer
Trang 16 Remote Services: Mục tiêu chính là để thực hiện an ninh kiểm tra trước khi gọi phương thức tương đương ở các local service Trong một số trường hợp, các remote services cũng chịu trách nhiệm để chuyển đổi các đối tượng Java được trả về bởi local service sang các định dạng khác.
Mỗi persisted entity có một service liên quan Ví dụ, User entity có UserService, DLFileEntry(các thực thể được sử dụng để lưu trữ tài liệu văn bản &Phương tiện truyền thông) có LFileEntryService
Các service method được excute trong một transaction
1.3 Phạm vi đề tài
Sau đây là các chức năng của website trường THPT Trần Cao Vân:
• Quản trị hệ thống
- Đăng nhập
- Thay đổi thông tin của trường
- Tạo các Template hiển thị
• Trang chính (Home)
• Quản lý nội dung
- Thêm bài đăng, thông báo, tin tức
- Thêm, chỉnh sửa cấu trúc, cách hiển thị bài đăng
- Tải lên tài liệu, hình ảnh
- Tạo các trang hiển thị
- Quản lý người dùng
- Tạo người dùng mới
- Phân quyền người dùng
- Tạo các group, team
- Quản lý điểm học sinh
- Giáo viên, admin nhập điểm học sinh
- Hiển thị điểm cho học sinh – phụ huynh xem
- Quản lý các nghiệp vụ: giáo viên, học sinh, phân công giảng dạy…
- Quản lý các Module khác
- Quản lý danh sách các chuyện cười và hiển thị lên website
- Quản lý các câu nói nổi tiếng
- Quản lý các đường link liên kết
2 LICENSE SỬ DỤNG TRONG LIFERAY PORTAL
2.1 Liferay Portal sử dụng bản quyền mã nguồn mở: GNU LGPL.
2.2 GNU LGPL
2.2.1 Nhà phát hành
Open Source Initiative OSI - The LGPL: Cấp phép
Trang 17GNU Lesser General Public License (LGPL) Phiên bản 2.1 phát hành tháng 2 năm 1999.Lesser GNU General Public License (LGPLv3) phát hành tháng 6 năm 2007 Giấy phép này
là một tập các điều khoản bổ sung thêm vào phiên bản 3 của GNU General Public License
sự sử dụng rộng rãi nhất
Gọi giấy phép này là "Lesser" General Public License bởi vì nó ít để bảo vệ quyền tự do của người dùng hơn bình thường General Public License Nó cũng cung cấp cho các nhà phát triển phần mềm khác Less của một lợi thế cạnh tranh trên không phải chương trình miễn phí Những bất lợi là lý do chúng tôi sử dụng tổng hợp thông thường Giấy phép Công cộng cho thư viện nhiều Tuy nhiên, các giấy phép Lesser cung cấp những lợi thế trong một
số trường hợp đặc biệt
3 XÂY DỰNG WEBSITE TRƯỜNG THPT VỚI LIFERAY PORTAL
3.1 Đặc tả yêu cầu
Website trường THPT Trần Cao Vân gồm có các thành phần chính như sau:
- Tiêu đề trang web: nơi thể hiện logo trường, tên trường, hình ảnh trường, địa chỉ, điện thoại, email, website, mục tìm kiếm, đăng nhập vào hệ thống, đăng ký thành viên…
- Menu chức năng chính của website: thể hiện các chức năng có trong trang web Các chức năng này sẽ được thể hiện rõ trong biểu đồ phân tích chức năng (bên dưới)
Trang 18- Các liên kiết tới một số trang web khác như: website của sở/phòng giáo dục địa phương, website các trường bạn, diễn đàn của học sinh trường, tra cứu điểm thi đại học, cao đẳng; từ điển trực tuyến; học tiếng anh …
- Quản lý các dữ liệu của nhà trường (văn bản, quy chế, quy định…), của giáo viên (tài liệu giảng dạy…), học sinh (điểm số, thời khóa biểu…), các hình ảnh, bộ sưu tập…
3.1.1 Cấu trúc tổng quan của website đã xây dựng
3.1.2 Yêu cầu trọng tâm
3.1.2.2 Chức năng nâng cao
• Cho phép giáo viên xuất danh sách điểm
• Cho phép giáo viên nhập bảng điểm từ excel
Trang 193.2 Các chức năng chính của website
3.2.1 Actor chính
Dưới đây là danh sách các actor thao tác với module quản lý điểm học sinh:
- Phụ huynh – Học sinh: cho phép xem điểm, không được chỉnh sửa
- Giáo viên: cho phép chọn môn để nhập điểm, chỉnh sửa điểm
- Quản trị viên: có tất cả các quyền thao tác với module này
3.2.2 Các use case hệ thống
3.2.2.1 Phụ Huynh – Học Sinh
3.2.2.2 Giáo Viên