25
Técnicas e Projeto de Sistemas André Mesquita Rincon [email protected] [email protected] Engenharia de requisitos – Retomando Técnico Subsequente – Módulo III (26/04/2010)

Técnicas e Projeto de Sistemas André Mesquita Rincon [email protected] [email protected] Engenharia de requisitos – Retomando Técnico Subsequente

Embed Size (px)

Citation preview

Page 1: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Técnicas e Projeto de Sistemas

André Mesquita [email protected]@gmail.com

Engenharia de requisitos – Retomando

Técnico Subsequente – Módulo III(26/04/2010)

Page 2: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Engenharia de requisitos

o A Engenharia de Requisitos é o processo de identificar todos os envolvidos (stakeholders), descobrir seus objetivos e necessidades, e documentá-los de forma adequada para análise, comunicação e posterior implementação

o A maioria dos processos de Engenharia de Requisitos é composta das seguintes atividades:

o Elicitação de requisitos

oAnálise de requisitos

o Especificação de requisitos

oValidação de requisitos

Page 3: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Engenharia de requisitos

o Visão geral de UMLo Unified Modeling Language (Linguagem de

Modelagem Unificada)o UML é uma linguagem para visualização,

especificação, construção e documentação de artefatos de um software orientado a objeto

o Visa facilitar a comunicação entre “clientes” e desenvolvedores

Page 4: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Casos de uso

o Exemplo de diagrama de caso de uso

Page 5: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Requisitos não funcionais

o Requisitos não-funcionais descrevem características do sistema (como o sistema é) ao invés de suas funcionalidades (o que ele faz)

o Podem constituir restrições aos requisitos funcionais

o Assim como os funcionais eles devem ser verificáveis

Page 6: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Requisitos não funcionais

o Uma prática comum é estabelecer a ISO/IEC 9126 como base para especificação dos requisitos não funcionaiso Confiabilidadeo Usabilidadeo EficiênciaoManutenibilidadeo Portabilidade

Page 7: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Requisitos não funcionais

o Confiabilidadeo Capacidade do produto de software de manter um nível de

desempenho especificado, quando usado em condições especificadas

o Exemplo 1: O tempo médio suportado para recuperação de uma falha no sistema nas funcionalidades essenciais para se realizar XPTO deve ser menor que 1 hora

o Exemplo 2: O tempo médio suportado para recuperação de uma falha no sistema em funcionalidade não crucial para a realização de XPTO deve ser menor que 6 horas

Page 8: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Requisitos não funcionais

o Usabilidadeo Capacidade do produto de software de ser compreendido, aprendido,

operado e ser atraente ao usuário, quando usado sob condições especificadas

o Exemplo 1: O sistema deverá fornecer tópicos de ajuda para cada tela apresentada ao usuário, descrevendo o funcionamento e a descrição dos campos da tela

o Exemplo 2: Os usuários deverão ser capazes de utilizar o software, executando todas as funcionalidades disponibilizadas após uma demonstração de no máximo 10 minutos para cada uma das funcionalidades e características do software

o Exemplo 3: O sistema deverá ter como único idioma (Português do Brasil)

Page 9: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Requisitos não funcionais

o Eficiênciao Capacidade do produto de software de apresentar

desempenho apropriado, relativo à quantidade de recursos usados, sob condições especificadas

o Exemplo 1: O sistema deve permitir o acesso de pelo menos 50 usuários simultâneos sem perdas perceptíveis (ao usuário) de desempenho

Page 10: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Requisitos não funcionais

o Manutenibilidadeo Capacidade do produto de ser modificadoo Exemplo 1: Devem ser entregues documentos de

design que especifiquem a arquitetura e o design detalhado do software

o Exemplo 2: O código desenvolvido e entregue deve ser compatível com o produto do design de software

Page 11: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Requisitos não funcionais

o Portabilidadeo Capacidade de um produto ser transferido de um ambiente

para outro

o Exemplo 1: O sistema deve executar sem perda de funcionalidades em ambiente Linux e Windows, utilizando-se o navegador Firefox versão 3.0 ou superior

o Exemplo 2: O servidor que executará a aplicação deverá tem pelo menos 1GB de memória RAM e processador compatível com Pentium V, com um servidor de aplicação Java e um Sistema de Gerenciamento de Banco de Dados devidamente instalados e configurados

o Exemplo 3: A interface gráfica para o ambiente de mesa de trabalho poderá ser executada em máquinas com, no mínimo, 512 MB de memória RAM

Page 12: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Atividade

1. Adequação dos requisitos não funcionais ao contexto do seu projeto

Page 13: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Casos de uso expandido

o Detalha as ações dos usuários no sistema em forma de sequencia de interações dos atores com o sistema

o É criado um caso de uso expandido “para cada” funcionalidade do sistema que está presente no diagrama de casos de uso

o Pode utilizar protótipos de tela para facilitar o entendimento do usuário

Page 14: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Casos de uso expandido

o Elementos do cabeçalhoo Nome do caso de uso com um identificador único

(UC1, UC2, UC3...)o Descrição breve sobre o caso de usoo Ator(es) envolvidos no caso de usoo Pré-condições para realização do caso de usoo Pós-condições que representa o estado do sistema

após a realização do caso de uso

Page 15: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Casos de uso expandido

o Fluxo principalo Descrição numerada da sequencia de passos que o

ator irá executar durante a realização do caso de usoo1...

o2...

o3...

o4...

Page 16: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Casos de uso expandido

o Fluxo alternativoo Ações que ocorrem dentro do sistema, mas que

não correspondem ao fluxo “normal” que o usuário esperava

o Faz referência ao passo que o fluxo alternativo acontece

o 4... no passo 4 o sistema faz XPTO

o Observaçõeso Informações complementares que podem auxiliar

no entendimento do caso de uso

Page 17: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Casos de uso expandido – exemplo 1

o Processo de autenticação em um sistema web em que é exigido nome de usuário e senha para ter acesso às funcionalidades internas da aplicaçãoo A) a única página do sistema que usuário tem acesso aberto (isto é:

sem estar autenticado) é a página que apresenta o formulário de autenticação.

o B) o sistema deve registrar um log de acesso a cada entrada (log-in) e saída (log-out) do sistema em que as seguintes informações serão armazenadas: nome do usuário, data/hora do log-in ou log-out, IP da máquina e operação realizada (log-in ou log-out).

o C) a seguinte funcionalidade deverá estar presente na sua descrição de caso de uso (seja no fluxo principal ou no fluxo alternativo): “Quando o ator ficar sem realizar ações no sistema por 20 minutos, seu log-out será feito automaticamente”.

Page 18: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Casos de uso expandido – exemplo 1

Page 19: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Casos de uso expandido – exemplo 1

Page 20: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Casos de uso expandido – exemplo 1

Page 21: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Casos de uso expandido – exemplo 2

Page 22: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Casos de uso expandido – exemplo 2

Page 23: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Casos de uso expandido – exemplo 2

Page 24: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Casos de uso expandido – exemplo 2

Page 25: Técnicas e Projeto de Sistemas André Mesquita Rincon andrerincon@ifto.edu.br andre.rincon@gmail.com Engenharia de requisitos – Retomando Técnico Subsequente

Atividade

1. Descrever os casos de uso de vocês utilizando a técnica de casos de uso expandido