Case Study Info

Online Customer Information Service

The Challenge

A trade association representing a large network of retail outlets in a major European city is keen to invest in new technology allowing their customers full visibility of the range of products across all of the members’ retail outlets. They want to increase the online utility of the service so that potential customers can browse products, compare prices between different outlets, download product information, check stock levels, and reserve a product online for subsequent collection. They are uncertain about the degree to which all of this is achievable and so ask Softage to work with them to clarify the requirement and measure aspiration against the art of the possible.

Solution Overview

Softage begins work on the project in April 2012. Our team of systems and business analysts sit down with the client and work closely with them to refine their thinking and to get a clear idea of what they want the service to deliver. Having examined the project in great detail our team devises a service that will meet all of the client’s needs. After showing the plan to the clients and securing their agreement, our developers set about designing and building a web based service that will satisfy the requirement.

Our team is able to design, build, test and roll out a service which links together databases containing product information with those containing stock levels, displaying all the required information clearly and in a way that’s easy for potential customers to understand. We are also able to include a tool which highlights the closest outlets stocked with whatever the customer wants by reference to the user’s IP address, displaying the results on a scrolling map.

The entire project, from definition to delivery, is completed in only three months. The client is delighted with the service and with the speed with which Softage delivers the product.

Main Features

The service which Softage’s team of developers builds allows for a full text search by product name. This produces results which link to information concerning product specification and use, as well as to the manufacturer’s datasheets. Having selected a product, the service then allows the user to compare prices across all the city’s outlets. These results can be ranked by price, availability, or proximity to the customer’s address, depending on their wishes. This ability to calculate distance to the nearest outlet by IP address is reinforced by the option to override the automated calculation and manually select a location. The customer can also limit the results by specifying a maximum radius from their location to any stores which fit the other search criteria.

The service also allows users to review previous customer feedback on a particular outlet and present information such as street address, contact details, and outlet opening hours. If the user wishes to select more than one product in a single visit to the site, the system is configured to show only those outlets that had the entire selection in stock. It also remembers previous visitors to the site and previous searches, as well as ordering history.

Key to the system is the ability to receive and collate stock level information almost instantaneously. Each retail outlet has an electronic stock control system which records all deliveries and sales as they are made, and transmits that information back to a central server. Softage implements a database on that server which gathers information on each transaction as it is made, and then presents information to the online user that is completely reliable and up to date.

The service is designed to operate on versions of Internet Explorer from 7 onwards, and on the current and last two versions of Firefox, Chrome, Opera, and Safari.

Tools and technologies

Softage’s team selects Apache Tomcat 7 as the web server, drawing on their deep experience of working with Java. The search engine chosen is SOLR, another part of the Apache family, and highly regarded for its reliable full text search capability.

Product data and stock levels are held on a MongoDB as JavaScript Object Notation documents. The scalable capacity of MongoDB allows plenty of room for expansion at some future date, should that ever be required. The data access framework is Spring Data MongoDB and the software architecture framework is Spring Web MVC.