·
Análise e Desenvolvimento de Sistemas ·
Engenharia de Software
Envie sua pergunta para a IA e receba a resposta na hora

Prefere sua atividade resolvida por um tutor especialista?
- Receba resolvida até o seu prazo
- Converse com o tutor pelo chat
- Garantia de 7 dias contra erros
Recomendado para você
33
Introdução à Linguagem Python: Características e Aplicações
Engenharia de Software
UNICSUL
8
Introdução a Engenharia de Requisitos
Engenharia de Software
UNICSUL
10
Importância da Indentação no Código Python
Engenharia de Software
UNICSUL
3
01_curso de Ambientação Digital
Engenharia de Software
UNICSUL
32
Estruturas de Repetição em Programação: Conceitos e Sintaxe
Engenharia de Software
UNICSUL
4
Prova - Metodologias de Desenvolvimento de Sistemas
Engenharia de Software
UMG
7
Engenharia de Software Estacio
Engenharia de Software
UMG
4
Análise de Sistemas Orientada a Objetos Questionário Unidade 1
Engenharia de Software
UNIP
5
Arquitetura de Software Atividade 4
Engenharia de Software
UAM
4
Prova - Metodologias de Desenvolvimento de Sistemas
Engenharia de Software
UMG
Texto de pré-visualização
ENGENHARIA DE SOFTWARE Prof Me Aldo Henrique Engenharia de Software Casos de Uso Engenharia de Software O que é Casos de Uso Uma técnica para capturar requisitos funcionais Funcionais Representam as funcionalidades do sistema Não funcionais Representam atributos de qualidade quanto o sistema é usável testável manutenível etc Descreve o sistema sob a perspectiva do usuário final Descreve a interação típica dos usuários com o sistema Usualmente se inicia na analise de cenários de uso previamente descritos em linguagem natural Fornece uma narrativa estruturada dessa interação Engenharia de Software Exemplo de cenário de uso Casos de Uso O cliente folheia o catálogo e seleciona itens para adicionar na cesta de compras Quando o cliente deseja fechar a compra deve informar os dados do cartão de crédito e confirmar a compra O sistema autoriza a venda junto à operadora do cartão e notifica o cliente tanto de forma síncrona na tela quanto de forma assíncrona via email Cenário Típico Cenário Típico Engenharia de Software E os cenários derivados Nem sempre as coisas acontecem como esperamos O cartão pode não ser autorizado pela operadora Um cliente conhecido pode pendurar a conta e só pagar no final do mês Todos esses cenários são diferentes porém similares Todos tem o mesmo objetivo comprar produtos Todos pertencem ao mesmo caso de uso comprar produtos Engenharia de Software Caso de Uso Objetiv o em Comum 1 Cenári o 2 Cenário Cenári o N Engenharia de Software Caso de Uso O caso de uso foca no cenário típico onde tudo acontece na maior parte das vezes Os cenários alternativos também são descritos no caso de uso em uma seção separada Também conhecido como extensões Deve indicar o ponto em que estende o cenário típico Deve indicar o ponto em que retorna ao cenário típico Engenharia de Software Atores Representa as entidades que se relacionam com o sistema Exemplos Usuário Cliente Representante do cliente caixa do supermercado Gerente Sistema externo Etc Importante ator é o papel e não a pessoa Ex Se existe um cliente do sistema chamado João existe um ator chamado cliente e não um ator chamado João Tipos de atores Primário são beneficiados diretamente pelo caso de uso Secundários atores que participam como coadjuvantes no caso de uso Engenharia de Software Atores Sistema Ator 2 Ator N Ator 1 O sistema é a soma de todos os casos de uso O sistema é a soma de todos os casos de uso Engenharia de Software Identificação de casos de uso e atores Ler a descrição em linguagem natural do sistema buscando por Casos de uso candidatos verbos Atores candidatos substantivos Exemplo O cliente entra na loja para comprar produtos O porteiro registra a chegada de encomendas Engenharia de Software Conteúdo de um Caso de Uso Não existe consenso na estrutura interna de um caso de uso Algumas estruturas são utilizadas recorrentemente Simples Detalhada É importante selecionar uma estrutura que seja adequada para o problema e o processo em uso Engenharia de Software Estrutura simples de um caso de uso Nome Cenário típico Cenários alternativos Engenharia de Software Estrutura simples de um caso de uso exemplo Nome UC1 Compra de produto Cenário típico 1 O cliente folheia o catálogo e seleciona itens para comprar 2 O cliente fecha a compra 3 O cliente escolhe a forma de entrega 4 O sistema apresenta o preço total 5 O cliente fornece os dados do cartão de crédito 6 O sistema autoriza a compra 7 O sistema confirma na tela a compra 8 O sistema envia um email confirmando a compra Cenários alternativos 5a O cliente é conhecido 1 O sistema pendura o pagamento 2 Retorna para o passo 7 do fluxo principal 6a A operadora do cartão não autoriza a compra 1 O cliente pode fornecer outro cartão retornando para o passo 5 ou cancelar a compra Engenharia de Software Estrutura detalhada de um caso de uso Nome Lista de atores Visão geral descrição Referências cruzadas Requisitos Outros casos de uso relacionados Classes que implementam o caso de uso ótimo para manutenção Gatilho quando um cenário alternativo é muito complexo e ele transforma em um novo caso de uso Précondições Póscondições Cenário típico Cenários alternativos Engenharia de Software Estrutura detalhada de um caso de uso exemplo Lista de atores Cliente Sistema de autorização de cartão Visão geral descrição Um cliente acessa o site de venda de produtos e Referências cruzadas Requisitos R1 R5 R10 Outros casos de uso relacionados UC3 Valida Usuário Classes que implementam o caso de uso CompraBean Gatilho Não se aplica Précondições Antes de iniciar o caso de uso o usuário deve fazer login no sistema UC3 Login Póscondições Caso a venda ocorra com sucesso o estoque deve sofrer baixa da quantidade de produtos vendidos Engenharia de Software Descrição de um cenário O cenário é composto de passos Lista de passos Tabela com uma coluna para os atores e outra para o sistema Cada passo descreve O ator envolvido A sua intenção naquela interação 1 2 3 4 5 6 7 8 O cliente folheia o catálogo e seleciona itens para comprar O cliente fecha a compra O cliente escolhe a forma de entrega O sistema apresenta o preço total O cliente fornece os dados do cartão de crédito O sistema autoriza a compra O sistema confirma na tela a compra O sistema envia um email confirmando a compra Ator Sistema 3 O cliente escolhe a forma de entrega 4 O sistema apresenta o preço total 5 O cliente fornece os dados do cartão de crédito 6 O sistema autoriza a compra Engenharia de Software Perguntas para identificar atores e casos de uso Quem utiliza o sistema Como é o uso do sistema Quais informações são fornecidas ou obtidas do sistema Como o sistema é mantido CRUDCADASTRAR create LER READ ATUALIZAR UPDATE DELETAR DELETE Quais outros sistemas interagem com esse sistema Engenharia de Software Perguntas para identificar cenários Quando tudo dá certo como o sistema se comporta Algo pode ocorrer de forma diferente nesse passo O que pode dar errado nesse passo Engenharia de Software Caso de uso x passo Quando um passo for muito complicado Verifique se o cenário alternativo está se misturando com o cenário típico Verifique se é possível transformar o passo em outro caso de uso Quando um passo vira um novo caso de uso O primeiro caso de uso deve incluir o segundo Na UML relação de include Na descrição do caso de uso hiperlink para o outro caso de uso Cuidado Não faça decomposição funcional do caso de uso Engenharia de Software Dicas Comecem da estrutura simples e adicionem somente os elementos necessários Façam casos de uso enxutos Casos de uso longos não são lidos Adicione detalhes de forma proporcional ao risco do caso de uso Engenharia de Software Diagrama de casos de uso A maior riqueza dos casos de uso está na sua descrição não no diagrama Contudo a UML oferece um diagrama que permite visualizar Os atores Os casos de uso O relacionamento entre atores e casos de uso O relacionamento entre casos de uso Serve como um índice visual dos casos de uso Engenharia de Software Diagrama de casos de uso elementos Ator Participação de um ator no caso de uso Caso de uso Compra Produtos Cliente Cliente Compra Produtos Engenharia de Software Diagrama de casos de uso Relacionamento de generalização Relação é um entre atores Relação é um tipo de entre casos de uso Serve para representar variantes tecnológicas de um caso de uso Cliente Cliente VIP Valida Usuário Valida Usuário pela Digital Engenharia de Software Diagrama de casos de uso relacionamento de extensão Extensão Encapsula um cenário alternativo complexo em um outro caso de uso Utiliza o campo Gatilho para definir o momento que entra em ação Pode ser visto como um remendo do caso de uso base Compra Produtos extend Pendura Conta Engenharia de Software Diagrama de casos de uso relacionamento de inclusão Inclusão Adição de um comportamento específico em um ponto determinado do caso de uso Útil quando esse comportamento é repetido em diversos casos de uso do sistema Valida Usuário Compra Produtos include Engenharia de Software Exemplo Compra Produtos Cliente Gerente Funcionário Valida Usuário include Obtem Reembolso include include Inicializa o Sistema include Mantém Usuários Pendura Conta extend Engenharia de Software Bibliografia Cockburn Alistair 2000 Writing Effective Use Cases AddisonWesley Professional Fowler Martin 2003 UML Distilled A Brief Guide to the Standard Object Modeling Language 3rd ed AddisonWesley Professional Pressman Roger 2004 Software Engineering A Practitioners Approach 6th ed McGrawHill
Envie sua pergunta para a IA e receba a resposta na hora
Recomendado para você
33
Introdução à Linguagem Python: Características e Aplicações
Engenharia de Software
UNICSUL
8
Introdução a Engenharia de Requisitos
Engenharia de Software
UNICSUL
10
Importância da Indentação no Código Python
Engenharia de Software
UNICSUL
3
01_curso de Ambientação Digital
Engenharia de Software
UNICSUL
32
Estruturas de Repetição em Programação: Conceitos e Sintaxe
Engenharia de Software
UNICSUL
4
Prova - Metodologias de Desenvolvimento de Sistemas
Engenharia de Software
UMG
7
Engenharia de Software Estacio
Engenharia de Software
UMG
4
Análise de Sistemas Orientada a Objetos Questionário Unidade 1
Engenharia de Software
UNIP
5
Arquitetura de Software Atividade 4
Engenharia de Software
UAM
4
Prova - Metodologias de Desenvolvimento de Sistemas
Engenharia de Software
UMG
Texto de pré-visualização
ENGENHARIA DE SOFTWARE Prof Me Aldo Henrique Engenharia de Software Casos de Uso Engenharia de Software O que é Casos de Uso Uma técnica para capturar requisitos funcionais Funcionais Representam as funcionalidades do sistema Não funcionais Representam atributos de qualidade quanto o sistema é usável testável manutenível etc Descreve o sistema sob a perspectiva do usuário final Descreve a interação típica dos usuários com o sistema Usualmente se inicia na analise de cenários de uso previamente descritos em linguagem natural Fornece uma narrativa estruturada dessa interação Engenharia de Software Exemplo de cenário de uso Casos de Uso O cliente folheia o catálogo e seleciona itens para adicionar na cesta de compras Quando o cliente deseja fechar a compra deve informar os dados do cartão de crédito e confirmar a compra O sistema autoriza a venda junto à operadora do cartão e notifica o cliente tanto de forma síncrona na tela quanto de forma assíncrona via email Cenário Típico Cenário Típico Engenharia de Software E os cenários derivados Nem sempre as coisas acontecem como esperamos O cartão pode não ser autorizado pela operadora Um cliente conhecido pode pendurar a conta e só pagar no final do mês Todos esses cenários são diferentes porém similares Todos tem o mesmo objetivo comprar produtos Todos pertencem ao mesmo caso de uso comprar produtos Engenharia de Software Caso de Uso Objetiv o em Comum 1 Cenári o 2 Cenário Cenári o N Engenharia de Software Caso de Uso O caso de uso foca no cenário típico onde tudo acontece na maior parte das vezes Os cenários alternativos também são descritos no caso de uso em uma seção separada Também conhecido como extensões Deve indicar o ponto em que estende o cenário típico Deve indicar o ponto em que retorna ao cenário típico Engenharia de Software Atores Representa as entidades que se relacionam com o sistema Exemplos Usuário Cliente Representante do cliente caixa do supermercado Gerente Sistema externo Etc Importante ator é o papel e não a pessoa Ex Se existe um cliente do sistema chamado João existe um ator chamado cliente e não um ator chamado João Tipos de atores Primário são beneficiados diretamente pelo caso de uso Secundários atores que participam como coadjuvantes no caso de uso Engenharia de Software Atores Sistema Ator 2 Ator N Ator 1 O sistema é a soma de todos os casos de uso O sistema é a soma de todos os casos de uso Engenharia de Software Identificação de casos de uso e atores Ler a descrição em linguagem natural do sistema buscando por Casos de uso candidatos verbos Atores candidatos substantivos Exemplo O cliente entra na loja para comprar produtos O porteiro registra a chegada de encomendas Engenharia de Software Conteúdo de um Caso de Uso Não existe consenso na estrutura interna de um caso de uso Algumas estruturas são utilizadas recorrentemente Simples Detalhada É importante selecionar uma estrutura que seja adequada para o problema e o processo em uso Engenharia de Software Estrutura simples de um caso de uso Nome Cenário típico Cenários alternativos Engenharia de Software Estrutura simples de um caso de uso exemplo Nome UC1 Compra de produto Cenário típico 1 O cliente folheia o catálogo e seleciona itens para comprar 2 O cliente fecha a compra 3 O cliente escolhe a forma de entrega 4 O sistema apresenta o preço total 5 O cliente fornece os dados do cartão de crédito 6 O sistema autoriza a compra 7 O sistema confirma na tela a compra 8 O sistema envia um email confirmando a compra Cenários alternativos 5a O cliente é conhecido 1 O sistema pendura o pagamento 2 Retorna para o passo 7 do fluxo principal 6a A operadora do cartão não autoriza a compra 1 O cliente pode fornecer outro cartão retornando para o passo 5 ou cancelar a compra Engenharia de Software Estrutura detalhada de um caso de uso Nome Lista de atores Visão geral descrição Referências cruzadas Requisitos Outros casos de uso relacionados Classes que implementam o caso de uso ótimo para manutenção Gatilho quando um cenário alternativo é muito complexo e ele transforma em um novo caso de uso Précondições Póscondições Cenário típico Cenários alternativos Engenharia de Software Estrutura detalhada de um caso de uso exemplo Lista de atores Cliente Sistema de autorização de cartão Visão geral descrição Um cliente acessa o site de venda de produtos e Referências cruzadas Requisitos R1 R5 R10 Outros casos de uso relacionados UC3 Valida Usuário Classes que implementam o caso de uso CompraBean Gatilho Não se aplica Précondições Antes de iniciar o caso de uso o usuário deve fazer login no sistema UC3 Login Póscondições Caso a venda ocorra com sucesso o estoque deve sofrer baixa da quantidade de produtos vendidos Engenharia de Software Descrição de um cenário O cenário é composto de passos Lista de passos Tabela com uma coluna para os atores e outra para o sistema Cada passo descreve O ator envolvido A sua intenção naquela interação 1 2 3 4 5 6 7 8 O cliente folheia o catálogo e seleciona itens para comprar O cliente fecha a compra O cliente escolhe a forma de entrega O sistema apresenta o preço total O cliente fornece os dados do cartão de crédito O sistema autoriza a compra O sistema confirma na tela a compra O sistema envia um email confirmando a compra Ator Sistema 3 O cliente escolhe a forma de entrega 4 O sistema apresenta o preço total 5 O cliente fornece os dados do cartão de crédito 6 O sistema autoriza a compra Engenharia de Software Perguntas para identificar atores e casos de uso Quem utiliza o sistema Como é o uso do sistema Quais informações são fornecidas ou obtidas do sistema Como o sistema é mantido CRUDCADASTRAR create LER READ ATUALIZAR UPDATE DELETAR DELETE Quais outros sistemas interagem com esse sistema Engenharia de Software Perguntas para identificar cenários Quando tudo dá certo como o sistema se comporta Algo pode ocorrer de forma diferente nesse passo O que pode dar errado nesse passo Engenharia de Software Caso de uso x passo Quando um passo for muito complicado Verifique se o cenário alternativo está se misturando com o cenário típico Verifique se é possível transformar o passo em outro caso de uso Quando um passo vira um novo caso de uso O primeiro caso de uso deve incluir o segundo Na UML relação de include Na descrição do caso de uso hiperlink para o outro caso de uso Cuidado Não faça decomposição funcional do caso de uso Engenharia de Software Dicas Comecem da estrutura simples e adicionem somente os elementos necessários Façam casos de uso enxutos Casos de uso longos não são lidos Adicione detalhes de forma proporcional ao risco do caso de uso Engenharia de Software Diagrama de casos de uso A maior riqueza dos casos de uso está na sua descrição não no diagrama Contudo a UML oferece um diagrama que permite visualizar Os atores Os casos de uso O relacionamento entre atores e casos de uso O relacionamento entre casos de uso Serve como um índice visual dos casos de uso Engenharia de Software Diagrama de casos de uso elementos Ator Participação de um ator no caso de uso Caso de uso Compra Produtos Cliente Cliente Compra Produtos Engenharia de Software Diagrama de casos de uso Relacionamento de generalização Relação é um entre atores Relação é um tipo de entre casos de uso Serve para representar variantes tecnológicas de um caso de uso Cliente Cliente VIP Valida Usuário Valida Usuário pela Digital Engenharia de Software Diagrama de casos de uso relacionamento de extensão Extensão Encapsula um cenário alternativo complexo em um outro caso de uso Utiliza o campo Gatilho para definir o momento que entra em ação Pode ser visto como um remendo do caso de uso base Compra Produtos extend Pendura Conta Engenharia de Software Diagrama de casos de uso relacionamento de inclusão Inclusão Adição de um comportamento específico em um ponto determinado do caso de uso Útil quando esse comportamento é repetido em diversos casos de uso do sistema Valida Usuário Compra Produtos include Engenharia de Software Exemplo Compra Produtos Cliente Gerente Funcionário Valida Usuário include Obtem Reembolso include include Inicializa o Sistema include Mantém Usuários Pendura Conta extend Engenharia de Software Bibliografia Cockburn Alistair 2000 Writing Effective Use Cases AddisonWesley Professional Fowler Martin 2003 UML Distilled A Brief Guide to the Standard Object Modeling Language 3rd ed AddisonWesley Professional Pressman Roger 2004 Software Engineering A Practitioners Approach 6th ed McGrawHill