25
Universidade Federal da Paraíba - UFPB Programa de Pós Graduação em Informática- PPGI Engenharia de Software Mestrado – UFPB Mestranda Stephany Vitório Capítulo 04 do livro de Sommerville Ed. 9 Engenharia de Requisitos

Es capítulo 4 - engenharia de requisitos

Embed Size (px)

DESCRIPTION

Engenharia de Software

Citation preview

Page 1: Es   capítulo 4  - engenharia de requisitos

Universidade Federal da Paraíba - UFPBPrograma de Pós  Graduação em Informática- PPGIEngenharia de SoftwareMestrado – UFPB

Mestranda

Stephany Vitório

Capítulo 04 do livro de Sommerville Ed. 9

Engenharia de Requisitos

Page 2: Es   capítulo 4  - engenharia de requisitos

Roteiro

O que é Requisito, Engenharia de Requisitos e Stakeholder?

Importância da Engenharia de Requisitos

Atividades principais da ER

Requisitos Tipos de Requisitos

Requisitos de Qualidade

Características Importantes

Page 3: Es   capítulo 4  - engenharia de requisitos

O que é requisito?

Uma descrição do que o sistema tem que fazer.

“Condição que se deve satisfazer para alcançar um objetivo”

Page 4: Es   capítulo 4  - engenharia de requisitos

O que é requisito?

Condição para satisfazer um contrato, um padrão, especificação ou outro documento formalmente imposto.

“Exigência que deve ser cumprida para atingir um objetivo”

Page 5: Es   capítulo 4  - engenharia de requisitos

O que é Engenharia de Requisitos?

“É o processo pelo qual os requisitos de um produto de software são coletados, analisados, documentados e gerenciados ao longo de todo o ciclo de vida do software.”

“É a ciência que estuda a criação, construção, análise, desenvolvimento e manutenção dos requisitos que devem ser cumpridos por um sistema.”

Page 6: Es   capítulo 4  - engenharia de requisitos

O que é Engenharia de Requisitos?

Engenharia de requisitos é uma abordagem sistemática e disciplinada para a especificação e gerenciamento de requisitos com os seguintes objetivos:

Conhecer os requisitos pertinentes, alcançar um consenso entre os stakeholders sobre esses requisitos, documentando-os de acordo com as normas dadas e gerenciando-as sistematicamente.

Compreender e documentar os desejos e necessidades dos stakeholders, que especifica o gerenciamento de requisitos para minimizar o risco de entregar um sistema que não atende os desejos das partes interessadas.

Page 7: Es   capítulo 4  - engenharia de requisitos

O que é Stakeholder?

“É uma pessoa ou uma organização que tem algum impacto direto ou indireto sobre os requisitos do sistema.”

Interessados Envolvidos

Page 8: Es   capítulo 4  - engenharia de requisitos

Importância da Engenharia de Requisitos

“A parte mais árdua na construção de um software consiste exatamente em identificar o que construir . Nenhuma outra fase compromete tanto o resultado do trabalho se elaborada de forma incorreta. Nenhuma outra parte dificulta tanto as correções posteriores.” Frederick P. Brooks

Problemas com requisitos levam a:­ Clientes insatisfeitos;­ Altos custos;­ Perda de reputação;­ Compreensão do “problema incorreto”;­ Efeito cascata nas demais fases de desenvolvimento de software.

Page 9: Es   capítulo 4  - engenharia de requisitos

Importância da Engenharia de Requisitos

Page 10: Es   capítulo 4  - engenharia de requisitos

Problemas de Comunicação

Page 11: Es   capítulo 4  - engenharia de requisitos

Problemas de Comunicação

Quando conversar com um colega de trabalho ou um cliente, lembre-se de que a comunicação transcende as palavras .” Mari Geuer

Omissão de Requisitos

Page 12: Es   capítulo 4  - engenharia de requisitos

Sintomas e Causas de uma ER inadequada

Pressão do cliente para uma construção rápida do sistema

“Temos que nos acostumar com a pressão. Mais além, toda vez que sentirmos pressão, mentalizar que isso nos ajuda a alcançar nossos objetivos. Dá-nos mais gás para agir em direção à nossa meta.” Lauro Valente

Requisitos Incorretos

Page 13: Es   capítulo 4  - engenharia de requisitos

Sintomas e Causas de uma ER inadequada

Suposição incorreta, por parte dos stakeholders, de que muito do assunto é evidente

“Geralmente as pessoas falham em serem bons ouvintes. Elas simplesmente presumem que sabem o que a outra pessoa esta dizendo ou simplesmente porque elas já ouviram isso antes adotam a ideia de que aquela pessoa é igual a outra “

Requisitos Ambíguos

Page 14: Es   capítulo 4  - engenharia de requisitos

4 atividades principais da ER

Elicitação Documentação

Validação

Gerenciamento de Requisitos

Page 15: Es   capítulo 4  - engenharia de requisitos

Elicitação

Para a etapa de identificação, levantamento e detalhamento de requisitos, podem ser utilizadas diversas técnicas, como, entrevista, estudo arqueológico, JAD, brainstorming, dentre outros.

O engenheiro de requisitos precisa extrair, sugar todas as informações possíveis dos stakeholders e identificar requisitos através de pesquisas.

Page 16: Es   capítulo 4  - engenharia de requisitos

Documentação

Para documentar requisitos podem ser utilizadas a linguagem natural e modelos formais, utilizando UML, como por exemplo, diagrama de estado, sequência, casos de uso e especificações de casos de uso.

É importante registrar as informações coletadas e identificadas na etapa de levantamento de requisitos de forma adequada.

Page 17: Es   capítulo 4  - engenharia de requisitos

Validação e Negociação

Para negociar e validar os requisitos é importante ter a avaliação de um especialista, de modo que possa ser verificado se o que foi levantado condiz com o que foi solicitado.

Deve ser garantida a qualidade dos requisitos, validando se estão corretos. Para isso é importante negociar com o cliente o que realmente é necessário para o produto.

Page 18: Es   capítulo 4  - engenharia de requisitos

Gerenciamento

Gerenciar consiste em manter os dados consistentes, com qualidade garantindo que eles possam ser implementados. É uma etapa ortogonal as outras 3 visto que trabalha garantindo a execução destas.

Compreende todas as medidas que são necessárias às exigências de estrutura para que as outras 3 etapas da ER possa ocorrer.

Page 19: Es   capítulo 4  - engenharia de requisitos

Tipos de Requisitos de Sistema

Requisitos Funcionais­ Descrevem os serviços que se espera que o sistema deve oferecer.­ Especificam as funcionalidades do sistema.

Requisitos Não Funcionais­ Descrevem aspectos de qualidade que o software deverá apresentar, ou as

restrições a serem atendidas.­ Os requisitos não funcionais referem-se às condições nas quais deve

funcionar o sistema. ­ Podem estar relacionados a propriedades do sistema, tais como,

confiabilidade, desempenho, etc.

Page 20: Es   capítulo 4  - engenharia de requisitos

Como especificar requisitos funcionais?

Linguagem Natural­ Os requisitos funcionais

podem ser descritos em linguagem natural em nível macro.

Casos de uso­ Um modelo de casos de uso

é utilizado para representar as funcionalidades do sistema de forma

detalhada.

­ Um modelo de casos de uso identifica quem ou o que interage com o sistema e o que sistema deve fazer.

­ Casos de uso são técnicas baseadas em cenários onde são identificados atores e sua interação com o sistema.

Page 21: Es   capítulo 4  - engenharia de requisitos

Requisitos Não Funcionais

Page 22: Es   capítulo 4  - engenharia de requisitos

TIPOS DE REQUISITOS NÃO FUNCIONAIS (Sommerville)

Requisitos de produtos

­ São os requisitos que especificam o comportamento do produto.

­ Exemplo: requisitos de desempenho, que especificam com que rapidez o sistema deve operar.

Requisitos organizacionais

­ São procedentes de políticas e procedimentos nas organizações do cliente e do desenvolvedor.

­ Entre os exemplos estão os padrões de processos que devem ser utilizados, os requisitos de implementação, como a linguagem de programação ou a metodologia de processo de desenvolvimento.

Requisitos externos

­ Abrange todos os requisitos procedentes de fatores externos ao sistema e ao seu processo de desenvolvimento.

­ Exemplo: requisitos de interoperabilidade, requisitos legais, requisitos éticos.

Page 23: Es   capítulo 4  - engenharia de requisitos

Desafios da Análise de Requisitos

Como descobrir os requisitos;

Como comunicar os requisitos para as outras fases ou equipes do projeto;

Como lembrar dos requisitos durante o desenvolvimento e verificar se foram todos atendidos

Como gerenciar a mudança

Page 24: Es   capítulo 4  - engenharia de requisitos

Conclusão

Um processo de engenharia de requisitos eficiente evita uma compreensão incorreta dos requisitos.

Page 25: Es   capítulo 4  - engenharia de requisitos

Universidade Federal da Paraíba - UFPBPrograma de Pós  Graduação em Informática- PPGIEngenharia de SoftwareMestrado – UFPB

Mestranda

Stephany Vitório

Capítulo 04 do livro de Sommerville Ed. 9

Engenharia de Requisitos