Scott Logic worked with a leading international Investment Bank across four locations to implement cross-platform financial charting.


We built a replacement for the client’s charting component which was used in both their desktop and web trading platforms. The client’s component was rich in features, but only supported Windows and the Internet Explorer browser. We re-implemented the component with a new technology stack that runs on both Windows and Mac, and in all major browsers. We also enhanced the component to improve interactivity and add additional analysis features.


  • Windows Presentation Foundation (WPF)
  • Silverlight
  • jQuery
  • Visiblox Charts


In order to deliver the component for both of the client’s platforms, we supplied a team of four developers with a mixture of desktop and web specializations. Our developers made up the majority of the development team, and were fully integrated with a smaller number of the client’s own developers and the client’s testing team. The Scott Logic team was spread across our Newcastle and Edinburgh offices, whilst the client’s developers were located in their European headquarters, and the test team were in India.

In addition to the development team we provided project management throughout the two year project using the Scrum methodology. This included iteration planning, day-to-day management of iterations, management of the testing team, and co-ordination with the product owner.


The existing component was built on Microsoft’s ActiveX technology stack making it completely tied to Microsoft Windows, both on the desktop and the web. To meet the client’s cross-platform (Windows and Mac) and cross-browser (IE, Firefox, Chrome and Safari) requirements, we chose to implement a solution based upon the Visiblox Charts component. Visiblox offers a WPF version for the desktop and a Silverlight version for the web, both with the same API, so we were able to create a single implementation for both of the client’s platforms, with only a small amount of integration code specific to each platform.


Our brief for the first release was to provide a cross-platform charting component that supported all the current functionality:

We knew that subsequent releases would include many new features, so a key aspect of the new design was therefore extensibility. We worked closely with the product owner during the initial implementation to build a backlog of new features and enhancements for the second phase, which included: