21
Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

Embed Size (px)

Citation preview

Page 1: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

Prof.: Bruno Rafael de Oliveira Rodrigues

ENGENHARIA DE SOFTWARE

Page 2: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

REQUISITOS DE SOFTWARE

• O processo de descobrir, analisar, documentar e verificar os serviços e restrições é chamado de engenharia de requisitos (RE – Requirements Enginnering) (SOMMERVILLE, 2007).

Page 3: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

• É consenso que a qualidade do produto de software, bem como a satisfação do cliente dependem de uma completa e consistente especificação de requisitos. Didier (2003)

Page 4: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

• Quanto mais tarde problemas com requisitos forem detectados no processo de desenvolvimento, maior será o custo para corrigí-los.

Page 5: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

ETAPAS DA ENGENHARIA DE REQUISITOS

Page 6: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

ELICITAÇÃO

• Faz se a coleta e identificação das fontes de dados. É a fase onde entende-se o problema.

Page 7: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

ANÁLISE DE NEGOCIAÇÃO

• Os usuários envolvidos negociam para decidir quais requisitos realmente irão fazer parte do sistema.

Page 8: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

DOCUMENTAÇÃO

• Os requisitos são documentados em um nível adequado de detalhes. A documentação de requisitos é feita, normalmente, usando a linguagem natural, e deve ser escrita de tal forma que todos os usuários entendam a documentação.

Page 9: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

VALIDAÇÃO

• Verifica se os requisitos estão completos e consistentes

Page 10: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

CLASSIFICAÇÃO DOS REQUISITOS

• Funcionais• Não-Funcionais• De Domínio

Page 11: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

REQUISITOS FUNCIONAIS

• Traduzir aquilo que se espera do sistema, estando diretamente vinculados à funcionalidade do software. Devem descrever funções que o sistema precisa fornecer e como deve se comportar em determinadas situações, correspondendo a uma listagem de tudo que o sistema deve fazer.

Page 12: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

EXEMPLO

• O sistema deve emitir um relatório mensal de clientes inadimplentes;

• O sistema deve prover um formulário para entrada de dados de um paciente;

• O sistema deve emitir um comprovante de pagamento para o cliente.

Page 13: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

REQUISITOS NÃO FUNCIONAIS

• São restrições colocadas sobre como o sistema deve realizar seus requisitos funcionais. (Wazlawick, 2004).

Page 14: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

CLASSIFICAÇÃO DOS REQUISITOS NÃO FUNCIONAIS

• Segundo Kotonya e Sommerville (1997), algumas categorias para classificação de requisitos não funcionais.

Page 15: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

REQUISITOS DE PRODUTO

• São aqueles que definem como o produto deve se comportar. Alguns exemplos de requisitos de produto são os requisitos de desempenho, confiabilidade que definem a taxa aceitável de falhas, requisitos de portabilidade e requisitos de usabilidade.

Page 16: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

REQUISITOS DE PROCESSO OU ORGANIZACIONAIS:

• São consequências das políticas e normas estabelecidas pela organização ou pelo desenvolvedor. Entre estes requisitos, temos os requisitos de implementação, como a linguagem de programação ou o método de projeto usado, e requisitos de entrega que especificam quando o produto e a sua documentação devem ser entregues

Page 17: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

REQUISITOS EXTERNOS

• São aqueles que provêm de fatores que são externos ao sistema e a seu processo do desenvolvimento. Por exemplo, temos os requisitos legais, que garantem que o sistema está de acordo com a lei vigente.

Page 18: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE
Page 19: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

REQUISITOS DE DOMÍNIO

• São requisitos provenientes do domínio da aplicação do sistema e refletem as características e as restrições desse domínio. Podem ser requisitos funcionais ou não funcionais.

• Podem ser funcionais novos, restrições sobre requisitos existentes ou outros mais específicos.

Page 20: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

APRENDA MAIS

• Procure mais sobre as técnicas de elicitação de requisitos. Monte um caso de uso de como utilizar uma das técnicas.

Page 21: Prof.: Bruno Rafael de Oliveira Rodrigues ENGENHARIA DE SOFTWARE

BIBLIOGRAFIADIDIER, A. C. V. B. WRE-Process: um processo de engenharia de requisitos baseados no RUP. 246f. Dissertacao (Mestrado) – UFPE, Recife, 2003.

PRESSMAN, R. S. Engenharia de software. 6. ed. Sao Paulo: McGraw-Hill, 2006.

SOMMERVILLE, I. Engenharia de software. 8. ed. Sao Paulo: Pearson Addison- Wesley, 2007.

KOTONYA, Gerald; SOMMERVILLE, Ian. Requirements engineering: processes and techniques. England: John Wiley & Soons, 1997.