Estudo de Caso - Arquitetura Orientada à Serviço
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

Estudo de Caso - Arquitetura Orientada à Serviço

  • 7,850 views
Uploaded on

Artigo apresentado no curso de Sistemas de Informação abordando um estudo de caso de uma empresa que adotou os princípios de SOA.

Artigo apresentado no curso de Sistemas de Informação abordando um estudo de caso de uma empresa que adotou os princípios de SOA.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
7,850
On Slideshare
7,835
From Embeds
15
Number of Embeds
3

Actions

Shares
Downloads
157
Comments
0
Likes
2

Embeds 15

http://www.linkedin.com 7
http://www.lmodules.com 6
https://www.linkedin.com 2

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. SOA – ARQUITETURA ORIENTADA A SERVIÇOS Um estudo de caso Jean Rozan Streleski, Carlos Gustavo Hisamitsu de Oliveira Universidade Estadual Paulista "Júlio de Mesquita Filho" – UNESP Campus Bauru/SP – 2009 Resumo: Este artigo apresenta o estudo de caso de uma empresa fornecedora de serviços B2B para a área farmacêutica onde a adoção de conceitos de SOA – Arquitetura orientada a serviços, puderam aproximar a área de TI das áreas de negócio, alavancar novos negócios, colaborando para o aumento de faturamento da empresa. Palavras-chave: SOA, Serviços, B2B 1. Introdução A competitividade vivida atualmente pelas empresas vem desafiando a lógica tradicional dos negócios, aquela baseada em processos de produção e serviços quase que estáticos. Nesta nova ordem a necessidade por inovação em produtos e serviços se torna fator indispensável para a sobrevivência das empresas. Muito mais que ser reativa a mudanças, as corporações precisam de agilidade na gestão do seu negócio. Para tanto é essencial a perfeita sincronia com uma área de TI também ágil e participativa na criação de produtos e serviços. E uma das principais propostas para este cenário é a utilização de conceitos de SOA – Arquitetura Orientada em Serviços. O objetivo deste artigo é apresentar um estudo de caso de uma empresa cujo principal serviço é oferecer a empresas do mercado farmacêutico um portal B2Bi para transações entre redes de farmácias, distribuidores e indústria. Esta empresa utilizou-se dos conceitos de arquitetura orientada à serviços para que pudesse responder rapidamente às necessidades de negócio dos seus clientes, viabilizar a conquista de novos clientes, colaborando para o aumento de faturamento da empresa. Antes de falarmos em SOA é necessário conceituar serviço. Segundo, Christian Gronroos (Service Management and Marketing, 1990) serviço é uma atividade de natureza mais ou menos intangível, que normalmente ocorre em iterações entre consumidores e empregados ou sistemas de um fornecedor. Estes são oferecidos como soluções para os problemas do consumidor. Complementando este conceito, James Fitzsimons (Administração de Serviços, 2008) define serviço com uma experiência perecível, intangível, desenvolvida para um consumidor que desempenha um papel de co-produto ao acessar um serviço. SOA vem de encontro ao conceito de serviço quando permite que a as funções de negócio de uma empresa estejam totalmente acessíveis a qualquer um dos seus consumidores por meio de componentes de TI. Estas funções de negócio oferecem um baixo acoplamento e permitem a independência total em relação ao cliente que está acessando o serviço. A Microsoft (SOA in the Real World, 2007) conceitua SOA como uma arquitetura de baixo acoplamento desenhada para ir de encontro às necessidades de
  • 2. negócio da organização. Complementando este conceito, Wiley (Service Oriented Architecture for Dummies, 2007) define que SOA permite ao negócio tomar decisões de negócio SUPORTADAS pela tecnologia ao invés de tomar decisões LIMITADAS pela tecnologia. É factível, portanto que a adoção de SOA pode colaborar para que a TI possa ser finalmente considerada como estrategicamente alinhada ao negócio. 2. Revisão de Bibliografia Existem diferentes definições para o conceito de serviço. Grönroos (Service Management and Marketing, 1990) e outros estudiosos destacam a natureza do processo de serviços. Ele define o conceito de serviço como uma atividade ou uma série de atividades de caráter mais ou menos intangível que normalmente, mas não necessariamente, realiza-se na interação entre o cliente e empregados e/ou recursos físicos ou bens e/ou sistemas do prestador de serviços, que são fornecidos como soluções para os problemas do cliente. Diferente das atividades dos outros setores da economia, a entidade consumidora dos bens resultantes do setor de serviços contribui durante o desenvolvimento do bem, não necessariamente durante todo o processo. Como descrito por James Fitzsimons (Administração de Serviços, 2008), podemos dizer que um serviço é "uma experiência perecível, intangível, desenvolvida para um consumidor que desempenha o papel de co- produtor." Uma definição para o conceito de serviços mais concisa é sugerida por Vargo e Lusch (A Service-Dominant Logic of Marketing, 2006). Eles definem serviços como a aplicação de competências (conhecimentos e habilidades), através de ações, processos, e performances para o benefício de outra entidade ou a si próprio. A partir da definição de serviço, é possível passar a falar de um arquitetura orientada à serviços. SOA pode ser compreendido como uma arquitetura que possui um conjunto de padrões, princípios, e orientações que englobam desde uma visão de negócio até as possíveis soluções tecnológicas. Com muito fundamento Wiley (SOA for Dummies, 2007) relata, que “SOA permite ao negócio tomar decisões de negócio suportadas pela tecnologia ao invés de tomar decisões de negócio DETERMINADAS ou LIMITADAS pela tecnologia”. Willey (SOA for Dummies, 2007) afirma que SOA é muito mais do que uma série de produtos vendidos pelos grandes players do mercado. SOA representa uma dramática mudança no relacionamento entre negócio e TI. SOA permite que a tecnologia seja responsável por atender com agilidade à novas necessidades de negócio e, em muitos casos, até mesmo criar novas possibilidade de negócio. A TI deixa de ser apenas responsiva e passa a ser ativa. A Microsoft (SOA in the Real World, 2007) conceitua SOA como uma arquitetura de baixo acoplamento desenhada para ir de encontro às necessidades de negócio da organização. Ela resume que: • “Arquitetura orientada a serviços é uma estrutura (framework) para integrar processos de negócio e a infra-estrutura de TI que o suporta, na forma de componentes seguros e padronizados – serviços – que podem ser reutilizados e combinados para endereçar as mudanças de prioridade do negócio”.
  • 3. Peter Herzum e Oliver Sims (Business Componente Factory – Microsoft, 1999) alertaram analistas e peritos da indústria tem confundido o conceito de SOA com o de implementações orientadas a serviço. Esse tipo de confusão pode criar resultados caóticos e imprevisíveis. Artigos que tentam explicar SOA e abordam simplesmente como construir Web Services, estão na verdade provendo uma forma de criar soluções técnicas e não soluções arquiteturais. SOA deve auxiliar a área de TI a responder as mudanças de mercado de forma ágil, caso contrário a TI se torna um gargalo e não uma área que auxilia o desenvolvimento da organização. Portanto, SOA é uma filosofia arquitetural e não necessariamente um conceito implementável. Partindo deste pontos, é importante conceituar que: 1. SOA do ponto de vista do negócio: Arquitetura orientada a serviço é uma maneira de implementar os processos de negócio da empresa na forma de funções bem definidas, flexíveis e reutilizáveis chamadas de serviços. 2. SOA do ponto de vista de TI: Arquitetura orientada a serviço é uma arquitetura que permite a automação de processos de negócio da empresa através da integração de diversos componentes com funções bem definidas, chamados de serviços. SOA possui como base tecnologias WebServices e BPM, tendo como característica prioritárias a aderência a padrões, agilidade, flexibilidade, reutilização, interoperabilidade e alinhamento ao negócio. Modelos de abstração são idéias, funcionalidades e documentações no nível de detalhe mais adequado. Segundo, Kirsten Vandersluis (The Benefits of a Data Abstraction Layer for SOA,2008) e Antônio Benedete (Roteiro para a definição de uma arquitetura SOA utilizando BPM, 2007) as camadas de abstração SOA podem ser melhor entendias da seguinte forma:  Camada Corporativa: Camada que se preocupa em gerar um modelo responsável por descrever o negócio da empresa. Esse modelo é capaz de identificar os processos de negócio chaves que trazem vantagem competitiva para a empresa, e os processos de negócios que sustentam a organização.  Camada de Processos: Camada que identifica e caracteriza os processos de negócio. Cada processo pode ser composto por sub-processos e tem como responsabilidade atender a uma determinada área funcional. Os sub-processos podem ser decompostos para expor suas dependências da camada de serviço. É errado pensar que processo e serviço são a mesma coisa. Processos são definidos uma única vez, e usados dentro de um contexto único, já os serviços, podem ser construídos dentro de processos de negócio e são criados para estarem disponíveis para o consumo de usuários, sistemas e outros serviços.  Camada de Serviços: Camada que tem como responsabilidade mapear os serviços que compõem as funcionalidades básicas, técnicas e de negócio. A equipe de negócio identifica as necessidades críticas de negócio, enquanto a área de TI cria soluções técnicas para atender aos requisitos de negócio.  Camada de Componentes: Camada que mapeia os componentes que possuem potencial para se transformarem em serviço, é comum se utilizar a metodologia bottom-up (parte-se da visão de criar aplicações que contém potencial para serem utilizadas em outros contextos de negócio).
  • 4. Componentes são blocos de construção de serviços na arquitetura SOA.  Camada de Objetos: Camada responsável por identificar e caracterizar uma grande quantidade de classes de objetos, seus atributos e relacionamentos. A partir da abordagem por camadas, é provada a teorização de Wiley (SOA for Dummies, 2007) que afirma que SOA exige uma drástica mudança no relacionamento entre áreas. A iniciativa SOA parte da camada corporativa, aquela que até então não participava de iniciativas da área de TI e vai até a camada de mais baixo nível, a camada de objetos tecnológicos. 3. Método de Pesquisa Segundo YIN R. (2001), o estudo de caso representa uma investigação empírica e compreende um método abrangente, com a lógica do planejamento, da coleta e da análise de dados. Pode incluir tanto estudos de caso únicos quanto múltiplos, assim como abordagens quantitativas e qualitativas de pesquisa. O estudo de caso tem como objetivo retratar a realidade de uma forma completa e transparente, revelando fatos que envolvem e determinam os diversos momentos da realidade estudada, utilizando diversas fontes de evidências. Esse método de pesquisa não aceita um roteiro rígido para a sua delimitação, mas é possível definir quatro fases que mostram o seu delineamento: delimitação da unidade-caso; coleta de dados; seleção, análise e interpretação dos dados; elaboração do relatório (GIL AC., 1995). Neste estudo de caso foram identificados como elementos de análise dificuldades e soluções da adoção de SOA na empresa. Utilizou-se como instrumento de pesquisa um roteiro para uma entrevista semi-estruturada, com questões abertas. Por tratar-se de uma pesquisa qualitativa, deve-se ter claras as limitações deste tipo de pesquisa, principalmente quanto ao número de empresas estudadas, restringindo a generalização dos resultados obtidos. O estudo foi dividido em quatro fases: Fase 1: estudo da base teórica de Arquitetura Orientada a Serviços - SOA. Fase 2: desenvolvimento de um estudo de caso em uma organização que utiliza os conceitos de SOA. As informações contidas no estudo de caso foram levantadas através de entrevistas realizadas com um gerente de negócios e o gerente responsável pela área de TI da empresa. Fase 3: realização de análises críticas sobre os dados coletados nas fases anteriores (teórica e empírica). Fase 4: descrição de como os conceitos de SOA estão sendo utilizados na organização entrevistada. 4. Estudo de Caso A empresa objeto deste estudo de caso tem como seu principal produto um portal B2Bi para o mercado farmacêutico intermediando as transações entre redes de farmácias, distribuidores e a indústria. Atualmente atende clientes de dez estados
  • 5. brasileiros. Tem aproximadamente 100 redes de farmácias, totalizando aproximadamente 400 PDVs (Pontos de Venda) e cerca de 300 fornecedores cadastrados em sua base de usuários, entre distribuidores e fabricantes. Por atuar como facilitadora das relações entre compradores e fornecedores, os consultores da empresa se deparavam com uma grande variabilidade de processos de negócio nos clientes, caracterizando assim um ambiente de constantes mudanças e customizações na plataforma. O contato com cenários de negócios tão variados originava grandes oportunidades de criação de novos serviços que resultariam em um aumento no faturamento da empresa. A demanda gerada na criação de novos serviços encontrava pouca agilidade na resposta da área de TI da empresa. Existia uma grande dificuldade em compor processos de negócios de maneiras diferentes ao inicialmente planejado. Existia uma orientação da arquitetura do sistema a funcionalidades. Além deste problema, a tecnologia utilizada na primeira versão da plataforma impedia que este cenário fosse revertido. Desta forma, novos negócios eram, em muitos casos, limitados ou até mesmo cancelados devido a questões tecnológicas. A partir deste cenário, tornou-se altamente estratégico reformular a arquitetura do sistema visando a agilidade e o alinhamento às iniciativas de negócio. O planejamento pelo novo sistema teve a iniciativa da alta direção da empresa, juntamente com a área de TI e contou com bons aportes de investimento em treinamentos para equipe, consultorias e infra-estrutura. O trabalho da TI da empresa com uma consultoria especializada resultou na indicação do uso de uma arquitetura orientada à serviços para a mudança do cenário. Sendo esta uma iniciativa estratégica da empresa, a área de TI trabalhou em conjunto com a área de negócio da empresa de forma a realizar um mapeamento das funcionalidades do sistema antigo para um modelo na forma de processos de negócio, com entradas, transformações e saídas bem definidas. O mapeamento de todos os processos possibilitou que a empresa identificasse quais etapas dos processos poderiam ser consideradas serviços, gerando um modelo conceitual, denominado catálogo de serviços. Embora ainda não construídos na forma de TI estes serviços tinha características como independência de quem acessa, baixo acoplamento e possibilidade de ser composto em diversas maneiras diferentes. O próximo passo foi a seleção de uma tecnologia adequada para o desenvolvimento dos serviços. Apesar dos grandes autores afirmarem que não é necessária a troca de tecnologia para adoção de SOA (Microsoft – SOA in the Real World, 2007), a tecnologia utilizada para a primeira versão do sistema não apresentava mais condições de crescimento e possibilidade de alteração para um modelo orientado à serviço. Sendo assim, a segunda grande ação da empresa foi reformular o alicerce da plataforma em uma nova tecnologia que permitisse a aplicação dos conceitos de SOA. Esta etapa contou com um investimento em treinamento especializado para a equipe interna. O projeto de reformulação do alicerce foi acompanhado de perto por consultores especializados em SOA, somado a constantes treinamentos da equipe. Este trabalho resultou na criação da camada de componentes de negócio da empresa, contendo os serviços anteriormente identificados.
  • 6. Seguindo o modelo sugerido pela Gartner (The Gartner SOA Adoption Model. EUA: Gartner, 2006.) a empresa optou por implantar SOA apenas nos processos prioritários, àqueles que poderiam aumentar o retorno sobre investimento mais rapidamente. Este trabalho contou com uma grande colaboração da área comercial da empresa, que detinha a informação de quais oportunidades de negócios deveriam ser atendidas com prioridade. Conforme o alicerce tecnológico era criado e os serviços eram criados, os clientes eram migrados da plataforma antiga para a nova. O novo modelo passou a possibilitar que processos de negócio fossem facilmente compostos por meio da orquestração dos serviços disponíveis. Atualmente, através de poucas e ágeis intervenções na plataforma, qualquer processo de negócio, mesmo àqueles com grandes particularidades, passaram a ser possíveis na plataforma. Os benefícios da aplicação de SOA se tornaram evidentes recentemente quando a empresa passou a fechar novos e lucrativos negócios baseados na integração da plataforma B2Bi da empresa ao sistema ERP dos seus clientes. Os serviços passaram a ser acessados remotamente, caracterizando perfeitamente o conceito de serviço, conforme conceituação de James Fitzsimons (Administração de Serviços, 2008). Desta forma, grandes clientes que tinham resistência na utilização de um sistema fora de seu ambiente tecnológico, passaram a ter acesso a todos os serviços da plataforma dentro do seu ERP. Esta etapa exigiu um investimento em um produto especializado na infra- estrutura de integração entre sistemas, denominado ESB (Enterprise Service Bus). A aplicação de SOA nas soluções da empresa, embora atualmente consolidado gerou a demanda por um constante monitoramento nos processos e serviços, visando a constante otimização destes. Para isto, neste momento a empresa está considerando o investimento em uma solução baseada nos conceitos de BPM (Business Process Management). 5. Conclusão A partir deste estudo de caso, é possível visualizar claramente que a aplicação dos conceitos de SOA pode colaborar diretamente em maior agilidade na resposta da área de TI às iniciativas de negócio da empresa. Entretanto, é importante notar que a iniciativa SOA impactará em mudanças significativas na estrutura de negócios da empresa, demandando profissionais mais bem preparados, conforme bem notou Willey ao afirmar que SOA representa uma dramática mudança no relacionamento entre negócio e TI (SOA for Dummies, 2007). As áreas de TI e de negócio deixam de ser concorrentes por recursos e passam a efetivamente colaborar entre si. Para isto, foi essencial que a iniciativa SOA contasse com um grande apoio da área estratégica da empresa. Este fator foi essencial para a empresa descrita este estudo de caso e será em qualquer iniciativa SOA. Por fim, é possível concluir que, a iniciativa SOA não deve ser considerada a “bala de prata” para o tão esperado alinhamento entre TI e negócio, contudo, SOA pode ser uma das grandes colaboradoras para que a TI possa efetivamente colaborar na concepção de novos negócios e colaborar para a agilidade da empresa.
  • 7. Bibliografia selecionada GARTNER. The Gartner SOA Adoption Model. EUA: Gartner, 2006. HURWITZ, J. et al. Service Oriented Architecture for Dummies. EUA: Wiley, 2007. BIEBERSTEIN, N. et al. Service Oriented Architecture (SOA) Compass. EUA: IBM, 2006. ARC. SOA In The Real World. EUA 2008 STRELESKI, J.; ALBINO, RAPHAEL. SOA, BPM e a Agilidade na Gestão do Negócio. 2008 VANDERSLUIS, KIRSTAN. SOA IBM MAGAZINE - The Benefits of a Data Abstraction Layer for SOA. EUA 2008 BENEDETE, ANTORNIO JR. Roteiro para a definição de uma arquitetura SOA utilizando BPM, USP 2007 GRONROOS, CHRISTIAN, Service Management and Marketing, 1990 FITZSIMMONS, J.A.; FITZSIMMONS, M.J. Administração de Serviços, 2008. VARGO, S.L.; LUSCH, R.F. A Service-Dominant Logic of Marketing. Armonk, NY: ME Sharpe, 2006.