Neste artigo será apresentado como fazemos análise orientada a serviço, visando atender as necessidades de um sistema de “e-commerce”. Será apresentada uma lista de funcionalidades do site “exemplo”, para melhor entender o processo vamos determinar três recursos a serem discutidos, desenhar um processo, identificar seus serviços candidatos e desenhar o fluxo com seu atributo (área).

Este artigo tem como objetivo fazer o estudo e análise orientada a serviço de um case simulando o negócio de uma loja virtual, buscando compreender um processo baseado na arquitetura orientada a serviços (SOA).

Funcionalidades

A loja virtual tem as seguintes funcionalidades a serem atendidas pelo sistema:

  • Informações dos Produtos
  • Destaques de Produtos em Promoção
  • Cadastro de Clientes
  • Cadastro de Fidelidade
  • Extrato de Compras por Cliente
  • Cadastro de Produtos
  • Consulta de Produtos
  • Efetuar Pedidos
  • Compra de Produto
  • Carrinho de Compras
  • Cancelamento de Pedido
  • Cancelamento de Produto
  • Pagamentos de Pedido
  • Acompanhamento do Pedido
  • Lista de Casamento
  • Lista de Desejos

Itens escolhidos

Selecionamos essas três funcionalidades para fazer a análise orientada a serviço:

  • Consulta de Produtos
  • Comprar Produtos
  • Carrinho de Compras

Detalhe das funcionalidades

Primeiro ponto é fazer uma descrição sucinta de cada funcionalidade para entender quais recursos a mesma deve oferecer.

Consulta de Produtos

Através deste recurso, o cliente poderá consultar um produto filtrado por categoria. Este filtro estará codificado na pagina web e será customizado por tipo de categoria. As informações disponíveis do produto devera conter suas características que serão definidas por categoria, feedback de cliente e preço.

Carrinho de Compras

Através deste recurso, o cliente poderá criar uma lista de produtos selecionados para compra. Esta lista deve disponibilizar informações resumidas do produto e calcular quantidade e valor da compra referente aos produtos selecionados.

Compra de Produtos

Através deste recurso, o cliente poderá comprar os produtos de sua lista de compra (carrinho). Para finalizar a compra dos produtos o cliente deve informar a forma entrega o sistema calcula o preço final, o cliente escolha a forma de pagamento e a compra é finalizada. O Cliente recebe um e-mail com a situação do pedido e um link para acessar a funcionalidade de acompanhamento do pedido.

Consulta Produtos - processo

A imagem abaixo representa como deve ser feito a análise do processo para identificar os serviços candidatos:

análise do processo para identificar os serviços candidatos

Após identificar os serviços candidatos devemos definir os serviços que serão desenvolvidos:

serviços que serão desenvolvidos

Após definir os serviços devemos ilustrar as área que interagem com o mesmo e definir a entrada e saída de informação desse serviço.A mesma ideia será aplicada nas próximas funcionalidades.

Carrinho de compras - Processo

Identificação de serviços candidatos:

Identificação de serviços candidatos

Definir serviços:

Definir serviços

Compra de produtos – processo

Identificar serviços candidatos:

Identificar serviços candidatos

Definir serviços:

Definir serviços
Definir serviços

Mapas de Serviços

Após fazer a análise de processo dos serviços devemos preparar o mapa para localização dos serviços:

preparar o mapa para localização dos serviços

Áreas responsáveis

Pronto com o mapa registrado só falta atribuir ao serviços seus donos, ou seja, áreas responsáveis pela necessidade do serviço:

áreas responsáveis pela necessidade do serviço

Conclusão

Com esse artigo podemos concluir que o desenvolvimento de um software baseado em serviços pode trazer maior organização na área de TI. Dentre as vantagens podemos destacar a regra de cada recurso ter seu próprio dono e o reaproveitamento das funcionalidades definindo um melhor gerenciamento dos recursos e segurança da informação.

Espero ter ajudado a clarear melhor o que é uma análise orientada a serviço para atender uma arquitetura SOA.