Escolar Documentos
Profissional Documentos
Cultura Documentos
CET/DSAS {EngSoft}
Joel Carvalho - 10.09.2010 Captulo 2 Anlise de Requisitos
Mod.AFTEBI.P-052.rev02
FORMAO TECNOLGICA
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
0. Preparao
Mod.AFTEBI.P-052.rev02
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
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
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
Mod.AFTEBI.P-052.rev02
i.
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
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
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
Tipos de Requisitos
Requisitos de utilizador (escrito para o cliente/utilizadores)
Afirmaes em linguagem natural Diagramas dos servios Restries dos servios
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
Mod.AFTEBI.P-052.rev02
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
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
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
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
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
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
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
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
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
Mod.AFTEBI.P-052.rev02
Requisitos NoFuncionais
Mod.AFTEBI.P-052.rev02
iii.
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
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
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
Mod.AFTEBI.P-052.rev02
Mod.AFTEBI.P-052.rev02
Classificao de Sommerville
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
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
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
Requisitos de Interface
Mod.AFTEBI.P-052.rev02
iv.
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
Trabalho Prtico
Mod.AFTEBI.P-052.rev02
v.
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
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
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
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
Perguntas?
{Bom Trabalho!}
Mod.AFTEBI.P-052.rev02
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
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.