Skip to main content
Skip table of contents

System Requirement Specification

Introduction

This document describes the system requirements for SPORIFY and outlines the general architecture of the System.

System Overview

SPORIFY is a purpose built solution to match and manage SPOR controlled vocabularies. Our system provides users with a simplified and centralised method to control the data they require for IDMP from the EMA SPOR master data services. Our intuitive user interface helps to manage company terms and match them with externally hosted controlled vocabularies for the following data domains: SPOR (Referentials, Organisations)  and (G-SRS, EUTCT) Substances. SPORIFY matches, maintains, synchronises and integrates SPOR data with local terms, saving users up to 75% of time and effort on the initial matching and automatically maintaining the data as SPOR updates into the future with automated updates and alerts. Our out of the box, follow favourites and notification service alerts users to relevant data changes for data they are interested in. No need to manually monitor changing terms, we let you know when something you are interested in changes.

System Architecture

The SPORIFY service acts as a data broker between your internal source system data and externally managed regulatory data such as EMA SPOR and G-SRS. Your source terminologies are imported to SPORIFY where they are automatically or manually matched to the relevant target system data. SPORIFY monitors data changes on target systems and notifies you of changes relevant to you. All matched data is available for export via Excel or API.

Technology

SPORIFY is a cloud hosted SaaS solution hosed in AWS. The service is based Microsoft .Net technology and on angular web technology which requires a modern web browser to run efficiently. We recommend that browsers are kept up to date and we support the latest version of the following:

Browser

Supported Version

Chrome

latest

Firefox

latest

Edge

latest

Internet Explorer

latest

The system has been tested successfully in Internet Explorer 11.70. However, it is not recommended to run the system in older versions of Internet Explorer due to possible compatibility issues with the angular framework technology used by the system.

Interfaces and services

The SPORIFY background synchronisation service uses the following interfaces and services.

Sync Schedule

SPORIFY runs a nightly sync to pull data from the above services and APIs, this sync runs at 4am GMT and its duration is dependent on the number of records to update however on average the sync will take approximately 2 hours to complete.

3rd Party Software Components

The SPORIFY Software is using the following original components, in their public known version at the time the version of SPORIFY was released:

Component

Description

Link

License

Hangfire

Recurring background jobs

https://github.com/HangfireIO/Hangfire

LGPLv3

ASP.NET Boilerplate

Web Application Framework

https://github.com/aspnetboilerplate/aspnetboilerplate

MIT License

AutoMapper

Map objects from one type to another

https://github.com/AutoMapper/AutoMapper

MIT License

Swashbuckle

API documentation

https://github.com/domaindrivendev/Swashbuckle.AspNetCore

MIT License

Newtonsoft.Json

JSON framework

https://github.com/JamesNK/Newtonsoft.Json

MIT License

EntityFramework

Object relational mapper

https://github.com/dotnet/ef6

Apache-2.0

log4net

Log to various targets

https://logging.apache.org/log4net/

Apache-2.0

Google.Apis

.NET libraries for Google Cloud APIs

https://github.com/googleapis/google-cloud-dotnet

Apache-2.0

AsyncEx

Helper library for async/await code in .NET

https://github.com/StephenCleary/AsyncEx

MIT License

WebGrease

Optimize Javascript, CSS and image files

https://www.nuget.org/packages/WebGrease

Individual

StackExchange.Redis

Redis client

https://github.com/StackExchange/StackExchange.Redis

MIT License

Recaptcha.NET

reCAPTCHA library for .NET

https://github.com/tanveery/recaptcha-net

Apache-2.0

Antlr

Language tool for creating interpreters

https://github.com/antlr/antlrcs

BSD License

CsvHelper

Parse and generate CSV files

https://github.com/JoshClose/CsvHelper

Apache-2.0

IPAddressRange

Library for handling IPv4 and IPv6 addresses

https://github.com/jsakamoto/ipaddressrange/

Mozilla Public License 2.0

Quartz

Job Scheduler

https://github.com/quartznet/quartznet

Apache-2.0

Castle Project

object invocation framework

https://github.com/castleproject/Windsor

Apache-2.0

Angular

web application framework

https://github.com/angular/angular

MIT License

jQuery

Javascript framework

https://jquery.com

MIT license

SignalR

Websocket framwork

https://github.com/SignalR/SignalR

Apache-2.0

Bootstrap

Javascript framework

https://github.com/twbs/bootstrap

MIT License

jQuery slimScroll

jQuery plugin

https://github.com/rochal/jQuery-slimScroll

MIT License & GPL

jQuery BlockUI

jQuery plugin

https://github.com/malsup/blockui

MIT License & GPL

js-cookie

browser cookies framework

https://github.com/js-cookie/js-cookie

MIT License

Uniform

jQuery plugin

https://github.com/AudithSoftworks/Uniform

MIT License

localForage

storage library for JavaScript

https://github.com/localForage/localForage

Apache License 2.0

morris.js

Charts for JavaScript

https://morrisjs.github.io/morris.js/

BSD License

jQuery MiniColors

jQuery plugin

https://github.com/claviska/jquery-minicolors

MIT License

Apache ECharts

Charts for JavaScript

https://github.com/apache/echarts

Apache License 2.0

Raphaƫl

Cross-browser vector graphics

https://github.com/DmitryBaranovskiy/raphael

MIT License

jQuery Sparklines

jQuery plugin

https://github.com/gwatts/jquery.sparkline

BSD

jQuery Color

jQuery plugin

https://github.com/jquery/jquery-color

CC0

Jcrop Image Cropping Plugin

jQuery plugin

https://github.com/tapmodo/Jcrop

MIT License

Timeago

jQuery plugin

https://github.com/rmm5t/jquery-timeago

MIT License

jstree

jQuery plugin

https://github.com/vakata/jstree

MIT License

jQuery Spin

jQuery plugin

https://github.com/ksylvest/jquery-spin

MIT License

sweet-alert

Modal dialog for JavaScript

https://github.com/t4t5/sweetalert

MIT License

Push

Javascript desktop notifications

https://github.com/Nickersoft/push.js

MIT License

toastr

toastr is a JavaScript library for non-blocking notifications

https://github.com/CodeSeven/toastr

MIT License

Moment.js

JavaScript date library

https://github.com/moment/moment/

MIT License

Underscore.js

Library for JavaScript

https://github.com/jashkenas/underscore

MIT License

easy-pie-chart

jQuery plugin

https://github.com/rendro/easy-pie-chart

MIT License

fontawesome-iconpicker

Plugin for Bootstrap

https://github.com/itsjavi/fontawesome-iconpicker

MIT License

jquery.cookieBar

jQuery plugin

https://github.com/carlwoodhouse/jquery.cookieBar

MIT License

Select2

jQuery plugin

https://github.com/select2/select2

MIT License

html2canvas

JavaScript Screenshot framework

https://gist.github.com/akovalyov/dde3a8d9bfc28c7511cb

MIT License

jsPDF

Library to generate PDFs in JavaScript

https://github.com/parallax/jsPDF

MIT License

Pagination.js

jQuery plugin

https://github.com/superRaytin/paginationjs

MIT License

jquery.autofocus.js

jQuery plugin

https://gist.github.com/weppos/426727

MIT License

gmaps.js

Google Map Wrapper

https://github.com/hpneo/gmaps

MIT License

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.