PERSPECTIVE. Microservices A New Application Paradigm. Abstract

Similar documents
ACCELERATING DIGITIZATION THROUGH NEXT-GENERATION INTEGRATION

Boundaryless Information PERSPECTIVE

ADVANTAGE YOU. Drive TCO* reduction through Infosys TIBCO solutions

WHITE PAPER. Payments organizations can leverage APIs to monetize their data and services. Abstract

HOW AGILE DO YOU WANT IT?

BEST STORIES OF INFOSYS SALESFORCE IMPLEMENTATION

INFOSYS BUSINESS PROCESS MANAGEMENT OFFERINGS

EMERGENCE OF MICROSERVICE ARCHITECTURE. Let's start something.

Progressive Organization PERSPECTIVE

DevOps Journey. adoption after organizational and process changes. Some of the key aspects to be considered are:

WHITE PAPER. Cloud-Based Human Capital Management: Accelerating Organizational Evolution to be #MoreTogether. Abstract

WHITE PAPER. An Insight into Microservices Testing Strategies. Abstract. Arvind Sundar, Technical Test Lead

INFOSYS SMART OILFIELD SERVICES SOLUTION FOR SAP ERP

DIGITAL TRANSFORMATION WITH INTELLIGENT SOLUTIONS FROM INFOSYS AND PEGA

PERSPECTIVE. Monetize Data

CMO Challenges Today: How Are They Reacting?

MODERNIZING THE MIDDLEWARE

Application Migration to the Cloud C L O U D A N A L Y T I C S D I G I T A L S E C U R I T Y

CHANGE IMAGINED. CHANGE DELIVERED

TRANSFORMING THE LANDSCAPE FOR INSURANCE CLAIMS

Modernize Application Development to Succeed as a Digital Business

BEST STORIES FOR DIGITAL IN COMMUNICATION SERVICES

REDUCING TIME TO MARKET WITH DEVOPS

ACCELERATE YOUR JOURNEY TO BEING DIGITAL

TECHNICAL WHITE PAPER. Rubrik and Microsoft Azure Technology Overview and How It Works

Open Banking, PSD2 and the New API Economy

Oracle Management Cloud

INFOSYS BPM DIGITAL Empowering you to cash on digital opportunities

AUTOMATING BIG DATA TESTING FOR PERFORMANCE

INFOSYS PROCUREMENT AND PLANNING PRACTICE

RETRANSFORM BEYOND AGILE FOR FASTER, INTEGRATED IT SERVICE DELIVERY

ENABLING SALES TEAMS TO CREATE WINNING QUOTES

RETRANSFORM BEYOND AGILE FOR FASTER, INTEGRATED IT SERVICE DELIVERY

PERSPECTIVE. Assuring the digital utilities transformation. Gaurav Kalia Client Solution Manager

MICROSERVICES. Prabavathy Arumugam Software AG. All rights reserved. For internal use only

FINACLE SERVICES: API MANAGEMENT USING CA API GATEWAY

WHITE PAPER LEVERAGING 3-C PHILOSOPHY FOR ENHANCED ROI FROM CHANNELS

Inspire. Solution Overview. for solutions development

Modern Integration Powers Open Banking

Cloud Customer Architecture for API Management.

WHITE PAPER. Pick the right SAP UI/UX offering for your business. Abstract

Integration in a Cloud native world

MAN, MACHINE AND FINANCE - THE FINANCE ORGANIZATION THROUGH 2030

Secure information access is critical & more complex than ever

Oracle Product Hub Cloud

VIEW POINT. Clearing the clouds of SuccessFactors. Abstract. Jitendra Chakravarty, Principal Consultant

ORACLE SUPPLY CHAIN MANAGEMENT PRACTICE

Solution Architecture Training: Enterprise Integration Patterns and Solutions for Architects

WHITE PAPER. Getting started with Continuous Integration in software development. Amruta Kumbhar, Madhavi Shailaja & Ravi Shankar Anupindi

5 Microservice Initiatives for Digital Business

PREDICTIVE ANALYTICS FOR DATA-DRIVEN DECISIONS

SELF-SERVICE FOR DATA PREPARATION AND ADVANCED ANALYTICS OVERVIEW

Akana, All Rights Reserved Contact Us Privacy Policy. Microservices: What, Why and How

CASE STUDY. Streamlined Operations Through New Business Process Transformation

INFOSYS AND SALESFORCE PRACTICE Drive world-class innovation, efficiency and growth with Salesforce cloud integration services from Infosys

WHITE PAPER. BPM for Structural Integrity Management in Oil and Gas Industry. Abstract

VIEW POINT. The Enterprise QA Transformation Model A solution to enhance an enterprises testing maturity. Abstract. Reghunath Balaraman, Aromal Mohan

Aepona Agile Service Enablement Creating services for business transformation

WHITE PAPER. Master Data Management as a Solution Using SAP MDM and Complementing Technologies

THE API GLOBE- TROTTERS

Srinivasan Sundara Rajan MASTER Architect / Cloud Evangelist / Cloud Computing Journal Author

Middleware Modernization: lay the foundation to your digital success

SEVEN FEATURED PEGA CASE STUDIES. Different needs, different industries, tailored solutions leveraging Pega solutions

Fast Innovation requires Fast IT

Responsive enterprise the future of the enterprise PERSPECTIVE

WHITE PAPER. Coalition loyalty: Loyalty s new definition

Decisyon App Composer (DAC) Technology Overview

1. INTRODUCTION BACKGROUND ENTERPRISE SOA BENEFITS AND TECHNOLOGIES AN ENTERPRISE SOA FRAMEWORK...6

Application Migration Patterns for the Service Oriented Cloud

TECHED USER CONFERENCE MAY 3-4, 2016

WHITE PAPER. Loss Prevention Data Mining Using big data, predictive and prescriptive analytics to enpower loss prevention.

FROM SHORE TO SHIP: USING MESOSPHERE ENTERPRISE DC/OS TO DELIVER REAL TIME MICROSERVICES TO A GLOBAL FLEET OF SHIPS

An Approach to Web Application Consolidation WHITE PAPER

Integrated Social and Enterprise Data = Enhanced Analytics

Microservices: A Flexible Architecture for the Digital Age

BANKING WITH THE RIGHT REGULATIONS

WHITE PAPER. Embracing Microservices Architecture in Telecommunications Adoption and measuring success of microservices

MARGIN MANAGEMENT IN THE OIL & GAS INDUSTRY WHITE PAPER

RETAIL AND CPG HUMAN AMPLIFICATION IN THE ENTERPRISE

VIEW POINT. Experience Commerce

KEEP THE LIGHTS ON - APPLICATION MAINTENANCE AND SUPPORT

WHITE PAPER. Integrated Profitability Analytics The Need, Struggles, and Future

From IT Service Management to DevOps. Speaker: JP Morgenthal

BLOCKCHAIN CLOUD SERVICE. Integrate Your Business Network with the Blockchain Platform

A Guide for Application Providers: Choosing the Right Integration Partner

Time-to-market has always been a critical success factor for enterprises. But in the digital era, speed is a fundamental necessity for enterprises.

WHITE PAPER. Banks Regulatory Reporting Compliance The Challenges and the Solution. Abstract

Fortacs Group, LLC S T R A T E G I C B U S I N E S S A N D I T S O L U T I O N S

A 7-STEP FRAMEWORK TO IMPLEMENT CICD IN ETL TESTING

INFOSYS OFFERINGS IN ORACLE CX SALES CLOUD

CONNECTED TRAFFIC CLOUD. A New Approach to Intelligent Traffic Management

API 360: The Complete API Strategy Model for the Enterprise

FINDING AIRCRAFT PARTS BEFORE THEY ARE LOST, WITH PREDICTIVE ANALYTICS

Cloud Considerations for the PLM ISV Jim Brown President Tech-Clarity

API PLATFORM CLOUD SERVICE. Lead the Way in the API Economy

ORCHESTRATING DIGITAL SUCCESS FOR OUR CLIENTS WITH PEGA

INFOSYS SALESFORCE PRACTICE Empowering global enterprises to make smarter business decisions and bring engaged customer ecosystem experiences to life

Customer Challenges SOLUTION BENEFITS

Configuration Management in cloud environment

Oracle Siebel CRM On Demand Integration Pack for JD Edwards EnterpriseOne (Opportunity to Cash)

Transcription:

PERSPECTIVE Microservices A New Application Paradigm Abstract Microservices Architecture is introducing the concept of developing functionality as a number of small self-contained services. This paper intends to clarify the implications of adopting this approach, appropriate usage, and how microservices can change an organization s approach to integration and delivering functionality through the digital channel.

New Integration Model or New Application Paradigm Microservices is a software architecture and delivery paradigm that delivers functionality by composing a number of small runtime services. Although perceived as a new paradigm, the concept can be traced back to the early days of the Unix Operating System which was developed as a collection of small, simple, and discrete functions. With microservices, software functionality is delivered as discrete, lightweight services with a well-defined API, which can then be orchestrated to provide a more complete set of business functionality or simply exposed directly to a mobile or web / browser UI. A microservice should be as focused as possible, yet still add value instead of just passing information. This is in contrast to the traditional approach for software application delivery, which is to build, integrate, and test applications as a single integrated monolithic deployment even if the application provides a set of service interfaces. The microservices approach facilitates faster delivery of smaller incremental changes to an application, at the cost of increased integration and deployment complexity. In recent years, there has been a significant effort to improve the agility and time-tomarket, for changes to the digital UI layer; and at the same time, the underlying core functionality has changed at a much slower speed. With Service Oriented Architecture (SOA), supporting technologies like API Management and ESB platforms can be used to decouple the layers and support the different delivery velocities. Microservices is a mechanism to try and push some of this digital agility back into the core functionality, and align well with agile delivery and the DevOps operating model. These days the term Microservices tends to refer to developing functionality as a collection of small services, each running in its own process and accessed via a lightweight interface, such as an HTTP RESTful API - Fowler Microservices Part of the Digital Economy The Microservices Architecture is well aligned to the move towards cloud-based SaaS offerings and the API economy. In some ways, it can also be traced back to the early days of SOA with the focus on service discovery, and anonymous service usage based on UDDI. What has changed is the proliferation of RESTful APIs and the popularity of hybrid service integration of cloud SaaS services plus the availability of virtualised platforms and containers, together with the advanced tools to manage them. A Microservices Architecture can provide key technology business opportunities as a service provider, service consumer, or increasingly as both a provider and consumer. Microservices support consumer enablement, transparency, and choice Microservices can extend the utility and reach of your business Microservices can provide technology agility and thus improve the business time-to-market For a service provider, microservices should be considered as digital business assets and treated accordingly. They need to have a business owner and a business strategy / model associated with them. If the focus is on revenue generation, then services need to be promoted and the business needs to monitor usage, and simultaneously engage with the community to ensure the services are relevant, in demand, and competitive. If competitive advantage is the focus, then the services need to be relevant, responsive to change, and have a planned life cycle including obsolescence planning. As a service consumer you need to be continually checking the market for new services, providers, and opportunities aligned with your business strategy. Organizations are increasingly looking at microservices as a valuable supplement to internal application services being delivered through the digital channel. Instead of extending internal capability, external microservices are being aggregated or enriched, and then provided as value-added microservices to the outside world. Although a Microservices Architecture might be initially focused on supplementing internal functionality for users, it also provides opportunities to take an existing service, value-add or supplement it, and then deliver the enhanced service out to a different consumer audience. It can be as lightweight as brokering and rebranding for marketing advantage, or aggregating with other services to provide a more functionally rich microservice offering.

How do Microservices Impact Application Strategy? Historically, organizations would look to monolithic application suites to solve business problems such as ERP, HCM, or CRM. Evaluating functionality was based on an overall assessment of a small number of platforms against key business requirements. However, with cloud / SaaS microservice providers, this selection has become much more complex, but at the same time, much more flexible. Organizations are no longer constrained by vendor upgrade schedules, but are instead able to quickly bring new functionality to the online channel whenever new or enhanced microservices become available. This is particularly valuable for mobile and browser digital-applications as they are able to quickly make use of new distributed microservices. Consumer Applications Service Orchestration API Management Database Database Database Internal Business Functions Business Service 1 Business Service 2 Business Service 3 Entity Service Layer Data Service 1 Data Service 2 Data Service 3 Business Functions Business Service 4 Data Service 4 Database Cloud So the new approach in assessing functionality is to look for stability around a core set of services for a minimum viable product (MVP) and then be opportunistic with enhancements as new services become available for use. When working with microservice providers who are effective at engaging the consumer community, there are options to influence functionality direction, to better support new business directions. Thus assessment criteria will now need to consider additional aspects such as: Community engagement Alternative service options Supplier longevity and reliability This effectively moves emphasis away from single source providers towards a best-of-breed service provider approach. However, the granularity is much smaller, emphasising the need to leverage lightweight engagement approaches rather than heavyweight contractual approaches for usage of services outside of core, long-term dependencies. This lightweight approach drives organizations to replace traditional application / asset owner models with a more lightweight service owner model within the business both as a service consumer (owning the relationship) and as a service provider (having the marketing and management responsibility). The approach also needs to take into account the MVP functionality aspect to ensure those core services are recognized as core and are sustainable in the future. These MVP services will need to have tighter governance around change. The other key consideration for selecting microservices is data governance. Privacy legislation and other compliance needs can restrict storage of data off-premises or outside country boundaries. This is another key assessment criterion when assessing microservice providers Microservice Architecture focuses on building scalable, distributed applications that support agile deployment both on-premises and to the cloud. The benefits and complexities of Microservices Architecture need to be carefully considered before taking this approach to delivering application services Gartner - Olliffe

How do Microservices Change Integration? The increased prevalence of cloud-based SaaS providers in the enterprise-businessfunctionality mix has broken down the monolithic application approach and increased the need to integrate multiple services, applications, and providers, to support the enterprise. A potential impact of microservices is to dramatically increase independent service numbers, with the corresponding increase in integration complexity. As microservices segment functionality into smaller and simpler services in order to achieve more complex, integrated functionality they can give rise to a significant increase in the demands on an organization s ESB / orchestration platforms. There is also an increased likelihood that these microservices will be hosted and provided through cloud / SaaS providers, which drives an enterprise towards a hybrid integration approach to better support external service aggregation, and to integrate external microservices into the enterprise. This results in an increased emphasis on hybrid mediation and orchestration platforms as a key enablement capability within an enterprise. As an enterprise acting as a service consumer, mediation and orchestration are crucial to effectively integrating services internally; whereas from the point of view of a microservice provider, API Management platforms are crucial to managing service access. An API- Management-type platform provides the security and service management capabilities to support quality delivery of RESTful microservices, and also enables valuable social engagement and collaboration functionality to support engaging the consumer community. These tools and platforms not only support managing the life cycle of services, but more importantly provide opportunities to more effectively monetize the provided microservices.

Operational Impacts of a Microservices Architecture Managing microservices is heavily dependent on having the right tools and platforms in place. There needs to be effective support for aspects such as container hot deployment, and tools to support flexible runtime deployment and automated monitoring. As noted above, the use of a Microservices Architecture can increase the complexity of providing enterprise functionality. This drives a heavy dependency on integration and operational management technologies to handle the complexity. At the same time, a Microservices Architecture provides an opportunity to simplify digital service delivery, where there is good alignment between the available microservices and the user functionality provided. In general, an enterprise Microservices Architecture approach requires support from modern-day, advanced tools and monitoring capabilities to handle the complexity. This results in: Requirements for effective distributed management tools and dashboards The need to design for resilience to ensure usability when service availability is beyond the control of the enterprise The need to move towards a more agile, continuous change management and delivery mode to effectively manage service life cycle changes and replacement of microservices A shift towards a more lightweight release process to align with incremental service change versus major application replacement / upgrade. At the same time, major deployments can be more complex to ensure all the required microservices are deployed correctly A need for comprehensive service monitoring to ensure availability of microservices, to replace what would have previously been vendor-specific application monitoring tools. Also, a single microservice failure will not be as obvious as an application failure Changes to operational support as L2 / L3 support will need to be more fine-grained at the individual service level An accelerated transition from application asset ownership towards service ownership It also reinforces agile delivery and testing best practices around automation and continuous delivery.

Microservices Best Practice Microservices and their APIs must be managed as business products, from conception to retirement Need to align with business strategy Need to provide a revenue stream or competitive advantage Need to be marketed and managed as business assets Control service access based on business requirements, not technology constraints Once microservices are in the wild it is impossible to control consumers Consumers will often identify ways to use a service that is radically different from how it was originally envisioned Focus on supporting industry-standard identity management protocols, rather than custom mechanisms Design for service unavailability Need to provide resilient behavior over microservices by designing for flexibility and temporary outages Manage SLAs Agree to well-defined service SLAs and proactively manage the performance Service discovery and definition Ensure microservices are well-defined and documented, in an online repository or catalog with simple consumer access Microservice granularity Services granularity should be aligned with the RESTful API model (CRUD) Services should provide a useful business service Data services should not be exposed directly unless they provide a business function Life cycle management Services specification must be designed to support versioning and eventual depredation Hybrid integration Aggregate, enrich, or orchestrate microservices at the appropriate place in the Architecture (business functionality). This is not within the mobile or browser app Data Management The usual approach is for each microservice to own its data (Gartner - Thomas) which matches with the CRUD-style service interface. This approach goes back to traditional Object-oriented principles, which have been superseded by SOA approaches. This has a tendency to drive microservices APIs towards being low-level data services based upon data schema, but this approach should be resisted to ensure alignment with delivering business value rather than alignment with an underlying data schema Data should be explicitly replicated where needed, using a master data management paradigm, rather than relying on implicit propagation which may fail due to service provider changes Look for opportunities to use inmemory data grid technology for low latency and scaling across microservices. This aligns well with the model of a data microservice, with a small defined set of data rather than focusing on a large integrated data model

Microservices Architecture Is it Right for You? All modern day digital architectures should be service-enabled through HTTP / SOAP web services, RESTful APIs, JMS queues, etc. Unless an organization runs on a single application platform, this is essential to support effective integration across the enterprise and deliver an integrated user experience. A Microservices Architecture is a very specific variation of a sserviceenabled architecture which is more focused on agility. It can provide significant value in a number of areas such as: For a rapidly changing / growing business or business group where time-to-market is key and the core business is more dynamic and changing Test the market situations where functionality needs to be rolled out in a low-cost manner focused on validating the demand Mobile application development or mash-up browser application development based on RESTful APIs and not requiring deep integration into existing core systems For supplementing the functionality of an out-of-the-box application or SaaS service to minimize customization and thus simplify future application upgrades In general, there is real value to an organization in having an APIenabled, service-oriented architecture. Microservices provide an added advantage by also supporting service agility, at the potential cost of increased integration complexity. This can work well for smaller installations but needs careful evaluation around the complexity and risk implications for larger installations. Infosys Experience with Microservices Digital Alignment Assisting a leading Australian online trading service provider to move from a centralized application platform over a number of SaaS service providers, to a more loosely coupled architecture. This was based on directly exposing the underlying microservices APIs, where appropriate, for direct consumption by mobile and browser apps; and where more complex behavior is required, vendor APIs are aggregated via an internal integration platform to provide more complex microservices for consumption. ESB-based Microservice Architecture The channels division within a major international bank has embarked on a journey to transform their existing technology stack to a next generation landscape to help deliver a unified digital experience to all of its online customers. Infosys provided an innovative channel services layer architecture based on Fuse ESB, which has built-in support for Apache Camel for orchestration, and Apache CXF for hosting web services. The solution is leveraging the loose coupling of OSGi bundles and the orchestration capabilities of Apache Camel framework to build microservices that allow independent deployment. Fabric, the clustering mechanism of Fuse, will ensure that these services can then be horizontally scaled on demand.

References Fowler, J. L. Microservices. Retrieved from Martin Fowler: http://martinfowler.com/articles/microservices.html Gartner - Olliffe, G. Assessing Microservice Architecture for Scalable Application Delivery. Retrieved from Gartner: https://www.gartner.com/ doc/2974417/assessing-microservice-architecture-scalable-application Gartner - Thomas, A. Application Architecture for Digital Business. Retrieved from Gartner Webinars: http://my.gartner.com/portal/server.pt? open=512&objid=202&mode=2&pageid=5553&ref=webinar-rss&resid=2866521&srcid=1-3134301641 About the Author Peter Jarman Principal Technology Architect, Digital and Integration Services, Infosys Peter Jarman is a Principal Technology Architect for Digital and Integration Services at Infosys. He has over 30 years experience in IT, covering a wide range of business domains. He has significant experience across EAI, BPM, SOA, Digital / Online, Enterprise Architecture, and Solution Architecture, and has published a variety of technical papers on these topics. For more information, contact askus@infosys.com 2017 Infosys Limited, Bengaluru, India. All Rights Reserved. Infosys believes the information in this document is accurate as of its publication date; such information is subject to change without notice. Infosys acknowledges the proprietary rights of other companies to the trademarks, product names and such other intellectual property rights mentioned in this document. Except as expressly permitted, neither this documentation nor any part of it may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, electronic, mechanical, printing, photocopying, recording or otherwise, without the prior permission of Infosys Limited and/ or any named intellectual property rights holders under this document. Infosys.com NYSE: INFY Stay Connected