Contratos - uml
Graduação em Sistemas de Informação
“Contratos”
Renato Araújo F. França
Trabalho desenvolvido sob a orientação do Professor Rosenclever e apresentado ao Programa do Curso Sistema de Informação do UNIFOA, como requisito para obter nota da matéria de Analise Orientada a Objetos III.
Volta Redonda, 2009.
CONTRATO
Um contrato é um documento que descreve os compromissos de uma operação
– Estilo declarativo
– Pré e pós-condições de mudanças de estado
– Para métodos, classes, ou operações gerais de sistema
– Necessário documentar os detalhes da mudança de estado dos objetos envolvidos.
– Reduz o detalhamento dos casos de uso.
– Quando não for possível compreender o que fazer tendo apenas em mãos os casos de uso e a colaboração do especialista no assunto.
SECOES DE UM CONTRATO
[pic]
Exemplo para operação entrarItem:
[pic]
[pic]
COMO FAZER UM CONTRATO
Regras úteis:
1. Identificar operações de sistema a partir dos diagramas de seqüência.
2. Para cada operação, construir um contrato.
3. Começar escrevendo a seção Responsabilidades, descrevendo informalmente o propósito da operação.
4. Completar a seção Pós-condições, descrevendo declarativamente as mudanças de estado que ocorrem aos objetos do modelo conceitual:
- Criação e remoção de instância
- Modificação de atributo
- Formação e quebra de associações (erro mais comum!)
5. Completar a seção Pré-condições, descrevendo as pré-suposições sobre o estado do sistema no início da operação:
- Coisas que devem ser testadas pelo sistema em algum ponto durante a execução da operação
- Coisas que não são testadas, mas sobre as quais depende fortemente o sucesso da operação
CONTRATOS E OUTROS ARTEFATOS
[pic]