We present our excursus in collaboration with one of our main customers in the development of a new environment dedicated to the management and sales of API. The main objective of this project is to enable the services exposed by the customer in his internal architecture to the growing world of the "start up" using the Axway API Gateway and the microservices architecture. We will discuss the difficulties encountered and how the use of the main patterns related to microservices have helped us overcome them.
5. An API: What is an API?
•An API is an Application Programming Interface
•An API can represent Accelerated Product
Innovation
6. An API: Ecosystem
• An API connects your
business process,
services, content and
data to channel
partners, internals
teams, and
independents
developers in an easy
and secure way.
7. An API: why
• Integrating content from partners to create cross-sell and
upsell opportunities
• Creating new line of business extending product offering by
leveraging corporate data in new way
• Strengthening the brand by providing a consistent, familiar,
personalized experience across devices
• Enabling reusability, resulting by providing in the completion of
new partner integrations in days, not weeks.
8. Customer Experience Networks
• Continuously anticipate and adapt
to changing market conditions
and customer expectations
• Quickly design and introduce new
products and services to
differentiate from competitors
• Easily collaborate with new
stakeholders across value chains
that were not accessible before
• Efficiently develop, launch, and
industrialize new business models
to capitalize on new revenue
streams and grow your bottom
line
11. A MicroService: what is a MicroService?
• The term "Microservice Architecture" has sprung up over the
last few years to describe a particular way of designing
software applications as suites of independently deployable
services. While there is no precise definition of this architectural
style, there are certain common characteristics around
organization around business capability, automated
deployment, intelligence in the endpoints, and decentralized
control of languages and data.
12. A microservice: trade-offs
Microservices
provide benefits…
• Strong Module Boundaries:
Microservices reinforce modular
structure, which is particularly
important for larger teams.
• Independent Deployment: Simple
services are easier to deploy, and
since they are autonomous, are less
likely to cause system failures when
they go wrong.
• Technology Diversity: With
microservices you can mix multiple
languages, development frameworks
and data-storage technologies.
…but come with
costs
• Distribution: Distributed systems are
harder to program, since remote calls
are slow and are always at risk of
failure.
• Eventual Consistency: Maintaining
strong consistency is extremely
difficult for a distributed system,
which means everyone has to manage
eventual consistency.
• Operational Complexity: You need a
mature operations team to manage
lots of services, which are being
redeployed regularly.
14. Business Case: TIM OPEN
• TIM, all’interno del progetto TIM
OPEN, ha espresso l’esigenza di
fornire una piattaforma aperta alla
community degli sviluppatori
italiani per la creazione e la
vendita di nuove applicazioni su
infrastruttura TIM e l’utilizzo di
API presenti nel gruppo TIM. Ad
Olivetti è affidata la responsabilità
del Solution Design e del
Deployment delle piattaforme di
Identity Management, API
Management e relativo Billing
nonché del portale per la
commercializzazione delle API.
• TIM, within the TIM OPEN
project, expressed the need to
provide a platform open to the
Italian developer community for
the creation and sale of new
applications on the TIM
infrastructure and the use of
APIs present in the TIM group.
Olivetti is responsible for the
Solution Design and
Deployment of the Identity
Management platforms, API
Management and related Billing
as well as the API marketing
portal.
15.
16. Business case: Easy API
L'obiettivo è rendere
disponibile all'interno del
portale TIM OPEN l’insieme
delle API “EASY API”
implementando gli standard
stabiliti per le API esposte da
TIM OPEN
The objective is to make the
"EASY API" API set available
within the TIM OPEN portal by
implementing the established
standards for APIs exposed by
TIM OPEN
17.
18. Business case: Easy Privacy
L’obiettivo principale di questa
applicazione è quello di fornire un
meccanismo per l’approvazione (o
rifiuto) dei consensi relativi alla
privacy di un utente. Distinguiamo
due tipi di consensi sulla privacy:
• Consenso Privacy TIM: permettono
allo sviluppatore TIM OPEN, tramite le API
‘EasyAPI’ da lui sottoscritte, di ottenere
informazioni sui dati personali dei suoi
utenti (per esempio la localizzazione di un
terminale).
• Consenso Privacy Policy: permettono
allo sviluppatore TIM OPEN di richiedere ai
suoi utenti il consenso di una policy creata
ad hoc dallo stesso.
The main objective of this
application is to provide a
mechanism for the approval (or
refusal) of the consent related to
the privacy of a user. We
distinguish two types of privacy
consent:
• Privacy consent TIM: allow the
developer TIM OPEN, through the API
'EasyAPI' signed by him, to obtain
information on the personal data of its
users (for example the location of a
terminal).
• Consent Privacy Policy: allow the
developer TIM OPEN to request its users
the consent of a policy created ad hoc by
the same.