View
493
Download
0
Category
Preview:
Citation preview
A «graph-based» Service CatalogueHow Neo4j can help your business with a tool to governyour services
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
Veneto Banca is the bank that heads the Veneto Banca Group, one of 14Italian 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
IntroductionThe Company and its projects
Key features:
The applications in the multichannel project spans into self andsupervised channelsThe focus is on the channel, the customer and the way he «speaks»with the bankMultichannel applications rely on a brand new architecture which isresilient, scalable and based on the atomic service paradigmBusiness data are stored into a Datawerhouse that encapsulate thedata quality engineData Provider services are orchestrated and organized by anarchitectural powerful engine for decoupling the business layer fromthe external ones.
3Technical Architecture, April 26, 2016
IntroductionThe Company and its projects
Dat
a Pr
ovid
erA
pplic
atio
nsIn
fras
tuct
ures
HUB Cliente Contact Center Commercial support tools
Architecture Datawarehouse
BankUp
4Technical Architecture, April 26, 2016
IntroductionThe landscape of our services
An “atomic service layer”: a fine-grained set of services that implements atomic “functions”
600services
300services
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)
5Technical Architecture, April 26, 2016
The problems we have to faceGovernance, Impact Analysis and Automation
Documentation and GovernanceNo automatic service discoveryNo informations between the lower layer and the higher one
Impact AnalysisWhat are the impacts on our business services and applications if we do asoftware change?What are the test suites we have to run
Automatic features activationWe want a ”service mock” tool and we want to activate on the flyHot configuration switching
We need a repository where we can collect all the informations we canextract for our backend services
6Technical Architecture, April 26, 2016
Key features to achieve
The relationships between the objects are one of the most importantinformations that we must handle
We need a whiteboard friendly representation that should be easy todraw and understand by anyone
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 softwarechanges
7Technical Architecture, April 26, 2016
ApproachesThe «primitive» approach
Service Catalogue(Excel sheet)
Software repositoryinspection
Lookup & collectdocumentation
At the end an idea comes out:
We need something to represent the
relationships in a multi-directionalpattern
9Technical Architecture, April 26, 2016
ApproachesPros & Cons
Redundancy of data to implement multi directionaljoin
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 applicationdelivery and deployment in every environment.
10Technical Architecture, April 26, 2016
ApproachesCore features
Service Catalogue
Reports
Management console
Service “hot” configuration
Switch on/offfeatures
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 (refactorproperties 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 needto calculate them at runtime
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
14Technical Architecture, April 26, 2016
What we have doneSoftware changes and Impact Analysis
Change AdvisoryBoard
Change Sets(Software changes)
Bottom-UpAnalysis
ImpactedComponents
Test Plans
End Users
ExternalProvider
Issue
Bottom-UpAnalysis
ImpactedComponents
Warns & Alerts
Impact Analysis Software changes
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
16Technical Architecture, April 26, 2016
ConclusionsFuture evolutions
Cost Management Business Continuity
Enterprise Application Architecture Map
And so on ...
Recommended