Melhoria de Processo de Engenharia de Requisitos
Aliny Figueirêdo Meira([email protected])
Recife, 2008
2
AgendaMotivaçãoProcesso de Engenharia de RequisitosMelhoria de ProcessoModelos de Melhoria do Processo de
Engenharia de RequisitosConsiderações sobre os ModelosConclusãoReferências
Motivação
4
Motivação – Fatores de Fracasso de um Projeto
Fonte: Instituto Standish Group
5
Motivação – Custo de Correção de Defeitos
0
5
10
15
20
25
1
Análise
Projeto
Implementação
Fonte: Cordeiro, 2002
6
Motivação
Modelos para a melhoria de processo de software, como CMMI e ISO 12207, não endereçam o processo de requisitos adequadamente.
7
Motivação
Estender princípios de melhoria do processo de software ao processo de requisitos Para definir o que é o processo da engenharia de
requisitos Para descrever boas práticas na engenharia de
requisitos Para fornecer orientações para adoção destas
práticas baseadas em avaliações quantitativa e qualitativa do estado de processos atuais e dos benefícios prováveis das organizações a ser ganhos em adotar práticas novas.
Processo de Engenharia de Requisitos
9
Processo de Engenharia de Requisitos
Fonte: Kotonya e Sommerville, 1998
10
Elicitação de Requisitos
É o nome usual dado às atividades envolvidas na descoberta de requisitos do sistema.
Desenvolvedores e engenheiros de sistema trabalham juntamente com clientes e usuários final para descobrir qual o problema a ser resolvido, quais os serviços do sistema, o desempenho desejado, restrições de sistemas, e outros.
A elicitação de requisitos não envolve apenas perguntar as pessoas o que elas desejam, requer uma análise cuidadosa da organização, do domínio da aplicação e processos de negócio onde o sistema será usado.
11
Análise e Negociação de Requisitos
A saída da fase de elicitação de requisitos deve ser um documento rascunho que descreve os requisitos do sistema. Este documento passa pela fase de análise para descobrir problemas e conflitos na definição dos requisitos.
Atividades envolvidas na análise: Checagem da necessidade Checagem da consistência e da completude Checagem da viabilidade
12
Análise e Negociação de Requisitos
As atividades do processo de análise de requisitos resultam na identificação de um conjunto de requisitos (requisitos não necessários, requisitos conflitantes e incompletos, requisitos inviáveis) que são discutidos no processo de negociação de requisitos
Atividades da negociação: Discussão dos requisitos Priorização dos requisitos Acordo dos requisitos
13
Validação de Requisitos
Após o documento de requisitos ter sido produzido, inicia-se o processo de validação, buscando determinar se os requisitos estão corretos, ou seja, descritos de forma apropriada, procurando eliminar problemas de incompleteza, ambigüidade e inconsistência.
A preocupação maior desta fase é com a qualidade do documento de requisitos produzido
14
Gerência de Requisitos
Em paralelo com todos os processos acima está um processo de gerência de requisitos que é responsável pelo gerenciamento de mudanças dos requisitos.
Melhoria de Processo
16
Melhoria de Processo
A utilização mais sistemática de processos foi iniciada nos anos 1930. Nessa época, os trabalhos em melhoria de processo com os princípios estatísticos foram iniciados.
Esses princípios foram refinados por W. Edwards Deming e Joseph Juran, no entanto o foco ainda era na indústria de manufatura.
Nos anos 1970, Philip Crosby definiu cinco estágios seqüenciais e cumulativos do processo de produção, que indicam a qualidade do processo de produção.
Esses princípios de controle estatísticos e os estágios de qualidade foram adaptados por Ron Radice, nos anos de 1980, ao desenvolvimento de software.
17
Melhoria de Processo
Fatores de sucesso do esforço da melhoria: Entendimento das características,
limitações e implicações da utilização da abordagem baseada em melhoria de processo;
Escolha, entendimento, utilização e interpretação de um bom modelo de processo ou de um conjunto de modelos;
18
Melhoria de Processo
Fatores de sucesso do esforço da melhoria: Alinhamento dos esforços de melhoria com
o contexto e objetivos estratégicos da organização;
Estabelecimento de metas relevantes, viáveis e mensuráveis;
Considerações aos aspectos gerenciais, técnicos e humanos da melhoria;
19
Melhoria de Processo
Fatores de sucesso do esforço da melhoria: Comprometimento da alta gerência,
condução por empreendedores e participação de todos;
Conhecimento do processo atual.
Modelos de Melhoria
Modelo De Maturidade De Processo De Engenharia De Requisitos (Sawyer e Sommerville, 1997)Modelo De Melhoria De Processo De Requisitos Orientado Objetivos – Re-kit-frame (Kamsties e Paech, 2000)Modelo De Melhoria Do Processo De Engenharia De Requisitos Baseado Em Um Modelo De Informação (Doerr, Koehler e Paech, 2004)
21
MODELO DE MATURIDADE DE PROCESSO DE ENGENHARIA DE REQUISITOS
A maturidade do processo de engenharia de requisitos pode ser definida como a extensão a que uma organização tem um processo da engenharia de requisitos definido baseado em boas práticas da engenharia de requisitos
22
MODELO DE MATURIDADE DE PROCESSO DE ENGENHARIA DE REQUISITOS
23
MODELO DE MATURIDADE DE PROCESSO DE ENGENHARIA DE REQUISITOS
24
MODELO DE MELHORIA DE PROCESSO DE REQUISITOS ORIENTADO OBJETIVOS – RE-
KIT-FRAME
25
MODELO DE MELHORIA DE PROCESSO DE REQUISITOS ORIENTADO OBJETIVOS – RE-
KIT-FRAME
Dimensões do processo: Stakeholders Conteúdo Atividades Representação Integração
26
MODELO DE MELHORIA DE PROCESSO DE REQUISITOS ORIENTADO OBJETIVOS – RE-
KIT-FRAME
Passos do Paradigma de Melhoria da Qualidade: Caracterizar Estabelecer Objetivos Planejar Executar, analisar, e empacotar
27
MODELO DE MELHORIA DO PROCESSO DE ENGENHARIA DE REQUISITOS BASEADO
EM UM MODELO DE INFORMAÇÃO
Utiliza um modelo de informação como o foco da melhoria do processo de Engenharia de Requisitos em contextos do multi-projeto.
O modelo da informação caracteriza um conjunto de documentos de requisitos que evoluem em uma companhia em projetos diferentes, mas que são documentos dependentes.
28
MODELO DE MELHORIA DO PROCESSO DE ENGENHARIA DE REQUISITOS BASEADO EM
UM MODELO DE INFORMAÇÃO
O modelo da informação consiste em diversos sub-modelo: matriz do documento, detalhes do documento, detalhes do papel, e fluxo do processo da mudança.
29
MODELO DE MELHORIA DO PROCESSO DE ENGENHARIA DE REQUISITOS BASEADO EM
UM MODELO DE INFORMAÇÃO
Exemplo abstrato de uma matriz de documento
Fonte: Doerr, Koehler e Paech, 2004
30
MODELO DE MELHORIA DO PROCESSO DE ENGENHARIA DE REQUISITOS BASEADO EM UM MODELO DE INFORMAÇÃO
O modelo de informação é criado em uma oficina de dois dias
Preparação Identificação e descrição básica dos papéis típicos
do projeto (como a entrada ao moderador da oficina)
Identificação preliminar dos problemas com o processo atual (como a entrada ao moderador da oficina).
31
MODELO DE MELHORIA DO PROCESSO DE ENGENHARIA DE REQUISITOS BASEADO EM
UM MODELO DE INFORMAÇÃO
Primeiro Dia Introdução dos participantes e das suas
expectativas com relação à oficina Introdução da terminologia e de princípios RE
através do moderador Coleção dos problemas de como é processo RE Derivação em primeiro, de uma matriz de
documento básica. Discussão da matriz do documento (com um
máximo de 10 membros).
32
MODELO DE MELHORIA DO PROCESSO DE ENGENHARIA DE REQUISITOS BASEADO EM
UM MODELO DE INFORMAÇÃO
Segundo Dia Apresentação dos resultados do grupo e da
consolidação como uma base melhorada para o que o modelo de informação deve ser.
Grupo: Determinação das responsabilidades da consistência e da revisão; determinação das responsabilidades da mudança.
Relatório final e determinação das etapas seguintes para assegurar-se de que o modelo da informação que deve ser esteja incorporado na vida do dia a dia da companhia.
Considerações sobre Modelos
34
Considerações sobre os Modelos
Os dois primeiros modelos seguem a abordagem de utilizar um modelo de processo como referência.
O último modelo apresentado foi desenvolvido para contextos multi-projeto.
Uma abordagem interessante para a melhoria de processo da Engenharia de Requisitos seria a aplicação conjunta dos dois primeiros modelos analisados.
35
Considerações sobre os Modelos
O terceiro modelo deixa mais detalhes abertos, por exemplo, ele não fixa um ponto no tempo em que um documento é criado.
Poderia ser interessante aplicar os princípios dos dois primeiros modelos quando detalhes abertos necessitam ser refinados em um nível de granularidade menor.
Conclusão
37
Conclusão
Os três modelos apresentados aqui correspondem a iniciativas na tentativa de definir um modelo de melhoria de processo para uma área específica – Engenharia de Requisitos.
Fornecem para as organizações um mapa do caminho pragmático para a melhoria de qualidade e a diminuição de custo.
Como trabalho futuro na área de melhoria do processo de Engenharia de Requisitos propõe-se a aplicação prática em projetos destes modelos e análise destas experiências para avaliar o desempenho obtido no projeto
38
Referências Standish, The Chaos Report; The Standish Group International, Inc.,
USA, 1994. Pressman, R.S.; Engenharia de Software; 5ª ed., MacGraw-Hill, 2002. Sawyer, P.; Sommerville, I. & Viller, S., Requirements process
improvement through the phased introduction of good practice, Software Process: Improvement and Practice 3(1), 19-34, 1997.
Sommerville, I. e Kotonya, G., Requirements Engineering Processes and Techniques, John Wiley & Sons, 1998.
Paech, B. & Kamsties, E., Goal-oriented Improvement of Requirement Processes, 2000.
Doerr, J.; Paech, B. & Koehler, M., Requirements Engineering Process Improvement Based on an Information Model, in 'RE '04: Proceedings of the Requirements Engineering Conference, 12th IEEE International (RE'04)', IEEE Computer Society, Washington, DC, USA, pp. 70-79, 2004
Melhoria de Processo de Engenharia de Requisitos
Dúvidas