2. 1
Agenda
Introduction Slide 2 - 4
The problems we have to face Slide 5
Key features to achieve Slide 6
Technical Architecture, April 26, 2016
Approaches Slide 7 - 10
Why Neo4j? Slide 11 - 12
What we have done Slide 13 - 14
Conclusions Slide 15 - 16
3. Veneto Banca is the bank that heads the Veneto Banca Group, one of 14
Italian credit institutions considered strategically important by the ECB.
Today, the Veneto Banca Group is present throughout the country, with
a network of branches subdivided into eight Regional Offices.
It operates in four countries in Eastern Europe: Romania, Moldova,
Croatia and Albania.
The mission of the Veneto Banca Group is to be an innovator and leader
in the areas in which it operates.
2Technical Architecture, April 26, 2016
Introduction
The Company and its projects
4. Key features:
The applications in the multichannel project spans into self and
supervised channels
The focus is on the channel, the customer and the way he «speaks»
with the bank
Multichannel applications rely on a brand new architecture which is
resilient, scalable and based on the atomic service paradigm
Business data are stored into a Datawerhouse that encapsulate the
data quality engine
Data Provider services are orchestrated and organized by an
architectural powerful engine for decoupling the business layer from
the external ones.
3Technical Architecture, April 26, 2016
Introduction
The Company and its projects
DataProviderApplicationsInfrastuctures
HUB Cliente Contact Center
Commercial
support tools
Architecture Datawarehouse
BankUp
5. 4Technical Architecture, April 26, 2016
Introduction
The landscape of our services
An “atomic service layer”:
a fine-grained set of services that implements atomic “functions”
600
services
300
services
A “business service layer”:
a higher level set of services that are a composition
(integration/orchestration) of one or more atomic services
Internal user and customer applications with high integration to each other
Many different providers (Reuters, SIA, NCR, etc)
6. 5Technical Architecture, April 26, 2016
The problems we have to face
Governance, Impact Analysis and Automation
Documentation and Governance
No automatic service discovery
No informations between the lower layer and the higher one
Impact Analysis
What are the impacts on our business services and applications if we do a
software change?
What are the test suites we have to run
Automatic features activation
We want a ”service mock” tool and we want to activate on the fly
Hot configuration switching
7. We need a repository where we can collect all the informations we can
extract for our backend services
6Technical Architecture, April 26, 2016
Key features to achieve
The relationships between the objects are one of the most important
informations that we must handle
We need a whiteboard friendly representation that should be easy to
draw and understand by anyone
8. What’s wrong with that?
Manual and time consuming process
Error prone: men can make mistake!
The catalogue is not up-to-date with the software
changes
7Technical Architecture, April 26, 2016
Approaches
The «primitive» approach
Service Catalogue
(Excel sheet)
Software repository
inspection
Lookup & collect
documentation
At the end an idea comes out:
We need somethingto represent the
relationships ina multi-directionalpattern
10. 9Technical Architecture, April 26, 2016
Approaches
Pros & Cons
Redundancy of data to implement multi directional
join
Difficult to scale and upgrade the data model
No more manual process. IT should follow the
process of the software lifecycle
Catalogue is always up to date with the application
deliveryand deployment in every environment.
11. 10Technical Architecture, April 26, 2016
Approaches
Core features
Service
Catalogue
Reports
Management
console
Service “hot”
configuration
Switch on/off
features
12. 11Technical Architecture, April 26, 2016
Why Neo4j?
Valuable features
Most valuable features:
Graphs are the most natural way to represent entities (nodes) that have connections (relationships)
We can add new types of nodes and relationships easily so the model can evolve in a simple way (refactor
properties to nodes with no pain!)
The whiteboard model is the physical model (what we draw on a paper sheet is what we get on the database)
We think that most of the information rely on the relationships. They are stored in the database and we don’t need
to calculate them at runtime
13. 12Technical Architecture, April 26, 2016
Why Neo4j?
Valuable features
Most valuable features:
Easy integration through its APIs (and with Spring Data)
Expressive and powerful query language (Cypher)
Written on top of JVM
Cache sharding, easy clustering and high availability
Hot back-ups
15. 14Technical Architecture, April 26, 2016
What we have done
Software changes and Impact Analysis
Change Advisory
Board
Change Sets
(Software
changes)
Bottom-Up
Analysis
Impacted
Components
Test Plans
End Users
External
Provider
Issue
Bottom-Up
Analysis
Impacted
Components
Warns & Alerts
Impact Analysis
Software changes
16. 15
At the end we can say that:
You must have a service catalogue inside an IT governance process
It’s useful if you want a complete and up-to-date application map
Once you got it you can extend the graph with more heterogeneous informations and areas of interest
Implementing an IT government tool based on Neo4j has been the right choice:
Relational DB’s do not manage relationships in a strict manner for us, Neo4j does it!
It’s whiteboard friendly, so it’s easy to implement your «hand-drawn» data model
It’s powerful and easy. It’s powerful because it’s easy
And last but not least … we like it!
Technical Architecture, April 26, 2016
Conclusions
17. 16Technical Architecture, April 26, 2016
Conclusions
Future evolutions
Cost Management Business Continuity
Enterprise Application
Architecture Map
And so on ...
18. A «graph-based» Service Catalogue
How Neo4j can help your business with a tool to govern your
services
-Thanks-