Project Overview
YourShopping.com is a new social shopping website which adds a level of personalization to the online shopping experience by allowing consumers to easily connect with their friends, family and like-minded shoppers around products and shopping events that are significant to them. YourShopping seeks to bridge the gap that currently exists between price comparison and social shopping websites.
NextGen Shopping LLC contracted with InspirationGate to rebuild the entire foundation, architecture, core components and presentation layer of the first beta release of YourShopping. InspirationGate worked closely with NextGen Shopping from start to final implementation.
Challenges
- YourShopping is a large web application spanning multiple platforms, which expected to have a high-level of traffic and a large amount of content. It was important to have a well designed architecture that served as a foundation for future releases.
- The initial solution was built on Community Server 2008 as a concept model by NextGen Shopping LLC. The solution was then restructured and rebuilt entirely on Community Server 2008.5 by InspirationGate. It was then upgraded to Telligent Community 5 followed by another upgrade to TC5.0 SP1 upon its release. Various core components required updating during this process which resulted in a number of challenges in the solution design to streamline and simplify the upgrade process.
- YourShopping required a custom component, called a Social Bookmarklet, which allowed members to save and share products with the community while shopping at any retailer website. This proved to be quite a challenge which required both intricate and complex client-side programming experience.
Provided Solution
YourShopping had two core aspects to it, the shopping experience and the community experience. The community experience was handled entirely by Telligent Community in the form of forums, blogs, media galleries, wikis, conversations, and user interaction through activity streams, while the entire shopping experience was custom built. The shopping component included searching for products, reviewing and rating products and stores, managing shopping and gift lists, viewing coupons and deals, among others. The shopping and community pieces were then connected through a number of backend and frontend integration points resulting in a seamless experience for the end-user.
As InspirationGate has been utilizing Telligent platforms for years, the foundation and architecture of all custom components followed the same design patterns used in the existing CS Applications that includes building custom controls using the Chameleon framework, following Provider pattern in data access components, URL providers, email providers, resource management, dynamic configuration, CS modules, content fragments and related.
Feature Highlights
Product Search YourShopping allows consumers to search for products utilizing the Shopping.com API to provide the best matching products to the user. The product search implementation itself is a proprietary component built by NextGen Shopping LLC.
Products and Price Comparison
Upon viewing the details page of a specific product the user can find both related local posts made by the community, as well as external ratings and reviews retrieved from Amazon and Epinions Web Services. The user can also mark a product they want or already own, add it to their favorites, add it to a custom shopping or gift list, or suggest it to a friend.
Product Tagging
Consumers can ask questions, rate products, add written or video reviews, or add pictures. This is accomplished through a series of integration components with Telligent Community that matches products with corresponding forum posts, blog posts, wiki posts or media gallery posts. On the backend, proper data providers are extended. On the front-end, Sub Forms were included to add the required extra data.
Searching for stores
The system also allows consumers to search for stores and review them; consumers can also mark stores as favorites which would show at the top in product price comparisons.
Shopping and gift lists
The platform utilizes a core feature which allows users to organize products on to various shopping or gift lists. Users can create their own lists or join on to friends’ lists to collaborate on important shopping events. Users can control the privacy of their lists by marking them as public, private or friends only.
Coupons and deals
YourShopping.com allows users to browse and share coupons and deals. Users can vote on them so other community members will know if the promotion is still valid. Users can also “like” a promotion, enabling friends and followers to also take advantage of it.
Activity Streams
The Community Server activity stream implementation has been extended to show additional YourShopping attribute data, such as images, from related stores and products to enhance the activity
Technical Details
Find below the high level design of YourShopping infrastructure.
-
The data layer is built using the Provider pattern which abstracts the APIs from the implementation along with relying on external configuration to wire the data providers with their implementation counterparts, when a provider is requested, it is instantiated and cached then used throughout the application lifetime. Providers in most cases relied on prebuilt custom optimized stored procedure for covering the required data access needs.
-
Some of the existing data providers for forums, blogs, media galleries, messages and wikis have been extended to accomplish a number of custom queries and extensions. CS Applications are also used as aggregation points with various CS functions like Tagging, Favorites, Searching and others.
-
A number of Community Server Applications were created for each primary business feature which provided common functions and managed context for the application.
-
The business layer is encapsulated in a set of reusable components where the logic is divided between the database in the form of stored procedures and on the application level to achieve a high level of performance by only transferring data objects from the database level to the application level when necessary.
-
A set of custom CS Modules and Sub Forms were created to cover various business needs.
-
The entire Community Server presentation layer has been skinned, this includes sections the overall look and feel, along with all CS applications including forums, blogs, media galleries, wikis, user sections, activity streams and others.
-
The presentation layer was built using cross browser compatible HTML/CSS tested against IE6, IE7, IE8, FireFox 3 and Safari 3 using XHTML Transitional 1.1 document type.
-
Each user interface control was developed to work independently and is described using content fragments.
Technologies
Visual Studio 2008, .NET framework 3.5, C#, ASP.NET, jQuery, SQL Server 2008, Community Server 2008.5, Telligent Community 5.
Customer Feedback
" At the beginning of this project we provided a concept model to InspirationGate. They took our original model and rebuilt the entire project to our specifications. Throughout the project we worked very closely with InspirationGate, providing guidance to overcome intricacies involved in combining community and shopping features. Their communication, hard work, and dedication to the project was showcased in the final product. InspirationGate is a quality team of knowledgeable developers who have been a pleasure to work with. Their knowledge of the Telligent Evolution platform far surpassed any team I had previously worked with, which was extremely important to this particular project. For ASP.NET projects I would highly recommend them. "
- Marc Mezzacca, President
NextGen Shopping LLC