Ciências da computação dia 93
Engenharia de requisitos
Uma feature não é uma qualidade software. Ou seja, o software ser rápido não é uma feature!
Requisito de software
Uma funcionalidade/característica que o software tem. Sendo assim um software é um conjunto de requisitos.
Engenharia de requisitos
- Vai da primeira ação da engenharia de software até a modelagem;
- não faça apenas um conversa com o cliente;
- Estabelece uma base sólida para o projeto;
Requisitos de usuário (ou história de usuário)
- O que o usuário pede do sistema.
Requisito de sistema
- feito a partir do Requisitos de usuário;
- Descrições mais detalhadas;
- Aquilo que vai ser implementado;
- Quebra do requisito do usuário em partes mais detalhadas, que explica o que o sistema vai fazer, fazendo isso de forma que um desenvolvedor consiga entender e implementar no sistema de forma mais fácil.
Especificação de requisitos de sistema
- listagem dos requisitos do sistema.
Regras de negócio
- Regras que o sistema segue;
- O que o sistema faz e como ele faz;
- Consigo pegar através do levantamento dos requisitos de usuário e transformação para requisitos de sistema.
7 tarefas da engenharia de software
1 --- concepção
- onde nasce a ideia/problema.
2 --- levantamento
- Pega os requisitos de usuário e começa a extrair os requisitos de sistema.
3 --- elaboração
- Refinamento dos requisitos;
- Criar diagramas para que sejam entendidos de uma forma mais fácil.
4 --- negociação
- Ver com o cliente quais requisitos são mais importantes.
5 --- especificação
- Documentação de requisitos;
- Uso do SRS por exemplo.
6 --- validação
- Apresenta à documentação ao cliente para ele verificar se é o que ele quer mesmo;
- Documentação precisa estar clara.
7 --- gestão
- Gerenciamento da lista de requisitos, sempre negociada com o cliente.
Backlog
- Lista de requisitos.
Se o cliente fala que seria legal ter algo no sistema. É por que você não é tão importante.
Project Owner(PO)
- Pessoa que gerencia os requisitos.
Stakeholders
- todos os interessados no projeto.
Requisitos funcionais
- Funcionalidades do software;
- Completude → Devem ser levantados todos os requisitos muito importantes para o que o software funcione à priori;
- Consistência → Um requisito não pode anular outro.
Requisitos não funcionais
- Características do sistema (ser rápido e ser web, por exemplo).