O incio para toda a atividade de desenvolvimento de software o levantamento de
requisitos, sendo esta atividade repetida em todas as demais etapas da engenharia de requisitos. Sommerville (2003) prope um processo genrico de levantamento e anlise que contm as seguintes atividades! "ompreens#o do domnio! Os analistas devem desenvolver sua compreens#o do domnio da aplica$#o% "oleta de requisitos! & o processo de interagir com os sta'eholders do sistema para desco(rir seus requisitos. ) compreens#o do domnio se desenvolve mais durante essa atividade% "lassi*ica$#o! +ssa atividade considera o con,unto n#o estruturado dos requisitos e os organi-a em grupos coerentes% .esolu$#o de con*litos! /uando m0ltiplos sta'eholders est#o envolvidos, os requisitos apresentar#o con*litos. +ssa atividade tem por o(,etivo solucionar esses con*litos% 1e*ini$#o das prioridades! +m qualquer con,unto de requisitos, alguns ser#o mais importantes do que outros. +sse estgio envolve intera$#o com os sta'eholders para a de*ini$#o dos requisitos mais importantes% 2eri*ica$#o de requisitos! Os requisitos s#o veri*icados para desco(rir se est#o completos e consistentes e se est#o em concord3ncia com o que os sta'eholders dese,am do sistema. O levantamento e anlise de requisitos um processo iterativo, com uma contnua valida$#o de uma atividade para outra, con*orme e4empli*icado pela 5igura 6. Figura 1. 7rocesso de levantamento e anlise de requisitos (SO88+.29::+, 2003) Dificuldades encontradas O pro(lema de n#o sa(er especi*icar corretamente o que o sistema dever *a-er muito antigo. 7ompilho (6;;<) cita um e4emplo do relat=rio produ-ido por 8c>inse?, em 6;@A, e mencionado por B. :ange*ords e B. Sundgren onde se a*irmava que dois ter$os das empresas ali estudadas estavam desapontadas com o atendimento rece(ido em sistemas de in*orma$#o. )p=s mais de 30 anos da ela(ora$#o do relat=rio a situa$#o n#o muito di*erente. )lgumas das ra-es para o (ai4o grau de satis*a$#o dos usurios para os sistemas destacamCse! Da *ase de levantamento de requisitos do pro,eto, onde n#o utili-ada uma tcnica adequada para e4trair os requisitos do sistema% ) *alha do analista em n#o descrever os requisitos do sistema de modo claro, sem am(igEidades, conciso e consistente com todos os aspectos signi*icativos do sistema proposto. +ntre as di*iculdades encontradas na *ase de levantamento de requisitos est#o! o usurio principal do sistema n#o sa(e o que quer que o sistema *a$a ou sa(e e n#o consegue transmitir para o analista% requisitos identi*icados, mas que n#o s#o realistas e n#o identi*icam os requisitos similares in*ormados por pessoas di*erentes. Fm sta'eholder errado a*etar em perda de tempo e dinheiro para am(as as partes envolvidas no desenvolvimento do sistema. 9denti*icaCse um levantamento de requisitos adequado atravs da (oa de*ini$#o do pro,eto, da e*etividade do pro,eto, de in*orma$es necessrias a um per*eito diagn=stico e de solu$es inteligentes. /uanto ao levantamento de requisitos inadequado, o resultado um diagn=stico po(re com concluses comprometidas, n#o identi*ica$#o das causas dos pro(lemas, custos elevados, pra-os vencidos ou comprometedores, omiss#o de processos *undamentais e descrditos. Tcnicas de Levantamento de Requisitos )s tcnicas de levantamento de requisitos tGm por o(,etivo superar as di*iculdades relativas a esta *ase. Hodas as tcnicas possuem um conceito pr=prio e suas respectivas vantagens e desvantagens, que podem ser utili-adas em con,unto pelo analista. Ser#o apresentadas de *orma resumida nesse artigo algumas tcnicas de levantamento de requisitos. Levantamento orientado a pontos de vista 7ara qualquer sistema, de tamanho mdio ou grande, normalmente h di*erentes tipos de usurio *inal. 8uitos stakeholders tGm algum tipo de interesse nos requisitos do sistema. 7or esse motivo, mesmo para um sistema relativamente simples, e4istem muitos pontos de vista di*erentes que devem ser considerados. Os di*erentes pontos de vista a respeito de um pro(lema IvGemJ o pro(lema de modos di*erentes. "ontudo, suas perspectivas n#o s#o inteiramente independentes, mas em geral apresentam alguma duplicidade, de modo que apresentam requisitos comuns. )s a(ordagens orientadas a ponto de vista, na engenharia de requisitos, reconhecem esses di*erentes pontos de vista e os utili-am para estruturar e organi-ar o processo de levantamento e os pr=prios requisitos. Fma importante capacidade da anlise orientada a pontos de vista que ela reconhece a e4istGncia de vrias perspectivas e o*erece um framework para desco(rir con*litos nos requisitos propostos por di*erentes stakeholders. O mtodo 2O.1 (viewpoint-oriented requirements definition definio de requisitos orientada a ponto de vista) *oi pro,etado como um *rameKor' orientado a servi$o para o levantamento e anlise de requisitos. ) primeira etapa da anlise de ponto de vista identi*icar os possveis pontos de vista. Dessa etapa os analistas se re0nem com os stakeholders e utili-am a a(ordagem de brainstorming para identi*icar os servi$os em potencial e as entidades que interagem com o sistema. ) segunda etapa a estrutura$#o de pontos de vista, que envolve agrupar pontos de vista relacionados, segundo uma hierarquia. Servi$os comuns est#o locali-ados nos nveis mais altos da hierarquia e herdados por pontos de vista de nvel in*erior. ) etapa de documenta$#o do ponto de vista tem por o(,etivo re*inar a descri$#o dos pontos de vista e servi$os identi*icados. O mapeamento de sistema con*orme ponto de vista envolve identi*icar o(,etos em um pro,eto orientado a o(,etos, utili-ando as in*orma$es de servi$o que est#o encapsuladas nos pontos de vista. ) 5igura 2 e4empli*ica a tcnica de levantamento orientado a ponto de vista. Figura . 8todo 2O.1, SO88+.29::+ L 2003 !tnografia ) etnogra*ia uma tcnica de o(serva$#o que pode ser utili-ada para compreender os requisitos sociais e organi-acionais, ou se,a, entender a poltica organi-acional (em como a cultura de tra(alho com o(,etivo de *amiliari-arCse com o sistema e sua hist=ria. Os cientistas sociais e antrop=logos usam tcnicas de o(serva$#o para desenvolver um entendimento completo e detalhado de culturas particulares. Desta tcnica, o analista se insere no am(iente de tra(alho em que o sistema ser utili-ado. O tra(alho dirio o(servado e s#o anotadas as tare*as reais em que o sistema ser utili-ado. O principal o(,etivo da etnogra*ia que ela a,uda a desco(rir requisitos de sistema implcitos, que re*letem os processos reais, em ve- de os processos *ormais, onde as pessoas est#o envolvidas. +tnogra*ia particularmente e*ica- na desco(erta de dois tipos de requisitos! Os requisitos derivados da maneira como as pessoas realmente tra(alham, em ve- da maneira pelas quais as de*ini$es de processo di-em como elas deveriam tra(alhar% Os requisitos derivados da coopera$#o e conscienti-a$#o das atividades de outras pessoas. )lguns itens importantes que devem ser e4ecutados antes, durante e depois do estudo de o(serva$#o! )ntes, necessrio identi*icar as reas de usurio a serem o(servadas% o(ter a aprova$#o das gerGncias apropriadas para e4ecutar as o(serva$es% o(ter os nomes e *un$es das pessoas chave que est#o envolvidas no estudo de o(serva$#o% e e4plicar a *inalidade do estudo% 1urante, necessrio *amiliari-arCse com o local de tra(alho que est sendo o(servado. 7ara isso preciso o(servar os agrupamentos organi-acionais atuais% as *acilidades manuais e automati-adas% coletar amostras de documentos e procedimentos escritos que s#o usados em cada processo espec*ico que est sendo o(servado% e acumular in*orma$es estatsticas a respeito das tare*as, como! *reqEGncia que ocorrem, estimativas de volumes, tempo de dura$#o para cada pessoa que est sendo o(servada. )lm de o(servar as opera$es normais de neg=cios acima importante o(servar as e4ce$es% 1epois, necessrio documentar as desco(ertas resultantes das o(serva$es *eitas. 7ara consolidar o resultado preciso rever os resultados com as pessoas o(servadas eMou com seus superiores. ) anlise de o(serva$#o tem algumas desvantagens como, consumir (astante tempo e o analista ser indu-ido a erros em suas o(serva$es. 8as em geral a tcnica de o(serva$#o muito 0til e *reqEentemente usada para complementar desco(ertas o(tidas por outras tcnicas. "or#s$ops HrataCse de uma tcnica de elicita$#o em grupo usada em uma reuni#o estruturada. 1evem *a-er parte do grupo uma equipe de analistas e uma sele$#o dos stakeholders que melhor representam a organi-a$#o e o conte4to em que o sistema ser usado, o(tendo assim um con,unto de requisitos (em de*inidos. )o contrrio das reunies, onde e4iste pouca intera$#o entre todos os elementos presentes, o workshop tem o o(,etivo de acionar o tra(alho em equipe. N um *acilitador neutro cu,o papel condu-ir a workshop e promover a discuss#o entre os vrios mediadores. )s tomadas de decis#o s#o (aseadas em processos (em de*inidos e com o o(,etivo de o(ter um processo de negocia$#o, mediado pelo *acilitador. Fma tcnica utili-ada em workshops o brainstorming. )p=s os workshops ser#o produ-idas documenta$es que re*letem os requisitos e decises tomadas so(re o sistema a ser desenvolvido. )lguns aspectos importantes a serem considerados! a postura do condutor do seminrio deve ser de mediador e o(servador% a convoca$#o deve possuir dia, hora, local, horrio de incio e de trmino% assunto a ser discutido e a documenta$#o do seminrio. %rototipagem 7rot=tipo tem por o(,etivo e4plorar aspectos crticos dos requisitos de um produto, implementando de *orma rpida um pequeno su(con,unto de *uncionalidades deste produto. O prot=tipo indicado para estudar as alternativas de inter*ace do usurio% pro(lemas de comunica$#o com outros produtos% e a via(ilidade de atendimento dos requisitos de desempenho. )s tcnicas utili-adas na ela(ora$#o do prot=tipo s#o vrias! inter*ace de usurio, relat=rios te4tuais, relat=rios gr*icos, entre outras. )lguns dos (ene*cios do prot=tipo s#o as redu$es dos riscos na constru$#o do sistema, pois o usurio chave , veri*icou o que o analista captou nos requisitos do produto. 7ara ter sucesso na ela(ora$#o dos prot=tipos necessria a escolha do am(iente de prototipagem, o entendimento dos o(,etivos do prot=tipo por parte de todos os interessados no pro,eto, a *ocali-a$#o em reas menos compreendidas e a rapide- na constru$#o. !ntrevistas ) entrevista uma das tcnicas tradicionais mais simples de utili-ar e que produ- (ons resultados na *ase inicial de o(ten$#o de dados. "onvm que o entrevistador dG margem ao entrevistado para e4por as suas idias. & necessrio ter um plano de entrevista para que n#o ha,a dispers#o do assunto principal e a entrevista *ique longa, dei4ando o entrevistado cansado e n#o produ-indo (ons resultados. )s seguintes diretri-es podem ser de grande au4ilio na dire$#o de entrevistas (em sucedidas com o usurio! desenvolver um plano geral de entrevistas, certi*icarCse da autori-a$#o para *alar com os usurios, plane,ar a entrevista para *a-er uso e*iciente do tempo, utili-ar *erramentas automati-adas que se,am adequadas, tentar desco(rir que in*orma$#o o usurio est mais interessado e usar um estilo adequado ao entrevistar. 7ara plane,ar a entrevista necessrio que antes dela se,am coletados e estudados todos os dados pertinentes O discuss#o, como *ormulrios, relat=rios, documentos e outros. 1essa *orma, o analista estar (em conte4tuali-ado e ter mais produtividade nos assuntos a serem discutidos na entrevista. & importante determinar um escopo relativamente limitado, *ocali-ando uma pequena parte do sistema para que a reuni#o n#o se estenda por mais de uma hora. O usurio tem di*iculdade de concentra$#o em reunies muito longas, por isso importante *ocali-ar a reuni#o no escopo de*inido. )p=s a entrevista necessrio validar se o que *oi documentado pelo analista est de acordo com a necessidade do usurio, que o usurio n#o mudou de opini#o e que o usurio entende a nota$#o ou representa$#o gr*ica de suas in*orma$es. ) atitude do analista em rela$#o O entrevista determinar seu *racasso ou sucesso. Fma entrevista n#o uma competi$#o, deveCse evitar o uso e4cessivo de termos tcnicos e n#o condu-ir a entrevista em uma tentativa de persuas#o. O modo como o analista *ala n#o deve ser muito alto, nem muito (ai4o, tampouco indiretamente, ou se,a, utili-ar os termos! ele disse isso ou aquilo na reuni#o para o outro entrevistado. O modo melhor para agir seria, por e4emplo, di-er! O Po#o vG a solu$#o para o pro,eto dessa *orma. + o senhor )ndr, qual a sua opini#oQ +m uma entrevista o analista nunca deve criticar a credi(ilidade do entrevistado. O analista deve ter em mente que o entrevistado o perito no assunto e *ornecer as in*orma$es necessrias ao sistema. 7ara ela(orar perguntas detalhadas necessrio solicitar que o usurio! +4plique o relacionamento entre o que est em discuss#o e as demais partes do sistema% 1escreva o ponto de vista de outros usurios em rela$#o ao item que este,a sendo discutido% 1escreva in*ormalmente a narrativa do item em que o analista dese,a o(ter in*orma$es% 7erguntar ao usurio se o item em discuss#o depende para a sua e4istGncia de alguma outra coisa, para assim poder ,untar os requisitos comuns do sistema, *ormando assim um escopo conciso. 7odeCse utili-ar a con*irma$#o, para tanto o analista deve di-er ao usurio o que acha que ouviu ele di-er. Deste caso, o analista deve utili-ar as suas pr=prias palavras em lugar das do entrevistado e solicitar ao entrevistado con*irma$#o do que *oi dito. &uestionrios O uso de questionrio indicado, por e4emplo, quando h diversos grupos de usurios que podem estar em diversos locais di*erentes do pas. Deste caso, ela(oramCse pesquisas espec*icas de acompanhamento com usurios selecionados, que a contri(ui$#o em potencial pare$a mais importante, pois n#o seria prtico entrevistar todas as pessoas em todos os locais. +4istem vrios tipos de questionrios que podem ser utili-ados. +ntre estes podemos listar! m0ltipla escolha, lista de veri*ica$#o e questes com espa$os em (ranco. O questionrio deve ser desenvolvido de *orma a minimi-ar o tempo gasto em sua resposta. Da *ase de prepara$#o do questionrio deve ser indicado o tipo de in*orma$#o que se dese,a o(ter. )ssim que os requisitos *orem de*inidos o analista deve ela(orar o questionrio com questes de *orma simples, clara e concisa, dei4ar espa$o su*iciente para as repostas que *orem descritivas e agrupar as questes de t=picos espec*icos em um con,unto com um ttulo especial. O questionrio deve ser acompanhado por uma carta e4plicativa, redigida por um alto e4ecutivo, para en*ati-ar a import3ncia dessa pesquisa para a organi-a$#o. 1eve ser desenvolvido um controle que identi*ique todas as pessoas que rece(er#o os questionrios. ) distri(ui$#o deve ocorrer ,unto com instru$es detalhadas so(re como preenchGClo e ser indicado claramente o pra-o para devolu$#o do questionrio. )o analisar as respostas dos participantes *eito uma consolida$#o das in*orma$es *ornecidas no questionrio, documentando as principais desco(ertas e enviando uma c=pia com estas in*orma$es para o participante como *orma de considera$#o pelo tempo dedicado a pesquisa. 'rainstorming Brainstorming uma tcnica para gera$#o de idias. +la consiste em uma ou vrias reunies que permitem que as pessoas sugiram e e4plorem idias. )s principais etapas necessrias para condu-ir uma sess#o de brainstorming s#o! Sele$#o dos participantes! Os participantes devem ser selecionados em *un$#o das contri(ui$es diretas que possam dar durante a sess#o. ) presen$a de pessoas (em in*ormadas, vindas de di*erentes grupos garantir uma (oa representa$#o% +4plicar a tcnica e as regras a serem seguidas! O lder da sess#o e4plica os conceitos (sicos de (rainstorming e as regras a serem seguidas durante a sess#o% 7rodu-ir uma (oa quantidade de idias! Os participantes geram tantas idias quantas *orem e4igidas pelos t=picos que est#o sendo o o(,eto do (rainstorming. Os participantes s#o convidados, um por ve-, a dar uma 0nica idia. Se algum tiver pro(lema, passa a ve- e espera a pr=4ima rodada. Do brainstorming as idias que a princpio pare$am n#o convencionais, s#o encora,adas, pois elas *requentemente estimulam os participantes, o que pode levar a solu$es criativas para o pro(lema. O n0mero de idias geradas deve ser (em grande, pois quanto mais idias *orem propostas, maior ser a chance de aparecerem (oas idias. Os participantes tam(m devem ser encora,ados a com(inar ou enriquecer as idias de outros e, para isso, necessrio que todas as idias permane$am visveis a todos os participantes. Desta tcnica designada uma pessoa para registrar todas as idias em uma lousa (ranca ou em papel. R medida que cada *olha de papel preenchida, ela colocada de *orma que todos os participantes possam vGCla. )nalisar as idias a *ase *inal do brainstorming. Dessa *ase reali-ada uma revis#o das idias, uma de cada ve-. )s consideradas valiosas pelo grupo s#o mantidas e classi*icadas em ordem de prioridade. ()D P)1 (Joint ppli!ation "esign) uma tcnica para promover coopera$#o, entendimento e tra(alho em grupo entre os usurios desenvolvedores. O P)1 *acilita a cria$#o de uma vis#o compartilhada do que o produto de so*tKare deve ser. )travs da sua utili-a$#o os desenvolvedores a,udam os usurios a *ormular pro(lemas e e4plorar solu$es. 1essa *orma, os usurios ganham um sentimento de envolvimento, posse e responsa(ilidade com o sucesso do produto. ) tcnica P)1 tem quatro princpios (sicos! 1in3mica de grupo! s#o reali-adas reunies com um lder e4periente, analista, usurios e gerentes, para despertar a *or$a e criatividade dos participantes. O resultado *inal ser a determina$#o dos o(,etivos e requisitos do sistema% Fso de tcnicas visuais! para aumentar a comunica$#o e o entendimento% 8anuten$#o do processo organi-ado e racional! o P)1 emprega a anlise top doKn e atividades (em de*inidas. 7ossi(ilita assim, a garantia de uma anlise completa redu-indo as chances de *alhas ou lacunas no pro,eto e cada nvel de detalhe rece(e a devida aten$#o% Ftili-a$#o de documenta$#o padr#o! preenchida e assinada por todos os participantes. +ste documento garante a qualidade esperada do pro,eto e promove a con*ian$a dos participantes. ) tcnica P)1 composta de duas etapas principais! plane,amento, que tem por o(,etivo elicitar e especi*icar os requisitos% e pro,eto, em que se lida com o pro,eto de so*tKare. "ada etapa consiste em trGs *ases! adapta$#o, sess#o e *inali-a$#o. ) *ase de adapta$#o consiste na prepara$#o para a sess#o, ou se,a, organi-ar a equipe, adaptar o processo P)1 ao produto a ser construdo e preparar o material. Da *ase de sess#o reali-ado um ou mais encontros estruturados, envolvendo desenvolvedores e usurios onde os requisitos s#o desenvolvidos e documentados. ) *ase de *inali-a$#o tem por o(,etivo converter a in*orma$#o da *ase de sess#o em sua *orma *inal (um documento de especi*ica$#o de requisitos). N seis tipos de participantes, em(ora nem todos participem de todas as *ases! :der da sess#o! responsvel pelo sucesso do es*or$o, sendo o *acilitador dos encontros. 1eve ser competente, com (om relacionamento pessoal e qualidades gerenciais de lideran$a% +ngenheiro de requisitos! o participante diretamente responsvel pela produ$#o dos documentos de sada das sesses P)1. 1eve ser um desenvolvedor e4periente para entender as questes tcnicas e detalhes que s#o discutidos durante as sesses e ter ha(ilidade de organi-ar idias e e4pressClas com clare-a% +4ecutor! o responsvel pelo produto sendo construdo. Hem que *ornecer aos participantes uma vis#o geral dos pontos estratgicos do produto de so*tKare a ser construdo e tomar as decises e4ecutivas, tais como aloca$#o de recursos, que podem a*etar os requisitos e o pro,eto do novo produto% .epresentantes dos usurios! s#o as pessoas na empresa que ir#o utili-ar o produto de so*tKare. 1urante a e4tra$#o de requisitos, os representantes s#o *requentemente gerentes ou pessoasCchave dentro da empresa que tem uma vis#o melhor do todo e de como ele ser usado% .epresentantes de produtos de so*tKare! s#o pessoas que est#o (astante *amiliari-adas com as capacidades dos produtos de so*tKare. Seu papel a,udar os usurios a entender o que ra-ovel ou possvel que o novo produto *a$a% +specialista! a pessoa que pode *ornecer in*orma$es detalhadas so(re um t=pico espec*ico. O conceito do P)1 de a(ordagem e din3mica de grupo poder ser utili-ado para diversas *inalidades, como! plane,amento de atividades tcnicas para um grande pro,eto, discuss#o do escopo e o(,etivos de um pro,eto e estimativa da quantidade de horas necessrias para desenvolver sistemas grandes e comple4os. ) maioria das tcnicas P)1 *unciona melhor em pro,etos pequenos ou mdios. 7ara um sistema grande e comple4o podem ser usadas m0ltiplas sesses P)1 para acelerar a de*ini$#o dos requisitos do sistema. *onclus+o D#o e4iste uma tcnica padr#o para o processo de levantamento de requisitos. 7ara alcan$ar um levantamento de requisitos mais preciso importante o conhecimento de diversas tcnicas para sa(er que tcnica de levantamento aplicar em cada situa$#o. & primordial que o analista possua per*il adequado. O analista de sistemas precisa de mais do que apenas a capacidade de desenhar *lu4ogramas e outros diagramas tcnicos. O analista de sistemas tem a *un$#o de pro,etar e analisar sistemas de =timo desempenho. 7ara que esse o(,etivo se,a alcan$ado, necessrio o analista de sistema possuir a capacidade de! "ompreender conceitos a(stratos, reorgani-Clos em divises l=gicas e sinteti-ar solu$es (aseadas em cada divis#o% )(sorver *atos pertinentes de *ontes con*litantes ou con*usas% +ntender os am(ientes do usurioMcliente% )plicar elementos do sistema de hardKare eMou so*tKare aos elementos do usurioMcliente% "omunicar (em nas *ormas escrita e ver(al e entender o o(,etivo glo(al do so*tKare. ) Ha(ela 6 apresenta os grupos de tcnicas para o levantamento de requisitos. Tcnicas tradicionais S#o aplicadas em vrias reas do conhecimento. +4emplo! questionrios, entrevistas, o(serva$#o, e anlise de documentos. Tcnicas de elicita,+o de grupo Hem por o(,etivo compreender melhor o pensamento e comportamento dos grupos e as necessidades dos usurios. +4emplo! brainstorming e as sesses P)1 (Joint ppli!ation "esign). %rototipa,+o O uso de prot=tipo au4ilia na elicita$#o e valida$#o dos requisitos de sistema. ) prototipa$#o pode ser utili-ada para elicitar requisitos quando h um alto grau de incerte-a ou quando necessrio um rpido feedba!k dos usurios. Tcnicas conte-tuais Surgiram como uma alternativa para as tcnicas tradicionais e cognitivas e inclui tcnicas de etnogra*ia e anlise social. Ta.ela 1. Srupos de tcnicas para levantamento de requisitos :eia mais em! +ngenharia de So*tKare 2 C Hcnicas para levantamento de .equisitos http!MMKKK.devmedia.com.(rMengenhariaCdeCso*tKareC2CtecnicasCparaClevantamentoCdeC requisitosM;6<6Ti4--249A0SvtK