490 likes | 611 Views
AP. Conteúdo. Definição de Requisitos Linguagem de Modelagem de Dados - UML Diagrama de Caso de Uso. 2. Requisitos Definições. Requisitos servem para estabelecer um conjunto de objetivos gerais do sistema Tipos: Requisitos funcionais gerais: funções básicas
E N D
Conteúdo • Definição de Requisitos • Linguagem de Modelagem de Dados - UML • Diagrama de Caso de Uso 2
RequisitosDefinições • Requisitos servem para estabelecer um conjunto de objetivos gerais do sistema • Tipos: • Requisitos funcionais gerais: funções básicas • Propriedades do sistema: não-funcionais 3
Requisitos e Casos de Uso O modelo de casos de uso é uma representação das funcionalidades do sistema e dos elementos externos ao sistema que interagem com estas funcionalidades O modelo de casos de uso modela os requisitos funcionaisdo sistema 4
Casos de Uso O diagrama da UML utilizado na modelagem de casos de uso é o diagrama de casos de uso Técnica de modelagem idealizada por Ivar Jacobson, na década de 1970 Posteriormente, a notação de casos de uso foi adicionada à UML 5
Casos de Uso • Este modelo direciona diversas das tarefasposteriores do ciclo de vida do sistema de software • Codificação, Testes • Além disso, o modelo de casos de uso induz os desenvolvedores a moldaro sistema de acordo com necessidades do usuário 6
13/05/11 Componentes do Modelo • O modelo de casos de uso de um sistema é composto de: • Casos de uso • Atores • Relacionamentos entre os elementos anteriores
Atores • Elemento externo que interage com o sistema. • externo: atores não fazem parte do sistema. • interação: um ator troca informações com o sistema • Casos de uso representam uma seqüência de interações entre o sistema e o ator • troca de informações entre eles • Normalmente um ator inicia a seqüência de interações com o sistema 8
AtoresCategorias • Pessoas • Empregado, Cliente, Gerente, Almoxarife, Vendedor • Organizações • Empresa Fornecedora, Agência de Impostos, Administradora de Cartões • Outros sistemas • Sistema de Cobrança, Sistema de Estoque de Produtos • Equipamentos • Leitora de Código de Barras, Sensor 10
AtoresExemplos • Sistema Bancário • Cliente, gerente, caixa, diretores... • Hospital • Paciente, atendentes, profissionais de saúde, gerência,... • Caixa eletrônico • Cliente, Banco, .... • Compras, vendas e estoque • Comprador, fornecedor, almoxarifado, vendedor, cliente, ...
Casos de Uso • Um caso de uso é uma seqüência de ações realizada por um sistema que produz um resultadode valor observável para determinado ator • Todos os casos de uso juntos devem descrever a funcionalidade completa do sistema (requisitos) • Atoressão fundamentais para a descoberta dos casos de uso 13
Para cada ator.... Identificar Casos de Uso
Casos de Uso 15
Atores x Casos de Uso • Criar interações: passo de modelagem dos caso de uso • Diagrama de casos de uso • Uma associação de comunicação é uma associação entre uma classe de atore uma classe de caso de uso, que indica haver interação entre elas • Um ator se comunicacom os casos de uso por vários motivos, por exemplo: • Para iniciar um caso de uso • Para solicitar dados do sistema • Para alterar os dados armazenados no sistema 16
Atores x Casos de UsoRelacionamentos • A UML define diversos tipos de relacionamentos no modelo de casos de uso: • Comunicação • Inclusão • Extensão • Generalização 19
RelacionamentosRelacionamentos • Comunicação • Inclusão • Extensão • Generalização 20
Comunicação Representa a informação de quais atoresestão associados a que casos de uso O fato de um ator estar associado a um caso de uso significa que esse ator interage(troca informações) com o sistema Um ator pode se relacionar com mais de umcaso de uso É o mais comum dos relacionamentos 21
Comunicação 22
Comunicação 23
RelacionamentosRelacionamentos • Comunicação • Inclusão • Extensão • Generalização 24
Inclusão • Um relacionamento de inclusão é aquele que • Associa um caso de uso base a um caso de uso de inclusão • O comportamento definido para o caso de uso de inclusão éinseridode forma explícita no comportamento definido para o caso de uso base • Servem para fatorar: • separar comportamento complexo do caso de uso ou; • comportamento que não faz parte do propósito principal do caso de uso a fim de diminuir a complexidade do fluxo de eventos 25
Inclusão • Existe apenas entre casos de uso • Quando dois ou mais casos de uso incluem uma seqüência de interações comum, esta seqüência comum pode ser descrita em um outro caso de uso (de inclusão) • Este caso de uso comum: • Evita a descrição de uma mesma seqüência mais de uma vez 26
Inclusão slide 27 de 155
RelacionamentosRelacionamentos • Comunicação • Inclusão • Extensão • Generalização 28
Extensão • Um relacionamento de extensão • Associa um caso de uso de extensão a um caso de uso base • O comportamento definido para o caso de uso de extensão pode ser inserido no comportamento definido para o caso de uso de base • Criados para modelar comportamentos opcionais ou excepcionais • São executados somente face a certas condições • Casos de uso de inclusão são sempre executados 29
Extensão • Sejam A e B dois casos de uso. • Um relacionamento de extensão de B para A indica que um ou mais dos cenários de A podemincluir o comportamento especificado por B • Neste caso, diz-se que B estende A • O caso de uso A é chamado de estendido e o caso de uso B de extensor 30
Extensão • A execução do caso de uso B (extensor) depende de escolha do ator • Após a execução de B • O fluxo volta ao caso de uso principal, recomeçando logo após o ponto em que o extensor foi inserido 31
Extensão 32
RelacionamentosRelacionamentos • Comunicação • Inclusão • Extensão • Generalização 33
Generalização • Uma generalização de casos de uso • É um relacionamento de um caso de uso filho com um caso de uso pai • O filho podeadotar todo o comportamentoe as característicasdescritas para o pai • Usado para relacionar um caso de uso mais especializado com um mais geral • Este relacionamento complica mais do que facilita e deve ser evitado 34
Generalização de Atores Na generalização de ator, o filho herda o papel que o paipode desempenhar em um caso de uso Facilita a leitura do modelo de caso de uso 35
Notação Os relacionamentos de inclusãoe extensãosão representados por uma seta direcionada de um caso de uso para outro A seta (tracejada) de um relacionamento de inclusão recebe o estereótipo <<include>> A seta (tracejada) de um relacionamento de extensão recebe o estereótipo <<extend>> A seta (sólida) de um relacionamento de generalização não recebe estereótipo 36
Atividade Na seqüência da entrevista com o responsável pela biblioteca, foi também entrevistado o funcionário que está no atendimento ao público: “O novo sistema deverá permitir aos alunos a reserva de livros pela internet, com aviso por correio eletrônico quando o livro for devolvido, Tem sido um serviço freqüentemente sugerido, em particular para os livros com uma elevada procura. No registro da devolução dos livros também pode ser necessário o cálculo de uma multa por atraso. Também foi sugerido que fosse enviado um e-mail a todos os alunos com livros em atraso, informando o número de dias e o valor da multa. Para realizar qualquer tarefa no sistema o funcionário deverá estar registrado no sistema.” 37
Atividade 38
Atividade 39
Como fazer? A modelagem de um caso de uso partirá sempre do levantamento de requisitos com o usuário. Dos requisitos, são determinados o contexto do sistema e os atores. Para cada ator identificado, buscam-se suas responsabilidades e o que cada um espera de comportamento do sistema. Esses comportamentos são nomeados de casos de uso. 40
Descrevendo o caso de uso A descrição de um caso de uso na realidade é um coleção de cenários de sucesso (cenário principal) e fracasso (cenários alternativos) que vão descrever os passos de um ator na utilização do sistema, e a reação desse sistema a cada um desses passos, até que se atinja o objetivo principal do caso de uso. 41
Descrevendo o caso de uso Descrição de um caso de uso é dividida em várias seções: Descrição: normalmente é escrita com uma ou duas frases que identificam o objetivo do caso de uso. Não são citados detalhes, pois estes entrarão no corpo do caso de uso. Lista de atores: relaciona-se o nome de todos os atores que interagem com o caso de uso. Pré-condições: indica tudo que deve ser verdade para que o caso de uso tenha início. Quem garantirá essa pré-condição é o sistema. 42
Descrevendo o caso de uso Cenário principal: apresenta uma seqüência normal dos eventos que devem se produzir para implementar a funcionalidade descrita pelo caso de uso e também que dados são necessários a implementação da funcionalidade. 43
Descrevendo o caso de uso Algumas boas práticas para se descrever os cenários principal e alternativos: •Escreva sempre “o que” acontece e não “como” acontece. •Escreva um texto com terminologia mais próxima do usuário. •Numerar itens. 44
Descrevendo o caso de uso Sub-cenários(quando pertinente): algumas vezes o cenário principal é complexo e pode ser dividido em sub-cenários para facilitar a compreensão. Cenários alternativos: relacionam tudo que se espera do sistema quando da ocorrência de exceções nos itens do cenário principal. Nesta seção teremos vários pequenas cenários, que abrangem tanto exceções quanto alternativas. Pós-condições: indica tudo que deve ser verdadeiro para que o caso de uso seja considerado completo com sucesso. 45