Mind map
Engenharia de Software Orientada a Serviços
Map content
Engenharia de Software Orientada a Serviços
Arquiteturas Orientadas a Serviços
- O serviço é o bloco de construção principal de um software orientado a serviços
- Serviços são módulos independentes e autocontidos que oferecem funcionalidades de negócio específicas.
- O fornecimento do serviço (e sua manutenção) é independente da aplicação que o usa
- Sistemas de Gestão da Cadeia de Suprimentos muitas trocas de informações entre empresas.
- Servidor/Provedor
- Prestador de um serviço.
- Possui interface publicada com a descrição dos serviços prestados.
- Cliente/Consumidor
- Solicita (consome) serviços de um provedor.
- Cada serviço Web deve ser identificado por uma URI (Uniform Resource Identifier).
- A comunicação entre os serviços Web ocorre via protocolos como o SOAP (Simple Object Access Protocol).
- Os serviços se beneficiam com o desenvolvimento da computação “em nuvem”.
Serviços como componentes reusáveis
- Os padrões de serviços-web são, essencialmente, um modelo de componentes, como Corba, EJB etc.
- Um serviço é um componente de software com baixo acoplamento, reusável, que encapsula funcionalidade discreta, que pode ser distribuída e acessada por meio de programas.
- Têm apenas interfaces “provides” e não possuem interfaces “requires”.
- Componentes vs Serviços
- São auto-contidos
- São unidades de composição com interfaces bem definidas
- São altamente reusáveis
- Serviços devem ser mais fracamente acoplados do que os componentes
- Os componentes podem ser instalados fisicamente na máquina de seus clientes/consumidores enquanto os serviços são acessados apenas remotamente
- WSDL
- Tem uma parte introdutória que define namespaces de XML e outras descrições.
- Descrição (opcional) dos tipos de mensagens
- Descrição da ligação usada pelo serviço. O default é o SOAP.
- Descrição das interfaces
- Descrição das entradas e saídas
Engenharia de serviços
- É o processo de desenvolvimento de serviços para reuso nas aplicações orientadas a serviços.
- Os engenheiros devem assegurar que o serviço desenvolvido representa uma abstração reusável que poderia ser útil em diversos sistemas
- Esse processo inclui a documentação e registro do serviços
- É o processo de desenvolvimento de serviços para reúso em aplicações orientadas a serviços.
- Identificação de serviço candidato
- Utilitário
- funcionalidades gerais que podem ser usadas por diferentes serviços
- De negócios
- serviços associados a uma função (funcionalidade) específica de negócio.
- De coordenação ou de processo
- apoiam processos amplos que geralmente envolvem diferentes atores e atividades.
- Envolve a compreensão e análise dos processos de negócio de uma organização para decidir quais serviços reusáveis são necessários para apoiar os processos
- O resultado do processo de identificação é uma lista de serviços candidatos e seus requisitos funcionais e não funcionais
- Não existe uma fórmula pronta para definir o que é e o que não é um serviço
- Utilitário
- Projeto de interface do serviço
- Projeto de interface lógica
- identificação das operações associadas ao serviço, as entradas e as saídas, e as exceções
- Projeto de mensagem
- estruturação das mensagens enviadas e recebidas pelo serviço
- Criação da interface
- tradução do projeto lógico e das mensagens para uma descrição abstrata escrita em WSDL.
- A tarefa de gerenciar estado é de responsabilidade do usuário do serviço. Por isso pode ser necessário passar essas informações nas mensagens.
- Depois de selecionar os serviços candidatos deve-se projetar as interfaces dos serviços.
- Projeto de interface lógica
- Implementação e implantação de serviço
- A implementação de um serviço pode ser feita em diversas linguagens.
- A linguagem em que o serviço é desenvolvido geralmente não importa para o cliente final, pois a comunicação é feita via rede e com protocolos padronizados
Desenvolvimento de software como serviço
- Baseia-se na idéia de compor e configurar serviços para criar um serviço composto (composição).
- Os serviços envolvidos em uma composição podem ser:
- criados especificamente para a aplicação
- desenvolvidos por uma empresa de serviços de negócios
- reusados de um provedor externo
- Estágios no processo de construção de um serviço composto (ou uma aplicação):
- Formular esboço de workflow
- Descobrir serviços
- Selecionar serviços
- Refinar workflow
- Criar programa de workflow
- Testar serviço
Information
- Description
- Ciência da Computação Mind Map on Engenharia de Software Orientada a Serviços, created by Rômulo Miqueias da Silva Soares on 26/08/2021.
- Created by
- Rômulo Miqueias da Silva Soares · Aug 2021
- Updated
- Aug 27, 2021
- Views
- 0
- Rating