CULTUR EXchange Platform Non-Functional Requirements for Open-Source CMS Report Content: 1 Project overview/objective 1.1 Purpose of the document 2 Open source requirements 2.1 Web server software requirements 2.1.1 Additional web server modules 2.2 Web server/hosting configuration 2.3 Hosting network topology 2.4 Web technologies to be used 2.5 Content types on CULTUR-EXP platform 3 CMS requirements 3.1 Open source 3.2 CMS source code access 3.3 License 3.4 Out-of-box installation 3.5 Intuitive administrative interface (back-end) 3.6 Support and user community 3.7 Reference and documentation 3.8 Extensibility, modules and other customization 3.9 Version control and upgrading 3.10 Design/layouts and themes (front-end) 3.11 Multilingual support and translation interface 3.12 Search engine 3.13 Advertising and monetizing 3.14 Mobile version 3.15 Data back-up and recovery 3.16 Reporting and statistics 4-6 See Functional Requirements document 7 Security and testing 8 Testing performance and load 9 Other non-functional requirements 9.1 Accessibility 9.2 Availability 9.3 Usability 9.4 Privacy policy 9.5 Term of use/service agreements 9.6 Help and FAQ
1. Project overview/objective The overall objective of the project is to enable the cross-border exchange of culture by providing an innovative, multilingual IT platform, based on available open source social platform solutions and adapted for culture producers (artists, musicians, etc.), culture operators (museums, festivals, etc.) and other actors in the culture market. The platform will be an online tool, where all entities will be able to advertise, discuss and organize cultural events in the region. The platform will also be an important source of information about the culture and the related cultural events in the region of the Black Sea. 1.1 Purpose of the document To provide list of functional and non-functional requirements for an open source content management system (CMS) on which the CULTUR-EXP platform will be based. In the project s later phases, such as system design, database design, implementation and testing, this document should be referred as functional model of the CULTUR-EXP platform. Defined in this report requirements are higher than was described in the proposal. Taking into account that platform should be selected from the available open source social platform solutions not all described above requirements can be fully meet. However selected solution should provide maximum functionality presented in this document. 2. Open source requirements Programming languages and platform are required to be open-source, so the CMS solution should be based on PHP and MySQL and hosted in Linux (Apache, *nix) environment. Below are some typical requirements. 2.1 Web server software requirements Web Server - Apache, Nginx Operating System - Linux, BSD PHP Version - 5.2 or newer MySQL Version - 5.0 or newer 2.1.1 Additional web server modules GD complied with PHP Build SendMail PHP EXEC function PHP CURL FFmpeg (for video) Mplayer + Mencoder (for video) mod_rewrite (Apache) PHP OpenSSL Other modules to be used based on CMS requirements for hosting various content types (music, video, 3d, others) 2.2 Web server/hosting configuration CULTUR-EXP to be hosted in fast and secure server environment, with high system up-time guaranteed, providing reliable content delivery and secure storage for user data, both personal and uploaded content.
CULTUR-EXP platform will be hosted in RENAM. Server hardware, bandwidth and speed configuration will be provided by partner responsible for hosting. The regular backup of the platform will be available at RENAM and GRENA. 2.3 Hosting network topology Topology for CULTUR-EXP platform s hosting network to be provided by RENAM. 2.4 Web technologies to be used Following web development tools and technologies are required for both for development and customization of CMS. Responsive & Scalable Web Design (to match most screen resolutions) HTML5 / CSS3 * JavaScript Frameworks / jquery Social Media Technologies ( Facebook API, Twitter API, others) Flash, Java or other 3rd party software platform usage should be minimal. Browser Support (versions supported should be latest with legacy to mostused) Mozilla Firefox Apple Safari Windows Internet Explorer Google Chrome Opera Mobile Browsers * HTML5/CSS3 technology to be used (if possible) for achieving responsive design, to reach broader screen resolutions and devices. Responsive design will help to solve the issue for Mobile version of CULTUR-EXP platform. 2.5 Content types on CULTUR-EXP platform CULTUR-EXP platform requires hosting environment (web server) and CMS support for various content types, with possible extension of others as platform may require (e.g. 3d objects, 3d sculptures, animation etc.). Main Content types Photos: image based artworks, paintings, scanned materials etc. Music: audio content, song, compositions, tracks, mixes etc. Video: video, films, performance, dance, fashion etc. Text: poems, scripts, books and others Content upload requirements (file size, file types etc.) to be set based on CMS solution, although it is required to have flexible data upload, storage and presentation. This is also key issue for server-side software and content delivery network for managing fast content delivery. Audio and Video content can also be embedded from 3 rd -party platforms (YouTube, vimeo, soundcloud etc ) to provide faster delivery to end-users and lower hosting server load.
Note: Some requirements and modules might change depending on selected open-source CMS solution. Hosting environment will adjust accordingly. 3. CMS requirements Following set of requirements are for open-source CMS solution; also some should be treated as CULTUR-EXP platform requirements. 3.1 Open source CMS solution should be developed and be hosted in open source (LAMP) environment. 3.2 CMS source code access CMS source code should not be encrypted and easy to access/edit and customize. In case of selecting licensed/commercial solutions, open and unencrypted source code license should be obtained. 3.3 License CULTUR-EXP platform itself will be developed and hosted in open-source environment. However CMS solution and other software components (modules, plug-ins etc ) might have different licenses. During CMS solution selection and customization process license information should be checked, to ensure end-product (CULTUR-EXP platform) is under open source license. 3.4 Out-of-box installation CMS solution should come with self-hosted, easy and intuitive installation, without complicated server requirements and/or expert assistance. Well documented and wizard style installation procedure is more desired. 3.5 Intuitive administrative interface (back-end) Social network CMS solutions should provide state-of-art administrative interface for management and maintenance of ALL components and settings of the CULTUR-EXP web portal. Access to back-end should be secure (using SSL authentication) and well protected against hacking, or other web threats (Alike level of security should be implemented for user access). Admin interface should enable creation of various admin-user types (Country Administrators, Content Up loaders, Translators, Moderators etc.) with various access levels, privileges and restrictions. * Administrative interface to be used for maintaining for general platform features and functionalities some will be listed below as separate requirements. 3.6 Support and user community
Active support and user community is desired for the CMS solution. Ease of contacting support team for reference and assistance, also high reply speed/rate are seen as essential. Active community of other users of the platform is also a plus, and can save time and resource during customization process. For licensed/commercial solutions availability of paid (direct contact) support should also be considered. 3.7 Reference and documentation CMS solution is required to be well documented, with up-to-date information for reference. Official books, knowledgebase, user FAQ and support forums are seen essential. 3.8 Extensibility, modules and other customization Successful CMS solution should have possibility to be extended by using modules and plug-ins. Flexible, up-to-date, reliable and well documented modules can simplify management and customization of platform. Availability of various modules and active user community of the open-source solution is seen as a plus in selection process. 3.9 Version control and upgrading Versions of CMS are changing quite often and upgrading to the latest version should be easy without affecting any downtime, interruption of service and loss of data. Plug-ins and 3 rd party modules should be checked before any upgrade. Availability for newer version (minor update e.g. version 6.2 to 6.3) should be checked by system automatically and suggested to administrators, 3 rd -party module/plug-in compatibility also to be checked. Major version upgrades (e.g. from version 6.3 to 7.0) should be well documented, and compatibility with existing plug-ins and modules should also be checked. For commercial and licensed CMS solutions: Version of license should be carefully selected, to ensure future updates and major upgrades are part of the license. Version upgrade for plug-ins, both commercial and free, should be straightforward and avoid conflict with other components and functionality of platform. For commercial plug-ins licenses should include future version upgrades. 3.10 Design/layouts and themes (front-end). CMS solution is required to support clean and intuitive, web standard compliant themes/design for all pages, sub-pages and other layouts. Editing/customization should be supported for theme, layout and style, also for logos, icons and other graphic elements in design.
Themes are required to be responsive, based on HTML5/CSS3 technology. Look and feel of the CULTUR-EXP platform will be controlled from administrative interface. 3.11 Multilingual support and translation interface CMS solution should support multiple language packages, and provide easy and intuitive translation interface for adding/editing new terms, elements and user interface. Language dependent files to be easily exported (imported) to more common formats (txt, CSV, doc) for translations done outside of system/platform. Availability of free and/or commercial language packages developed by CMS provider, user community or 3 rd -party, is seen as advantage in selection process. 3.12 Search engine CMS solution should provide intuitive and highly functional search engine. Member can select what part for their profile to be visible for search engine. Search engine should have basic and advance search capabilities, enabling to search using keyword and phrases, but also search for other members, events, groups, organizations, blogs etc. Good search solution can increase platform usage and popularity, so this function should be well developed in selected CMS solution. 3.13 Advertising and monetizing Ad management interface will enable to monetize the platform, by providing possibilities for creating banner ads, content based targeted ads and sponsored items. Ad management solution should be implemented within the CMS (for member generated ads), and support various payment gateways, payment methods (PayPal, credit card, etc.) and transactions. Support for 3 rd party advertising networks (Google Adense, Bing, others) and ad management platforms (DFP, OpenX and others) should be easy to integrate with the CMS. 3.14 Mobile version Mobiles and tablets are a big market to miss out, as the project does not require mobile version of the CULTUR-EXP platform, it is suggested to look for a CMS solution that enables mobile layouts through responsive themes and layouts. This functionality will help to reach wider audience in future. 3.15 Data back-up and recovery Aside from Server level back-up; CMS solution should provide functionality for data back-up and storage.
Regular data back-ups are required to ensure data safety and easy recovery in case of malfunctioning. (*Hosting should handle large amount of data backups.) 3.16 Reporting and statistics CMS solution should have built-in advanced statistics functionality, to provide various stats data and reports about the CULTUR-EXP platform. Access to statistics and reports will be done through Administrative interface; also functionality for sending auto-generated e-mail reports to system administrators is seen as advantage. 7. Security Security for the CMS includes authentication, access control, data integrity, and data privacy. Authentication of the user is by identifier and password. Transmissions should be encrypted for privacy. Web server security (DOS & other attack prevention) User authentication done over SSL The CMS and the CULTUR-EXP portal should be penetration-tested against common security vulnerabilities To exclude security holes in the system scanner tools should be used (skipfish, Nikto) System should be tested regarding to OWASP and will exclude all known security problems, including SQL injections, cross site scripting (XSS), format string vulnerabilities, username enumerations, remote code execution and other web vulnerabilities. 8. Testing performance and load To test a performance of the Project s server side WAPT (web application performance tool) is recommended to be used. WAPT tends to simulate virtual users which will repeat either recorded URLs or specified URL and allows the users to specify number of times or iterations that the virtual users will have to repeat the recorded URLs. Apache JMeter to be used for load testing. System performance should be carefully measured, in order to provide successful operations of CULTUR-EXP platform. The following factors should be closely monitored during the platform launch: CPU Load Memory Bandwidth Correlating perceived system performance and system performance results can assist with the identification of bottlenecks and problems that are responsible to a poor performance level. Also, platform should be tested for overall functionality, finding workflow bottlenecks, tracing and fixing malfunctions, etc. Data and Database Integrity Testing Functional Testing Usability Testing Performance Testing
Load Testing Stress Testing Security / Access Control Testing Failover / Recovery Testing Platform validates for XHTML transitional and CSS per W3C Platform validates against W3C Web content accessibility guidelines. 9 Other non-functional requirements 9.1 Accessibility CULTUR-EXP platform should be valid for W3 s WCAG 2.0 (Web Content Accessibility Guidelines). More information available at: http://www.w3.org/wai/intro/wcag.php 9.2 Availability Platform should be available in 24/7/365 format, with server to meet or exceed 99% uptime, as defined in the proposal. 9.3 Usability Usability study is suggested to evaluate the end-to-end experience of platform members as they interact with the CULTUR-EXP. The study to collect qualitative and quantitative data to answer several research questions, including: Task completion - How well does the site support members ability to accomplish key goals and tasks? Navigation and information architecture How does the platform structure support members ability to accomplish their tasks? Can they navigate to where they want to go and accomplish their tasks quickly and efficiently? What pathways do they take? Content and terminology Do our members understand the content and does it help them accomplish their tasks? Layout and visual design What are our members impression of the visual design? Communication and site impressions - What are our members overall impressions of the site? Does it adequately communicate what users can/are required to do with the site? 9.4 Privacy policy All pages on CULTUR-EXP platform should contain privacy policy information: written in plain language and clearly explaining how CULTUR-EXP and Partner organizations will handle personal information submitted by members and collected over the Internet. 9.5 Term of use/service agreements All pages on CULTUR-EXP platform should contain terms of use/service information: clearly explaining terms of service of CULTUR-EXP platform. 9.6 Help and FAQ Help section should contain information for members on how to use CULTUR- EXP platform. Well documented help with search functionality is suggested. Members should be given possibility to send their questions to the support team (administrators).
User Frequently Asked Questions (FAQ) list should be generated and answered, in order to handle most common issues.