ESOF - Aula 16 - 2014/1

Revisão de 22h58min de 21 de janeiro de 2015 por Lclaudio (discussão | contribs) (Seqüências Alternativas)
(dif) ← Edição anterior | Revisão atual (dif) | Versão posterior → (dif)

Detalhamento dos Casos de Uso


Pré-condições


  • O que é uma pré-condição?
    • Pré condições são características que definem uma estrutura na qual a partir destas informações será criado o caso de uso , desta forma possibilitando sua execução.


  • Exemplo:
    • O cliente de um banco precisa ter uma conta cadastrada antes de executar qualquer atividade.
    • O sensor precisa estar cadastrado antes de executar uma ação de alarme
    • O cliente precisa estar em dia antes de comprar um produto a prazo
    • As notas precisam ser lançadas integralmente antes de calcular a aprovação do aluno no período


Pós-condições


  • O que é uma pós-condição?
    • Pós-condições: o estado do sistema após a execução do caso de uso


  • Exemplo
    • Pós-Condições: lançada a transação na conta do cliente, o saldo muda seu estado para decrementado
    • Após o pedido ser inserido no site e aprovado, o pedido fica no estado Pronto para Entrega e a transportadora pode processar a entrega do pedido
    • Após cálculo das notas do período, o estado da nota passa a ser Processado e pode-se enquadrar os alunos nas turmas do próximo período.


Seqüência de Eventos


  • Como construir uma sequência de eventos?
  • Imagine o sistema no seu Marco Zero
  1. Escolha um método do Diagrama de Classes
  2. Descreva a função, seja iniciada pelo ator ou pelo sistema
  3. Identifique que tipo de mensagem deve ser encaminhado do ator (ou sistema) para o sistema (ou para o ator)
  4. Avalie a atuação de cada um na sucessão da mensagem
  5. Descreva a próxima tarefa da forma mais clara para quem for ler o diagrama
  6. Verifique se nesta tarefa:
    1. é exigido outro ator
    2. haverão casos generalizados
    3. existe uma condição para que outro caso seja executado
    4. este mesmo caso pode ser usado em outras tarefas.
  7. Retorne ao passo 1.
  • Feito isso, verifique se os casos descobertos neste passo-a-passo constam no Diagrama de Classes e se não, inclua-os.


  • Exemplo
Seção Principal
  • Este caso de uso começa quando o Caixa registra o documento de cobrança bancária a ser pago
  • O sistema valida a aceitação do documento de cobrança a ser pago
  • O Caixa informa a opção desejada:
    • Se for pagamento em dinheiro, ver subseção Receber pagamento em dinheiro
    • Se for pagamento em cheque, ver subseção Receber pagamento em cheque
  • O sistema registra o pagamento
  • O sistema imprime o comprovante.
Subseção: Receber pagamento em cheque
  • O Caixa recebe o cheque e o registra no sistema
  • O sistema valida os dados do cheque
Subseção: Receber pagamento em dinheiro
  • O Caixa registra o valor em dinheiro recebido
  • O sistema informa o troco a ser repassado ao pagante


Requisitos Não-Funcionais


  • O que são requisitos não-funcionais?
    • São os requisitos relacionados ao uso da aplicação em termos de desempenho, usabilidade, confiabilidade, segurança, disponibilidade, manutenibilidade e tecnologias envolvidas.
    • Incluem os detalhes sobre equipamentos , pessoas ou sistemas
    • Em geral, podem constituir restrições aos requisitos funcionais

.

  • Exemplos
  • Requisitos padrões:
    • Requisitos de produtos : Requisitos que especificam o comportamento do produto.Ex. portabilidade; tempo na execução; confiabilidade,mobilidade, etc.
    • Requisitos da organização: Requisitos decorrentes de políticas e procedimentos corporativos. Ex. padrões, infra-estrutura,etc.
    • Requisitos externos: Requisitos decorrentes de fatores externos ao sistema e ao processo de desenvolvimento. Ex. requisitos de interoperabilidade, localização geográfica, etc.
    • Requisitos de facilidade de uso. Ex.: usuários deverão operar o sistema após um determinado tempo de treinamento.
    • Requisitos de eficiência. Ex.: o sistema deverá processar n requisições por um determinado tempo, a resposta do sistema deve ocorrer no máximo 30 seg após teclar na opção Processar.
    • Requisitos de confiabilidade. Ex.: o sistema deverá ter alta disponibilidade, p.exemplo, 99% do tempo.
    • Requisitos de portabilidade. Ex.: o sistema deverá rodar em qualquer plataforma.
    • Requisitos de entrega.Ex.: um relatório de acompanhamento deverá ser fornecido toda segunda-feira.
    • Requisitos de implementação.: Ex.: o sistema deverá ser desenvolvido na linguagem Java.
    • Requisitos de padrões.: Ex. uso de programação orientada a objeto sob a plataforma A.
    • Requisitos de interoperabilidade.:Ex. o sistema deverá se comunicar com o SQL Server.
    • Requisitos éticos. Ex.: o sistema não apresentará aos usuários quaisquer dados de cunho privativo.
    • Requisitos legais. Ex.: o sistema deverá atender às normas legais, tais como padrões, leis, etc.
    • Requisitos de Integração. Ex.: o sistema integra com outra aplicação.
  • Especificações, características, diagramas técnicos, configurações, etc.


Seqüências Alternativas


  • O que é uma sequência alternativa?
    • Uma série de passos ordenados que retratam as situações em que o sistema pode fugir do fluxo normal.
    • Pode ser relatado nas ocasiões em que ocorre erro e o sistema tem um determinado comportamento
    • Efetivamente, é uma seqüência linear de operações que representa uma alternativa à seqüência de operações na seqüência mestre.


  • Exemplos
    • Um aluno quando utiliza um sistema de pesquisa em Biblioteca pode seguir passos convencionais:
    • Insere o nome do autor ou titulo que pretende encontrar
    • O sistema busca na base de dados, informações referentes ao livro
    • Encontrando, mostra na tela, os dados do livro
    • O aluno solicita o empréstimo do livro, clicando num botão
    • A Atendente insere os dados do aluno e verifica se este está matriculado e sem pendências
    • O sistema confirma que o aluno está Ok
    • A Atendente preenche os dados de empréstimo e entrega o livro ao aluno
    • O sistema atualiza o livro como Emprestado.


  • Para todos estes passos tradicionais, poderíamos descrever alguma sequências alternativas para:
    • Quando o livro não existir?
    • Quando o aluno tiver pendências?
    • Quando o livro já estiver emprestado?
    • Quando o aluno não está matriculado?
    • Quando o livro tiver apenas um exemplar e não pode ser emprestado?
    • Quando não der certo a validação da matrícula?


Referências