Logo Passei Direto
Buscar
Material

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

terça-feira, 22 de maio de 2012
Quarta Aula
Capítulo 4
 Mastering the Requirement Process
Disciplina
 Engenharia de Requisitos
Prof.: Luiz Loja
1
Agenda da nossa Apresentação
Cronograma
 
 
1
Revisão
 
 
2
Caso de uso dirigido a evento
 
3
Conclusão
 
2
1
Revisão
O que já vimos?
 
 
 
3
Revisão
Necessidade de coleta de requisitos
O que são requisitos
Ciclo de desenvolvimento de software e requisitos
Dificuldades
Tipos de requisitos
Artigo
There is no Silver Bullet
4
Revisão
Processo de levantamento de Requisitos Volore
Ponta pé inicial
Coleta de requisitos
Prototipação de requisitos
Escrever os requisitos
Portal de qualidade
5
Blastoff
Ponta pé inicial
Primeira reunião
Trindade
Escopo
Colaboradores 
Objetivos
Criação do documento de visão
Escopo
Fronteiras do software
Áreas de domínio
O que devemos entender do trabalho
Sistemas adjacentes
Colaboradores
Tipos de colaboradores
Clientes
Consumidores
Usuários 
Especialistas
Consultores
Outros
Objetivo
PAM(Purpose, advantage e mesurement)
Propósito
O que o produto deverá fazer
Vantagem
A vantagem que produto proporcionará
Medição
Como é medida a vantagem
Documento de Visão
Propósito do projeto
O escopo do projeto
Os colaboradores
Restrições
Nomes
Fatos relevantes e suposições
Custo estimado
Os riscos
Primeiro protótipo de baixo custo
Fazer ou não fazer
10
Casos de uso dirigidos a eventos
Capítulo 3
11
Dividir o produto em casos de uso
Definir o melhor produto a se produzir
Blastoff define o escopo do projeto
Muito grande para ser estudado em apenas uma reunião
Dividir para conquistar
		"Não coma nada maior do que sua cabeça"
					Source B. Kliban
Corte em partes
Particionar o trabalho em partes gerenciáveis 
Caso de uso dirigido a evento
12
Casos de Uso
Criador Ivan Jacobson
"documento narrativo que descreve a sequência de eventos de um ator que usa um sistema para completar um processo".
Um caso de uso é uma técnica de modelagem usada para descrever o que um novo sistema deve fazer.
Descrever o trabalho a ser feito
Quebrar o sistema em partes pequenas
Baseado na visão do usuário do sistema
Estamos na fase de análise e não estamos preocupados com software nem hardware.
Caso de uso
14
Construído através de um processo interativo 
São feitas discussões entre o cliente e os desenvolvedores do sistema 
Estas discussões conduzem a uma especificação do sistema da qual todos estão de acordo.
Caso de uso
15
Os casos de uso tem por objetivo:
Decidir e descrever os requisitos funcionais do sistema.
Fornecer uma descrição clara e consistente do que o sistema deve fazer.
Permitir descobrir os requisitos funcionais das classes e operações do sistema. (Casos de uso NÃO são requisitos)
Entender o trabalho
Apresentar o sistema como uma visão do usuário
Visão geral das funções do sistema
Serviços desejados pelo usuário
Não preocupa com tecnologia ou implementação
Dica
Apresentar o diagrama junto ao protótipo
Caso de uso
16
Podemos dizer que os componentes de um modelo de casos de uso são :
Ator 
É um papel que tipicamente estimula/solicita ações/eventos do sistema e recebe reações. Cada ator pode participar de vários casos de uso
Casos de uso 
É documento narrativo que descreve a sequência de eventos feitos por um ator no uso do sistema.
Sistema 
O sistema a ser modelado
Caso de uso
17
O casos de uso consiste do diagramas de casos de uso 
Atores
Casos de uso 
Relacionamentos.
Caso de uso
18
Atores
Os papéis que os usuários podem assumir
Utilizar serviços e funções do sistema
Pode representar um sistema ou um hardware
Representado pelo menino feito de palitos
Casos de Uso
Serviços, tarefas ou funções utilizadas pelos usuários
Comportamento pretendido
Um caso de uso pode conter
Várias telas e funcionalidades
Relacionamento ou Associações
Interações e relacionamentos
Atores e Casos de Uso
Atores e Atores
Casos de uso e Casos de uso
Atores e Casos de Uso
Utiliza-se da funcionalidade do sistema
Requisição
Resultado
As setas representam a navegabilidade das informações
Do ator para o caso de uso
Do caso de uso para o autor
Ambos
Não representam o fluxo do processo mas sim dos dados.
Pode possuir descrição própria quando necessário
Três perguntas para as quais não existe uma resposta absoluta, são elas:
01. Como identificar atores?
02. Como descrever atores?
03. Como Identificar casos de uso?
Caso de uso
24
Identificar Atores
Para identificar os atores que vão participar do modelo devemos fazer as seguintes perguntas
 Quem usa o sistema?
 Quem inicializa o sistema?
 Quem fornece os dados?
 Quem usa as informações?
Usar abordagem dirigida a eventos 
Veremos mais tarde
Como descrever atores
Nome do ator (papel)
Descrição de seu papel no sistema
Como identificar os casos de uso
São interações entre usuários
Dividem-se em 
Ações do Ator
Atores sempre iniciam as ações
Ações do Sistema
Exemplo
Modelagem
Compra de item em um a loja com um terminal de ponto de venda
Exemplo
Quais são os atores?
Quem usa o sistema é o cliente e ele usa um terminal de caixa.
Como podemos identificar o caso de uso?
Podemos chamar este caso de uso de : Comprar Item.
Agora vamos a um descrição textual do caso de uso Comprar Item onde atuam os atores cliente e caixa.
Exemplo
Caso de Uso - Comprar Item
Atores - Cliente, Caixa
Descrição - Este caso de uso começa quando um cliente chega ao terminal com itens que deseja comprar. O caixa registra os itens , recebe o pagamento e emite uma nota fiscal. O Cliente recebe os itens comprados.
Documento textual
Descreve função do caso de uso
Etapas devem ser executadas
Atores
Sistema
Quais restrições e validações
Não existe formato específico
Utilizar linguagem simples
Documentação
Nome
Caso de uso geral
Ator principal
Ator secundário
Resumo
Pré-condições
Pós-condições
Sequência de ações
Restrições e validações
Fluxos alternativos
Exemplo
Considerações
Algumas considerações :
 Nomeie um caso de uso começando com um verbo, para enfatizar que ele é um processo.Ex: Cadastrar Cliente, Comprar Item, etc.
 Para identificar claramente um ator iniciador e um evento, comece a descrição da sequência de um caso de uso usando o seguinte esquema:
 Este caso de uso começa quando o <Ator>  <Evento que inicia o caso de uso>
Ex: Este caso de uso começa quando um cliente chega com vários itens para comprar
Exercício
			Suponha que você tenha um almoxarifado de peças onde clientes façam pedido e onde um operador receba tarefas do sistema para buscar peças para os pedidos dos clientes e distribuir peças do setor de compras para o almoxarifado. 
Resposta
Vamos identificar os atores.  
Cliente
Operador
Sistema 
Setor de Compras
Certo ou errado? Pq?
Resposta
Errado! Sistema não pode ser um ator pois ele não se ajusta ao conceito dado a um ator : 
Um agente externo ao sistema.
Um ator é um papel que interage com o sistema 
No lugar de Sistema poderíamos sugerir:
Administrador 
Gerente
Resposta
Cliente,  Operador, Administrador e Compras
Resposta
E os casos de usos, quais seriam?
solicita peças (ator Cliente)
entrega peças (ator Compras)
buscar pedidos (ator operador)
distribuir pedidos (ator operador)
cadastrar Tarefas (administrador)
Certo ou errado?
Resposta
Errado! No caso do ator operador ele não atua sobre o sistema 
Casos de uso buscar pedidos e distribuir pedidos , ele atua sobre o sistema realizando Tarefa;
Portanto, o certo seria: 
solicita peças (ator Cliente)
entrega peças (ator Compras)
realiza Tarefa (ator operador)
cadastrar Tarefas (administrador)
Reposta utilizando UML
Resposta
Próxima etapa: 
Refinamento do modelo 
Obter o relacionamento entre os casos de uso 
Generalização, 
Inclusão 
Extensão
Inclusão
Inclusão
Usada existe um serviço,situação ou rotina comum
Casos de uso utilizam-se deste serviço
Evita descrever a mesma rotina várias vezes
Se um caso de uso inicia ou inclui o comportamento de outro, dizemos que ele usa o outro caso de uso.
Inclusão indica obrigatoriedade 
Execução do primeiro obriga a execução do segundo
Comparado a chamada de uma subrotina
Inclusão	
Ex: No caso de uso Solicitar Pedidos de Peça  podemos incluir  Entregar Peças.
O relacionamento de inclusão em UML é ilustrado com uma linha de generalização com o rótulo <<include>>.
O relacionamento de inclusão em UML é ilustrado com uma linha de generalização com o rótulo <<include>>.
Inclusão
Sempre que o caso de uso Solicitar Pedido de Peças for acionado o caso de uso Entregar Peças também o será.
Inclusão
Inclusão
As propriedades básicas da inclusão são :
realizar um decomposição funcional;
reduzir a complexidade de um caso de uso;
O caso de uso básico não pode executar sem a inclusão;
Comportamento comum.
Reutilização do caso de uso
Extensão
Extensão
Eventos que não ocorrem sempre
Casos de uso que só ocorreram caso ocorra uma condição específica
Um teste para determinar se deve ser executado
Define pontos de extensão que adicionam comportamento a um caso de uso base descrevendo uma variação do comportamento normal. 
O caso de uso base pode ser executado mesmo sem a extensão.
Ex: O caso de uso Comprar Produto pode apresentar a extensão Compra por um Cliente Regular. Abaixo temos o diagrama UML.
Extensão
Extensão
Especialização ou Generalização
52
Especialização ou Generalização
Indica um caso de base que possui diferentes especializações e inclui comportamento ou sobrescreve o caso de uso base.
Existem dois ou mais casos 
 Possuem características semelhantes
Apresentam pequenas diferenças
Define-se um caso de uso geral 
Características compartilhadas
Define-se os casos de uso específicos
Características peculiares
Vantagens
Diminui a documentação
Herdam os outros tipos de associações
Especialização ou Generalização
O caso de uso Pagar fatura apresenta as generalizações: Pagamento com cartão  e Pagamento com Cheque, conforme o diagrama abaixo:
Generalização
Generalização
Além disto temos também os relacionamentos entre atores onde um ator especializado pode acessar os casos de uso de um Ator base.
O Ator gerente acessa os casos de uso do ator funcionário
Gerenralizando atores
Fronteira do Sistema
Fronteira
Retângulo que envolve os casos de uso
Separar atores das funcionalidades do sistema
Representa o ambiente que o sistema será executado
Contexto do sistema
Opcional
Estereótipos
Estereótipos
Permite extensibilidade
Marcar um componente com determinada característica
Notas
Notas
Registrar alguma observação
Ferramentas
Ferramentas
Jude -> Hasta 
Posseidon 
Dia
Rational Rose
 
 
3
Estou fazendo a coisa certa?
Conclusão
 
 
 
66
Luiz Fernando Batista Loja
Luizloja@gmail.com
 
Perguntas?
67

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?