Artigo - Prototipação
Artigo - Prototipação
Artigo - Prototipação
Alessandro DOsvaldo Amelio Edidelson Aparecido Lucien Paulo Roberto Sella Junior
Sistemas de Informao II
Ourinhos SP 2 sem/2013
Resumo
Este artigo tem como premissa fazer um estudo e anlise sobre o uso de prottipos no funcionais aplicados na anlise de requisitos reduzindo desperdcios de tempo e custos e melhorando a qualidade dos processos da Engenharia de Software.
Abstract
This article is premised on making a study and analysis on the use of prototypes nonfunctional requirements analysis applied in reducing wastage of time and cost and improving the quality of the processes of Software Engineering.
Introduo
Em Engenharia de Software, a qualidade est diretamente ligada a produzir exatamente o que necessrio para solucionar um determinado problema. Para atingir tal objetivo, porm, exige muita experincia por parte da equipe de desenvolvimento, que muitas vezes no est preparada ainda para concluir um projeto, dependendo de sua complexidade, sem imprevistos. O objetivo deste artigo proporcionar uma viso sobre a utilizao da prototipao no funcional e o que isso acarreta de benefcios ao projeto em relao principalmente a custos, recursos, prazos, esforos. Demonstraremos como integrar este item na produo de um software e analisaremos os resultados proporcionados. Nos casos frequentes, esto problemas com o prazo e custo, que ao fim do projeto, acabam excedendo o planejamento. Neste artigo, pretendemos apresentar o conceito e analisar o uso da Prototipao no funcional, na etapa de verificao e validao do projeto, que segundo Sommerville (2007): O objetivo principal do processo de verificao e validao estabelecer confiana de que o sistema de software est adequado a seu propsito, justamente como um ponto crtico, onde se determina se o que foi ou est sendo produzido realmente o exigido, ou se o projeto ter de ser modificado ou at mesmo refeito, causando o aumento de prazo, custo e esforo da equipe de desenvolvimento.
FUNDAMENTAO TEORICA
O que Prottipo? Em desenvolvimento de softwares h muitos projetos que atrasam, ultrapassam o oramento, acabam no produzindo um software de qualidade e nem atendem s necessidades do cliente. Seja por uma anlise de requisitos mal elaborada, ou pressuposies do analista de requisitos, segundo Lethbridge (2007) parte desses problemas de oramentos, prazos e qualidade so causados por carncia de profissionais habilitados nessa rea. Essa carncia, por sua vez, so resultados de uma educao inadequada, podendo ser comprovada pela pesquisa feita por Sargent (2004) e citada pelo mesmo autor. A pesquisa revela que: (i) apenas 40% dos profissionais da rea de informtica dos Estados Unidos possuem formao nessa rea; (ii) 40% desses conhecem os principais campos da ES, tais como: requisitos, arquitetura, testes, fatores humanos e gesto de projetos; (iii) a maior parte qualificada em programao e/ou so especialistas em determinados tipos de produtos como ferramentas para gerenciamento de dados e desenvolvimento web, etc; e (iv) existe uma parcela considervel de profissionais que no tem conscincia do que no sabem. Apesar de no terem sido encontrados dados estatsticos a respeito no Brasil, acredita-se que a realidade dos profissionais de ES neste pas no deve ser diferente. Assim empresas acabam gastando muito desenvolvendo projetos baseados em suposies de mercado. Partindo desse principio, podemos propor a prototipao no inicio do projeto de desenvolvimento de softwares, mas precisamente prototipao no funcional, que segundo BROWN(2010) define prottipo como Qualquer coisa tangvel que nos permita explorar uma ideia, avalia-la e leva-la adiante um prottipo, sendo assim podemos pensar que um prottipo um modelo feito prestes a ser desenvolvido. O prottipo pode ser aplicado a qualquer tipo de produto ou servio, desde uma experincia virtual at um sistema organizacional segundo BROWN (2010) que afirma tambm, que prottipos eleva a interao do desenvolvimento, mas com o que o psiclogo Mihaly Csikszentmihalyi apud BROWN (2010) chama de transaes entre pessoas e coisas. A prototipagem nos permite a uma in terao continua de aprendizado e avalio em relao a outras ideias, ou at mesmo melhor-las. Alm dos prottipos nos fornecerem vises diferentes e talvez at insights importantes para o projeto, eles no devem ser algo que funcionam por completo, com suas funcionalidades e objetivos concretizados, pois tem que fazer algo que
servir de modelo para um produto final ou acabado, assim formando uma essncia a ser concebida no inicio do projeto, algo para ser evoludo e no concretizado. Para BROWN(2010), ...,prottipo de sucesso no algo que funciona de forma impecvel, mas que nos ensina algo.
Prototipao e experimentao
Prottipos alm de ser algo como pensar com as mos segundo David Kelley apud BROWN (2010), que os compara com o pensamento abstrato definido por especificaes e planejamento. Ele afirma que cada uma tem seu valor e cada qual tem sua melhor aplicao, mas a prototipagem eleva a criao de novas ideias e ao desenvolvimento adiante. Proporcionando tambm uma abertura a experimentao a um baixo custo, proporcionando segundo BROWN (2010), a melhor disposio para testar uma hiptese construindo o objeto e testando com os usurios.
Prototipao no funcional
A prototipagem tem como funo fazer a imerso ao problema do cliente, assim conhecendo os pontos fortes e fracos, com a inteno de identificar e ratificar novos direcionamentos para a prxima anlise, aps o recolhimento dos feedbacks dos clientes, assim realizando novos prottipos mais detalhados e lapidados. Um exemplo de prototipagem no funcional, mas que fomenta a ideia o caso de BROWN(2010): Douglas Dayton e Jim Yurchenco colaram a esfera de uma embalagem de desodorante roll-on na base de uma manteigueira de plstico. No demorou muito para a Apple Computer entregar seu primeiro mouse. Alm da imaginao, mas um simples prottipo, podemos emular a experincia e at mesmo, como um meio mais fcil de visualizao, que apresentado nesse exemplo:
Quando as comunicaes Wi-Fi ainda estavam engatinhando, a Vocera desenvolveu um cenrio em vdeo para demonstrar como empregados poderiam utilizar um crach de comunicaes controlado por voz para se manter conectados com os colegas em qualquer lugar dentro da rea de cobertura da rede da empresa. O curta-metragem percorreu a via crucis de uma equipe de suporte de TI fictcia e foi muito mais eficaz para explicar o conceito a investidores potenciais do que briefing tcnico ou uma serie de slides de PowerPoint.
H o caso de prottipos serem disponibilizados em campo, ou seja para os usurios finais(focus groups ou workshops), para a gerao de feedbacks, mas com isso deve-se preocupar-se com acabamentos, assim gerando prottipos mais caros, e at mesmo mais prximos do produto final. Ainda entretanto se complicam no caso de servios prestados, ainda mais se forem baseados em complexas interaes sociais. Defendo a ideia, BROWN (2010) disserta que a prototipagem tem que ser sempre inspiracional, no sentido de gerar novas ideias, seja incrementais ou evolucionarias. Deve ser realizada no inicio da vida de um projeto, serem numerosas e rapidamente executveis e sendo rudimentares. Nesse nvel de baixa resoluo, recomendado que os prottipos sejam realizados pela prpria equipe e no seja terceirizada por outras.
Prottipo x Custo
Os prottipos podem ser feitos atravs de ferramentas para auxiliar o desenvolvimento da ideia ou problema, utilizando-se ferramentas de baixo custo como papel e caneta, e at mesmo uma metfora de layouts de um sistema, assim criando wireframes ou mockups do sistema. O fluxo das informaes podem ser
desenhadas em um white board, at mesmo pode ser utilizado papel cartolina, a prototipao tem um valor muito baixo e um valor muito alto. Em se tratando de ideia os prottipos iniciais de acordo com BROWN (2010), eles demonstram ...,decidir se uma ideia tem ou no valor funcional. Tornando assim um baixo custo para realizar suposies de mercado. Realizando prototipagem virtualmente, como websites, jogos betas e at mesmo jogos de simulao como o (Second Life), as empresas podem atingir rapidamente clientes em potenciais, e obter feedbacks de pessoas de vrios locais. Assim a prototipagem virtualmente permite recolher uma gama de dados referentes aos produtos, ajudando a tomadas de marketing e decises de mercado. O risco de o prottipo ficar com o custo muito elevado, investindo demais nele (fisicamente, seja por detalhes de design, funes, tornando-o complexo), ou perdendo muito tempo para form-las (ideia inicial sem avano da anlise), assim BROWN (2010) estabelece:
Uma forma de motivar a prototipagem nos primeiros estagio estabelecer uma meta: ter um prottipo pronto ao final da primeira semana ou ate mesmo no primeiro dia. Uma vez que expresses tangveis comeam a surgir, fica fcil experimenta-las e solicitar feedback interno, da administrao, e externo, de clientes potenciais.
Justamente impor limite quanto ao tempo, e no se prolongando o projeto em infinitos prottipos, o fim do projeto acontece com a justificativa de BROWN (2010) que explica o fim dos prottipos: medida que o projeto se aproxima da concluso, os prottipos tendem a ser mais completos. Eles provavelmente sero caros e complexos e podem ser iguais ao produto ou ao servio final.
Prottipo x Tempo
Os prottipos podem demorar muito para serem formados, especialmente em relao concepo e anlise da ideia ou problema do cliente, porm BROWN(2010) afirma que:
Existem muitas abordagens prototipao, mas elas compartilham um aspecto inigualvel e paradoxal: eles nos desaceleram para nos acelerar. Ao alocarmos tempo para criar prottipos de nossas ideias, evitamos erros custosos, como permitir complexidade demais cedo demais e agarrar a uma ideia fraca por tempo demais.
Em contrapartida BROWN(2010), defende o uso de prottipos pela seguinte pensamento, Apesar de parecer que desperdiar tempo valioso em esboos, modelos e simulaes que atrasar o trabalho, a prototipagem gera resultados com mais rapidez. E tambm afirma em relao a tangibilizao de novas ideias, que Quanto mais rapidamente tornamos nossas ideias tangveis, mais cedo poderemos avalia-las, lapid-las e identificar a melhor soluo. Dentro desse pensamento ele tambm justifica, que Da mesma forma que pode acelerar um projeto, a prototipagem permite a explorao de muitas ideias paralelamente. Os prottipos iniciais devem ser rpidos, rudimentares e baratos. Quanto maior for o investimento em uma ideia, mais as pessoas se apegam a ela. Agrupando os eixos da organizao, tanto como da ideia, do problema a ser resolvido os prottipos tem como vida o tempo, o empenho e o investimento necessrios para gerar feedbacks teis e levar uma ideia adiante.
Prottipo x Cdigo
A prototipao no funcional de um software no envolve codificao, no possui o comportamento ideal do produto ainda, justamente para no correr riscos e economizar recursos. Um prottipo de software pode ser criado a partir de ferramentas como Microsoft Visio e Axure RP. Por meio disso, ideias podem ser validadas, repensadas e alteradas com muito mais eficincia e agilidade se comparando com a criao de um software prottipo para este propsito, ou seja, no h necessidade de grande riqueza de detalhes, pelo menos enquanto a ideia e o projeto no estiverem bem concretizados.
Metodologia
Na realizao deste artigo foi utilizada a pesquisa bibliogrfica como referencial terico, que BROWN(2010), que em seu livro Design Thinking: uma metodologia poderosa para decretar o fim das ideias, se usa a prototipao para o desenvolvimento de solues em Design, mas precisamente em criatividade e inovao de produtos e servios. Com sua vasta experincia em projetos para a Apple, como a contribuio no desenvolvimento do design de interao do primeiro mouse.
Resultados
Atravs desta pesquisa, podemos constatar o quanto a prototipao pode auxiliar na Engenharia de Software, quando empregada na qualificao e validao de ideias, sem isso acarretar atrasos e gastos, at mesmo, pelo contrario, auxiliando no racionamento de recursos, mas principalmente primando pela qualidade, por fazer um produto que realmente atenda a todas as necessidades do cliente.
Consideraes Finais
Utilizando a prototipao no funcional na concepo do projeto, poderemos nos beneficiar de uma economia ao longo do processo, apesar de levar mais tempo nesta etapa, a ideia chega para o desenvolvimento j slida, pronta para ser construda, diminuindo assim os riscos de chegar ao fim do projeto e se deparar com uma reestruturao da ideia, e tendo que retornar o projeto para a fase de planejamento (isso demandaria mais tempo e recursos, consequentemente ocasionando atrasos e excesso de gastos). Ou seja, antes de uma ideia comear a ser construda, no caso, codificada, ela precisar ser validada, discutida, demonstrada, at no restar dvidas, e a prototipao no funcional um dos meios mais eficientes para se alcanar isso.
Referncias
SOMMERVILLE, Ian. Engenharia de Software. 8. ed. So Paulo: Pearson Addison Wesley, 2007. BROWN, Tim. Design Thinking: uma metodologia poderosa para decretar o fim das velhas ideias/ Tim BROWN com Barry Katz; traduo Cristina Yamagami. Rio de Janeiro: Elsevier, 2010 11 reimpresso. LETHBRIDGE, T.C.; Diaz-Herrera, J.; LeBlanc, R.J.; Thompson, J.B., (2007), Improving software practice through education: Challenges and future trends, Future of Software Engineering, 2007. FOSE apos;07, Volume , Issue , 23-25 May, Page(s):12 28. SARGENT, J., (2004) An Overview of Past and Projected Employment Changes in the Professional IT Occupations. Computing Research News, 16, 3, May, pp. 1, 21.