Workshop Jun/12 - Arquitetura de Serviços

Post on 18-Nov-2014

991 views 1 download

Tags:

description

Apresentação feita no Workshop realizado pela Sensedia em parceria com a Progress em São Paulo, 14/06/2012, abordando temas como: Arquitetura de Serviços (conceitos, boas práticas e infraestrutura), Governança SOA, Governança SOA Integrada ao Middleware, Middlewares de integração, API Governance, API Management e Internet of things.

Transcript of Workshop Jun/12 - Arquitetura de Serviços

www.sensedia.com | 1

[  Empowering  Business.  Architec5ng  IT  ]  

www.sensedia.com | 2

[  Arquitetura  de  serviços:  

 Resolvendo  problemas  reais  ]  

&

www.sensedia.com | 3

•  Founded  in  2007,  as  a  spin-­‐off  from  Ci&T    and  Unicamp  Innova5on  Lab.  

•  Headquartered  in  Campinas,  Brazil  ü  Offices  in  São  Paulo/BR  and  Philadelphia/US  

•  Consistent  growth    ü  (63%  CAGR  2007-­‐2011)  

•  Posi5oned  as  Visionary  in  the  Gartner  Magic  Quadrant(1)  

•  Deep  knowledge  in  SOA  Governance,  Enterprise  Architecture,  Public  API,  Cloud  and  Integra5on.  

Sensedia  at  a  Glance  

(1)    Magic  Quadrant  for  Integrated  SOA  Governance  Technology  Sets,  2009  

© 2012 Progress Software Corporation. All rights reserved. 4

§  Headquartered in Bedford, Massachusetts with approximately 1,800 employees worldwide

§  More than 140,000 customers and 2,000 indirect partners in more than 175 countries

§  Publicly traded (NASDAQ: PRGS) with $500M+ revenue

§  BRAZIL

ü  + 4000 Customer

ü  Leader in Capital Markets

ü  30 Reseller/Application Partners

ü  7 SI´s Partners

To simplify and enable the development, management and deployment of business

applications on premises, in any Cloud, on any platform and on any mobile device

Progress Software Corporation

© 2012 Progress Software Corporation. All rights reserved. 5

World-Wide Actional Customers

www.sensedia.com | 6

•  Sobre  nós  •  Controlando  seus  serviços,  de  verdade!  

ü  Governança  SOA  •  Extraindo  o  máximo  dos  Middlewares  

ü  Potencial  VS.  uso  comum  ü  Governança  SOA  integrada  ao  Middleware  

•  Cenários  de  mercado  •  API  Governance  

ü  Internet  of  things  ü  Cenários  e  futuro  

•  Encerramento  &  takeaways  

Agenda  

www.sensedia.com | 7

Arquitetura  de  Serviços    

[  ....  alguns  porquês  ]    

www.sensedia.com | 8

True  North  com  SOA  e  Cloud  

1 2 3 4 5

Agilidade nas manutenções

Flexibilidade das aplicações

Redução de custos e reusabilidade

Alinhamento entre TI e Negócio

Transformação dos negócios

www.sensedia.com | 9

0 Tempo

% C

usto

de

Man

uten

ção

de T

I 100

Custos de Manutenção ao Longo do Tempo

Curto Prazo

Man

uten

ção

Inov

ação

Man

uten

ção

Man

u-

tenç

ão

Inov

ação

Médio Prazo

Longo Prazo

Abordagem Tradicional

Abordagem SOA

A  maior  parte  do  orçamento  de  TI  das  empresas  são  gastos  para  manter  as  aplicações  e  integrações  em  funcionamento.  As  boas  prá5cas,  uso  de  tecnologias  modernas,  padronização  e  

reu5lização  impacta  diretamente  na  o5mização  dos  recursos  de  TI  

Agilidade  nas  manutenções  1

www.sensedia.com | 10

Uma  base  de  a5vos  compostos  por  serviços,  componentes,  regras  e  objetos  de  negócio  podem  ser  refatorados  e  recombinados  para  criar,  evoluir  e  

transformar  as  aplicações  da  empresa  

Disposi6vos   Fontes  de  Dados   Usuários  

Flexibilidade  das  aplicações  2

www.sensedia.com | 11

Nível de Reúso

Ativos Reutilizáveis

Aplicações

A 1 2

B 31 4 5

1

5

D 2 73 8

2

3

E 3 5 6

F 1 2 6

8

11 2 3 4

6 75 8

2 3

5 6 8

C 1 65 6

Identificados

Reutilizados

9

Criação  e  disponibilização  de  componentes  e  serviços  para  a  reu5lização  cria  a  massa  crí5ca  para  o  aumento  da  produ5vidade  

Redução  de  custos  e  reusabilidade  3

www.sensedia.com | 12

Processo de Negócio

Enterprise Services

Customer Relationship Management

Sales and Marketing

Production Planning Manufacturing

Inventory & Logistics Finance & HR

SFA Product LMS

Inv MGMT

B2B product

ERP.

SCM productinfo.

MES

DB ERP CRM

A  propagação  da  base  de  serviços  e  o  aculturamento  SOA  na  organização  cria  a  sustentação  primordial  para    

a  gestão  por  processos  

Alinhamento  entre  TI  e  Negócios  4

www.sensedia.com | 13

A  exposição  de  serviços  de  negócios  para  o  mercado  –  parceiros,  clientes,  comunidade  de  

desenvolvedores  independentes  (ISV’s)  –  tem  o  potencial  de  transformar  os  negócios  das  

empresas  

O  exemplo  acima  ilustra  o  impacto  que  disponibilização  da  API  de  serviços  de  negócio  teve  no  valor  de  mercado  da  NeMlix    

(comparando  com  seu  principal  compeNdor,  a  BlockBuster)  

Transformação  dos  Negócios  5

APIs  Públicas  

www.sensedia.com | 14

Governança  SOA  

[  Controlando  seus  serviços  de  verdade,        e  sustentando  o  crescimento  com  maturidade  ]    

www.sensedia.com | 15

Leve  

“Just  Enough  Governance”  é  o  principal  direcionador  ao  estabelecer  as  prá6cas  

fundamentais  da  Governança  SOA  para  gerar  valor  sem  

adicionar  overhead  

Incremental  

Baseado  em  um  Modelo  de  Maturidade  que  aproveita  as  capacidades,  conhecimento,  

tecnologia  e  aplicações  legadas  para  acelerar  a  

adoção  SOA  

Governança  SOA    Abordagem  Lightweight  

Ágil  

Projeto  com  fases  curtas  usando  templates,  guias,  boas  prá6cas  e  a6vidades  

automa6zadas  para  antecipar  beneUcios  

tangíveis  (“quick  wins”)  

www.sensedia.com | 16 Single  

Applica6on  Mul6ple  App.  (SingleB.U.)  

Mul6ple  App.  (CrossB.U.)  

Corporate  Level  

•  Serviços  o6mizados  •  Aplicação  de  regras  real6me  •  Correções  dinâmicas  

Serviços  Arquitetados  

Serviços  de  negócio  

Nível  inicial  de  serviços  

•  Núcleo  SOA  •  Nível  inicial  de  reu6lização  

• Metodologia  SOA  •  Disseminação  SOA  

•  Know  how  tecn.    básico  • MDS  convencional  •  Padronizações  técnicas  

2  

3  

4  

5  

1   •  Integrações  P2P  •  Serviços  técnicos    

•  Definição  de  papéis  •  Apoio  execu6vo  •  Padrões  e  processos  básicos  •  Repositório  de  serviços  •  ESB  

• Monitoração  de  Serviços  •  Reuso  automa6zado  •  Orquestração  e  coreografia  

•  Versionamento  de  serviços  • Medição  de  performance  •  UDDI  Operacional  •  Reúso  corpora6vo  

•  KPI’s  •  Indicadores  de    QoS  

Serviços  monitorados  

O6mização  de  serviços  

•  Evolução  conlnua  •  ROI    obje6vo  

Agilidade  

Flexibilidade  

Manutenabilidade  

www.sensedia.com | 17

Pacote  de  definições,  processos,  guias  e  boas  prá5cas  prontos  para  serem  adaptados  e  u5lizados  

Framework  SOA  Sensedia  

SOA  Maturity  Assessment  

Lightweight  SOA  Governance  Best  Prac6ccs  

www.sensedia.com | 18

Estrutura  Flexível  de  Entregáveis  

Exemplo de um processo com atividades,

responsabilidades a templates de artefatos.

Portal que unifica todos os entregáveis:

processos, guias, definições, boas práticas, exemplos, links e também

o acesso ao Repository

www.sensedia.com | 19

Conhecimento  dos  cenários  internos

Conhecimento  do  acervo  

Processo  de  Governança  e    Responsabilidades  

Ciclo  de  vida  -­‐  service  lifecycle  

Padrões  fundamentais  

Organização:  Comunicação,  Competências,  Comportamentos  e  Métricas  

Necessidades  básicas  para  Governança  SOA  

www.sensedia.com | 20

Sobre  os  beneUcios  de  SOA  para  sua  empresa        [      ]  Não  sabemos  exatamente  os  benepcios        [      ]  Conhecemos  os  benepcios  para  a  equipe  de  TI        [      ]  Sabemos  os  benepcios  para  a  área  de  Negócios        [      ]  Sabemos  os  benepcios  e  temos  um  plano  de  ação  

Questão!  

www.sensedia.com | 21

Por  que  eu  deveria  avaliar  o  nível  de  Maturidade  SOA?    

www.sensedia.com | 22

Gaps  e  Maturidade  

atuais  

Benepcios  &  maturidade  

alvo  

Roadmap  

• Conjunto de ações O que

• Plano detalhado • Visão cronológica

Como e quando

Objetivo estratégico

Estratégia de TI

Objetivos práticos

Agilidade

Controle

Reuso

Padronização

Business  GOALs  

www.sensedia.com | 23

7  Dimensões  Avaliadas  

Business

Organiza6on  &  Governance  

Method  

Applica6on  

Architecture  

Informa6on  

Infrastructure  &  

Management    

www.sensedia.com | 24

7  Níveis  

SOA foundation Levels

1  Silo

2  Integrated  

3  Componen6zed  

4  Service  

5  Composite  Services    

6  Virtualized  Services  

7  Dynamically  Re-­‐Configurable  Services  Business

Organiza6on  &  Governance  

Method  

Applica6on  

Architecture  

Informa6on  

Infrastructure  &  

Management    

www.sensedia.com | 25

OSIMM  

Capacidades de negócios são configuráveis

Linhas de Negócio com propósitos isolados

Outsorced BPM & BAM

Serviços de negócio compostos

Negócio fornece e consome serviços

Funções de Negócio Componentizados

Processos de Negócio Integrados

Business

Transformação de TI em uma área estratégica

Estratégias convergentes de TI e Negócio.

Governança SOA com políticas de serviços

Governança da Infraestrutura de TI e de SOA

Governança de TI e SOA alinhados

Processo de Governança comum

Governança SOA nascendo

Org. & Gov.

Transformação de TI em uma área estratégica

Análise e Design estruturado

Modelagem de processos de negócio

Modelagem Orientado à Serviços em Infraestrutura

Modelagem Orientado à Serviços

Desenvolvimento baseado em Componentes

Modelagem Orientado à Serviços

Method

Objetos Módulos Aplicações construídas dinamicamente

Aplicações compostas por serviços

Aplicações compostas por serviços

Componentes Serviços Applica tion

Arquitetura em camadas

Arquitetura Monolítica

Arquitetura Moldável Dinamicamente

Grid em SOA SOA Arquitetura baseada em componentes

SOA nascendo Archite cture

Espec LOB (subárea com dicionário definidos)

Dados específicos de aplicações

Dicionário de dados semântico

Serviços de dados virtualizados

Dicionário de dados corporativo e Repositório

Modelos Canônicos

Informação em Serviços

Informa tion

Padrões corporativos

Plataforma específicas por LOB

Context-awared, Event Based: Sense & Respond

Ambiente SOA virtualizado

Ambiente SOA compartilhado

Infraestrutura comum reutilizável

Projetos baseado em ambiente SOA

Infra. & Manag.

1 2 3 4 5 6 7

Dynamically Re-

Configurable Services

Silo Integrated Componentized

Services Composite Services

Virtualized Services

SOA Foundation Levels

AS IS TO BE Gaps

www.sensedia.com | 26

Resultado:  Roadmap  

Gaps  e  Maturidade  

atuais  

Benepcios  &  maturidade  alvo  

Roadmap  Frentes /

Atividades

Visão cronológica

Recursos

Plano macro

www.sensedia.com | 27

Radar  de  maturidade  

1

2

3

4

5

6

7 Business

Organization & Governance

Method

Application Architecture

Information

Infrastructure & Management

Radar de Competências

Hoje

Futuro

AS IS

TO BE

www.sensedia.com | 28

Conhecimento  dos  cenários  internos

Conhecimento  do  acervo  

Processo  de  Governança  e    Responsabilidades  

Ciclo  de  vida  -­‐  service  lifecycle  

Padrões  fundamentais  

Organização:  Comunicação,  Competências,  Comportamentos  e  Métricas  

Necessidades  básicas  para  Governança  SOA  

www.sensedia.com | 29

Como  você  sabe  quais  são  seus  serviços?        [      ]  Eu  não  sei  quais  são  meus  serviços        [      ]  Levantamento  de  serviços  em  diversos  pontos    

(ESB,  estações,  relatórios  de  projetos,  etc)        [      ]  Planilha  ou  outra  forma  não  específica        [      ]  Repositório  de  serviços  

Questão!  

www.sensedia.com | 30

Service  Informa5on  Model  

Asset

version

Artifacts

User’s guide

API docs

Release notes

Samples

...

Asset Types

Components

Services

Applications

Business Process

... Relationship Types

Depends on

Invokes

...

§  Metadata §  Classification

§  Security §  Workflow

§  Collaboration

www.sensedia.com | 31

Visão de negócio e processos

Serviço

Negócio Dados Infraestrutura Integração Utilitário

Classificação  de  referência  para  serviços  

Suporte técnico

Transferência de dados de

sistemas

Recuperação de dados e entidades

Serviços comuns

www.sensedia.com | 32

Conhecimento  dos  cenários  internos

Conhecimento  do  acervo  

Processo  de  Governança  e    Responsabilidades  

Ciclo  de  vida  -­‐  service  lifecycle  

Padrões  fundamentais  

Organização:  Comunicação,  Competências,  Comportamentos  e  Métricas  

Necessidades  básicas  para  Governança  SOA  

www.sensedia.com | 33

Seus  serviços  tem  responsáveis?        [      ]  Eu  não  sei  quais  são  meus  serviços        [      ]  Temos  a  informação  de  quem  criou        [      ]  Temos  a  informação  de  quem  criou  e  quem  usa        [      ]  Sabemos  quem  criou,  quem  usou,  quem  dá  

manutenção  e  o  dono  atual  do  serviço    

Questão!  

www.sensedia.com | 34

Processo  de  Governança  SOA  

Requirements and Architecture Specification

Ent

erpr

ise

Arc

hite

ctIC

C C

oord

inat

orIn

tegr

atio

n Le

ader

Clie

nt

No

Yes

FS

FS

Yes

No

Yes

No

IP

FS

Data Integration Layer

Robinson Hotta Version 0.92

IPFS

End

Begins the Requirements and

Architecture Specification

Yes

No

FTP

FTP

AS

Process Integration Layer

No

Adjust Functional Specification and Functional Test

Plan

9 11

Finish filling Integration Plan

Documents validated?

8Validate Functional

Specification and Functional Test

Plan

7

Functional Specification and Test Plan

exists?

5

Notify Problem

6

Run Data x Process

Framework and analyze result

12

Integration Layer?

13

Identify integration scenario in Technology Framework

1415

Found integration scenario?

Yes

Run Technology Framework

20

21Found a coherent result?

Yes

No

Study to find out possibilities of

integration to this scenario

16

Create/Update Architecture of

Scenario

17

Save and register Architecture of

Scenario document

18 19

Update the Technology Framework

template

Analyze Reutilization

REP

22

Can any integration be

reused?

23

Can any integration be

adapted?

24

End

FS

Update Schedule in Integration Plan

30

10

Sign-off meeting and update

Quality Center

Gather Requirements from key users

1

Define Functional Specification and

Test Plan

2

Review Functional Specification and

Test Plan

3

Need more information?

4

No

Yes

31

functional request

Functional request, defect

fix or Scope Change?

defect fix orscope change

Change Management of Project's Scope

The scope is OK?

32

Yes

No

Identify the applicable

scenarios in Data Integration Approach

DIA

No

Create/Update Data Integration

Approach

There is a scenario to be

created or updated?

Yes

DIA

1

1

List Integrations that will be created

List integrations that will be adapted

List integrations that will be reused

Update repository to identify reuse of

integration

Create the new integration in the

repository

28

25

27

LS

26

29

REP

REP

LegendUpdate Integration RepositoryICC Governance Integration RepositoryList Update ICC100 – List of DemandsFS ICC005 – Integration PlanIPICC010 – Functional

Specification of IntegrationClient FTP Functional Test Plan ICC020 – Architecture of Scenario

AS REPDIA Data Integration Approach

33

34

35

www.sensedia.com | 35

Matriz  de  Responsabilidades  (RACI)  

Activity / Decision (R)esponsible (A)ccountable (C)onsulted (I)Nformed

Identificar Serviços do Projeto

Business Analyst, SOA Architect

Project Sponsor Repository Manager

SOA CoE

É possível reutilizar serviços existentes ou é um novo serviço?

Repository Manager, SOA Architect

SOA Project Sponsor

… …

Serviço corporativo ou específico do projeto?

… … … …

Quem será o dono do serviço?

… … … …

Quem pagará pelo desenv. / manutenção do serviço?

IT Budget Committee

… … …

Existem requisitos não funcionais especiais?

Secutiry Expert, Database Expert, Operation Manager

Enterprise Architect

Service Owner, Project Sponsor

www.sensedia.com | 36

Conhecimento  dos  cenários  internos

Conhecimento  do  acervo  

Processo  de  Governança  e    Responsabilidades  

Ciclo  de  vida  -­‐  service  lifecycle  

Padrões  fundamentais  

Organização:  Comunicação,  Competências,  Comportamentos  e  Métricas  

Necessidades  básicas  para  Governança  SOA  

www.sensedia.com | 37

Como  você  controla  o  ciclo  de  vida?        [      ]  Eu  não  sei  quais  são  meus  serviços        [      ]  Não  existe  o  conceito  de  status  dos  serviços,  ou  ele  existe,  

ou  não  existe.        [      ]  Não  acompanhamos  o  ciclo  de  vida  dos  serviços,  sabemos  

apenas  quando  iden5ficados  e  publicados        [      ]  Possuimos  um  acompanhamento  através  de  workflow  ou  

ferramenta  específica  

Questão!  

www.sensedia.com | 38

Services  Life  Cycle  

           

Identificado Em modelagem

Em construção

Descontinuado

aprovar  

Recusado

recusar  

submeter  

remodelar  

construir  

evoluir  

descon5nuar  excluir  

excluir  

Sistema

Disponível

Cadastrar  

Barramento Em Implantação

disponbilizar  

implantar  

disponbilizar  

www.sensedia.com | 39

Responsabilidades  

Ponto de controle

Reponsável Validações Material de apoio

Validar serviços Arquiteto SOA Núcleo SOA

•  Contrato de serviços •  Cadatro no repositório

•  Guia de identificação •  Padrões de elegibilidade de serviços •  Repositório de serviço

Validar modelagem

Arquiteto SOA •  Design de serviço •  Guia de modelagem •  Arquitetura de referência

Validar implantação

Project Owner Núcleo SOA

•  Serviço •  Design de serviço •  Teste de serviços

•  Mecanismo de teste •  Serviço implementado •  Repositório de serviço

Extrair Métricas Núcleo SOA •  ROI •  Reuso •  RCA

•  Documento de Métricas Quantitativas de SOA

Pontos  de  controle  

www.sensedia.com | 40

Conhecimento  dos  cenários  internos

Conhecimento  do  acervo  

Processo  de  Governança  e    Responsabilidades  

Ciclo  de  vida  -­‐  service  lifecycle  

Padrões  fundamentais  

Organização:  Comunicação,  Competências,  Comportamentos  e  Métricas  

Necessidades  básicas  para  Governança  SOA  

www.sensedia.com | 41

Existem  padrões  e  boas  prá6cas  para  construção    de  serviços?        [      ]  Eu  não  sei  se  construímos  serviços        [      ]  Não  existem  boas  prá5cas,  depende  do  fornecedor        [      ]  Existem  boas  prá5cas  para  implementação  de  projetos,  

nada  específico  para  serviços        [      ]  Existem  boas  prá5cas  para  serviços  (segurança,  

escalabilidade,  testes,  etc).  

Questão!  

www.sensedia.com | 42

Arquitetura  Corpora6va  •  Componentes  arquiteturais  para  

serviços:  ü  Barramento  ESB  ü  Repositório  de  Serviços  ü  Framework  de  invocação  de  

serviços  

Arquitetura  de  Sistema  •  Visão  Arquitetural  com  a  camada  

de  serviços  •  Mecanismos  Arquiteturais  

exclusivos  para  SOA:  ü  Testes  ü  Segurança  ü  Interoperabilidade  

Padrões  Fundamentais  x  Arquitetura  

www.sensedia.com | 43

•  A5vidades  principais:  ü  Iden5ficação  de  serviços;    ü  Modelagem  de  serviços;  ü  Catalogação  dos  serviços;    ü  Deploy  de  serviços  

•  Guias  e  Templates  prá5cos:  ü  Guia  para  Iden5ficação  de  serviços    

(harves5ng  em  novos  projetos  ou  em  legados)  ü  Templates  e  Guias  para  Interface  e  Design  de  serviços  ü  Guia  para  Catalogação  de  serviços  ü  Padrão  para  Versionamento  de  serviços  

Padrões  Fundamentais    x  Metodologia  

www.sensedia.com | 44

Conhecimento  dos  cenários  internos

Conhecimento  do  acervo  

Processo  de  Governança  e    Responsabilidades  

Ciclo  de  vida  -­‐  service  lifecycle  

Padrões  fundamentais  

Organização:  Comunicação,  Competências,  Comportamentos  e  Métricas  

Necessidades  básicas  para  Governança  SOA  

www.sensedia.com | 45

Que  6po  de  métricas  são  extraídas  dos  seus  serviços?        [      ]  Eu  nem  sei  quais  são  meu  serviços        [      ]  Eu  sei  quais  são,  mas  não  medimos  nada        [      ]  Métricas  quan5ta5vas  (numero  de  serviços)        [      ]  Métricas  qualita5vas  (volume  de  chamadas,  quan5dades  de  reúso  por  projeto,  ROI,  etc)  

Questão!  

www.sensedia.com | 46

•  Tipos  de  métricas  para  Projetos  SOA:  ü Métricas  de  gerência  de  projeto  

ü Métricas  Econômicas  

ü Estavs5cas  de  desenv.  e  reu5lização  de  serviços  

Métricas  You can't Manage what

you don't Measure

5

www.sensedia.com | 47

Comportamento  

•  Definir  incen5vos,  reconhecimento    e  penalidades  

•  Reduzir  ao  máximo    os  “desincen5vos”  

•  Premiar  o  comportamento    “SOA  oriented”  

•  Garan5r  “funding”  preferencial  a    projetos  SOA  

www.sensedia.com | 48

Conhecimento  dos  cenários  internos

Conhecimento  do  acervo  

Processo  de  Governança  e    Responsabilidades  

Ciclo  de  vida  -­‐  service  lifecycle  

Padrões  fundamentais  

Organização:  Comunicação,  Competências,  Comportamentos  e  Métricas  

Necessidades  básicas  para  Governança  SOA  

www.sensedia.com | 49

•  Design  Time:  –  Foco  em  usabilidade,  produ5vidade,  controle,  ...  

ü Modelagem  de  Negócio:  BPM  (BPMN,  ...)  ü Catálogo  de  A5vos  Reu5lizáveis  

•  Run  Time:  –  Foco  em  robustez,  escalabilidade,  ...  

ü Container  de  WebServices    ü ESB:  Enterprise  Service  Bus  ü Registro  de  localização  de  Serviços  e  Aplicações  de  Policies  de  Governança  

ü BAM:  Monitoramento  de  A5vidade  de  Negócio  

Quais  Classes  de  Ferramentas  estão  relacionadas  a  SOA?  

O que vemos por aí

www.sensedia.com | 50

Como  você  faz  análise  de  impacto  em  situações  de  manutenção  de  serviços?        [      ]  Eu  não  sei  quais  são  meus  serviços        [      ]  Análise  de  impacto  não  é  feita        [      ]  Análise  de  impacto  feita  caso  a  caso  (e  de  acordo  com  informações  disponíveis)        [      ]  Possuímos  informações  de  rastreabilidade  dos  serviços,  para  realização  de  análise  de  impacto  

Questão!  

www.sensedia.com | 51

Middleware  de  integração  

[  Uma  visão  simplória  vs.          Potencial  de  ganho  ]    

www.sensedia.com | 52

Abordagem  Tradicional  

Conexões  Ponto-­‐a-­‐Ponto  

ERP Aplicação .NET

WebService (Externo)

Aplicação JEE

Legacy (C/C++)

Mainframe (CICS Transaction

Gateway)

Pacote CRM (proprietário)

Custom point-to-point connections

www.sensedia.com | 53

ERP Aplicação .NET

WebService (Externo)

ESB  

Enterprise Service Bus

JCA

JMS SOAP/ HTTP

SOAP/ HTTP

SOAP/ HTTP

SOAP/ HTTP

JCA

Aplicação JEE

Legacy (C/C++)

Mainframe (CICS Transaction

Gateway)

Pacote CRM (proprietário)

www.sensedia.com | 54

ESB  Principais  funcionalidades  

Transformação de

Mensagem

Roteamento de

Mensagem

Transparência de Localização

Conversão de Protocolo

de Transporte

Enriquecimento de Mensagem

Segurança

Monitoria

Capacidade  de  adicionar  informação  faltante  a  uma  mensagem,  baseando-­‐se  em  seus  dados  

Transformação  de  mensagens  de  um  formato  para  outro,  baseado  em  padrões  abertos  como.  

Capacidade  de  rotear  uma  mensagem  de  entrada  ao  seu  des5no  final  

Auten5car,  autorizar  e  criptografar  mensagens  de  entrada  e  saída,  sa5sfazendo  requisitos  de  segurança  dos  serviços.  

Capacidade  de  gerenciar  performance  e  confiabilidade,  assim  como  monitorar  o  fluxo  e  execução  de  mensagens.  

Capacidade  de  integrar  aplicações  com  protocolos  de  transporte  diferentes.  

Desacoplamento  da  localização  de  um  serviço,  onde  o  consumidor  doserviço  não  sabe  onde  fica  o  provedor  deste  serviço.  

www.sensedia.com | 55

Transformação de Mensagem

Roteamento de Mensagem

Transparência de Localização

Conversão de Protocolo de Transporte

Enriquecimento de

Mensagem

Segurança

Monitoria

Proxy ?????

Equipes, fornecedores,

prazos, padrões, direcionamentos,

falta de foco, patrocínio...

www.sensedia.com | 56

Como  sua  empresa  usa  o  Middleware?        [      ]  Não  temos  middleware  SOA        [      ]  Não  sei  se  temos  serviços        [      ]  Usamos  como  proxy        [      ]  Usamos  o  middleware  para  fazer  monitoramento,  ou  

segurança,  ou  conversão  de  protocolos.  

Questão!  

www.sensedia.com | 57

Arquitetura  Tradicional  

Muito difícil de entender, manter e evoluir

www.sensedia.com | 58

Vocês  conhecem  o  Arquiteto??  

www.sensedia.com | 59

Como  diminuir  a  complexidade?  

www.sensedia.com | 60

Barramento  de  serviços  

ESB  

www.sensedia.com | 61

Barramento  de  serviços  

ESB  

www.sensedia.com | 62

Barramento  de  serviços  

ESB  

www.sensedia.com | 63

Barramento  de  serviços  

ESB  

www.sensedia.com | 64

ESB  

Não  basta  centralizar.  É  preciso  ter  controle!  E  boas  prá6cas...  

www.sensedia.com | 65

ü  Gestão  dos  Serviços  ü  Controle  do  ciclo  de  vida  ü  Relatórios  e  métricas  ü  Promoção  de  prá5cas  de  

reu5lização  

Registry  /  Repository  

www.sensedia.com | 66

Governança  dos  serviços?  

Quais  são  meus  

serviços?  

Como  fazer  análise  de  impacto?   Reuso  e  

outros  ROIs  

Mapeamento  de  responsabilidades  

www.sensedia.com | 67

SOA  Governance  

ESB  

Service Repository

www.sensedia.com | 68

www.sensedia.com | 69

Mas, como isso funciona?

GOVERNANÇA INTEGRADA

www.sensedia.com | 70

Governança  SOA:  •  Repositório  de  Metadados  para  

componentes,  serviços,  sistemas,  integrações  e  processos  de  negócio    

•  Polí5cas  e  Processos  •  Métricas  obje5vas  e  relatórios  

customizáveis  •  Controle  de  ciclo  de  vida  

dos  a5vos  •  Colaboração  •  Promoção  de  prá5cas  de  

reu5lização  

Sensedia  Repository  

www.sensedia.com | 71

SOA Registry/Repository

Ambientes  de  Desenvolvimento:    

Arquitetura  Aberta  

Ampla  Compa6bilidade:    

•  Gestão  de  componentes  de  souware,  serviços,  integrações  etc.  

•  Modelo  extensível  de  metadados  

•  Indexação  e  Busca  o6mizados  •  Mecanismos  inovadores  de  

colaboração  •  Relatórios,  estals6cas  e  

métricas  de  ROI  •  Análise  de  impacto  visual  

•  Workflow  flexível  de  aprovação  

•  Iden6ficação  automá6ca  de  serviços  e  componentes  

•  Análise  de  qualidade  arquitetural  

www.sensedia.com | 72

Valor  adicionado  •  Carga  no  Repository    dos  serviços  descobertos  

automa5camente  •  Iden5ficação  de  não-­‐conformidades  nos  serviços  

implantados  •  Visualização  de  informações  detalhadas  dos  serviços  

ü Métricas  de  Run-­‐5me  ü Meta  informação  sobre  serviços  (ownership,  classificação,  custo,  etc.)  

ü Detalhes  das  polí5cas  de  segurança  •  Controle  de  quem  está  usando  os  serviços  para  

melhor  planejar  a  u5lização  das  capacidades  •  Receba  alertas  quando  modificações  são  feitas  nos  

seus  serviços  

www.sensedia.com | 73

Modelo  de  integração  

Agente

Sensedia Repository ESBBridge

Implementação

Impl

Implementação

ESBs

Sen

sedi

a R

epos

itory

www.sensedia.com | 74

Monitoring Entities: •  Nodes: infos como IP, sistema operacional, specs, porta e nome dos app containers, etc. •  Pacotes: apps corporativas, com nome, url/context-root, etc •  Serviços: incluindo qualquer protocolo (soap/http, rmi, ejb, etc) e seus contratos (WSDL no caso de webservices) •  Operações: obtidas a partir do WSDL, por exemplo.

Governance Server

Integration Plugin

Nodes • IP • S.O. • Specs • App containers •  watchdogs

Services • Protocol • Contract • Operations

www.sensedia.com | 75

Assets findability

•  Get to know the assets you already have •  Promote the reuse of the right assets

Life

cycl

e

man

agem

ent

•  Validations steps throughout the development lifecycle

•  Get assets information delivered to the development and the architectural teams •  Better understanding on your services, components, processes, systems, schemas and how they relate to each other

www.sensedia.com | 76

Interações  do  Sensedia  Repository  

Custom integrations using the common interfaces toolkit

Users Authentication

LDAP directories

Active Directory

3

3

Asset Production And Consumption

3 Eclipse Platform

3 IBM Rational RSA/RSM

3 MS VisualStudio

3 Oracle JDeveloper

Service Runtime Environment

3 UDDIs

3 ESBs

Actional

Source Code Management

IBM Rational ClearCase

CVS/Subversion

3

3 SOA Assets Management

Metadata Searches Reuse Metrics

Promotion Collaboration Workflow

Products Architecture: Java Server Faces

WebServices / SOAP

JDBC, XML

www.sensedia.com | 77

Modelo  de  informação  

Ativo versão

Artefatos

Guia do usuário

API docs

Release notes

Exemplos

...

Tipos de ativos

Componentes

Serviços

Aplicações

Proc. de negócio

... Tipos de relacionamentos

Depende de

Invoca

...

§  Metadados §  Classificação

§  Segurança §  Ciclo de vida §  Colaboração

(fóruns, feeds, alertas, etc.)

www.sensedia.com | 78

Cenários  reais  de  mercado  

[  Planos  executados  ]    

www.sensedia.com | 79

Três  cenários  comuns  

Controle  de  serviços    no  mundo  corpora5vo  

Tenho  serviços,    boa  parte  fora  do  barramento  1

Tenho  serviços,    estão  no  barramento   2

Eu  não  sei  o  que  tenho,  (barramento  vazio)   3

www.sensedia.com | 80

Cenário  •  Diversos  serviços  técnicos  já  disponibilizados  no  barramento  

•  Muitos  serviços  acessados  P2P  •  Sem  definições  de  governança  •  Sistemas  “soltos”  em  planilhas  ou  nem  controlados  

•  Necessidade  de  controle  dos  a5vos  da  arquitetura    

   

Caso  1            Nem  todos  os  serviços  no  barramento  1

Empresa  de  logísNca  

www.sensedia.com | 81

Plano  

Caso  1            Nem  todos  os  serviços  no  barramento  1 1-­‐  Implantação  do  repositório  de  serviços  integrado  ao  ESB

2  -­‐  Definição  de  taxonomia  e  configuração  do  repositório.  

3  -­‐  Importação  dos  serviços  do  barramento  para  o  repositório  

4  -­‐  Saneamento  de  serviços  e  sistemas  “soltos”  dentro  do  repositório  

5  -­‐  Treinamento  e  operação  da  ferramenta  

www.sensedia.com | 82

Resultado  •  Serviços  importados    no  repositório,  através  da  integração  

com  o  repositório  •  Serviços  levantados  nas  áreas  e  cadastrados  no  

repositório  •  Sistemas  controlados  no  repositório  •  Aplicação  de  taxonomia  aos  serviços  e  rastreabilidade  •  Geração  de  relatórios  direcionados  à  análise  de  impacto  •  Plano  de  inserção  de  serviços  no  ESB.  •  Geração  de  base  de  serviço  consolidada,  com  diversos  

a5vos  relacionados  (sistemas,  componentes,  jobs,  etc)    

   

Caso  1            Nem  todos  os  serviços  no  barramento  1

www.sensedia.com | 83

Cenário  •  Empresa  com  grande  experiência  no  

desenvolvimento  de  serviços  •  Usuária  do  Oracle  SOA  Suite  •  Todos  os  serviços  publicadas  no  ESB  •  Sabia-­‐se  do  volume  dos  serviços,  mas  sem  outras  

informações  para  gestão  e  controle  •  Falta  de  visibilidade  dos  serviços  ,  com  margem  de  

reuso  baixa  •  Análise  de  impacto  sendo  realizada  de  maneira  

manual  

Caso  2            Serviços  con5dos  no  barramento  2

Empresa  de  serviços  

www.sensedia.com | 84

Plano  

Caso  2            Serviços  con5dos  no  barramento  2

1-­‐  Implantação  do  Repositório,  integrado  ao  ESB

2  –  Sincronização  de  serviços  do  barramento  e  customizações  para  integração  com  outras  ferramentas  

3  -­‐  Priorização  de  valor  e  Saneamento  de  serviços  

4  -­‐Definição  de  padrões  de  governança  

5  -­‐  Gestão  do  repositório  e  acompanhamento  de  projetos  

www.sensedia.com | 85

Resultados  •  Repositório  integrado  ao  ESB  •  Repositório  integrado  ao  processo  de  

desenvolvimento  •  100%  dos  serviços  catalogados  (150+)  •  Portal  de  governança  gerado  

ü Ciclo  de  vida  de  serviço  ü Perfis  e  responsabilidades  ü Relatórios  de  ROI  

•  Ferramenta  operacional  disponível  para  as  fábricas  

Caso  2            Serviços  con5dos  no  barramento  2

www.sensedia.com | 86

Cenário  •  Diversos  serviços  P2P,  desconhecidos  •  Barramento  selecionado  para  implantação,  mas  não  

operacional  •  Necessidade  imediata  de  controle  centralizado  dos  

serviços  existentes  •  Apenas  determinados  fornecedores  conheciam  os  

serviços  •  Empresa  recentemente  adquirida,  com  necessidade  

latente  de  integração  com  “legados  de  terceiros”  

Caso  3            Barramento  vazio  3

Empresa  de  cartões  

www.sensedia.com | 87

Plano  

Caso  3            Barramento  vazio  3

1-­‐  Implantação  do  repositório  e  configuração

2  -­‐  Definição  de  padrões  de  classificação  de  serviços

3  -­‐  Harves5ng  de  serviços  e  Importação  no  repositório  

4  -­‐  Definição  de  plano  de  atuação  do  repositório  no  processo  de  desenvolvimento  

5  –  Migração  dos  serviços  para  o  Barramento  

www.sensedia.com | 88

Resultado  •  Portal  de  governança  disponibilizado  com    

ü Taxonomia  de  a5vos  ü Ciclo  de  vida  e  pontos  de  controle  ü Perfis  e  responsabilidades  

•  Configuração  de  taxonomia,  ciclo  de  vida  e  perfis  no  repositório  

•  Mais  de  200  serviços  levantados  e  catalogados  em  um  mês  

•  Repositório  populado  e  integrado  ao  barramento,  com  plano  de  migração  de  serviços  para  o  ESB.  

Caso  3            Barramento  vazio  3

www.sensedia.com | 89

O  que  estes  cenários  tem  em  comum?  

Tenho  serviços,    boa  parte  fora  do  barramento  1

Tenho  serviços,    estão  no  barramento   2

Eu  não  sei  o  que  tenho   3

www.sensedia.com | 90

O  que  estes  cenários  tem  em  comum?  

1 2 3 a)  Barramento  de  serviços  b)  Serviços  desgovernados  c)  Necessidade  de  controle  d)  Agilidade  na  abordagem  

www.sensedia.com | 91

A  decisão  foi  trocar  o  pneu  com  o  carro  andando...  

www.sensedia.com | 92

Alguns  inves5mentos  em  padronização    

www.sensedia.com | 93

Integrar  às  definições  de  governança  

 

www.sensedia.com | 94

Começar  Pequeno  

Avançar  Rápido  

www.sensedia.com | 95

Acompanhamento  no  dia-­‐a-­‐dia                                                                                                            (mentoring)  

www.sensedia.com | 96

Com  esse  direcionamento...  

www.sensedia.com | 97

Aceleração  do  ROI  

ROI  

www.sensedia.com | 98

Organização  e  controle  dos  serviços.  

Não  podemos  perder  mais  oportunidades  de  reuso!  

www.sensedia.com | 99

Mais  fácil  de  construir  

Mais  fácil  de  manter  

www.sensedia.com | 100

Pense  bem  o  seu  próximo  

passo!  

www.sensedia.com | 101

Public  API  

[  Are  you  ready  for    an  interconnected  World?  ]    

www.sensedia.com | 102

The  Internet  of  Things  

Cloud  

www.sensedia.com | 103

2003   2010   2015   2020  

By  2020  there  will  be  7,5  billion    People    on  earth  and  50  billion  Things    connected  

Almost  all  electronic  devices  will  be  connected  to  the  Internet  

The  Internet    of  Things  

During  2008,  the  number  of    Things  connected  to  the  Internet  exceeded  the  number  of    People    on  earth  

=  

People  on  earth   Connected  Things  

www.sensedia.com | 104

Hype  Cycle  for  Emerging  Technologies  

www.sensedia.com | 105

APPs  Applica5on  So�ware  

APIs  Applica5on  Programming    

Interface  

APPs = People Interaction APIs = Things Interaction

www.sensedia.com | 106

APIs  =  

Social

Mobile Cloud

Business  capabili5es  exposed  over  the  internet  for  applica5ons  to  use  

How  connected  the  Mega-­‐Trends  are?  

APIs  =  Amplified  Reach    

Data  services  with  a  cri5cal  mass  of  users  

Pervasive  presence  with  limited  storage  and  processing  

Modern  approach  to  reach  your  customers  

"Make  you  API  useful  and  it  will  be  carried  to  customers  you've  never  met"  

www.sensedia.com | 107

•  Make  Money  ü  60%  of  all  lis5ngs  on  eBay.com  added  via  their  APIs    

(expanding  channels,  more  sales,  more  adver5sing)  

•  Save  Money  ü  SmugMug  saves  >  $500K/year  with  Amazon  S3  Storage  

•  Brand  Building  ü  Google  Maps  300%  growth  vs.  20%  MapQuest  ü  Twi�er  strong  applica5on  ecosystem  

•  Move  to  the  Cloud  ü  Over  50%  of  all  salesforce.com  transac5ons  via  their  API  ü  Companies  exposing  legacy  data  as  API  through  the  cloud  

•  Go  Anywhere  ü  Ne�lix  now  available  on  over  200  devices  

Why  Companies  are  using  APIs?  

www.sensedia.com | 108

API  Growth  Rate  

Based  on  directory  of  6,000  web  APIs  listed  at  ProgrammableWeb,  May  2012    

www.sensedia.com | 109

API  Billionaires  Club  

1.1  billion  API  calls  /  day  (April  2011)  

1.4  billion  API  calls  /  day  (May  2012)  

1  billion  API  calls  /  day  (May  2012)  

1  billion  API  calls  /  day  (Q1  2012)  

1  billion  API  calls  /  day  (January  2012)  

13  billion  API  calls  /  day  (May  2011)  Approx.  75%  of  all  traffic  via  API  

5  billion  API  calls  /  day  (October  2009)  

5  billion  API  calls  /  day  (April  2010)  

Source: ProgrammableWeb Founder John Musser’s

905  billion  S3  objects    (+  1  billion  /  day)  

www.sensedia.com | 110

API  Billionaires  Club  

1.1  billion  API  calls  /  day  (April  2011)  

1.4  billion  API  calls  /  day  (May  2012)  

1  billion  API  calls  /  day  (May  2012)  

1  billion  API  calls  /  day  (Q1  2012)  

1  billion  API  calls  /  day  (January  2012)  

13  billion  API  calls  /  day  (May  2011)  Approx.  75%  of  all  traffic  via  API  

5  billion  API  calls  /  day  (October  2009)  

5  billion  API  calls  /  day  (April  2010)  

Source: ProgrammableWeb Founder John Musser’s

905  billion  S3  objects    (+  1  billion  /  day)  

www.sensedia.com | 111

Ne�lix  Business  Transforma5on  

The  impact  that  NeMlix  business  service  API  availability    had  over  its  market  value  

(compared  to  NeMlix  main  compeNtor,  BlockBuster)  

www.sensedia.com | 112

h�p://developer.ne�lix.com  

www.sensedia.com | 113

Twi�er  Ecosystem  =  Amplified  Reach  

www.sensedia.com | 114

h�p://developers.facebook.com/  

www.sensedia.com | 115

h�p://developer.a�.com  

www.sensedia.com | 116

h�ps://bluevia.com/en/knowledge/APIs  

www.sensedia.com | 117

h�p://www.twilio.com/api  

www.sensedia.com | 118

https://developer.v.me/

www.sensedia.com | 119

h�ps://developer.paypal.com/  

www.sensedia.com | 120

h�p://developer.ny5mes.com/  

www.sensedia.com | 121

h�p://developer.ebay.com/  

www.sensedia.com | 122

Local  Early  Adopters  (?)  

It  doesn’t  seem  so  yet!  Web  services  enabled  Not  truly  scalable  Not  truly  managed  No  engaged  community  (partners)    

www.sensedia.com | 123

API  Business  Models,  by  2012  

Source:  ProgrammableWeb  Founder  John  Musser’s  

www.sensedia.com | 124

Tech  Stuff  •  Some  Best  Prac5ces:  

ü Define  scope  and  value  ü Design  it  simple  and  documented  

ü Run  it  secure,  robust  and  managed  

ü Promote  it  audience  adop5on  and  engagement  

ü Support:  community  and  channels  

•  Some  Tips:  ü REST  first  ü Keep  responses  small  ü Keep  calls  granular  ü For  security  use  OAuth  (not  custom)  

ü Sample  code  to  foster  adop5on  

ü Be  prepared  for  change  

www.sensedia.com | 125

What  about:  

developer.[you].com      

?  

www.sensedia.com | 126

Ques6onário  

[  Arquitetura  de  serviços  ]    

www.sensedia.com | 127

0

6

4

3

0

1

2

3

4

5

6

7

Não sabemos exatamente os

benefícios

Conhecemos os benefícios para a

equipe de TI

Sabemos os benefícios para a área de Negócios

Sabemos os benefícios e temos um plano de ação

1. Sobre os benefícios de SOA para sua empresa

1

6

4

1

0 1 2 3 4 5 6 7

Eu não sei quais são meus serviços

Levantamento de serviços em

diversos pontos (ESB, desktops,

relatórios de projetos, etc)

Planilha ou outra forma não específica

Repositório de serviços

2. Como você sabe quais são seus serviços?

www.sensedia.com | 128

1

5

2

1

0

1

2

3

4

5

6

Eu não sei quais são meus serviços

Temos a informação de quem criou

Temos a informação de quem criou e

quem usa

Sabemos quem criou, quem usou,

quem dá manutenção e o dono atual do

serviço

3. Seus serviços têm responsáveis?

1 1

4

3

0 0,5

1 1,5

2 2,5

3 3,5

4 4,5

Eu não sei quais são meus serviços

Não existe o conceito de status dos serviços, ou

ele existe, ou não existe.

Não acompanhamos o ciclo de vida dos

serviços, sabemos apenas quando identificados e

publicados

Possuímos um acompanhamento

através de workflow ou ferramenta específica

4. Como você controla o ciclo de vida?

www.sensedia.com | 129

0 1

2

6

0 1 2 3 4 5 6 7

Eu não sei se construímos

serviços

Não existem boas práticas, depende

do fornecedor

Existem boas práticas para

implementação de projetos, nada específico para

serviços

Existem boas práticas para

serviços (segurança,

escalabilidade, testes, etc).

5. Existem padrões e boas práticas para construção de serviços

1 2

6

0 0 1 2 3 4 5 6 7

Eu nem sei quais são meu serviços

Eu sei quais são, mas não medimos

nada

Métricas quantitativas (numero de

serviços)

Métricas qualitativas (volume

de chamadas, quantidades de

reúso por projeto, ROI, etc)

6. Que tipo de métricas são extraídas dos seus serviços?

www.sensedia.com | 130

1 0

8

0 0 1 2 3 4 5 6 7 8 9

Eu não sei quais são meus serviços

Análise de impacto não é feita, os

serviços não sofrem manutenção controlada

Análise de impacto feita caso a caso (e

de acordo com informações disponíveis)

Possuímos informações de

rastreabilidade dos serviços, para realização de

análise de impacto

7. Como você faz análise de impacto em situações de manutenção de serviços?

1 0

8

3

0 1 2 3 4 5 6 7 8 9

Não temos middleware SOA

Não sei se temos serviços

Usamos como proxy

Usamos o middleware para

fazer monitoramento, ou

segurança, ou conversão de

protocolos.

8. Como sua empresa usa o Middleware?

www.sensedia.com | 131

•  Você  controla  seus  serviços  de  verdade?  

•  Você  extrai  o  máximo  de  seu  middleware?  

•  Você  vai  precisar  de  API  Governance!  

Takeaways  

www.sensedia.com | 132

&Entre  em  contato  com  a  Sensedia:  Marcilio  Oliveira  –  COO  marcilio.oliveira@sensedia.com    José  Vahl  Jr.  –  Gerente  de  Tecnologia  jose.vahl@sensedia.com    Adilson  CavaN  –  Gerente  de  Negócios  adilson.cava5@sensedia.com    sensedia@sensedia.com  sensedia.com/br  (19)  3705-­‐5775