Escolar Documentos
Profissional Documentos
Cultura Documentos
3, MARCH 2016
O SBTVD (Sistema Brasileiro de Televiso Digital) [6] NCL, denominado Luar e referenciado como sistema Luar
permite que o telespectador interaja com a programao neste trabalho. O sistema Luar possui uma linguagem
de TV a partir de aplicaes recebidas juntamente com o fluxo inspirada em linguagens como Lua Server Pages [1] e Java
de udio/vdeo das emissoras. A interatividade no SBTVD Server Pages [9], com o objetivo de misturar a linguagem Lua
possvel graas ao Middleware Ginga [14]. O Ginga, possui ao NCL possibilitando a criao de lacunas nos documentos,
dois subsistemas principais interligados: Ginga-J e Ginga- transformando-os em templates Luar. Os templates so
1
NCL. O Ginga-J, o responsvel pela execuo e instanciados pelo processador Luar que recebe o template
padronizao das aplicaes imperativas Java. O Ginga-NCL, desejado e os dados para preenchimento das lacunas, gerando
tem a linguagem NCL (Nested Context Language) [13] como o documento NCL final de acordo com as restries de
padro de desenvolvimento, sendo responsvel pelas preenchimento.
aplicaes declarativas. [19] O principal objetivo do sistema Luar promover o
NCL possui a linguagem Lua como sua linguagem de desenvolvimento simples e gil de aplicaes descritas em
script. Lua tem uma sintaxe simples, rpida e fcil de usar, NCL. Luar permite que desenvolvedores experientes criem
sendo projetada para estender aplicaes (scripting) [18]. templates e outros desenvolvedores os utilizem ganhando
Com a criao de aplicaes interativas em NCL, notou-se simplicidade e velocidade no desenvolvimento.
a necessidade de ferramentas que propiciassem reuso e A principal diferena da proposta da linguagem Luar em
auxiliassem o desenvolvimento gil dessas aplicaes.Essa relao a outras a juno das linguagens NCL e Lua, que
necessidade foi percebida pela comunidade, que criou dispensa o aprendizado de muitos conceitos e mais uma
diferentes mtodos de desenvolvimento baseados em linguagem para o desenvolvimento e utilizao de templates
templates [5]. pelo desenvolvedor NCL.
Existem razes para o desenvolvimento baseado em Este artigo apresenta a validao do sistema Luar, realizada
templates. Segundo Santos [11], apesar de linguagens por meio da engenharia de software experimental[4], com
declarativas como NCL tornarem a criao de algumas usurios.
aplicaes interativas mais fceis, quando uma aplicao fica O restante do artigo est estruturado da seguinte forma. A
seo dois apresenta o sistema Luar. Na seo trs so
D. H. D. Bezerra, Universidade Federal de Mato Grosso, Cuiab, Brasil, abordados alguns trabalhos relacionados. A seo quatro nos
diogo@natalnet.br traz os fundamentos da engenharia de software experimental.
A. M. F. Burlamaqui, Universidade Federal do Rio Grande do Norte, Em seguida, a seo cinco apresenta a validao com os
Natal, Brasil, aquilesburlamaqui@ect.ufrn.br usurios e os resultados da mesma. Por fim, na seo seis
D. M. T. de Sousa, Instituto Federal de Educao, Cincia e Tecnologia da temos a concluso e as consideraes finais.
Paraba, Joo Pessoa, Brasil, denio@ifpb.edu.br
DUARTE BEZERRA et al.: AGILE DEVELOPMENT FOR 1353
da linguagem, o que acontece na linguagem XTemplate 3.0 ao resultados so apresentados e empacotados durante a fase da
utilizar XSLT para transformao de documentos. Com isso anlise e empacotamento. [8]
TAL pode ser empregada na autoria de outras linguagens Para validao do Luar foi realizado um experimento
declarativas. seguindo as fases propostas pela engenharia de software
O iTVNews uma ferramenta que possibilita a criao experimental.
automtica de aplicativos de televiso Digital Interativa para
telejornal, como enquetes, quiz, chat e outros. [16] V. VALIDAO E RESULTADOS
A ferramenta desenvolvida em Java disponibiliza mdulos Para validar o sistema Luar foi realizado uma
de criao de aplicaes. Cada mdulo um aplicativo Java experimentao com alguns usurios de diferentes nveis de
possuindo um formulrio grfico para que jornalistas experincias na autoria de documentos NCL. As prximas
preencham os dados que devero compor a aplicao. A parte sees detalham este experimento com a sua definio,
lgica do mdulo fixa, como um template. E a parte de planejamento, execuo e anlise dos dados coletados.
apresentao varivel no sentido de cada telejornal ter uma
identidade visual prpria, como sendo diferentes templates de A. Definio
acordo com o telejornal. Apos o preenchimento dos dados do O experimento teve o objetivo de identificar o ganho de
formulrio, o mdulo cria o documento NCL da aplicao tempo de autoria utilizando Luar em relao ao NCL e
interativa escolhida. conhecer a dificuldade de aprendizagem do Luar por parte dos
O iTVNews ainda define repositrios onde os usurios do sistema.
desenvolvedores podem disponibilizar os mdulos de criao A experimentao foi motivada por comprovar que o
para os jornalistas. sistema Luar traz agilidade a autoria de documentos NCL e
O trabalho [7] traz a proposta de definio de um sua aprendizagem fcil e rpida.
elemento denominado layout em NCL, com objetivo de A proposta do experimento era que de acordo com o perfil
permitir a criao e o gerenciamento de leiautes comumentes dos autores de documentos, fosse conhecido o tempo e
usados pela comunidade. O elemento layout define as regies dificuldades gastos na aprendizagem e autoria dos documentos
onde sero adicionadas as mdias e suas caractersticas de NCL. No contexto de autoria no profissional de documentos
exibio. Assim, autores de documento que utilizam templates NCL.
precisam se preocupar com a especificao dos objetos com Os objetivos da medio foram a partir da autoria de
contedo especficos, instanciando os componentes genricos documentos NCL utilizando o Luar e no utilizando o Luar,
do template, deixando o gerenciamento das regies da tela a caracterizar:
cargo do elemento layout. Os autores perceberam que a 1. O tempo mdio de autoria de um documento NCL que
utilizao de leiautes adaptativos simplifica a definio do represente um tipo de aplicao muito utilizada;
template e diminui as chances de erros por causa de 2. O desenvolvimento de aplicaes desenvolvidas com
identificao incorreta das regies ou emprego errado de Luar, averiguando o tempo mdio de autoria desta
atributos. aplicao em relao mesma desenvolvida puramente
em NCL.
IV. ENGENHARIA DE SOFTWARE EXPERIMENTAL A partir da aprendizagem da linguagem Luar,
A Engenharia de Software Experimental (ESE) o ramo da caracterizar:
Engenharia de Software (ES) que estuda empiricamente a 1. A dificuldade que um autor iniciante leva para aprender a
prpria engenharia de software. Esse ramo de estudo tenta linguagem Luar;
provar na prtica os conceitos tericos da ES. 2. A dificuldade que um autor experiente leva para aprender
Apenas com experimentos que possvel validar as teorias. a linguagem Luar.
A partir dos resultados dos experimentos as teorias so B. Planejamento
reformuladas e corrigidas. A experimentao baseia-se no uso
de um modelo sistemtico, computvel e controlado para a O experimento foi idealizado para ser realizado com o
avaliao das atividades humanas. [8] nmero mnimo de trinta pessoas. Este consistia nos usurios
desenvolverem duas aplicaes NCL: a primeira uma
Segundo [15] a engenharia de software experimental de
modo geral divide o estudo experimental em cinco fases: a aplicao de apresentao de slides (SlideShow); a segunda
definio, o planejamento, a execuo a anlise e o aplicao foi a aplicao Copa, para demonstraes de
informaes de um evento de futebol. As mesmas aplicaes
empacotamento do estudo.
A definio a primeira fase do processo experimental. logo aps deveriam ser implementadas com o Luar. No
Nesta fase so identificados os objetivos, os objetos e os desenvolvimento de ambas aplicaes, tanto em NCL e Luar,
foram aferidas o tempo gasto na autoria destas para realizar as
grupos de estudo, sendo levado em considerao motivao,
a proposta, as perspectivas, o domnio e o escopo do comparaes e verificar as hipteses.
experimento. [4] Na experimentao foi necessrio a ministrao de cursos
O planejamento tem como objetivo gerar um documento NCL e Luar para os usurios. Na aprendizagem do Luar foi
para guiar a execuo e anlise do experimento. pedido para os usurios quantificarem a dificuldade que
tiveram para aprender a usar o sistema.
A execuo do experimento deve seguir o documento
elaborado no planejamento. Na execuo os dados do Os dados foram coletados a partir de um formulrio
experimento so coletados para serem analisados e avaliados preenchido pelos usurios ao fim do experimento. O
formulrio coletou dados sobre o usurio e sua formao,
na fase de anlise e interpretao. Aps a execuo, os
1356 IEEE LATIN AMERICA TRANSACTIONS, VOL. 14, NO. 3, MARCH 2016
Graus de Liberdade: 21
Significncia (p-value): 0,0000
Experientes
Mdia: 21,666
Desvio Padro: 11,157
Erro Padro: 3,719
Confiana: 99,99%
Figura 11. Tempo de desenvolvimento da aplicao SlideShow pelos
paticipantes iniciantes.
Varivel T: 5,825
Graus de Liberdade: 8
Significncia (p-value): 0,0000
A negao da hiptese nula no Teste T depende da
significncia obtida no experimento e do nvel de significncia
estabelecida (). Em todos os testes foram estabelecidos
=0,0001. Como a significncia obtida em todos testes foram
de 0,0000 podemos rejeitar a hiptese nula com 99,99% (1-)
de confiana. Sendo possvel afirmar que a utilizao dos
Figura 12. Tempo de desenvolvimento da aplicao SlideShow pelos
participantes experientes. templates completos do Luar agiliza o desenvolvimento de
aplicaes NCL.
A Fig. 10 apresenta o grfico do tempo de desenvolvimento A aplicao Copa tinha o objetivo de validar o conceito
da aplicao SlideShow por todos os participantes. A mdia de templates componentes do sistema Luar. Ela utiliza trs
deste tempo apresentado pelo grfico de 46,6 minutos e templates componentes como j descrito na seo 4.1.2.
desvio padro de 24 minutos em NCL. Com o Luar a mdia
ficou em 10,4 minutos e desvio padro de 7,3 minutos.
A Fig. 11 mostra o grfico do tempo de desenvolvimento da
aplicao SlideShow realizada pelos participantes sem
experincia no desenvolvimento em NCL. A mdia deste
grupo ficou em 54,7 minutos e desvio padro de 22,7 usando
NCL, contra 12,5 minutos e desvio padro de 7,4 utilizando o
Luar. Figura 13. Tempo de desenvolvimento da aplicao Copa pelos
Na Fig. 12 apresentado o grfico do tempo de participantes.
desenvolvimento da aplicao SlideShow pelos
desenvolvedores com alguma experincia em NCL. A mdia
dos desenvolvedores experientes ficou em 26,9 e desvio
padro de 14,2 utizando NCL. A mdia e o desvio padro
utilizando Luar foram 5,2 e 3,6 respectivamente.
Em todos os casos de medies de tempo demonstrados
anteriormente foram realizados o Test T de Student [12]. Foi
utilizado o Teste T Pareado para verificar a diferena mdia Figura 14. Tempo de desenvolvimento da aplicao Copa pelos
entre as duas amostras: tempo de desenvolvimento com NCL participantes iniciantes.
e tempo de desenvolvimento com o Luar. Ainda foi definido a
hiptese nula como sendo Tanto o desenvolvimento com
NCL e com templates completos Luar levam o mesmo tempo
e a hiptese alternativa como O desenvolvimento com os
templates completos Luar mais gil do que com NCL. Com
o Teste T possvel negar uma hiptese em favor da outra. Os
dados obtidos foram:
Geral Figura 15. Tempo de desenvolvimento da aplicao Copa pelos
Mdia: 35,193 participantes experientes
Desvio Padro: 18,412 Como apresentado anteriormente na aplicao SlideShow,
Erro Padro: 3,307 as Figs. 13, 14 e 15 mostram os grficos do tempo de
Confiana: 99,99% desenvolvimento da aplicao Copa de todos os
Varivel T: 10,944 participantes, dos participantes sem experincia em NCL e dos
Graus de Liberdade: 30 participantes com alguma experincia em NCL
Significncia (p-value): 0,0000 respectivamente.
Iniciantes A mdia de todos participantes foi de 121,8 minutos e
Mdia: 42,136 desvio padro de 41,8 minutos com NCl. Com o Luar a mdia
Desvio Padro: 17,591 foi de 46,9 minutos e desvio padro 18,7. Os desenvolvedores
Erro Padro: 3,75 iniciantes tiveram uma mdia 136,9 e desvio padro 39,8 com
Confiana: 99,99% NCL. Utilizando o Luar a mdia foi de 52,3 minutos e o
Varivel T: 11,235 desvio padro de 19,5 minutos. A mdia e desvio padro dos
1358 IEEE LATIN AMERICA TRANSACTIONS, VOL. 14, NO. 3, MARCH 2016
desenvolvedores experientes foram de 84,7 e 14,7 usando os grficos do ganho de tempo de desenvolvimento por todos
NCL e 33,6 minutos e 6,8 usando Luar, respectivamente. usurios, pelos usurios iniciante e pelos usurios experientes.
A aplicao Copa exigiu mais tempo para sua autoria do
que a aplicao SlideShow. Esta exigncia de mais tempo
acontece porque esta uma aplicao com mais detalhes. A
aplicao Copa possui dois passadores de imagens, uma
verso reduzida em tamanho da aplicao SlideShow. Ainda
tem um grupo de botes e duas imagens com notcias e agenda
da copa a ser descrito no documento NCL. O sistema Luar
conseguiu novamente agilizar a codificao desta aplicao Figura 16. Ganho do tempo de desenvolvimento pelos participantes.
por meio dos templates componentes LButtonGroup,
LPictureGallery e LSidebar facilitando a autoria e
ganhando tempo para o autor.
Tambm foi realizado o Test T de Student [12] com a
medio do tempo de desenvolvimento da aplicao Copa. Foi
utilizado o Teste T Pareado para verificar a diferena mdia
entre as duas amostras: tempo de desenvolvimento com NCL
e tempo de desenvolvimento com o Luar. Ainda foi definido a Figura 17. Ganho do tempo de desenvolvimento pelos participantes iniciantes.
hiptese nula como sendo Tanto o desenvolvimento com
NCL e com templates componentes Luar levam o mesmo
tempo e a hiptese alternativa como O desenvolvimento
com os templates componentes Luar mais gil do que com
NCL. Os dados obtidos foram:
Geral
Mdia: 74,87
Desvio Padro: 31,865 Figura 18. Ganho do tempo de desenvolvimento pelos participantes
Erro Padro: 5,723 experientes.
Confiana: 99,99%
Varivel T: 13,082 A mdia do ganho de tempo utilizando Luar em relao ao
Graus de Liberdade: 30 NCL na aplicao SlideShow de 78,5% com desvio padro
Significncia (p-value): 0,0000 de 7,5%. J na aplicao Copa o ganho mdio menor, de
Iniciantes 60,4% com desvio padro de 10%. Com esses dados
Mdia: 84,59 possvel afirmar que a utilizao de templates completos torna
Desvio Padro: 32,398 a autoria mais gil do que utilizando os templates
Erro Padro: 6,907 componentes. Mesmo apresentando um ganho menor a
Confiana: 99,99% utilizao de templates componentes ainda traz um ganho
Varivel T: 12,246 considervel de tempo, uma economia de mais da metade do
Graus de Liberdade: 21 que usando NCL puro. Assim, a partir dos dados possvel
Significncia (p-value): 0,0000 afirmar que a infraestrutura de reuso idealizada pelo sistema
Experientes Luar agiliza e diminui o esforo de codificao dos autores
Mdia: 51,111 NCL.
Desvio Padro: 12,544 O ganho de tempo mdio dos usurios iniciantes foi de
Erro Padro: 4,181 77,3% com desvio padro de 7,8% na aplicao SlideShow e
Confiana: 99,99% 60,6% de ganho mdio e desvio padro de 11% na aplicao
Varivel T: 12,223 Copa. Os usurios experientes tiveram uma mdia de ganho
Graus de Liberdade: 8 de tempo de 81,4% com desvio padro de 6,4% na aplicao
Significncia (p-value): 0,0000 SlideShow e 59,9% de ganho mdio de tempo com desvio
Nos testes foram estabelecidos =0,0001. Como a padro de 7,3% na aplicao Copa.
significncia obtida em todos testes foram de 0,0000 podemos Ao ser tratado o ganho de tempo no existe diferena
rejeitar a hiptese nula com99,99% (1-) de confiana. Sendo considervel entre o resultado obtido dos usurios experientes
possvel afirmar que a utilizao dos templates componentes e iniciantes. Esta observao faz sentido quando tratado o
do Luar agiliza o desenvolvimento de aplicaes NCL. ganho ao invs do tempo puro. Os usurios que possuem
Como relatado anteriormente, ainda existe a necessidade de algumas dificuldades de aprendizagem devem reproduzir essas
uma verificao com relao ao ganho de tempo das dificuldades tanto na aprendizagem do NCL quanto a do Luar.
aplicaes SlideShow, que utiliza templates completos, e Por outro lado, um usurio que tem facilidade de
Copa, que utiliza templates componentes. aprendizagem reproduzir essa facilidade em ambas
Na verificao o ganho foi definido como sendo 100- linguagens.
((y*100)/x), onde y o valor do tempo de autoria usando Luar
e x o tempo de autoria usando NCL. A seguir so apresentados
DUARTE BEZERRA et al.: AGILE DEVELOPMENT FOR 1359
V. CONCLUSO
Neste trabalho, foi estudado e analisado o sistema de
processamento de templates Luar, destinado construo de
aplicaes interativas em NCL. Os resultados da avaliao
experimental foram satisfatrios. Com o experimento foi
possvel observar que o sistema Luar traz benefcios para
Figura 19. Aprendizagem do Sistema Luar pelos participantes. desenvolvedores experientes e iniciantes. O Luar agiliza o
desenvolvimento em relao ao desenvolvimento com NCL e
sua aprendizagem rpida e simples.
REFERNCIAS
[1] A. Burdinuk, Open Lua server pages (openlsp), Lua Server Pages,
http://luasp.org/, 2011.
[2] A. Lvio, Home, Ginga CDN. http://gingacdn.lavid.ufpb.br/, 2012.
[3] C. de S. S. Neto, L. F. G. Soares and C. S. de Souza, TAL -
Figura 20. Aprendizagem do Sistema Luar pelos participantes iniciantes. Linguagem para Autoria de Templates de Documentos Hipermidia,
WebMedia - Simpsio Brasileiro de Sistemas Multimdia e Web, Belo
Horizonte, MG, 2010.
[4] C. Wohlin, Experimentation in Software Engineering: An
Introduction, Kluwer Academic, 2000.
[5] D. H. D. Bezerra, D. M. T. Sousa, G. L. de S. Filho, A. M. F.
Burlamaqui and I. R. M. Silva, Luar: a language for agile development
of NCL templates and documents, Proceedings of the 18th Brazilian
symposium on Multimedia and the web (WebMedia '12), ACM, New
York, NY, USA, p.395-402, 2012.
Figura 11. Aprendizagem do Sistema Luar pelos participantes experientes. [6] Frum SBTVD, O que o ISDB-TB, Frum do Sistema Brasileiro
de TV Digital, http://www.forumsbtvd.org.br/materias.asp?id=20,
Ao tratar de aprendizagem foi pedido que os usurios 2008.
quantificassem em uma escala de dificuldade de zero a dez, [7] G. F. Amorim, J. A. F. dos Santos and D. C. M. Saade, Adaptive
onde dez difcil de aprender e zero fcil de aprender, os layouts for authoring NCL programs. Proceedings of the 19th
Brazilian symposium on Multimedia and the web (WebMedia '13),
conceitos de templates completos e templates componentes do ACM, New York, NY, USA, p.205-208, 2013.
sistema Luar. Os grficos a seguir apresentam os dados [8] G. H. Travassos, D. Gurov and E. Amaral, Introduo Engenharia de
coletados. Software Experimental, Relatrio Tcnico, ES-590/02, COPPE/UFRJ,
A mdia da dificuldade de aprendizagem do conceito de 2002.
[9] H. Bergsten, Java Server Pages. O'Reilly Media, 2000.
templates completos pelos participantes foi de 1,77 pontos [10] J. A. F. Santos and D. C. M. Saade, Linguagem XTemplate 3.0:
com desvio padro de 0,76 pontos. J o conceito de templates Facilitando a Autoria de Programas NCL para TV Digital Interativa.
componentes teve a mdia de 2,74 pontos com desvio padro WebMedia - Simpsio Brasileiro de Sistemas Multimdia e Web,
de 0,77 pontos. Fortaleza, CE, 2009.
[11] J. A. F. Santos and D. C. M. Saade, XTemplate 3.0: Adding Semantics
Os usurios iniciantes tiveram uma mdia de dificuldade de to Hypermedia Compositions and Providing Document Structure
aprendizagem do conceito de templates completos de 2,0 Reuse, ACM Symposium on Applied Computing - ACM SAC, 2010.
pontos com desvio padro de 0,61 pontos. Para o conceito de [12] J. F. Box, Guinness, gosset, fisher, and small samples, Statistical
templates componentes a mdia foi de 2,95 pontos com desvio Science, 1987.
[13] L.F.G. Soares, M.F. Moreno and C. de S. S. Neto, Ginga-NCL:
padro de 0,72 pontos. Declarative Middleware for Multimedia IPTV Services, IEEE
Os usurios experientes ficaram com mdia de dificuldade Communications Magazine, Vol. 48, p.74-81, Junho, 2010.
de aprendizagem do conceito de templates completos de 1,22 [14] L. F. G. Soares, TV Interativa se faz com Ginga, Revista da
pontos com desvio padro de 0,83 pontos. Para o conceito de Sociedade Brasileira de Engenharia de Televiso, 105, Junho, 2009.
[15] M. O. Barros, C. M. L. Werner and G. H. Travassos, Um estudo
templates componentes a mdia foi de 2,22 pontos com desvio experimental sobre a utilizao de modelagem e simulao no apoio
padro de 0,66 pontos. gerncia de projetos de software, Anais do XVI de Engenharia de
A partir dos dados apresentados, possvel verificar que o Software, 1999.
Luar um sistema fcil de aprender. O conceito de templates [16] M. Sousa, T. Tavares and E. Porto, iTVnews: Uma Ferramenta para
Construo de Aplicaes Telejornalsticas em TVDI, Anais do XVII
completos mais fcil do que o de templates componentes Simpsio Brasileiro de Sistemas Multimdia e Web WebMedia,
para entender. O conceito de templates componentes ainda Florianpolis, SC, 2011.
sim possui facilidade na aprendizagem tendo uma mdia de [17] P. C. Clements, A Survey of Architecture Description Languages,
2,74 pontos de dificuldade. Proceedings of the 8th International Workshop on Software
Specifications & Design, ACM, New York, NY, USA, 1996.
Os usurios experientes conseguiram aprender os conceitos [18] R. Ierusalimschy, W. C. Filho and L. H. de Figueiredo, Lua-an
do sistema Luar com mais facilidade do que os iniciantes. extensible extension language, Software Practice and Experience, vol.
Mesmo assim no existe uma diferena grande na dificuldade 26, p.635-652, Junho, 1996.
de aprendizagem entre os usurios experientes e iniciantes. [19] V. J. Silva, N. S. Viana and V. F. de Lucena Jr., Architecture for
Integrating Healthcare Services to the Brazilian Digital TV System,
Isso mostra que o sistema Luar simples de aprender por IEEE Latin America Transactions, Vol. 13, No. 1, Janeiro, 2015.
qualquer perfil de usurio, desde o iniciante at o mais [20] W3C, XML Path Language (XPath), W3C,
experiente. http://www.w3.org/TR/xpath/, 1999.
[21] W3C, XSL Transformation. W3C, http://www.w3.org/TR/xslt, 1999.
1360 IEEE LATIN AMERICA TRANSACTIONS, VOL. 14, NO. 3, MARCH 2016