Service-oriented architecture: diferenças entre revisões

Conteúdo apagado Conteúdo adicionado
Linha 21:
2. Os metadados devem vir de uma forma que o designer de sistema seja capaz de compreender e gerir com um gasto razoável de custo e esforço.
 
SOA tem como objetivo permitir que usuários agrupem funcionalidades a fim de obter aplicações dedicadas que serão construídas quase inteirametne a partir de serviços de software pré-existentes. Quanto maior o agrupamento, menor a quantidade de interface necessária para implementar qualquer conjunto de funcionalidade; no entanto, agrupamentos muito grandes são mais difíceis de reutilizar. Cada interface tem uma quantidade de processamento, portanto há que se considerar a performance e a granularidade dos serviços. A grande promessa de SOA sugere que a criação da n-ésima aplicação é baixa, pois todos os serviços necessários para satisfazer aos requisitos da aplicação já existem. No mundo ideal, bastaria coordenar os serviços para produzir uma nova aplicação.
Para isto funcionar, não deve existir interações entre os pedaços dentro do especificado, ou pedaços de si. Em vez disso, os seres humanos especificam a interação dos serviços (todos eles pares não associados) em uma forma relativamente ad hoc com a intenção impulsionado por exigências de recém-emergente. Assim, há a necessidade de serviços como unidades de maior funcionalidade do que as funções tradicionais ou classes, para que a enorme complexidade de milhares de tais objetos granulares não sobrecarreguem o designer de aplicativo. Os programadores desenvolvem os próprios serviços usando linguagens tradicionais como Java, C, C++, C# ou COBOL.
 
Mas, para SOA operar, nenhuma interação deve existir entre as funcionalidades ou dentro delas. Ao contrário, usuários especificam a interação dos serviços de forma pré-definida com o objetivo de atender aos novos requisistos. Por isso, a necessidade de implementar serviços com mais funcionalidades que funções ou classes tradicionais, e para que o designer da aplicação não se sobrecarregue ao tratar a complexidade de milhares de objetos com granularidade menor.
A partir de 2008, um número crescente de empresas de software de terceiros oferecem serviços de software para uma taxa. No futuro, sistema SOA pode consistir de tais serviços de terceiros combinado com outros criados em casa. Este tem o potencial de repartir os custos sobre os clientes e usa muitos dos clientes e promove a normalização, tanto dentro como através das indústrias. Em particular, a indústria do turismo tem agora um bem-definidas e documentadas conjunto de ambos os serviços e dados, suficiente para permitir que qualquer engenheiro de software razoavelmente competente para criar software de agência de viagens que utilizam os serviços totalmente off-the-shelf software.
 
Os programadores desenvolvem os próprios serviços usando linguagens tradicionais como Java, C, C++, C# ou COBOL. Serviços também podem ser usados também como interfaces para sistemas legados, permitindo a mudança de layout de sistemas antigos.
Outras indústrias, como a indústria financeira, também começaram a fazer progressos significativos nesse sentido.
 
Os serviços SOA são menos acoplados que as funções de bibliotecas de um programa executável. Serviços SOA também rodam sobre ambientes seguros (como Java e .Net) e com outras linguagesn de programação que gerenciam alocação de memória e exceção, permitem late binding e certo nível de abstração de tipos de dados.
SOA como uma arquitetura depende de orientação a serviços como o seu princípio fundamental de design. Se um serviço apresenta uma interface simples que abstrai a complexidade subjacente, os usuários podem acessar os serviços independentes, sem conhecimento da execução do serviço de plataforma.
 
A partir de 2008, um número crescente de empresas de software decomeçaram terceirosa oferecemoferecer serviços de software para terceiros por uma taxa pré-definida. No futuro, sistema SOA pode consistir de tais serviços de terceiros combinadocombinados com outros criados emde casaforma personalizada. EsteEssa ação tem o potencial de repartirreduzir os custos sobre os clientes e usa muitos dos clientes e promovepromover a normalização,padronização tantona dentroindústria comode através das indústriassoftware. Em particular, a indústria do turismo tem agora um conjunto bem-definidasdefinido e documentadas conjuntodocumentado de ambos os serviços e dados, o suficiente para permitir que qualquer engenheiro de software razoavelmente competente parapossa criar software de agência de viagens que utilizamutilizando os serviços totalmente off-the-shelf software.
SOA se baseia em serviços expondo suas funcionalidades através de interfaces que outros aplicativos e serviços possam ler para entender como utilizar esses serviços.
 
SOAA comoarquitetura umaSOA arquiteturase dependeapoia dena orientação a serviços como o seu princípio fundamental de design. Se um serviço apresenta umaum interface simples que abstrai a complexidade subjacenteenvolvida nela, os usuários podem acessarutilizar osesses serviços independentes, sem conhecimentonecessitar dade execuçãoconhecimentos dode serviço desua plataformaimplementação.
 
==Requisitos==