Você está na página 1de 49

O processo de Engenharia de Requisitos

2. Obteno e Anlise dos Requisitos

Avaliar os problemas na situao atual Principal foco para o novo sistema: O QUE e no COMO:
qual o fluxo e o contedo de informao quais as funes do sistema quais dados o sistema produz e consome qual o comportamento do sistema quais as caractersticas de interface com outros subsistemas quais so as restries do projeto

A Gerncia do Processo de Desenvolvimento

Ciclo de Vida

Qual o propsito de estabelecer um Ciclo de Vida para o Software?


Definir que atividades devem ser executadas em um projeto de desenvolvimento de sistemas Introduzir consistncia entre vrios projetos de desenvolvimento de sistemas de uma mesma organizao Prover pontos de controle para prever, gerenciar e controlar o desenvolvimento de sistemas

Ciclo de Vida

Cascata Evolucionrio Formal Orientado a Reuso Espiral Incremental

Cascata

Ciclo de Vida Clssico

Prev um processo de desenvolvimento com etapas seqenciais Base: engenharia convencional


O resultado de cada fase envolve a elaborao de um ou mais documentos que so aprovados

Cascata

Engenharia de Sistemas Anlise

Projeto
Codificao Teste

Manuteno

Cascata

Problemas:
Para grandes projetos o tempo que decorre desde a especificao at sua implantao grande
O Ambiente Externo evolui e diferente daquele que deu origem a sua especificao Na prtica os estgios se sobrepem O processo de software envolve interaes

Evolucionrio

Base
Desenvolver uma implementao inicial Expor o resultado ao comentrio do usurio Aprimoramento por meio de muitas verses At que o sistema tenha sido totalmente desenvolvido

Dois tipos:
Exploratrio Prottipos descartveis

Evolucionrio

Exploratrio
Trabalhar com o cliente O desenvolvimento inicia com as partes do sistema que so compreendidas O sistema evolui com as novas caractersticas propostas pelo cliente

Prottipos descartveis
O prottipo experimenta os requisitos no compreendidos Neste caso o objetivo a Especificao de Requisitos Falaremos de prottipos mais adiante

Evolucionrio
Verso Inicial

Especificao

Descrio do Esboo

Desenvolvimento

Verses do Descrio Intermedirias Esboo

Validao

Verso Final

Evolucionrio

Produz sistemas que atendem as necessidades imediatas do cliente Problemas


O processo no visvel Freqentemente so mal estruturados Ferramentas e tcnicas especiais
Software sem estrutura Modificaes cada vez mais custosas No se produzem documentos que reflitam as verses do sistema

Possibilitam rpido desenvolvimento Poucas pessoas podem ter a habilitao necessria para us-las

Incio

Evolucionrio

Fim

Definio de Requisitos e Refinamento

Produto Final

Projeto Rpido

Refinamento do prottipo Construo do Prottipo Avaliao do Usurio

Formal

Base: a transformao matemtica formal de uma especificao de sistema em um programa executvel


A especificao de requisitos redefinida com uma linguagem formal

Especificao de Requisitos

Especificao Formal

Transformao Formal

Testes

Formal

Transformao formal
Vrias etapas Representao mais detalhada, matematicamente correta

Adequada a sistemas crticos


Permite verificao automtica de consistncia Model checking
utiliza mquinas de estado para verificar onde uma determinada propriedade satisfeita sob todas as condies

Prova de teoremas
axiomas do comportamento do sistema so empregados para derivar uma prova de que o sistema vai se comportar de uma determinada forma

Orientado a Reuso

Ampla base de componentes reusveis Infra-estrutura de integrao Etapas:


De posse da Especificao de Requisitos, buscam-se componentes para implement-la Negociao requisitos so modificados para que se possa usar os componentes

Reduo do esforo de desenvolvimento

Iterao de processo

Existe a necessidade de utilizar diferentes abordagens para diferentes partes do sistema Partes do processo so repetidas enquanto os requisitos evoluem Modelos Hbridos
Apiam a iterao do processo Desenvolvimento Espiral Desenvolvimento Incremental

Modelo Espiral

O processo de desenvolvimento se move sobre uma espiral evolucionria


Melhores caractersticas do
Ciclo de vida clssico Evolucionrio Prototipao Acrescenta Anlise de Riscos

As fases so executadas de forma iterativa As fases de anlise e projeto no so monolticas e distintas

Modelo Espiral

Modelo Espiral

Planejamento
objetivos, alternativas e restries

Anlise de Riscos
Anlise de alternativas e identificao/resoluo de riscos Prototipao pode ser usada Simulaes e outros modelos podem ser usados para definir melhor o problema

Desenvolvimento e Validao
Desenvolvimento do produto no nvel seguinte

Avaliao feita pelo Cliente Volta ao Planejamento

Enfoque Incremental

Uma variao do modelo cascata onde a partir da fase de especificao de requisitos so feitos incrementos sucessivos.

Estratgia para minimizar riscos, obtendose resultados de mdio e curto prazo sem se descuidar do objetivo final

Uma interao

Enfoque Incremental

Requisitos Design

Requisitos Design

Codificao
Testes Implantao

Codificao
Testes Implantao

tempo

Desenvolvimento Incremental

O Processo de Desenvolvimento RUP est em conformidade com o Desenvolvimento Incremental.

Desenvolvimento Incremental

Em vez de entregar o sistema como um todo, o desenvolvimento e a entrega so divididos em partes, com cada incremento entregando parte da funcionalidade requerida Requisitos dos usurios so priorizados e os requisitos de mais alta prioridade so includos nas iteraes iniciais Uma vez que o desenvolvimento de um incremento iniciado, os requisitos so "congelados, embora possam continuar a evoluir para incrementos posteriores

Desenvolvimento Iterativo e Incremental (RUP)

Engenharia de Requisitos

Engenharia de Requisitos

Compreender a natureza do software a ser desenvolvido realmente muito complexo Conseqentemente difcil estabelecer o que o sistema deve fazer Estabelecer o que o sistema deve fazer descrevendo suas funes e restries conseguir determinar todos os seus requisitos O Processo de: 1. Descobrir 3. Documentar 2. Analisar 4. Verificar
chamado de Engenharia de Requisitos

Engenharia de Requisitos

Engenharia de Requisitos

O processo de estabelecer as funes que um cliente requer de um sistema e as restries sob as quais ele deve funcionar e ser desenvolvido
Os requisitos so descries das funes e restries que so geradas durante o processo de engenharia de requisitos

Atividades de Engenharia de Requisitos Recursos Humanos

Organizao e Responsabilidade - Papis


Analista de Negcios Negocia junto com os clientes e os demais envolvidos a lista dos requisitos iniciais e suas ampliaes, priorizando-os e quando necessrio agrupando-os em pacotes a serem desenvolvidos em iteraes. responsvel por explicitar as regras de negcio e o glossrio associado ao negcio. Elicita os requisitos de produto e registr-os de forma adequada. Garante a rastreabilidade dos requisitos de negcio e requisitos de produto ao longo do projeto. Aprova a verso final do escopo da aplicao, descrito na Especificao de Requisitos de software Inspeciona a Especificao de Requisitos de Software com relao ao formato.

Analista de Requisitos

Cliente Inspetor

Testador

Aplica o Plano de Testes e assegura que os requisitos implementados esto de acordo com o requisitado pelo cliente.

Elicitao dos Requisitos de Negcio


Necessidades

Explicitar o domnio do problema Identificar possibilidade de reuso de soluo Identificar pessoas e reas impactadas Elicitar e classificar os requisitos de negcio Envolver a rea de servios e definir alternativas de soluo Analisar e validar os requisitos

Analista de Negcios

Regras de Negcio

Glossrio

Documento de Viso

Especificao e Modelagem de Requisitos


Regras de Negcio Glossrio Documento de Viso

Elicitar Requisitos de Produto Especificar casos de uso e valid-los Especificar requisitos no funcionais Analisar e validar os requisitos

Analista de Requisitos

Casos de Uso e Esp. Suplementar

Plano e Casos de Teste

Requisitos p/ Inspeo

Verificao e Validao dos Requisitos


Casos de Uso e Esp. Suplementar Plano e Casos de Teste Requisitos p/ Inspeo

Verificar conflitos de requisitos Verificar consistncia de requisitos Verificar completude de requisitos Verificar existncia de requisitos ambguos

Inspetor

Garantir a rastreabilidade dos requisitos Validar requisitos com o cliente


Analista de Requisitos

Especificao de Requisitos Atualizada

Resultado dos Casos de Teste

Rastreabilidade e Gesto de Mudanas

Necessidade

Solic. Mudana

Avaliar o impacto nos requisitos Validar com o cliente Notificar os envolvidos Atualizar as especificaes de requisitos Garantir a rastreabilidade nos requisitos

Analista de Negcios

Especificao de Requisitos Atualizada

Documento de Viso Atualizado

Analista de Requisitos

Elicitao de Requisitos

Elicitao dos Requisitos de Negcio


Explicitar o domnio do problema Identificar possibilidade de reuso de soluo Identificar pessoas e reas impactadas Elicitar e classificar os requisitos de negcio Envolver a rea de servios e definir alternativas de soluo Analisar e validar os requisitos

Necessidades

Analista de Negcios

Regras de Negcio

Glossrio

Documento de Viso

Elicitao de Requisitos

Atividades que envolvem a descoberta de requisitos de um sistema:


identificao das fontes de informao tcnicas de elicitao (coleta de fatos) comunicao (estabelecer uma linguagem comum)

Envolve pessoal objetivando descobrir:


o domnio de aplicao servios que devem ser fornecidos restries

Elicitao de Requisitos

Pode envolver diferentes tipos de pessoas em uma organizao (stakeholders):


usurios gerentes desenvolvedores especialistas de domnio sindicatos,...

A equipe de desenvolvimento e clientes trabalham em conjunto visando identificar:


detalhes do domnio da aplicao servios que o sistema deve oferecer desempenho restries de hardware, ...

Elicitao de Requisitos

Problemas:

Em geral, stakeholders no sabem o que querem de fato

Stakeholders expressam requisitos em sua prpria terminologia Stakeholders distintos podem ter requisitos conflitantes Fatores polticos podem influenciar os requisitos do sistema Ambientes econmicos e de negcios so dinmicos

dificuldade de expresso pedidos no realistas

conhecimento implcito

requisitos mudam durante o processo de anlise novos requisitos podem surgir (novos stakeholders)

Elicitao de Requisitos

Atividades do Processo:
Compreenso do domnio Coleta de requisitos Classificao Resoluo de conflitos Definio de Prioridades Verificao de requisitos

Compreenso do Domnio

Os analistas devem desenvolver sua compreenso do domnio da aplicao


se estiver desenvolvendo um sistema de supermercado dever descobrir como este funciona utilizar tcnicas para descobrir este funcionamento aprender a linguagem do usurio
elaborar um Glossrio

Coleta de Requisitos

Interagir com stakeholders para descobrir os requisitos A coleta de requisitos feita atravs de tcnicas Os requisitos so simplesmente documentados medida que so coletados
resulta em documento preliminar (draft)

Classificao dos Requisitos

Consiste basicamente em agrupar os diversos requisitos coletados em categorias bem-definidas Classificao:


Funcional
Ex.: Deve ser possvel consultar o preo de uma mercadoria

No Funcional
Ex.: A consulta deve retornar uma resposta em no mximo 5s

Inversos
Ex.: O sistema no far controle de estoque.

Resoluo de Conflitos

normal que ocorram requisitos conflitantes Por exemplo


R-23: O sistema deve ... R-45: O sistema no deve ...

Cliente o responsvel por resolver conflitos e ambigidades

Atribuio de Prioridade

Alguns requisitos so mais urgentes que outros essencial determinar a prioridade dos requisitos junto ao cliente Requisitos de maior prioridade so considerados em primeiro lugar

Prioridade

Requisitos podem ser agrupados em classes, por exemplo:


Essenciais Importantes Desejveis

Em princpio, o sistema deve abranger todos os requisitos de essenciais para desejveis

Exemplo de Prioridade

A consulta ao extrato bancrio deve retornar dados do movimento at o dia anterior


Prioridade: Essencial

A consulta ao extrato bancrio deve visualizar dados segundo padro X


Prioridade: Importante

A consulta ao extrato bancrio deve usar cores vermelhas para saldos negativos
Prioridade: Desejvel

Verificao de Requisitos

Os requisitos so verificados
Completos? Consistentes? Em concordncia com o que os stakeholders desejam?

Você também pode gostar