Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 8

17
Introdução a Engenharia de Software CJR – Empresa Júnior de Computação

Transcript of Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 8

Page 1: Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 8

Introdução a Engenharia de

SoftwareCJR – Empresa Júnior de Computação

Page 2: Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 8

Engenharia de Requisitos8

Page 3: Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 8

Engenharia de Requisitos!

“O processo de estabelecer os serviços que um cliente quer em um sistema”

“Os requisitos são uma descrição do sistema e suas limitações”

Page 4: Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 8

1 Requisitos

• De usuário • De sistemaLinguagem natural e diagramas Definem exatamente o sistema e suas limitações

Cliente Equipe de DesenvolvimentoContrato

Page 5: Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 8

1 Requisitos

FuncionaisX

Não FuncionaisX

De Domínio

Page 6: Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 8

2 Funcionais

“Descrevem a função do sistema detalhadamente, suas entradas e saídas, exceções, etc...”

“Descrevem como o sistema deve funcionar a partir de certas entradas e como deve funcionar em certas situações”

São as funcionalidades coletadas a partir do cliente

Problemas entre cliente e desenvolvedores quando os requisitos são ambíguos ou mal especificados

Page 7: Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 8

3 Não Funcionais

Não relacionados com as funcionalidades do sistema

Dizem respeito as propriedades emergentes dos sistemas

ConfiabilidadeTempo de RespostaEspaço de ArmazenamentoDesempenhoProteçãoDisponibilidadeEtc....

Não Funcionais > Funcionais

Page 8: Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 8

3 Não Funcionais

R. Não Funcionais

R. De Produto

De facilidade de Uso

De Eficiência

De Desempenho

De Espaço

De Confiabilidade De Portabilidade

R. Organizacionais

De Entrega

De Implementação

De Padrões

R. Externos

De Interoperabilidade

Éticos Legais

De Privacidade

De Segurança

Page 9: Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 8

3 Não Funcionais

R. Não Funcionais

R. De Produto R. Organizacionais R. Externos

“Especificam o comportamento do produto”

“são derivados de politicas e procedimentos da organização do cliente e do desenvolvedor”

“todos os outros fatores externos ao sistema”

Page 10: Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 8

4 De domínio

Vem do domínio da aplicação e refletem características dos mesmos

Page 11: Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 8

5 Requisitos de Usuário

Descrevem tanto requisitos funcionais como os não funcionaisDevem ser compreensíveis para aqueles sem conhecimento técnicoEscritos em linguagem naturalPode-se usar tabelas e diagramas que facilitem a compreensão

Page 12: Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 8

5 Requisitos de Usuário

Descrevem tanto requisitos funcionais como os não funcionaisDevem ser compreensíveis para aqueles sem conhecimento técnicoEscritos em linguagem naturalPode-se usar tabelas e diagramas que facilitem a compreensão

Não é precisaGera confusão entre funcionais e não funcionaisVários requisitos expressos ao mesmo tempoAmbíguaMuito flexível (a mesma coisa pode ser dita de diversas maneiras)

Page 13: Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 8

6 Requisitos de Sistema

Detalhados!Podem ser utilizados em contratosServem como base para a equipe de desenvolvimento

Page 14: Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 8

7 Alternativa para linguagem natural

Page 15: Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 8

8 O documento de requisitos

Documentação oficial do que o sistema deve terDeve possuir os requisitos de usuário e de sistemaDeve definir o quê o sistema faz e não como ele o faz

Page 16: Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 8

Bibliografia

http://www.cs.st-andrews.ac.uk/~ifs/Books/SE7/Presentations/PDF/ch6.pdf

http://www.cs.st-andrews.ac.uk/~ifs/Books/SE7/Presentations/PDF/ch7.pdf

Page 17: Curso de Introdução a Engenharia de Software - CJR/UnB - Aula 8

Renato Leal

[email protected]

[email protected]

CJREmpresa Júnior de Computação da UnB

[email protected]

[email protected]