Sie sind auf Seite 1von 41

Requisitos de Software

Eduardo Alves de Oliveira


Analista de Qualidade e Mtricas
CFPS - Certified Function Point Specialist
eduaopec@yahoo.com.br
Contedo

Conceitos Fundamentais
Engenharia de Requisitos
Gesto de Requisitos
Requisitos e MPS.BR
Conceitos Fundamentais

Requisitos Definem :
1. o que o sistema solicitado a fazer
2. uma propriedade geral da aplicao
3. uma restrio especfica em seu desenvolvimento ou funcionamento.

Engenharia de Prope mtodos, tcnicas e ferramentas que auxiliam o processo de


compreenso e registro dos requisitos que o software deve atender.
Requisitos

Gerenciamento de Gerenciar as mudanas que ocorrem nos requisitos j acordados;


Gerenciar relacionamentos entre os requisitos;
Requisitos Gerenciar as dependncias entre os documentos de requisitos e outros
documentos produzidos durante o processo de engenharia de software;
Engenharia de Requisitos

Importncia da Engenharia de Requisitos

Estratgias de Teste

Programas

Arquitetura do Interface com Estrutura de


Software Usurio Dados

R e q u i s i t o s

A Engenharia de Requisitos organiza a


base para a construo do software
Atividades do Processo
Padro de Requisitos

Elicitao de Requisitos
Os requisitos so descobertos atravs da consulta com as
partes interessadas
Anlise e negociao de requisitos
Requisitos so analisados e os conflitos resolvidos por meio de
negociao
Documentao de requisitos
Um documento de requisitos produzido
Validao de requisitos
checada a consistncia e completude do documento de
requisitos
Gerenciamento de Requisitos
Administra mudanas nos requisitos.
Engenharia de Requisitos

Fases da Engenharia de Requisitos


Declarao
informal
dos requisitos

Elicitao Anlise

Requisitos
Ponto de Deciso acordados
Documento de
especificao
aceito ou
reexecuo da
espiral Validao Documentao

Esboo da especificao
de requisitos
Engenharia de Requisitos

Fases da Engenharia de Requisitos

Elicitao Anlise

Validao Documenta
o

Gerenciamento de Requisitos
Engenharia de Requisitos

Requisitos relacionam-se com:


pessoas
equipamentos
segurana
legais
rede
...
Engenharia de Requisitos

Requisitos

Exemplos:
O sistema deve manter registro de todos os materiais da biblioteca (livros, sries,
jornais e revistas, relatrios, etc.);
O sistema deve permitir a pesquisa de um item atravs do ttulo ou autor;
O sistema deve suportar pelo menos 20 transaes por segundo;
As facilidades do sistema (tutorial) que esto disponveis para o pblico devem
ser demonstradas em 10 minutos ou menos.
Engenharia de Requisitos

Requisitos
Requisitos de Marketing
de Projeto
Requisitos de Hardware
Processos
Requisitos de Produo Organizacionais
Requisitos
de Software
Requisitos Casos de Uso
de Qualidade Requisitos
Regras de Negcio
Restries, Funcionais
Limites
Casos de Teste
Requisitos
No-Funcionais
Engenharia de Requisitos

Requisitos de Projeto

Os requisitos de projeto correspondem a todos os aspectos


envolvidos no desenvolvimento da aplicao (requisitos de
marketing, requisitos de hardware, requisitos de produo,
processos organizacionais e requisitos de software).

Exemplos:
- o sistema endereado aos consumidores das classes A e B;
- o processador paralelo do servidor X tem capacidade de processar 200 transaes por
segundo;
- o sistema permitir a matrcula de alunos externos em disciplinas especiais;
Engenharia de Requisitos

Requisitos de Software

Requisitos Funcionais
So a descrio das diversas operaes que clientes e usurios esperam
que sejam realizadas pelo sistema.

Exemplos:
- o software deve possibilitar o clculo dos gastos dirios, semanais, mensais e anuais com
pessoal;
- o software deve emitir relatrios de compras a cada quinze dias;
- os usurios devem poder obter o nmero de aprovaes, reprovaes e trancamentos em
todas as disciplinas por um determinado perodo de tempo;
Engenharia de Requisitos

Requisitos de Software

Requisitos no Funcionais
Determinam as caractersticas desejveis do software quanto
Usabilidade, Confiabilidade, Desempenho, Suportabilidade
(UCDS).

Restries de Projeto
Sistemas operacionais
Ambientes
Compatibilidade
Padres de aplicao

Conformidade com Requisitos Legais


Engenharia de Requisitos

Requisitos no Funcionais

Exemplos:

- a base de dados deve ser protegida, para acesso,apenas, de usurios autorizados;

- o tempo de resposta do sistema no deve ultrapassar 30 segundos;

- o software deve ser operacionalizado no sistema Linux;


Problemas do Processo de Requisitos

Falta de envolvimento das partes interessadas;


As necessidades do negcio no so consideradas;
Falta de gerenciamento dos requisitos;
Falta de definio de responsabilidades;
Problemas de comunicao das partes interessadas;
Planejamento longo demais e baixa qualidade dos
documentos de requisitos.
Partes Interessadas

Engenheiros de software responsveis pelo


desenvolvimento do sistema;
Usurios finais do sistema que iro usar o sistema
depois dele ser entregue;
Os gerentes dos usurios finais do sistema, que
sero responsveis pelo trabalho deles;
Fiscais externos que verificaro se o sistema satisfaz
os requisitos legais;
Especialistas de domnio que possuem informaes
essenciais sobre o domnio da aplicao.
Artefatos

Artefatos so produtos de trabalho gerados


durante o desenvolvimento de software, como:
modelos, diagramas, planos, relatrios e
documentos etc.

Ex.: Plano Integrado de Projeto, Relatrio de Desempenho e Controle, Caso


de Uso, Matrizes de Ratreabilidade, Cdigo Fonte, Cronograma etc..
Papel

Um papel define o comportamento e a


responsabilidade de indivduos no desenvolvimento
de software. Papis, entretanto, no so indivduos.
Uma mesma pessoa pode executar diversos papis
num mesmo projeto.

Ex.: Analista de Requisitos, Gestor de Projeto, Testador,


Desenvolvedor, etc..
Elicitar Requisitos

ELICITAR: descobrir, tornar explcito, obter o mximo de


informaes para o conhecimento do objeto em questo;

Cabe elicitao a tarefa de identificar os fatos que compem


os requisitos do sistema, de forma a prover o mais correto e
mais completo entendimento do que demandado pelo
sistema;

Da elicitao surgem diversos tipos de requisitos, por


exemplo: necessidades, requisitos funcionais, requisitos no
funcionais, regras de negcio, casos de uso, restries, atores,
partes interessadas, termos do projeto, etc..
Atores

Tudo o que interage com o sistema.


Identificando atores:
Quem utiliza o sistema?
Quem obtm informao do sistema?
Quem fornece informao ao sistema?
Que outros sistemas utilizam este sistema?
Necessidades e Funcionalidades

As solicitaes do usurio possuem diferentes nveis de


detalhe muitas vezes no so expressas como uma
necessidade real mas como uma funcionalidade do sistema.
Para cada necessidade definida devem estar associadas as
funcionalidades que iro dar suporte para sua consecuo.
Uma funcionalidade uma capacidade ou caracterstica que
satisfaz diretamente uma necessidade de uma parte
interessada.
Necessidades

Desejos de mais alto nvel que justificam


(motivam) o desenvolvimento da aplicao;
Englobam de 1 a N funcionalidades;
Exemplos:
Controlar dados de alunos;
Otimizar a emisso de mala direta;
Cadastrar clientes externos.
Funcionalidades

Conjunto de facilidades que o sistema deve


executar/prover para satisfazer s necessidades do
usurio;
Exemplos:
Matricular alunos;
Trancar matrcula de aluno;
Emitir carn de pagamento;
Emitir cartas personalizadas para cobrana de clientes
inadimplentes;
Consultar dados estatsticos de vendas por ms por
critrios de pesquisa parametrizados
Regras de Negcio

As regras de negcios so requisitos que


definem como o conhecimento sobre o negcio
deve ser inserido e regulado no sistema.
Elas podem representar leis ou regulamentos
impostos ao negcio; procedimentos para
transformao do dado; dispositivos de
inferncia; etc.
Regras de negcio necessitam ser devidamente
formalizadas para que possam formar uma base
para a automao dos processos.
Tipos de Regras de Negcio

Restries Operacionais:
Representam limites impostos ao funcionamento da
aplicao.
Regras de Derivao:
Representam um raciocnio ou uma condio que
permite inferir um fato, ou computar fatos a partir de
outros fatos.
Regras de Clculo:
Descrevem uma operao de transformao sobre
valores de negcio para agregar um novo valor.
Elicitando Casos de Uso

Ilustram porque o sistema necessrio


Casos de uso: de que maneira e para que o sistema
ser utilizado.
Atores: quem/o que ir interagir com o sistema.
Funcionalidades: de 1 a N;
Proporcionam um contexto para os requisitos;
So de fcil entendimento;
Facilita acordo com clientes.
Elicitando Casos de Uso

Especificam o comportamento do sistema a ser desenvolvido sem,


no entanto, especificar como este comportamento ser
implementado;

Os comportamentos descrevem as
funes da aplicao que caracterizam
as funcionalidades do sistema;
Cada caso de uso define um conjunto
de requisitos funcionais e no
funcionais do sistema.
Fluxos de Eventos (exemplo)
Anlise de Requisitos

O objetivo da anlise descobrir problemas,


requisitos incompletos e inconsistncia nos
requisitos elicitados. Normalmente retorna-se
s partes interessadas para resolv-los atravs
de um processo de negociao;
A anlise pode ser intercalada com elicitao,
pois problemas so descobertos quando os
requisitos so elicitados.
Gesto de Requisitos

Mudanas nos requisitos ocorrem durante todo o tempo;

Mesmo enquanto os requisitos esto sendo elicitados,


analisados, especificados e validados, eles podem mudar;

As mudanas nos requisitos so inevitveis, e no significa que


o processo de engenharia de requisitos adotado tenha sido falho.
Gesto de Requisitos

O Gerenciamento de Requisitos um processo que se desenvolve em


paralelo Elicitao, Anlise, Especificao e Validao.

Elicitao (1)

Validao (4) Gerenciamento Anlise (2)

Especificao (3)
Matrizes de Rastreabilidade

Ferramentas que mostram os relacionamentos entre os requisitos elicitados.


Para montar as matrizes deve-se filtrar os requisitos dos artefatos preenchidos.
O seu uso essencial para um melhor acompanhamento e controle de mudanas
que ocorrem com os requisitos do projeto.
Matrizes de Rastreabilidade

As matrizes podem ser unidimensionais ou bidimensionais


Unidimensional: apresenta atributos de um tipo de requisito ou artefato do projeto.

Atributos dos Casos de Uso;


Bidimensional: relacionamento entre dois tipos de requisitos, entre requisitos do
mesmo tipo ou com outros artefatos do projeto.
Casos de Uso x Casos de Uso;
Casos de Uso x Funcionalidades;
Funcionalidades x Produtos de Trabalho (EAP).

Exs.: Projetos Gravame e Scopus (SCA Bradesco)


Requisitos e MPS.BR

Introduo ao MPS Br
O que ?

O MPS.BR um programa para Melhoria de Processo do Software


Brasileiro coordenado pela Associao para Promoo da Excelncia
do Software Brasileiro (SOFTEX), contando com apoio do Ministrio da
Cincia e Tecnologia (MCT), da Financiadora de Estudos e Projetos
(FINEP) e do Banco Interamericano de Desenvolvimento (BID).
Requisitos e MPS.BR

Introduo ao MPS Br
Definio Bsica
MPS.BR define e aprimora um modelo
de melhoria e avaliao de processo de
software. uma metodologia, baseada
na qualidade e que define nveis de
maturidade que um processo deve
atingir em busca da excelncia no
desenvolvimento de software. No
MPS.BR temos 7 nvel de maturidade
(A, B, C, D, E, F, G). O MPS.BR
referencia outras metodologias, como
por exemplo o CMMI.
Requisitos e MPS.BR

Introduo ao MPS Br
Nvel G : Parcialmente Gerenciado

O nvel de maturidade G composto pelos processos Gerncia de


Projetos (GPR) e Gerncia de Requisitos (GRE). Neste nvel os
processos devem satisfazer os atributos de processo AP 1.1 e AP 2.1,
atingindo os resultados esperados.
Requisitos e MPS.BR

Introduo ao MPS Br
Objetivo Inicial

Tornar o PGD (Processo de Gesto de Desenvolvimento) da MGN


aderente ao nvel G do MPS.BR;
Para o PGD ser certificado ele precisar ser avaliado por uma
Instituio Avaliadora autorizada pela SOFTEX. Na certificao ser
avaliado pelo menos 1 projeto, e este dever estar aderente ao PGD,
e consequentemente estar aderente ao MPS.BR nvel G.
Requisitos e MPS.BR

Introduo ao MPS Br
Gerncia de Requisitos GRE

Propsito:
O processo Gerncia de Requisitos gerenciar os requisitos dos produtos
e componentes do produto do projeto e identificar inconsistncias entre os
requisitos, os planos do projeto e os produtos de trabalho do projeto.
Requisitos e MPS.BR

Introduo ao MPS Br
Gerncia de Requisitos GRE

GRE 1. O entendimento dos requisitos obtido junto aos fornecedores de


requisitos;
GRE 2. Os requisitos de software so aprovados utilizando critrios objetivos;
GRE 3. A rastreabilidade bidirecional entre os requisitos e os produtos de trabalho
estabelecida e mantida;
GRE 4. Revises em planos e produtos de trabalho do projeto so realizadas
visando identificar e corrigir inconsistncias em relao aos requisitos;
GRE 5. Mudanas nos requisitos so gerenciadas ao longo do projeto.
Requisitos e MPS.BR

Introduo ao MPS Br

Atributos de processo AP 1.1 e AP 2.1 Nvel G

AP 1.1 O processo executado


Resultado esperado:

RAP 1. O processo atinge seus resultados definidos.


Requisitos e MPS.BR

Introduo ao MPS Br
Atributos de processo AP 1.1 e AP 2.1 Nvel G

AP 2.1 O processo gerenciado


Resultados esperados:

RAP 2. Existe uma poltica organizacional estabelecida e mantida para o processo;


RAP 3. A execuo do processo planejada;
RAP 4 (Para o Nvel G). A execuo do processo monitorada e ajustes so realizados para atender aos
planos; (A partir do Nvel F). Medidas so planejadas e coletadas para monitorao da execuo do
processo;
RAP 5. Os recursos necessrios para a execuo do processo so identificados e disponibilizados;
RAP 6. As pessoas que executam o processo so competentes em termos de formao, treinamento e
experincia;
RAP 7. A comunicao entre as partes interessadas no processo gerenciada de forma a garantir o seu
envolvimento no projeto;
RAP 8. Mtodos adequados para monitorar a eficcia e adequao do processo so determinados.
RAP 9 (A partir do Nvel F) A aderncia dos processos executados s descries de processo, padres e
procedimentos avaliada objetivamente e so tratadas as no conformidades.