Portfolio

Nov 2013

Data Dashboard

Technologies: .NET
Floors. Interactive Office Map
Data Dashboard is an analysis tool that allows users to monitor key performance indicators (KPIs) as well as detailed data from different data sources like MS SQL, Oracle or even OLAP cubes

Overview

Data Dashboard is an analysis tool that allows users to see the key performance indicators (KPIs) and detailed data for the analysis purposes. It can take data from different data sources (databases) like MS SQL, Oracle or even OLAP (online analytical processing) cubes. It allows users to see all the data in the same manner. The application has an ACL-based security to prevent unauthorized users to see any sensitive data. Data Dashboard has a possibility to store all the needed data from different data sources in cache so it would shorten the loading time for the big amounts of data.

Data Dashboard allows users to see the KPIs as KPI values itself; colored indicators where the color depends on whether current value meets the KPI goal; gauges or even history chart.

The detailed information can be presented as a table, chart, map (data is grouped by geographic location) or calendar (data is grouped by date). Most of the data visualization types can be combined in dashboards.

Architecture

Current version of Data Dashboard is based on three-tier client-server architecture in which the user interface, business logic, data access and data storage are developed and maintained as independent modules. Apart from the usual advantages of modular software with well-defined interfaces, the three-tier architecture is intended to allow any of the three tiers to be upgraded or replaced independently in response to changes in requirements or technology.

  1. DB Server tier
    Here information is stored and retrieved. This tier keeps data neutral and independent from application server or business logic.
    Data Source databases are external business databases. Data Dashboard presents data from them as a result of queries to the specified (user defined) data sources. Business DB servers may be of any count.
  2. Application Server tier
    Configuration Service provides access to the persistent application configuration. Content Service provides access to temporary, generated or dynamic data. It also maintains tasks schedule. Worker executes long-running jobs like pre-computing KPI values or caching SQL queries results. This allows increasing performance and decrease response time of the system. Worker allows high importance tasks execution in the first place and provides a kind of SQL server load balancing.
  3. Client
    Client is run in the web browser with Rich Internet Applications front end (Silverlight).

Data Dashboard is sliced into several independent modules. Managed Extensibility Framework (MEF) is responsible for these modules loading. And IoC/DI container Autofac is responsible for these modules components registering.

CLICK TO REQUEST A QUOTE