Diagrama de Caso de Uso e Diagrama de Sequência Milena Alexandre dos Santos Baesso (Mestranda em Engenharia Elétrica)
Agenda Ciclo de Vida de um Sistema A Fase de Análise Análise Orientada à Objetos Diagramas UML Diagrama de Caso de Uso Diagrama de Sequência Referência
Ciclo de Vida Clássico Análise e Especificação de Requisitos Projeto Implementação e Teste Unitário Integração e Teste do Sistema Operação e Manutenção
Fase de Análise Identificar objetivos e metas a ser atingidos; Identificar restrições que devem ser respeitadas; Especificar quais os requisitos que o produto de software deverá possuir; Não especificar como os requisitos do produto de software serão obtidos; Resultado é um documento de especificação de requisitos
Fase de Análise O documento de especificação de requisitos deve conter: Requisitos Funcionais; Requisitos Não-Funcionais; Requisitos de Desenvolvimento e Manutenção; Descrevem o que o produto de software faz, usando notações informais, semiformais, formais ou uma combinação delas.
Fase de Análise O documento de especificação de requisitos deve conter: Requisitos Funcionais; Requisitos Não-Funcionais; Requisitos de Desenvolvimento e Manutenção; Podem ser classificados nas categorias confiabilidade, acurácia dos resultados, desempenho, problemas de interface homemcomputador, restrições físicas e operacionais, questões de portabilidade, etc.
Fase de Análise O documento de especificação de requisitos deve conter: Requisitos Funcionais; Requisitos Não-Funcionais; Requisitos de Desenvolvimento e Manutenção; Incluem procedimentos de controle de qualidade particularmente procedimentos de teste do sistema -, prioridades das funções desejadas e outros.
Análise OO Passos: Identificar os objetos; Identificar hierarquias; Identificar atributos; Identificar associações; Definir serviços O sistema precisa manter informações sobre o objeto? O sistema precisa de serviços do objeto? O objeto possui mais de um atributo?
Análise OO Passos: Identificar os objetos; Identificar hierarquias; Identificar atributos; Identificar associações; Definir serviços Generalização/Especialização; Composição; Agregação.
Análise OO Passos: Identificar os objetos; Identificar hierarquias; Identificar atributos; Identificar associações; Definir serviços Substantivos qualificativos Adjetivos indicam valores de atributos
Análise OO Passos: Identificar os objetos; Identificar hierarquias; Identificar atributos; Identificar associações; Definir serviços Relacionamentos entre objetos; Verbos ou expressões verbais no enunciado do problema.
Análise OO Passos: Identificar os objetos; Identificar hierarquias; Identificar atributos; Identificar associações; Definir serviços Responsabilidades do objeto; Podem ser identificados através de casos de uso
Diagramas UML A UML Unified Modeling Language é uma linguagem que pode ser utilizada para especificar, visualizar, construir e documentar sistemas, através de modelos. Os diagramas UML incluem elementos gráficos que ilustram uma parte ou aspecto particular do sistema. Um modelo do sistema possui vários tipos de diagramas para descrevê-lo.
Diagramas UML Modelos suportados pela UML: Estáticos; Dinâmicos; Funcional Diagrama de Classes; Diagrama de Objetos; Diagrama de Casos de Uso
Diagramas UML Modelos suportados pela UML: Estáticos; Dinâmicos; Funcional Diagrama de Estado Diagrama de Sequência Diagrama de Colaboração Diagrama de Atividade
Diagramas UML Modelos suportados pela UML: Estáticos; Dinâmicos; Funcional Diagrama de Componente Diagrama de Execução
Diagrama de Caso de Uso É uma forma do engenheiro de requisitos especificar os limites e as funcionalidades do sistema; Permite: Que clientes e usuários validem o sistema; Que os desenvolvedores construam o que é esperado. Componentes: Atores; Casos de Uso.
Diagrama de Caso de Uso Atores são papéis de elementos externos ao sistema e que interagem diretamente com o sistema. Exemplo de atores: Cliente; Secretária; Sistema de Vendas (desde que não seja o sistema em desenvolvimento) Glicosímetro (conectado ao computador por um cabo)
Diagrama de Caso de Uso Casos de Uso são funcionalidades que o sistema realiza e que fornece um benefício a um ator específico; Características: Sempre iniciados por um ator; Sempre retornam um resultado ao ator; Especifica uma funcionalidade completa
Diagrama de Caso de Uso Notação: interação Ator Caso de Uso
Diagrama de Caso de Uso Cada caso de uso do diagrama deve ser detalhado na especificação de casos de uso; Exemplo - Diagrama: Efetuar Login Gerente Imprimir Relatório Secretária Cadastrar Material
Diagrama de Caso de Uso Exemplo Especificação do Caso de Uso Efetuar Login: Cenário Normal O sistema apresenta a tela de login O usuário digita seu username O usuário digita sua senha O sistema verifica as informações de login O sistema apresenta a tela inicial da aplicação Cenário de Exceção - A partir do passo 4 O sistema verifica que a senha e/ou username estão incorretos O sistema mostra mensagem de erro O usuário re-digita o username e a senha
Diagrama de Sequência Apresenta a colaboração dinâmica entre os vários objetos de um sistema; Através deste diagrama é possível perceber a sequência de mensagens enviadas entre os objetos; Mostra o que ocorre em pontos específicos da execução do sistema; Apresenta as interações entre atores e sistema.
Diagrama de Sequência Notação: Objeto Mensagens Ator Tempo
Diagrama de Sequência Exemplo Cenário Normal do Caso de Uso Efetuar Login: Usuário Interface Usuários do Sistema Informar username e senha Verificar Acesso Validar Apresenta Tela Inicial Permissão de Acesso
Diagrama de Sequência Cliente Atendente Gerente Sistema da VideoLocadora Comunicar extravio de fita Solicitar registro de aluguel Retornar registro de aluguel Buscar aluguel Solicitar conversa com gerente Falar com Gerente Pagar Multa Negociar Multa Solicitar registro da fita Retornar registro da fita Buscar fita
Referências Pressman, Roger S. (2001) Software Engineering: A practictioner s approach, 5th ed. McGraw-Hill, ISBN 0-07-365578-3. Carvalho, Ariadne M. B. Rizzoni; Chiossi, Thelma C. S. "Introdução à Engenharia de Software", Campinas, SP; Editora da Unicamp, (2001). Martins, E. Modelos OO, Notas de Curso (2001) Fowler, M. UML Distilled, Addison-Wesley,1997. Sommerville, I. Software Engineering, 5ª Edição, 1995. Dúvidas?