a technical framework for business dashboards. the pred ... · o open source, modern and popular...
TRANSCRIPT
![Page 1: A Technical Framework for Business Dashboards. The pRED ... · o Open source, modern and popular • Using Sails.js instead of Express.js: Sails.js is a realtime MVC Framework for](https://reader035.vdocument.in/reader035/viewer/2022070806/5f043ea77e708231d40d0607/html5/thumbnails/1.jpg)
A Technical Framework for Business Dashboards.
The pRED Portfolio dashboard as an example.
2016 European Spotfire User Group Meeting, Basel
Christian Blumenroehr Pharma Research and Early Development pRED Informatics, Solution Delivery & Architecture Roche Innovation Center Basel
![Page 2: A Technical Framework for Business Dashboards. The pRED ... · o Open source, modern and popular • Using Sails.js instead of Express.js: Sails.js is a realtime MVC Framework for](https://reader035.vdocument.in/reader035/viewer/2022070806/5f043ea77e708231d40d0607/html5/thumbnails/2.jpg)
The problem & its solution
The business benefits
Integration of Spotfire reports
Demo (with dummy data)
The technical implementation
The framework applied to other dashboards
![Page 3: A Technical Framework for Business Dashboards. The pRED ... · o Open source, modern and popular • Using Sails.js instead of Express.js: Sails.js is a realtime MVC Framework for](https://reader035.vdocument.in/reader035/viewer/2022070806/5f043ea77e708231d40d0607/html5/thumbnails/3.jpg)
The problem
• Portfolio data are available at different places
• Files are sent via e-mail → later access to outdated data
Custom reporting app
Custom reporting app
→ users lost track
![Page 4: A Technical Framework for Business Dashboards. The pRED ... · o Open source, modern and popular • Using Sails.js instead of Express.js: Sails.js is a realtime MVC Framework for](https://reader035.vdocument.in/reader035/viewer/2022070806/5f043ea77e708231d40d0607/html5/thumbnails/4.jpg)
The solution
• Build a dashboard that provides a unique access point
Custom reporting app
Custom reporting app
![Page 5: A Technical Framework for Business Dashboards. The pRED ... · o Open source, modern and popular • Using Sails.js instead of Express.js: Sails.js is a realtime MVC Framework for](https://reader035.vdocument.in/reader035/viewer/2022070806/5f043ea77e708231d40d0607/html5/thumbnails/5.jpg)
The business benefits
• Single point of truth
• Improved support for senior pRED Leadership decisions around:
– Portfolio prioritization
– Investment decisions
– Partnering decisions
– Risk management
• 7 points of access for portfolio reporting combined into one, delivering confidence in validity of data.
• Improved data quality through increased portfolio visibility.
• Usage statistics
– "how many reports are viewed?", "how does the usage evolve over time?", "what reports/report types are used the most?“
• Easy to use
• Central access management, thus increasing security
![Page 6: A Technical Framework for Business Dashboards. The pRED ... · o Open source, modern and popular • Using Sails.js instead of Express.js: Sails.js is a realtime MVC Framework for](https://reader035.vdocument.in/reader035/viewer/2022070806/5f043ea77e708231d40d0607/html5/thumbnails/6.jpg)
Report type, title, representative picture. On mouse over: description & data refresh rate
The dashboard
The dashboard currently consists of 55 reports. Each report is represented by a "portlet"
![Page 7: A Technical Framework for Business Dashboards. The pRED ... · o Open source, modern and popular • Using Sails.js instead of Express.js: Sails.js is a realtime MVC Framework for](https://reader035.vdocument.in/reader035/viewer/2022070806/5f043ea77e708231d40d0607/html5/thumbnails/7.jpg)
The dashboard
Official PDF reports stamped by the Portfolio Management group
Dynamic visualizations of portfolio metrics and analyses via Spotfire and BO based on live data
Static reports in MS Office formats
All portlets are grouped in report categories each consisting of
Custom reporting applications
![Page 8: A Technical Framework for Business Dashboards. The pRED ... · o Open source, modern and popular • Using Sails.js instead of Express.js: Sails.js is a realtime MVC Framework for](https://reader035.vdocument.in/reader035/viewer/2022070806/5f043ea77e708231d40d0607/html5/thumbnails/8.jpg)
The dashboard
![Page 9: A Technical Framework for Business Dashboards. The pRED ... · o Open source, modern and popular • Using Sails.js instead of Express.js: Sails.js is a realtime MVC Framework for](https://reader035.vdocument.in/reader035/viewer/2022070806/5f043ea77e708231d40d0607/html5/thumbnails/9.jpg)
Central access management
Users see only what they are allowed to see In the Admin UI:
– Add, modify categories
– Add, edit, re-categorize reports
– Grants access by Role
– Roles managed by Active Directory groups
BO Groups
Spotfire Groups
Cust. Rep. App2 Group
Role 1
Role 2
Cust. Rep. App1 Group
SharePoint Groups
Role 3
AD Group Membership
Spotfire Groups
BO Groups
Reports Categories
Spotfire Report Spotfire Report Spotfire Report
Category A
Category B
Category C
BO Report BO Report
. .
.
Access matrix
![Page 10: A Technical Framework for Business Dashboards. The pRED ... · o Open source, modern and popular • Using Sails.js instead of Express.js: Sails.js is a realtime MVC Framework for](https://reader035.vdocument.in/reader035/viewer/2022070806/5f043ea77e708231d40d0607/html5/thumbnails/10.jpg)
Integration of Spotfire reports
• (Kerberos-based) SSO
→ no login required
• Scheduled updates
→ immediate access
• Use the „options” parameter to the webplayer url
→ hide various sections like Header, Toolbar, Close button etc.
• Use configuration blocks
→ set page, filters, etc.
http://www.spotfire.com/SpotfireWeb/ViewAnalysis.aspx?file=/foo/bar&options=2-0,4-0
http://www.spotfire.com/SpotfireWeb/ViewAnalysis.aspx?file=/foo/bar&options=2-0,4-0&configurationBlock=SetPage(pageTitle=“MyPage");
![Page 11: A Technical Framework for Business Dashboards. The pRED ... · o Open source, modern and popular • Using Sails.js instead of Express.js: Sails.js is a realtime MVC Framework for](https://reader035.vdocument.in/reader035/viewer/2022070806/5f043ea77e708231d40d0607/html5/thumbnails/11.jpg)
Demo (with dummy data and reports on
development environment)
• Navigation
• Search
• Favorites
• Mashups
• Responsive design
• Admin Interface
![Page 12: A Technical Framework for Business Dashboards. The pRED ... · o Open source, modern and popular • Using Sails.js instead of Express.js: Sails.js is a realtime MVC Framework for](https://reader035.vdocument.in/reader035/viewer/2022070806/5f043ea77e708231d40d0607/html5/thumbnails/12.jpg)
Technical Implementation
ADMIN
NodeJS
MongoDB
Personalized dashboard Display specific reports
Create mashups
Configure reports Manage default dashboard
Manage access roles
Lightweight and fast open-source server allowing to use of full JavaScript stack for both client and server.
Lightweight, easy to scale, schema less , document database for storing the dashboard and user personalization in JSON format. No report data are stored!
The dynamic reports are embedded in the web application via iFrames (Spotfire & BO), and static reports are stored on SharePoint (.xls, .ppt)
SailsJS
AngularJS
HTML5/CSS
MOGATE Roche’s
«Identity & Access» data
Authentication Authorization
SSO
SSO*
SSO*
* : only on IE, basic authentication fallback on other browsers
REST API
USER
![Page 13: A Technical Framework for Business Dashboards. The pRED ... · o Open source, modern and popular • Using Sails.js instead of Express.js: Sails.js is a realtime MVC Framework for](https://reader035.vdocument.in/reader035/viewer/2022070806/5f043ea77e708231d40d0607/html5/thumbnails/13.jpg)
Technical Implementation
• MEAN : The acronym "MEAN" stands for
"MongoDB Express.js AngularJS Node.js" and represents a group of technologies which are known to synergize well together; it is a free and open-source JavaScript software stack for building dynamic web sites and web applications.
![Page 14: A Technical Framework for Business Dashboards. The pRED ... · o Open source, modern and popular • Using Sails.js instead of Express.js: Sails.js is a realtime MVC Framework for](https://reader035.vdocument.in/reader035/viewer/2022070806/5f043ea77e708231d40d0607/html5/thumbnails/14.jpg)
Technical Implementation
• Why using MEAN ?
o Single language from top to bottom (=> performance gains in both the software itself and in the productivity of developers)
o Single data format JSON is used for transferring data (=> simple approach, easier implementation, debugging and database administration)
o Flexibility in deployment platform
o Node.js's huge module library
o Open source, modern and popular
• Using Sails.js instead of Express.js : Sails.js is a realtime MVC Framework for Node.js, it is based on Express.js but has a higher level of abstraction
o Node.js ships with a very basic set of http libraries.
o Express.js wraps those http libraries and helps to enable things like routing, static serving, sessions, cookies, etc. But it really knows nothing about the DB.
o Sails.js wraps express and provides another higher level for doing things like connecting to the DB, auto-generating input pages, etc.
o Sails.js provides easy mechanism to create REST APIs
![Page 15: A Technical Framework for Business Dashboards. The pRED ... · o Open source, modern and popular • Using Sails.js instead of Express.js: Sails.js is a realtime MVC Framework for](https://reader035.vdocument.in/reader035/viewer/2022070806/5f043ea77e708231d40d0607/html5/thumbnails/15.jpg)
The framework applied to other dashboards
• This framework is not bound to portfolio data
• Can be applied to all kinds of reporting dashboards
• New instance: Clinical Development Dashboard
![Page 16: A Technical Framework for Business Dashboards. The pRED ... · o Open source, modern and popular • Using Sails.js instead of Express.js: Sails.js is a realtime MVC Framework for](https://reader035.vdocument.in/reader035/viewer/2022070806/5f043ea77e708231d40d0607/html5/thumbnails/16.jpg)
Acknowledgements
pRED Strategy & Portfolio Team
Odile Chomienne
Marina Neumueller
pRED Informatics Team
Sebastien Fournier
Alison Willard
Kenny Niedworok
Alan Rogerson
Roche ADMD Team
Adam Chwilkowski
Marcin Borkowski
Michal Kolacki
Kamil Kuliczkowsk
![Page 17: A Technical Framework for Business Dashboards. The pRED ... · o Open source, modern and popular • Using Sails.js instead of Express.js: Sails.js is a realtime MVC Framework for](https://reader035.vdocument.in/reader035/viewer/2022070806/5f043ea77e708231d40d0607/html5/thumbnails/17.jpg)
Doing now what patients need next