Você está na página 1de 44

CURSO: CET/DSAS DISCIPLINA: Eng.

de Software ANO LECTIVO: 2009/2011

CET/DSAS {EngSoft}
Joel Carvalho - 10.09.2010 Captulo 2 Anlise de Requisitos
Mod.AFTEBI.P-052.rev02

FORMAO TECNOLGICA

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Sntese
i. O que so e como fazer o levantamento de Requisitos... ii. Requisitos Funcionais iii.Requisitos No Funcionais iv.Requisitos de Interface

FORMAO TECNOLGICA

Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

0. Preparao
Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Jogo
Imagine que conheceu um milionrio que no fala o seu idioma e que ele lhe quer oferecer um carro, a nica maneira de lhe dizer qual o carro que quer atravs de um desenho. Escreva o seu nome numa folha e desenhe em cerca de 1 minuto o carro dos seus sonhos. O tempo foi pouco e o desenho no est completo. Como tal troque a sua folha com algum e continue o desenho de um seu colega por mais 1 minuto. No podem trocar informaes sobre qual o modelo/marca!
FORMAO TECNOLGICA

Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Jogo
O tempo foi pouco e o desenho continua ilegvel. Troque a folha do seu colega com outro colega e assuma novamente a responsabilidade de tentar concretizar o sonho de um dos seus colegas. Finalmente j se parece com um carro, esto um pouco estranhos verdade, ser que o milionrio vai perceber? Revelem a identidade do vossos carros.
Mod.AFTEBI.P-052.rev02

FORMAO TECNOLGICA

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Concluses?
Ser que tudo o que um cliente pretende transmitir chega ao seu destinatrio tal como ele quer? Ser que o cliente consegue explicar-se bem? Ser que percebemos sempre bem? Quando a mensagem mal transmitida de quem a culpa? Porqu adoptar diferentes formas de comunicao? Qual a melhor forma de comunicao para o desenvolvimento de software?

Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

O que so e como fazer o levantamento de Requisitos...


Mod.AFTEBI.P-052.rev02

i.

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

O que um Requisito?
Algo que descreve uma caracterstica, especificidade, propriedade ou comportamento de um sistema. Pode ser uma afirmao abstracta relativa a um servio, uma restrio do sistema, uma especificao matemtica, etc. Inicialmente os requisitos so bastante abstractos, mas medida que a anlise feita os requisitos tendem a ser cada vez mais descritivos e especficos
Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Como so utilizados?
Os requisitos podem ser utilizados para o desenvolvimento de uma plataforma ou mesmo a assinatura de um contracto. Sendo neste caso bastante descritivos. Os requisitos tambm podem ser utilizados para negociar um contracto, neste caso devero ser abstractos e abertos a interpretaes.
Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Engenharia/Anlise de Requisitos
Processo de estudo, descoberta, anlise, recolha e verificao dos servios desejados pelo cliente com a interpretao das devidas restries que o mesmo dever ter. Os requisitos so assim uma descrio, geralmente textual na forma de tabelas ou tpicos, dos servios do sistema bem como as restries.
Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Tipos de Requisitos
Requisitos de utilizador (escrito para o cliente/utilizadores)
Afirmaes em linguagem natural Diagramas dos servios Restries dos servios

Requisitos de sistema (mais tcnico, escrito para equipa de


desenvolvimento, podendo ser utilizado no contrato do cliente)

Documento estruturado com:


Mod.AFTEBI.P-052.rev02

Descries detalhadas das funcionalidades do sistema Restries s funcionalidades do sistema

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Completude e Consistncia
Completude Descrio de TODAS as funcionalidades requeridas Exemplo: Numa calculadora, no pode faltar o boto de igualdade, etc. Consistncia No podem existir incongruncias/contradies na descrio das diversas funcionalidades Exemplo: Uma calculadora tradicional no pode somar letras ou smbolos

Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Formas de Recolher Informao


Forma: Entrevistas Formais/Informais (presenciais ou no) Questionrios (digitais ou no digitais) Recorrer a Contra-Interrogatrios Anlise de Documentos ... Pblico: Individual (Cliente, Utilizador, Gestor, etc) Em Grupo (com vrios utilizadores)

Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Formas de Escrever
Usando linguagem natural Usando linguagem formal (matemtica) Usando linguagem grfica Usando tabelas Usando formulrios Usando diagramas etc.
Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Como Escrever
Identificar por abreviaturas e numerao os requisitos Usar sempre o mesmo formato (tipo de linguagem, tipo de tabelas, etc.) Ser conciso e consistente (verbos: dever para requisitos obrigatrios e deveria para requisitos desejveis) Evitar calo informtico ou de qualquer outro tipo Referir os requisitos que originaram no que se est a escrever, sempre que isso se verificar. Exemplo: Do RF01 resulta o RF02 o qual dever...
Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Organizao da Informao
Contexto
Cliente Objectivo Geral Data etc.

Mod.AFTEBI.P-052.rev02

Utilizadores do sistema e Entidades Externas Identificao dos objectivos especficos Identificao dos riscos Identificao das restries

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Problemas Comuns
Os limites do sistemas foram mal definidos, no se percebe a 100% o que o sistema deve ou no deve fazer O cliente no consegue ou no sabe o que quer, no conhece as limitaes e capacidades dos sistemas computacionais O cliente omite informao que lhe parece bvia e/ou faz referencia a requisitos ambguos ou impossveis Alterao das vontades do cliente com o tempo, alterando os requisitos
Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Dicas
Avaliar a viabilidade tcnica correctamente Identificar correctamente os utilizadores, o cliente e quem o ir ajudar a especificar o sistema Reunir com utilizadores, cliente e equipa de anlise de requisitos sempre que se justificar Identificar o ambiente tcnico em que o sistema ir funcionar, computadores, infra-estruturas de comunicao, tipos de SO, etc. Identificar limitaes: pequena largura de banda, pouca memria, etc.

Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Dicas
Criar cenrios de utilizao Obter diferentes pontos de vista (interpretaes diferentes) Verificar a validade de cada requisito: Consistncia com o objectivo global? Nvel de abstraco adequado? Referncia devidamente identificadas? Consistncia entre requisitos? possvel serem testados aps implementao? Para mais, consultar: Standard IEE/ANSI 830-1998

Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

ii. Requisitos Funcionais


Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Definio
Os requisitos funcionais descrevem o que o sistema deve fazer, isto as funcionalidades necessrias para corresponder aos objectivos do sistema. Os requisitos funcionais podem implicar utilizadores. Os requisitos funcionais indicam situaes desejveis e/ou obrigatrias para atingir os objectivos especficos do sistema.
Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Requisitos Funcionais
Afirmaes relativas: Aos servios que o sistema deve fornecer A como o sistema deve reagir perante determinadas entradas A como o sistema se deve comportar em determinadas situaes Exemplo: uma calculadora no pode permitir a diviso de zero (0/1=ERRO)
Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Outros Exemplos
Registar Clientes. Imprimir Registo de Clientes. Alterar Password do Cliente. Alterar dados pessoais do Cliente. Recuperar Password do Cliente. Consultar dados dos Clientes. etc.
Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Requisitos NoFuncionais
Mod.AFTEBI.P-052.rev02

iii.

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Definio
Os requisitos no-funcionais descrevem as caractersticas do software relativas performance, segurana, usabilidade, etc. Os requisitos no-funcionas descrevem assim todos os aspectos relacionados com a qualidade do servio (QoS). Estes requisitos tambm so conhecidos por requisitos suplementares.
Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Requisitos No-Funcionais
Restries/Descries sobre os servios ou funes oferecidas pelo sistema: Relativas a tempo Relativas ao processo de desenvolvimento Relativas a standards Exemplo: no caso da calculadora, a funcionalidade bsica de soma deve fornecer uma resposta em menos de 100 mili segundos.
Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Outros Exemplos
A password do cliente deve ser cifrada. O processo de introduo de dados e registo do cliente no pode demorar mais de 30 segundos. O email do cliente deve ser nico, isto no podem existir dois clientes com o mesmo email. A sesso do cliente expira aps 30minutos de inactividade. etc.
Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Mod.AFTEBI.P-052.rev02

Classificao de Sommerville

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Funcionais Vs No-Funcionais
Nem sempre so fceis de classificar! Funcionais:
Geralmente identificados por RFXX (exemplo: RF01, etc.) O que faz Pode ter por base outro RF

No-Funcionais:
Geralmente identificados por RNFXX (exemplo: RNF01, etc.) Com que critrios faz Pode ter por base outro RF ou RNF

Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Funcionais Vs No-Funcionais
Pode-se dizer que um requisito funcional expressa algum tipo de transformao que tem lugar no software, enquanto um no funcional expressa como essa transformao ir se comportar ou que qualidades especficas ela dever possuir

Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Trabalho Online
No Google Group vai surgir um tpico com link para um documento do Google Doc. Nesse documento vo constar os nomes das diversas componentes da Classificao de Sommerville. Cada formando deve:
Definir um dos termos em branco directamente no doc e deixar essa definio no google group, para todos poderem ler a verso inicial de cada definio. Melhorar no doc as definies dos colegas sempre que considerarem necessrio. Cada definio deve ter entre 2 a 5 linhas e no mais!
Mod.AFTEBI.P-052.rev02

Este mini-trabalho vale 0.2 na componente de Assiduidade, Pontualidade, Participao e Comportamento.

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Requisitos de Interface
Mod.AFTEBI.P-052.rev02

iv.

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Requisitos de Interface
Restries/Descries sobre a interface com o utilizador: Relativas s componentes (botes, formulrios, etc.) Relativas aos comportamentos (activar com um click, dois, etc.) Relativas aos formatos e restantes caractersticas Exemplo: no caso da calculadora, a funcionalidade de soma deve ser activada atravs de um boto quadrado de X pontos por Y pontos, fundo Azul e com o smbolo + a branco com tamanho Z

Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Trabalho Prtico
Mod.AFTEBI.P-052.rev02

v.

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Trabalho
Software de acompanhamento e recolha das estat sticas de aprendizagem dos alunos de uma turma do ensino secundrio. O software deve produzir um relat rio de aproveitamento dos alunos.

Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Trabalho (RF's)
O sistema deve registar as principais aces de cada utilizador. O sistema deve fornecer um relatrio de aproveitamento de cada aluno. O relat rio de aproveitamento do aluno deve conter o tempo de utilizao do software, o n mero de exerc cios concludos, o n mero de respostas certas e o nmero de respostas erradas. O sistema deve fornecer um relat rio do aproveitamento da turma. O relat rio de aproveitamento da turma deve conter a m dia e o desvio-padr o dos seguintes dados: tempo de utilizao do software, n mero de exerc cios concludos bem como o n mero de respostas certas e o nmero de respostas erradas

Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Trabalho (RNF's)
O sistema deve usar gr ficos comparativos do aproveitamento do aluno com a m dia da turma. O sistema deve usar cores na constru o dos gr ficos. O sistema deve possibilitar a consulta do relatrio no formato PDF e XLS. O tempo de resposta na elabora o do relat rio n o pode ser superior a 15 segundos.
Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Trabalho (RI's)
A interface do sistema deve ser feita em Silverlight. A interface deve ter uma resoluo de 800x600 pixeis, no ajustvel e personalizada imagem do cliente. Todos os formulrios de introduo de dados devem ter um fundo beige e texto preto. Deve existir um boto para gerar o relatrio do aluno, bem como outro boto para gerar o relatrio da turma.
Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Perguntas?
{Bom Trabalho!}
Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Faa a distino entre requisitos funcionais e no funcionais. Qual a importncia da especificao do sistema? Quais as ferramentas que podem e devem ser utilizadas para combater a falta de especificao de um sistema? Indique duas situaes problemticas que podem surgir no processo de levantamento dos requisitos? Existe alguma norma para a criao e escrita de requisitos? Exemplifique vrias situaes que podem ocorrer no processo de comunicao com o cliente.
Mod.AFTEBI.P-052.rev02

CURSO: CET/DSAS DISCIPLINA: Eng. de Software ANO LECTIVO: 2009/2011

Mod.AFTEBI.P-052.rev02

Estudos indicam que os requisitos, s detectados depois do software implementado ou erros na anlise de requisitos, so em mdia 20 vezes mais caros de corrigir do que qualquer outro tipo de erro.

Você também pode gostar