102
Application Modernization Copyright © 2017 Deloitte Development LLC. All rights reserved. 1 Application Modernization Evoluzione dei sistemi legacy in architetture a microservizi e serverless 13 Novembre, 2017

Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

  • Upload
    vannhan

  • View
    216

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Application ModernizationCopyright © 2017 Deloitte Development LLC. All rights reserved. 1

Application ModernizationEvoluzione dei sistemi legacy in architetture a microservizi e serverless13 Novembre, 2017

Page 2: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Michele Paolin

Dal 2000 Michele lavora nel mondo Technology seguendoper conto di aziende multinazionali progetti di SystemIntegration ed adozione di nuove tecnologie. La suacarriera in Deloitte ha subito diverse trasformazioni,dall’ERP alle architetture Cloud, con la costante di unacontinua ricerca di soluzioni nuove ad esigenze dibusiness che cambiano

Page 3: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Application ModernizationCopyright © 2017 Deloitte Development LLC. All rights reserved. 3

Modernize.

Page 4: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Copyright © 2016 Deloitte. All rights reserved.

Modernizzare attraverso il refactoring

dei sistemi che governano il core business

mantenendo intatto il patrimonio

informativo aziendale

Un approccio incrementale riduce il rischio

e massimizza l’investimento,

concentrandosi sul miglioramento del

sistema piuttosto che provare a

reinventare quello che già funziona

Application Modernization

Page 5: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Copyright © 2016 Deloitte. All rights reserved.

Modernization Drivers

Interoperability

Agility

Regulatory Compliance

Efficiency

Risk

Brain DrainCosts

Reporting & Insights

Page 6: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Copyright © 2016 Deloitte. All rights reserved.

Refactored SystemLegacy SystemModernized System

USER EXPERIENCE

3270, Static Pages HTML5/CSS Mobile-first, Responsive Web (Angular, Bootstrap)

BUSINESS PROCESS MANAGEMENT

ManualEmbedded business processes

Business Rules Management SystemWorkflow Management System

ANALYTICS AND INFORMATION MANAGEMENT

Flat File DatabaseRelational DatabaseData Warehousing

Enterprise Data ManagementNoSQL DatabaseAnalytics, Data Monetization

SECURITY & PRIVACY

Security tightly coupled within applications

Externalized Security Authentication

Cyber SecurityIdentity Access ManagementCompliance w/ Regulation (GDPR)

SYSTEM ARCHITECTURE

Mainframe ApplicationsClient-Server

Modern Platform (Java/.NET)ContainersContinuous Delivery (DevOps)

Lift&Shift in the Cloud (IAAS, PAAS)Microservices and ServerlessIntegration with commercial SaaS solutions via API

Modernization Progression Matrix

Page 7: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Copyright © 2016 Deloitte. All rights reserved.

Modernization Roadmap by Deloitte

Container Virtualization, DevOps

Mainframe-based user experience, Monoliths

Microservices, Serveless

Monolith Monolith Monolith +1 Microservice

Monolith +1

Monolith + 1 Monolith + ‘n’ Monolith + n Microservices

Lift & Shift

Mainframe Offloading

Superpowers

Page 8: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

8

KEY NOTE

Evolution of Business Logic: from Monoliths, to Microservices, to Functions

Danilo Poccia – Amazon Web Services

CASE HISTORY 1

Refactoring a Core Business Application using Microservices

Fabio Angelosanto – Deloitte

CASE HISTORY 2

Customer Engagement in Fashion Area using Serverless

Stefano Dindo – Cloud Alliance

Q&A

Page 9: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Danilo Poccia

Danilo lavora con startup e aziende di ogni dimensioneper supportarle nel processo di innovazione. In quantoTechnical Evangelist di Amazon Web Services aiuta lepersone a realizzare le proprie idee, focalizzandosi sullearchitetture serverless e sull’impatto tecnico e di businessdell’artificial intelligence e del machine learning

Page 10: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Evolution of Business Logic

Danilo Poccia

Technical Evangelist

[email protected]

@danilop

danilop

Page 11: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Evolution of Business Logic

Monolith Microservices Functions

Page 12: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Splitting

Monoliths

Ten Years Ago

Page 13: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Splitting

Monoliths

Ten Years Ago

XML & SOAP

Page 14: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Splitting

Monoliths

TenFiveYears Ago

Page 15: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

REST JSON

Fast binary encodingsSplitting

Monoliths

Five Years Ago

Page 16: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Splitting

Monoliths

TenFive Years Ago

Page 17: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to
Page 18: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to
Page 19: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to
Page 20: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Microservices

Five Years Ago

Page 21: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to
Page 22: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Microservices

Five Years Agoto Functions

Amazon

Kinesis

Amazon API

Gateway

Amazon SNS

Amazon S3

Amazon

DynamoDB

Amazon

SQS

Standard building brick

services provide standardized

platform capabilities

Page 23: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Amazon SNS

Amazon S3

Amazon API

Gateway

Amazon

SQS

Amazon

Kinesis

Amazon

DynamoDBMicroservices

to Functions

Business Logic

Glue between the bricks

Standard building brick

services provide standardized

platform capabilities

Page 24: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Amazon SNS

Amazon S3

Amazon API

Gateway

Amazon

SQS

Amazon

Kinesis

Amazon

DynamoDBMicroservices

to Functions

Page 25: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Amazon SNS

Amazon S3

Amazon API

Gateway

Amazon

SQS

Amazon

Kinesis

Amazon

DynamoDBMicroservices

to Functions

Page 26: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Amazon SNS

Amazon S3

Amazon API

Gateway

Amazon

SQS

Amazon

Kinesis

Amazon

DynamoDBMicroservices

to FunctionsEphemeral

Page 27: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Microservices

to

Functions

Ephemeral

Page 28: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Microservices

to

Amazon API

Gateway

Amazon

SQS

Functions

Ephemeral

Page 29: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Microservices

to

Amazon API

Gateway

Amazon

Kinesis

Amazon

DynamoDB

Functions

Ephemeral

Page 30: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Microservices

to

Amazon API

Gateway

Amazon SNS

Amazon S3

Functions

Ephemeral

Page 31: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Amazon SNS

Amazon S3

Amazon API

Gateway

Amazon

SQS

Amazon

Kinesis

Amazon

DynamoDBMicroservices

to

Functions

EphemeralWhen the system is

idle, it shuts down and

costs nothing to run

Page 32: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Evolution of Business Logic

Monolith Microservices Functions

Page 33: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

What Happens

to Databases?

Page 34: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

A

C

I

D

tomic

onsistent

solated

urable

A

C

I

D

ssociative

ommutative

dempotent

istributed

ACID 2.0

Page 35: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

“…a diagram of

two microservices

and their shared database”

Data should drive

the boundaries

Page 36: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

“Update-in-place

strikes many systems designers

as a cardinal sin: it violates

traditional accounting practices

that have been observed

for hundreds of years.”

The Transaction Concept:

Virtues and Limitations

Jim Gray, 1981

Page 37: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

The New De-Normal

Monolithic Databases

Kitchen Sink Analogy

De-normalized

Page 38: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Expensive,

Hard to Create

and Run

Monolith

Page 39: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Expensive,

Hard to Create

and Run

ic

DatabaseMonolith

Page 40: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Database Schema

Entity Relationship

Page 41: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Database Schema

Entity Relationship

Page 42: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Database Schema

Entity Relationship

Page 43: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Kitchen Sink

Analogy

Page 44: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Kitchen Sink

AnalogyCleanup

GLASSES

Page 45: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

GLASSES

Kitchen Sink

Cleanup

Page 46: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

GLASSES

Kitchen Sink

Cleanup

Page 47: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Kitchen Sink

Cleanup

GLASSES

Page 48: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Kitchen Sink

Cleanup

GLASSES

Page 49: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Kitchen Sink

Cleanup

GLASSES

Page 50: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Kitchen Sink

Cleanup

GLASSES

Page 51: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Consistency

ProblemHow Many Complete

Sets Are There?

Page 52: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Consistency

ProblemHow Many Complete

Sets Are There?

Page 53: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Consistency

ProblemHow Many Complete

Sets Are There?

GLASSES

Page 54: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Adding a New

Use Case

GLASSES

Page 55: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Adding a New

Use Case

SAKE SET

GLASSES

BOWLS

Page 56: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Cloud Makes

it Easy to Add

New Databases

Page 57: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Untangle and

Migrate Existing

“Kitchen Sink”

Schemas

Page 58: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Untangle and

Migrate Existing

“Kitchen Sink”

Schemas

Page 59: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

The New De-Normal

Monolithic Databases

Kitchen Sink Analogy

De-normalized

Page 60: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

What Happens

to the Data Flow?

Page 61: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Data Repositories

Source

of

Events

Page 62: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Events

Immutable

Information

about Business

Page 63: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Triggers

for Business

Logic

Events

Page 64: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Event-driven

Architectures

Page 65: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Name

Email

Create New User

Submit

Check the “Name” syntax is right

(only letters and spaces)

Check the “Email” syntax is right

([email protected])

Create the new user using

provided Name and Email

User Interface Actions

Page 66: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Name

Email

Create New User

Submit

Check the “Name” syntax is right

(only letters and spaces)

Check the “Email” syntax is right

([email protected])

Create the new user using

provided Name and Email

User Interface ActionsObservers

Target Action

Page 67: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Generate thumbnails

Keep another database in sync

Process streaming data

Services FunctionsPlatform

Target Action

Kinesis

Stream

DynamoDB

Table

S3

Bucket

Page 68: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

A B

Event-Driven Design

For Services

”Service A triggers B"

or better

”Service B is caused by A"

Page 69: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

A B

C

D

E

F

?

?

What is causing

services E and F?

Page 70: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

A B

C

D

E

F

New services (E, F)

are triggered caused by C

Page 71: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

A B

C

D

E

F

It can be cyclic

Think of

acknowledgements

Page 72: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Each service

has local visibility

A B

C

D

E

F

Page 73: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

What I need to know

(input events)1

A B

C

D

E

F

Page 74: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

What I need to do

(internal logic)2

A B

C

D

E

F

Page 75: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Who I need to notify

(output events)3

A B

C

D

E

F

Page 76: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Who I need to notify

(output events)

What I need to know

(input events)

What I need to do

(internal logic)

1

2

3

B

Page 77: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

A B

C

D

E

F

Distributed Data Flow

Vs

Centralised Workflow

Page 78: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

A B

C

D

E

F

Event-Driven Interactions

replacing Distributed Transactions

using Eventual Consistency

Page 79: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

A B

C

D

E

F

Event-Driven Interactions

replacing Distributed Transactions

using Eventual Consistency

Differentiate reads (queries)

from writes (commands),

as in the Command Query

Responsibility Segregation

(CQRS) pattern

command query

Page 80: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Build Your Own Roadmap

De-normalizedFunctions Event-driven

Page 81: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Prototype

Production

Page 82: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

“If you want to increase innovation,

you have to lower the cost of failure”

—Joi Ito, Director, MIT Media Lab

Page 83: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Evolution of Business Logic

Danilo Poccia

Technical Evangelist

[email protected]

@danilop

danilop

Page 84: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

84

CASE HISTORY 1

Refactoring a core business application using Microservices

Page 85: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Fabio Angelosanto

Nel corso della sua carriera ha maturato una lungaesperienza su progetti di integrazione e implementazionedi sistemi IT, prevalentemente nel settore Finance eRetail. Appassionato di tecnologie Cloud si è specializzatosulla piattaforma AWS conseguendo la certificazionecome Solution Architect Associate e coordina il centro dicompetenza AWS in Deloitte Central Mediterranean

Page 86: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

86

Business application transformation: key drivers

Speed and agility

IntegrationCost

ReductionInnovation

Case Description: Refactoring of a core business application for leadingcompany in Italian retail market

Instant Provisioning

Managed Services

Over 60 different services

Pay-per-Use / Auto Scaling

Lower maintenance

+3800 platformson Marketplace

Continuous Improvement

Page 87: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

87

• Separation of Concerns

• Optimized HW Scaling

• DecoupledDeployment

From Monolith to Microservices

«..is a software architecture style in which complex application are composed of small, independentprocesses communicating with each other using language-agnostic APIs. These services are small, highly

decoupled and focus on doing a small task, facilitating a modular approach to system building.» Wikipedia

Microservices Architecture..

UI

Business

Logic

Data

Access

Layer

Monolithic Architecture

UI

Microservices Architecture

Refactoring

Page 88: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

88

Proposed Architecture

RDS DB standby

VPC subnet 4VPC subnet 2

Availability Zone A Availability Zone B

virtual private cloud

Elastic Load Balancing

InternetAmazonRoute 53

edge location

Ec2 Instances

VPC subnet 1 VPC subnet 3

Desktop/Mobile

Browser

Dynamo

DB

Elasti

Cache

Amazon

Cognito

Ec2 Instances

RDS DB instance

Amazon API

Gateway

AmazonS3

• Containers deployment

• EC2 Cluster Auto-Scaling

• High Availability and Faults Tolerance

Amazon ECS

EC2 Container Service

Corporate data center

Amazon

SNS

VPN gateway

VPN connection

Page 89: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

89

• Adopt an incremental and sustainable migration approach: infrastructure ready in few days, beta release available after few weeks, agile development approach to incrementally refine the application

• Set up an elastic architecture to reduce infrastructure costs and automatically scale with business growing

• Use AWS managed services to cut effort required to manage operations and focus on client’s business needs

• Keep a simple modular approach to improve software quality and simplify maintenance and deployment activities

• Take advantage of the wide range AWS capabilities to innovate, try different approaches and find the best solution for every challenge

Summary: AWS allowed us to..

Page 90: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

CASE HISTORY 2

Customer Engagement in Fashion Business using Serverless

Page 91: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Stefano Dindo

Stefano è il CEO di Zero12 e membro della CloudAlliance. Appassionato di tecnologia e da tutto ciò che èdotato di un Software. Forte sostenitore del Web, e dellasua filosofia, come mezzo di innovazione.

Page 92: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Starting Point

Page 93: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

100.000

downloads

1 Million

downloads

~ 500

active

users per

day

4.000 daily active

users

Projects Goals

2015 Goals

Page 94: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

We would like to create a new Engagement Experience

Augmented reality

Games Mobile live fashion show

Face detections

Page 95: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Traditional Architectures

Fu

nctions

Layers

Serverless Architecturesvs

Page 96: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Why did we choose to go Serverless?

Atomicity

Fast development

Availability

Scalability

Flexibility

Page 97: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

AWS Serverless Architectures

Customer Admin

End Users

Rekognition

DynamoDB

S3CloudFront

API Gateway Lambda

Web console

SNS

Mobile Analytics

Page 98: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

~ 1.5 active

users

from 5.000 to

6.000 daily

active users

Results

Page 99: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

The missing elements

Page 100: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

AWS Serverless Architectures

Customer Admin

End Users

Rekognition DynamoDB

S3CloudFront

API Gateway Lambda

Web console

SNS

Mobile Analytics

Quicksight

Page 101: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Q&A

Page 102: Application Modernization - deloitte.com · Technical Evangelist di Amazon Web Services aiuta le ... Amazon API Gateway Amazon S3 ... 2015 Goals. We would like to

Application ModernizationCopyright © 2017 Deloitte Development LLC. All rights reserved. 102

Application Modernization

Fine del primo appuntamento, ma non finisce qui …

Materiale esclusivo per i partecipanti:

Una copia del libro di Danilo Poccia

Video summary dell’incontro odierno in anteprima

Invito prioritario per i successivi appuntamenti della serie Application Modernization su «Container e DevOps» e «Mainframe Offloading»