Open Source Multilingual Russian Web CMS Based News & Media Portal development using PHP5+, Linux, Apache, Mysql, Symfony Framework 1.4, AJAX, HTML5, CSS3 etc. See More At: http://www.greymatterindia.com/multilingual-russian-web-cms-based-news-media-portal
Open Source Multilingual Russian Web CMS Based News & Media Portal
1. Client Requirement
Client required an online news website that was CMS based for the various cities in Russia. Symfony 1.4
was chosen for this task and requirement analysis, development and implementation, database
development, regular profiling and improving performance of the application requirements were
analyzed and provided.
A complete database solution was required for the website along with design and development. The
website also needed to be user friendly along with supporting the myriad of news based on the various
Russian cities keeping the data fresh, current and relevant across the country. The content management
system should be robust and should be capable of handling the a variety of data including videos, files,
photo gallery, etc.
Apart of this, client also required:
A fresh and interactive design
Website must be scalable and extensible
Symfony Framework to be used
Safe and secure website
Rich media usage
Web 2.0 compatibility
Challenges
The team faced the following challenges:
A reliable and efficient framework needed to be selected to handle the content generation and
hosting facilities along with the modules that co-ordinate with each other in order to exchange
information.
RSS feeds needed to be incorporated to manage the up-to-date information and news related
data.
Safe and secure transfer of data while incorporating third party API’s.
Integration of Google Translator service to enable the translation of text on web pages.
Including web usability principles for developing the numerous features for enhancing user
experience.
Site needed to be robust and secure to handle the transfer of large amount of data.
2. Technologies Used
Manpower
Operating System & Server
Management
Red Hat Linux OS, Multi-Server Architecture with Staging & Production
Environment through Version Controlling releases, Server Optimization,
Security & SSL Implementation, Scheduler for Back-ups, Alert Monitoring
System Integration, Server Performance Tuning at regular intervals,
Software Firewall Configuration & Maintenance
Development Tools &
Environments
PHP5+, Apache, Symfony Framework 1.4, AJAX, HTML5, CSS3 etc.
Database MYSQL Database Server, DB Clustering, DB Optimization, Master Slave
Replication, Query Optimization, Scheduler for Backups
Project Leader 1
Developers 2
Designers 2
Quality Assurance Testers 1
3. Planning
Keeping in mind the structure of the website and the challenges involved, a four-tier development
approach was adopted, consisting of:
The Database layer containing MySQL Server Database, Tables, stored procedures and so on.
The Data Access layer that contains libraries for accessing data from the database.
The Business Logic layer consisting of all business logic procedures for modules.
The User Interface Layer forms the Graphical User Interface of the website.
Architecture
The website was designed to be a powerful tool for generating and hosting content on the web.
The system was designed to communicate with client via a secure channel that validated and
stored user registration information. RSS live fields were implemented for enhancing user
experience.
The Business Layer DLL consisted of various business logic for all the modules that were
compiled into a single Business DLL that was meant to directly communicate with the UI layer.
DLL included all the business logic for modules like Save [Add/Update], Delete, Get Single
Object, Get Multiple Objects for listing and were designed to enable handling of many more
logics not related to the database. Data Access DLL was capable of accessing data from the
database. Business layer components were coded to use this DLL. The business layer components
were coded to use this specific library. Stored procedures were used only for complex retrieval of data
from multiple tables and were entirely avoided with conditional syntax to ensure smooth performance
of the website. The UI layer was kept free of any business logic and images and other data were called
from their respective servers.
Development Highlights
PHP 5 and MySQL was used as the design approach for this website, to accommodate for the
robust architecture requirements to perform crucial functions. Symfony framework and 3rd
party API’s were used to add the required interactivity to eliminate heavy coding. RSS feeds
were incorporated to enhance user experience. . Web usability guidelines were followed with the
judicious use of AJAX, CSS and HTML controls. The site was developed within a short span of 4 months.