Buscar

Engenharia de Software - Aula 10 - Especificação de Casos de Uso

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Aula passada
•Diagrama de casos de uso
Aula de hoje
• Detalhamento/especificação de casos de uso
• Outros modelos de análise
Aula de hoje
 uc detalhes 2
Controle de Acesso
Relatório
Funcionário
Imprimir relatório de 
funcionários ativos
Excluir 
funcionário
Editar dados de 
um funcionário
Incluir 
funcionário
Gerente de RH
Pesquisar 
funcionário
Usuário
Efetuar login 
no sistema
«include»
Usuário Folha de Pagamento
Gerente de RH
Administrador
Efetuar 
pagamento de 
funcionário
Atualizar folha de 
pagamento
CRUD Contas de 
Usuário
«extend»
Especificação de Casos de Uso
•Cada caso de uso no diagrama de casos de uso deve ser 
detalhado na especificação de casos de uso
•Esta especificação é evolutiva, quanto mais requisitos são 
coletados, mais detalhes são adicionados na especificação
•Os tipos de especificação são:
• Descrição inicial 
• Descrição base
• Descrição elaborada
Tipos de Especificação de Casos de 
Uso
Especificação de Casos de Uso
• Detalhar os casos de uso do sistema
• Nome do UC, atores e descrição
• Detalhar o fluxo de eventos dos casos de uso
• Fluxo básico: quando a atividade é realizada com sucesso. • Fluxo básico: quando a atividade é realizada com sucesso. 
Deve existir somente um
• Fluxo alternativo: quando a atividade não é realizada com 
sucesso o que deve acontecer. Pode existir quantos forem 
necessários para cobrir todas as situações
• Definir pré e pós condições
UC01 - Nome: UC Incluir funcionário
Atores: Gerente de RH e Administrador
Descrição: Esse caso de uso descreve como é feita a inclusão de um funcionário no sistema
Pré-condição: Funcionário ainda não 
cadastrado.
Pós-condição: Funcionário cadastrado no 
sistema.
Fluxo básico de Eventos
1. Ator solicita incluir um novo funcionário. 2. Sistema solicita que o ator informe o CPF do novo 
funcionário.
3. Ator informa o CPF. 4. Sistema verifica que o CPF ainda não existe e 
solicita que o ator informe os seguintes dados: nome, 
data de nascimento, endereço, telefone residencial e 
telefone celular.telefone celular.
5. Ator entra com as informações solicitadas e salva as 
informações.
6. Sistema inclui o novo funcionário.
Fluxo alternativo de eventos 1
4a. Sistema verifica que o CPF informado não é válido, 
exibe a mensagem “CPF inválido”, pergunta se deseja 
informar novo CPF e volta ao passo 3 do fluxo básico 
de eventos.
Fluxo alternativo de eventos 2
4b. Sistema verifica que o CPF já existe, exibe a 
mensagem que CPF informado já existe e pergunta se 
deseja informar novo CPF. Volta ao passo 3 do fluxo 
básico de eventos.
Elementos do Modelo de Análise
Modelos de classes
(ex: diagramas de 
classes, diagramas de 
colaboração)
Modelos baseados 
em cenários
(ex: casos de uso, 
diagramas de 
atividades e de raias)
VAMOS VER 
Requisitos
de software
Modelos 
comportamentais
(ex: diagramas de 
estado, diagramas de 
sequência)
Modelos de fluxos
(ex: DFDs, modelos 
de dados)
VAMOS VER 
AGORA!!!
Modelos Baseados em Cenários
Diagrama de Atividades
• Um diagrama de atividades complementa os casos de uso 
através de uma representação gráfica do fluxo de interação
• Similar ao fluxograma
• Usa retângulos com cantos arredondados para representar • Usa retângulos com cantos arredondados para representar 
determinada função do sistema
• Setas para representar o fluxo através do sistema
• Losangos de decisão para representar uma decisão com 
ramificação
• Linhas horizontais indicam as atividades paralelas que estão 
ocorrendo
Diagrama de Atividades
 act ativ idades
Incluir funcionário
Informe o CPF do 
funcionário
ActivityFinal
Informe os demais 
dados do 
funcionário
CPF já existe
Salva dados do 
funcionário
Modelo Baseados em Cenários
Diagrama de Raias
• Um diagrama de raias é uma variação do diagrama de 
atividades e nos permite representar o fluxo das atividades 
descrito pelos casos de uso e indicar qual ator tem a descrito pelos casos de uso e indicar qual ator tem a 
responsabilidade pela ação descrita 
Diagrama de Raias
 act raias
SistemaAtor
Incluir
funcionário
Informe o CPF do 
funcionário
Activi tyFinal
Informe os 
demais dados do 
funcionário
CPF já existe
Salva dados do 
funcionário
Elementos do Modelo de Análise
Modelos de classes
(ex: diagramas de 
classes, diagramas de 
colaboração)
Modelos baseados 
em cenários
(ex: casos de uso, 
diagramas de 
atividades e de raias)
Requisitos
de software
Modelos 
comportamentais
(ex: diagramas de 
estado, diagramas de 
sequência)
Modelos de fluxos
(ex: DFDs, modelos 
de dados)
VAMOS VER 
AGORA!!!
Modelos Comportamentais
Diagrama de Sequência
• São usados principalmente para modelar as interações entre 
os atores e os objetosobjetos em um sistema e as interaçõesinterações entre entre 
os próprios objetosos próprios objetosos próprios objetosos próprios objetos
• A UML tem uma sintaxe rica para diagramas de sequência 
que permite a modelagem de vários tipos de interação
Modelos Comportamentais
Diagrama de Sequência
• Exemplo: 
• O gerente de RH aciona o método PesquisaFuncionario 
em uma instância F da classe de objeto InfoFuncionario em uma instância F da classe de objeto InfoFuncionario 
e informa o CPF. F é um objeto de interface do usuário 
exibido como um formulário que mostra os dados do 
funcionário
Modelos Comportamentais
Diagrama de Sequência
• Exemplo: 
• A instância F chama o banco de dados para retornar as 
informações necessárias, fornecendo o identificador do informações necessárias, fornecendo o identificador do 
gerente de RH, que permite a verificação de proteção 
(UID – user’s identifier)
• O banco de dados verifica, com um sistema de 
autorização, que o usuário está autorizado a essa ação
Modelos Comportamentais
Diagrama de Sequência
• Exemplo: 
• Se autorizado, as informações do funcionário são 
retornadas, e um formulário é preenchido na tela do retornadas, e um formulário é preenchido na tela do 
usuário. Se falhar a autorização, aparece uma 
mensagem de erro
Modelos Comportamentais
Diagrama de Sequência
 sd ativ idades
Gerente de RH
F: InfoFuncionario D: DB AS: Autorização
PesquisaFuncionario (CPF)
Pesquisa (Info, CPF, UID)
Autorizar (Info, UID)
alt 
Autorizar (Info, UID)
Autorização()
Informações do funcionário()[Autorização OK]()
Erro (sem acesso)
[Falha de autorização]()
Elementos do Modelo de Análise
Modelos de classes
(ex: diagramas de 
classes, diagramas de 
colaboração)
Modelos baseados 
em cenários
(ex: casos de uso, 
diagramas de 
atividades e de raias)
Requisitos
de software
Modelos 
comportamentais
(ex: diagramas de 
estado, diagramas de 
sequência)
Modelos de fluxos
(ex: DFDs, modelos 
de dados)
VAMOS VER 
AGORA!!!
Modelos De Fluxos
Modelo de Dados
• Se nos requisitos do software tiver a necessidade de criar, 
estender ou interfacear com um banco de dados a equipe 
pode optar por criar um Modelo de Dadospode optar por criar um Modelo de Dados
• Como é feito?
• Define-se todos os objetos de dados processados no sistema, 
os relacionamentos entre os objetos de dados e outras 
informações pertinentes aos relacionamentos
Modelos De Fluxos
Modelo de Dados
• Objetos de Dados
• Representação das informações compostas que devem ser 
compreendidas pelo softwarecompreendidas pelo software
• Informação composta = algo que tem propriedades ou 
atributos diferentes
• Largura = NÃO é um objeto porque tem somente um único valor
• Dimensões = pode ser um objeto, porque tem vários atributos 
(altura, largura e profundidade)
Modelos De Fluxos
Modelo de Dados
• Um objeto de dadosobjeto de dados encapsula apenas dados, não há 
referência a operações que atuam sobre os dados
tabela• O objeto de dados pode ser representado como uma tabela
Marca Modelo Chassi Tipo Cor Proprietário
Modelos De Fluxos
Modelo de Dados
• Atributos de dados Atributos de dados definem as propriedades de um objeto 
de dados e podem ser usados para
• dar nome a uma instância: atributos nominativos• dar nome a uma instância: atributos nominativos
• descrever a instância: atributos descritivos
• fazer referência a outra instância: atributos referenciais
• Tem também o identificador (chave)
Modelos De Fluxos
Modelo de Dados
Atributos nominativos
Identificador
Atributos descritivos Atributos Referenciais
OBJETO: Carro
Marca Modelo Chassi Tipo Cor CPF
Proprietário
Lexus LS400 AB123 Sedã Branco 25274046822
Chevy Corvette X456 Sport Vermelho 28569314755
Ford Taurus Q12A45 Sedã Azul 17855523699
Instâncias do objeto CARRO
Modelos De Fluxos
Modelo de Dados
• RelacionamentosRelacionamentos: os objetos são interligados de várias 
formas
• Mas quais os relacionamentos? 
• É necessário entender o contexto do software para definir os 
relacionamentos entre os objetos
• Ex: uma pessoa possui um carro, uma pessoa tem habilitação para 
dirigir um carro, uma pessoa vende um carro
Modelos De Fluxos
Modelo de Dados
• Para modelar dados pode ser usado um DER - Diagrama 
Entidade-Relacionamento
• Um diagrama entidade-relacionamento (entity-relationship • Um diagrama entidade-relacionamento (entity-relationship 
diagram) representa todos os objetos de dados introduzidos, 
armazenados e transformados em uma aplicação e os 
relacionamentos entre os dados
Modelos De Fluxos
Modelo de Dados - DER
 erd modelo dados
Modelo
Marca
Objeto
Carro Pessoa
Modelo
Chassi
Cor
Tipo
Possui
Relacionamento entre objetosAtributos do objeto
Elementos do Modelo de Análise
Modelos de classes
(ex: diagramas de 
classes, diagramas 
de colaboração)
Modelos baseados 
em cenários
(ex: casos de uso, 
diagramas de 
atividades e de raias)
Requisitos
de software
Modelos 
comportamentais
(ex: diagramas de 
estado, diagramas de 
sequência)
Modelos de fluxos
(ex: DFDs, modelos 
de dados)
Modelos De Classes
• A Modelagem baseada em Classes representa os objetos
que o sistema irá manipular, as operações (métodos) que 
serão aplicadas aos objetos e as colaborações entre as serão aplicadas aos objetos e as colaborações entre as 
classes definidas
• Para aprender a fazer os Modelos de Classes é necessário 
conhecer pelo menos o básico de Orientação a Objetos
Modelos De Classes
Diagrama de Classes
• ClassesClasses de objetos são retângulos com 
• Nome na parte superior
• Atributos na seção intermediária
 class classe
Funcionário• Atributos na seção intermediária
• Operações na seção inferior
Funcionário
- CPF
- Nome
- Endereço
- email
+ obterFoto()()
Leitura Recomendada
– Capítulo 6 e 7 do livro texto: Pressman, 
Roger. Engenharia de Software, 7ed. 
McGrawHill, Porto Alegre, RS, 2011.
– Capítulo 5 do livro texto: Sommerville, Ian. – Capítulo 5 do livro texto: Sommerville, Ian. 
Engenharia de Software, 9ed. Prentice Hall, 
São Paulo, SP, 2011.
– Livro Booch, Grady, et al. UML Guia do 
Usuário, 2ed. Editora Campus, Rio de Janeiro, 
RJ, 2005.

Outros materiais