 |
 |
 |
 |
|
Este exemplo ilustra o nível conceitual de uma loja virtual modelada.
Existem várias aplicações de comércio eletrônico, tais como
biblioteca digital, livraria virtual e sites de leilão. A diferença
entre elas são sua natureza e as respectivas regras de negócio. Algumas destas regras
são simples, como por exemplo: um item não deve ser vendido para mais de um
consumidor. Por outro lado, existem regras específicas à aplicação,
como permitir ou não a reserva de um item, prover controle de estoque, ou
definir prioridades para transações executadas concorrentemente.
A metodologia proposta no livro, uma extensão da metodologia CAFE, consiste
de uma técnica para se aplicar verificação de modelos no projeto de sistemas
de comércio eletrônico. A metodologia CAFE explica como especificar um
sistema de comércio eletrônico e consideramos que o projetista deve conhecer alguma
linguagem formal, tal como NuSMV, para construir seu modelo.
Nossa metodologia é incremental e dividida em 4 níveis. É relevante ressaltar
que esta organização foi adotada com o intuito de simplificar a especificação do projeto, mas o projetista pode adotar outra organização, conforme julgar
mais adequado ao seu projeto.
O primeiro nível, definido como conceitual, engloba as regras de negócio e a definição do sistema de comércio eletrônico a ser projetado. Quanto mais detalhes o projetista especificar, mais fácil deverá ser aplicar a metodologia e alcançar bons resultados no processo de verificação. O segundo nível, denominado aplicação, modela o ciclo de vida do item a ser comercializado, identificando os tipos de operações (definidas como ações) que são executadas sobre ele e que alteram seu estado. O terceiro deles, conhecido como funcional, modela os serviços providos pelo sistema e introduz o conceito de múltiplos itens. O último nível contempla os componentes do sistema de comércio eletrônico. Ele complementa o escopo da aplicação, modelando sua arquitetura, razão pela qual denomina-se nível arquitetural.
Da mesma forma que modelos de comércio tradicionais, o objeto
central do comércio eletrônico é o produto
comercializado. Para cada produto comercializado, há um ou mais
itens, que são instâncias de produto. Cada item é
caracterizado por um grafo que descreve seu ciclo de vida, ou seja,
os estados pelos quais um item pode passar. Exemplos de estados são
disponível, reservado ou vendido. O domínio
de um item são os estados nos quais o item pode estar.
As entidades ativas que participam da aplicação de comércio
eletrônico são chamadas agentes. Exemplos de agentes são
os clientes de uma loja e seus vendedores. Os agentes executam ações
que modificam o estado de um item, ou seja, ações são transições
no grafo de ciclo de vida do item. Alocar um item ou comprá-lo são exemplos
de ações.
Serviços são seqüências de ações que atuam sobre
produtos. Enquanto ações tratam de itens específicos e
executam tarefas simples (como por exemplo alocar um item), serviços
tratam do produto como um todo e de transações completas.
Por exemplo, um serviço pode ser comprar um exemplar de
um livro específico. Este serviço pode ser decomposto nas
ações: pagar o livro, despachar o livro, e atualizar o estoque.
Formalmente, caracteriza-se uma aplicação de comércio eletrônico
por uma tupla
onde é o conjunto de produtos da
aplicação, o conjunto de itens comercializados, os domínios
possíveis para os itens (seus ciclos de vida), o conjunto de agentes,
o conjunto de ações, e o conjunto de serviços.
Produtos são conjuntos de itens, ou seja, significa
que
. Os
produtos particionam os itens, ou seja, todo item pertence a um e
somente um produto. Formalmente,
e
para .
Domínios são associados a itens, ou seja, cada item tem
como domínio, . Dois itens do mesmo produto têm o mesmo
domínio, ou seja, para todos os itens , existe um
produto tal que se e , então .
Apresentaremos o estudo de caso de uma aplicação
muito popular em comércio eletrônico: uma loja virtual. O objetivo
é demonstrar como a metodologia proposta pode ser utilizada no projeto
de sistemas mais confiáveis. Esta aplicação é um exemplo típico
de comércio eletrônico onde está presente a maioria dos aspectos que tornam
difícil o projeto desses sistemas, tais como múltiplos agentes competindo por
produtos, múltiplos itens, entre outros. Utilizou-se o verificador de modelos
SMV para aplicação da metodologia neste estudo de caso.
Conforme definido na metodologia, o nível conceitual detalha as exigências de um sistema de comércio eletrônico. Listamos algumas das regras de negócios identificadas no nosso estudo de caso:
- Se um item está indisponível e for disponibilizado, no momento seguinte deverá estar disponível;
- Se um item está disponível e for reservado, no momento seguinte deverá estar reservado;
- Se um item está reservado e for cancelada sua reserva, então ele deverá estar disponível no momento seguinte;
- Se um item está reservado e sua compra for confirmada, então deverá estar vendido no momento seguinte;
- O estoque de um produto tem que ser sempre positivo;
- Se o estoque for positivo, pelo menos um item deve estar disponível;
- Se o estoque for nulo, então o produto não pode estar disponível;
- As ações de Reservar e Cancelar Reserva devem ser atômicas;
- Se existirem agentes executando concorrentemente, as ações devem ser isoladas.
Todas as regras de negócio devem ser satisfeitas nos níveis seguintes da metodologia para que a correção do sistema de comércio eletrônico seja confirmada.
Para visualizar os exemplos dos níveis subsequentes da metodologia, basta acessar
os links a seguir:
Voltar
|
|
 |
|