You are on page 1of 4

Uma Abordagem de Desenvolvimento de Aplicaes para TV Digital baseada em Metodologias geis

Godoy Neto, M., Msc.


Universidade Federal de Pernambuco CIn/UFPE Av. Jornalista Anibal Fernandes, s/n, Cd. Universitria CEP: 50.740-560. Recife PE Brasil.

Ferraz, C. A. G., Dr.


Universidade Federal de Pernambuco CIn/UFPE Av. Jornalista Anibal Fernandes, s/n, Cd. Universitria CEP: 50.740-560. Recife PE Brasil.

mario.godoy@univasf.edu.br ABSTRACT
This paper describes a PhD work, being developed in the Centro de Informtica, at the Universidade Federal de Pernambuco. The work started in 2009 and is expected to finish by 2013. When developing applications for Digital TV, it is important to observe some particularities of this platform. This paper highlights two of these characteristics: the need for fast development and the high usability demand. Such particularities are the main focus of the development approach presented in this work. The approach presented in this work is based on Scrum and XP methodologies assist the software engineering to collect, validate and implement requirements and focus the user needs as priority. In order to validate the proposed approach, experiments were performed and some initial and promising results were achieved.

cagf@cin.ufpe.br

A maioria das metodologias de validao de requisitos existentes voltada para software tradicional, que utilizam como plataforma computadores pessoais (PCs). No entanto, o contexto do usurio da TVD diferente do contexto usurio de PC. Apesar de existirem trabalhos voltados para validao de aplicaes para TVD [4] e [5], estes so centrados em prottipos de alto nvel de fidelidade, implementados em linguagem de programao NCL/Lua. Contudo, em engenharia de software fundamental avaliar o projeto antes de sua implementao, pois uma alterao com custo de 1x realizada na fase requisitos ter custo de 60x a 100x se realizada na fase de implantao [6]. Baseado na necessidade do desenvolvimento gil de aplicaes para TVD e nas peculiaridades dessa plataforma, bem como na validao dos requisitos do cliente e usurios, apresenta-se como questo norteadora deste estudo a seguinte pergunta de pesquisa: Como adaptar a adoo dos mtodos geis realidade de TVD, levando em considerao os requisitos do cliente/anunciante e a satisfao do usurio final?

Keywords
Digital TV, Development Approach, Agile Methodologies.

1. CONTEXTO TERICO
Desde a primeira transmisso televisiva no Brasil, em 18 de setembro de 1950, viabilizada por Assis Chateaubriand, os teleespectadores so passivos, pois esto acostumados a assistir ao contedo enviado pelas emissoras de maneira unilateral, tal paradigma deve ser analisado no desenvolvimento de aplicaes interativas para TV Digital (TVD). O tempo dedicado ao desenvolvimento caracteriza outra peculiaridade, pois algumas aplicaes devem ser desenvolvidas rapidamente, acompanhando a velocidade com que o contedo udio visual produzido pela emissora como: telejornais, notcias de ltima hora, entre outros [1]. Existem limitaes significativas no meio de interao do usurio com as aplicaes, haja vista que esta ocorre apenas atravs do controle remoto da TVD.

2. OBJETIVO
O objetivo deste trabalho desenvolver uma proposta de abordagem de desenvolvimento de aplicaes para TVD que agilize seu processo de desenvolvimento, centrada na validao de requisitos do cliente, bem como na satisfao dos usurios finais. A hiptese da presente pesquisa que as metodologias geis existentes podem auxiliar o processo de desenvolvimento de software para TVD, porm precisam ser adaptadas s suas peculiaridades. Assim, a abordagem proposta pretende reduzir o tempo dedicado ao desenvolvimento de aplicaes adaptando prticas geis tradicionais, centrando esforos na coleta e validao de requisitos, navegabilidade, usabilidade [7], e satisfao dos usurios [8], como sugere o manifesto gil [9].

1.1. Identificao do Problema


A escolha pelos recursos utilizados em uma interface de interao ocorre sobre o levantamento de requisitos, processo fundamental no desenvolvimento de software, composta por: levantamento de requisitos, anlise, negociao, validao e gesto [2] e [3]. ____________________________________________________ Permission to make digital or hard copies of all or part of this work for
personal or classroom use is granted without fee provided that copies are not made or distributed for of the 17th Brazilian Symposium WebMedia'11: Proceedings profit or commercial advantage and that copies bear this notice Web. full citation on the first page. To copy on Multimedia and theand theXI Workshop on Ongoing Thesis otherwise, or republish, to post on servers or to redistribute to lists, and Dissertations. requires prior specific permission and/or a fee. October 3 -6, 2011, Florianpolis, SC, Brazil. XVII WebMedia, October, 2011, Florianpolis, Santa Catarina, Brasil. ISSN 2175-9650. Copyright 2010 ACM 1-58113-000-0/00/0010$10.00. SBC - Brazilian Computer Society

2.1 Contribuies
O presente trabalho apresenta duas contribuies principais: 1) coleta de mtricas sobre a utilizao das metodologias Scrum e XP, buscando indcios de adequao ao ambiente de TVD; 2) uma abordagem de desenvolvimento de aplicaes baseada em tais metodologias, adaptada s peculiaridades de suas aplicaes.

3. TRABALHOS RELACIONADOS
Objetivando avaliar requisitos de uma aplicao para TVD, em [4] foi desenvolvido um prottipo de alto nvel de fidelidade utilizando NCL e Lua, avaliado por 20 usurios classificados como: avanados, freqentes ou ocasionais, de acordo com seu

conhecimento tecnolgico. Concluiu-se que as setas de navegao so utilizadas pela maioria dos usurios avanados. Em [10] utilizado o mtodo do Percurso Cognitivo na elaborao do relatrio tcnico Testes do Objeto Padro de Referncia de Sincronismo de Mdias, que ressalta a importncia de atender s necessidades e objetivos dos usurios. O projeto LuaOnTV, open source, desenvolvido pelo Laboratrio de TV Digital Interativa (LABTVDI), apresenta-se como um framework que visa auxiliar a implementao dos componentes grficos de interao como recursos drop down NCL/Lua [11]. Em [1] so utilizadas as metodologias Scrum e XP com alunos de uma turma de Design de Contedo Digital, concluindo que h necessidade de adaptaes em tais metodologias. Figura 1: resultados da adoo de Scrum, XP e Scrum + XP. As colunas representam: Q1) Grau de desgaste/cansao; Q2) Grau de satisfao sobre a metodologia; Q3) Grau de complexidade da aplicao; e Q4) Grau de complexidade sobre sua codificao. As respostas possuem grau de intensidade entre 0 e 4, quanto mais prximo de quatro, maior a intensidade do grau obtido. Ao observar o grfico, dois grupos consideraram o grau de complexidade (Q3 e Q4) mdio, porm, o grau de desgaste (Q1) foi elevado para todas as equipes. Atravs da tcnica de palavraschave aplicada sobre as questes subjetivas, foram coletadas as principais dificuldades inerentes metodologia utilizada: desgaste, informalidade no levantamento de requisitos, dificuldade de definir horrios convenientes. Atravs da entrevista, foram levantados indcios que sugerem que a linguagem NCL tende a ser repetitiva quando utilizada para implementar o gerenciamento de eventos responsveis pelo sincronismo de mdias, 6 dos 9 desenvolvedores julgam interessante utilizar algum recurso para reaproveitar as linhas de cdigo referentes a tais eventos. Todos os grupos responderam que a metodologia utilizada por seu grupo, apesar de auxiliar no desenvolvimento, necessita de pequenas alteraes para se adequar ao processo de desenvolvimento de aplicaes para TVD.

4. METODOLOGIA ADOTADA
O presente trabalho est subdividido em dois experimentos. O primeiro consiste na coleta de mtricas de trs equipes de desenvolvimento de aplicaes utilizando as metodologias geis Scrum e XP, viabilizando a anlise do processo de desenvolvimento e verificando assim possveis pontos de adaptaes a fim de otimizar o desenvolvimento de aplicaes para TVD. O segundo consiste na elaborao de uma abordagem de desenvolvimento baseado em tais metodologias, porm, adaptada s peculiaridades inerentes ao ambiente de TVD.

5. DESENVOLVIMENTO: SCRUM E XP
O experimento que pretende exibir informaes sobre o campeonato brasileiro de futebol, como: times, classificao, patrocinadores e vendas (t-commerce). Esta mesma aplicao foi desenvolvida de forma independente por trs equipes (A, B e C), cada uma composta por trs alunos do curso de engenharia da computao igualmente distribudos atravs da anlise de currculo, questionrio e entrevista individual. Baseado nas recomendaes para mensurao de equipes de desenvolvimento de software [12], cada grupo desenvolveu sua verso da aplicao sobre os mesmos requisitos, no prazo de trs semanas, atravs de trs interaes, por intermdio do mesmo cliente, porm, cada grupo utilizou uma metodologia especfica, assim as equipes A, B e C, utilizaram respectivamente as metodologias Scrum, XP e Scrum juntamente com XP. Baseado na pesquisa qualitativa [13], foram colhidas mtricas sobre o processo de desenvolvimento de cada grupo. Segundo Sommerville [2], o processo de desenvolvimento de software formado por um conjunto de atividades e seus respectivos resultados que auxiliam equipes na sua produo.

6. ABORDAGEM PROPOSTA
A abordagem pretende auxiliar as fases de coleta de requisitos, validao e implementao de aplicaes para TVD, minimizando o tempo dedicado e maximizando a satisfao dos usurios. A avaliao de requisitos do usurio baseada no Percurso Cognitivo, que permite avaliar a facilidade de aprendizagem, explorao e navegao sobre a interao do usurio. Prev as seguintes fases de inspees: 1) Definir o pblico alvo; 2) Definir as tarefas a serem avaliadas; 3) Verificar as sequncias das aes; 4) Analisar o tipo de interface esperada [14]. A abordagem proposta no presente trabalho incorpora esse mtodo entre suas oito fases definidas na Figura 2.

5.1 Resultados sobre a adoo de Scrum e XP


Os grupos A, B e C implementaram respectivamente 1066, 1788 e 1710 linhas de cdigo, para o desenvolvimento do projeto foram necessrias 78:00, 110:48 e 97:27 horas de trabalho. Alguns resultados foram colhidos atravs de um questionrio composto por cinco questes objetivas e trs descritivas, seguido de entrevista em grupo. A primeira questo indagava se a metodologia utilizada foi adequada ao desenvolvimento da aplicao solicitada. Os trs grupos foram unnimes confirmando tal adequao mediante pequenas adaptaes na metodologia. As respostas correspondentes so exibidas na Figura 1.

Figura 2: abordagem de desenvolvimento proposta. Primeira e Segunda fase: visa colher requisitos funcionais e no funcionais [3], [2] e [6]. Atravs do questionrio, seguido da entrevista individual com diferentes perfis de usurios reais da aplicao.

Terceira fase: apesar de ser considerado de baixo nvel de fidelidade, o prottipo deve simular as mesmas funcionalidades, recursos e efeitos que a aplicao desenvolvida atravs da linguagem de programao NCL / Lua. O desenvolvimento dos prottipos utiliza a tcnica de cenrios a fim de levantar possveis pontos de melhoria do projeto [15] e [7]. Para simular um ambiente real de interao deve ser oferecido ao usurio apenas um monitor (TV) conectado a um computador e um controle remoto de uma TVD real. Cabe a um dos pesquisadores observar o boto pressionado pelo usurio e realizar a devida ao junto ao prottipo, alterando sua tela. Quarta fase: selecionar o pblico alvo da aplicao - visando minimizar a margem de erro, a escala de avaliadores deve estar entre 30 e 40 usurios, com diferentes nveis de escolaridade, faixa etria, sem conhecimento aprofundado em tecnologia. Quinta fase: para garantir que os usurios utilizem todos os recursos oferecidos pelo prottipo, necessrio definir suas tarefas. Em nenhum momento deve ser explicado aos usurios como as aplicaes funcionam. Sexta fase: a coleta de dados deve ser realizada por pelo menos um par de pesquisadores (A, B), ao passo que o pesquisador (A) assume o papel de condutor, responsvel por contextualizar sobre o ambiente. O pesquisador (B) assume o papel de observador, responsvel por anotar informaes subjetivas expressas pelo usurio. Os pesquisadores devem se revezar igualmente no papel de condutor e observador, evitando possveis vcios tendenciosos. A fase de coleta dos dados composta por trs tcnicas baseadas na metodologia de pesquisa qualitativa [13], alm da tcnica de observao de uso [4], so utilizadas ainda as tcnicas de questionrio, formado por questes objetivas e subjetivas, e a entrevista individual, obedecendo criteriosamente essa ordem, possibilitando a triangulao de diferentes instrumentos de coleta. A observao de uso visa auxiliar a coleta de informaes subjetivas, como expresses de satisfao [13]. As questes objetivas almejam colher informaes pontuais sobre os recursos, e as subjetivas permitem que o usurio descreva livremente as principais dificuldades encontradas. A entrevista individual semiestruturada levanta informaes sobre pontos relevantes identificados pela observao, e sobre os dados do questionrio, possibilitando o refinamento dos resultados obtidos. Stima fase: para consolidar os resultados das questes objetivas necessrio calcular a soma das notas e os pesos atribudos a cada questo, levando em considerao a avaliao de todos os usurios. O questionrio subjetivo utiliza a tcnica de palavras chaves, sintetizando as dificuldades em comum. Assim que concluda, um novo ciclo de avaliao pode ser iniciado, corrigindo os recursos em uma nova verso do prottipo. Oitava Fase: no finalizada - pretende implementar verses de aplicaes em alto nvel de fidelidade. Pretende-se, em trabalhos futuros, colher mtricas sobre a utilizao de tcnicas de Reuso de Cdigo e Linha de Produto de Software.

questionrio objetivo, formulrios, observao e entrevistas semiestruturadas com 12 profissionais de hospitais pblicos.

Figura 3: interfaces de interao dos Prottipos 1 e 2. O Prottipo 1 utiliza em sua interface apenas setas direcionais. O Prottipo 2, utiliza campos drop down para o mesmo fim, baseado nos recursos visuais implementados no projeto LuaOnTV [11]. O experimento foi realizado sobre quarenta usurios voluntrios. A avaliao foi vedada aos candidatos com algum tipo de conhecimento tecnolgico. A faixa etria variou entre 15 e 65 anos, com diferentes nveis de escolaridade. Cada usurio recebeu as tarefas a serem realizadas, idnticas para ambos os prottipos, garantindo a utilizao dos diferentes recursos implementados. O questionrio era composto por 09 questes objetivas e uma subjetiva. As questes objetivas pretendem verificar o grau de dificuldade sobre o preenchimento dos campos (Servio, dia, Ms, Ano, Hora, Minuto, CPF), com cinco alternativas de resposta, em uma escala de pesos de 1 a 5 (1-Muito complicado, 2-Complicado, 3-Regular, 4-Fcil e 5-Muito fcil), quanto maior a pontuao, maior a satisfao do usurio. Por fim, a questo subjetiva solicita que o usurio descreva a dificuldade encontrada no agendamento da consulta. Assim que finalizada a utilizao do primeiro prottipo, foi entregue ao usurio o questionrio. Depois de terminado seu preenchimento, o pesquisador (B) realizou a entrevista individual sobre os pontos chaves coletados durante a observao de uso do prottipo. Aps a anlise do questionrio, o pesquisador (A) continua a entrevista a fim de coletar informaes adicionais sobre pontos relevantes do questionrio. Todos os passos para coleta de resultados descritos acima se repetem com o mesmo usurio, porm, desta vez, sobre a utilizao do segundo prottipo. As avaliaes iniciaram alternadamente com cada prottipo, assim, 20 usurios iniciaram a utilizao com o Prottipo 1 e 20 com o prottipo 2.

6.2 Resultados
Ainda na fase inicial de planejamento do trabalho, foram realizadas 12 entrevistas individuais semi-estruturadas com desenvolvedores com pelo menos dois anos de experincia em aplicaes para TVD. Os entrevistados receberam uma lista de requisitos funcionais a fim de verificar a quantidade de horas de trabalho necessrias para se desenvolver o prottipo da aplicao de agendamento de consultas em alto nvel de fidelidade com NCL/LUA. O resultado indica que seriam necessrias, em mdia, doze horas e vinte minutos, tempo significativamente superior ao da implementao dos prottipos de baixo nvel de fidelidade que totalizaram duas horas e vinte e cinco minutos. Atravs da tcnica de observao da abordagem proposta, foram obtidos indcios de que, ao utilizar o Prottipo 2 os usurios aparentaram maior satisfao, expressando reaes positivas, o

6.1 Experimento sobre a Abordagem


A aplicao utilizada como experimento visa minimizar as filas de atendimento de hospitais pblicos atravs do agendamento de consultas. Com esse objetivo, foram desenvolvidos dois prottipos com os mesmos requisitos, vide Figura 3. O levantamento dos requisitos funcionais, realizado atravs de um

que no ocorreu ao utilizar o Prottipo 1. Tambm h indcios que os botes de interao do Prottipo 1 eram pouco intuitivos, dadas as dificuldades dos usurios no preenchimento dos trs primeiros campos (Servio, Hora e Minuto). J a dificuldade encontrada na utilizao do Prottipo 2 foi centralizada no primeiro campo (Servio). Independente do prottipo iniciado, a avaliao do segundo prottipo ocorreu de forma mais intuitiva, havendo um claro aprendizado no primeiro experimento. O questionrio objetivo mostrou indcios de que ambos os prottipos foram avaliados de forma positiva, o Prottipo 1 obteve nota final igual a 1477, o Prottipo 2 obteve 1492, diferena insignificante, pois, caso todas questes fossem avaliadas com notas mximas, atingindo a satisfao total, a nota final obtida seria 1800 pontos. A questo subjetiva apresenta as principais dificuldades em comum encontradas pelos usurios, sintetizadas atravs da tcnica de levantamento de palavras chave representadas na Figura 4, onde valores correspondem a sua recorrncia, e as colunas 1, 2, 3, 4 e 5, representam as dificuldades relatadas conforme segue: 1) Dificuldade para iniciar o prottipo; 2) Dificuldade em Selecionar um campo; 3) Dificuldade de mudana de campos; 4) Nenhuma dificuldade relatada pelo usurio; e 5) No houve recorrncia.

entanto, para confirmar tais indcios necessrio realizar novos experimentos. Como trabalho futuro, pretende-se definir quais tcnicas de Linha de Produto de Software e Reuso de Software podem auxiliar na agilidade do processo de desenvolvimento. Pretende-se, tambm, implementar a segunda verso dos prottipos, incorporando alteraes dos requisitos obtidos ao trabalho atual e iniciar um novo ciclo. Posteriormente, realizar um estudo de caso sobre a abordagem proposta, utilizando para isso programadores experientes.

8. AGRADECIMENTOS
Ao projeto RH TVD/CAPES pelo financiamento parcial. Universidade Federal do Vale do So Francisco UNIVASF por contribuir e participar diretamente da presente pesquisa.

9. REFERNCIAS
[1] Veiga, E. G. ; Tavares, T. A. . Um Modelo de Processo para o Desenvolvimento de Programas para TV Digital Interativa. In: Workshop de Teses e Dissertaes do Webmedia, 2006. [2] Sommerville, I. Engenharia de Software. Traduo de Selma Shin Shimizu Melnikoff, 8a ed., So Paulo: Pearson Addison-Wesley, 2007. [3] Kotonya, G., e Sommerville, I. Requirements Engineering: Processes and Techniques, John Wiley & Sons, Ltd, 1998. [4] Costa, J. ; Stein, Monica; Lemos, A.. Avaliao de usabilidade em aplicativos interativos para a TVDigital Terrestre. In: Webmedia, Belo Horizonte, 2010.

Figura 4: consolidao da anlise textual. O primeiro ponto apresentado demonstra que existe dificuldade em comum em iniciar a execuo dos prottipos, funcionalidade implementada de maneira idntica para ambos os prottipos, pois, a princpio, no foi foco dessa pesquisa, o que oferece indcios da eficincia da abordagem na validao dos requisitos. Nos pontos 2 e 3 foram encontradas mais dificuldades recorrentes no Prottipo 1. No ponto 4, aqueles que no sentiram dificuldades trs vezes maior no Prottipo 2. O ponto 5 so as dificuldades individuais. Assim que realizadas as entrevistas individuais, foi verificado que, 32 dos 40 usurios preferem visualizar a lista com opes de preenchimento drop down, oferecido pelo Prottipo 2. H indcios de que existem melhorias a serem realizadas no quesito de mudana de campo, no entanto, 84% dos usurios acreditam que aps a primeira interao as demais tornam-se mais intuitivas. Desta forma, a interface do Prottipo 2 apresentou indcios de ser mais intuitiva e atraente para a maioria dos usurios.

[5] Ghisi, B. C. ; Guilhermes Figueredo Lopes ; Frank Siqueira . Integrao de Aplicaes para TV Digital Interativa com Redes Sociais. In: Webmedia, 2010. [6] Pressman, R. Engenharia de Software. McGraw-Hill, 2001. [7] Snyder, C. Paper Prototyping: The Fast and Easy Way to Design and Refine User Interfaces, 2003, Morgan Kaufmann. [8] Nielsen, Jacob. Usability Engineering. Boston, Academic Press, 1993. [9] Agile Manifesto. Manifesto for Agile Software Development (2001). Disponvel em: http://agilemanifesto.org/. Acesso em: maro, 2011. [10] Coelho, R. M.. Relatrio de Testes do Objeto Padro de Referncia de Sincronismo de Mdias. Maestro: Autoria de Documentos Hipermdia para TV Digital Interativa, 2010. [11] Souza Junior, P.J.. Luacomp: Ferramenta de autoria de aplicaes para TV digital. Dissertao de Mestrado, Universidade de Braslia - UNB, 2009. [12] Oliveira, S. R. B.. "ProDefiner: Uma Abordagem Progressiva para a Definio de Processos de Software no Contexto de um Ambiente Centrado no Processo". Tese - UFPE, 2007. [13] Flick, Uwe. Introduo pesquisa qualitativa. Porto Alegre. Artmed. 2009. [14] Salgado, L.C., Bim, S.A., & de Souza, C.S. Comparao entre os Mtodos de Avaliao de Base Cognitiva e Semitica. Anais do IHC, 2006. [15] Bdker S. Scenarios in user-centred design-setting the stage for reflection and action, Interacting with Computers, 2000.

7. CONCLUSO
Este trabalho prope uma abordagem de desenvolvimento de aplicaes para TVD baseada em metodologias geis. Com esse objetivo foram realizados dois experimentos. O primeiro fornece indcios de que as metodologias geis Scrum e XP podem ser adequadas ao desenvolvimento de aplicaes para TVD, porm, tais metodologias precisam ser adaptadas s suas peculiaridades. O segundo fornece indcios que a presente abordagem pode reduzir o tempo do desenvolvimento e tornar a aplicao desenvolvida mais adequada s necessidades do usurio. No