©jaelson castro 2005 slide 1 o processo da engenharia de requisitos

43
©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

Upload: joana-varejao-da-conceicao

Post on 07-Apr-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 1

O Processo da Engenharia de Requisitos

Page 2: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 2

Objetivos Introduzir as noções de processos e modelos de

processo para a engenharia de requisitos. Explicar o papel crítico das pessoas no processo

de engenharia de requisitos. Explicar porque a melhoria do processo é

importante e sugerir um modelo de melhoria de processo para a engenharia de requisitos.

Page 3: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 3

E.R. Motivações

Aspectos Técnicos

Aspectos JurídicosAspectos Sociais/Ambientais

Aspectos Econômicos

Page 4: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 4

S.I. comerciais: 40% S.I. de tempo-real: 75%

E.R. Motivações

Sistemas de Informação centrados em Usuários

Deve ser possível estabelecer se um S.I. está apropriado as necessidades dos usuários

Nível de aceite dos Sistemas de Informação [ M.I. T. report]

Page 5: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 5

o documento de requisitos é um acordo contratual entre clientes e fornecedores

os desenvolvedores de software tem obrigação de inquirir os requisitos dos seus clientes

os desenvolvedores de software têm a obrigação de informar seus usuários acerca da solução proposta (um manual de usuários não é suficiente!)

E.R. Motivações

Alguns aspectos jurídicos:

Page 6: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 6

Desenvolvimento e Manutenção

0%5%

10%15%20%25%30%35%40%45%50%

análise projeto e codificação teste e correções

Custo de Software %

Atividades

E.R. Motivações

Page 7: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 7

E.R. Motivações

% total erros % total do custode correção erros

0%

10%

20%

30%

40%

50%

60%

70%

40%

66%

30%25%

30%

9%

EspecificaçãoProjetoCodificação

Page 8: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 8

E.R. Motivações

Especificação Projeto Codificação0,000,50

1,00

1,50

2,00

2,50

3,00

3,50

4,004,50

5,00

Custo de Correção de 1 erro

Page 9: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 9

Processos Processo é um conjunto organizado de

atividades que transforma entradas em saídas; Descrições de processos encapsulam

conhecimento e permitem que sejam reusados; Exemplos de descrições de processo:

• Manual de instrução de uma máquina de lavar;• Livro de receitas;• Procedimentos manuais para um banco;• Manual de qualidade para o desenvolvimento de software.

Page 10: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 10

O processo de projeto Processo que envolve criatividade, interação

entre um grande número de diferentes pessoas, julgamento de engenharia e experiência e conhecimento prévio;

Exemplos do processo de projeto:• Escrita de um livro;• Organizar uma conferência;• Projeto de um chip processador;• Engenharia de Requisitos.

Page 11: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 11

Processo de ER - entradas e saídas

Informações de Sistemas existentes

Necessidades das Partes envolvidas

Padrões Organizacionais

Regulamentações

Informações do Domínio

Processo daEngenharia deRequisitos

RequisitosAcordados

Especificação do Sistema

Modelos do Sistema

Page 12: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 12

Descrição da entrada/saída

Informação do Domínio Informações gerais sobre o domínio de aplicação do sistema

Entrada ou Saída Tipo Descrição

Informação sobre SistemasExistentes

Entrada Informação sobre a funcionalidade dos sistemas a serem substituídos ou de outros sistemas que interagem com o sistema que está sendo especificado.

Necessidades dos Participantes

Padrões da Organização

Regulamentações

Entrada Descrições do que os participantes necessitam do sistema para suportar seus trabalhos

Entrada Padrões usados na organização relativos às práticas de desenvolvimento de sistemas, gerenciamento da qualidade, etc.

Entrada Regulamentações externas tais como regulamentações de saúde e segurança que se aplicam ao sistema

Entrada

Page 13: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 13

Descrição da entrada/saída

Esta é uma especificação mais detalhada da funcionalidade do sistema que pode ser produzida em alguns casos.

Entrada ou Saída Tipo Descrição

Acordo sobre os Requisitos

Saída Uma descrição dos requisitos do sistema que seja entendida pelos participantes e que tenha sido acorda por estes.

Especificação do Sistema Saída

Saída Um conjunto de modelos, tais como, modelo de fluxo de dados, modelo de objeto, modelo de processo, etc., que descreve o sistema sob diferentes perspectivas.

Modelos do Sistema

Page 14: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 14

Variação do Processo de Requisitos

Os processos de requisitos variam radicalmente de uma organização para outra;

Fatores que contribuem para esta variação:• Maturidade Técnica;• Envolvimento disciplinas;• Cultura Organizacional;• Domínio de aplicação.

Portanto não existe um processo ‘ideal’ de engenharia de requisitos.

Page 15: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 15

Modelos de Processos Um modelo de processo é uma descrição

simplificada do processo descrito de um determinado ponto de vista;

Tipos de modelo de processo:• Modelos de atividades de alto-nível;• Modelos detalhados de atividades;• Modelos de ações-papéis;• Modelos de entidade-relacionamento.

Page 16: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 16

Modelo de ER de alto nível

Elicitação deRequisitos

Análise e Negociação de Requisitos

Documentação dos Requisitos

Validação de Requisitos

Informação do domínio das necessidades do usuário, Informação de sistema existente, Regulamentações,Padrões, etc

Documento de RequisitosEspecificação do Sistema

Requisitos Acordados

Page 17: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 17

Atividades do processo de ER Elicitação de Requisitos

• Os requisitos são descobertos através da consulta com as partes interessadas

Análise e negociação de requisitos• Requisitos são analisados e os conflitos resolvidos através de

negociação

Documentação de requisitos• Um documento de requisitos é produzido

Validação de requisitos • É checada a consistência e completude do documento de requisitos

Page 18: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 18

O modelo cascata de processo de software

Engenharia de Requisitosdo Sistema

Engenharia de Requisitosdo Software Projeto do

Software

Programação e teste da unidade

Teste do Sistema

Operação do Sistema

Especificação de Requisitos do Sistema

Especificação de Requisitos do Software

Especificação de Projeto do Software

Software Executável do Sistema

Sistema Completo

Page 19: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 19

Contexto do Processo de ER

Sistema de Aquisição

Engenharia de Requisitos

Projeto do Sistema

Page 20: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 20

Modelo espiral do processo de ER

INÍCIO Requisitos

Acordados

Documento de Requisitos eRelatório de Validação

Declaração Informaldos Requisitos

Ponto de Decisão:Aceita Documento ou Entra de novo na Espiral.

Esboço do Documento de Requisitos

Elicitação dos Requisitos

Análise e Negociação dos Requisitos

Validação dos Requisitos

Documentação dos Requisitos

Page 21: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 21

Atores do processo de ER Os atores do processo são as pessoas envolvidas na

execução do processo; Os atores são normalmente identificados pelos seus

papéis e não individualmente; Engenharia de requisitos envolve tanto atores que

estão interessados no problema a ser resolvido (usuários finais) como também atores interessados na solução (projetistas, etc.);

Diagramas de papel-ação documentam quais atores estão envolvidos em que atividades.

Page 22: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 22

RAD para prototipagem de software

AÇÕES

Compreendero problema

Estabelecer o Resumo dos Requisitos

Selecionar o Sistema dePrototipagem

Desenvolver o Protótipo

Avaliar o Protótipo

PAPEIS

Eng. deRequisitosExpert do DomínioUsuário final

. Eng. deRequisitosUsuário final

Eng. de SoftwareGerente do Projeto

Eng. deRequisitosEng. de Software

Usuário final Expert do Domínio Eng. deRequisitosEng. de Software

Page 23: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 23

Descrição dos papéisPapel DescriçãoExpert do Domínio Responsável por fornecer informação sobre o domínio

da aplicação e o problema específico a ser resolvido dentro daquele domínio.

Usuário Final do Sistema Responsável por usar o sistema após a entrega

Responsável pela elicitação e especificação dos requisitos do sistema.

Responsável pelo desenvolvimento do protótipo do software do sistema

Responsável pelo planejamento e estimativa do projeto de prototipagem

Engenheiro de Requisitos

Engenheiro de Software

Gerente do Projeto

Page 24: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 24

Fatores Humanos e sociais Os processos de engenharia de requisitos são

dominados por fatores humanos, sociais e organizacionais porque eles sempre envolvem um conjunto de partes interessadas com backgrounds diferentes e com objetivos organizacionais e individuais diferentes

As partes interessadas (stakeholders) pelo sistema podem ter uma variedade de background técnico e não técnico e de diferentes disciplinas

Page 25: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 25

Tipos de partes interessadas (stakeholder)

Engenheiros de software responsáveis pelo desenvolvimento do sistema;

Usuários finais do sistema que irão usar o sistema depois dele ser entregue;

Os gerentes dos usuários finais do sistema, que será responsável pelo trabalho deles;

Fiscais externos que verificaram se o sistema satisfaz os requisitos legais;

Especialistas de domínio que possuem informações essenciais sobre o domínio da aplicação.

Page 26: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 26

Fatores influenciando requisitos Personalidade e status dos stakeholders; Os objetivos pessoais dos indivíduos dentro da

empresa; O grau de influência política dentro de uma

organização.

Page 27: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 27

Suporte para o processo Ferramentas CASE proporcionam suporte

automático para o processo de software; As ferramenta de CASE mais maduras suportam

atividades bem entendidas tais como programação, teste e uso de métodos estruturados;

O suporte para a engenharia de requisitos ainda é limitado devido a informalidade e a variação dos processos.

Page 28: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 28

Ferramentas CASE para ER Ferramentas para modelagem e validação de

requisitos que suportam o desenvolvimento de modelos do sistema, que podem ser usadas para checar a completude e consistência entre os modelos;

Ferramentas de gerenciamento que ajudam o gerenciamento de um banco de dados de requisitos e apoiam o gerenciamento das modificações dos requisitos.

Page 29: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 29

Um sistema de gerenciamento de requisitos

Requirementsdatabase

NLrequirements

documentReq. convertor

WP linker

Traceabilitysupport system

Report generator

Traceabilityreport

Requirementsreport

Req. browser Req. querysystem

Change controlsystem

Page 30: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 30

Ferramentas de gerenciamento de requisitos

Folheador (browser) de requisitos Sistema de perguntas (query) de requisitos Sistema de suporte de rastreamento Gerador de relatórios Conversor de requisitos e linker para processador

de texto Sistema de controle de mudanças

Page 31: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 31

Melhoria de Processo A melhoria de processo está relacionado com a

modificação do processo de forma a alcançar algum objetivo de melhora;

Objetivos de melhora:• Melhoria de qualidade;• Redução de prazo;• Redução de recursos.

Page 32: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 32

Planejando a melhoria do processo

Quais são os problemas com os processos atuais? Quais são os objetivos de melhora? Como o processo de melhora poderá ser

introduzido para alcançar estes objetivos? Como o processo de melhora poderá ser

controlado e gerenciado?

Page 33: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 33

Problemas do processo de ER Falta de envolvimento dos stakeholders; As necessidades do negócio não são

consideradas; Falta de gerenciamento dos requisitos; Falta de definição de responsabilidades; Problemas de comunicação dos stakeholders; Planejamento longo demais e baixa qualidade dos

documentos de requisitos.

Page 34: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 34

Maturidade do Processo A maturidade do processo de uma empresa pode

ser considerada como sendo o grau de definição dos seus processos, como eles são controlados e a existência de suporte sistemático tanto humano como baseado em computador.

O modelo de maturidade da SEI (Capability Maturity Model- CMM) é uma proposta para avaliação da maturidade do processo de software de empresas de desenvolvimento.

Page 35: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 35

O modelo de maturidade

Nível 3 Definido

Nível 2Repetível

Nível 1Inicial

Nível 4 Gerenciado

Nível 5Otimizado

Page 36: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 36

Níveis de maturidade Nível inicial

• As empresas têm um processo não disciplinado e fica a cargo dos indivíduos tanto a escolha das técnicas de desenvolvimento a serem usadas como o gerenciamento do processo.

Nível repetível • As empresas tem funcionando os procedimentos básicos de gerenciamento

de custo e prazo. Provavelmente serão capazes de fazerem previsões consistentes de custo e escalonamento para projetos na mesma área de aplicação.

Nível definido • O processo de software, tanto das atividades de gerenciamento como

engenharia, está documentado, padronizado, e integrado aos padrões de processo de software para toda a organização.

Page 37: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 37

Níveis de maturidade Nível gerenciado

• Medições detalhadas tanto do processo como da qualidade do produto são coletadas e usadas para controlar o processo.

Nível otimizado • A empresa possuì uma estratégia de melhoria contínua do

processo, baseada nos objetivos adotados para medição

Page 38: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 38

Um modelo de maturidade de processo para ER

- Inicial

Engenharia de requisitos Ad-hoc; Problemas de requisitos são comuns.

Nível 1

Nível 2 -Repetível

Nível 3 - Definido

Engenharia de requisitos Padronizada; Poucos problemas de requisitos.

Processo definido, baseado na melhor prática; Melhoria do processo em funcionamento.

Page 39: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 39

Níveis de maturidade da Eng. Req.

Nível inicial • Não há processo definido de ER. Sofre de problemas tais como

volatilidade dos requisitos, stakeholders não satisfeitos e alto custo de refeita dos sistemas. Depende de habilidades e experiências individuais.

Nível repetível• Padrões definidos para os documentos de requisitos e políticas e

procedimentos para o gerenciamento de requisitos.

Nível definido• Um processo definido de ER, baseado em boas práticas e

técnicas. Em funcionamento um processo ativo de melhoria.

Page 40: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 40

Boas práticas para a melhoria do processo de ER

Os processo de ER podem ser melhorados pela sistemática introdução de boas práticas de engenharia de requisitos;

Cada ciclo de melhoria identificará diretrizes práticas e trabalhará em direção para a sua introdução na organização.

Page 41: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 41

Exemplos de diretrizes de boas práticas

Defina uma estrutura de documento padronizada; Identifique de forma única cada requisito; Defina políticas para o gerenciamento de requisitos; Use checklists durante a análise de requisitos; Use cenários para elicitar requisitos; Especifique requisitos de forma quantitativa; Use prototipagem para animar requisitos; Re-use requisitos.

Page 42: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 42

Pontos principais O processo de engenharia de requisitos é estruturado como

um conjunto de atividades que leva a produção do documento de requisitos.

As entradas do processo de engenharia de requisitos são as informações existentes dos sistemas, necessidade dos stakeholders, padrões organizacionais, regulamentações e informações do domínio.

Os processos de engenharia de requisitos variam radicalmente entre empresas. A maioria dos processos incluem a elicitação de requisitos, análise e negociação dos requisitos e validação dos requisitos.

Page 43: ©Jaelson Castro 2005 Slide 1 O Processo da Engenharia de Requisitos

©Jaelson Castro 2005 Slide 43

Pontos chaves Os modelos do processo de engenharia de requisitos são

descrições simplificadas que são apresentadas de uma perspectiva particular.

Fatores humanos, sociais e organizacionais são influências importantes no processo de engenharia de requisitos.

A melhoria do processo de engenharia de requisitos é difícil, sendo tratada melhor de forma incremental.

Os processos de engenharia de requisitos podem ser classificados de acordo com seus graus de maturidade.