Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de...

20
Methodologies for the Design of Service-Based Systems Barbara Pernici Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010

Transcript of Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de...

Page 1: Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.

Methodologies for the Design of Service-Based

SystemsBarbara PerniciBarbara Pernici

João Victor Guimarães de Lemos

Professor: Jaelson Castro

Outubro/2010

Page 2: Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.

Conceitos iniciaisConceitos iniciais• Abordagem orientada a serviço permite o desenvolvimento

de processos de negócios e aplicações flexíveis

• Adaptabilidade é um conceito fundamental na orientação a serviços. Permite:

– Composição de serviços– Execução de serviços– Processos variáveis– Consideração de contexto externo

• No contexto de serviços de software, adaptabilidade é estudada pela rede européia S-Cube (Software Services and Systems)

Page 3: Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.

Conceitos iniciais (2)Conceitos iniciais (2)• Serviços de software fazem parte dos serviços do mundo

real

• Do ponto de vista do consumidor do serviço, é bastante difícil distinguir a parte de software do serviço global

• Metodologias de projeto baseadas em serviço evoluíram de metodologias de software tradicionais

• Existe a carência de abordagens específicas para projetos de sistemas baseados em serviços, principalmente considerando a etapa de engenharia de requisitos

Page 4: Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.

Abordagem propostaAbordagem proposta• Eliciting Service Composition in a Goal-Driven Manner

– Rim Samia Kaabi– Carine Souveyet– Colette Rolland

• Propõe realizar um link entre a fase de engenharia de requisitos e as subsequentes fases de projeto

• Baseia-se na noção de intenções para especificar os goals dos processos de negócio e subsequentemente, projetar serviços baseados nestes requisitos.

Page 5: Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.

Objetivos do artigoObjetivos do artigo• Discutir diferentes abordagens para o projeto de serviços e

gerenciamento do ciclo de vida dos mesmos

• Ilustrar e comparar abordagens nas fases de engenharia de requisitos, projeto de serviços e composição dos mesmos

Page 6: Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.

Ciclo de vida no Ciclo de vida no desenvolvimento de serviçosdesenvolvimento de serviços

Provisioning

Construction &

Testing

Deployment

Execution &

Monitoring

Planning Analysis

& Design

Evolution for change,

maintenance Physical design

Conformance validation

Provisioning

Construction &

Testing

Deployment

Execution &

Monitoring

Planning Analysis

& Design

Evolution for change,

maintenance Physical design

Conformance validation

Dagstuhl seminar on Service Oriented Computing

Page 7: Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.

Composição de serviçosComposição de serviços• Conjunto de serviços que são executados de acordo com

uma série de restrições associadas aos mesmos

• São caracterizadas pela flexibilidade dos serviços componentes durante sua execução

Page 8: Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.

Service OrientationService Orientation• A maioria das abordagens de processos se concentra em definir

uma ordem de execução para os serviços numa composição

• A orientação a serviços (SO), por outro lado, apresenta duas características peculiares:– (i) A composição de serviços não determina uma ordem de

execução– (ii) A qualidade de serviço de processo se torna uma de suas

características, tendo o provedor de serviço a obrigação de satisfazer restrições de qualidade

• Para atingir (ii), realiza-se uma composição de serviços dinâmica:– Serviços componentes variam durante diferentes execuções de processos– Variam durante uma única execução

• Razões para seleção dinâmica

Page 9: Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.

Projeto de serviçosProjeto de serviços• Existem duas tendências na literatura atual para o projeto de

serviços– (i) Projetar aplicações baseadas em serviços a partir de abordagens

consolidadas de projeto de software.• Nestas abordagens aspectos dinâmicos da composição e gerenciamento de serviços são apenas

marginalmente considerados– (ii) Definição de metodologia para a definição de um processo

incremental e iterativo para projeto e desenvolvimento de serviços• Serviços e seus ciclos de vida devem ser identificados, projetados, desenvolvidos, implentados

e gerenciados• Planejamento, análise e projeto, construção e teste, provisionamento, entrega, execução e

monitoramento• Princípios para garantir que serviços são independentes e facilmente compostos

• Estas abordagens, no entanto, falham em definir, em tempo de projeto, uma análise das propriedades dinâmicas das composições de serviços

Page 10: Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.

Abordagem S-CubeAbordagem S-Cube

Identifyadaptation

need

Identifyadaptationstrategy

Enactadaptation

Early RequirementsEngineering

RequirementsEngineering

& Design

Construction

Deployment &provisioning

Operation & management

Identifyadaptation

need

Identifyadaptationstrategy

Enactadaptation

Early RequirementsEngineering

RequirementsEngineering

& Design

Construction

Deployment &provisioning

Operation & management

Page 11: Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.

RequisitosRequisitos• Na maioria das abordagens para projetos orientados a

serviço, engenharia de requisitos é a primeira etapa, e geralmente feita de forma tradicional

• Gehlert A, Danylevych O, Karastoyanova D (2009) From Requirements to Executable Processes - A Literature Study. In: Proc. of the 5th International Workshop on Business Process Design (BPD 2009), Ulm, Germany

– Casos de uso e cenários são usados nas fases iniciais– Modelagem de processos de negócios é considerada, mas descrita como

mais adequada para estágios posteriores– Não há ligação com os aspectos de adaptabilidade presentes em tempo

de execução

Page 12: Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.

Intention-driven approachIntention-driven approach• Abordagem de Colette Rolland e grupo para ligar objetivos de

negócios e desenvolvimento de serviços

• Descrever serviços em termos de negócios e intenções, em detrimento da descrição de funcionalidades e interfaces

– Mais fácil de transformar requisitos em aplicações executáveis considerando características específicas de serviços, como adaptabilidade

– Considera variabilidade– Permite a representação de diferentes variações do mesmo serviço ou de

diferentes composições para atingir a mesma intenção– Descrição de serviços em diferentes níveis de abstração

• Considera que um serviço permite a satisfação de uma intenção, dada uma situação inicial, chegando a uma situação final

• A intenção é vista como um goal para o serviço

Page 13: Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.

Business MapBusiness Map

b

a

c

Alt. 1

Alt. 2 3

1

1b

a

c

Alt. 1

Alt. 2

b

a

c

Alt. 1

Alt. 2 3

1

1

Page 14: Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.

Projeto de composição de Projeto de composição de serviçosserviços

• Projetar composições de serviços que satisfaçam os requisitos especificados

• Examinar serviços existentes e aplicações legadas para moldar processos como uma composição de serviços

• Processos abstratos são considerados, granularidade e reusabilidade são levados em consideração

• Existe alguma preocupação com relação à adaptabilidade de serviços

– Descrições abstratas de serviços– Processos abstratos

• É necessário identificar questões de adaptabilidade e especificar estratégias que possam ser aplicadas em tempo de execução

Page 15: Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.

PAWSPAWS• Processes With Adaptative Web Services

• Framework onde processos são projetados para serem adaptáveis, e tal adaptabilidade é preparada em tempo de projeto

• Para cada tarefa (task) uma seleção de potenciais serviços é feita em tempo de projeto

• Adaptação de interface e negociação da qualidade de serviço (QoS) para cada serviço potencialmente invocado em tempo de execução são etapas de projeto

• Existem restrições de qualidade de serviço locais e globais

• Serviços podem ser invocados usando técnicas de otimização de QoS e mecanismos de auto-reparação podem ser invocados em casos de falha

Page 16: Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.

PAWS (2)PAWS (2)

T1

T4

T2 T3

Flexible process Concrete candidate services

Global constraints

Local task constraints

Local task constraints

Process design

Advanced service selection

Service preparation(SLA negotiation, interface mediation)

Serviceregistry

Processexecution

Self-healing

QoS optimizationcontext

T1

T4

T2 T3

Flexible process Concrete candidate services

Global constraints

Local task constraints

Local task constraints

Process design

Advanced service selection

Service preparation(SLA negotiation, interface mediation)

Serviceregistry

Process design

Advanced service selection

Service preparation(SLA negotiation, interface mediation)

Serviceregistry

Processexecution

Self-healing

QoS optimizationcontext

Page 17: Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.

PAWS: Descrição com PAWS: Descrição com variantesvariantes

LowQoS

HighQoS

Show video

Interactivemap

Show text

staticmap

Conf1: High QoS Conf2: Low QoS

LowQoS

HighQoS

Show video

Interactivemap

Show text

staticmap

Conf1: High QoS Conf2: Low QoS

Page 18: Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.

PAWS (3)PAWS (3)• Existe um elo fraco entre os requisitos expressos na fase

inicial e a construção de serviços

• A abordagem intencional (Intention-driven approach) permite a existência de uma ligação entre goals e processos e então para o projeto e a construção de serviços

• Os Business Maps permitem a descrição de caminhos alternativos

• Os serviços intencionais podem ser mapeados em diferentes composições de serviços e a escolha pode ser feita em tempo de execução

Page 19: Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.

De mapas intencionais para De mapas intencionais para serviçosserviços

P

ac1 ab1 ab2 ab3 bc1

b

a

c

Alt. 1

Alt. 2 3

1

1

Executor level

P

ac1 ab1 ab2 ab3 bc1

b

a

c

Alt. 1

Alt. 2 3

1

1b

a

c

Alt. 1

Alt. 2

b

a

c

Alt. 1

Alt. 2 3

1

1

Executor level

Page 20: Methodologies for the Design of Service- Based Systems Barbara Pernici João Victor Guimarães de Lemos Professor: Jaelson Castro Outubro/2010.

Trabalhos futurosTrabalhos futuros• Foco em Intention-Based approach, que permite a fase de

projeto se preocupe com o conceito geral de serviço, ao invés de foco em tecnologia nas fases iniciais

• A abordagem intencional deixa em aberto a seleção de serviços em tempo de execução

– Alternativa: Intentional Approach + QoS

• Considerar características de serviços de TI e serviços do mundo real

– Custo de propriedade dos serviços