SlideShare a Scribd company logo
1 of 9
Download to read offline
Overcoming Ongoing Digital
Transformational Challenges with
a Microservices Architecture
IT organizations must look beyond yesterday’s monolithic Web
applications and embrace microservices, whose loosely-coupled
architectures speed development, testing and deployment,
accommodating today’s and tomorrow’s digital requirements.
Executive Summary
The accelerating digitization of business is forcing
many organizations to rethink their operating
models to meet the ever-rising expectations of
technology-savvy customers. At a fundamental
level, companies across all industries need to
ensure their services are available through digital
channels and are competitive with technological
innovations offered by rivals far and wide.
To enable such digital transformation, IT organi-
zations need to overcome several key challenges:
•	The cost of change. Customers want sig-
nificantly reduced technology costs and are
unwilling to fund technology changes that do
not result in direct customer benefits.
•	The pace of change. Quarterly or even monthly
release cycles no longer meet user needs.
Customers expect more frequent rollouts, even
multiple times a day, to keep pace with their
informational and service requirements.
•	The quality of change. Decision-makers want
to improve the scalability of applications and
deliver a rich, interactive and dynamic user
experience on a wide variety of devices, while
minimizing the risk of change.
This cannot be done with traditional multi-tier
Web applications — the de facto standard for
building applications that enable today’s era of
Internet applications — as they are too difficult to
develop, test and maintain. Multi-tier Web apps
typically consist of a complex code base, as the
result of enormous functionality built into a single
Web application. Further, a single change can
affect multiple sub-units, creating a much larger
and more complicated testing effort, requiring
testers to understand various code interdepen-
dencies or test the entire application for each
change. Lastly, because changing even a single
aspect of these monolithic applications affects
the entire code base, it slows down the testing
process and makes it error-prone.
To meet growing multi-dimensional challenges,
IT organizations must shift from monolithic
Web applications that serve HTML to desktop
browsers, toward an applications architecture
that enables architectural extensibility.
cognizant 20-20 insights | november 2015
• Cognizant 20-20 Insights
2cognizant 20-20 insights
This white paper describes an alternative archi-
tecture that is based on microservices. Applica-
tions designed with a microservices architecture
consist of a set of narrowly focused, independent-
ly deployable services. We believe that microser-
vices are the basis for a next-generation architec-
ture that can meet the operational flexibility and
functional needs of today’s burgeoning, dynamic
digital economy. This said, much complexity exists
at a higher level with this approach, in terms of
managing services and orchestrating business
processes throughout. This paper details some of
the best practices for implementing a microser-
vices architecture.
Defining a Microservices Architecture
The microservices-based architectural style is an
approach to developing a single application as a
suite of small, narrowly focused, independently
deployable services. Each microservice runs in
its own process and communicates with a light-
weight mechanism, often an HTTP resource API.
These services are built around business capa-
bilities and are independently deployable by fully
automated deployment machinery (see Figure 1).1
Although a microservices-based architecture is
not a particularly new idea, the concept has
achieved popularity among thought leaders
due to the recent digital technology surge.2, 3
Microservices architectures can offer businesses
numerous significant benefits, including:
•	Systems built with a microservices-based archi-
tecture are inherently loosely coupled, which
allows them to be easily built, changed and
selectively scaled, which is critical for new digital
applications. Because systems are broken into
multiple services, it allows for frequent changes
without affecting the entire system.
•	The services are very simple and focused on a
single business capability.
•	Multiple developers and teams can deliver
independently under this model, increasing the
pace of change.
•	Continuous delivery is enabled, allowing for
frequent releases while keeping the rest of the
system available and stable.
•	Because each service is operationally encapsu-
lated, development teams are free to change
implementation details without worrying about
inadvertent side effects that impact other
services due to a shared infrastructure.
For all these reasons, microservices enable busi-
nesses with a unique opportunity to use IT as
a tool to easily make functional changes and
measure results.
One of the goals of microservices architectures
is to build more robust systems by thinking about
the operational aspects of architecture. In fact,
microservices can be considered as the first post-
DevOps architecture.
Microservices: An Anatomical View
Figure 1
A monolithic architecture puts all its
functionality into a single process and scales
by replicating monoliths on multiple levels.
A microservice architecture puts each element of
functionality into a separate service and scales by distribut-
ing these services across servers, replicating as needed.
USER INTERFACE USER INTERFACE
MS 4
MS 1
BUSINESS LOGIC
DATA ACCESS LAYER
DATABASE
DOMAIN A
MS 2 MS 3
DOMAIN B
cognizant 20-20 insights 3
DevOps is an approach to software development
that is focused on streamlined communication,
collaboration, integration and automation (of both
testing and coding), as well as measurement of
cooperation between software developers and
other IT functions.3
The term was popularized
through a series of “DevOps Days,” starting in 2009
in Belgium. Since then, DevOps Days conferences
have been held in many countries worldwide.4
(For
more, read our white papers “How DevOps Drives
Real Business Growth” and “DevOps Best Practices
Combine Coding with Collaboration.”)
To succeed with microservices, development
efforts must mesh with DevOps, making opera-
tional concerns a first-class citizen in architec-
tural design. Microservices architectures assume
continuous evolutionary change, making them
less expensive and error prone.
Figure 2 offers a vertically partitioned reference
architecture for building microservices.
Best Practices for Designing a
Microservices Architecture
A microservices architecture can be expensive to
implement due its distributed nature and opera-
tional complexity. Succeeding with microser-
vices depends on the existence of certain archi-
tectural, infrastructure and process elements,
including continuous integration, testing, logging
and tracing, messaging, service registration and
discovery, monitoring, etc.
Design for Business Capabilities
A microservices architecture typically requires
dedicated teams delivering specific business
capabilities; for example, payments, accounts,
loan applications and disputes are all different
business capabilities with different requirements
that can be best addressed when teams are
focused on building a set of capabilities.
Organizations need to avoid designing over
technology layers, such as data access services,
and should shift from a project-specific design
mindset to a product-specific design approach.
Services should be designed as an independent
product delivering a business capability that is
well documented, easy to use and responsible
for one and only one business capability; this is
known as the the single responsibility principle
(SRP). A good rule of thumb is that the microser-
vice should be as small as possible but as big as
necessary to represent the domain concept or
business capability it represents.
Microservices: An Illustrative View
Figure 2
API 1 API 2 API 3 API 4
API Services
Composite
Services
Core Services
MS 5 MS 6
MS 1
DOMAIN A
MS 1
DOMAIN A
MS 2 MS 3
DOMAIN B
CONFIGURATION
SERVER
MONITOR
DASHBOARD
LOGGING ANALYSIS
DASHBOARD
SERVICE
DISCOVERY
AUTHORIZATION
SERVER
CLIENT
INTERFACE 1
CLIENT
INTERFACE 2
CLIENT
INTERFACE 3
cognizant 20-20 insights 4
Design for Orchestration Layers
Considering the growing number of device types
and the fact that more companies’ business strat-
egies are dependent on providing value to custom-
ers on numerous devices, it is no longer optimal
to have granular resource-based application pro-
gramming interfaces (APIs) that closely represent
the data model. Instead, APIs must be optimized
for each of the targeted devices (see Figure 3).
Use Events
With microservices, everything is about services,
and focused on request/response activities. By
default, developers implement synchronous
integration between the services because the
requirements are typically explained to them in
that manner.
The synchronous calls between services
pose many challenges, especially the need to
implement business transactions involving
several services. Teams struggle to continuously
deliver changes in an efficient and safe manner,
which often results in a “monolithic” release
process in which all services are deployed simul-
taneously, alongside the client application.
These issues can be avoided by using a model in
which an upstream service publishes events, while
downstream services subscribe to those events.
Implementing this model5
limits the boundaries of
transactions and promotes decoupling among the
services.
Embrace DevOps Practices
While a microservices architecture is a cleaner
approach, it is also a more complicated one
with more moving parts and heterogeneous
languages, frameworks and service protocols.
Organizations need to shift to a DevOps model,
which recognizes that developers are in the best
place to operationalize (write, build, deploy) their
own code.
Use 12-Factor Apps
The 12-factor app6
is a methodology for building
software-as-a-service apps. The methodology can
be applied to apps written in any programming
language, and used in any combination of backing
services (database, queue, memory cache, etc.).
Monitor Everything
Because microservices involve more moving
parts, it is important to measure everything effi-
ciently and easily through mechanisms such as
response time graphs, service failure graphs and
dashboards.
Monitoring is about knowledge, control and
reaction. Being able to understand the system’s
API Optimization
Figure 3
Event Bus
API 1 API 2 API 3
Web
Applications
Service Facade/
Device-Specific Wrapper
Experienced APIs
Capability APIs
API 1 API 2 API 3
Tab
Applications
Mobile
Applications
External
Partners
Batch
Applications
5cognizant 20-20 insights
behavior when it becomes a highly-distribut-
ed functionality requires a more structured
approach. Key monitoring strategies that should
be implemented with a microservices architec-
ture include:
•	Use logs. Log analysis tools are available, such
as Kibana, a visual interface for interacting
with large amounts of aggregated log data,
or Splunk, a fully integrated solution for log
management data collection, storage and visu-
alization.
•	Use monitoring tools. Examples include
Datadog and AppDynamics.
Design for Fail-over Scenarios
Organizations should consider possible disrup-
tions (i.e., network latency, data center shutdown)
and test fail-over scenarios by documenting all
testing steps and recovery execution.
ThiscanbedonebyexecutingGamedayexercises,7
in which failures are purposefully injected into
critical systems to help identify problems. This
helps in fixing flaws and, over a period of time,
improving the overall stability of the system.
Service Documentation
A service is only as good as its documenta-
tion. Documents should be easy to find, publicly
accessible and able to show examples of complete
request/response cycles.
Organizations should follow approaches to
defining services using JSON, or a markdown
language, which allow developers to describe the
service interfaces and underlying data models
in a way that enables more precise communi-
cation with others. Such approaches also help
developers generate mock or production services,
interactive documentation, code samples and
potentially other tooling that will help in service/
API initiatives.
Use Circuit Breaker as a Design Pattern
The Circuit Breaker design pattern is useful for
point-to-point connections. This design uses a
service client that talks to a service; it also has
configurable time-outs and number of failures
that can be tolerated. Circuit Breaker can prevent
an application from repeatedly trying to execute
an operation that is likely to fail, allowing it to
continue without waiting for the fault to be
rectified or wasting CPU cycles while it determines
that the fault is long-lasting.8
Service Design Review
By conducting a service design review, organiza-
tions can avoid duplicate services, and ensure
service flexibility, service reusability and the
service data model. A service governance board
typically conducts these reviews. This review
should also ensure that services do not deviate
from approved design patterns.
6cognizant 20-20 insights
Quick Take
Microservicing Loan Origination and Servicing
Figure 4
CUSTOMER
PARTNER SERVER
APPLICATIONS
WEB
APPLICATIONS
APPLICATIONS
API
STATEMENTS
API
CUSTOMER
MICROSERVICE
DISPUTES
API
ACCOUNTS
API
ACCOUNT
MICROSERVICE
CUSTOMER
API
PAYMENT
INSTRUCTION
API
PAYMENT
INSTRUCTION
MICROSERVICE
API FACADES
TRANSACTIONS
API
TRANSACTIONS
MICROSERVICE
MOBILE
APPLICATIONS
TABLET
APPLICATIONS
LOGGING AUDITING
ANALYSIS
MONITORING
SERVICE
CONFIGURATION
AUTO LOAN HOME LOAN
AUTHENTICATION AND
AUTHORIZATION
Business Situation
A U.S.-based bank holding company special-
izing in credit cards, home loans, auto loans,
banking and savings products wanted to enable
innovation, improve speed-to-market and simplify
middleware delivery to support new channels and
evolving business needs. As part of its IT strategy,
this large bank wanted to enable the broader
Internet/partner development community to
provide customer offerings based on the services
exposed by the bank to support its loan volume
growth goals (both auto and home).
Challenges
The IT landscape for home and auto loans con-
sisted of about 150 services, addressing multiple
applications used by internal and external clients.
Existing SOA development and security approach-
es provided limited access to internal networks and
did not scale effectively to solve certain use cases.
The services were designed per channel, providing
the same business capability across multiple
services, but they lacked governance. The services
also lacked a bounded context concept, and the
domain was spread across multiple services.
There were no owners for some of the services as
the developers had either left the organization or
were engaged in other projects.
Solution
In this engagement, we started with a functional
analysis of existing applications and services
from a service design perspective and priori-
tized mobile application business requirements.
A set of core services were selected based on
business benefit and redesigned around the
business capability. These services were exposed
to external clients and partners adopting our API
strategy. We implemented a microservices archi-
tecture with core services, composite services
and API services (see Figure 4).
continued on page 7
Transformation for Home & Auto Loans Channels
for a U.S. Bank Holding Company
7cognizant 20-20 insights
Quick Take continued from page 6
We used the following best practices to implement
this microservices architecture:
•	Defined an orchestration layer to handle chan-
nel-specific requirements.
•	Documented the APIs using Swagger specifica-
tions9
to generate documentation in real time.
•	Adopted DevOps practices to build and
deploy the services, service configuration
management and service monitoring using
Splunk.10
•	Used IgniteXML11
as a repository for core
services, as well as an API, and included
service design review as part of the service/API
delivery process.
•	Used a developer portal for publishing the APIs
for easy access by internal developers.
•	Designed services as products, adopting the
single responsibility principle; for example, a
payment instructions service exposed func-
tionality for payment instructions, including:
>> Create and delete a payment instruction with
multiple payment options, such as weekly or
monthly payment, one-time payment or a re-
curring payment.
>> Modify a payment instruction with options to
modify all the instances of payments or only
selected instances of payments.
>> Search for payments with multiple search
options, such as search with payment state
(historical, scheduled or pending or any
combination), search with amount options
(with less than or greater than amount),
search with payment ID.
>> Execute a monthly, weekly or bi-monthly
payment for an auto loan or home loan.
>> Modify or cancel an instance of a scheduled
payment before it is executed.
Benefits
•	The bank was able to improve customer reach
and retention by exposing the informational
and transactional services on multiple devices,
such as mobiles and tablets.
•	The project enabled an ecosystem for digital
innovation by exposing services/APIs with
external partners, thus contributing to volume
growth goals. The bank simplified the home-
buying experience for consumers by inte-
grating real estate search capabilities with
financing resources.
The project delivered changes/enhancements to
existing applications in a shorter amount of time.
For example, the bank was able to integrate with
cloud storage applications, such as Google Drive
and Dropbox, so customers could access their
loan documents from any device, in a very short
period of time, since changes were required only
to the loan application services portion of the
application.
cognizant 20-20 insights 8
Looking Forward
Modern applications require a new foundation,
built on scalable, resilient and adaptive services.
Microservices offer an approach for delivering
highly-scalable, cross-platform services that can
be developed, deployed and scaled independently
of one another to provide the modern application
product team with the greatest amount of flex-
ibility and control.
To successfully implement a microservices archi-
tecture, organizations must meet basic prereq-
uisites that require an organizational shift, such
as close collaboration between developers and
operations. Areas to focus on include:
•	Rapid deployment: With many services to
manage, organizations need to be able to
quickly deploy them, both to test and produc-
tion environments.
•	Fast provisioning: Along with continuous
delivery, organizations must have automated
mechanisms for machine provisioning, as well
as for deployment, testing, etc.
•	Basic monitoring: With more moving parts
that must be coordinated in production, basic
monitoring must be in place to detect problems
quickly. This monitoring can include detecting
technical issues such as service availability and
business issues such as a sudden drop in trans-
action volume.
By moving to a microservices-based approach,
organizations can address the business needs
for operational flexibility, functional simplicity
and continuous change that define today’s digital
economy.
Footnotes
1	 James Lewis, “Microservices,” Martin Fowler, March 25, 2014,
http://martinfowler.com/articles/microservices.html.
2	 “Microservices Content on InfoQ,” http://www.infoq.com/microservices/; “Microservices: How to Prepare
Next-Generation Cloud Applications,” Computer Weekly, http://www.computerweekly.com/feature/
Microservices-How-to-prepare-next-generation-cloud-applications.
3	 DevOps website, http://devops.com/; Freek van Gool, GOTO Amsterdam 2015: The Microservices Track,”
Trifork Blog, April 29, 2015, http://blog.trifork.com/2015/04/29/goto-amsterdam-2015-the-microservices-
track/; “Monoliths to Microservices,” Qcon New York, https://qconnewyork.com/ny2015/track/monoliths-
microservices.
4	 DevOps entry, Wikipedia, https://en.wikipedia.org/wiki/DevOps.
5	 “Building microservices with event sourcing and CQRS,” Plain Old Objects, Jan. 4, 2015, http://plainoldob-
jects.com/2015/01/04/example-application-for-my-qconsf-presentation-about-building-microservices-
with-event-sourcing-and-cqrs/.
6	 “The Twelve Factor App,” 12factor.net, http://12factor.net/.
7	 “Resilience Engineering: Learning to Embrace Failure,” ACMqueue, Sept. 13, 2012,
http://queue.acm.org/detail.cfm?id=2371297.
8	 Martin Fowler, “Circuit Breaker,” Martin Fowler, March 6, 2014,
http://martinfowler.com/bliki/CircuitBreaker.html.
9	 “Swagger Restful API Documentation Specification,” Swagger,
http://swagger.io/specification/.
10	 Splunk website, http://www.splunk.com/.
11	 Service design platform, DigitalML, http://www.digitalml.com/.
About Cognizant
Cognizant (NASDAQ: CTSH) is a leading provider of information technology, consulting, and business
process outsourcing services, dedicated to helping the world’s leading companies build stronger busi-
nesses. Headquartered in Teaneck, New Jersey (U.S.), Cognizant combines a passion for client satisfac-
tion, technology innovation, deep industry and business process expertise, and a global, collaborative
workforce that embodies the future of work. With over 100 development and delivery centers worldwide
and approximately 219,300 employees as of September 30, 2015, Cognizant is a member of the NASDAQ-
100, the S&P 500, the Forbes Global 2000, and the Fortune 500 and is ranked among the top performing
and fastest growing companies in the world. Visit us online at www.cognizant.com or follow us on Twitter:
Cognizant.
World Headquarters
500 Frank W. Burr Blvd.
Teaneck, NJ 07666 USA
Phone: +1 201 801 0233
Fax: +1 201 801 0243
Toll Free: +1 888 937 3277
Email: inquiry@cognizant.com
European Headquarters
1 Kingdom Street
Paddington Central
London W2 6BD
Phone: +44 (0) 20 7297 7600
Fax: +44 (0) 20 7121 0102
Email: infouk@cognizant.com
India Operations Headquarters
#5/535, Old Mahabalipuram Road
Okkiyam Pettai, Thoraipakkam
Chennai, 600 096 India
Phone: +91 (0) 44 4209 6000
Fax: +91 (0) 44 4209 6060
Email: inquiryindia@cognizant.com
­­© Copyright 2015, Cognizant. All rights reserved. No part of this document may be reproduced, stored in a retrieval system, transmitted in any form or by any
means, electronic, mechanical, photocopying, recording, or otherwise, without the express written permission from Cognizant. The information contained herein is
subject to change without notice. All other trademarks mentioned herein are the property of their respective owners.	 TL Codex 1598
About the Authors
Mrudul Palvankar is a Senior Manager and Senior Architect in Cognizant’s Banking and Financial Services
(BFS) Technology Architecture Office, where she heads the architecture and technology team. She has a
post-graduate degree in business administration and has 15 years of software development experience
across multiple industry segments. She is also TOGAF certified and is actively engaged in architecture
transformation consulting and solution delivery for banking and financial services’ customers. Mrudul
can be reached at Mrudul.Palvankar@cognizant.com.
Vivek Kant is Chief Architect and Technology Partner with Cognizant’s Banking & Financial Services
business unit, where he leads technology strategy for clients across Europe and the APAC region. He
has a post-graduate degree in software engineering and has over 16 years of experience spanning
technology consulting, enterprise architecture and core software engineering. Vivek can be reached at
Vivek.Kant@cognizant.com.

More Related Content

What's hot

Design and Instantiation of Reference Architecture for Pluggable Service Plat...
Design and Instantiation of Reference Architecture for Pluggable Service Plat...Design and Instantiation of Reference Architecture for Pluggable Service Plat...
Design and Instantiation of Reference Architecture for Pluggable Service Plat...Mohammad Anggasta Paramartha
 
What's New in the BMC Remedy Suite
What's New in the BMC Remedy SuiteWhat's New in the BMC Remedy Suite
What's New in the BMC Remedy SuiteBMC Software
 
IBM Cloud Service Provider Platform
IBM Cloud Service Provider PlatformIBM Cloud Service Provider Platform
IBM Cloud Service Provider PlatformHal Van Hercke
 
An Execution Approach to Large-Scale SOA Technology Migration
An Execution Approach to Large-Scale SOA Technology MigrationAn Execution Approach to Large-Scale SOA Technology Migration
An Execution Approach to Large-Scale SOA Technology MigrationCognizant
 
Systems Middleware overview in a nutshell
Systems Middleware overview in a nutshellSystems Middleware overview in a nutshell
Systems Middleware overview in a nutshellBob Unsworth
 
BUSINESS SILOS INTEGRATION USING SERVICE ORIENTED ARCHITECTURE
BUSINESS SILOS INTEGRATION USING SERVICE ORIENTED ARCHITECTUREBUSINESS SILOS INTEGRATION USING SERVICE ORIENTED ARCHITECTURE
BUSINESS SILOS INTEGRATION USING SERVICE ORIENTED ARCHITECTUREIJCSEA Journal
 
Trends in telco
Trends in telcoTrends in telco
Trends in telcoEMC
 
Rapid Deployment of BMC Remedy Solutions 2006
Rapid Deployment of BMC Remedy Solutions 2006Rapid Deployment of BMC Remedy Solutions 2006
Rapid Deployment of BMC Remedy Solutions 2006Antonio Rolle
 
What is bpm and why lombardi eng
What is bpm and why lombardi   engWhat is bpm and why lombardi   eng
What is bpm and why lombardi engYuval Birenboum
 
Cscc cloud-customer-architecture-for-e commerce
Cscc cloud-customer-architecture-for-e commerceCscc cloud-customer-architecture-for-e commerce
Cscc cloud-customer-architecture-for-e commercer_arorabms
 
EVALUATION OF COMPUTABILITY CRITERIONS FOR RUNTIME WEB SERVICE INTEGRATION
EVALUATION OF COMPUTABILITY CRITERIONS FOR RUNTIME WEB SERVICE INTEGRATIONEVALUATION OF COMPUTABILITY CRITERIONS FOR RUNTIME WEB SERVICE INTEGRATION
EVALUATION OF COMPUTABILITY CRITERIONS FOR RUNTIME WEB SERVICE INTEGRATIONijwscjournal
 
From Components To Services
From Components To ServicesFrom Components To Services
From Components To ServicesJames Phillips
 
SAE2 Application Modernization Process
SAE2 Application Modernization ProcessSAE2 Application Modernization Process
SAE2 Application Modernization ProcessLawrence Wilkes
 
Creating Production-Ready, Secure and Scalable Applications in IBM Cloud Priv...
Creating Production-Ready, Secure and Scalable Applications in IBM Cloud Priv...Creating Production-Ready, Secure and Scalable Applications in IBM Cloud Priv...
Creating Production-Ready, Secure and Scalable Applications in IBM Cloud Priv...Michael Elder
 
Salesforce Lightning Process Builder IS the next-generation workflow tool
Salesforce Lightning Process Builder IS the next-generation workflow toolSalesforce Lightning Process Builder IS the next-generation workflow tool
Salesforce Lightning Process Builder IS the next-generation workflow toolBMC Software
 

What's hot (20)

Design and Instantiation of Reference Architecture for Pluggable Service Plat...
Design and Instantiation of Reference Architecture for Pluggable Service Plat...Design and Instantiation of Reference Architecture for Pluggable Service Plat...
Design and Instantiation of Reference Architecture for Pluggable Service Plat...
 
7 eai-patterns
7 eai-patterns7 eai-patterns
7 eai-patterns
 
What's New in the BMC Remedy Suite
What's New in the BMC Remedy SuiteWhat's New in the BMC Remedy Suite
What's New in the BMC Remedy Suite
 
IBM Cloud Service Provider Platform
IBM Cloud Service Provider PlatformIBM Cloud Service Provider Platform
IBM Cloud Service Provider Platform
 
internship paper
internship paperinternship paper
internship paper
 
An Execution Approach to Large-Scale SOA Technology Migration
An Execution Approach to Large-Scale SOA Technology MigrationAn Execution Approach to Large-Scale SOA Technology Migration
An Execution Approach to Large-Scale SOA Technology Migration
 
Systems Middleware overview in a nutshell
Systems Middleware overview in a nutshellSystems Middleware overview in a nutshell
Systems Middleware overview in a nutshell
 
BUSINESS SILOS INTEGRATION USING SERVICE ORIENTED ARCHITECTURE
BUSINESS SILOS INTEGRATION USING SERVICE ORIENTED ARCHITECTUREBUSINESS SILOS INTEGRATION USING SERVICE ORIENTED ARCHITECTURE
BUSINESS SILOS INTEGRATION USING SERVICE ORIENTED ARCHITECTURE
 
Trends in telco
Trends in telcoTrends in telco
Trends in telco
 
Rapid Deployment of BMC Remedy Solutions 2006
Rapid Deployment of BMC Remedy Solutions 2006Rapid Deployment of BMC Remedy Solutions 2006
Rapid Deployment of BMC Remedy Solutions 2006
 
What is bpm and why lombardi eng
What is bpm and why lombardi   engWhat is bpm and why lombardi   eng
What is bpm and why lombardi eng
 
Cscc cloud-customer-architecture-for-e commerce
Cscc cloud-customer-architecture-for-e commerceCscc cloud-customer-architecture-for-e commerce
Cscc cloud-customer-architecture-for-e commerce
 
EVALUATION OF COMPUTABILITY CRITERIONS FOR RUNTIME WEB SERVICE INTEGRATION
EVALUATION OF COMPUTABILITY CRITERIONS FOR RUNTIME WEB SERVICE INTEGRATIONEVALUATION OF COMPUTABILITY CRITERIONS FOR RUNTIME WEB SERVICE INTEGRATION
EVALUATION OF COMPUTABILITY CRITERIONS FOR RUNTIME WEB SERVICE INTEGRATION
 
IBM Smart Cloud
IBM Smart CloudIBM Smart Cloud
IBM Smart Cloud
 
An Intro to Cloud Computing
An Intro to Cloud ComputingAn Intro to Cloud Computing
An Intro to Cloud Computing
 
From Components To Services
From Components To ServicesFrom Components To Services
From Components To Services
 
SAE2 Application Modernization Process
SAE2 Application Modernization ProcessSAE2 Application Modernization Process
SAE2 Application Modernization Process
 
Creating Production-Ready, Secure and Scalable Applications in IBM Cloud Priv...
Creating Production-Ready, Secure and Scalable Applications in IBM Cloud Priv...Creating Production-Ready, Secure and Scalable Applications in IBM Cloud Priv...
Creating Production-Ready, Secure and Scalable Applications in IBM Cloud Priv...
 
Salesforce Lightning Process Builder IS the next-generation workflow tool
Salesforce Lightning Process Builder IS the next-generation workflow toolSalesforce Lightning Process Builder IS the next-generation workflow tool
Salesforce Lightning Process Builder IS the next-generation workflow tool
 
SOA Principles : 6. service composibility
SOA Principles : 6. service composibilitySOA Principles : 6. service composibility
SOA Principles : 6. service composibility
 

Viewers also liked

El Diseño Gráfico Socialmente Responsable
El Diseño Gráfico Socialmente ResponsableEl Diseño Gráfico Socialmente Responsable
El Diseño Gráfico Socialmente ResponsableMario Alberto
 
La cabeza voladora
La cabeza voladora La cabeza voladora
La cabeza voladora 14523
 
Google Adwords ist asozial!
Google Adwords ist asozial!Google Adwords ist asozial!
Google Adwords ist asozial!Ulf Weihbold
 
Niveles de estrategia
Niveles de estrategiaNiveles de estrategia
Niveles de estrategiaJaneth Cruz
 
12 Minuten im Advent 2014 - Texte
12 Minuten  im Advent 2014 - Texte12 Minuten  im Advent 2014 - Texte
12 Minuten im Advent 2014 - TextePfarramt
 
Dicom standard wikipedia
Dicom standard  wikipediaDicom standard  wikipedia
Dicom standard wikipedialenga_krad
 
50 Artículos marca personal, liderazgo comunicación
50 Artículos marca personal, liderazgo  comunicación50 Artículos marca personal, liderazgo  comunicación
50 Artículos marca personal, liderazgo comunicaciónPablo Adán Micó (El Reto)
 
GCDP ICX - The value proposition
GCDP ICX - The value propositionGCDP ICX - The value proposition
GCDP ICX - The value propositionaiesecnorway1948
 
Tener un fin en la mente
Tener un fin en la menteTener un fin en la mente
Tener un fin en la mentesorbivi
 
Laporan Kerja Praktek Tokopedia - Muhammad Mufid Luthfi
Laporan Kerja Praktek Tokopedia - Muhammad Mufid LuthfiLaporan Kerja Praktek Tokopedia - Muhammad Mufid Luthfi
Laporan Kerja Praktek Tokopedia - Muhammad Mufid LuthfiMuhammad Mufid Luthfi
 
2076 jurisprudencia interrupcion-de_prescripcion
2076 jurisprudencia interrupcion-de_prescripcion2076 jurisprudencia interrupcion-de_prescripcion
2076 jurisprudencia interrupcion-de_prescripcionPaul Montero Matamoros
 
NCFL College Knowledge App 3
NCFL College Knowledge App 3NCFL College Knowledge App 3
NCFL College Knowledge App 3Famlit
 
AG-HPX171
AG-HPX171AG-HPX171
AG-HPX171AVNed
 
Te kit választanál - Ip telefonközpontot de milyet választék 10 - 500 felhas...
Te kit választanál  - Ip telefonközpontot de milyet választék 10 - 500 felhas...Te kit választanál  - Ip telefonközpontot de milyet választék 10 - 500 felhas...
Te kit választanál - Ip telefonközpontot de milyet választék 10 - 500 felhas...Gloster telekom Kft.
 
Dios, protégeme
Dios, protégemeDios, protégeme
Dios, protégememayapink10
 

Viewers also liked (20)

El Diseño Gráfico Socialmente Responsable
El Diseño Gráfico Socialmente ResponsableEl Diseño Gráfico Socialmente Responsable
El Diseño Gráfico Socialmente Responsable
 
La cabeza voladora
La cabeza voladora La cabeza voladora
La cabeza voladora
 
001 eng o-net
001 eng o-net001 eng o-net
001 eng o-net
 
Google Adwords ist asozial!
Google Adwords ist asozial!Google Adwords ist asozial!
Google Adwords ist asozial!
 
Niveles de estrategia
Niveles de estrategiaNiveles de estrategia
Niveles de estrategia
 
12 Minuten im Advent 2014 - Texte
12 Minuten  im Advent 2014 - Texte12 Minuten  im Advent 2014 - Texte
12 Minuten im Advent 2014 - Texte
 
Dicom standard wikipedia
Dicom standard  wikipediaDicom standard  wikipedia
Dicom standard wikipedia
 
50 Artículos marca personal, liderazgo comunicación
50 Artículos marca personal, liderazgo  comunicación50 Artículos marca personal, liderazgo  comunicación
50 Artículos marca personal, liderazgo comunicación
 
GCDP ICX - The value proposition
GCDP ICX - The value propositionGCDP ICX - The value proposition
GCDP ICX - The value proposition
 
Tener un fin en la mente
Tener un fin en la menteTener un fin en la mente
Tener un fin en la mente
 
Laporan Kerja Praktek Tokopedia - Muhammad Mufid Luthfi
Laporan Kerja Praktek Tokopedia - Muhammad Mufid LuthfiLaporan Kerja Praktek Tokopedia - Muhammad Mufid Luthfi
Laporan Kerja Praktek Tokopedia - Muhammad Mufid Luthfi
 
Método montessori
Método montessoriMétodo montessori
Método montessori
 
Academia Equelite
Academia EqueliteAcademia Equelite
Academia Equelite
 
2076 jurisprudencia interrupcion-de_prescripcion
2076 jurisprudencia interrupcion-de_prescripcion2076 jurisprudencia interrupcion-de_prescripcion
2076 jurisprudencia interrupcion-de_prescripcion
 
NCFL College Knowledge App 3
NCFL College Knowledge App 3NCFL College Knowledge App 3
NCFL College Knowledge App 3
 
Folien fintechgroup
Folien fintechgroupFolien fintechgroup
Folien fintechgroup
 
AG-HPX171
AG-HPX171AG-HPX171
AG-HPX171
 
Leccion joven La humildad que proviene del cielo
Leccion joven La humildad que proviene del cieloLeccion joven La humildad que proviene del cielo
Leccion joven La humildad que proviene del cielo
 
Te kit választanál - Ip telefonközpontot de milyet választék 10 - 500 felhas...
Te kit választanál  - Ip telefonközpontot de milyet választék 10 - 500 felhas...Te kit választanál  - Ip telefonközpontot de milyet választék 10 - 500 felhas...
Te kit választanál - Ip telefonközpontot de milyet választék 10 - 500 felhas...
 
Dios, protégeme
Dios, protégemeDios, protégeme
Dios, protégeme
 

Similar to Overcoming Ongoing Digital Transformational Challenges with a Microservices Architecture

Architecting for speed: how agile innovators accelerate growth through micros...
Architecting for speed: how agile innovators accelerate growth through micros...Architecting for speed: how agile innovators accelerate growth through micros...
Architecting for speed: how agile innovators accelerate growth through micros...Jesper Nordström
 
Architecting for speed: how agile innovators accelerate growth through micros...
Architecting for speed: how agile innovators accelerate growth through micros...Architecting for speed: how agile innovators accelerate growth through micros...
Architecting for speed: how agile innovators accelerate growth through micros...3gamma
 
Term paper 2073131
Term paper   2073131Term paper   2073131
Term paper 2073131mtestman
 
Microservices: A Step Towards Modernizing Healthcare Applications
Microservices: A Step Towards Modernizing Healthcare ApplicationsMicroservices: A Step Towards Modernizing Healthcare Applications
Microservices: A Step Towards Modernizing Healthcare ApplicationsCitiusTech
 
Pitfalls & Challenges Faced During a Microservices Architecture Implementation
Pitfalls & Challenges Faced During a Microservices Architecture ImplementationPitfalls & Challenges Faced During a Microservices Architecture Implementation
Pitfalls & Challenges Faced During a Microservices Architecture ImplementationCognizant
 
Micro services overview
Micro services overviewMicro services overview
Micro services overviewZeeshan Khan
 
Contemporary research challenges and applications of service oriented archite...
Contemporary research challenges and applications of service oriented archite...Contemporary research challenges and applications of service oriented archite...
Contemporary research challenges and applications of service oriented archite...Dr. Shahanawaj Ahamad
 
Meetup6 microservices for the IoT
Meetup6 microservices for the IoTMeetup6 microservices for the IoT
Meetup6 microservices for the IoTFrancesco Rago
 
apidays LIVE Hong Kong 2021 - Modernizing Monolith Applications with API Arch...
apidays LIVE Hong Kong 2021 - Modernizing Monolith Applications with API Arch...apidays LIVE Hong Kong 2021 - Modernizing Monolith Applications with API Arch...
apidays LIVE Hong Kong 2021 - Modernizing Monolith Applications with API Arch...apidays
 
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHYSELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHYdannyijwest
 
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY IJwest
 
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...apidays
 
Microservices with mule
Microservices with muleMicroservices with mule
Microservices with muleGovind Mulinti
 
Microservice final final
Microservice final finalMicroservice final final
Microservice final finalgaurav shukla
 
A Comprehensive Guide to Web Application Architecture
A Comprehensive Guide to Web Application ArchitectureA Comprehensive Guide to Web Application Architecture
A Comprehensive Guide to Web Application Architecturestevefary
 
Web Application Architecture: A Comprehensive Guide for Success in 2023
Web Application Architecture: A Comprehensive Guide for Success in 2023Web Application Architecture: A Comprehensive Guide for Success in 2023
Web Application Architecture: A Comprehensive Guide for Success in 2023stevefary
 
Microservices = Death of the Enterprise Service Bus (ESB)?
Microservices = Death of the Enterprise Service Bus (ESB)?Microservices = Death of the Enterprise Service Bus (ESB)?
Microservices = Death of the Enterprise Service Bus (ESB)?Kai Wähner
 

Similar to Overcoming Ongoing Digital Transformational Challenges with a Microservices Architecture (20)

Architecting for speed: how agile innovators accelerate growth through micros...
Architecting for speed: how agile innovators accelerate growth through micros...Architecting for speed: how agile innovators accelerate growth through micros...
Architecting for speed: how agile innovators accelerate growth through micros...
 
Architecting for speed: how agile innovators accelerate growth through micros...
Architecting for speed: how agile innovators accelerate growth through micros...Architecting for speed: how agile innovators accelerate growth through micros...
Architecting for speed: how agile innovators accelerate growth through micros...
 
Term paper 2073131
Term paper   2073131Term paper   2073131
Term paper 2073131
 
Microservices: A Step Towards Modernizing Healthcare Applications
Microservices: A Step Towards Modernizing Healthcare ApplicationsMicroservices: A Step Towards Modernizing Healthcare Applications
Microservices: A Step Towards Modernizing Healthcare Applications
 
Pitfalls & Challenges Faced During a Microservices Architecture Implementation
Pitfalls & Challenges Faced During a Microservices Architecture ImplementationPitfalls & Challenges Faced During a Microservices Architecture Implementation
Pitfalls & Challenges Faced During a Microservices Architecture Implementation
 
Micro services overview
Micro services overviewMicro services overview
Micro services overview
 
Contemporary research challenges and applications of service oriented archite...
Contemporary research challenges and applications of service oriented archite...Contemporary research challenges and applications of service oriented archite...
Contemporary research challenges and applications of service oriented archite...
 
Meetup6 microservices for the IoT
Meetup6 microservices for the IoTMeetup6 microservices for the IoT
Meetup6 microservices for the IoT
 
apidays LIVE Hong Kong 2021 - Modernizing Monolith Applications with API Arch...
apidays LIVE Hong Kong 2021 - Modernizing Monolith Applications with API Arch...apidays LIVE Hong Kong 2021 - Modernizing Monolith Applications with API Arch...
apidays LIVE Hong Kong 2021 - Modernizing Monolith Applications with API Arch...
 
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHYSELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
 
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
 
Microservices
MicroservicesMicroservices
Microservices
 
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
APIdays Paris 2019 - Cloud native API Management for Microservices on a Servi...
 
Microservices: Detailed Guide
Microservices: Detailed GuideMicroservices: Detailed Guide
Microservices: Detailed Guide
 
Microservices with mule
Microservices with muleMicroservices with mule
Microservices with mule
 
Microservice final final
Microservice final finalMicroservice final final
Microservice final final
 
A Comprehensive Guide to Web Application Architecture
A Comprehensive Guide to Web Application ArchitectureA Comprehensive Guide to Web Application Architecture
A Comprehensive Guide to Web Application Architecture
 
Web Application Architecture: A Comprehensive Guide for Success in 2023
Web Application Architecture: A Comprehensive Guide for Success in 2023Web Application Architecture: A Comprehensive Guide for Success in 2023
Web Application Architecture: A Comprehensive Guide for Success in 2023
 
Whitepaper : Microservices In or Out
Whitepaper : Microservices   In or OutWhitepaper : Microservices   In or Out
Whitepaper : Microservices In or Out
 
Microservices = Death of the Enterprise Service Bus (ESB)?
Microservices = Death of the Enterprise Service Bus (ESB)?Microservices = Death of the Enterprise Service Bus (ESB)?
Microservices = Death of the Enterprise Service Bus (ESB)?
 

More from Cognizant

Using Adaptive Scrum to Tame Process Reverse Engineering in Data Analytics Pr...
Using Adaptive Scrum to Tame Process Reverse Engineering in Data Analytics Pr...Using Adaptive Scrum to Tame Process Reverse Engineering in Data Analytics Pr...
Using Adaptive Scrum to Tame Process Reverse Engineering in Data Analytics Pr...Cognizant
 
Data Modernization: Breaking the AI Vicious Cycle for Superior Decision-making
Data Modernization: Breaking the AI Vicious Cycle for Superior Decision-makingData Modernization: Breaking the AI Vicious Cycle for Superior Decision-making
Data Modernization: Breaking the AI Vicious Cycle for Superior Decision-makingCognizant
 
It Takes an Ecosystem: How Technology Companies Deliver Exceptional Experiences
It Takes an Ecosystem: How Technology Companies Deliver Exceptional ExperiencesIt Takes an Ecosystem: How Technology Companies Deliver Exceptional Experiences
It Takes an Ecosystem: How Technology Companies Deliver Exceptional ExperiencesCognizant
 
Intuition Engineered
Intuition EngineeredIntuition Engineered
Intuition EngineeredCognizant
 
The Work Ahead: Transportation and Logistics Delivering on the Digital-Physic...
The Work Ahead: Transportation and Logistics Delivering on the Digital-Physic...The Work Ahead: Transportation and Logistics Delivering on the Digital-Physic...
The Work Ahead: Transportation and Logistics Delivering on the Digital-Physic...Cognizant
 
Enhancing Desirability: Five Considerations for Winning Digital Initiatives
Enhancing Desirability: Five Considerations for Winning Digital InitiativesEnhancing Desirability: Five Considerations for Winning Digital Initiatives
Enhancing Desirability: Five Considerations for Winning Digital InitiativesCognizant
 
The Work Ahead in Manufacturing: Fulfilling the Agility Mandate
The Work Ahead in Manufacturing: Fulfilling the Agility MandateThe Work Ahead in Manufacturing: Fulfilling the Agility Mandate
The Work Ahead in Manufacturing: Fulfilling the Agility MandateCognizant
 
The Work Ahead in Higher Education: Repaving the Road for the Employees of To...
The Work Ahead in Higher Education: Repaving the Road for the Employees of To...The Work Ahead in Higher Education: Repaving the Road for the Employees of To...
The Work Ahead in Higher Education: Repaving the Road for the Employees of To...Cognizant
 
Engineering the Next-Gen Digital Claims Organisation for Australian General I...
Engineering the Next-Gen Digital Claims Organisation for Australian General I...Engineering the Next-Gen Digital Claims Organisation for Australian General I...
Engineering the Next-Gen Digital Claims Organisation for Australian General I...Cognizant
 
Profitability in the Direct-to-Consumer Marketplace: A Playbook for Media and...
Profitability in the Direct-to-Consumer Marketplace: A Playbook for Media and...Profitability in the Direct-to-Consumer Marketplace: A Playbook for Media and...
Profitability in the Direct-to-Consumer Marketplace: A Playbook for Media and...Cognizant
 
Green Rush: The Economic Imperative for Sustainability
Green Rush: The Economic Imperative for SustainabilityGreen Rush: The Economic Imperative for Sustainability
Green Rush: The Economic Imperative for SustainabilityCognizant
 
Policy Administration Modernization: Four Paths for Insurers
Policy Administration Modernization: Four Paths for InsurersPolicy Administration Modernization: Four Paths for Insurers
Policy Administration Modernization: Four Paths for InsurersCognizant
 
The Work Ahead in Utilities: Powering a Sustainable Future with Digital
The Work Ahead in Utilities: Powering a Sustainable Future with DigitalThe Work Ahead in Utilities: Powering a Sustainable Future with Digital
The Work Ahead in Utilities: Powering a Sustainable Future with DigitalCognizant
 
AI in Media & Entertainment: Starting the Journey to Value
AI in Media & Entertainment: Starting the Journey to ValueAI in Media & Entertainment: Starting the Journey to Value
AI in Media & Entertainment: Starting the Journey to ValueCognizant
 
Operations Workforce Management: A Data-Informed, Digital-First Approach
Operations Workforce Management: A Data-Informed, Digital-First ApproachOperations Workforce Management: A Data-Informed, Digital-First Approach
Operations Workforce Management: A Data-Informed, Digital-First ApproachCognizant
 
Five Priorities for Quality Engineering When Taking Banking to the Cloud
Five Priorities for Quality Engineering When Taking Banking to the CloudFive Priorities for Quality Engineering When Taking Banking to the Cloud
Five Priorities for Quality Engineering When Taking Banking to the CloudCognizant
 
Getting Ahead With AI: How APAC Companies Replicate Success by Remaining Focused
Getting Ahead With AI: How APAC Companies Replicate Success by Remaining FocusedGetting Ahead With AI: How APAC Companies Replicate Success by Remaining Focused
Getting Ahead With AI: How APAC Companies Replicate Success by Remaining FocusedCognizant
 
Crafting the Utility of the Future
Crafting the Utility of the FutureCrafting the Utility of the Future
Crafting the Utility of the FutureCognizant
 
Utilities Can Ramp Up CX with a Customer Data Platform
Utilities Can Ramp Up CX with a Customer Data PlatformUtilities Can Ramp Up CX with a Customer Data Platform
Utilities Can Ramp Up CX with a Customer Data PlatformCognizant
 
The Work Ahead in Intelligent Automation: Coping with Complexity in a Post-Pa...
The Work Ahead in Intelligent Automation: Coping with Complexity in a Post-Pa...The Work Ahead in Intelligent Automation: Coping with Complexity in a Post-Pa...
The Work Ahead in Intelligent Automation: Coping with Complexity in a Post-Pa...Cognizant
 

More from Cognizant (20)

Using Adaptive Scrum to Tame Process Reverse Engineering in Data Analytics Pr...
Using Adaptive Scrum to Tame Process Reverse Engineering in Data Analytics Pr...Using Adaptive Scrum to Tame Process Reverse Engineering in Data Analytics Pr...
Using Adaptive Scrum to Tame Process Reverse Engineering in Data Analytics Pr...
 
Data Modernization: Breaking the AI Vicious Cycle for Superior Decision-making
Data Modernization: Breaking the AI Vicious Cycle for Superior Decision-makingData Modernization: Breaking the AI Vicious Cycle for Superior Decision-making
Data Modernization: Breaking the AI Vicious Cycle for Superior Decision-making
 
It Takes an Ecosystem: How Technology Companies Deliver Exceptional Experiences
It Takes an Ecosystem: How Technology Companies Deliver Exceptional ExperiencesIt Takes an Ecosystem: How Technology Companies Deliver Exceptional Experiences
It Takes an Ecosystem: How Technology Companies Deliver Exceptional Experiences
 
Intuition Engineered
Intuition EngineeredIntuition Engineered
Intuition Engineered
 
The Work Ahead: Transportation and Logistics Delivering on the Digital-Physic...
The Work Ahead: Transportation and Logistics Delivering on the Digital-Physic...The Work Ahead: Transportation and Logistics Delivering on the Digital-Physic...
The Work Ahead: Transportation and Logistics Delivering on the Digital-Physic...
 
Enhancing Desirability: Five Considerations for Winning Digital Initiatives
Enhancing Desirability: Five Considerations for Winning Digital InitiativesEnhancing Desirability: Five Considerations for Winning Digital Initiatives
Enhancing Desirability: Five Considerations for Winning Digital Initiatives
 
The Work Ahead in Manufacturing: Fulfilling the Agility Mandate
The Work Ahead in Manufacturing: Fulfilling the Agility MandateThe Work Ahead in Manufacturing: Fulfilling the Agility Mandate
The Work Ahead in Manufacturing: Fulfilling the Agility Mandate
 
The Work Ahead in Higher Education: Repaving the Road for the Employees of To...
The Work Ahead in Higher Education: Repaving the Road for the Employees of To...The Work Ahead in Higher Education: Repaving the Road for the Employees of To...
The Work Ahead in Higher Education: Repaving the Road for the Employees of To...
 
Engineering the Next-Gen Digital Claims Organisation for Australian General I...
Engineering the Next-Gen Digital Claims Organisation for Australian General I...Engineering the Next-Gen Digital Claims Organisation for Australian General I...
Engineering the Next-Gen Digital Claims Organisation for Australian General I...
 
Profitability in the Direct-to-Consumer Marketplace: A Playbook for Media and...
Profitability in the Direct-to-Consumer Marketplace: A Playbook for Media and...Profitability in the Direct-to-Consumer Marketplace: A Playbook for Media and...
Profitability in the Direct-to-Consumer Marketplace: A Playbook for Media and...
 
Green Rush: The Economic Imperative for Sustainability
Green Rush: The Economic Imperative for SustainabilityGreen Rush: The Economic Imperative for Sustainability
Green Rush: The Economic Imperative for Sustainability
 
Policy Administration Modernization: Four Paths for Insurers
Policy Administration Modernization: Four Paths for InsurersPolicy Administration Modernization: Four Paths for Insurers
Policy Administration Modernization: Four Paths for Insurers
 
The Work Ahead in Utilities: Powering a Sustainable Future with Digital
The Work Ahead in Utilities: Powering a Sustainable Future with DigitalThe Work Ahead in Utilities: Powering a Sustainable Future with Digital
The Work Ahead in Utilities: Powering a Sustainable Future with Digital
 
AI in Media & Entertainment: Starting the Journey to Value
AI in Media & Entertainment: Starting the Journey to ValueAI in Media & Entertainment: Starting the Journey to Value
AI in Media & Entertainment: Starting the Journey to Value
 
Operations Workforce Management: A Data-Informed, Digital-First Approach
Operations Workforce Management: A Data-Informed, Digital-First ApproachOperations Workforce Management: A Data-Informed, Digital-First Approach
Operations Workforce Management: A Data-Informed, Digital-First Approach
 
Five Priorities for Quality Engineering When Taking Banking to the Cloud
Five Priorities for Quality Engineering When Taking Banking to the CloudFive Priorities for Quality Engineering When Taking Banking to the Cloud
Five Priorities for Quality Engineering When Taking Banking to the Cloud
 
Getting Ahead With AI: How APAC Companies Replicate Success by Remaining Focused
Getting Ahead With AI: How APAC Companies Replicate Success by Remaining FocusedGetting Ahead With AI: How APAC Companies Replicate Success by Remaining Focused
Getting Ahead With AI: How APAC Companies Replicate Success by Remaining Focused
 
Crafting the Utility of the Future
Crafting the Utility of the FutureCrafting the Utility of the Future
Crafting the Utility of the Future
 
Utilities Can Ramp Up CX with a Customer Data Platform
Utilities Can Ramp Up CX with a Customer Data PlatformUtilities Can Ramp Up CX with a Customer Data Platform
Utilities Can Ramp Up CX with a Customer Data Platform
 
The Work Ahead in Intelligent Automation: Coping with Complexity in a Post-Pa...
The Work Ahead in Intelligent Automation: Coping with Complexity in a Post-Pa...The Work Ahead in Intelligent Automation: Coping with Complexity in a Post-Pa...
The Work Ahead in Intelligent Automation: Coping with Complexity in a Post-Pa...
 

Overcoming Ongoing Digital Transformational Challenges with a Microservices Architecture

  • 1. Overcoming Ongoing Digital Transformational Challenges with a Microservices Architecture IT organizations must look beyond yesterday’s monolithic Web applications and embrace microservices, whose loosely-coupled architectures speed development, testing and deployment, accommodating today’s and tomorrow’s digital requirements. Executive Summary The accelerating digitization of business is forcing many organizations to rethink their operating models to meet the ever-rising expectations of technology-savvy customers. At a fundamental level, companies across all industries need to ensure their services are available through digital channels and are competitive with technological innovations offered by rivals far and wide. To enable such digital transformation, IT organi- zations need to overcome several key challenges: • The cost of change. Customers want sig- nificantly reduced technology costs and are unwilling to fund technology changes that do not result in direct customer benefits. • The pace of change. Quarterly or even monthly release cycles no longer meet user needs. Customers expect more frequent rollouts, even multiple times a day, to keep pace with their informational and service requirements. • The quality of change. Decision-makers want to improve the scalability of applications and deliver a rich, interactive and dynamic user experience on a wide variety of devices, while minimizing the risk of change. This cannot be done with traditional multi-tier Web applications — the de facto standard for building applications that enable today’s era of Internet applications — as they are too difficult to develop, test and maintain. Multi-tier Web apps typically consist of a complex code base, as the result of enormous functionality built into a single Web application. Further, a single change can affect multiple sub-units, creating a much larger and more complicated testing effort, requiring testers to understand various code interdepen- dencies or test the entire application for each change. Lastly, because changing even a single aspect of these monolithic applications affects the entire code base, it slows down the testing process and makes it error-prone. To meet growing multi-dimensional challenges, IT organizations must shift from monolithic Web applications that serve HTML to desktop browsers, toward an applications architecture that enables architectural extensibility. cognizant 20-20 insights | november 2015 • Cognizant 20-20 Insights
  • 2. 2cognizant 20-20 insights This white paper describes an alternative archi- tecture that is based on microservices. Applica- tions designed with a microservices architecture consist of a set of narrowly focused, independent- ly deployable services. We believe that microser- vices are the basis for a next-generation architec- ture that can meet the operational flexibility and functional needs of today’s burgeoning, dynamic digital economy. This said, much complexity exists at a higher level with this approach, in terms of managing services and orchestrating business processes throughout. This paper details some of the best practices for implementing a microser- vices architecture. Defining a Microservices Architecture The microservices-based architectural style is an approach to developing a single application as a suite of small, narrowly focused, independently deployable services. Each microservice runs in its own process and communicates with a light- weight mechanism, often an HTTP resource API. These services are built around business capa- bilities and are independently deployable by fully automated deployment machinery (see Figure 1).1 Although a microservices-based architecture is not a particularly new idea, the concept has achieved popularity among thought leaders due to the recent digital technology surge.2, 3 Microservices architectures can offer businesses numerous significant benefits, including: • Systems built with a microservices-based archi- tecture are inherently loosely coupled, which allows them to be easily built, changed and selectively scaled, which is critical for new digital applications. Because systems are broken into multiple services, it allows for frequent changes without affecting the entire system. • The services are very simple and focused on a single business capability. • Multiple developers and teams can deliver independently under this model, increasing the pace of change. • Continuous delivery is enabled, allowing for frequent releases while keeping the rest of the system available and stable. • Because each service is operationally encapsu- lated, development teams are free to change implementation details without worrying about inadvertent side effects that impact other services due to a shared infrastructure. For all these reasons, microservices enable busi- nesses with a unique opportunity to use IT as a tool to easily make functional changes and measure results. One of the goals of microservices architectures is to build more robust systems by thinking about the operational aspects of architecture. In fact, microservices can be considered as the first post- DevOps architecture. Microservices: An Anatomical View Figure 1 A monolithic architecture puts all its functionality into a single process and scales by replicating monoliths on multiple levels. A microservice architecture puts each element of functionality into a separate service and scales by distribut- ing these services across servers, replicating as needed. USER INTERFACE USER INTERFACE MS 4 MS 1 BUSINESS LOGIC DATA ACCESS LAYER DATABASE DOMAIN A MS 2 MS 3 DOMAIN B
  • 3. cognizant 20-20 insights 3 DevOps is an approach to software development that is focused on streamlined communication, collaboration, integration and automation (of both testing and coding), as well as measurement of cooperation between software developers and other IT functions.3 The term was popularized through a series of “DevOps Days,” starting in 2009 in Belgium. Since then, DevOps Days conferences have been held in many countries worldwide.4 (For more, read our white papers “How DevOps Drives Real Business Growth” and “DevOps Best Practices Combine Coding with Collaboration.”) To succeed with microservices, development efforts must mesh with DevOps, making opera- tional concerns a first-class citizen in architec- tural design. Microservices architectures assume continuous evolutionary change, making them less expensive and error prone. Figure 2 offers a vertically partitioned reference architecture for building microservices. Best Practices for Designing a Microservices Architecture A microservices architecture can be expensive to implement due its distributed nature and opera- tional complexity. Succeeding with microser- vices depends on the existence of certain archi- tectural, infrastructure and process elements, including continuous integration, testing, logging and tracing, messaging, service registration and discovery, monitoring, etc. Design for Business Capabilities A microservices architecture typically requires dedicated teams delivering specific business capabilities; for example, payments, accounts, loan applications and disputes are all different business capabilities with different requirements that can be best addressed when teams are focused on building a set of capabilities. Organizations need to avoid designing over technology layers, such as data access services, and should shift from a project-specific design mindset to a product-specific design approach. Services should be designed as an independent product delivering a business capability that is well documented, easy to use and responsible for one and only one business capability; this is known as the the single responsibility principle (SRP). A good rule of thumb is that the microser- vice should be as small as possible but as big as necessary to represent the domain concept or business capability it represents. Microservices: An Illustrative View Figure 2 API 1 API 2 API 3 API 4 API Services Composite Services Core Services MS 5 MS 6 MS 1 DOMAIN A MS 1 DOMAIN A MS 2 MS 3 DOMAIN B CONFIGURATION SERVER MONITOR DASHBOARD LOGGING ANALYSIS DASHBOARD SERVICE DISCOVERY AUTHORIZATION SERVER CLIENT INTERFACE 1 CLIENT INTERFACE 2 CLIENT INTERFACE 3
  • 4. cognizant 20-20 insights 4 Design for Orchestration Layers Considering the growing number of device types and the fact that more companies’ business strat- egies are dependent on providing value to custom- ers on numerous devices, it is no longer optimal to have granular resource-based application pro- gramming interfaces (APIs) that closely represent the data model. Instead, APIs must be optimized for each of the targeted devices (see Figure 3). Use Events With microservices, everything is about services, and focused on request/response activities. By default, developers implement synchronous integration between the services because the requirements are typically explained to them in that manner. The synchronous calls between services pose many challenges, especially the need to implement business transactions involving several services. Teams struggle to continuously deliver changes in an efficient and safe manner, which often results in a “monolithic” release process in which all services are deployed simul- taneously, alongside the client application. These issues can be avoided by using a model in which an upstream service publishes events, while downstream services subscribe to those events. Implementing this model5 limits the boundaries of transactions and promotes decoupling among the services. Embrace DevOps Practices While a microservices architecture is a cleaner approach, it is also a more complicated one with more moving parts and heterogeneous languages, frameworks and service protocols. Organizations need to shift to a DevOps model, which recognizes that developers are in the best place to operationalize (write, build, deploy) their own code. Use 12-Factor Apps The 12-factor app6 is a methodology for building software-as-a-service apps. The methodology can be applied to apps written in any programming language, and used in any combination of backing services (database, queue, memory cache, etc.). Monitor Everything Because microservices involve more moving parts, it is important to measure everything effi- ciently and easily through mechanisms such as response time graphs, service failure graphs and dashboards. Monitoring is about knowledge, control and reaction. Being able to understand the system’s API Optimization Figure 3 Event Bus API 1 API 2 API 3 Web Applications Service Facade/ Device-Specific Wrapper Experienced APIs Capability APIs API 1 API 2 API 3 Tab Applications Mobile Applications External Partners Batch Applications
  • 5. 5cognizant 20-20 insights behavior when it becomes a highly-distribut- ed functionality requires a more structured approach. Key monitoring strategies that should be implemented with a microservices architec- ture include: • Use logs. Log analysis tools are available, such as Kibana, a visual interface for interacting with large amounts of aggregated log data, or Splunk, a fully integrated solution for log management data collection, storage and visu- alization. • Use monitoring tools. Examples include Datadog and AppDynamics. Design for Fail-over Scenarios Organizations should consider possible disrup- tions (i.e., network latency, data center shutdown) and test fail-over scenarios by documenting all testing steps and recovery execution. ThiscanbedonebyexecutingGamedayexercises,7 in which failures are purposefully injected into critical systems to help identify problems. This helps in fixing flaws and, over a period of time, improving the overall stability of the system. Service Documentation A service is only as good as its documenta- tion. Documents should be easy to find, publicly accessible and able to show examples of complete request/response cycles. Organizations should follow approaches to defining services using JSON, or a markdown language, which allow developers to describe the service interfaces and underlying data models in a way that enables more precise communi- cation with others. Such approaches also help developers generate mock or production services, interactive documentation, code samples and potentially other tooling that will help in service/ API initiatives. Use Circuit Breaker as a Design Pattern The Circuit Breaker design pattern is useful for point-to-point connections. This design uses a service client that talks to a service; it also has configurable time-outs and number of failures that can be tolerated. Circuit Breaker can prevent an application from repeatedly trying to execute an operation that is likely to fail, allowing it to continue without waiting for the fault to be rectified or wasting CPU cycles while it determines that the fault is long-lasting.8 Service Design Review By conducting a service design review, organiza- tions can avoid duplicate services, and ensure service flexibility, service reusability and the service data model. A service governance board typically conducts these reviews. This review should also ensure that services do not deviate from approved design patterns.
  • 6. 6cognizant 20-20 insights Quick Take Microservicing Loan Origination and Servicing Figure 4 CUSTOMER PARTNER SERVER APPLICATIONS WEB APPLICATIONS APPLICATIONS API STATEMENTS API CUSTOMER MICROSERVICE DISPUTES API ACCOUNTS API ACCOUNT MICROSERVICE CUSTOMER API PAYMENT INSTRUCTION API PAYMENT INSTRUCTION MICROSERVICE API FACADES TRANSACTIONS API TRANSACTIONS MICROSERVICE MOBILE APPLICATIONS TABLET APPLICATIONS LOGGING AUDITING ANALYSIS MONITORING SERVICE CONFIGURATION AUTO LOAN HOME LOAN AUTHENTICATION AND AUTHORIZATION Business Situation A U.S.-based bank holding company special- izing in credit cards, home loans, auto loans, banking and savings products wanted to enable innovation, improve speed-to-market and simplify middleware delivery to support new channels and evolving business needs. As part of its IT strategy, this large bank wanted to enable the broader Internet/partner development community to provide customer offerings based on the services exposed by the bank to support its loan volume growth goals (both auto and home). Challenges The IT landscape for home and auto loans con- sisted of about 150 services, addressing multiple applications used by internal and external clients. Existing SOA development and security approach- es provided limited access to internal networks and did not scale effectively to solve certain use cases. The services were designed per channel, providing the same business capability across multiple services, but they lacked governance. The services also lacked a bounded context concept, and the domain was spread across multiple services. There were no owners for some of the services as the developers had either left the organization or were engaged in other projects. Solution In this engagement, we started with a functional analysis of existing applications and services from a service design perspective and priori- tized mobile application business requirements. A set of core services were selected based on business benefit and redesigned around the business capability. These services were exposed to external clients and partners adopting our API strategy. We implemented a microservices archi- tecture with core services, composite services and API services (see Figure 4). continued on page 7 Transformation for Home & Auto Loans Channels for a U.S. Bank Holding Company
  • 7. 7cognizant 20-20 insights Quick Take continued from page 6 We used the following best practices to implement this microservices architecture: • Defined an orchestration layer to handle chan- nel-specific requirements. • Documented the APIs using Swagger specifica- tions9 to generate documentation in real time. • Adopted DevOps practices to build and deploy the services, service configuration management and service monitoring using Splunk.10 • Used IgniteXML11 as a repository for core services, as well as an API, and included service design review as part of the service/API delivery process. • Used a developer portal for publishing the APIs for easy access by internal developers. • Designed services as products, adopting the single responsibility principle; for example, a payment instructions service exposed func- tionality for payment instructions, including: >> Create and delete a payment instruction with multiple payment options, such as weekly or monthly payment, one-time payment or a re- curring payment. >> Modify a payment instruction with options to modify all the instances of payments or only selected instances of payments. >> Search for payments with multiple search options, such as search with payment state (historical, scheduled or pending or any combination), search with amount options (with less than or greater than amount), search with payment ID. >> Execute a monthly, weekly or bi-monthly payment for an auto loan or home loan. >> Modify or cancel an instance of a scheduled payment before it is executed. Benefits • The bank was able to improve customer reach and retention by exposing the informational and transactional services on multiple devices, such as mobiles and tablets. • The project enabled an ecosystem for digital innovation by exposing services/APIs with external partners, thus contributing to volume growth goals. The bank simplified the home- buying experience for consumers by inte- grating real estate search capabilities with financing resources. The project delivered changes/enhancements to existing applications in a shorter amount of time. For example, the bank was able to integrate with cloud storage applications, such as Google Drive and Dropbox, so customers could access their loan documents from any device, in a very short period of time, since changes were required only to the loan application services portion of the application.
  • 8. cognizant 20-20 insights 8 Looking Forward Modern applications require a new foundation, built on scalable, resilient and adaptive services. Microservices offer an approach for delivering highly-scalable, cross-platform services that can be developed, deployed and scaled independently of one another to provide the modern application product team with the greatest amount of flex- ibility and control. To successfully implement a microservices archi- tecture, organizations must meet basic prereq- uisites that require an organizational shift, such as close collaboration between developers and operations. Areas to focus on include: • Rapid deployment: With many services to manage, organizations need to be able to quickly deploy them, both to test and produc- tion environments. • Fast provisioning: Along with continuous delivery, organizations must have automated mechanisms for machine provisioning, as well as for deployment, testing, etc. • Basic monitoring: With more moving parts that must be coordinated in production, basic monitoring must be in place to detect problems quickly. This monitoring can include detecting technical issues such as service availability and business issues such as a sudden drop in trans- action volume. By moving to a microservices-based approach, organizations can address the business needs for operational flexibility, functional simplicity and continuous change that define today’s digital economy. Footnotes 1 James Lewis, “Microservices,” Martin Fowler, March 25, 2014, http://martinfowler.com/articles/microservices.html. 2 “Microservices Content on InfoQ,” http://www.infoq.com/microservices/; “Microservices: How to Prepare Next-Generation Cloud Applications,” Computer Weekly, http://www.computerweekly.com/feature/ Microservices-How-to-prepare-next-generation-cloud-applications. 3 DevOps website, http://devops.com/; Freek van Gool, GOTO Amsterdam 2015: The Microservices Track,” Trifork Blog, April 29, 2015, http://blog.trifork.com/2015/04/29/goto-amsterdam-2015-the-microservices- track/; “Monoliths to Microservices,” Qcon New York, https://qconnewyork.com/ny2015/track/monoliths- microservices. 4 DevOps entry, Wikipedia, https://en.wikipedia.org/wiki/DevOps. 5 “Building microservices with event sourcing and CQRS,” Plain Old Objects, Jan. 4, 2015, http://plainoldob- jects.com/2015/01/04/example-application-for-my-qconsf-presentation-about-building-microservices- with-event-sourcing-and-cqrs/. 6 “The Twelve Factor App,” 12factor.net, http://12factor.net/. 7 “Resilience Engineering: Learning to Embrace Failure,” ACMqueue, Sept. 13, 2012, http://queue.acm.org/detail.cfm?id=2371297. 8 Martin Fowler, “Circuit Breaker,” Martin Fowler, March 6, 2014, http://martinfowler.com/bliki/CircuitBreaker.html. 9 “Swagger Restful API Documentation Specification,” Swagger, http://swagger.io/specification/. 10 Splunk website, http://www.splunk.com/. 11 Service design platform, DigitalML, http://www.digitalml.com/.
  • 9. About Cognizant Cognizant (NASDAQ: CTSH) is a leading provider of information technology, consulting, and business process outsourcing services, dedicated to helping the world’s leading companies build stronger busi- nesses. Headquartered in Teaneck, New Jersey (U.S.), Cognizant combines a passion for client satisfac- tion, technology innovation, deep industry and business process expertise, and a global, collaborative workforce that embodies the future of work. With over 100 development and delivery centers worldwide and approximately 219,300 employees as of September 30, 2015, Cognizant is a member of the NASDAQ- 100, the S&P 500, the Forbes Global 2000, and the Fortune 500 and is ranked among the top performing and fastest growing companies in the world. Visit us online at www.cognizant.com or follow us on Twitter: Cognizant. World Headquarters 500 Frank W. Burr Blvd. Teaneck, NJ 07666 USA Phone: +1 201 801 0233 Fax: +1 201 801 0243 Toll Free: +1 888 937 3277 Email: inquiry@cognizant.com European Headquarters 1 Kingdom Street Paddington Central London W2 6BD Phone: +44 (0) 20 7297 7600 Fax: +44 (0) 20 7121 0102 Email: infouk@cognizant.com India Operations Headquarters #5/535, Old Mahabalipuram Road Okkiyam Pettai, Thoraipakkam Chennai, 600 096 India Phone: +91 (0) 44 4209 6000 Fax: +91 (0) 44 4209 6060 Email: inquiryindia@cognizant.com ­­© Copyright 2015, Cognizant. All rights reserved. No part of this document may be reproduced, stored in a retrieval system, transmitted in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without the express written permission from Cognizant. The information contained herein is subject to change without notice. All other trademarks mentioned herein are the property of their respective owners. TL Codex 1598 About the Authors Mrudul Palvankar is a Senior Manager and Senior Architect in Cognizant’s Banking and Financial Services (BFS) Technology Architecture Office, where she heads the architecture and technology team. She has a post-graduate degree in business administration and has 15 years of software development experience across multiple industry segments. She is also TOGAF certified and is actively engaged in architecture transformation consulting and solution delivery for banking and financial services’ customers. Mrudul can be reached at Mrudul.Palvankar@cognizant.com. Vivek Kant is Chief Architect and Technology Partner with Cognizant’s Banking & Financial Services business unit, where he leads technology strategy for clients across Europe and the APAC region. He has a post-graduate degree in software engineering and has over 16 years of experience spanning technology consulting, enterprise architecture and core software engineering. Vivek can be reached at Vivek.Kant@cognizant.com.