Client Requirement Client wanted to introduce a new concept for search engines – a chance for users to win prizes! Search engines are an integral part of IT, Marketing and all fields of work. Client wanted to an additional The project had two specific requirements – web and toolbar. Currently, there is no search engine that rewards users for hits. So, each search has a chance to win prizes. Client required a system that will:
A complete search engine with an algorithm running in the background. Feature rich search engine with a potential to compete with the existing ones. Users should have the ability to log on. Maintaining browser history and capturing details of the user that has the highest browsing. Users should receive notifications for winning and redeeming prizes. One click access to Offers one-click access to YouTube, Facebook, Twitter, eBay. Bookmark and weather details from toolbar. Web image search should be improved. Ability to mark a website as a home page. Ability to block popups.
Challenges The team faced the following challenges
Auto login feature where in users could login and benefit from the tool bar functions. Eye catching search bar for dynamic keyword search. The placement for a “setting” icon at the right hand corner to make the toolbar unique from others. Browser should close automatically. Developing an installer that is capable of installing toolbars for browsers with improved performance.
Technologies Used 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
& Web: PHP5+, Apache Web Server, .Net Framework 4.0, AJAX, Java
Database
Script, HTML5, CSS3, NSIS etc. Plugin and Toolbar: VC++, MFC, ATLCOM, COM+, MSDEV 2005, XPI, RDF, XUL MYSQL Database Server, DB Clustering, DB Optimization, MasterSlave Replication, Query Optimization, Scheduler for Backups
Manpower
Project Leader
1
Developers
3
Designers
1
Quality Assurance Testers
1
Planning Cutting edge technologies were used to achieve the end results. Technologies like VC++, MFC, ATLCOM, COM+, MSDEV 2005, XPI, RDF, XUL were used to develop the application to work with browsers like Internet Explorer and Firefox. In order to maintain the security and the scalability, PHP was used for development. MySQL was used for query optimization and complex queries were handled by stored procedures. The development structure included extensibility and flexibility to ensure “faster to market” transitions. An interface was developed to translate the object logic to relational logic that was used to communicate with relational databases in an object oriented manner. An intermediary abstraction layer ensured that some of the set functionality was hidden. JSON was used for frequent server communication and enhanced performance. With all this in mind, the following development approach was used:
Data fetching technology from server was implemented. Research was scheduled to estimate the actual output that is in the form of different verticals and business logics. High level development standards were used for managing data volumes and synchronization was maintained for recent updates. The focus was to sync existing and newly generated data for backup. Flawless development of the User Interface Layer.
Architecture Database Layer – Consists of MySQL database, tables and stored procedures Data Access Layer – acts as a bridge between the physical database and the business logic Business Layer – contains the business logic procedures and acts as bridge between Presentation and database layers. User Interface Layer – this forms the user facing Graphical User interface.
Client Server Architecture
Development Highlights Stringent security and privacy was ensured with a version control mechanism. Users could download and automatically upgrade to the new version of the application. Application was highly scalable to accommodate all the new enhancements and new features. Optimized query features were added. Comprehensive search and browse features were added. Use of web usability guidelines and the interface was made easy to navigate with the use of CSS and HTML controls. The site was live within a span of 4 months.