Paulo Vasconcellos pfvasconcellos@gmail.com Let’s talk about SOA Paulo Vasconcellos pfvasconcellos@gmail.com.

Slides:



Advertisements
Apresentações semelhantes
Desenvolvimento de Sistemas Distribuídos Web Services
Advertisements

UNIPAC – ARAGUARI CAMPUS – IX PROF. EVERTON HIPÓLITO DE FREITAS
ISO Processos do Ciclo de Vida do Software
O Processo Praxis 3.0 Processos de Software 25/03/2017
Integrantes: Arlindo Moreira Carlos Alexandre T. Crivelente
Infra-Estrutura de TI: Hardware e Software
Implementação do CIBAC no SIE usando SOA
Sistemas Distribuídos Web Services
Componentes e Frameworks
Introdução aos Serviços Web
Web Services Erika Hmeljevski Estefania Borm Leonardo Malagoli
SOA e Web Services Aluno: Thiago Caproni Tavares
Processo Desenvolvimento de Software Tradicional
DAS Sistemas Distribuídos para Automação Industrial
Engenharia Reversa É o processo de derivar as especificações lógicas dos componentes do sistema a partir de sua descrição física com auxílio de ferramentas.
Implementação de Sistemas
Cleverson Sacramento Arquitetura Cross-Plataforma para Autenticação e Autorização de Aplicações Comerciais Projeto Rasea.
Visão Geral do Desenvolvimento de Sistemas e Papéis no Desenvolvimento de Software Marcely Dias
SOA - Arquitetura Orientada a Serviços
Introdução a Arquitetura Orientada a serviços
Engenharia de Requerimentos
Middleware e Sistemas Distribuídos
Projetar Serviços Vítor Braga –
Técnicas e Projeto de Sistemas
Arquitetura Orientado a Serviços
Analisar Serviços Vítor Braga – Objetivos da aula Apresentar os passos necessários para realizar a atividade analisar Serviços Discutir.
Fundamentos de Engenharia de SW
Sistema de Monitoramento das Gerências de Serviço do ITIL
Implantando SCRUM na Simplestec Equipe Tributária
Tópicos de Sistemas de Informação A
Web Services Uninorte Semana de Tecnologia da Informação
TECNOLOGIA DE NEGOCIOS
Integrantes Gisely C. Oliveira Marcelo C. Ribeiro Maria Ap. Ferreira Rafael Vaz Walisson Junior Wesley C. Gomes.
iColabora Solução web para gestão de processos de negócios
Prof. Alexandre Vasconcelos
Desenvolvimento Rápido de Aplicação (RAD)
Aluno: Cristiano Levi Arnold Orientador: Alexandre Luís Franco 2009
Desmistificando SOA SERVICE-ORIENTED ARCHITECTURE
Arquitetura SOA e Oracle SOA SUITE
ESB – SOA Aplicações Frank Rodríguez González.
Processo de Aquisição Adilson de Almeida Cezar Meriguetti
Projeto de Arquitetura de Software Visão Geral
O Processo de desenvolvimento de software
Da Introdução à Prática
Representação Arquitetural
RPC and Web Service André Pereira.
RUP - Cap. 4 – Processo Centrado na Arquitetura
METODOLOGIA, MÉTODOS E FERRAMENTAS
Gabriel Bastos Machado
Padrões de Interação com o Usuário
Como elaborar seu currículo? 04/2006 Um currículo bem feito não garante sua contratação mas um currículo mal elaborado elimina-o do processo seletivo.
Equipe Prof. Henrique Freitas
Integrando sistemas através de HTTP + XML. * Muitos processos manuais começam a ser realizados online. * Ferramentas desenvolvidas precisavam ser interoperáveis.
WSDL Web Services Description Language. Tecnologias Relacionadas Web Services SOAP (Simple Object Access Protocol) HTTP (HyperText Markup Language) UDDI.
Abstrações de um Sistema Utiliza um conjunto selecionado de conceitos e regras de forma a focar em aspectos específicos de interesse num sistema. Visão.
Desenvolvimento Global de Software
Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.
Estilos Arquiteturais
SISTEMA DE MONITORAMENTO DA TECNOLOGIA DA INFORMAÇÃO.
WebPTM Web Project and Time Manager Autor: Daniel Nicoletti Orientador: Prof. Dr. Carlos Miguel Tobar Toledo Co-Orientador: Murilo Woigt Miranda PONTIFÍCIA.
Processo de Desenvolvimento de Software Dirigida a Modelos e Orientada a Serviços (SOA/MDE) Vítor Braga –
IF 718 Análise e Projeto de Sistemas Augusto Sampaio Vitor Braga (Estágio docência) Camila Sá (Monitora) Parte do material cedido pela Qualiti Software.
Programa criado em Apoio ao programa: Ministério da Ciência e Tecnologia da Finep Banco Interamericano de Desenvolvimento Universidades e Governo.
SOA SOA – Arquitetura Orientada a Serviços Conceitos e Aplicações
Processos de Software Ludimila Monjardim Casagrande 1º Semestre Desenvolvimento e Qualidade.
1 Especificação de Sistemas de Software e a UML. 2 Modelagem de sistema A modelagem de sistema auxilia o analista a entender a funcionalidade do sistema.
YOUR LOGO Tópicos Avançados em Internet Prof. Lincoln Ferreira Dantas Sistemas de Informação UNIESP – Presidente Epitácio.
Agile Modeling Júlio Lins – Junho / 22 Agile Alliance Em 2001, reune-se um grupo de representantes das metodologias eXtreme Programming, SCRUM,
Web Services / SOA. O cenário de TI nas corporações Novas tendências batiam à porta das corporações Migraram o foco do “gerenciamento de dados” para o.
Apresentação. 2 Resumo  Posicionamento do XEO  Introdução ao XEO  Principais Referências  Environment  Arquitectura  Desafio.
Transcrição da apresentação:

Paulo Vasconcellos pfvasconcellos@gmail.com Let’s talk about SOA Paulo Vasconcellos pfvasconcellos@gmail.com

Agenda Motivação Conceitos Básicos O Programa SOA Projetos SOA Comitê Gestor Processos e Ferramentas Projetos SOA Equipes Processo de Gestão e Desenvolvimento Primeiros Passos Debate! Fact Sheet: Objetivos: Apresentar SOA Debater SOA Trocar Dicas Duração: 90’ – Apresentação ∞’ – Debate Censura: Livre Contra-indicações: Fundamentalistas Disléxicos (s/ note) Enxadristas (c/ cel)

Motivações (aka ‘Promessas’) Alinhamento Estratégico com o Negócio Agilidade na Implementação de Mudanças Redução de Custos Clareza = Simplicidade Simplificação das Estruturas de TI Valorização dos Ativos Existentes Independência de Tecnologias.. ..e Fornecedores Alinhamento: TI agrega real valor ao plano de negócios; Não resiste às mudanças; Combate a resistência às mudanças; e É planejado. The Squandred Computer Paul Strassmann IEP (1997)

Breve História do Spaghetti China, 400 A.C. Marco Polo trouxe para o ocidente. Imigrantes italianos trouxeram para Sampa. TI levou para as empresas.

SOA – Service-Oriented Architecture Processo de Negócio Meta-Aplicações SOA: É uma estratégia que propõe a organização dos ativos de software de forma que eles possam representar Processos, Atividades ou Tarefas de Negócio de forma direta. Tais representações são chamadas de Serviços, que devem ser baseados em padrões e facilmente combinados e reutilizados visando a satisfação dos requerimentos do negócio. Serviços

SOA – Elementos Básicos Meta-Aplicações Front-End Características: Acoplamento fraco dos serviços; Independência de tecnologia e protocolos; Uso irrestrito de padrões; e Incentivo à reutilização de ativos. Serviço Serviço Serviço Repositório ESB (Enterprise Service Bus) SOA

ESB – Enterprise Service Bus Serviço Front-End Meta-Aplicações Função: Interconectar todos os participantes de uma SOA, abstraindo a complexidade técnica que existe nas camadas inferiores. ESB (Enterprise Service Bus) MQ Series ERP CRM Mainframe CICS Servidor de Aplicações JavaEE Servidor de Aplicações .Net BizTalk HTTP/SOAP JCA

Repositório de Serviços Front-End Meta-Aplicações Função: Armazenar todos os Contratos de Serviços disponíveis, o que o torna o ponto de partida para utilização destes. Outras informações: Localização Restrições Níveis de Serviço Condições Comerciais Repositório Contratos de Serviços WSDL – Web Services Description Language WS-Policy WS-Security WS-BPEL – Business Process Execution Language WS-CDL – Choreography Description Language WSLA – Web Service Level Agreements

Serviços Repositório ESB SOA Serviço Descrição: Lógica Dados Contrato Componentes de software que representam um processo, atividade ou tarefa de negócio. São componentes de alto nível, orientados ao negócio. Dados Lógica Contrato Repositório Interface ESB SOA

Relacionamento entre Elementos Básicos Usuário Meta-Aplicação Busca Chama Serviço Racional: ACOPLAMENTO FRACO ! [Loosely Coupled] Dados Lógica Descreve Satisfaz Representa Contrato Repositório Interface Baseia-se ESB SOA

Tipos de Serviços Negócio Serviços Processo de Negócio Processo Tipos: (Público) Processo de Negócio Sub-Processos Tipos: Processo: representa de forma direta uma Atividade ou Processo de Negócio. É Público quando ultrapassa as fronteiras da empresa. Intermediário: Pontes, conversores ou funcionalidades adicionais (tecnologia). Básico: representa elementos básicos como Entidades e Tarefas de Negócio. Atividade Intermediário Tarefas Básico

O Programa SOA SOA é uma iniciativa de longo prazo (3 – 5 anos); Que compreende a execução de dezenas ou centenas de projetos; Projetos que devem respeitar Estruturas, Processos e Padrões; Além (ou apesar) de adotarem integralmente o conceito de “Acoplamento Fraco” que caracteriza os Serviços. Agenda: Motivação Conceitos Básicos O Programa SOA Projetos SOA Primeiros Passos Debate

O Comitê Gestor Gestor do Programa Engenheiro do Processo Atribuições: Desenho da Arquitetura Padrão; Implantação e revisão das Estruturas, Processos e Padrões; Acompanhamento de todos os Projetos; Manutenção do Plano Estratégico e Foco; Evangelização; Garantia do apoio e participação das áreas de negócio. Arquiteto SOA Arquiteto de Negócio Gestor da Biblioteca de Ativos Arquiteto Front-Ends Arquiteto Serviços Gestor da Infra-estrutura Tecnológica

Processos & Ferramentas Gestão: Meta-Scrum Administração do Portfólio: Mapas Estratégicos Gestão de Ativos: Reusable Asset Specification (RAS) Desenho da Arquitetura: Model Driven Architecture (MDA) Requisitos: Promover Agilidade Absorver Mudanças Respeitar Arquitetura Incentivar o Reuso Facilitar a Comunicação

Iniciativas Estratégicas Mapas Estratégicos Serviço Processo de Negócio Atividade Atividade Iniciativas Estratégicas Descrição Básicos Ativo [Nota] Intermediários Processos Públicos Ativo * Referência: Mapas Estratégicos Kaplan & Norton Editora Campus (2004) X ?  

Classificação de Ativos (Legado) Aposentar Abstrair [SOA] Outros Fatores: Idade do Ativo Tecnologia Relevância Estratégica Prontidão (Mapas Estratégicos) Custo da Troca Custo Total de Propriedade (TCO) Tolerar Abstrair [SOA] Potencial de Reuso

Model Driven Architecture (MDA) Mapas dos Processos De Negócio Referência: “MDA Guide V1.0” OMG – (2003). (http://www.omg.org/mda) Platform Model (PM) Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM)

Os Projetos SOA Projetos são de pequeno porte (2 – 8 semanas); Exceto o projeto de implementação do ESB, que deve evoluir gradualmente e pode durar meses; Proximidade com as áreas de negócio é fundamental para o sucesso; Assim como a aderência aos padrões; E a Agilidade da Equipe e dos Processos de Gestão e Desenvolvimento. Desafios: Agilidade “Meet in the Middle” Concorrência Inter-dependência

Coordenador do Projeto Formação de Equipes Arquiteto [Dono do Serviço] Equipe “Scrum”: Analogia “Rally” Arquiteto=Navegador CP=Piloto CP=“Limpa Trilhos” Coordenador do Projeto Analista de Negócio Apoio + CQ Desenvolvedor Front-Ends Desenvolvedor Serviços

Help Wanted :: Architects Domínio de Arquiteturas Corporativas, SOA, JavaEE e/ou Microsoft .Net; Experiência em todo o ciclo de vida de implementação (requerimentos, modelagem, codificação, integração e testes); Experiência no projeto e implantação de arquiteturas n-camadas; Fluência em padrões, tecnologias e ferramentas web services (XML, SOAP, WSDL, UDDI, BPEL etc); Forte background em computação distribuída (CORBA, RPC, DCOM, RMI); Familiaridade com sistemas de mensagens é um plus (Tibco, MQ, SeeBeyond, BizTalk); Conhecimento de padrões WS-*. Outros Requisitos: Pensamento Estratégico; Comunicação Verbal e Escrita; Um mínimo de 10 anos de experiência em desenvolvimento de sistemas. Oportunidades: Arquiteto SOA Arquiteto Serviços GBA Arquiteto Info Arquiteto ESB Coreógrafo (?!?) CP Scrum

Processo de Gestão e Desenvolvimento Referências: Enterprise Unified Process (EUP) Scrum eXtreme Programming Scott Berkun Scrum!

Scrum - Overview Características: Iterativo Incremental Cooperativo Direto Adaptável Escalável Orientado pela Arquitetura Incentivador do Reuso de Ativos

Iniciação / Elaboração >> Sprint >> Scrum 4 SOA Projects Iniciação / Elaboração Construção Transição Planejamento Contrato Backlog do Serviço Padrões SOA Prioridades Estimativas Certificação Testes do Serviço Testes de Integração Publicação Backlog do Sprint Metas do Sprint Contrato: Em tempo de Desenvolvimento: Estimativas Plano de Desenv. Plano das Iterações Paralelismo (Dependências) Plano de Testes Plano de Publicação >> Sprint >>

Sprint Front-End Serviço Referências: Testa a aplicação Implementa a Gera ‘Serviço’ para testes Referências: jeffsutherland.com controlchaos.com Front-End Libera Integra Testa Analisa Planeja Define Libera Serviço Gera ‘Cliente’ para testes Testa o Serviço Implementa o Serviço

SOAD – Service-Oriented Analysis and Design Classificação e Agregação de Serviços Questões “Contratuais” (WS-*) Processo “Meet-in-the-Middle” “Descoberta” de Serviços Questões Semânticas (significado dos parâmetros “contratuais”) BPM (Business Process Modeling) Coreografia de Serviços OOAD: Encapsulamento Polimorfismo UML

Primeiros Erros Discutir uma “Definição” de SOA Confundir Web Services com SOA Deixar SOA exclusivamente nas mãos de TI Achar que se pode comprar SOA de um fornecedor Construir SOA “do zero” Usar um processo “waterfall” Tornar SOA um “bicho de 7 cabeças” Fonte: ZAPFLASH-200531 (www.zapthink.com) Agenda: Motivação Conceitos Básicos O Programa SOA Projetos SOA Primeiros Passos Debate

Primeiros Passos [Profissional] Arquiteto Arquitetura de Sistemas SOA, MDA, SOAD, ... Desenvolvedor SOAP, WS-*, UDDI, ... Coordenador Processos Ágeis Bibliotecário (GBA) RAS Reuso Estratégico de Ativos de Software Coreógrafo BPM, BPM, BPEL, WS-BPEL, ... Referência: Enterprise SOA Dirk Krafzig et al Prentice-Hall (2005)

Primeiros Passos [Empresa] Identificar 1 (um!) processo de negócio que: Componha o ‘core business’ Seja ‘nervoso’ (volátil) Tenha relevância na cadeia de valor Esteja ‘mal-atendido’ por TI (e esteja no backlog de manutenção!) Identificar e Classificar todos os prováveis Serviços Aferir capacidade de reuso dos prováveis Serviços Avaliar: Projeto SOA (overhead reuso) X Tradicional Redução do Custo de Propriedade Rabiscar um “Plano Arquitetônico” Definir um “Rabisco de Processo” Bancar o primeiro “Projeto SOA”!

SO? finito-log.blogspot.com [ Finito ] Contato: Paulo Vasconcellos pfvasconcellos@gmail.com finito-log.blogspot.com [ Finito ] pfvasconcellos.blogspot.com [ Graffiti ] Agradecimentos: Brás & Figueiredo Alessandro Almeida Adilson Somensari Anhembi-Morumbi UniFIEO Uniban Guz Vasconcellos Anderson Pontes Luis Felipe Braga Djalma Gomes Renato Ferracini Grupo CMM-Brasil Ivo Michalick Trabalho liberado sob Licença Creative Commons. Você pode: Copiá-lo, Distribuí-lo, Exibí-lo e Trabalhar com ele; e Criar outros trabalhos à partir deste. Sob as seguintes condições: Creditar o autor original. Não utilizá-lo com fins comerciais. Se alterá-lo ou extendê-lo, tornar disponível sob estas mesmas condições.