Você está na página 1de 141

UNIVERSIDADE FEDERAL DE PERNAMBUCO UFPE CENTRO DE INFORMTICA CIN MESTRADO EM CINCIA DA COMPUTAO

DESIGN INTERATIVO DE FERRAMENTA DE MANIPULAO DE OBJETOS DE APRENDIZAGEM DE AMBIENTES VIRTUAIS DE ENSINO DISTNCIA

JOCLIO DE OLIVEIRA DANTAS PASSOS RECIFE-PE 2006

UNIVERSIDADE FEDERAL DE PERNAMBUCO CENTRO DE INFORMTICA PS-GRADUAO EM CINCIA DA COMPUTAO

JOCLIO DE OLIVEIRA DANTAS PASSOS

DESIGN INTERATIVO DE FERRAMENTA DE MANIPULAO DE OBJETOS DE APRENDIZAGEM DE AMBIENTES VIRTUAIS DE ENSINO DISTNCIA

Dissertao apresentada Universidade Federal de Pernambuco UFPE, Centro de Informtica, para a ps-graduao em Cincia da Computao. Orientador: Prof. Dr. Alex Sandro Gomes

RECIFE-PE 2006

RESUMO
Esta pesquisa visa concepo de ferramentas virtuais que permitam a manipulao de objetos de aprendizagem. Para tanto, buscou-se entender as prticas de gesto de contedo em ambientes de cursos de ensino distncia, obtendo-se requisitos. Os metadados educativos (modelo SCORM) foram estudados para entender os objetos de aprendizagem. Anlises funcionais de ambientes competidores para ensino distncia foram levadas em considerao. Desenvolveu-se uma metodologia centrada no usurio: observou-se usurios desempenhando suas tarefas, elaboraram-se cenrios, realizou-se prototipagem e testou-se a aceitao dos prottipos pelos usurios. O ambiente proposto nessa pesquisa faz parte de um projeto mais abrangente intitulado Projeto Amadeus_MM1, cujo objetivo desenvolver um ambiente virtual para o ensino baseado em uma proposta pedaggica centrada em processos de mediao e avaliao, coordenado pelos professores Fernando Fonseca e Alex Sandro Gomes (Cin/UFPE). Palavras-chave: E-Learning, SCORM, CSCW, CSCL, Objetos de Aprendizagem, Ambientes Virtuais de Ensino.

Processo CNPq no. Xxxx.xxxx/2005-xx.

ABSTRACT
This research aims the conception of vitual tools which allow the manipulation of learning objects. Therefore, it was fetched to understand the practices of the content management in aside courses environments, getting requisites. The educatives metadatas (SCORM model) were studied to understand the learning objects. Functional analysis of competitive environments to aside learning were took into consideration. It was developed a methodology centred in the user: It was seeing users performing their tasks, it was made scenes, performed prototyping and tested the accenptance of the prototypes by the users. The proposed enviroment in this research takes part of a larger project called Amadeus MM Project, whose objective is to develop a virtual enviroment to the learning based on a pedagogic purposal centred in mediation and evaluation processes, coordinated by the Professors Fernando Fonseca and Alex Sandro Gomes (Cin/UFPE).

Key words: E-Learning, SCORM, CSCW, CSCL, Learning Objects, Teaching Virtual Environments.

minha famlia em especial, minha amada esposa Isabel e meus amados filhos, Ana Isabel, Ana Virgnia e Jnatas, que tiveram muita pacincia e compreenso em todas as horas dessa jornada e nunca deixaram de acreditar em mim. Aos meus pais e irms, famlia na qual nasci e que me ajudou a chegar fase adulta suprindo minha vida com todos os recursos necessrios. minha segunda famlia, ou seja, meus irmos na f que oraram por mim para que esse trabalho acontecesse. Ao colega Jorge Cavalcanti, companheiro com quem compartilhei as atividades de mestrado nos ltimos meses.

AGRADECIMENTOS

Agradeo a Deus, em primeiro lugar, por ser meu orientador em todos os aspectos da minha vida a quem eu devo tudo que sou. Esse criador maravilhoso, que sempre guiou meus passos em todos os degraus da minha vida pessoal e profissional, e para esse trabalho especfico enviou uma pessoa especial para me orientar, que me acostumei a chamar carinhosamente de Alex. Muito obrigado professor, pela sua pacincia e por ter tambm acreditado na concluso dessa pesquisa. Humildemente, espero tambm ter contribudo de alguma forma.

SUMRIO
1 INTRODUO..............................................................................................................................................1 2 MOTIVAO................................................................................................................................................3 3 AMBIENTES DE ENSINO DISTNCIA................................................................................................5 3.1 AMBIENTES VIRTUAIS DE ENSINO..................................................................................................5 3.2 SISTEMAS DE GESTO DE CONTEDO...........................................................................................6 3.2.1 Caractersticas Bsicas de um LMS.......................................................................................................7 4 METADADOS EDUCATIVOS: SHARABLE CONTENT OBJECT REFERENCE MODEL (SCORM)9 4.1 O QUE SCORM?......................................................................................................................................9 4.2 OBJETOS DE APRENDIZAGEM..........................................................................................................................11 4.3 ORIENTAO OBJETO...............................................................................................................................13 4.4 HISTRIA DO SCORM...............................................................................................................................14 4.5 ARQUITETURA DO SCORM 2004................................................................................................................15 4.6 CLASSES SCORM.....................................................................................................................................19 5 PROBLEMA.................................................................................................................................................24 6 ANLISE DE COMPETIDORES DE LMS DISPONVEIS...................................................................25 6.1 CRITRIOS PARA ANLISE COMPETITIVA DE LMS...........................................................................................26 6.2 MOODLE (MODULAR OBJECT-ORIENTED DYNAMIC LEARNING ENVIRONMENT)...................................................26 6.3 OPEN LMS...............................................................................................................................................28 6.4 OUTROS AMBIENTES....................................................................................................................................30 6.5 RESULTADOS DA ANLISE DE COMPETIDORES.................................................................................................30 6.5.1 Requisitos Gerais abordados nessa pesquisa......................................................................................31 7 METODOLOGIA DE DESIGN INTERATIVO CENTRADA NO USURIO.....................................32 7.1 OBJETIVOS.................................................................................................................................................33 7.1.1 Geral.....................................................................................................................................................33 7.1.2 Especficos............................................................................................................................................33 7.2 OBSERVAO DOS USURIOS.........................................................................................................................34 7.2.1 Procedimentos......................................................................................................................................34 7.3 CENRIOS..................................................................................................................................................38

7.4 PROTOTIPAGEM DE BAIXA FIDELIDADE.............................................................................................................40 7.5 ANLISE DAS TAREFAS E TESTE DE USABILIDADE DOS PROTTIPOS......................................................................42 8 RESULTADOS.............................................................................................................................................45 8.1 RESULTADOS DA OBSERVAO PARTE 1........................................................................................................45 8.1.1 Requisitos de Observao e de Material..............................................................................................45 8.2 CENRIOS PARTE 1.....................................................................................................................................51 8.2.1 Gesto de Contedo Situao Atual..................................................................................................51 8.3 PROTOTIPAGEM DE BAIXA FIDELIDADE.............................................................................................................53 8.3.1 Prottipo de Baixa Fidelidade 1 Gerao de dvidas......................................................................54 8.3.2 Prottipo de baixa fidelidade 2 Gerao de dvida.........................................................................54 8.3.3 Prottipo de Baixa Fidelidade 3 Gerao de dvidas......................................................................59 8.3.4 Prottipo de Baixa Fidelidade 4 Reuso de objetos de aprendizagem...............................................66 8.4 RESULTADOS DA OBSERVAO PARTE 2........................................................................................................75 8.5 CASOS DE USO...........................................................................................................................................77 8.6 DIAGRAMAS DE ATIVIDADE..........................................................................................................................78 8.7 CENRIOS PARTE 2.....................................................................................................................................79 8.7.1 Gesto de Contedo Situao Futura................................................................................................79 8.8 ANLISE DAS TAREFAS E TESTE DE USABILIDADE DOS PROTTIPOS......................................................................81 8.8.1 Anlise da Tarefa 1 (Prottipo 3)........................................................................................................81 8.8.2 Anlise da Tarefa 2 (Prottipo 4)........................................................................................................84 8.9 RESULTADOS OBTIDOS.................................................................................................................................84 9 CONCLUSO...............................................................................................................................................86 10 TRABALHOS FUTUROS.........................................................................................................................88 11 REFERNCIAS.........................................................................................................................................91 ANEXOS..........................................................................................................................................................99 ANEXO I - CONTEDO DO ARQUIVO IMSMANIFEST.XML...........................................................................................99 ANEXO II - ARQUIVO VIEWCOURSES.JSP PERTENCENTE A API DO SCORM...........................................................104 ANEXO III - SCRIPT DO BANCO DE DADOS SCORM.........................................................................................108

ANEXO IV - SCRIPT DE ALTERAO DO BANCO DE DADOS SCORM...................................................................110 ANEXO V CDIGO FONTE DO PROTTIPO FUNCIONAL 2.....................................................................................111

LISTA DE FIGURAS
FIGURA 1. COMPONENTES LEGO..........................................................................................................12 FIGURA 2. VISO DA ADL: COMPARTILHAR OBJETOS DE APRENDIZAGEM.........................15 FIGURA 3. ESTRUTURA BSICA DE UM PACOTE SCORM..............................................................16 FIGURA 4. API VIEWCOURSES.JSP EM EXECUO.........................................................................17 FIGURA 5. RVORE DE ATIVIDADES DO AMBIENTE SCORM.......................................................18 FIGURA 6. OPES DE OBJETOS DO TIPO ASSET............................................................................22 FIGURA 7. SCO UM CONJUNTO DE ASSETS....................................................................................22 FIGURA 8. MOODLE: REGISTRO DE UM CURSO SCORM NO AMBIENTE..................................27 FIGURA 9. MODDLE: TELA PRINCIPAL DO CURSO MODELO SCORM.......................................27 FIGURA 10. MOODLE: EXECUO DE UMA LIO DO CURSO SCORM....................................28 FIGURA 11. OPEN LMS: TELA PRINCIPAL...........................................................................................29 FIGURA 12. OPEN LMS: COURSE BUILDER.........................................................................................29 FIGURA 13. OPEN LMS: EXECUO DE CURSO MODELO SCORM..............................................30 FIGURA 14. ETAPAS PRINCIPAIS DA METODOLOGIA.....................................................................34 FIGURA 15. USO DO RELOAD PARA CRIAO DO CURSO MODELO SCORM.......................36 FIGURA 16. PROTTIPO DE BAIXA FIDELIDADE 1: REGISTRANDO DVIDA..........................54 FIGURA 17. PROTTIPO DE BAIXA FIDELIDADE 1: DVIDA ENVIADA.....................................54 FIGURA 18. PROTTIPO FUNCIONAL: REGISTRAR DVIDA........................................................58 FIGURA 19. PROTTIPO FUNCIONAL: ENVIANDO DVIDA..........................................................58 FIGURA 20. TELA PRINCIPAL DO AMADEUS. ESCOLHENDO UM CURSO.................................59 FIGURA 21. CURSO CARREGADO SEGUNDO A ESTRUTURA DE GESTO DE CONTEDO..59 FIGURA 22. ALUNO REGISTRANDO UMA DVIDA EM UM ITEM DE UM CURSO...................61 FIGURA 23. PROFESSOR RESPONDENDO UMA DVIDA DE UM ITEM DE UM CURSO..........63 FIGURA 24. ALUNO TOMANDO CINCIA DA RESPOSTA DO PROFESSOR PARA UM ITEM DE UM CURSO.....................................................................................................................................................65 FIGURA 25. GESTO DE CONTEDO [RAM 2005]...............................................................................67 FIGURA 26. ESCOLHENDO A OPO CONSTRUIR UM CURSO.....................................................68 FIGURA 27. PROFESSOR CRIANDO UM NOVO CURSO.....................................................................68 FIGURA 28. ACESSO AO REPOSITRIO DE CURSOS........................................................................69 FIGURA 29. REPOSITRIO DE CURSOS................................................................................................70 FIGURA 30. CRIANDO UM NOVO CURSO: ADICIONANDO OBJETOS DO REPOSITRIO......70 FIGURA 31. CONTEDO DO NOVO CURSO CRIADO OBTIDO DE COURSE-1........................73 FIGURA 32. CONTEDO DO NOVO CURSO CRIADO OBTIDO DE COURSE-3........................73 FIGURA 33. CRIANDO UM NOVO CURSO: REMOVENDO OBJETOS DE UM CURSO................74 FIGURA 34. CONTEDO DO NOVO CURSO APS REMOO DE ITEM......................................75

LISTA DE TABELAS
TABELA 1. CONTEDO DA TABELA TBCOURSEINFO.....................................................................20 TABELA 2. CONTEDO DA TABELA TBITEMINFO...........................................................................21 TABELA 3. CONTEDO DA TABELA TBUSERINFO...........................................................................23 TABELA 4. CONTEDO DA TABELA TBUSERCOURSEINFO...........................................................23 TABELA 5 - CARACTERSTICAS DOS USURIOS QUE PARTICIPARAM DOS TESTES...........37 TABELA 6. SUGESTES PARA TRATAMENTO DE REQUISITOS DE MATERIAL (REQM).....49 TABELA 7. REGISTRO DE PERCURSO NA TABELA TBPERCURSO..............................................60 TABELA 8. REGISTRO DA DVIDA NA TABELA TBDUVIDA..........................................................62 TABELA 9. REGISTRO DA RESPOSTA DA DVIDA............................................................................64 TABELA 10. REGISTRO DA CINCIA DO ALUNO RESPOSTA DA DVIDA.............................66 TABELA 11. NOVO CURSO CRIADO NA TABELA TBCOURSEINFO..............................................69 TABELA 12. ITENS DO NOVO CURSO CRIADO: TABELA TBITEMINFO......................................71 TABELA 13. EXCLUINDO ITENS DO NOVO CURSO CRIADO: TABELA TBITEMINFO............75

LISTA DE DIAGRAMAS
DIAGRAMA 1. CLASSE DO MODELO SCORM......................................................................................20 DIAGRAMA 2. ALTERAES NO DIAGRAMA DE CLASSE DO MODELO SCORM...................56 DIAGRAMA 3. CASO DE USO 1 PROFESSOR CRIANDO CURSO COM REUSO DE OBJETOS DE APRENDIZAGEM..........................................................................................................................................77 DIAGRAMA 4. CASO DE USO 2 ALUNO REALIZANDO CURSO COM SUPORTE AO REGISTRO DE DVIDA EM OBJETOS DE APRENDIZAGEM.................................................................................78 DIAGRAMA 5. DIAGRAMA DE ATIVIDADE 1 PROFESSOR CRIANDO CURSO COM REUSO DE OBJETOS DE APRENDIZAGEM................................................................................................................79 DIAGRAMA 6. DIAGRAMA DE ATIVIDADE 2 ALUNO REALIZANDO CURSO COM SUPORTE A REGISTRO DE DVIDA EM OBJETOS DE APRENDIZAGEM...........................................................79 DIAGRAMA 7. TAREFA REALIZAR UM CURSO..................................................................................82 DIAGRAMA 8. TAREFA REGISTRAR DVIDA.....................................................................................82 DIAGRAMA 9. TAREFA RESPONDER DVIDA....................................................................................83 DIAGRAMA 10. TAREFA CINCIA DA DVIDA...................................................................................83 DIAGRAMA 11. TAREFA CRIAR NOVO CURSO...................................................................................84

1 INTRODUO

O ser humano, ao longo de sua histria, sempre buscou avanar em seu conhecimento, aprendendo de forma isolada, mas, principalmente, compartilhando seus saberes. Durante a civilizao grega, para citar apenas um exemplo, houve a formao de um importante centro cultural... para o alto aprendizado... onde ... foram muitos e significativos os avanos na medicina, astronomia, matemtica geografia e cincia [PAR 1995]. Muito conhecimento foi construdo no decorrer desse processo histrico. Como o conhecimento voltil, muitas vezes armazenado na mente das pessoas [AN3 2005], outras formas de armazenar esses contedos tm sido buscadas. Durante muito tempo o papel foi utilizado para isso. Contudo, o difcil acesso s informaes contidas em papel, bem como os incmodos em atualiz-lo [FAL 2004] provocou a necessidade de buscar outras formas de armazenamento. Hoje, com os avanos tecnolgicos das mdias, o armazenamento deixou de ser o grande problema. Passou-se a focar, ento, outro aspecto: o contedo armazenado precisa ser organizado de tal forma que permita ser facilmente encontrado, compartilhado, repensado e novamente disponibilizado. Essa uma das formas atravs das quais se desenvolve o processo de aprendizagem. Por isso, h tanta preocupao em disponibilizar conhecimento visto que a capacidade de utilizar informao para resolver um determinado conjunto de problemas [AN3 2005]. O grande detalhe que se pode transferir o conhecimento sem perd-lo, configurandose uma caracterstica muito importante na sua gesto. A necessidade de se recuperar informaes dispersas de forma eficiente tambm foi comentada por Falbo et al. [FAL 2005]:
... o excesso de recursos de informao, associado falta de semntica para guiar uma busca por recursos realmente relevantes para o contexto em mos. Assim como a falta de informao constitui um problema grave, o excesso de recursos de informao tambm o , j que, em ltima instncia, pode no ser possvel coletar em tempo hbil a informao necessria para apoiar tomada de deciso durante a resoluo de problemas. Este fato pode ser claramente percebido na Web, onde, muitas vezes, achar informao relevante pode ser uma tarefa rdua e complexa, e est relacionado, sobretudo, falta de semntica associada aos recursos de informao.

Com o advento da Internet e o surgimento posterior de ambientes virtuais [EBE 2005], o ensino distncia tornou-se um caminho para unir conhecimentos remotamente dispersos, com uma estratgia, ou semntica, tal que permita maximizar o processo de aprendizagem. Para viabilizar o ensino distncia, diversos softwares de gesto de contedo surgiram. Esses Sistemas de Gesto de Contedo/Aprendizagem ou Learning Management System (LMS), so softwares, geralmente baseados em tecnologia Web, criados para planejar, implementar e avaliar um processo de aprendizagem especfico distncia [WHA 2004]. Basicamente, um LMS prov meios para criar e disponibilizar contedo, monitorar a participao do estudante e avaliar sua performance. Esse pode tambm prover, ao estudante, condies para usar recursos interativos tais como sala de discusso e vdeo conferncia. LMS so considerados hoje como agente revolucionrio da formao [AN5 2005]. Alm do aspecto acadmico, segundo Natali et al. [NAT 2005], a gesto de contedo tem sido vista tambm por outro ngulo:
... a gerncia do conhecimento vem sendo reconhecida como uma fonte de vantagem competitiva para organizaes de desenvolvimento de software. A gerncia de conhecimento apresenta-se como uma forma de apoiar os desenvolvedores, de modo que esses realizem suas atividades melhor e mais rapidamente, aproveitando experincias anteriores para auxiliar tomada de deciso.

Essa dissertao, por meio de um processo de Design Interativo baseado em cenrios e prototipagem de ambientes de gesto de contedo para ambientes de ensino distncia, busca entender como o contedo deve ser organizado nesses ambientes. Esse estudo est organizado da seguinte maneira: a importncia da gesto de contedo (captulo 2), conceitos e as caractersticas dos ambientes de ensino distncia (captulo 3), metadados educativos e o conceito de objetos de aprendizagem, bem como a analise de um dos modelos criados para implementar esse conceito, o SCORM, descrevendo seu propsito, arquitetura e funcionamento (captulo 4), realizao da anlise de competidores sob a tica da gesto de contedo e com base no modelo SCORM (captulo 5), definio do problema a ser resolvido (captulo 6), explicao da metodologia para resoluo do problema (captulo 7), resultados obtidos aps a aplicao da metodologia (captulo 8), concluso (captulo 9) e trabalhos futuros (captulo 10).

2 MOTIVAO

Muitas instituies pblicas e privadas tm se interessado em disponibilizar informaes na Internet por meio de ambientes de ensino distncia. Um grande erro pode ser cometido no processo de implantao desse tipo de soluo: implantar programas grandes e caros e, depois, economizar na hora de desenvolver e organizar contedo [BRI 2004]. Acredita-se que o aplicativo que gerencia o contedo tem muito mais importncia que a flexibilidade de manusear o contedo propriamente dito (ibidem). Pode-se erroneamente pensar assim, por se viver num mundo onde dada tanta importncia ao investimento em tecnologia. Por outro lado, sem um programa que viabilize a organizao do contedo no se alcanar nenhum sucesso. Essa rea conhecida como gerenciamento de conhecimento (ou Knowledge Management), que possibilita instituio ter uma infra-estrutura com recursos para criar, compartilhar e gerenciar o conhecimento (ou contedos) [ROS 2002]. Em tal ambiente, pode haver mais contribuio ou compartilhamento de conhecimento. Novos contedos podem ser criados a partir de contedos j existentes, aumentando o banco de conhecimento. Segundo Rosenberg [ROS 2002], a questo no mais se o ensino distncia ser implementado ou no por diversas instituies. Essa uma tendncia atual e natural. A questo se tal forma de ensino ser bem implantada, ou seja, se haver uma gesto do conhecimento ou de contedo. Preocupadas com a questo apresentada, vrias instituies criaram seus padres de gesto de contedo [HEN 2002] [SUA 2005], como seguem: Institute of Eletrical and Electronic Engineers (IEEE) Learning Technology Standards Committee (LTSC); Advanced Distributed Learning (ADL) Initiative - Sharable Content Object Reference Model (SCORM) Instructional Management System (IMS) Global Learning Consortium; Dublin Core Metadata Initiative; Aviation Industry Computer Based Training Committee (AICC);

Aviation Industry Computer Based Training and Distribution Network for Europe (ARI-ADNE); 3

CETIS Centrefor Education Tecnology Interoperability Standards.

Porm, como aconteceu com outras tecnologias e metalinguagens de representao de informao (SQL2, UML3), passou-se a trabalhar no desenvolvimento de um padro nico, que possibilitasse uma comunicao real entre as instituies que produzem seus conhecimentos. O mais popular desses modelos o SCORM (Sharable Content Object Reference Model). Tal modelo ser estudado nessa pesquisa porque tem sido classificado como bastante conhecido e adotado [SUA 2005] [SMI 2005]. Esse modelo: 1. Nos ajudar a entender o que existe em termos de ferramentas de gesto de contedo de ambientes de ensino distncia 2. Ser um pr-requisito para a anlise de competidores 3. Servir de base para implementao dos prottipos. Muito interessante notar que, em seu trabalho Uma Abordagem Centrada No Usurio para Ferramentas de Suporte a Atividades Docentes em Ambientes de Educao Distncia, Gomes [GOM 2004] cita como um dos itens de trabalhos futuros: O uso do conceito de objetos de aprendizagem (Learning Management Systems - LMS) e do modelo SCORM para a padronizao e especificao de ferramentas para ambientes virtuais. Antes de analisar como funciona a gesto de contedo, segue-se uma apresentao de ambientes virtuais de ensino, discutindo suas principais caractersticas.

2 3

SQL - Structured Query Language (Linguagem de Consulta Estruturada) UML - Unified Modeling Language (Linguagem de Modelagem Unificada)

3 AMBIENTES DE ENSINO DISTNCIA

3.1 AMBIENTES VIRTUAIS DE ENSINO


Nas primeiras formas de uso da Internet em contextos educacionais, os alunos eram encorajados a acess-la em busca de informaes (conhecimento esttico) com o objetivo apenas de ampliar os limites da educao, que se resumiam a conhecimento dos professores e atividades em sala de aula [EBE 2005]. Surgiu a seguinte necessidade: alunos desejavam interagir com outros alunos e professores de forma fcil, contribuindo tambm com aprendizado de outros, alm de construir virtualmente o seu prprio conhecimento. A partir dessas necessidades surgiram os ambientes virtuais de ensino distncia (e-learning) que, rapidamente, tornaram-se muito populares [SUA 2005]. Tal categoria de ambiente dispe de um conjunto de funcionalidades projetadas para armazenar, distribuir e gerenciar contedos de aprendizado, de forma progressiva e interativa, podendo tambm registrar e relatar atividades do aprendiz, bem como seu desempenho [SCO 2004]. Os referidos ambientes so conhecidos tambm como Computer Supported Collaborative Learning (CSCL - aprendizagem colaborativa assistida por computador). Sua estratgia educativa visa dar condies para que dois ou mais sujeitos, interagindo, construam o seu conhecimento atravs da discusso, da reflexo e tomada de decises, e onde os recursos informticos atuam como mediadores do processo de ensino-aprendizagem [APR 2004]. Tais recursos abrangem: mecanismos para envio de mensagens, bate-papo, recepo e envio de materiais e gerenciadores de tarefas [EBE 2005]. Eles possibilitam a execuo de diversas atividades de aprendizagem distncia, por parte do aluno, de acordo com tarefas predefinidas. A grande vantagem a compartilhamento do conhecimento entre os participantes do ambiente, possibilitando a criao de novos conhecimentos [ELE 2005]. CSCL um dos ramos da pesquisa de Computer Suported Collaborative Work (CSCW trabalho colaborativo assistido por computador). Tanto CSCW, quanto CSCL, baseiam-se em sistemas computacionais que suportam e facilitam os processos e as dinmicas de grupo remotamente localizados. Esses sistemas possibilitam acesso e transferncia de informao e 5

documentos, atividades de resoluo de problemas e formas diferenciadas de avaliao. A investigao atual, nesse domnio, abrange no somente as tcnicas de construo dessa categoria de aplicao (groupware), mas tambm os aspectos sociais, psicolgicos, organizacionais e de aprendizagem humana que ocorrem mediados por esses ambientes [APR 2004]. Gralla [GRA 1996] define groupware como softwares que funcionam em Intra ou Internet e permitem que pessoas remotamente localizadas compartilhem informaes, colaborem em projetos ou participem de videoconferncias, proporcionando uma base ideal para criao, melhoria e captao do conhecimento [FAL 2004]. A finalidade principal desse tipo de aplicao a aprendizagem, especificamente colaborativa, e como pode ser suportada pelo computador. Esse ajuda os alunos a comunicar e a participar de atividades comuns, fornecendo tambm um prestimoso auxlio nos processos de coordenao e organizao de atividades. Esse leque de funes mediadoras amplia as possibilidades de uso do computador como meio atravs do qual os indivduos e os grupos podem contribuir uns com os outros, distncia, para atingirem objetivos comuns [APR 2004]. primordial que tais ambientes ofeream, aos seus usurios, meios rpidos e eficazes para encontrar informaes e desenvolver seu aprendizado [EBE 2005]. No prximo tpico descreve-se como gerenciar o contedo dos citados ambientes de forma eficaz.

3.2 SISTEMAS DE GESTO DE CONTEDO


Os Sistemas de Gesto de Contedo ou Learning Management System (LMS) disponibilizam uma srie de recursos, sncronos e assncronos, que viabilizam o processo de aprendizagem, permitindo seu planejamento, implementao e avaliao. Basicamente, o LMS prov meios para criar e disponibilizar contedo, monitorar a participao do estudante e avaliar, tambm, sua performance [AN1 2005]. A aprendizagem via LMS tem trazido vantagens como [AN5 2005]: Reduo de custos; Disponibilidade a qualquer hora e local; Rpida distribuio e alterao dos contedos; 6

Possibilidade de o aprendiz fazer seu prprio percurso;

Disponibilizao de recursos interativos tais como e-mail, frum, sala de discusso, vdeo conferncia para sistematizar as intervenes.

3.2.1 Caractersticas Bsicas de um LMS


Existem, atualmente, inmeros sistemas de gesto de contedo, quase todos de origem americana, mas h algumas caractersticas bsicas. Destacaram-se quatro para esse estudo [AN1 2005] [AN2 2005] [RAM 2005]: (1) controle das atividades, (2) compatibilidade com as especificaes existentes, (3) interatividade e (4) gesto de contedo. Essas caractersticas so explicadas a seguir. 1 - O controle das atividades tem como objetivo registrar e monitorar todas as atividades e acessos dos alunos. Essas atividades, assncronas ou sncronas, devem ficar disponveis para que relatrios de progresso de cada aluno possam ser obtidos. Essas informaes, de acordo com os critrios pedaggicos e de gesto do sistema, podem ou no ser disponibilizadas para o aluno [AN1 2005]. 2 - A compatibilidade com as especificaes existentes fundamental na transferncia de contedos entre plataformas. Se os contedos forem compatveis com as especificaes atualmente existentes (Ver lista de instituies no captulo 2 MOTIVAO), garante-se um intercmbio de contedos com qualquer LMS compatvel com essas especificaes [AN2 2005]. 3 - A interatividade a base do processo de aprendizagem [AN4 2005] [RAM 2005]. Contedos no podem ser simples textos, em HTML, por exemplo, resumindo a interao ao processo de passar por pginas ou selecionar um captulo no ndice. O ambiente precisa dar condies ao aprendiz para que ele possa perguntar e receber resposta, comentar e receber feedback dos seus comentrios. 4 - A gesto de contedo um recurso que permite aos instrutores criarem cursos, organizando as informaes de maneira que o aluno encontre facilmente o que precisa [AN2 2005]. As demais caractersticas, no menos importantes, mas que no sero abordadas nesse estudo, so [AN1 2005] [ROS 2002] [RAM 2005]: avaliao de pr-requisitos, cadastro de 7

participantes, catlogo de cursos, sistema de avaliao, sistema colaborativo de aprendizagem, centro de recursos de conhecimento (biblioteca virtual), controle de horrios, equilbrio entre a aparncia grfica e o contedo e adequao s necessidades do aprendiz (customizao). Antes de aprofundar o aspecto da interatividade e a gesto de contedo ser analisado o modelo SCORM no prximo captulo. O estudo desse modelo est em conformidade com a segunda caracterstica bsica de um LMS levantada acima, compatibilidade com especificaes existentes. Isso fundamental para um LMS que pretende compartilhar contedos. Compatibilidade com o modelo SCORM o principal requisito para escolha dos LMSs que faro parte da anlise de competidores.

4 METADADOS EDUCATIVOS: SHARABLE CONTENT OBJECT REFERENCE MODEL (SCORM)

4.1 O que SCORM?


O Sharable Content Object Reference Model (SCORM) uma coleo de especificaes adaptadas de mltiplas fontes ou organizaes (conforme o tpico 4.4 Histria do SCORM). O objetivo prover um (1) framework compreensvel contendo recursos para e-learning (aprendizagem eletrnica) que permitam (2) interoperabilidade, (3) usabilidade e (4) reusabilidade de contedo baseado na Web [ADL 2004]. Segundo Heng [HEN 2002], realmente h um grande crescimento na criao e distribuio de cursos reusveis e modificveis, independente da ferramenta utilizada para cri-los. O investimento para desenvolver, converter ou adaptar contedos para aprendizado alto [SUA 2005] e estima-se que pode ser reduzido de 50 a 80% com o uso de um contedo (5) acessvel, interopervel, (6) durvel e reusvel [SCO 2004]. Rosenberg [ROS 2002] confirma isso quando diz: Ao criar bibliotecas de objetos, produtos diferentes podem utilizar o mesmo material, reduzindo, portanto, a redundncia e os custos (p. 162). As caractersticas e conceitos desse modelo citados acima so explicados a seguir. 1 Framework, segundo Peters et al. [PET 2001], um sistema conceitual modificvel, para propsitos gerais, que ajuda a estreitar distncia entre uma resoluo de alto nvel para um problema e a sua implementao de software. Quem utiliza esse sistema para gesto de contedo no precisa se preocupar em como a aprendizagem eletrnica ser armazenada ou processada, mas pode concentrar os esforos no contedo que ser oferecido, como melhor apresent-lo e como mant-lo atualizado. 2 - Interoperabilidade (Ibidem) alcanada quando se consegue acoplar um sistema a sistemas de software de outras origens, compartilhando dados e, nesse caso, contedo. Segundo Heng [HEN 2002] esse contedo de mltiplas origens deve funcionar de forma satisfatria em diferentes sistemas de aprendizado.

3 - Usabilidade, segundo Peters (Ibidem), o esforo necessrio para aprender, operar, realizar entradas de dados e interpretar sadas. Acessar contedos e aprender precisa ser uma tarefa fcil. 4 - Reusabilidade a possibilidade de os mdulos de um sistema poderem ser usados em outras aplicaes ou em diferentes contextos [PET 2001] [HEN 2002]. Nesse estudo, pode-se substituir a palavra mdulo por contedo de aprendizagem. 5 Ser acessvel significa que o componente precisa est disponvel para reuso ou importao. Pode est localizado em um ambiente remoto e que facilmente possa ser distribudo para diferentes localizaes [SCO 2004]. A palavra componente pode ser substituda por contedo. 6 Ser durvel significa ter a possibilidade de acompanhar a tecnologia de informtica, permitindo mudanas, sem custos de re-projeto, reconfigurao ou recodificao [SCO 2004]. Um contedo, no tocante a tecnologia, no perde sua validade. Mesmo que seu interior no seja atualizado, h uma garantia que sempre poder ser acessado. Tal modelo descreve: "como se fazer" e "como se executar" cursos baseados na Web. Assim, ao se construir um LMS em conformidade com o modelo SCORM, permitido aos usurios acesso, simplificado e padronizado, a cursos de alta qualidade desenvolvidos em todo o mundo seguindo esse conceito [PWA 2005], sem a necessidade de maiores readaptaes tcnicas [EIR 2003]. Com o SCORM possvel ento construir um LMS capaz de procurar, importar, compartilhar, reusar e exportar contedos de aprendizado de modo padronizado [RHA 2004]. Segundo Heng [HEN 2002] muitas instituies tm desnecessariamente reescrito contedos para aprendizagem. O ideal, no processo de construir novos cursos, seria obter contedos de outras instituies e reuni-los aos criados na prpria instituio. Para isso, o contedo deve ser, ento, fragmentado em pequenas partes conhecidas como objetos de aprendizagem. Esses so vistos atualmente como uma das solues para resolver problemas de compartilhamento de contedo [ROS 2002]. Criar rotinas para produzir esses contedos, de forma articulada e usando amplamente guidelines4, so atualmente estados da arte em e-learning [SCO 2004].
4

Segundo Shneiderman [SHN 1998] guidelines so diretivas (ou diretrizes) desenvolvidas por muitas organizaes que ajudam a promover consistncia e padronizao entre mltiplos projetos de uma mesma

10

4.2 Objetos de aprendizagem


Como o SCORM visa usabilidade e reusabilidade de contedo, esse modelo foi estruturado com base em objetos de aprendizagem ou de conhecimento (Ver detalhes no tpico ). Um objeto de aprendizagem um fragmento inteligvel de contedo capaz de ser recombinado, usado e reusado, para formar um contedo mais abrangente: um curso [HEN 2002]. Esse curso, por sua vez, pode ser parte de um contedo mais abrangente ainda e assim sucessivamente. Objetos de aprendizagem so conhecidos tambm como instructional objetcts [SCO 2004]. Esse conceito considerado um dos avanos mais promissores na criao de solues para elearning [ROS 2002]. Um objeto, ento, o menor bloco de informao independente e com significado para quem aprende. Essa unidade de componente de aprendizado, uma vez criada e disponibilizada, pode ser reorganizada, aproveitada e alterada facilmente por uma ampla gama de ferramentas de desenvolvimento, sem a dependncia de um fornecedor ou tcnica especfica [ERI 2003]. Tal bloco (ou componente) pode ser um objeto texto, uma mdia (vdeo, udio), grficos, animaes, avaliaes. Rosenberg [ROS 2002] exemplifica isso da seguinte forma:
Uma maneira fcil de pensar nos objetos de aprendizado / conhecimento imaginar uma pgina que voc desenvolver em seu site da Web. Voc acessa as informaes dos bancos de dados e os arquivos de documentos e cola o contedo no site. Para enfatizar o que significa, voc vai a um arquivo de clip art, corta um grfico que salienta seu ponto de vista e cola tambm. Talvez voc tambm acesse uma planilha que foi preenchida por um colega e cole-a no documento. Voc pode adicionar um arquivo de udio ou de vdeo ou links para outros sites da Web. No final, voc construiu alguma coisa nova com objetos de contedo j existente de um ou mais repositrios. Ao mesmo tempo, outras pessoas podem estar utilizando os mesmos objetos para outros objetivos (dentro das leis autorais). Parece muito com o gerenciamento do conhecimento! (p. 163).

Outro fator importante a ser avaliado a granularidade do contedo [HEN 2002]. a preocupao que se deve ter quanto ao tamanho de cada objeto de conhecimento, ou seja, qual deve ser o tamanho do menor bloco ou gro. Uma das abordagens quanto menor
categoria de aplicao.

11

melhor, visto que usurios geralmente precisam garimpar grande quantidade de informao para poder obter o que desejam (ibidem). Objetos de aprendizagem maiores so de difcil reuso, enquanto os menores no. Heng tambm afirma: A Pedagogia sugere que o ideal para uma lio um tempo entre cinco e vinte minutos. Ao usar objetos de aprendizado de menor tamanho possvel, a personalizao do material torna-se mais fcil (p. 3). Isso muito bom para o aprendizado (ibidem). Uma das aplicaes desse conceito de objeto de aprendizagem (ou aprendizado) aconteceu na Integrated Project System (IPS) [IPS 2005]. Rosenberg [ROS 2002] relata o exemplo dessa empresa que atua na rea de treinamento de gerenciamento de projetos. Ao implantar cursos na Web, dividiu os seus contedos em objetos de aprendizagem reutilizveis, utilizando-os para vrios objetivos. Os objetos podiam ser reunidos em cursos de treinamento on-line, mas tambm podiam ser utilizados para criar componentes de gerenciamento de conhecimento ou ferramentas de suporte ao desempenho. E, ao vincular o sistema a um modelo de competncias, os aprendizes conseguiam receber apenas o contedo de que precisavam e no formato adequado para eles. Dessa maneira, a propriedade intelectual da IPS podia ser utilizada para vrios objetivos e ainda oferecer o grau de personalizao que os alunos desejavam. A flexibilidade da tecnologia de objetos de aprendizado, ou seja, sua habilidade em selecionar, reunir e fornecer contedo relevante nos termos definidos pelos usurios, resultou em uma a adio significativa ao modelo de negcios atual da IPS. (p. 163). Para Heng [HEN 2002], os objetos de aprendizagem muito se assemelham usabilidade, reusabilidade e interoperabilidade dos blocos LEGO (Figura 1) [LEG 2005].

Figura 1. Componentes LEGO. Com esses blocos LEGO pode-se construir vrios tipos de formas e figuras. Uma caixa contendo muitos desses blocos com uma grande variedade de formas, tamanhos e cores, e o uso da imaginao, permite uma gama de construes diferentes. O conceito LEGO muito 12

diferente do conceito puzzle (quebra-cabea) [PUZ 2005], no qual cada pea encaixa apenas em um nico lugar e o trabalho completo forma sempre a mesma figura. Objetos de aprendizagem so o LEGO do aprendizado eletrnico [HENG 2002]. Pode-se, ento, chamar esse modelo de aprendizagem orientada a objeto.

4.3 Orientao Objeto


Os objetos de aprendizagem, em linhas gerais, tm suas razes no conceito da Anlise e Programao Orientao a Objeto. Uma classe um tipo de dado definido pelo usurio, ou seja, pelo programador ou analista [SEB 2000]. Um objeto uma instncia, ou ocorrncia, da classe [DEI 2001]. Esse conceito de classes foi introduzido com a linguagem SIMULA [SIM 2005] em 1967 e Smalltalk [SMT 2005] em 1980 [GHE 1998]. Duas linguagens de programao bastante difundidas que atualmente carregam a bandeira da orientao a objeto so C++ [GCC 2005], criada em 1980, e Java [JAV 2005] criada em 1990 [SEB 2000]. Vantagens da Orientao a Objeto relativas ao conceito de objetos de aprendizagem [SEB 2000]: Permite abstrao, ou seja, representar entidades do mundo real. Um objeto de aprendizagem uma abstrao do conhecimento que se deseja disponibilizar. um recurso contra a complexidade. Um meio de tornar programas grandes e/ou complicados mais manejveis. Um conhecimento vasto dividido em objetos menores mais fcil de ser manipulado. Permite maior produtividade porque permite reutilizao de cdigo. Esse recurso disponibilizado com o conceito de herana. Novos tipos so criados a partir de tipos j existentes, herdando suas funcionalidades, e, se necessrio, modificando-as [GHE 1998]. Softwares so ento construdos a partir de componentes amplamente disponveis, portveis, bem-documentados, cuidadosamente testados e bem definidos. Essa capacidade de reutilizao acelera o desenvolvimento, possibilitando softwares poderosos, com alta qualidade e a um tempo e custo menores [DEI 2001]. Da mesma forma que objetos podem ser moldados para que se ajustem a um novo problema, objetos de aprendizagem, como j foi visto, podem ser recombinados, usados e

13

reusados, para formar contedos mais abrangentes. Alm dessas vantagens, pode-se prevenir a repetio de falhas [FAL 2004]. H outros recursos da orientao a objeto que ainda no foram incorporados ao conceito de objetos de aprendizagem. So eles [SEB 2000] [DEI 2001]: Encapsulamento - permite a ocultao de recursos da classe; Polimorfismo e vinculao dinmica - permitem que recursos com mesmo nome desempenhem funcionalidades distintas, dependendo de modo como so invocados. Permite, portanto, extensibilidade e acesso genrico a recursos. Classes Abstratas - permitem que classes sejam apenas herdadas e no possam ser diretamente utilizadas no programa. Servem apenas de classe base para outras classes.

4.4 Histria do SCORM


J em 1999 observavam-se vrios padres e especificaes emergentes para contedos de aprendizagem, utilizados por diversas organizaes [ADL 2004]. A falta de uniformidade surgiu como uma conseqncia natural, dificultando o compartilhamento de contedos [SUA 2005]. Em busca de um modelo comum, o Department of Defense (DoD) [DOD 2004] reuniu-se com outras instituies federais e o setor privado com objetivo de desenvolver especificaes comuns e padres para o aprendizado baseado em tecnologia de informtica. Assim surgiu o Sharable Content Object Reference Model - SCORM, um modelo de referncia baseado em objetos com contedo compartilhvel. A essa reunio estratgica das instituies, envolvendo tambm o meio acadmico, deu-se o nome de DoDs Advanced Distributed Learning (ADL), rgo que visa Avanada Distribuio de Conhecimento [ADL 2004] de forma global e interopervel. O resultado desse trabalho gerou padronizao e guidelines para a produo e distribuio de conhecimento baseado em Web [ADL 2004], conforme a Figura 2.

14

Figura 2. Viso da ADL: compartilhar objetos de aprendizagem. Em janeiro de 2000, ADL lanou o release SCORM verso 1.0 e em 2001 foi lanado o SCORM verso 1.1 [ADL 2004]. SCORM 2004 lanado em janeiro de 2004 e introduziu um recurso chamado Sequencing and Navigation (SN). O SN acompanha a seqncia de navegao do aprendiz (ibidem).

4.5 Arquitetura do SCORM 2004


O SCORM tem como objetivo principal viabilizar a criao de contedo de aprendizagem reusvel como objetos institucionais de aprendizagem dentro de um framework comum [ADL 2004]. Os elementos bsicos do SCORM so: Content Aggregation Model (CAM - Modelo de Contedo Agregado), Run-Time Environment (RTE - Ambiente de Tempo de Execuo) e o Sequencing and Navigation (SN Navegao e Seqncia), esse ltimo introduzido na verso 2004 (ibidem). O CAM um conjunto de trs especificaes descritas a seguir: LOM, XML "binding e IMS Content Packaging Specification. A primeira especificao chamada LOM (Learning Object Metadata), ou Metadados para Objetos de Aprendizagem um dicionrio de tag5 que usado para descrever o contedo de aprendizado [RHA 2004] e represent-lo [SCO 2004]. O metadata (metadados), segundo Heng [HEN 2002] descreve o objeto de aprendizagem, especificando a sintaxe e a semntica

Tag um termo genrico para a definio de um elemento de linguagem [WHA 2004].

15

dos atributos mnimos requeridos, bem como o proprietrio do objeto, critrios de distribuio. Alm do metadados, o CAM tambm contm uma segunda especificao chamada XML "binding" utilizado para as tags do metadados. Define como codificar as tags para que possam ser lidas pelo computador [RHA 2004]. A terceira especificao presente no CAM o IMS Content Packaging Specification. Tal especificao para contedo do pacote define como empacotar ou reunir o conjunto de objetos de aprendizagem, seu metadados e a informao sobre como o contedo foi montado para ser distribudo, ou seja, compartilhado entre sistemas de aprendizado [RHA 2004]. Essa especificao que possibilita a interoperabilidade [SCO 2004]. O contedo desse pacote pode ser um curso, um mdulo do curso ou uma lio do mdulo [SCO 2004]. O pacote (Content Package) um arquivo zipado [WZP 2005] contendo: (1) todos os arquivos necessrios para o aprendizado (Physical Files) e (2) um XML manifest (Manifest File). Esse ltimo um arquivo em formato XML [XML 2005] que define todo o contedo de aprendizado (objetos de aprendizagem) presente no pacote e a relao entre esses componentes [RUS 2004] [SUA 2005]. Quando o pacote importado para o ambiente SCORM, as informaes desse arquivo so utilizadas para preencher as tabelas TBCourseInfo e TBItemInfo, que sero detalhadas no tpico a seguir. O LMS utiliza essas informaes para apresentar o contedo. No Anexo I encontra-se o contedo de um arquivo XML manifest chamado imsmanifest.xml criado com um Editor de curso para o padro SCORM durante a execuo da metodologia. A Figura 3 apresenta a estrutura bsica do pacote SCORM.

Content Package

Manifest Meta-data

Manifest File (imsmanifest.xml)

Organizations Resources (sub)Manifest(s)

Physical Files
(The actual Content, Media, Assessment, and other file)

Figura 3. Estrutura Bsica de um pacote SCORM.

16

O RTE prov a comunicao entre o contedo de aprendizado e o gerenciador, o LMS [SCO 2004]. Atravs dos recursos disponibilizados por esta Application Programming Interface (API - Interface de Aplicao de Programao)6, desenvolvida em Java Server Pages (JSP) [JSP 2004], o aprendiz pode ter acesso ao contedo do LMS [RHA 2004]. No Anexo II est o contedo do arquivo viewCourses.jsp, que permite ao aprendiz acessar um curso disponvel (previamente importado e registrado) no ambiente. Arquivos como esse ficam armazenados no caminho adl\admin, adl\import e adl\runtime quando o ambiente instalado. A Figura 4 mostra, em execuo, a opo da API para escolha de um curso.

Figura 4. API viewCourses.jsp em execuo. O SN armazena um conjunto de regras de seqncia e gerencia o processo de navegao do aprendiz. A partir dessas regras, formada uma rvore de Atividades (Activity Tree), mostrada na Figura 5, que proporciona a interao do aprendiz com o LMS [SCO 2004].

API so mtodos predefinidos pelo sistema operacional do computador ou por uma aplicao. Os programadores podem escrever mais facilmente aplicaes fazendo apenas requisies ao sistema operacional ou a uma aplicao por meio desses mtodos [WHA 2004].

17

rvore Atividades

de

Figura 5. rvore de Atividades do Ambiente SCORM. Por manter as regras e a navegao separadas do contedo dos objetos, o contedo pode ser reusado de novas e diferentes formas, suportando muitas estratgias diferentes de instruo [ADL 2004].

18

4.6 Classes SCORM


Para realizao da pesquisa o modelo SCORM 20047 foi baixado e instalado8. Dois cursos foram importados para o modelo, identificados como Course-1 e Course-2. Alm da literatura encontrada, apresentada no tpico anterior, necessitou-se de um maior aprofundamento desse modelo. Isso se deu atravs do processo de reengenharia de software. A reengenharia de software executada com o objetivo de obter uma melhor compreenso de um sistema existente, obtendo uma representao em um nvel de abstrao maior do que o cdigo-fonte [PRE 1995]. Possibilita a reconstruo ou reimplementao do sistema sob um novo formato. Parte-se, ento, de um sistema existente, analisando-o de forma a identificar seus componentes e suas inter-relaes, recuperando informaes e estruturas teis como modelo de dados, requisitos funcionais e algoritmos [PET 2001]. A aplicao da reengenharia possibilitou entender do funcionamento do modelo SCORM, chegando-se a descrio do modelo de dados, representado pelo diagrama de classe (Diagrama 1), exibido no padro UML [UML 2005]. O diagrama apresenta as classes SCORM e os relacionamentos entre elas. A compreenso desses elementos bsicos presentes no diagrama, a saber, classes e atributos, por demais relevante para essa pesquisa, porque possibilita entender como so armazenados os objetos de aprendizagem.

Modelo SCORM CTS1_3STSetup.exe.


8

encontra-se

em

http://www.adlnet.org/index.cfm?fuseaction=SCORDown,

opo

Instalado em http://200.164.233.156:8080/adl/runtime/LMSMain.htm

19

TBCourseInfo CourseID CourseTitle Active ImportDataTime 1

0..*

TBItemInfo CourseID OrganizationIndentifier ItemIdentifier ResourceIdentifier Launch Type Title

0..* TBUserCourseInfo 0..* UserID CourseID 1 TBUserInfo UserID LastName FirstName Admin Password Active

Diagrama 1. Classe do modelo SCORM. Cada uma dessas classes est descrita a seguir. A Classe TBCourseInfo (Tabela 1) armazena um curso disponvel, dando-lhe uma identificao (CourseID, Course-1), um ttulo (CourseTitle, Java e JDBC), um status indicando se o curso est ativo no momento (Active, True) e data de importao (ImportDataTime,25/08/2005 10:37:26). Tabela 1. Contedo da Tabela TBCourseInfo. CourseID Course-1 Course-2 CourseTitle Example -Active Constrained True True ImportDateTime 24/08/2005 10:37:26 25/08/2005 10:37:26

Photoshop Java e JDBC

A Classe TBItemInfo (Tabela 2) armazena os itens de cada curso, ou seja, o contedo lgico de cada curso. Um curso pode ter vrios desses registros. O primeiro atributo identifica o curso ao qual o item pertence (CourseID, Course-1), (OrganizationIndentifier, ORG24B80B92-ABBA-9455-8E50-5C380A3486ED), o item (ItemIdentifier, ITEM-744027D820

447F-B340-10AA-BAFB9FFED4D2), o recurso para aquele item (ResourceIdentifier, RES-1441794D-BC4F-19FF-B2DA-7A18F02D42BF), onde est localizado o recurso fsico (Launch, /adl/CourseImports/Course-1/index.html), o tipo do item (Type, asset ou sco), o ttulo a ser exibido no ambiente (Title, Conectividade de Banco de Dados Java). Os valores para o preenchimento dos atributos OrganizationIndentifier, ItemIdentifier, ResourceIdentifier, Launch, Type e Title so provenientes do arquivo XML manifest. Tabela 2. Contedo da Tabela TBItemInfo.
CourseID Course-2 Course-2 Course-2 Course-2 Course-2 Course-2 Course-2 Course-2 OrganizationIdentifier ORG-24B80B92-ABBA-9455-8E50-5C380A3486ED ORG-24B80B92-ABBA-9455-8E50-5C380A3486ED ORG-24B80B92-ABBA-9455-8E50-5C380A3486ED ORG-24B80B92-ABBA-9455-8E50-5C380A3486ED ORG-24B80B92-ABBA-9455-8E50-5C380A3486ED ORG-24B80B92-ABBA-9455-8E50-5C380A3486ED ORG-24B80B92-ABBA-9455-8E50-5C380A3486ED ORG-24B80B92-ABBA-9455-8E50-5C380A3486ED ItemIdentifier ITEM-744027D8-447F-B340-10AA-BAFB9FFED4D2 ITEM-FEB88C31-9D6F-70BE-30B7-537C33282A75 ITEM-30109A37-82C0-3601-F535-CD013BA9FB82 ITEM-E2EC19DB-4A5D-BFA4-3ED5-78853AE8B41C ITEM-63F09F7A-7A1B-F778-FF3F-B3851ABAC5DC ITEM-17B800B8-A8A0-A760-E95D-9AA6D704667B ITEM-5E9581A3-0CAB-4C59-C1F4-8F98178FB219 ITEM-BFD08E2C-AD11-66ED-C00F-CEFB75163BEF ResourceIdentifier RES-1441794D-BC4F-19FF-B2DA-7A18F02D42BF RES-22E8F1BB-BC0C-DB76-A635-52A9BFBD82CF RES-599B2809-29DB-05F9-4FF1-C6B13208A8B1 RES-9379D7FA-86E9-C9F7-9BAE-C9E86815DEF9 RES-E3E64C21-5879-7C88-BB0A-12827C7AC10B RES-815B354E-E43E-3A9C-CABE-00DE0F409990 RES-0B56ABF3-1D82-52D4-5854-B11717C440EF RES-A51BF8C4-0D0A-069F-64DE-950F5BACD067 Launch Type Title /adl/CourseImports/Course-2/index.html asset Conectividade de Banco de Dados Java /adl/CourseImports/Course-2/oquejdbc.html asset 1. O que e JDBC? /adl/CourseImports/Course-2/estudode.html asset 2. Estudo de Caso /adl/CourseImports/Course-2/registra.html asset 3. Registrando o Banco de Dados /adl/CourseImports/Course-2/consulta.html asset 4. Consultando Dados /adl/CourseImports/Course-2/atualiza.html asset 5. Lendo, Inserindo e Atualizando dados /adl/CourseImports/Course-2/dicionario.html asset Dicionario /adl/CourseImports/Course-2/bibliogr.html asset Bibliografia

21

O atributo Type contm duas entradas possveis: o Sharable Content Objects (SCOs Objetos de Contedo Compartilhvel) e Assets. Um Asset pode ser um link para um contedo fsico: texto, imagem, som, pgina Web, como na Figura 6. O SCO um conjunto de um ou mais Assets (Figura 7) e representa uma unidade lgica de aprendizado ou mdulo [RUS 2004].

Figura 6. Opes de objetos do tipo asset.

Figura 7. SCO um conjunto de assets. A classe TBUserInfo () armazena os usurios do ambiente, sua identificao (UserID, admin), o sobrenome (LastName, admin), o primeiro nome (FirstName, John), se tem status de administrador (Admin, True), a senha (Password, admin) e se um usurio ativo (Active, True).

22

Tabela 3. Contedo da Tabela TBUserInfo.


UserID admin LastName Admin FirstName Joe Admin True Password Admin Active True

A classe TBUserCourseInfo (Tabela 4) armazena os cursos que esto registrados para um usurio especfico identificando o usurio do curso (UserID, admin) e o curso registrado para esse usurio (CourseID, Course-1). Um usurio pode registrar vrios cursos e um curso pode ser registrado por vrios usurios. Tabela 4. Contedo da Tabela TBUserCourseInfo.
UserID admin admin CourseID Course-1 Course-2

No Anexo III encontra-se o script completo obtido da base de dados SCORM.

23

5 PROBLEMA
Como a tarefa de gesto de contedos complexa, o problema abordado nesse presente trabalho o identificar e validar as necessidades dos usurios professores e alunos quanto manipulao de componentes de aprendizagem e de suas partes em ambientes virtuais de ensino. Deseja-se saber o que implementar para atender essas necessidades de forma simples e completa e como isso pode ser feito. A pergunta central a de saber: quais e como atender as necessidades de um sistema de manipulao de componentes de aprendizagem? Que tarefas so realizadas pelos professores? E pelos alunos? A anlise de competidores, no prximo captulo, auxiliar na identificao de ambientes virtuais de ensino que possuam gesto eficaz de contedo, bem como requisitos para o ambiente a ser proposto nesse estudo.

24

6 ANLISE DE COMPETIDORES DE LMS DISPONVEIS


Alm da literatura sobre ambientes de gesto de contedo, a quantidade de ambientes do tipo LMS nos permite realizar uma anlise desses como forma de identificar seus pontos fortes e fracos. Esse procedimento conhecido como Anlise de Competidores. Segundo Michael Porter [POR 1991], em seu livro Estratgia Competitiva, os objetivos de uma Anlise de Competidores, so descrever: O que o competidor est fazendo; A estrutura/tecnologia do competidor; As estratgias de competio; A posio/situao do competidor no mercado; Os pontos fortes e fracos do competidor;

Em relao ao objeto em questo a analise de competidores: Ajuda a destacar caractersticas que o distinguem dos competidores; Fornecer metodologia para auto-anlise;

Mrio Figueira [AN2 2005] comenta que:


Existem atualmente perto de uma centena de fornecedores de sistemas de gesto da formao online, quase todos de origem americana... a lista de LMS enorme. urgente a realizao em Portugal de um estudo independente que compare as vantagens e inconvenientes de cada um dos LMS disponveis no mercado portugus indicando quais so os mais adequados e para que fins.

25

6.1 Critrios para Anlise Competitiva de LMS


Essa anlise est baseado no tpico 3.2.1 Caractersticas Bsicas de um LMS, que norteou os critrios para a escolha dos ambientes (h uma grande quantidade desses), bem como as caractersticas que foram observadas nesses competidores. Os critrios para escolha desses ambientes virtuais de ensino foram: Ser de acesso livre, ou seja, possuir um cadastro gratuito para se fazer um curso; Suporte ao modelo SCORM, ou seja, permitir importao e registro de contedo do curso nesse padro. A anlise desses ambientes surge como fonte geradora de requisitos. Outros requisitos tambm foram obtidos atravs da observao do uso (apresentada em 7.2 Observao dos usurios, pgina 45). As caractersticas observadas em cada competidor foram: Permite reutilizao de parte do curso registrado; Registra o caminho que o aluno fez (navegao) ao realizar o curso; Permite que o aluno registre notas (observaes) pessoais, ao realizar o curso, prximo a um ponto (mdulo, lio, seo e/ou pargrafo); Permite que o aluno tire dvidas com o professor clicando exatamente no ponto que gerou a dvida; Os pontos fortes e fracos esto listados aps a anlise de cada ambiente competidor. Os ambientes analisados foram: Moodle e Open LMS

6.2 Moodle (Modular Object-Oriented Dynamic Learning Environment)


O Moodle sistema Gerenciador de Cursos (Course Management System CMS) [MOO 2005]. Esse ambiente auxilia educadores a criar cursos online, e baseado na pedagogia social construtivista. A licena desse ambiente open source9 desenvolvido em PHP [PHP 2005]. Apresentando-se em diversas lnguas, inclusive em portugus, o Moodle utilizado em
9

Um software geralmente classificado como open source quando o seu cdigo fonte fica disponvel para uso e modificao. Geralmente so programas desenvolvidos com colaborao pblica [WHA 2004].

26

vrias partes do mundo, em diversas universidades, escolas, empresas e, tambm, individualmente por professores. O Moodle analisado foi instado10 num ambiente Linux com banco de dados MySQL [MYS 2005]. O Moddle suporta o modelo SCORM. Com o uso da opo Escolher ou atualizar um pacote SCORM, o Moodle (Figura 8) importou o pacote do curso Java e JDBC criado (scormjdbc.zip).

Figura 8. Moodle: Registro de um curso SCORM no ambiente. As Figura 9 e 10 trazem a tela do Moodle executando o curso no formato SCORM.

Figura 9. Moddle: Tela principal do Curso modelo SCORM.

10

Instalado em http://www.facape.br/moodle.

27

Figura 10. Moodle: Execuo de uma lio do curso SCORM. Pontos Fortes: Registro e Importao fcil de um curso modelo SCORM pelo professor; Navegao fcil de um curso modelo SCORM por parte do Aluno; Fcil Alterao de um pacote de curso modelo SCORM pelo professor;

Pontos Fracos: No permite que partes do curso sejam reaproveitadas por outro curso; No h opo para o aluno deixar anotaes pessoais prximo a um ponto especfico; No h opo para o aluno enviar dvidas para o professor a partir de um ponto especfico do curso; Ambiente tambm no registra o caminho que o aluno deixou ao fazer o curso SCORM.

6.3 Open LMS


O Open LMS [OLM 2005] um ambiente criado utilizando as tecnologias: Servlet, JSP, JavaBeans [JVB 2005] e Jakarta Struts Application Framework [STR 2005], com banco de dados MySQL.

28

Dentre as opes disponveis na tela principal (Figura 11), destaca-se a opo Instrutor Tools porque contem o item Course Builder (Figura 12). Essa ferramenta responsvel pela criao e manuteno de cursos para tal ambiente.

Figura 11. Open LMS: Tela principal.

Figura 12. Open LMS: Course Builder. A Figura 13 apresenta o ambiente executando um curso modelo SCORM.

29

Figura 13. Open LMS: Execuo de curso modelo SCORM.

6.4 Outros Ambientes


Outros ambientes tambm se enquadram em algumas caractersticas citadas acima. Tambm declaram ser apenas compatveis com o modelo SCORM. Essa afirmao se encontra no repositrio Sourceforge [FOR 2005] ou na pgina oficial de cada ambiente. So eles: Avatal Learn Station [ALV 2005]; a-LMS Learning Management System [ALM 2005]; DoceboLMS [DLM 2005]; ILIAS open source [ILI 2005]; Lotus Learning Management System [LOT 2005]. Sumatra System 3 [SS3 2005];

6.5 Resultados da Anlise de Competidores


Analisou-se aqui ambientes amostra representativa internacional - com relao gesto de contedo. Diante da complexidade das tarefas relacionadas gesto e reutilizao de 30

contedos detectou-se ausncia de ambientes que tratem o problema de gesto ao nvel de uma manipulao fina de componentes de aprendizagem e de suas partes. Eles apenas se limitam a importar pacotes SCORM e executar os cursos nesse padro. No h opo nesses ambientes para reaproveitamento de cursos ou partes deles, usando ou no objetos de aprendizagem. No h tambm interao utilizando esses objetos, como registro e resposta de dvidas em um determinado item do curso. Isso tambm foi notado por Ramalho quando menciona que o LMS fornece pouca ou nenhuma poltica de produo de contedos [RAM 2005].

6.5.1 Requisitos Gerais abordados nessa pesquisa


A partir do resultado da anlise de competidores e informaes apresentadas nos captulos anteriores, prope-se um ambiente de gesto de contedo, baseado no conceito de objetos de aprendizagem, atendendo aos seguintes requisitos gerais: [REQG01] Permitir reutilizao, no mesmo ambiente, de um objeto de aprendizagem SCORM. Em conformidade com a quarta caracterstica bsica de um LMS, gesto de contedo, levantada no tpico 3.2 SISTEMAS DE GESTO DE CONTEDO. [REQG02] Permitir rastrear os caminhos percorridos pelo usurio aprendiz ao manusear os materiais de um componente, mantendo um registro da partes dos objetos de aprendizagem que foram utilizados para isso. Em conformidade com a primeira caracterstica bsica de um LMS, o controle das atividades. [REQG03] Oferecer ao aluno aprendiz uma interface que lhe permita registrar uma dvida em determinado objeto de aprendizagem (tpico), endereando essa dvida para o professor. Essa interface deve permitir tambm que o aluno tome cincia da resposta da dvida. Em conformidade com a terceira caracterstica bsica de um LMS, a interatividade. Isso viabiliza o registro de dvidas por parte do aprendiz e respostas por parte do instrutor/professor, possibilitando um maior envolvimento do aprendiz. [REQG04] Oferecer indicaes visuais (smbolos) para que um aluno, em caso de dvida em um determinado objeto de aprendizagem, sinalize para um professor (ou tutor) de forma que esse reconhea essa dvida e possa respond-la. 31

7 METODOLOGIA DE DESIGN INTERATIVO CENTRADA NO USURIO

Este tpico aborda quais os objetivos gerais e especficos da proposta e que meios foram utilizados para atingi-los. Os meios adotados visam proporcionar a criao de um ambiente til para o usurio. Todo o projeto centrado no usurio e isso requer a fundamentao terica, no muito comum ao escopo da Cincia da Computao, como conhecimento de cincias humanas [LEI 2001]. Pressman [PRE 1995] em sua obra Engenharia de Software evidencia isso:
A insatisfao do cliente com o sistema concludo ocorre muito freqentemente. Os projetos de desenvolvimento de software normalmente so levados a efeito apenas com um vago indcio das exigncias do cliente. A comunicao entre o cliente e o desenvolvedor de software freqentemente muito fraca. (p. 23).

Embora afirmando que o sistema para o usurio, os desenvolvedores descobrem, somente quando o tudo est pronto, que o produto no resolve os problemas do usurio. Por outro lado, o usurio tambm precisa participar do projeto. s vezes, imaginam que uma declarao geral dos objetivos suficiente para que se comece o desenvolvimento do produto, informando os detalhes mais tarde [PRE 1995]. E realmente se torna tarde quando se percebe que usurios e desenvolvedores no falavam do mesmo produto. Esses so problemas conceituais (ou essenciais), ou seja, ocorrem no momento da concepo do software, enquanto se est levantando especificaes/requisitos [PET 2001], ficando a essncia do software comprometida. Essa metodologia prov uma cuidadosa comunicao entre o cliente e o desenvolvedor [PRE 1995], provendo um refinamento iterativo dos requisitos [PET 2001], levando em considerao as habilidades dos usurios e o contexto onde eles esto envolvidos [LEI 2001].

32

7.1 Objetivos
7.1.1 Geral
Entender as necessidades dos usurios (professores e alunos), quando utilizam ambientes virtuais de ensino. Essas necessidades esto relacionadas com atividades de gesto e manipulao de contedo organizado em forma de componentes de aprendizagem.

7.1.2 Especficos
Modelar a prtica de professores e alunos quanto criao, gesto, reutilizao e manipulao de componentes de aprendizagem em um ambiente virtual de ensino. Realizar uma prototipagem rpida, por meio da construo de cenrios baseados na reviso da literatura e na anlise de competidores, para propor solues que facilitem essa tarefa. Criar prottipos iniciais, de baixa fidelidade, do ambiente visando validar sua interface e funcionalidade junto ao usurio. Realizar testes de usabilidade com usurios de verses iniciais dos prottipos do sistema de gesto de contedo para ambientes de EaD. Construir novos cenrios envolvendo os prottipos a partir dos resultados de testes de usabilidade. Adotou-se uma metodologia de design interativo, segundo a qual os problemas e necessidades dos usurios foram resolvidos por aproximaes sucessivas em ciclos de design, envolvendo etapas de anlise da prtica dos usurios, prototipagem e testes de usabilidade. A Figura 14 apresenta as etapas principais dessa metodologia, descritas a seguir.

33

Testes de Usabilidade Criao dos prottipos Construo dos Cenrios Observao dos Usurios Figura 14. Etapas principais da metodologia.

7.2 Observao dos usurios


A produo de artefatos teis para usurios requer que os projetistas obtenham e entendam os requisitos dos usurios [MIL 1999]. Esses requisitos so os recursos de um produto, o fluxo de informaes, comportamentos e atributos [PET 2001]. A observao uma pesquisa feita na rea de trabalho, analisando situaes com o objetivo de compreender o contexto da atividade do usurio, descrevendo ambiente e interaes [MIL 1999], estudando-se pessoas na realizao de tarefas no seu cotidiano [BAR 1999]. O resultado dessa pesquisa ajudar o projetista a levantar os requisitos do usurio [MIL 1999] para o objeto em questo, propondo melhorias e mudanas efetivas, passando a entender o usurio, seu ambiente e como interage com ele. Tal atividade consistiu em analisar usurios utilizando um curso no formato ADL_ SCORM, observando seus comportamentos ao aprender distncia, suas dificuldades, acertos e decises tomadas no decorrer do processo.

7.2.1 Procedimentos
Para levantar os requisitos e testar se esses foram ou no atendidos, a observao de usurios se deu em dois momentos.

34

7.2.1.1 Observao Parte 1


Os usurios (alunos) foram observados utilizando o ambiente SCORM, tal qual foi instalado. Portanto, no h recursos de envio de dvidas. Esses mesmo alunos foram observados em um segundo momento, aps a criao do prottipo contemplando a gesto de contedo com o recurso para tirar dvidas. Procedimentos da Parte 1 Para alcanar essa etapa do processo foram seguidas as seguintes tarefas: 1. Criao e instalao de um curso no modelo SCORM; 2. Escolha dos alunos para participar da observao segundo alguns critrios descritos no tpico participantes; 3. Realizao da observao dos usurios; 4. Transcrio das observaes dos alunos, levantando requisitos a partir da anlise das informaes colhidas.

Criao e instalao de um curso no modelo SCORM


O curso com o ttulo Conectividade de Banco de Dados Java (disponvel no SCORM instalado) consiste em instruir o usurio como acessar um banco de dados por meio da linguagem Java. Contm apenas um mdulo dividido em: 1. O que JDBC? 2. Estudo de Caso; 3. Registrando o Banco de Dados; 4. Consultando Dados; 5. Lendo, Inserindo e atualizando Dados; 6. Dicionrio; 7. Bibliografia.

O Curso foi criado com o Microsoft FrontPageExpress [FPE 2005]. Utilizou-se o editor de cursos open source para o formato SCORM chamado Reload (Reusable eLearning Object Authoring & Delivery) [REL 2005] [SUA 2005], Figura 15, para criar e empacotar de forma 35

fcil e produtiva os arquivos necessrios para que o reconhecimento do curso pelo SCORM. Dentre esses arquivos est o XML manifest (estudado no tpico 4.5 Arquitetura do SCORM 2004). O pacote criado possui o nome scormjdbc.zip.

Figura 15. Uso do Reload para criao do curso modelo SCORM. Os requisitos mnimos exigidos para o curso criado so: Windows Bsico; Modelagem (UML); Banco de Dados Relacional; ODBC (Open Database Connectivity); SQL (Structured Query Language); POO (Programao Orientada a Objeto); Java Bsico. 36

Os recursos exigidos so: Intel Pentium II/450 MHZ ou melhor, 256 MB RAM; Windows: 9x, XP, 2000 ou 2003; J2SDK; Microsoft Access 97 ou 2000;

Participantes Foram escolhidos trs alunos do curso de Cincia da Computao da Faculdade de Cincias Aplicadas e Sociais de Petrolina FACAPE [FAC 2004]. Levou-se em considerao o conhecimento dos alunos em: (1) Windows Bsico, (2) modelagem de sistemas, (3) conceitos de banco de dados, (4) acesso ao banco de dados via ODBC, (5) comandos SQL, (6) Programao Orientada a Objeto e Java. Apenas alunos a partir do 5 perodo poderiam atender maioria dos requisitos. O resultado dessa seleo esto resumidos na Tabela 5. Tabela 5 - Caractersticas dos usurios que participaram dos testes.
Identificao Perodo Windows Bsico Aluno A Aluno B Aluno C 5 6 10 Sim Sim Sim Sim No Sim Modelagem Banco de Dados Sim No Sim No No No No No Sim Sim Sim Sim ODBC SQL POO e Java

Material Todos os alunos, em momentos diferentes, utilizaram para realizar o estudo uma mquina com o sistema operacional Windows XP, com acesso Internet e j configurada com o: J2SDK, Editor de Texto para Java e Microsoft Access. Todos foram colocados diante do ambiente ADL SCORM j preparado para o estudo. Transcrio

37

Os registros obtidos dos alunos esto intercalados no texto em formato itlico e foram colhidos aps o trabalho de observao. Esse resultado est com o ttulo Resultados da Observao Parte 1. Os requisitos levantados por meio da observao so identificados assim: REQO (REQuisito de Observao) ou REQM (REQuisito de Material). Eles sero mais bem detalhados no item Resultados da Observao.

7.2.1.2 Observao Parte 2


Os mesmos alunos, que tiveram seus relatos registrados na primeira etapa da observao, foram novamente observados, utilizando um prottipo funcional com o recurso para tirar dvidas. Procedimentos da Parte 2 Para alcanar a segunda etapa da observao foram seguidas as seguintes tarefas: 1. Instalao do prottipo funcionando com recurso para tirar dvidas; 2. Desenvolvimento de tarefas de observao dos alunos; 3. Avaliar se os requisitos levantados na primeira etapa da observao dos alunos foram contemplados.

7.3 Cenrios
Cenrios so textos ou narrativas sobre pessoas e suas atividades [CAR 2000], criadas com o intuito de apresentar o conceito de novos produtos. Essa construo textual permite inseri-los dentro de uma situao plausvel mesmo que hipottica, identificar potenciais problemas, antecipar necessidades e at propor solues alternativas para os problemas levantados [BD 2000]. Com a tcnica de cenrios, problemas de interao podem ser identificados antes mesmo do incio da implementao da soluo, evitando que um artefato seja implantado com debilidades que s sero detectadas quando o usurio estiver utilizando. Assim, consegue-se provocar novas idias ou avaliar os prottipos.

38

Existem vrios tipos de cenrios. Segundo Bdker [BD 2000], cenrios positivos e negativos podem ser criados, contendo extremos do trabalho cotidiano do usurio. Apresentando esses cenrios aos usurios, podem refletir sobre sua prtica e informar o que se espera e o que no se espera da soluo que est sendo construda [CAR 2000]. Cenrios podem ser utilizados, ento, como veculos de comunicao entre membros da equipe de desenvolvimento e usurios. Os elementos caractersticos de um cenrio so [CAR 2000]: O ambiente: descreve um estado inicial para o episdio a ser descrito, descrevendo tanto o ambiente fisicamente, quanto s pessoas nele presentes. Atores ou agentes: uma ou mais pessoas com algum objetivo especfico, interagem com o ambiente influenciando e sendo influenciados. O roteiro: seqncia de aes e eventos, o que fazem os atores e que mudanas acontecem no ambiente. No decorrer do roteiro, decises so tomadas pelo ator e esse pode ou no alcanar seus objetivos. A partir das dificuldades identificadas por meio da reviso da literatura, anlise de competidores e observaes dos usurios, foram elaborados cenrios sobre a prtica de alunos e professores, utilizando ambientes contendo gesto de contedo. Buscou-se, nos cenrios, envolver e analisar os requisitos levantados. Os cenrios de Gesto de Contedo com Ambientes de Ensino Distncia foram construdos em dois momentos.

7.3.1 Cenrios Parte 1


Foram criados cenrios de situao atual, ou seja, antes da criao dos prottipos, aps a observao dos usurios. Tais cenrios, segundo Bdker [BD 2000], descrevem situaes especficas do domnio que est sendo pesquisado, ou seja, como o usurio executa suas tarefas num determinado momento. So muito teis tambm na comunicao entre projetistas (designers) e engenheiros de softwares porque auxiliam na criao de solues, bem no alcance de uma melhor usabilidade no artefato final. Cenrios foram aqui utilizados como uma etapa da implementao tcnica (ou modelagem), apresentando ou situando um problema [BD 2000].

39

A construo de cenrios, no primeiro momento, tem como objetivo, ento, descrever situaes que podero ser vividas pelos usurios (professor e aluno) de LMS cuja soluo no contemple os requisitos levantados para gesto de contedo (reutilizao de objetos de aprendizagem e recurso para tirar dvidas). Os dois cenrios so: Cenrio 1.1 - Criao de curso por parte do professor; Cenrio 1.2 - Realizao de um curso por parte do aluno.

7.3.2 Cenrios Parte 2


Foram criados cenrios de situao futura, ou seja, aps a prototipagem. Esses cenrios, segundo Bdker [BD 2000], so utilizados para avaliao de prottipos, assegurando sua devida qualidade [ROY 1995]. Contm, em seus roteiros, situaes nas quais o usurio lida com o futuro artefato, representado por prottipos. Os cenrios construdos, nessa etapa, descrevem usurios realizando suas tarefas de aprendizagem distncia utilizando um artefato que contemple os requisitos de gesto de contedo levantados. Os dois cenrios so: Cenrios 2.1 - Criao de curso por parte do professor; Cenrios 2.2 - Realizao de um curso por parte do aluno.

7.4 Prototipagem de baixa fidelidade


Essa etapa da metodologia visa criar parte do prottipo de um ambiente virtual de ensino Amadeus_MM. O Projeto AMADeUs baseia-se no princpio de que a avaliao do aprendizado multi-dimensional importante para a construo de um melhor desenvolvimento do estudante. Visa oferecer suporte para o aluno e tambm para o professor num processo de aprendizagem, colocando, em contato, alunos com alunos e alunos com professores, mediando esse processo. O ambiente baseia-se na idia de fluxo de trabalho, que permite visualizar e avaliar o que est sendo feito em diferentes estgios do projeto. A idia prover ferramentas para avaliao de tarefas, monitorao de grupos, interao e avaliao do processo de aprendizado. A prototipagem permite que se crie componentes selecionados do sistema, sem todas as funcionalidades desejadas, com o objetivo de avaliar, com os usurios finais, partes do 40

ambiente [PRE 1995]. Essa avaliao dar-se- baseada nos requisitos j levantados, evitando, assim, incorrer em problemas essenciais ou conceituais [PET 2001]. Prototipagem prtica comum de fabricao, design de produtos, engenharia e desenvolvimento de software que tem se mostrado til para economizar tempo, dinheiro, pois evita o re-trabalho [ROS 2002]. Segundo Pressman [PRE 1995] softwares que usem de telas dinmicas e tenham forte interao com o ser humano so bons candidatos prototipagem. A cada avaliao do usurio final, o prottipo vai sendo aprimorado. Isso prov condies para que o usurio possa tomar decises quanto s suas exigncias em tempo oportuno, sugerindo alteraes que atendam melhor s suas necessidades [PRE 1995]. O prottipo revela, assim, a estrutura conceitual do produto, permitindo, ao desenvolvedor, testar a sua consistncia e aceitao com os usurios [PET 2001]. Ainda que a implementao de um prottipo no seja prtica, computacionalmente falando, pode-se criar prottipos em papel, que descrevam a interao humano-mquina, usando storyboard. Storyboards representam telas do sistema (podendo conter textos narrativos), descrevendo a interao entre a mquina e o usurio [PRE 1995]. O usurio, ao avaliar as telas, conforme solicitado em roteiros pr-definidos, tm uma perspectiva do funcionamento do software. So prottipos de baixa fidelidade [SNY 2003]. Prottipos foram gerados com base nos requisitos gerais (REQG). Em seguida foram realizados testes de aceitao. Os usurios avaliaram os prottipos em papel, fazendo observaes. Os prottipos funcionais, implementados por meio de linguagem de programao, foram utilizados pelos usurios que foram observados utilizando-os. Suas observaes foram teis no tocante funcionalidade e usabilidade. A esse processo d-se o nome de design iterativo centrado no usurio. Os prottipos 1, 2 e 3 cobrem os requisitos REQG02, REQG03 e REQG04. O prottipo 4 cobre o requisito REQG01. Aps a criao do prottipo 3, esse foi submetido nova observao (parte 2) por parte dos mesmos alunos escolhidos na observao parte 1. Tanto o prottipo 3, quanto o prottipo 4 foram envolvidos na etapa Cenrios parte 2, como j descrita anteriormente.

41

7.5 Anlise das tarefas e Teste de usabilidade dos prottipos


Segundo Leite [LEI 2001], a tecnologia deve ser empregada para aumentar, em vez de substituir, as habilidades dos usurios. O objetivo da usabilidade explorar ao mximo as habilidades dos usurios, criando ambientes de trabalho mais eficazes e produtivos. Alm de minimizar o esforo dos usurios para utilizar o produto, a usabilidade busca, principalmente, a qualidade da interao do ambiente com os usurios [LEI 2001]. A interface do ambiente surge, ento, como um aspecto crucial para se atingir sucesso com sistemas de gerncia de conhecimento. Os menores problemas de usabilidade podem desmotivar os usurios, afetando o uso e o sucesso do ambiente proposto [NAT 2005]. Segundo Leite [LEI 2001], o teste de usabilidade a oportunidade para verificar se: Facilmente o usurio aprende a utilizar os recursos do produto; O produto exige tempo e esforos mnimos para se realizar uma tarefa (desempenho); H flexibilidade e o usurio tem a possibilidade de utilizar o sistema de forma inteligente e criativa, realizando um maior nmero de tarefas com as mesmas funes e comandos do sistema, ou realizando tarefas que no estavam previstas pelos desenvolvedores; H produtividade, ou seja o usurio mais produtivo do que seria se no utilizasse o sistema. Para realizar o teste de usabilidade foi utilizada a Anlise de Tarefa. A Anlise da Tarefa muito essencial para o design do sistema. Essa anlise procura identificar os objetivos do usurio, suas tarefas, que estratgias utiliza para alcanar esses objetivos, como o usurio lida com emergncias, que ferramentas utiliza, que problemas ele encontra [NIE 1993] [IBM 2001]. Para uma implementao eficaz das aes disponveis para o usurio, dentro do ambiente, deve-se entender como o usurio realiza suas tarefas no seu universo real. Dessa forma, o projetista pode ento ter uma viso da aplicao sob a perspectiva do usurio, ou seja, um modelo das tarefas do usurio executando a aplicao [LEI 1999]. Assim o projetista pode, 42

por exemplo, analisar a freqncia de uma tarefa e decidir por prover ao usurio um wizard para que ele realize aquela tarefa de forma mais confortvel [IBM 2001]. As tarefas macros, ou de alto nvel, so decompostas em tarefas intermedirias at se chegar a passos mnimos e individuais. As tarefas esto, portanto, hierarquicamente montadas de um nvel mais alto para um nvel mais baixo [SHN 1998]. Aps o estudo dessa decomposio, o projetista pode criar representaes metafricas para a interface. O usurio precisa reconhecer nas opes disponveis na interface, os passos que ele mesmo daria ao realizar uma tarefa sem o uso da interface. A definio da quantidade de passos que o usurio precisa executar para realizar uma determinada tarefa deve ser feita de modo cuidadoso. O usurio pode ficar frustrado com uma interface que exija dele uma grande quantidade de passos para realizar algo [SHN 1998]. Porm, uma quantidade de passos reduzida de forma inadequada pode comprometer a utilidade da ferramenta. A escolha mais apropriada uma tarefa difcil [SHN 1998], sendo auxiliada pelo teste de usabilidade. Para a anlise da tarefa utilizou-se o Euterpe, que uma ferramenta til na implementao do mtodo de anlise de tarefa, usado para modelar ambientes nos quais pessoas interagem com o uso de sistemas [GTA 2004]. Essa ferramenta permite que se realize a anlise de tarefa de forma hierrquica. Os elementos na anlise da tarefa so [VEE 1998]: 1. Agentes pessoas que se relacionam com a tarefa. Por exemplo: indivduos, grupo de indivduos e componentes de softwares. Agentes no identificam indivduos especficos, mas classes de indivduos com uma determinada caracterstica. Exemplo: professor, aluno; 2. Objetivo - o que o agente intenciona fazer ou alcanar. Por exemplo: Enviar uma dvida; 3. Tarefa seqncia de etapas ou passos que o agente precisa realizar para alcanar um objetivo. Essas tarefas podem ser fracionadas em sub-tarefas, e essas, por sua vez, em subtarefas e assim por diante; 4. Ao - o ltimo passo a ser realizado na seqncia de tarefas e sub-tarefas. Por exemplo: mover, mudar, desligar, clicar;

43

5. Objeto Algo relevante no que est sendo analisado como: mensagens, senhas, labels (rtulos), representaes grficas, botes etc. Objetos so manipulados no nvel da ao, ou seja, onde seu estado alterado; 6. Ambiente situao do meio, no qual estar descrito como se encontrava antes e como se encontra depois da execuo da tarefa por parte do agente. Exemplo: alteraes grficas em objetos. Foi realizada a anlise da tarefa dos prottipos 3 e 4.

44

8 RESULTADOS
Aps a execuo da metodologia, descreve-se os resultados obtidos em cada etapa.

8.1 Resultados da Observao Parte 1


Os alunos selecionados foram observados e alguns requisitos de ambiente foram levantados com esse procedimento. O requisito abordado nesse estudo recebeu a identificao REQO (REQuisito de Observao). Os requisitos, REQM (REQuisito de Material), no sero tratados nesse estudo, sero referenciados na Tabela 6 na qual breves solues so propostas.

8.1.1 Requisitos de Observao e de Material

1. [REQM01] Presena de Conceitos bsicos (ou dicionrio). Alguns usurios preferem absorver os conceitos necessrios para desenvolver o curso antes de realiz-lo, como o Aluno A que Clicou no hipertexto UML que o levou ao Dicionrio. Verificou o que havia escrito sobre o tpico e clicou no hiperlink UML que o levou pgina oficial da UML.... O mesmo usurio requisitou que o dicionrio precisa ser bem detalhado para ajudar ao aluno. O Aluno C declarou que precisa ter uma boa divulgao da presena do dicionrio. 2. [REQM02] Opo que permita Viso Geral. Alguns usurios preferem ter um overview de todo o curso para terem idia de tudo que aprendero, a exemplo do Aluno A que analisou, rapidamente, a pgina inicial. Ao ser questionado do porqu declarou: Fiquei curioso por no conhecer o tema. O Aluno B sempre olhava de forma geral cada tpico antes de inici-lo. 3. [REQM03] Disponibilizao de material de curso completa e em partes. Enquanto alguns usurios preferem ir baixando o material medida que fazem o curso, outros preferem baixar todo o material de uma nica vez. O Aluno A declarou: Seria muito melhor uma opo para baixar todo o material. Pouparia muito tempo. Mas a opo de baixar partes do material deve ser mantida. O material a ser baixado tambm precisa vir pronto para o aluno utilizar. Assim declarou o Aluno A: O banco de dados j criado e os programas fontes j digitados e prontos s para baixar tambm ajudaram bastante. 45

Mas h tambm usurios, como o Aluno B, que declararam: Na realidade, prefiro eu mesmo digitar medida que vou fazendo o curso. Aprendo mais assim. O Aluno B resolveu baixar todo o material, mesmo com vrios cliques, e executar tudo previamente e declarou: Resolvo fazer assim para ter a certeza de que vou investir tempo em algo que vai de fato funcionar. No gosto de perder tempo estudando algo que no funciona depois. Era melhor at que houvesse uma forma de baixar s os executveis (os .class nesse caso). Por que a nem preciso compilar fontes, s executar e ver se est tudo funcionando. O aluno C declarou tambm: Seria muito bom ter, tambm, a opo para baixar tudo. 4. [REQM04] Organizao do curso. Alguns usurios seguiram risca as orientaes do curso, de forma que s criaro alguma pasta se o curso assim pedir. Assim declarou o Aluno A: Se tivesse essa orientao no curso, criaria uma pasta imediatamente. Como o curso no deixava isso claro, o mesmo Aluno A declarou: Tenho o costume de baixar na rea de Trabalho e organizar depois. E foi isso que fez. O Aluno C declarou, ao ser questionado sobre a no criao de uma pasta: O curso no pediu.... 5. [REQM05] Coerncia. O texto do curso e o material disponvel para ser baixado pelo aluno precisam ser idnticos, seno gera desconforto e dvida. Dois alunos observam isso, como fez o Aluno A: Em seguida clicou sobre o arquivo baixado que acionou o Microsoft Access. Conferiu o interior do banco de dados, vazio a princpio, e verificou que a estrutura a mesma que a apresentada no curso. O Aluno C tambm sentiu dificuldades porque, ao executar o exemplo, detectou que nenhum registro foi mostrado. Tentou novamente e obteve a mesma resposta negativa. O texto explicativo mostra uma tela com registros, porm o banco de dados fornecido estava vazio. 6. [REQM06] Presena de pr-requisitos. O curso precisa ser bastante claro quanto ao nvel de conhecimento necessrio para o aluno. O Aluno A declarou: Nunca usei o Microsoft Access. Precisa-se, previamente, informar ao aluno quais ferramentas sero necessrias e qual o nvel de conhecimento em cada uma delas. Tal nvel de conhecimento deve ser mais claro do que termos: bsico, mdio ou avanado. Necessita-se de informaes do tipo: O aluno deve conhecer para a ferramenta X os recursos de abrir novo documento, salvar, formatar etc. Essa situao fica clara na declarao do Aluno B: Senti dificuldades com o java porque no continuei estudando e praticando aps a disciplina de Programao Orientada a Objeto. Por isso me compliquei um pouco com 46

controle de exceo e a criao da GUI. O Aluno A declarou tambm: A lista de prrequisitos me ajudou a ter uma idia do que deveria j saber. 7. [REQM07] Informaes sobre ambiente no qual o curso foi criado. Informar em qual mquina e sistema operacional o curso foi criado tambm importante, bem como as variaes que o aluno pode encontrar ao usar outros sistemas operacionais. O Aluno A, ao realizar o tpico 3. Registrando o Banco de Dados, no conseguiu registrar o banco de dados no curso proposto. Abriu o Painel de Controle, voltou ao curso para ver mais instrues e voltou para o painel de controle. Executou essa operao vrias vezes, ficando completamente perdido. Ele no encontrou a opo Fontes de dados (ODBC) que o curso orientava estar no Painel de Controle porque, no Windows XP, essa opo fica numa sub-opo chamada Ferramentas de Sistema. O curso no mencionava esse detalhe no texto explicativo. O Aluno C declarou: Deveria haver informaes no curso para Sistemas Operacionais diferentes. O Aluno B tambm no conseguiu cumprir esse item. 8. [REQM08] Presena de telas. Alguns usurios preferem seguir telas a seguir textos explicativos. O aluno A realizou os passos do curso orientando-se mais pelas telas do que pelos textos explicativos. 9. [REQM09] Telas com resultados. Alguns usurios, como o Aluno A, preferem ... estudar todo o material e depois baixar os exemplos. necessrio, portanto, que telas de resultados das tarefas do curso sejam disponibilizadas para que o aluno possa comparar resultados corretos com os que ele ir obter. 10. [REQM10] Granularidade. O curso precisa ser dividido em partes pequenas para formar o seu todo. Tpicos muito extensos no so apreciados pelo aluno. Como declarou o Aluno B: Achei tambm o tpico Lendo, Inserindo e atualizando Dados muito grande. Devia ser reorganizado em tpicos menores. 11. [REQO01] Presena de opes para tirar dvida. Quando no conseguiu realizar a tarefa do item 7 [REQM07], o Aluno A ao ser questionado sobre o que deu vontade de fazer diante da situao de dvida, respondeu: No gostaria de resolver isso por e-mail porque a resposta pode demorar muito. Prefiro um meio online que possa me dar uma resposta mais instantnea. Foi perguntado ao Aluno A se, em uma aula tradicional, levantaria a mo, respondeu afirmativamente e com muita expresso. Na mesma situao o aluno B declarou: Num curso tradicional levantaria a mo imediatamente. Ao sentir 47

dvida, mais adiante no processo de estudo e ao ser questionado, o Aluno A declarou ... difcil tirar dvidas e continuo sentindo a necessidade de algum online para socorrer, Esse formato de curso precisa de um professor online. O Aluno C declarou Senti a necessidade de um professor num bate papo instantneo. O aluno tinha a informao disponvel, mas sentiu necessidade da instruo. Meios para tirar dvidas requisitados: E-mail; Bate papo online; Professor presencial.

A rvore de Atividades demonstrou ser muito til para acompanhamento do curso, mostrando sempre onde o aluno se encontrava. Esse recurso j faz parte do modelo SCORM. A rvore poder servir tambm como indicador de progresso para marcar onde o aluno ficou para quando quiser interromper o curso e retornar depois. No momento da observao do Aluno A, a conexo caiu por cinco minutos. O aluno ficou um pouco impaciente. Ao voltar a conexo, o aluno se perdeu e demorou um pouco para encontrar onde havia parado. Precisa-se ter tambm uma opo para exibir e ocultar a rvore de Atividades quando o usurio precisar. Dessa forma o aluno ganhar mais espao para fazer o curso. O Aluno B arrastou as barras verticais, diminuindo a rea com a rvore de Atividades e ganhando espao na rea de visualizao do curso. Outras declaraes: Aluno A - O fato de fazer o curso dessa maneira, em vez de usar um livro,

melhor porque j encontro tudo num nico lugar. Apesar de achar o assunto complicado aprendi muito. Estava com receio de no conseguir. Aluno B - Como deu tudo certo, fiquei muito satisfeito com isso. Aluno C Aprendi o suficiente para realizar o mesmo processo com outra

base em um outro estudo de caso. Depende agora s da modelagem e de novos comandos SQL. Apesar do assunto, e cdigo fonte, serem complicados entendi a conexo. Estou muito satisfeito. 48

A Tabela 6 sugere solues para os REQM (REQuisito de Material). Esses requisitos esto em conformidade com a quarta caracterstica bsica de um LMS levantada no tpico 3.2 SISTEMAS DE GESTO DE CONTEDO, no tocante a organizao dessas informaes de forma que o aluno encontre facilmente o que precisa. Tabela 6. Sugestes para tratamento de Requisitos de Material (REQM). Requisito REQM01 Soluo proposta O professor pode fazer um dicionrio a partir de objetos de aprendizagem com termos e sua devida explicao, de forma que possam ser reutilizados REQM02 A rvore de Atividades pode auxiliar nesse ponto, porque mostra os tpicos do curso. Pode-se implementar uma opo para expandir todos os objetos de aprendizagem (ns) da rvore e recolh-los. REQM03 Ao criar o curso, o professor pode colocar links disponibilizando o material a ser baixado no decorrer do curso. Um link geral, no comeo e/ou final do curso, pode ser disponibilizado para baixar tudo de uma nica vez. Esses materiais podem ser objetos de aprendizagem reutilizveis. REQM04 O professor deve evitar suprimir pequenos passos que julgue que o aluno conhea. Pode tambm listar passos gerais, para usurios experientes e, para cada passo geral, mostrar sub-passos necessrios para que alunos iniciantes possam completar a atividade. Esses passos gerais podem ser passos gerais, objetos de aprendizagem maiores, contendo sub-passos, objetos de aprendizagem 49

menores. REQM05 O professor deve ter o cuidado de

disponibilizar o material para download, contendo o mesmo contedo exposto no curso. REQM06 Disponibilizar de forma clara e detalhada os requisitos necessrios para a realizao do curso. Esses requisitos podem ser objetos de aprendizagem reutilizveis. REQM07 O professor precisa deixar claro qual ambiente utilizou na criao do curso. Uma lista de ambientes e ferramentas pode ser criada em forma de objetos de aprendizagem, para que seja recombinada e reutilizada. Sempre que possvel, orientaes diferentes podem acompanhar o material, orientando o aluno, caso ele use um ambiente ou ferramenta equivalente ao utilizado no curso. REQM08 O professor pode colocar telas e textos explicativos. Podem ser objetos de aprendizagem diferentes e combinados para formar a explicao. Pode-se oferecer ao aluno opo de ter ambos, telas e textos, ou apenas um ou outro. REQM09 Alm do REQM08 (telas explicativas) esse requisito pode ser atendido, colocando telas mostrando resultados finais de atividades. Assim, o aluno pode ver como ficar o ambiente/ferramenta aps a execuo dos passos, recurso muito til quando no se tem a ferramenta instalada para se observar 50

resultados. Essas telas tambm podem ser objetos de aprendizagem contendo estados finais de processos, que tambm podem ser reutilizados. REQM10 Os objetos de aprendizagem pequenos atendem que,

perfeitamente a esse requisito. O curso montado com objetos reunidos, formam objetos maiores. Os objetos, grandes e pequenos, podem ser reutilizados.

Nota-se que a necessidade do requisito geral REQG03, presena de meio para retirar dvida, foi confirmado pelo requisito de observao REQO01.

8.2 Cenrios Parte 1


8.2.1 Gesto de Contedo Situao Atual
Sero aqui criados dois cenrios cujo objetivo descrever a situao atual, ou seja, usurios (professor e aluno) utilizando LMS sem que os requisitos levantados nessa pesquisa, como reuso de objetos de aprendizagem e recurso para tirar dvidas, estejam presentes nesses ambientes.

8.2.1.1 Cenrio 1.1 - Criao de curso por parte do professor Este cenrio descreve uma situao na qual um professor utiliza um ambiente sem o requisito REQG01 (reutilizao de contedo). Ator: Professor, cujo objetivo criar um novo curso. Ambiente: Ambiente Virtual de Ensino com suporte ao modelo SCORM. H um computador conectado Internet executando um Ambiente Virtual de Ensino utilizado para intermediar o processo de ensino distncia. O professor est devidamente cadastrado no ambiente.

51

Roteiro: O professor deseja criar um novo curso no ambiente. Verifica que partes do novo curso j existem em outros cursos, no mesmo ambiente, de sua propriedade ou de propriedade de outros professores. Para realizar essa montagem, precisa de um editor de cursos SCORM, como o Reload e, tambm, dos arquivos originais de cada curso. Com esse contedo, ele poderia remontar o curso no editor, criar um novo pacote e importar no ambiente. Porm o professor no dispe dos originais dos cursos dos outros professores. Resolve, ento, refazer todo o curso, aproveitando os seus arquivos originais e criando o contedo que j existia no curso de outros professores. No houve como reutilizar nem o seu prprio material de forma fcil e produtiva.

8.2.1.2 Cenrio 1.2 - Realizao de um curso por parte do aluno


Este cenrio descreve uma situao na qual um aluno utiliza um ambiente sem os requisitos REQG03 e REQG04 (recursos para tirar dvida). Ator: Professor e Aluno. Ambiente: Ambiente Virtual de Ensino. H um computador conectado Internet executando um Ambiente Virtual de Ensino. Esse ambiente utilizado para intermediar o processo de ensino distncia. O professor e o aluno esto devidamente cadastrados no ambiente. Roteiro: Aluno escolhe um curso, modelo SCORM, que deseja realizar. Na tela principal, apresenta a rvore de Atividades, esquerda, e a tela de contedo, direita. medida que clica nos itens da rvore, o contedo vai sendo apresentado. Em um determinado tpico, no consegue entender o contedo. O ambiente no oferece opo para tirar dvida. Procura um e-mail para pedir ajuda e no encontra no ambiente. Consegue o endereo para contatos em suas anotaes pessoais e envia um e-mail explicando a dvida e em qual tpico ela est. Aguarda ansioso pela resposta. Resolve dar uma pausa no curso enquanto no remover essa dvida. Professor recebe e-mail de dvida de aluno e acessa o ambiente. No consegue descobrir com rapidez de qual curso e de qual item especfico aquela dvida. Precisa vasculhar o material para descobrir isso. Quando encontra, recorre a ferramenta de e-mail para responder a dvida do aluno. O ambiente no registra nada disso e, futuramente, a mesma dvida pode se repetir para outro ou at para o mesmo aluno. Professor no tem, no ambiente, um histrico de dvidas de alunos, o que dificulta a avaliao do rendimento e interesse deles. 52

Resultado destes Cenrios O ambiente deve prover facilidade para que o usurio, ainda que novato, use os recursos do sistema. Tanto professores devem sentir conforto no processo de reuso de objetos de aprendizagem, quando alunos devem sentir facilidade para registrar suas dvidas e obter suas respostas. A interface deve permitir que os usurios visualizem e naveguem pelo conhecimento.

8.3 Prototipagem de baixa fidelidade

Tarefa para os prottipos 1, 2 e 3: Ciclo de Registro de Dvida. Ator: Aluno e professor do curso Objetivo: Realizar um curso e registrar uma dvida para o professor Descrio: O aluno clica no item da rvore de Atividades com o boto auxiliar do mouse. Aciona o menu de contexto e registra a dvida. Quando a dvida respondida pelo professor, o aluno aciona o menu de contexto e registra a cincia da resposta. Seu percurso vai sendo registrado sem que esse perceba. Sub-tarefas: Registro de Percurso pelo sistema; Registro de Dvida pelo Aluno; Registro de Resposta da Dvida pelo Professor; Registro de Cincia da Dvida pelo Aluno.

Sucesso da tarefa: Exibio da mensagem Dvida Registrada com Sucesso. Falha: Quando o campo obrigatrio do texto da dvida deixa de ser preenchido, exibe-se a mensagem Campo dvida no preenchido. Esses prottipos visam atender aos requisitos: REQG02, REQG03 e REQG04. 53

8.3.1 Prottipo de Baixa Fidelidade 1 Gerao de dvidas


O prottipo 1 foi criado montando telas sobre as prprias telas do ambiente ADL SCORM. As telas montadas foram impressas para avaliao dos usurios. Visa a descrever os passos necessrios para o registro de dvida por parte do aluno [REQG03]. As Figura 16 e 17 mostram os prottipos criados.

Figura 16. Prottipo de baixa fidelidade 1: Registrando Dvida.

Figura 17. Prottipo de baixa fidelidade 1: Dvida Enviada.

8.3.2 Prottipo de baixa fidelidade 2 Gerao de dvida


Aps observaes do usurio ao primeiro prottipo, criou-se o prottipo 2, inteiramente funcional, ou seja, no h apenas telas estticas, mas um completo acesso ao banco de dados SCORM em processos de leitura e gravao. Como os cdigos fonte necessrios para criar um prottipo funcional no estavam 100% disponveis para alterao no modelo SCORM adquirido, esse prottipo foi implementado com componentes Java: JApplet para permitir execuo via browser; 54

JTree que mostra o curso em forma de rvore de Atividades; JEditorPane que mostra o contedo do curso em formato HTML.

Em destaque (portugus e negrito) no Diagrama 2, as alteraes necessrias na base SCORM para implementao desse prottipo.

55

TBItemInfo TBCourseInfo CourseID CourseTitle Active ImportDataTime 1 TBDuvida 0..* UserID CourseID ItemIdentifier DuvidaID Duvida DataTimeDuvida Resposta 0..* 1 1 0..* 1 0..* 0..* 0..* TBPercurso UserID CourseID ItemIdentifier DataTime 1 0..* 1 CourseID OrganizationIndentifier ItemIdentifier ResourceIdentifier Launch Type Title 1

TBUserCourseInfo UserID CourseID

TBUserInfo UserID LastName FirstName Admin Password Active Professor

Diagrama 2. Alteraes no Diagrama de Classe do modelo SCORM.

56

Descrio das alteraes necessrias: Professor: Atributo adicionado Tabela TBUserInfo identificando a entidade como professor, alm de usurio. TBDuvida: Tabela adicionada para armazenar as dvidas geradas pelo aluno. Contm os seguintes atributos: UserID: Identificao do Aluno; CourseID: Identificao do Curso do Aluno; ItemIdentifier: Identificao do Tpico da rvore de Atividades; DuvidaID: Identificao da dvida; Duvida: Texto da dvida; DataTimeDuvida: Data e hora de registro da dvida; Resposta: Texto de resposta do professor; DataTimeResposta: Data e hora de registro da resposta; DataTimeCiente: Data e hora de registro que o aluno toma cincia da resposta. TBPercurso: Tabela adicionada para armazenar o percurso feito pelo aluno ao realizar o curso. Contm os seguintes atributos: UserID: Identificao do Aluno; CourseID: Identificao do Curso do Aluno; ItemIdentifier: Identificao do Tpico da rvore de Atividades; DataTime: Data e hora de registro do tpico. No Anexo IV encontra-se o script completo de alterao da base de dados SCORM.

57

Registro do Percurso medida que o aluno escolhe clicando nos objetos de aprendizagem, um registro vai sendo adicionado na tabela TBPercurso [REQG02]. O professor e o prprio aluno podem acessar esses registros e retirar concluses a partir dele. Registro de Dvida O Aluno poder gerar tambm vrias dvidas para o mesmo tpico de um curso [REQG03], alm de poder fazer vrios cursos, com diferentes professores ou no. Quando uma dvida registrada no ambiente de gesto de contedo (Figura 18), um smbolo de interrogao aparece para o professor e para o aluno, indicando que h uma dvida naquele tpico. A Figura 19 mostra uma dvida sendo digitada para ser registrada no ambiente de gesto de contedo.

Figura 18. Prottipo Funcional: Registrar Dvida.

Figura 19. Prottipo Funcional: Enviando Dvida. No Anexo V encontra-se o cdigo-fonte completo contendo a implementao desse prottipo. O prottipo 3 detalha o funcionamento do prottipo 2.

58

8.3.3 Prottipo de Baixa Fidelidade 3 Gerao de dvidas


Aps reviso do segundo prottipo pelo usurio, integrou-se esse prottipo com as telas do Amadeus (Figura 20) gerando o prottipo 3. Figura 20. Tela Principal do Amadeus. Escolhendo um Curso.

Aps acessar um curso Java e banco de dados, obtm-se a tela seguinte (Figura 21) na qual o curso escolhido carregado segundo a estrutura de gesto de contedo. Figura 21. Curso carregado segundo a estrutura de gesto de contedo

Registro de Percurso

59

Quando o aluno clica num item, objeto de aprendizagem, essa informao registrada na tabela TBPercurso [REQG02], como na Figura 21, o aluno clica em 3. Registrando um Banco de Dados, cuja identificao ITEM-E2EC19DB-4A5D-BFA4-3ED578853AE8B41C, adicionando-se tabela de percurso esse registro. Parte do cdigo executado para se registrar o percurso : String resp = Biblioteca.executeSQL(CreateTree.this.connection, "INSERT INTO PERCURSO " +" (UserID, CourseID, ItemIdentifier, " + " DateTime) " + " VALUES ('" + CreateTree.this.userId+"','" + CreateTree.this.nomeCurso+"','" +ItemIdentifier+"','" + Biblioteca.datetoSql ((new java.util.Date ()).toLocaleString ()) +"');");

Assim insere-se na tabela de percurso: a identificao do usurio que clicou no item (CreateTree.this.userId), a identificao do curso que ele est fazendo (CreateTree.this.nomeCurso), a identificao do item no qual ele est com dvida (ItemIdentifier) e o momento, data e hora, do registro (Biblioteca.datetoSql ((new java.util.Date ()).toLocaleString ())). A Tabela 7 mostra o registro do percurso gravado na tabela TBPercurso. Tabela 7. Registro de percurso na Tabela TBPercurso.
UserID Joe CourseID Course-3 ItemIdentifier ITEM-E2EC19DB4A5D-BFA4-3ED578853AE8B41C DateTime 27/06/2005 17:10:12

Registro de Dvida A Figura 22 identifica, tambm, o processo de registro de uma dvida por parte do aluno [REQG03]. Para registra-la, o aluno clica no objeto no qual ficou com dvida, aciona o menu 60

de contexto e escolhe a opo Registrar Dvida. Preenche o espao que foi habilitado e clica no boto Registrar. A dvida registrada para o item 3. Registrando um Banco de Dados.

Figura 22. Aluno registrando uma dvida em um item de um curso. Parte do cdigo executado quando o boto Registrar acionado: String resp = Biblioteca.executeSQL(CreateTree.this.connection, "INSERT INTO DUVIDA " +" (UserID, CourseID,ItemIdentifier, " + // DuvidaId Autonumerao "Duvida, DateTimeDuvida) " + // Resposta, DateTimeResposta, DateTimeCiente " VALUES ('" + CreateTree.this.userId+"','" + CreateTree.this.nomeCurso+"','" +ItemIdentifier+"','" + duvidaTextArea.getText()+"','" + Biblioteca.datetoSql ((new java.util.Date ()).toLocaleString ()) +"');"); Assim, insere-se na tabela de dvidas: a identificao do usurio que est registrando a dvida (CreateTree.this.userId), a identificao do curso que ele est fazendo 61

(CreateTree.this.nomeCurso), a identificao do item no qual ele est com dvida (ItemIdentifier), o atributo de identificao da dvida (DuvidaId) autonumerado, o texto da dvida (duvidaTextArea.getText()) e o momento, data e hora, do registro (Biblioteca.datetoSql ((new java.util.Date ()).toLocaleString ())). A Tabela 8 mostra o registro da dvida gravado na tabela TBDuvida. Tabela 8. Registro da Dvida na Tabela TBDuvida.
UserID Joe CourseID Course-3 ItemIdentifier ITEM-E2EC19DB4A5D-BFA4-3ED578853AE8B41C Resposta DateTimeResposta DuvidaId 1 Duvida DateTimeDuvida

Professor. No consigo registrar 27/06/2005 17:16:24 o banco de dados. Estou usando o Windows XP.

DateTimeCiente

Quando a dvida registrada, um sinal de ? aparece (Figura 23) indicando que h uma dvida nesse item. Essa dvida vista pelo professor, podendo ser ento respondida. Registro de Resposta da Dvida Quando o professor entra no ambiente, ou enquanto est navegando, ele pode expandir todos os objetos da rvore de Atividades. Havendo uma dvida para um terminado item (ItemIdentifier), ou seja, se o atributo DataTimeDuvida est preenchido e se o atributo DataTimeCiente est nulo, verifica-se ento se essa dvida tem ou no resposta. Se o atributo DateTimeResposta estiver nulo ela ainda no tem resposta. Ento o sinal de ? exibido. Parte do cdigo executado para identificar se h uma dvida para um item determinado: this.resultSet = Biblioteca.getResultSet (this.connection, "SELECT Duvida.DateTimeDuvida, Duvida.DateTimeResposta, "+ "Duvida.DateTimeCiente FROM Duvida where UserId = '" + this.userId + "' AND " + "CourseID = '" + this.nomeCurso + "' AND " +"ItemIdentifier = '" + ItemIdentifier +

62

"' AND DateTimeCiente Is null and DateTimeDuvida Is not null"); Para responder a dvida (Figura 23), o professor clica no item e aciona o menu de contexto [REQG04]. Escolhe a opo Responder Dvida, l e preenche o espao que foi habilitado, colocando a resposta. Clica, enfim, no boto Responder. A resposta ento registrada na tabela TBDuvida.

Figura 23. Professor respondendo uma dvida de um item de um curso. Parte do cdigo executado quando o boto Responder acionado: "UPDATE DUVIDA SET Resposta = '" + respostaDuvidaTextArea.getText()+ "', DateTimeResposta = '" + Biblioteca.datetoSql ((new java.util.Date ()).toLocaleString ()) + "' where UserId = '" + CreateTree.this.userId + "' AND CourseID = '" + CreateTree.this.nomeCurso + "' AND ItemIdentifier = '" + ItemIdentifier + "' AND DuvidaId = " + CreateTree.this.DuvidaId);

63

Assim, altera-se na tabela de dvida: a resposta do professor para aquele item especfico (respostaDuvidaTextArea.getText()) e o momento, data e hora, do registro da resposta (Biblioteca.datetoSql ((new java.util.Date ()).toLocaleString ())). A Tabela 9 mostra a alterao do registro da dvida gravando a resposta do professor. Tabela 9. Registro da resposta da dvida.
UserID Joe CourseID Course-3 ItemIdentifier ITEM-E2EC19DB4A5D-BFA4-3ED578853AE8B41C Resposta No Windows XP a opo Fontes de Dados fica numa sub-opo Controle do Painel de chamada DateTimeResposta 27/06/2005 17:25:00 DuvidaId 1 Duvida Professor. No consigo registrar o banco de dados. Estou usando o Windows XP. DateTimeCiente DateTimeDuvida 27/06/2005 17:16:24

Ferramentas de Sistema

Registro de Cincia da Dvida Quando o aluno entra no ambiente, ou enquanto est estudando, ele pode expandir todos os objetos da rvore de Atividades. Havendo uma dvida para um terminado item (ItemIdentifier), ou seja, se o atributo DataTimeDuvida est preenchido e se o atributo DataTimeCiente est nulo, verifica-se ento se essa dvida tem ou no resposta. Se o atributo DateTimeResposta est preenchido, h uma resposta para a dvida. Ento, o sinal de ! exibido [REQG03]. Para ver a resposta, o aluno (Figura 24) clica no item desejado e aciona o menu de contexto. Escolhe a opo Mostrar Dvida para ver a dvida e a resposta do professor. Aps ver a resposta, o aluno pode clicar no boto Ciente para remover o sinal de !. Assim, o item volta ao seu estado original, ou seja, sem nenhum sinal de ? ou !.

64

Figura 24. Aluno tomando cincia da resposta do professor para um item de um curso.

Parte do cdigo executado para identificar se h uma resposta a uma dvida para um item determinado: this.resultSet = Biblioteca.getResultSet (this.connection, "SELECT Duvida.DateTimeDuvida, Duvida.DateTimeResposta, "+ "Duvida.DateTimeCiente FROM Duvida where UserId = '" + this.userId + "' AND " + "CourseID = '" + this.nomeCurso + "' AND " +"ItemIdentifier = '" + ItemIdentifier + "' AND DateTimeCiente Is null and DateTimeDuvida Is not null"); Parte do cdigo executado quando o boto Ciente acionado: String resp = Biblioteca.executeSQL(CreateTree.this.connection, "UPDATE DUVIDA SET DateTimeCiente = '" + Biblioteca.datetoSql ((new java.util.Date ()).toLocaleString ()) + "' where UserId = '" + CreateTree.this.userId + "' AND CourseID = '" + CreateTree.this.nomeCurso + "' AND ItemIdentifier = '" + ItemIdentifier + "' AND DuvidaId = " + CreateTree.this.DuvidaId);

65

Assim, altera-se na tabela de dvida para aquele item especfico: momento, data e hora, da cincia do aluno (Biblioteca.datetoSql ((new java.util.Date ()).toLocaleString ())). A Tabela 10 apresenta a alterao do registro da dvida, gravando a cincia da resposta da dvida por parte do aluno. Tabela 10. Registro da cincia do aluno resposta da dvida.
UserID Joe CourseID Course-3 ItemIdentifier ITEM-E2EC19DB4A5D-BFA4-3ED578853AE8B41C Resposta No Windows XP a opo Fontes de Dados fica numa subopo do Painel de Controle chamada Sistema Ferramentas de DateTimeResposta 27/06/2005 17:25:00 DuvidaId 1 Duvida Professor. No consigo registrar o banco de dados. Estou usando o Windows XP. DateTimeCiente 27/06/2005 17:30:42 DateTimeDuvida 27/06/2005 17:16:24

Conclui-se, assim, o ciclo de: registro dvida pelo aluno, resposta do professor e cincia do aluno. Obviamente outros ciclos, para o mesmo item, podem ser iniciados, mesmo havendo algum ciclo para aquele mesmo item ainda em aberto, ou seja, o aluno pode gerar quantas dvidas desejar para o mesmo objeto de aprendizagem.

8.3.4 Prottipo de Baixa Fidelidade 4 Reuso de objetos de aprendizagem


Este prottipo visa atender gesto de contedo por parte do professor, possibilitando que esse crie novos cursos, reutilizando objetos de aprendizagem [REQG01]. Tarefa: Criao de um novo curso. Ator: Professor. Objetivo: Criar um novo curso reutilizando partes de outros cursos do repositrio. Descrio: Manipular objetos de aprendizagem, incluindo ou excluindo-os, formando um novo curso. 66

Sub-tarefas: Criao de um novo curso; Adio de um novo objeto de aprendizagem em um curso; Remoo de um objeto de aprendizagem de um curso.

Sucesso da tarefa: Curso novo montado a partir de outros cursos do repositrio. Falha: No conseguir encontrar e arrastar objetos de aprendizagem de um curso para outro. Criao de um novo curso O professor precisa montar cursos a partir de objetos de aprendizagem j existentes em outros cursos. Essa tarefa de escolher objetos e adicion-los deve ser fcil, de forma que o professor tenha produtividade na produo de cursos. Conforme a Figura 25, o professor apenas manipula os objetos de aprendizagem j carregados para a base de dados (repositrio) e arrasta-os para formar novos cursos. Essa manipulao se d a partir de uma interface Web.

Figura 25. Gesto de Contedo [RAM 2005]. Para realizar a montagem de cursos, o usurio, sendo professor credenciado, pode escolher no ambiente a opo Construir Curso (Figura 26).

67

Figura 26. Escolhendo a opo Construir um Curso. Ao acessar essa opo, um novo curso pode ser criado. Clica-se na rea de curso (vazia a princpio), aciona-se o menu de contexto e escolhe-se a opo Criar Novo Curso (Figura 27).

Figura 27. Professor criando um novo curso. A Tabela 11 mostra a adio do registro do novo curso na tabela TBCourseInfo.

68

Tabela 11. Novo curso criado na Tabela TBCourseInfo.


CourseID Course-1 Course-2 Course-3 Course-4 Java e JDBC Java e JDBC (2) Novo Curso CourseTitle Photoshop Example -- Constrained Choice

Aps esse registro, o Novo Curso com identificao Course-4 passa a fazer parte do repositrio de cursos. Para montar esse curso a partir de outros existentes, deve-se acessar o repositrio, acionando o menu de contexto e escolhendo a opo Acessar Repositrio (Figura 28).

Figura 28. Acesso ao Repositrio de Cursos. O repositrio exibido (Figura 29) e escolhem-se quais cursos participaro da montagem do novo curso. O professor deve ter direito de acesso, pelo menos de somente-leitura, aos cursos do repositrio.

69

Figura 29. Repositrio de Cursos. Adio de um novo objeto em um curso A Figura 30 mostra um novo curso, Course-4, sendo montado a partir de dois cursos pertencentes ao repositrio: Course-1 e Course-3. Os objetos de aprendizagem so arrastados do curso original, Course-3 por exemplo, para o curso novo Course-4.

Figura 30. Criando um Novo curso: Adicionando objetos do Repositrio. 70

medida que se arrasta um item (objeto de aprendizagem) de um curso gravado para Novo Curso, esse ltimo vai sendo montado. Por exemplo: o contedo do objeto de aprendizagem 3. Registrando o Banco de Dados do curso Java e JDBC (2) no copiado para Novo Curso, apenas uma nova referncia localizao fsica do objeto criada. Assim, qualquer alterao no objeto original, automaticamente se reflete tanto no curso Java e JDBC (2) quanto no curso Novo Curso. A apresenta o registro dos itens do novo curso na tabela TBItemInfo. Observe o dado no atributo Launch, permite que se faa referncia a objetos de outros cursos. No primeiro registro e no terceiro, faz-se referncia a Course-1 e, no segundo, ao Course-3. O contedo desses objetos permanece no mesmo diretrio, apenas foram reutilizados por outro curso. H o compartilhamento dos objetos, possibilitando a gesto de contedo.

Tabela 12. Itens do novo curso criado: Tabela TBItemInfo.


CourseID Course-4 Course-4 OrganizationIdentifier TOC1 ORG-24B80B92-ABBAItemIdentifier INTRO ResourceIdentifier RESOURCE_INTRO

ITEM-E2EC19DB-4A5D-BFA4- RES-9379D7FA-86E9C9F7-9BAEC9E86815DEF9

9455-8E50-5C380A3486ED 3ED5-78853AE8B41C

Course-4 Launch

TOC1

LESSON4 Type asset asset Title Introduction

RESOURCE_LESSON4

/adl/CourseImports/Course-1/intro.htm /adl/CourseImports/Course-3/registra.html

Registrando o Banco de Dados

/adl/CourseImports/Course-1/Lesson4.htm

asset

Lesson 4 Layers

71

As Figuras 31 e 32 indicam o curso novo carregado Course-4. Observe que os contedos mostrados so de dois cursos diferentes, Course-1 e Course-3.

72

Figura 31. Contedo do novo curso criado obtido de Course-1.

Figura 32. Contedo do novo curso criado obtido de Course-3. Uma opo pode ser implementada para arrastar apenas um objeto de aprendizagem especfico ou um conjunto desses. Tal conjunto pode ser: sub-objetos, ou seja, objetos

73

menores que fazem parte do objeto maior que est sendo reusado; ou objetos relacionados de alguma outra forma, como, por exemplo, exerccios de um determinado objeto. Remoo de um objeto de um curso O professor pode desejar remover um item de um curso. Precisa ter direito para isso. Polticas de integridade referencial devem ser implantadas para evitar que um objeto de aprendizagem seja excludo de um curso, a partir do momento que esse objeto j foi utilizado de alguma forma. Para excluir um item: clica-se no item que se deseja excluir, acessa-se o menu contexto, escolhe-se a opo remover item, como na Figura 33.

Figura 33. Criando um Novo curso: Removendo objetos de um curso. medida que se exclui um item (objeto de aprendizagem) de um curso, como Lesson 4 Layers por exemplo, excluda a referncia do objeto nesse curso, mantendo a localizao fsica do objeto. Se o curso atual for o proprietrio do objeto, deve-se observar, primeiro, a integridade referencial, ou seja, no permitir que tal objeto seja removido enquanto ainda reutilizado por outro curso. Respeitando isso, o objeto pode ser fisicamente excludo. A Tabela 13 e a Figura 34, indicam que o item Lesson 4 - Layers foi excludo da tabela TBItemInfo. 74

Tabela 13. Excluindo itens do novo curso criado: Tabela TBItemInfo.


CourseID Course-4 Course-4 OrganizationIdentifier TOC1 ORG-24B80B92-ABBAItemIdentifier INTRO ResourceIdentifier RESOURCE_INTRO

ITEM-E2EC19DB-4A5D-BFA4- RES-9379D7FA-86E9C9F7-9BAEC9E86815DEF9

9455-8E50-5C380A3486ED 3ED5-78853AE8B41C

Launch /adl/CourseImports/Course-1/intro.htm /adl/CourseImports/Course-3/registra.html

Type Asset Asset

Title Introduction Registrando o Banco de Dados

Figura 34. Contedo do novo curso aps remoo de item. Como foi mostrado, a gesto de contedo, quando se utiliza o conceito de objetos de aprendizagem, torna-se um recurso simples no seu uso e, ao mesmo tempo, poderoso em seus resultados. Da mesma forma que os blocos LEGO possibilitam uma infinidade de formas, os objetos de aprendizagem, quando cuidadosamente construdos, oferecem inmeras opes de reorganizao.

8.4 Resultados da Observao Parte 2

75

Aps a criao do prottipo funcional 3, os mesmos alunos que participaram da primeira parte da observao foram convidados para utilizar o prottipo. Ao acessar o ambiente do prottipo, so orientados a clicar num item, de preferncia o 3. Registrando o Banco de Dados que provocou a dvida na primeira vez. Ento so orientados a acionar o menu de contexto para esse item. Clicaram em Registrar Duvida, digitaram a dvida e clicaram em Registrar. Verificaram que o smbolo ? apareceu no item, deixandoos satisfeitos. Clicaram no menu de contexto novamente, e escolheram Mostrar Dvida e viram a dvida que haviam registrado. Simulando a resposta do professor [REQG04], entrou-se no ambiente e clicou-se no item com a ?. Ao acionar o menu de contexto, escolheu-se Responder Dvida. Respondendo dvida, clicou-se em Responder. Os alunos observam que um sinal de ! apareceu indicando que h uma resposta. Acionaram o menu de contexto, escolheram Mostrar Dvida. Verificaram a resposta e, por fim, clicaram em Ciente. Verificaram que o item 3. Registrando o Banco de Dados voltou ao seu estado original, ou seja, no havia mais sinal de ? ou ! Todos os trs alunos mostraram-se bastante satisfeitos com a soluo. Declaraes dos alunos: Aluno A - Achei a soluo melhor do que mandar um e-mail para o

professor. Se fosse por e-mail, o professor teria mais dificuldade em encontrar exatamente onde fiquei com dvida e eu teria mais dificuldade em explicar. Colocando a dvida exatamente no ponto, acredito que fica mais fcil a comunicao. Sua observao final condiz com o anseio registrado em sua observao inicial na parte 1: No gostaria de resolver isso por e-mail, porque a resposta pode demorar muito. Prefiro um meio online que possa me dar uma resposta mais instantnea. Aluno B - H como ver ento o banco de dvidas para um determinado

ponto. No futuro, posso j acionar isso e tirar minhas dvidas sem precisar perguntar novamente ao professor algo que j se tenha reposta.

76

Aluno C Senti-me bem mais vontade para utilizar o ambiente, por saber

que algum veria a minha dvida e responderia. Gostei do fato de poder registrar minha dvida no tpico onde ela apareceu. Consegui fazer isso de forma rpida e intuitiva. Os requisitos REQG03 e REQG04, registro de dvidas no ambiente, foram alcanados com sucesso. Embora o aluno no tenha acesso, o REQG02 tambm foi alcanado porque o caminho que o aluno percorreu, ao realizar o curso, ou seja, os objetos de aprendizagem que escolheu e gerou ou no dvida, tambm foram registrados no ambiente. Tal informao fica disposio do professor e mesmo do aluno, caso lhe seja til.

8.5 Casos de Uso


Diagramas de casos de uso [UML 2005] descrevem o que o sistema faz do ponto de vista de um observador. A nfase est no que o sistema faz no como. Esses diagramas esto intimamente ligados aos cenrios que exemplificam o que acontece quando algum interage com o sistema [BOR 2005]. Os diagramas mostram os casos de usos : Caso de Uso 1 (Diagrama 3) professor criando curso reutilizando objetos e Caso de Uso 2 (Diagrama 4) aluno realizando um curso, interagindo com um professor.

Diagrama 3. Caso de Uso 1 Professor criando curso com reuso de objetos de aprendizagem.

77

Diagrama 4. Caso de Uso 2 Aluno realizando curso com suporte ao registro de dvida em objetos de aprendizagem.

8.6 Diagramas de Atividade

Um diagrama de atividade [UML 2005] focaliza o fluxo envolvido em um processo em particular, revelando como suas atividades se relacionam entre si [BOR 2005]. Os diagramas a seguir mostram : Diagrama de Atividade 1 (Diagrama 5) professor criando um novo curso e o Diagrama de Atividade 2 (Diagrama 6), aluno registrando uma dvida e professor registrando resposta.

78

Diagrama 5. Diagrama de Atividade 1 Professor criando curso com reuso de objetos de aprendizagem.

Diagrama 6. Diagrama de Atividade 2 Aluno realizando curso com suporte a registro de dvida em objetos de aprendizagem.

8.7 Cenrios Parte 2


8.7.1 Gesto de Contedo Situao Futura
So, aqui, criados dois cenrios descrevendo as situaes futuras, ou seja, usurios (professor e aluno) utilizando os futuros artefatos que contemplem a gesto de contedo no tocante a 79

reutilizao de objetos de aprendizagem (primeiro cenrio) e recurso para tirar dvidas (segundo cenrio). Os prottipos 3 e 4, implementando os requisitos levantados, so envolvidos aqui.

8.7.1.1 Cenrio 2.1 - Criao de curso por parte do professor Descreve uma situao na qual um professor utiliza um ambiente (prottipo 4) com o requisito REQG01 atendido. Ator: Professor, cujo objetivo criar um novo curso. Ambiente: Ambiente Virtual de Ensino com suporte ao modelo SCORM. H um computador conectado Internet executando um Ambiente Virtual de Ensino. Esse ambiente utilizado para intermediar o processo de ensino distncia e permite reutilizao de objetos de aprendizagem. O professor est devidamente cadastrado no ambiente. Roteiro: O professor deseja criar um novo curso no ambiente. Verifica que partes do novo curso j existem em outros cursos, no mesmo ambiente, de sua propriedade ou de propriedade de outros professores. Para realizar a montagem, acessa a opo Construir Cursos do ambiente. Uma tela completamente vazia lhe convida a montar o novo curso. Ao clicar no boto auxiliar do mouse, escolhe a opo Criar Novo Curso. Um novo curso vazio aparece em sua tela. O professor, agora, acessa novamente o menu de contexto e escolhe a opo Acessar Repositrio. Escolhe dois cursos dos quais deseja obter contedos prontos. A sua tela contm, nesse momento, o seu novo curso e dois outros cursos j existentes. O professor encontra, no primeiro curso do repositrio, um item que deseja aproveitar no seu novo curso. Simplesmente arrasta e solta esse item no seu novo curso. Repete esta ao vrias vezes, tanto para o primeiro quanto para o segundo curso do repositrio. Os originais do repositrio continuam intactos, porque somente o professor proprietrio tem direitos de modific-los. A localizao fsica do objeto de aprendizagem fica transparente para o professor que est montando o novo curso. O professor consegue atingir seu objetivo com facilidade, rapidez e eficincia.

8.7.1.2 Cenrio 2.2 - Realizao de um curso por parte do aluno Este cenrio descreve uma situao na qual um professor e um aluno utilizam um ambiente (prottipo 3) com os requisitos REQG03 e REQG04 atendidos. 80

Ator: Professor e Aluno. Ambiente: Ambiente Virtual de Ensino. H um computador conectado Internet executando um Ambiente Virtual de Ensino. Esse ambiente utilizado para intermediar o processo de ensino distncia. O professor e o aluno esto devidamente cadastrados no ambiente. Roteiro: O aluno escolhe um curso, modelo SCORM, que deseja realizar. Na tela principal apresenta a rvore de Atividades, esquerda, e a tela de contedo, direita. medida que clica nos itens da rvore, o contedo vai sendo apresentado. Em um determinado tpico no consegue entender o contedo. O ambiente oferece opo para tirar dvidas embutida no processo de navegao. O aluno clica no tpico no qual ficou com dvida. Aciona o menu de contexto e escolhe a opo Registrar Dvida. Digita a dvida na rea indicada e clica em Registrar. Um sinal de ? aparece mostrando que h uma dvida naquele ponto. O aluno aguarda resposta. O professor, ao acessar o curso percebe, que h um item contendo o sinal ?. Ele sabe que algum aluno est com dvidas. Aciona o menu de contexto naquele item e escolhe a opo Responder Dvida. L a dvida do aluno e responde numa rea ao lado. Clica no boto Responder. Um sinal de ! aparece mostrando que a dvida foi respondida. O aluno tambm percebe o sinal de ! no item que havia a dvida e sabe que alguma resposta obteve. Aciona o menu de contexto e escolhe a opo Mostrar Dvida. L a resposta da dvida escolhe o boto Ciente. Volta ao curso e consegue realizar a tarefa aps a dvida ser respondida.

8.8 Anlise das tarefas e Teste de usabilidade dos prottipos


A seguir a anlise das tarefas realizada para os prottipos 3 e 4.

8.8.1 Anlise da Tarefa 1 (Prottipo 3)


Anlise da Tarefa 1.1 Agente: Aluno. Objetivo: Realizar um Curso (Diagrama 7). Objetos: Objeto de Aprendizagem, painel de exibio de contedo. 81

Ambiente: Aps a ao Clicar Objeto Aprendizagem o contedo do objeto mostrado no painel de exibio de contedo, situao que acontece na escolha dos outros objetos por parte do agente.

Diagrama 7. Tarefa Realizar um Curso. Facilmente o usurio aprendeu a utilizar esse recurso, empregando tempo e esforos mnimos para realizar essa tarefa. Anlise da Tarefa 1.2 Agente: Aluno. Objetivo: Registrar uma Dvida (Diagrama 8). Objeto: Objeto de Aprendizagem. Ambiente: Aps a ao Clicar boto Registrar um sinal de ? aparece ao lado do objeto de aprendizagem. Diagrama 8. Tarefa Registrar Dvida.

Facilmente o usurio aprendeu a utilizar esse recurso e de forma produtiva. Sem tal recurso, provavelmente, recorreria a um sistema de e-mail para enviar a dvida, precisando deixar o ambiente de aprendizagem. Anlise da Tarefa 1.3 Agente: Professor. Objetivo: Responder uma Dvida (Diagrama 9). 82

Ambiente: Antes da tarefa, o objeto de aprendizagem est sinalizado com uma ?. Aps a ao Clicar boto Responder, um sinal de ! aparece ao lado do objeto de aprendizagem.

Diagrama 9. Tarefa Responder Dvida. Para a realizao da tarefa Procurar Objetos c/ Dvida pode ser oferecido um boto (representao metafrica) na interface. Quando acionado, a prxima dvida ento localizada para que o professor possa respond-la. Anlise da Tarefa 1.4 Agente: Aluno. Objetivo: Receber Resposta de uma Dvida (Diagrama 10). Ambiente: Antes da tarefa, o objeto de aprendizagem est sinalizado com um !. Aps a ao Clicar boto Ciente, o sinal de ! desaparece.

Diagrama 10. Tarefa Cincia da Dvida. 83

Para a realizao da tarefa Procurar Objetos c/ Resposta, pode ser oferecido um boto na interface. Quando acionado, a prxima dvida com resposta ento localizada pelo o aluno.

8.8.2 Anlise da Tarefa 2 (Prottipo 4)


Anlise da Tarefa 2.1 Agente: Professor. Objetivo: Criar novo curso (Diagrama 11). Ambiente: No comeo da tarefa, a rea de curso no contm nenhuma rvore de objetos. Aps a concluso da tarefa, um novo curso, com sua rvore de objetos, estar criado. Essa rvore conter suas ramificaes, com seus objetos de aprendizagem criados ou reutilizados. Diagrama 11. Tarefa Criar Novo Curso.

Pode ser oferecido, para realizar essa tarefa, um wizard, tornando mais confortvel o trabalho do professor.

8.9 Resultados Obtidos


Alcanou-se o objetivo dessa pesquisa quando foram entendidas as necessidades dos usurios (professores e alunos) em atividades de gesto de contedo, contedo esse organizado em 84

forma de componentes de aprendizagem. Os requisitos levantados foram prototipados. Os prottipos foram avaliados na observao dos usurios parte 2 e cenrios de situao futura. Obtiveram-se, nessas avaliaes, resultados bastante satisfatrios. Concluiram-se os resultados com anlise das tarefas dos prottipos 3 e 4, avaliando a usabilidade desses.

85

9 CONCLUSO
Esse trabalho apresentou a gesto de contedo sob a tica do professor e do aluno. A partir da reutilizao de objetos de aprendizagem de outros cursos, professores podem formar novos cursos, apenas arrastando itens desejados do curso de origem para o curso de destino. O ambiente proposto permite, tambm, a interao do aluno com o professor por meio da gerao de dvidas registradas num objeto de conhecimento especfico. Professores tambm podem interagir com os alunos registrando respostas para essas dvidas. O objetivo desse trabalho foi entender as necessidades dos usurios, professores e alunos, em atividades de gesto de contedo organizadas em forma de componentes de aprendizagem. Os requisitos levantados foram atendidos atravs da observao dos usurios e cenrios de situao atual. A anlise de competidores auxiliou no levantamento de requisitos. Tal anlise de alguns LMS s foi norteada por alguns critrios, dentre eles, a presena do suporte ao modelo SCORM. Esse modelo implementa o conceito de objetos de aprendizagem, permitindo que pequenos blocos de conhecimento sejam, inteligentemente, reunidos para formar um conceito mais abrangente. A arquitetura do modelo SCORM foi estudada, proporcionando entendimento do seu funcionamento. Esse conhecimento foi crucial para o estabelecimento de uma proposta bem fundamentada, capaz de ser prototipada e parcialmente implementada. Uma metodologia de design interativo centrada no usurio permitiu o aprimoramento gradativo de prottipos a partir de observao de usurios, criao de cenrios e testes de usabilidade. O prottipo, implementado em linguagem Java, e permitiu testes mais seguros no tocante funcionalidade e usabilidade. Os cenrios criados permitiram avaliar a adequao do artefato proposto realidade do usurio, evitando a implantao de uma soluo j comprometida desde a fase do projeto. A observao dos usurios utilizando, a princpio, o modelo SCORM, permitiu o levantamento de requisitos, como a necessidade do recurso tira dvidas embutido no ambiente de navegao. Aps a criao do prottipo, os usurios utilizaram o ambiente baseado no modelo SCORM com o recurso de registro de dvida funcionando. A maneira como a soluo foi implementada no prottipo foi muito bem aceita pelos usurios. 86

Aps esse estudo de gesto de contedo e o levantamento dos seus requisitos, o prximo passo a incorporao dessa proposta ao ambiente AMADeUs: Agentes micromundo e sistema A.De.C.U.I., dando a esse ambiente suporte ao modelo SCORM, com recursos de criao de cursos com base nos objetos de aprendizagem, reuso desses objetos, registro de atividades do aluno, medida que navega, e um recurso especial de registro de dvida pelo usurio aluno e reposta das dvidas pelo usurio professor. Conforme pesquisas em diversos materiais, pode-se constatar que a gesto de contedo est ainda no comeo. As opes de trabalhos futuros mostram que muito ainda deve ser feito nos prximos anos.

87

10 TRABALHOS FUTUROS
Algumas pesquisas podem surgir a partir do estudo realizado nessa dissertao, como a implementao dos outros recursos da orientao objeto, abrangncia do uso dos objetos de aprendizagem, a personalizao do ambiente e a adio de outros recursos para a gesto de contedo. Implementao de outros recursos da orientao objeto Alm dos recursos j incorporados aos objetos de aprendizagem, tais como abstrao e herana, pode-se estudar a implementao dos recursos de encapsulamento, polimorfismo, vinculao dinmica e Classes Abstratas. Abranger o uso de Objetos de aprendizagem O conceito de objetos de aprendizagem precisa ser expandido. Em seu artigo, Stefanelli [STE 2004] aborda muito bem esse ponto:
Para que exista ensino/aprendizagem necessrio ao menos: 1) expor o aprendente ao contedo; 2) proporcionar condies para a prtica (envolver o aprendente); 3) desencadear algum processo de avaliao. Completando este raciocnio: a condio mnima para existncia de um objeto de aprendizagem a incorporao destes trs fatores. A aplicao somente do primeiro deles, no meu entendimento, produz objetos de informao.

Os objetos de aprendizagem devem ser utilizados no ciclo: exposio, envolvimento e avaliao. Focou-se, nessa dissertao, o estudo dos objetos de aprendizagem no tocante sua exposio. Um outro estudo pode abordar o envolvimento e a avaliao do aprendiz. Pode-se permitir, ou no, que outros alunos tenham acesso a essas avaliaes. Personalizao do ambiente O ambiente de gerenciamento de aprendizado poder possibilitar, ao usurio aprendiz que efetua o logon, uma procura automtica por objetos de conhecimento que correspondam s suas necessidades e reuni-los em um programa significativo [ROS 2002]. Sistemas individualizados ou customizados, lidando com as diferenas dos usurios, pertencem a uma rea do conhecimento chamada modelo do usurio [GAR 1997], que uma 88

representao explcita das propriedades de um usurio individual, levando em considerao suas necessidades, preferncias e comportamentos [MOD 2003]. Reconhecendo as particularidades de cada usurio, o ambiente torna-se personalizvel e, em se tratando de aprendizado, essa personalizao depender do conhecimento prvio do usurio, a sua capacidade cognitiva e estilo de aprendizado [RST 2003]. Dessa forma, se a rea de aprendizado for nova para um usurio aprendiz, o nmero e a seqncia dos objetos podem ser diferentes do apresentado para um outro usurio j experiente [ROS 2002]. Outros Recursos para Gesto de Contedo Outros recursos podem ser adicionados gesto de contedo: Permitir que professores ou alunos registrem notas (observaes) em um determinado objeto de aprendizagem. No seriam dvidas, mas comentrios livres que poderiam ser acessados, posteriormente, pelo prprio autor ou pelos demais usurios do ambiente. Com base no recurso anterior, permitir que comentrios sejam feitos em cima de outros comentrios. O mesmo para comentrios em cima de dvidas se essas se tornam pblicas. Permisso para que outros alunos acessem o histrico de dvidas para um determinado objeto de aprendizagem. Assim, os alunos podem aprender a partir das experincias obtidas [NAT 2005] por outros alunos; Classificao semntica dos objetos de aprendizagem, permitindo buscas simples e avanadas por assunto ou objetos relacionados [NAT 2005]. Tais buscas podem ser realizadas por professores, com o intuito de formar novos cursos, ou por alunos, com o objetivo de aprender mais sobre um determinado objeto. Aperfeioamento do reuso de objetos de aprendizagem, incluindo outras informaes nos objetos como: caractersticas do objeto, abordagens de modificao para o objeto, onde esse objeto j foi utilizado e quais experincias foram registradas nesse reuso, tais como ciclos de dvidas e avaliaes [NAT 2005]. 89

Desenvolver ferramentas de acompanhamento do aluno a partir dos dados gravados na tabela TBPercurso. A ferramenta pode checar o tempo que o aluno gastou para realizar o curso e comparar com os resultados obtidos nas avaliaes. Os dados de percurso de um aluno podem ser comparados com os de outros alunos, para se sugerir tempo necessrio de estudo em cada mdulo de curso, alertando ao aluno sobre sua rapidez ou lentido. O ambiente pode permitir que o professor habilite ou no partes de um curso, sem que esse seja fisicamente removido ao ser desabilitado. O ambiente pode permitir que o professor seja notificado sobre baixas de material pelo aluno. O ambiente pode permitir exportaes de contedo em formatos .doc, .ppt etc. Aprofundamento do estudo dos Requisitos de Material (8.1.1 Requisitos de Observao e de Material) para prototipar, modelar e implementar solues sugeridas nesse estudo. Implementao das sugestes levantadas na anlise da tarefa, melhorando a usabilidade da soluo.

90

11 REFERNCIAS
[ADL 2004] Advanced Distributed Learning ADL. Disponvel em

<http://www.adlnet.org>. Acesso em: 30 jun. 2004 [ALM 2005] a-LMS Learning Management System. Disponvel em <http://a-

lms.sourceforge.net/>. Acesso em: 04 jul. 2005. [ALV 2005] Avatal Learn Station. Disponvel em <http://www.avatal.de/produkte/>. Acesso em: 04 jul. 2005. [AMD 2004] AMADeUs: Agentes micromundo e sistema A.De.C.U.I. Disponvel em < http://www.cin.ufpe.br/~amadeus>. Acesso em: 01 fev. 2004 [APR 2004] Aprendizagem Colaborativa Assistida por Computador. Disponvel em: <http://www.minerva.uevora.pt/cscl/index.htm#Aprendizagem%20colaborativa>. Acesso em: 01 fev. 2004. [AN1 2005] AprendernaNet - Construir uma infra-estrutura para o e-Learning I. Disponvel em: <http://www.aprendernanet.com/artigos.asp?x1=25290429>. Acesso em: 06 jun. 2005. [AN2 2005] AprendernaNet - Construir uma infra-estrutura para o e-Learning II. Disponvel em: <http://www.aprendernanet.com/artigos.asp?x1=91363241>. Acesso em: 06 jun. 2005. [AN3 2005] e-Learning e e-Knowledge: duas faces da mesma moeda. Disponvel em: <http://www.aprendernanet.com/artigos.asp?x1=55669549>. Acesso em: 06 jun. 2005. [AN4 2005] e-Learning: O Reinado dos Contedos. Disponvel em:

<http://www.aprendernanet.com/artigos.asp?x1=68797357>. Acesso em: 06 jun. 2005. [AN5 2005] e-Leaning: A Revoluo na Formao. Disponvel em:

<http://www.aprendernanet.com/artigos.asp?x1=53874465>. Acesso em: 06 jun. 2005. [BAR 1999] BARANAUSKAS, Maria Ceclia Calani. Estudo Etnogrfico sobre a Interface do Sistema AUXPG. Universidade Estadual de Campinas: So Paulo-SP, 1999;

91

[BOR 2005] Borland, Practical UML. A Hands-On Introduction for Developers. Disponvel em <http://www.togethersoft.com/services/practical_guides/umlonlinecourse/index.html>. Acesso em: 03 fev. 2005. [BD 2000] BDKER, Susanne. Scenarios in user-centred designsetting the stage for reflection and action. Journal Interacting with Computers. Department of Computer Science, University of Aarhus, 2000. [BRI 2004] BRITO, Vera (2004). Quais so alguns dos maiores mitos sobre e-Learning? Disponvel em < http://www.power-e.com.br/mitos.htm >. Acesso em: 12 fev. 2004. [CAR 2000] CARROLL, J.M. Five reasons for scenario-based design. Disponvel em <http://www.elsevier.com/locate/intcom>. Acesso em: 26 jul. 2005. [DEI 2001] DEITEL, H. M. e DEITEL, P.J. Java, como programar. 3 edio Porto Alegre: Bookman, 2001. [DLM 2005] DodeboLMS. Disponvel em <http://www.docebolms.org/>. Acesso em: 04 jul 2005. [DOD 2004] United States Department Of DEFENSE. Disponvel em <

http://www.dod.gov >. Acesso em: 30 jun. 2004. [EBE 2005] EBERSPCHER, Henri F.; Jamur, Jos H.; Eleutrio, Marco A. M.. Using a web-based learning environment for distance education. Disponvel em <http://www.lami.pucpr.br/lami/publicacoes.html> Art9906.pdf. Pontifical Catholic

University of Paran - PUCPR. Acesso em: 06 jun. 2005. [EIR 2003] EIRA, Marcelo. SCORM, Objetos de aprendizagem e Re-usabilidade: Que bichos so esses? Disponvel em <http://www.ecdm.com.br/website/elearning/artigos.html>. Acesso em: 06 jun. 2005. [ELE 2005] ELEUTERIO, Marco A.; Bortolozzi, Flvio; Kaestner, Celso A. The Roles of Ontologies in Collaborative Virtual Learning Environments. Disponvel em <http://www.lami.pucpr.br/lami/publicacoes.html> Art00041.pdf. Pontifical Catholic

University of Paran - PUCPR. Acesso em: 06 jun. 2005.

92

[FAC 2004] Faculdade de Cincias Aplicadas e Sociais de Petrolina FACAPE. Disponvel em <http://www.facape.br>. Acesso em: 01 jul. 2004. [FAL 2004] FALBO, Ricardo A.; Arantes, Daniel O.; Natali, Ana C.C. Integrating Knowledge Management and Groupware in a Software Development Environment. Disponvel em <http://www.inf.ufes.br/%7Efalbo/download/pub/2004-PAKM.pdf>. Acesso em: 06 jun. 2005. [FAL 2005] FALBO, Ricardo A.; Ruy, Fabiano B.; Moro, Rodrigo Dal. Ontologias e Ambientes 2005. [FOR 2005] Source Forge. Disponvel em < http://sourceforge.net>. Acesso em: 04 jul. 2005. [FPE 2005] Microsoft FrontPageExpress. Disponvel em: de Desenvolvimento de Software Semnticos. Disponvel em <http://www.inf.ufes.br/%7Efalbo/download/pub/2004-JIISIC-1.pdf>. Acesso em: 06 jun.

<http://www.123ecommerce.com/frontpage-express.htm>.Acesso em: 03 mar. 2005. [GAR 1997] GARCIA, Letcia Silva. Aplicaes de Sistemas Multiagentes a Sistemas de Hipermdia Adaptativa - Uma Extenso Ferramenta Gutemberg. Disponvel em: http://www.c5.cl/ieinvestiga/actas/tise97/trabajos/trabajo3. Acesso em: 01 dez. 2004. [GCC 2005] GCC home page. Disponvel em <http://gcc.gnu.org/>. Acesso em: 21 abr. 2005. [GHE 1998] GHEZZI, Carlo e JAZAYERI, Mehdi. Programming Language Concepts. 3th edition, Editora John Wiley & Sons (http://www.infosys.tuwien.ac.at/pl-book) [GOM 2004] Gomes, Apuena Vieira. Uma Abordagem Centrada No Usurio para Ferramentas de Suporte a Atividades Docentes em Ambientes de Educao Distncia. [GRA 1996] Gralla, Preston. Como funcionam as intranets. So Paulo-SP: Quark, 1996. [GTA 2004] Groupware Task Analysis. Disponvel em < http://www.cs.vu.nl/~gerrit/gta/>. Acesso em: 18 out. 2004. [HEN 2002] HENG, Simon. Learning Objects Where Next? 2002 Disponvel em <http://citeseer.nj.nec.com/cs>. Acesso em: 03 mai. 2004 93

[IBM 2001] IBM User Interface Architecture. First Edition, July 2001. International Business Machine. [ILI 2005] ILIAS open source. Disponvel em <http://www.ilias.de/ios/index-e.html>. Acesso em: 04 jul. 2005. [IPS 2005] Integrated Project System. Disponvel em <http://www.ipspm.com>. Acesso em: 01 fev. 2003. [JAV 2005] A Sun Microsystems Developers Network Site, Java Technology. Disponvel em <http://java.sun.com/>. Acesso em: 21 abr. 2005. [JSP 2004] Sun Microsystems, JSP JavaServer Pages. Disponvel em

<http://java.sun.com/products/jsp/>. Acesso em: 02 mar. 2005. [JVB 2005] JavaBeans. Disponvel em <http://java.sun.com/products/javabeans/>. Acesso em: 04 jul. 2005. [LEG 2005] LEGO. Disponvel em <http://www.lego.com/eng/preschool/duplo.asp>. Acesso em: 05 abr. 2005. [LEI 1999] LEITE, Jair Cavalcanti. Anlise e Modelagem de Usurios e de Tarefas. Disponvel em <http://www.dimap.ufrn.br/~jair/piu/apostila/cap6.pdf>. Acesso em: 21 abr. 2005. [LEI 2001] LEITE, Jair Cavalcanti. Projeto de Interfaces de Usurio. Disponvel em <http://www.dimap.ufrn.br/~jair/piu/default.html>. Acesso em: 21 abr. 2005. [LOT 2005] Lotus Learning Management System. Disponvel em <

ftp://ftp.lotus.com/pub/lotusweb/lms/LMSBrochure.pdf >. Acesso em: 04 jul. 2005. [MIL 1999] MILLEN, David R., Rapid Ethnography: Time Deepening Strategies for HCI Fields Research,AT&T Labs-Research, 1999; [MOO 2005] moodle.org. Disponvel em <http://moodle.org/>. Acesso em: 05 abr. 2005. [MOD 2003] MODESTO, Lisandro Rogrio. Sistema de Interface Inteligente - Parte3. Disponvel em <http://www.fap.com.br/webnews/noticia.php?id_noticia=42&>. Acesso em 19 set. 2004. 94

[MYS 2005] mysql.com. Disponvel em <http://www.mysql.com/>. Acesso em: 12 abr. 2005. [NAT 2005] NATALI, Ana Candida Cruz; Falbo, Ricardo A.; Infra-Estrutura para Gerncia de Conhecimento. Disponvel em <http://www.inf.ufes.br/ %7Efalbo/download/pub/Wgc2003.pdf >. Acesso em: 06 jun. 2005. [NIE 1993] NIELSEN, J.; Usability Engineering, San Francisco: Morgan Kaufmann, 1993; [OLM 2005] University of Utah, Departament of Psychology. Disponvel em <http://www.psych.utah.edu/learn/>. Acesso em: 04 jul. 2005. [PAR 1995] PARKER, Geoffrey. Histria do Mundo. So Paulo: Folha da Manh S.A., 1995. [PET 2001] PETERS, James F. e Witold Pedrycz. Engenharia de Software. Rio de Janeiro: Campus, 2001. [PHP 2005] php.net. Disponvel em <http://www.php.net/>. Acesso em: 12 abr. 2005. [POR 1991] PORTER, Michael E. Estratgia Competitiva: Tcnicas para Anlise de Indstrias e da Concorrncia. 5 ed. Rio de Janeiro: Campus, 1991. [PRE 1995] PRESSMAN, Roger S. Engenharia de software. So Paulo, Makron Books, 1995. [PUZ 2005] Puzzles.com. Disponvel em <http://www.puzzles.com/>. Acesso em: 05 abr. 2005. [RAM 2005] RAMALHO, Jos Carlos; Librelotto, Giovani R.; Henriques, Pedro R. ADRIAN: Sistema de Suporte Produo de Contedo. Disponvel em <http://www.di.uminho.pt/~jcr/XML/publicacoes/artigos/2004/RHL04-eLes-slides.pdf>. Acesso em: 06 jun. 2005 [REL 2005] Reload Reusable eLearning Object Authoring & Delivery. Disponvel em <http://www.reload.ac.uk/>. Acesso em: 02 mar. 2005. [RHA 2004] Randall House Associates, Inc. Disponvel em

<http://www.rhassociates.com/scorm.htm>. Acesso em: 01 jun. 2004. 95

[ROS 2002] ROSENBERG, Marc J. e-Learning. So Paulo: Pearson Educaton do Brasil, 2002. [ROY 1995] ROYER, Traci. Using Scenario-Based Designs to Review User Interface Changes and Enhancements. CText, Inc. [RST 2003] ROSATELLI, Marta C. e TEDESCO, P. A. Diagnosticando o Usurio para Criao de Sistemas Personalizveis. Programa de Ps-Graduao em Informtica Universidade Catlica de Santos (Unisantos) e Centro de Informtica - Universidade Federal de Pernambuco (UFPE). [RUS 2004] RUSTICI, Mike. Two Minute SCORM Overview for Developers. Disponvel em <http://www.adlnet.org/index.cfm? fuseaction=developer&pageview=viewarticle&ID=10>. Acesso em: 30 jun. 2004. [SCO 2004] Sharable Content Object Reference Model (SCORM) 2004. ADL Technical Team. Disponvel em <http://www.adlnet.org/index.cfm? fuseaction=DownFile&libid=648&bc=false>. Acesso em: 08 jul. 2004 [SEB 2000] SEBESTA, R. W. Conceitos de linguagem de programao. Porto Alegre, Bookman, 2000. [SHN 1998] SHNEIDERMAN B. Theorie, principles and guidelines, In Ben Shneiderman Designing the user interface - Strategies for effective Human-Computer Interaction. New York: Addison-Wesley, pp. 51-94, 1998. [SIM 2005] DAHL, Johan e NYGAARD, Kristen. How Object-Oriented Programming Started. Dept. of Informatics, University of Oslo. Disponvel em <http://heim.ifi.uio.no/~kristen/FORSKNINGSDOK_MAPPE/F_OO_start.html>. Acesso em: 21 abr. 2005. [SMI 2005] SMITH, Marcelo. e-Learning: sete passos para acertar na escolha do fornecedor. Disponvel em <http://www.intranetportal.com.br/e-learning/el2>. Acesso em: 06 jun. 2005. [SMT 2005] Smalltalk.orgtm . Disponvel em <http://www.smalltalk.org/main/>. Acesso em: 21 abr. 2005. 96

[SNY 2003] Snyder, Carolyn. Paper Prototyping: The Fast and Easy Way to Design and Refine User Interfaces. Morgan Kaufmann Publishers. [SS3 2005] Sumatra System 3. Disponvel em <http://www.stc-de.com/en/sumatra.jsp>. Acesso em: 04 jul. 2005. [STE 2004] STEFANELLI, Eduardo. Carta ao editor-chefe da revista eletrnica da ABED. Disponvel em < http://www.abed.org.br/publique/cgi/cgilua.exe/sys/start.htm? UserActiveTemplate=1por&infoid=885&sid=65>. Acesso em: 18 jul. 2005. [STR 2005] Jakarta Struts Application Framework. Disponvel em <

http://jakarta.apache.org >. Acesso em: 04 jul. 2005. [SUA 2005] SUA, Jun-Ming; Tsengb, Shian-Shyong; Chen, Chia-Yu; Wengb, Jui-Feng e Tsai, Wen-Nung. Constructing SCORM compliant course based on High-Level Petri Nets. Disponvel em < http://www.sciencedirect.com/science/sdarticle.pdf>. Acesso em: 06 jun. 2005. [TED 2002] TEDESCO P. and GOMES, Alex Sandro: Amadeus: A Framework To Support Multi-Dimensional Learner Evaluation. The 1st International Conference on Web-based Learning. (2002) Hong Kong, China; [PWA 2005] Modelo SCORM. Disponvel em <

http://portal.webaula.com.br/entenda_scorm.aspx?sm=scorm >. Acesso em: 06 jun. 2005. [WHA 2004]. The leading IT encyclopedia and learning center. Disponvel em < http://www.whatis.com>. Acesso em: 01 out. 2004. [UML 2005] Object Management Group, Inc (OMG) Unified Modeling Language (UML). Disponvel em < http://www.omg.org/uml/>. Acesso em: 13 ago. 2003. [VEE 1998] VEER, Gerrit C. van der; Welie, Martijn van. Groupware Task Analysis. Department of Computer Science. Vrije Universiteit de Boelelaan, Amsterdan, The Netherlands. Disponvel em <http://www.cs.vu.nl/~gerrit/gta/>. Acesso em: 18 out. 2004. [WZP 2005] WinZip. Disponvel em <http://www.winzip.com/>. Acesso em: 02 mar. 2005.

97

[XML 2005] W3C World Wide Web Consortium, Extensible Markup Language (XML). Disponvel em <http://www.w3.org/XML/>. Acesso em: 12 ago. 2003.

98

ANEXOS Anexo I - Contedo do arquivo imsmanifest.xml.


O contedo listado a seguir de um arquivo XML manifest chamado imsmanifest.xml criado com um editor de curso para o padro SCORM, tambm inserido no pacote junto com os objetos fsicos que compem o curso. Esse arquivo contm as identificaes de cada objeto de aprendizagem e seus sub-itens, ou seja, os objetos lgicos. No processo de importao do pacote para o ambiente SCORM, as informaes desse arquivo so utilizadas para preencher as tabelas TBCourseInfo e TBItemInfo. <?xml version="1.0" encoding="UTF-8"?> <!--This is a Reload version 2.0.2 SCORM 1.2 Content Package document--> <!--Spawned from the Reload Content Package Generator - http://www.reload.ac.uk--> <manifest xmlns="http://www.imsglobal.org/xsd/imscp_v1p1" xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_v1p2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:adlcp="http://www.adlnet.org/xsd/adlcp_rootv1p2" identifier="MANIFEST-0C9E599A-5C8C-FCE2-7B04-2C6632175D60" xsi:schemaLocation="http://www.imsglobal.org/xsd/imscp_v1p1imscp_v1p1.xsd http://www.imsglobal.org/xsd/imsmd_v1p2imsmd_v1p2p2.xsd http://www.adlnet.org/xsd/adlcp_rootv1p2 adlcp_rootv1p2.xsd"> <organizations default="ORG-24B80B92-ABBA-9455-8E50-5C380A3486ED"> <organization identifier="ORG-24B80B92-ABBA-9455-8E50-5C380A3486ED" structure="hierarchical"> <title>Java e JDBC</title> <item identifier="ITEM-744027D8-447F-B340-10AA-BAFB9FFED4D2" isvisible="true" identifierref="RES-1441794D-BC4F-19FF-B2DA-7A18F02D42BF"> <title>Conectividade de Banco de Dados Java</title> </item> <item identifier="ITEM-FEB88C31-9D6F-70BE-30B7-537C33282A75" isvisible="true" identifierref="RES-22E8F1BB-BC0C-DB76-A635-52A9BFBD82CF"> <title>1. O que e JDBC ?</title> </item> <item identifier="ITEM-30109A37-82C0-3601-F535-CD013BA9FB82" isvisible="true" 99

identifierref="RES-599B2809-29DB-05F9-4FF1-C6B13208A8B1"> <title>2. Estudo de Caso</title> </item> <item identifier="ITEM-E2EC19DB-4A5D-BFA4-3ED5-78853AE8B41C" isvisible="true" identifierref="RES-9379D7FA-86E9-C9F7-9BAE-C9E86815DEF9"> <title>3. Registrando o Banco de Dados</title> </item> <item identifier="ITEM-63F09F7A-7A1B-F778-FF3F-B3851ABAC5DC" isvisible="true" identifierref="RES-E3E64C21-5879-7C88-BB0A-12827C7AC10B"> <title>4. Consultando Dados</title> </item> <item identifier="ITEM-17B800B8-A8A0-A760-E95D-9AA6D704667B" isvisible="true" identifierref="RES-815B354E-E43E-3A9C-CABE-00DE0F409990"> <title>5. Lendo, Inserindo e Atualizando dados</title> </item> <item identifier="ITEM-5E9581A3-0CAB-4C59-C1F4-8F98178FB219" isvisible="true" identifierref="RES-0B56ABF3-1D82-52D4-5854-B11717C440EF"> <title>Dicionario</title> </item> <item identifier="ITEM-BFD08E2C-AD11-66ED-C00F-CEFB75163BEF" isvisible="true" identifierref="RES-A51BF8C4-0D0A-069F-64DE-950F5BACD067"> <title>Bibliografia</title> </item> </organization> </organizations> <resources> <resource identifier="RES-1441794D-BC4F-19FF-B2DA-7A18F02D42BF" adlcp:scormtype="asset" href="index.html"> <file href="index.html" /> <file href="AdicionandoRegistro.java" /> <file href="atualiza.html" /> <file href="AtualizandoRegistro.java" /> <file href="bibliogr.html" /> 100 type="webcontent"

<file href="CadastroCliente.java" /> <file href="ClearFields.java" /> <file href="consulta.html" /> <file href="ControlPanel.java" /> <file href="dicionario.html" /> <file href="empresa.mdb" /> <file href="estudode.html" /> <file href="ExcluindoRegistro.java" /> <file href="ExecutarCadastroCliente.java" /> <file href="ExecutarMostrarTabela.java" /> <file href="Help.java" /> <file href="images/cadastrocliente.jpeg" /> <file href="images/consultatabela.jpeg" /> <file href="images/fontedadosodbcadicionar.jpeg" /> <file href="images/fontedadosodbcavancado.jpeg" /> <file href="images/fontedadosodbcuserdns.jpeg" /> <file href="images/msaccessempresacliente.jpeg" /> <file href="images/windowspainelfontedadosodbc.jpeg" /> <file href="images/windowspainelfontedadosodbc2.jpeg" /> <file href="ListarCliente.java" /> <file href="MostrarTabela.java" /> <file href="oquejdbc.html" /> <file href="ProcurandoRegistro.java" /> <file href="registra.html" /> <file href="ScrollingPanel.java" /> </resource> <resource identifier="RES-22E8F1BB-BC0C-DB76-A635-52A9BFBD82CF" adlcp:scormtype="asset" href="oquejdbc.html"> <file href="oquejdbc.html" /> </resource> <resource identifier="RES-599B2809-29DB-05F9-4FF1-C6B13208A8B1" adlcp:scormtype="asset" href="estudode.html"> <file href="estudode.html" /> <file href="empresa.mdb" /> 101 type="webcontent" type="webcontent"

<file href="images/msaccessempresacliente.jpeg" /> </resource> <resource identifier="RES-E3E64C21-5879-7C88-BB0A-12827C7AC10B" adlcp:scormtype="asset" href="consulta.html"> <file href="consulta.html" /> <file href="empresa.mdb" /> <file href="ExecutarMostrarTabela.java" /> <file href="images/consultatabela.jpeg" /> <file href="images/fontedadosodbcadicionar.jpeg" /> <file href="images/fontedadosodbcavancado.jpeg" /> <file href="images/fontedadosodbcuserdns.jpeg" /> <file href="images/windowspainelfontedadosodbc.jpeg" /> <file href="images/windowspainelfontedadosodbc2.jpeg" /> <file href="MostrarTabela.java" /> <file href="registra.html" /> </resource> <resource identifier="RES-9379D7FA-86E9-C9F7-9BAE-C9E86815DEF9" adlcp:scormtype="asset" href="registra.html"> <file href="registra.html" /> <file href="empresa.mdb" /> <file href="images/fontedadosodbcadicionar.jpeg" /> <file href="images/fontedadosodbcavancado.jpeg" /> <file href="images/fontedadosodbcuserdns.jpeg" /> <file href="images/windowspainelfontedadosodbc.jpeg" /> <file href="images/windowspainelfontedadosodbc2.jpeg" /> </resource> <resource identifier="RES-815B354E-E43E-3A9C-CABE-00DE0F409990" adlcp:scormtype="asset" href="atualiza.html"> <file href="atualiza.html" /> <file href="AdicionandoRegistro.java" /> <file href="AtualizandoRegistro.java" /> <file href="CadastroCliente.java" /> <file href="ClearFields.java" /> 102 type="webcontent" type="webcontent" type="webcontent"

<file href="consulta.html" /> <file href="ControlPanel.java" /> <file href="empresa.mdb" /> <file href="ExcluindoRegistro.java" /> <file href="ExecutarCadastroCliente.java" /> <file href="ExecutarMostrarTabela.java" /> <file href="Help.java" /> <file href="images/cadastrocliente.jpeg" /> <file href="images/consultatabela.jpeg" /> <file href="images/fontedadosodbcadicionar.jpeg" /> <file href="images/fontedadosodbcavancado.jpeg" /> <file href="images/fontedadosodbcuserdns.jpeg" /> <file href="images/windowspainelfontedadosodbc.jpeg" /> <file href="images/windowspainelfontedadosodbc2.jpeg" /> <file href="ListarCliente.java" /> <file href="MostrarTabela.java" /> <file href="ProcurandoRegistro.java" /> <file href="registra.html" /> <file href="ScrollingPanel.java" /> </resource> <resource identifier="RES-0B56ABF3-1D82-52D4-5854-B11717C440EF" adlcp:scormtype="asset" href="dicionario.html"> <file href="dicionario.html" /> </resource> <resource identifier="RES-A51BF8C4-0D0A-069F-64DE-950F5BACD067" adlcp:scormtype="asset" href="bibliogr.html"> <file href="bibliogr.html" /> </resource> </resources> </manifest> type="webcontent" type="webcontent"

103

Anexo II - Arquivo viewCourses.jsp pertencente a API do SCORM

O modelo SCORM contm diversas APIs que reunidas constituem o RTE. Elas permitem ao aprendiz acessar o contedo do LMS. A seguir, lista-se o contedo do arquivo viewCourses.jsp (Java Server Pages) que permite ao aprendiz visualizar e escolher um dentre os cursos registrados para ele no ambiente. Os demais arquivos/APIs ficam armazenados no caminho adl\admin, adl\import e adl\runtime, quando o ambiente instalado. <%@page import = "java.sql.*, java.util.*, org.adl.util.*, org.adl.samplerte.util.*" %> <% ** Filename: viewCourses.jsp ** File Description: This file displays a list of courses that a user ** is registered for. The user can click on the link and launch the course. ** Author: ADL Technical Team ** Contract Number: ** Company Name: CTC ** Module/Package Name: ** Module/Package Description: ** Design Issues: ** Implementation Issues: ** Known Problems: ** Side Effects: ** References: ADL SCORM %> <% Connection conn; PreparedStatement stmtSelectUserCourse; LMSDatabaseHandler myDatabaseHandler = new LMSDatabaseHandler(); // Query for all courses that the logged in user is regestered for. String sqlSelectUserCourse = "SELECT CourseInfo.CourseID, " + "CourseInfo.CourseTitle, CourseInfo.ImportDateTime FROM " + "CourseInfo, UserCourseInfo " + "WHERE UserCourseInfo.UserID = ? AND " + "CourseInfo.CourseID = UserCourseInfo.CourseID AND " + 104

"CourseInfo.Active = yes " + "ORDER BY CourseInfo.ImportDateTime DESC"; String formBody = new String(); try { conn = myDatabaseHandler.GetConnection(); stmtSelectUserCourse= conn.prepareStatement(sqlSelectUserCourse ); String userID = (String)session.getAttribute("USERID" ); ResultSet userCourseRS = null; synchronized(stmtSelectUserCourse ) { stmtSelectUserCourse.setString(1, userID ); userCourseRS = stmtSelectUserCourse.executeQuery(); } //Loops through the result set 'userCourseRS' outputting the name of //the course as a link to the sequencing engine with the courseID //so that the course can be launched by clicking on the link. String color = new String("#FFFFFF"); while (userCourseRS.next() ) { String courseID = userCourseRS.getString("CourseID" ); String courseTitle = userCourseRS.getString("CourseTitle" ); String importDateTime = userCourseRS.getString("ImportDateTime"); formBody = formBody + "<tr bgcolor='" + color + "'><td>"; // If its auto, launch in a new window. If not, launch in the frameset if (false ) { formBody = formBody + "<a href='javascript:launchAutoWindow('" + courseID + "')'>" + courseTitle + "</a>"; } else { formBody = formBody + "<a href='sequencingEngine.jsp?courseID=" + courseID + "&courseTitle=" + "courseTitle'>" + courseTitle + "</a><br>Imported on: " + importDateTime; } formBody = formBody + "</td></tr>"; if(color.equals("#FFFFFF")) { color = "#CDCDCD"; } else { color = "#FFFFFF"; } 105

} // Clean up any Global Objectives connections left from exit or suspend if (! LMSDBHandler.getConnection().isClosed() ) { LMSDBHandler.closeConnection(); } userCourseRS.close(); stmtSelectUserCourse.close(); conn.close(); } catch(SQLException e) { System.out.println("viewcourses "); e.printStackTrace(); } catch(Exception e) { e.printStackTrace(); } %> <html> <head> <title>SCORM 2004 Sample Run-Time Environment Version 1.3 View Courses</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta http-equiv="expires" content="Tue, 05 DEC 2000 01:00:00 GMT"> <meta http-equiv="Pragma" content="no-cache"> <link href="../includes/sampleRTE_style.css" rel="stylesheet" type="text/css"> <script language="javascript"> /************************************************************************** Function: launchAutoWindow() ** Input: courseID - String - The identifier of the course that is being ** launched in the new window. ** Output: none ** Description: Launches course content in a new window. **/ function launchAutoWindow(courseID ) { var theURL = "sequencingEngine.jsp?courseID=" + courseID;; window.document.location.href = "LMSMenu.jsp"; window.top.contentWindow=window.open(theURL, 'displayWindow' ); }

106

/ *************************************************************************** * ** Function: newWindow() ** Input: pageName - String - The page that will be launched in the new ** window. At this time, only the help page. ** Output: none ** Description: Launches a new window with additional user help **/ function newWindow(pageName) { window.open(pageName, 'Help', "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no," + "resizable=yes,width=500,height=500");} </script> </head> <body bgcolor="#FFFFFF" > <jsp:include page="gotoMenu.jsp" flush="true" /> <p class="font_header"> <b> Available Courses</b></p> <FORM METHOD="POST"> <table width="400"> <tr> <td> <hr> </td> </tr> <tr> <td bgcolor="#5E60BD" class="white_text"> <b> &nbsp;Please Select a Course: </b> </td> </tr> <%= formBody%> <tr> <td> <hr> </td> </tr> <tr> <td> <br><br> <a href="javascript:newWindow('../help/launchCourseHelp.htm' );"> Help!</a> </td> </tr> </table> </FORM> </body> </html>

107

Anexo III - Script do Banco de Dados SCORM


Apresenta-se nesse anexo o script completo obtido da base de dados SCORM. O modelo baixado e instalado para essa pesquisa utiliza o banco de dados Microsoft Access. Contudo, outro banco de dados pode ser utilizado, de acordo com a escolha do desenvolvedor do ambiente virtual de ensino. Esse script pode ser utilizado para preparar o banco de dados escolhido para receber os objetos se aprendizagem.

CREATE DOMAIN LOGICAL AS CHAR(1) DEFAULT NULL CHECK ((VALUE IN ('T','F')) OR (VALUE IS NULL) ); CREATE DOMAIN MONEY AS NUMERIC (15,2); CREATE DOMAIN OLE AS BLOB SUB_TYPE 0 SEGMENT SIZE 80; CREATE TABLE ApplicationData (dataName CHAR (50), textValue CHAR (50), numberValue INTEGER); CREATE UNIQUE INDEX nextCourseID ON ApplicationData (dataName); CREATE UNIQUE INDEX numberValue ON ApplicationData (numberValue); CREATE TABLE CourseInfo (CourseID CHAR (50), CourseTitle CHAR (50), Active LOGICAL, ImportDateTime TIMESTAMP ); CREATE UNIQUE INDEX Course ID ON CourseInfo (CourseID); CREATE TABLE ItemInfo (CourseID CHAR (255), OrganizationIdentifier CHAR (255), ItemIdentifier CHAR (255), ResourceIdentifier CHAR (255), Launch CHAR (255), Type CHAR (50), Title CHAR (255), 108

ParameterString CHAR (255), PersistState CHAR (255), DataFromLMS CHAR (255), MinNormalizedMeasure CHAR (50), AttemptAbsoluteDurationLimit CHAR (255), TimeLimitAction CHAR (255), CompletionThreshold CHAR (255), Next LOGICAL, Previous LOGICAL, Exit LOGICAL, Abandon LOGICAL ); CREATE UNIQUE INDEX Identifier ON ItemInfo (ItemIdentifier); CREATE UNIQUE INDEX OrganizationIdentifier ON ItemInfo (OrganizationIdentifier); CREATE UNIQUE INDEX ResourceIdentifier ON ItemInfo (ResourceIdentifier); CREATE UNIQUE INDEX SCO ID ON ItemInfo (CourseID); CREATE TABLE UserCourseInfo (UserID CHAR (50), CourseID CHAR (50) ); CREATE UNIQUE INDEX CourseInfoUserCourseInfo ON UserCourseInfo (CourseID); CREATE UNIQUE INDEX CourseInfoUserCourseInfo1 ON UserCourseInfo (CourseID); CREATE UNIQUE INDEX UserID ON UserCourseInfo (UserID); CREATE UNIQUE INDEX UserInfoUserCourseInfo ON UserCourseInfo (UserID); CREATE TABLE UserInfo (UserID CHAR (50), LastName CHAR (50), FirstName CHAR (50), Admin LOGICAL, Password CHAR (50), Active LOGICAL ); CREATE UNIQUE INDEX User ID ON UserInfo (UserID);

109

Anexo IV - Script de Alterao do Banco de Dados SCORM


A lista o script de alterao da base de dados SCORM. Para a implementao desse prottipo necessria a criao de duas novas tabelas e adio de um atributo na tabela de usurios. Assim, como no anexo III, esse script pode ser utilizado para preparar banco de dados escolhido para realizar o ciclo de tirar dvida e registro do percurso do aprendiz.

CREATE TABLE Duvida ( UserID CHAR (50), CourseID CHAR (255), ItemIdentifier CHAR (255), DuvidaId CHAR (50), Duvida CHAR (255), DateTimeDuvida TIMESTAMP, Resposta CHAR (255), DateTimeResposta TIMESTAMP, DateTimeCiente TIMESTAMP); CREATE UNIQUE INDEX (UserID,CourseID,ItemIdentifier,DuvidaId); CREATE TABLE Percurso ( UserID CHAR (50), CourseID CHAR (255), ItemIdentifier CHAR (255), DateTimePercurso TIMESTAMP); CREATE UNIQUE INDEX Identifier (UserID,CourseID,ItemIdentifier,DateTimePercurso); ALTER TABLE UserInfo ADD Professor LOGICAL; ON Percurso Identifier ON Duvida

110

Anexo V Cdigo Fonte do prottipo funcional 2


A criao de um prottipo funcional mostrou-se necessria para que se pudesse observar os usurios (alunos) interagindo no com telas estticas, mas com algo real, ainda que inicial. O termo real se refere a um completo acesso ao banco de dados SCORM em processos de leitura e gravao. Como os cdigos fonte SCORM necessrios para criar um prottipo funcional no estavam 100% disponveis para alterao, esse prottipo foi implementado com componentes Java (Japplet, JTree e JEditorPane basicamente). Esses cdigos esto listados aqui para auxiliar no desenvolvimento do mdulo de gesto de contedo com base em objetos de aprendizagem, possibilitando ao leitor, com um mnimo conhecimento em programao Java, entender como se d a interao entre o usurio e esses objetos. 1) TreeScorm.html o arquivo/html principal que aciona o applet.

<html> <head> <title>JTree</title> </head> <applet code="TreeScorm.class" width=600 height=400> <PARAM NAME = red VALUE="255"> <PARAM NAME = green VALUE="255"> <PARAM NAME = blue VALUE="255"> </applet> </html>

2) TreeScorm.java Esta classe/Applet responsvel por acionar a classe de criao da rvore de atividades.

import javax.swing.*; 111

import java.sql.*; import java.awt.*; public class TreeScorm extends JApplet {String curso, login, senha; public void init() { super.init(); try {curso = "Course-1"; login = "admin"; senha = "admin"; CreateTree ct = new CreateTree (this,curso,login, senha); this.getContentPane().add(ct); } catch (SQLException SQLe) {} } public void paint (Graphics g) {super.paint (g);} } 3) CreateTree.java Esta classe/painel, executada dentro do Applet, exibe a rvore de atividades, contedo do curso e reas para mostrar e digitar dvidas e respostas. Nessa classe, manipula-se o banco de dados, gravando os registros de acordo com as escolhas do usurio.

import java.sql.*; import javax.swing.*; import javax.swing.event.*; import javax.swing.tree.*; import java.awt.*; import java.awt.event.*; import java.io.*; import java.util.*; import javax.swing.text.html.*; 112

class CreateTree extends JPanel implements TreeExpansionListener, TreeWillExpandListener, TreeSelectionListener,ListSelectionListener { private DefaultMutableTreeNode top; private DefaultMutableTreeNode catagory = null ; private DefaultMutableTreeNode artist = null; private DefaultMutableTreeNode record = null; private JTree tree; protected DefaultTreeModel treeModel; private JComboBox cursosComboBox; private JPopupMenu popupMenu; private JMenuItem items[]; private ItemHandler handler; private JButton buttonEnviar, buttonCancelar; private JTextArea duvidaTextArea; private JTextArea respostaDuvidaTextArea; private JTextField currentSelectionField;//, currentSelectionField2; private JPanel panelselection; private JPanel panelpopupselection; private JEditorPane htmlPane; private JScrollPane scrollPane; private Connection connection = null; private ResultSet resultSet; private String nomeCurso; private String titleCurso; private JScrollPane treePane; private JApplet parent; private Color colorpadrao = new Color (255,200,103); private Color colorpadrao2 = new Color (255,213,138); private Color colorpadrao3 = new Color (244,223,184); private String userId; private String DuvidaId; private boolean duvida; private boolean duvidaRespondida; public CreateTree(JApplet parent, String nomeCurso, String login, String senha) throws SQLException { 113

boolean moreRecords; this.tree = new JTree(new DefaultTreeModel ( new DefaultMutableTreeNode("Curso nao carregado"))); popupMenu = new JPopupMenu(); panelselection = new JPanel (); panelpopupselection = new JPanel (); this.parent = parent; this.nomeCurso = nomeCurso; this.titleCurso =""; this.userId = ""; this.connection = Biblioteca.conexaoOdbc ("SCORM2004SRTE13", login, senha); this.resultSet = Biblioteca.getResultSet (this.connection, "SELECT * FROM USERINFO WHERE (UserId LIKE '" + login + "' AND "+ "Password LIKE '"+ senha +"') "); if (this.resultSet != null) {moreRecords = this.resultSet.next(); if (moreRecords) {this.userId = resultSet.getString(1); this.resultSet = Biblioteca.getResultSet (this.connection, "SELECT CourseInfo.CourseTitle FROM CourseInfo " + "where (CourseId like '" + this.nomeCurso +"')"); if (this.resultSet != null) {moreRecords = this.resultSet.next(); if (moreRecords ) { // Se h registros this.titleCurso =resultSet.getString(1); this.preencherArvore (this.nomeCurso, this.titleCurso); this.tree = new JTree(this.treeModel) {public Insets getInsets() { return new Insets(5,5,5,5); } }; this.tree.addTreeSelectionListener(this); tree.setCellRenderer(new SampleTreeCellRenderer (this.connection, this.resultSet, this.userId, this.nomeCurso)); popupMenu = new JPopupMenu(); handler = new ItemHandler(); 114

items = new JMenuItem[ 3 ]; items[ 0 ] = new JMenuItem ("Registrar Duvida"); items[ 1 ] = new JMenuItem ("Mostrar Duvida"); items[ 2 ] = new JMenuItem ("Resposnder Duvida"); popupMenu.add(items[ 0 ] ); popupMenu.add(items[ 1 ] ); popupMenu.add(items[ 2 ] ); items[ 0 ].addActionListener(handler ); items[ 1 ].addActionListener(handler ); items[ 2 ].addActionListener(handler ); tree.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e ) { checkForTriggerEvent(e ); } public void mouseReleased(MouseEvent e ) { checkForTriggerEvent(e ); } private void checkForTriggerEvent(MouseEvent e ) {if (e.isPopupTrigger() ) popupMenu.show(e.getComponent(),e.getX(), e.getY() ); } }); panelselection = new JPanel (); panelselection.setBackground (colorpadrao); currentSelectionField = new JTextField("Current Selection: NONE"); panelselection.add (currentSelectionField); panelpopupselection = new JPanel (); panelpopupselection.setBackground (colorpadrao); duvidaTextArea = new JTextArea("", 5, 20 ); respostaDuvidaTextArea = new JTextArea("", 5, 20 ); duvidaTextArea.setBackground (colorpadrao3); respostaDuvidaTextArea.setBackground (colorpadrao3); buttonEnviar = new JButton ("_"); this.buttonEnviar.addActionListener ( new ActionListener (){ public void actionPerformed (ActionEvent e) {String ItemIdentifier = ""; CreateTree.this.resultSet = Biblioteca.getResultSet (CreateTree.this.connection, "SELECT ItemInfo.ItemIdentifier FROM ItemInfo where Title like '" + 115

Biblioteca.transformaString (tree.getLastSelectedPathComponent().toString()) + "' and " + " CourseID like '" + CreateTree.this.nomeCurso + "'"); try {if (CreateTree.this.resultSet != null) {boolean moreRecords = CreateTree.this.resultSet.next(); if (moreRecords ) { ItemIdentifier = CreateTree.this.resultSet.getString(1); }// if }} catch (SQLException se) {} if (CreateTree.this.buttonEnviar.getText().equals ("Ok")) {//... } else {if (CreateTree.this.buttonEnviar.getText().equals ("Registrar")) {String resp = Biblioteca.executeSQL(CreateTree.this.connection, "INSERT INTO DUVIDA " +" (UserID, CourseID,ItemIdentifier, " + // DuvidaId Autonumerao

"Duvida, DateTimeDuvida) " + // Resposta, DateTimeResposta, DateTimeCiente " VALUES ('" + CreateTree.this.userId+"','" + CreateTree.this.nomeCurso+"','" +ItemIdentifier+"','" + duvidaTextArea.getText()+"','" + Biblioteca.datetoSql ((new java.util.Date ()).toLocaleString ()) +"');"); if (resp.equals ("")) {JOptionPane.showMessageDialog (null,"Duvida Enviada com sucesso");} else{JOptionPane.showMessageDialog (null,"Duvida Nao Enviada");} } else {if (CreateTree.this.buttonEnviar.getText().equals ("Responder")) {String resp = Biblioteca.executeSQL(CreateTree.this.connection, "UPDATE DUVIDA SET Resposta = '" + respostaDuvidaTextArea.getText()+ 116

"', DateTimeResposta = '" + Biblioteca.datetoSql ((new java.util.Date ()).toLocaleString ()) + "' where UserId = '" + CreateTree.this.userId + "' AND CourseID = '" + CreateTree.this.nomeCurso + "' AND ItemIdentifier = '" + ItemIdentifier + "' AND DuvidaId = " + CreateTree.this.DuvidaId); if (resp.equals ("")) {JOptionPane.showMessageDialog (null, "Resposta da Duvida Registrada com sucesso");} else{JOptionPane.showMessageDialog (null,"Resposta da Duvida Nao Registrada");} } else {if (CreateTree.this.buttonEnviar.getText().equals ("Ciente")) { String resp = Biblioteca.executeSQL(CreateTree.this.connection, "UPDATE DUVIDA SET DateTimeCiente = '" + Biblioteca.datetoSql ((new java.util.Date ()).toLocaleString ()) + "' where UserId = '" + CreateTree.this.userId + "' AND CourseID = '" + CreateTree.this.nomeCurso + "' AND ItemIdentifier = '" + ItemIdentifier + "' AND DuvidaId = " + CreateTree.this.DuvidaId); if (resp.equals ("")) {JOptionPane.showMessageDialog (null,"Ciente Registrado");} else{JOptionPane.showMessageDialog (null,"Ciente Nao Registrado");} }} }} duvidaTextArea.setText (""); respostaDuvidaTextArea.setText (""); duvidaTextArea.setEnabled (false); respostaDuvidaTextArea.setEnabled (false); buttonEnviar.setEnabled (false); buttonCancelar.setEnabled (false); buttonEnviar.setText ("_"); }} ); buttonCancelar = new JButton ("Cancelar"); this.buttonCancelar.addActionListener ( new ActionListener () { public void actionPerformed (ActionEvent e) 117

duvidaTextArea.setText(""); respostaDuvidaTextArea.setText(""); duvidaTextArea.setEnabled (false); respostaDuvidaTextArea.setEnabled (false); buttonEnviar.setEnabled (false); buttonCancelar.setEnabled (false); }});

panelpopupselection.setLayout(new FlowLayout ()); panelpopupselection.add (duvidaTextArea); panelpopupselection.add (respostaDuvidaTextArea); JPanel panelButton = new JPanel (); panelButton.setBackground (colorpadrao); panelButton.add (buttonEnviar); panelButton.add (buttonCancelar); panelpopupselection.add (panelButton); duvidaTextArea.setEnabled (false); respostaDuvidaTextArea.setEnabled (false); buttonEnviar.setEnabled (false); buttonCancelar.setEnabled (false);} }} } htmlPane = new JEditorPane(); htmlPane.setEditable(false); htmlPane.addHyperlinkListener(createHyperLinkListener()); scrollPane = new JScrollPane(); scrollPane.getViewport().add(htmlPane); this.setLayout(new BorderLayout(0, 0 )); JPanel northPanel = new JPanel (); northPanel.setBackground (colorpadrao); this.add (northPanel, BorderLayout.NORTH); this.treePane = new JScrollPane (); this.treePane.setBackground (colorpadrao3); this.add (this.treePane.add (this.tree), BorderLayout.WEST); this.add (scrollPane, BorderLayout.CENTER); this.add (panelpopupselection, BorderLayout.SOUTH); } 118

private void preencherArvore (String nomeCurso, String titleCurso) {this.top = new DefaultMutableTreeNode(new JLabel (this.titleCurso)); boolean moreRecords; this.resultSet = Biblioteca.getResultSet (this.connection, "SELECT * FROM ItemInfo where CourseId like '" + nomeCurso + "'"); try {if (this.resultSet != null) { catagory = new DefaultMutableTreeNode(new JLabel (titleCurso)); top.add(catagory); moreRecords = this.resultSet.next(); if (moreRecords ) { // Se h registros do { catagory.add(artist = new DefaultMutableTreeNode( new JLabel (resultSet.getString(7)))); } while (resultSet.next() ); }// if else { top.add(new DefaultMutableTreeNode("Sem contedo"));} } else { top.add(new DefaultMutableTreeNode("Sem contedo"));} } catch (SQLException se) {} this.treeModel = new DefaultTreeModel (top);} public void treeWillExpand(TreeExpansionEvent e) throws ExpandVetoException {} public void treeWillCollapse(TreeExpansionEvent e) {} public void treeExpanded(TreeExpansionEvent e) {} public void treeCollapsed(TreeExpansionEvent e) {} public void addTreeSelectionListener(TreeSelectionListener e) {} public void addTreeSelectionListener(ListSelectionEvent e) {} public void valueChanged(TreeSelectionEvent e) { if (! Biblioteca.transformaString (this.titleCurso)) (tree.getLastSelectedPathComponent().toString()).equals 119

{ String url = ""; boolean moreRecords; this.resultSet = Biblioteca.getResultSet (this.connection, "SELECT ItemInfo.Launch FROM ItemInfo where Title like '" + Biblioteca.transformaString (tree.getLastSelectedPathComponent().toString()) + "' and CourseID like '" + this.nomeCurso + "'"); try {if (this.resultSet != null) {moreRecords = this.resultSet.next(); if (moreRecords ) { // Se h registros url = "file:./" + this.resultSet.getString(1); }// if }} catch (SQLException se) {} try { htmlPane.setPage(getClass().getResource(url)); } catch(IOException ioe) { JOptionPane.showMessageDialog (null,"Can't follow link to " + url + ": " + ioe); }} } public void valueChanged(ListSelectionEvent e) { JOptionPane.showMessageDialog (null,"ListSelectionEvent");} private class ItemHandler implements ActionListener { public void actionPerformed(ActionEvent e ) {if (e.getSource() == items[ 0 ] ) {if (tree.getLastSelectedPathComponent() != null) { duvidaTextArea.setText ("Digite aqui sua duvida"); respostaDuvidaTextArea.setText ("E aguarde resposta"); duvidaTextArea.requestFocus(); duvidaTextArea.setEnabled (true); 120

respostaDuvidaTextArea.setEnabled (false); buttonEnviar.setEnabled (true); buttonCancelar.setEnabled (true); buttonEnviar.setText ("Registrar"); } } // if else { if (e.getSource() == items[ 1 ] ) // Mostrar { // tree.getLastSelectedPathComponent CreateTree.this.buttonEnviar.setText ("Ok"); CreateTree.this.mostrarDuvida (); } // if mostrar else {if (e.getSource() == items[ 2 ] ) // Registrar Resposta {if (tree.getLastSelectedPathComponent() != null) { CreateTree.this.mostrarDuvida (); buttonEnviar.setEnabled (true); buttonCancelar.setEnabled (true); if ((CreateTree.this.duvida) && (! CreateTree.this.duvidaRespondida)) {respostaDuvidaTextArea.setText ("Digite aqui a Resposta"); respostaDuvidaTextArea.requestFocus(); duvidaTextArea.setEnabled (false); respostaDuvidaTextArea.setEnabled (true); buttonEnviar.setText ("Responder"); } } } // if } } // else } // actionPerformed } // ItemHandler void mostrarDuvida () {this.DuvidaId = ""; this.duvida = false; this.duvidaRespondida = false; 121

if (tree.getLastSelectedPathComponent() != null) { String textoDuvida = "", textoRespostaDuvida = ""; String ItemIdentifier = ""; this.resultSet = Biblioteca.getResultSet (this.connection, "SELECT ItemInfo.ItemIdentifier FROM ItemInfo where Title like '" + Biblioteca.transformaString (tree.getLastSelectedPathComponent().toString()) + "' and CourseID like '" + this.nomeCurso + "'"); try {if (this.resultSet != null) {boolean moreRecords = this.resultSet.next(); if (moreRecords ) { ItemIdentifier = this.resultSet.getString(1); }// if }} catch (SQLException se) {} this.resultSet = Biblioteca.getResultSet (this.connection, "SELECT Duvida.DateTimeDuvida, Duvida.DateTimeResposta, "+ "Duvida.DateTimeCiente, Duvida.Duvida, Duvida.Resposta, Duvida.DuvidaId "+ "FROM Duvida where UserId = '" + this.userId + "' AND CourseID = '" + this.nomeCurso + "' AND ItemIdentifier = '" + ItemIdentifier + "' AND DateTimeCiente Is null and DateTimeDuvida Is not null"); try {if (this.resultSet != null) {boolean moreRecords = this.resultSet.next(); if (moreRecords ) { // Se h registros String data, data2; data=this.resultSet.getString(1); if (data != null) { data2 = this.resultSet.getString(2); if (data2 != null) {duvidaRespondida = true; 122

textoRespostaDuvida = this.resultSet.getString(5); buttonEnviar.setText ("Ciente"); buttonEnviar.setEnabled (true); buttonCancelar.setEnabled (true); } else {duvida = true;} textoDuvida = this.resultSet.getString(4); this.DuvidaId = this.resultSet.getString(6); } }// if } // if } // try catch (SQLException se) {} if ((duvida) || (duvidaRespondida)) {duvidaTextArea.setText (textoDuvida.trim()); respostaDuvidaTextArea.setText (textoRespostaDuvida.trim());} else {duvidaTextArea.setText ("") ; respostaDuvidaTextArea.setText ("") ; } }} public HyperlinkListener createHyperLinkListener() { return new HyperlinkListener() { public void hyperlinkUpdate(HyperlinkEvent e) { if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED) { if (e instanceof HTMLFrameHyperlinkEvent) { ((HTMLDocument)htmlPane.getDocument()).processHTMLFrameHyperlinkEvent( (HTMLFrameHyperlinkEvent)e); } else { try { htmlPane.setPage(e.getURL()); } catch (IOException ioe) { 123

System.out.println("IOE: " + ioe); }} }} }; } } 4) SampleTreeCellRenderer.java Esta classe/label auxilia na exibio dos cones de identificao ! e ? na rvore de atividades.

/* Copyright (c) 2003 Sun Microsystems, Inc. All Rights Reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: -Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. -Redistribution in binary form must reproduct the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of Sun Microsystems, Inc. or the names of contributors may be used to endorse or promote products derived from this software without specific prior written permission. This software is provided "AS IS," without a warranty of any kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN AND ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES OR LIABILITIES SUFFERED BY LICENSEE AS A RESULT OF OR RELATING TO USE, MODIFICATION OR DISTRIBUTION OF THE SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR INABILITY TO USE SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. You acknowledge that Software is not designed, licensed or intended for 124

use in the design, construction, operation or maintenance of any nuclear facility. */ /* @(#)SampleTreeCellRenderer.java1.16 03/01/23 */ import java.sql.*; import javax.swing.*; import javax.swing.Icon; import javax.swing.ImageIcon; import javax.swing.JLabel; import javax.swing.JTree; import javax.swing.tree.TreeCellRenderer; import javax.swing.tree.DefaultMutableTreeNode; import java.awt.Component; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; public class SampleTreeCellRenderer extends JLabel implements TreeCellRenderer { private Connection connection; private ResultSet resultSet; private String userId; private String nomeCurso; static protected ImageIcon duvidaIcon; static protected ImageIcon duvidaRespondidaIcon; static protected final Color SelectedBackgroundColor = new Color (255,200,103); static {try { duvidaIcon = new ImageIcon("duvida.gif"); duvidaRespondidaIcon = new ImageIcon("duvidarespondida.gif"); } catch (Exception e) {System.out.println("Couldn't load images: " + e);} } protected boolean selected; private boolean duvida; private boolean duvidaRespondida; public SampleTreeCellRenderer (Connection connection, ResultSet resultSet, String userId, String nomeCurso) {this.connection = connection; 125

this.resultSet = resultSet; this.userId = userId; this.nomeCurso = nomeCurso;} public Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) { String stringValue = tree.convertValueToText(value, selected, expanded, leaf, row, hasFocus); String ItemIdentifier = ""; setText(Biblioteca.transformaString (stringValue)); if(hasFocus) setForeground(Color.blue); else setForeground(Color.black); this.duvida = false; this.duvidaRespondida = false; this.resultSet = Biblioteca.getResultSet (this.connection, "SELECT ItemInfo.ItemIdentifier FROM ItemInfo where Title like '" + Biblioteca.transformaString (stringValue) + "' and CourseID like '" + this.nomeCurso + "'"); try {if (this.resultSet != null) { boolean moreRecords = this.resultSet.next(); if (moreRecords ) { ItemIdentifier = this.resultSet.getString(1); }// if } } catch (SQLException se) {} this.resultSet = Biblioteca.getResultSet (this.connection, "SELECT Duvida.DateTimeDuvida, Duvida.DateTimeResposta, "+ 126

"Duvida.DateTimeCiente FROM Duvida where UserId = '" + this.userId + "' AND " + "CourseID = '" + this.nomeCurso + "' AND " +"ItemIdentifier = '" + ItemIdentifier + "' AND DateTimeCiente Is null and DateTimeDuvida Is not null"); String data, data2; try {if (this.resultSet != null) {boolean moreRecords = this.resultSet.next(); if (moreRecords ) { data=this.resultSet.getString(1); if (data != null) {data2 = this.resultSet.getString(2); if (data2 != null) {this.duvidaRespondida = true;} else {this.duvida = true;} } }// if }} catch (SQLException se) {} if (this.duvida) {setIcon(duvidaIcon);} else { if (this.duvidaRespondida) {setIcon(duvidaRespondidaIcon);} else {setIcon(null);}} this.selected = selected; return this; } public void paint(Graphics g) { Color bColor; Icon currentI = getIcon(); if(selected) bColor = SelectedBackgroundColor; else if(getParent() != null) bColor = getParent().getBackground(); else 127

bColor = getBackground(); g.setColor(bColor); if(currentI != null && getText() != null) { int offset = (currentI.getIconWidth() + getIconTextGap()); if (getComponentOrientation().isLeftToRight()) { g.fillRect(offset, 0, getWidth() - 1 - offset, getHeight() - 1); } else {g.fillRect(0, 0, getWidth() - 1 - offset, getHeight() - 1); } } else g.fillRect(0, 0, getWidth()-1, getHeight()-1); super.paint(g); }} 5) Biblioteca.java Esta classe um biblioteca contendo cdigos para conexo, via ODBC, com banco de dados. import java.sql.*; class Biblioteca {public static Connection conexao (String bancoDados,String username, String password, String forname,String drive, String host) { String url = drive + host+ bancoDados; Connection connection = null; try {Class.forName(forname); connection = DriverManager.getConnection(url, username, password ); } catch (ClassNotFoundException cnfex ) { System.err.println("Failed to load JDBC/ODBC driver." ); cnfex.printStackTrace(); System.exit(1); } catch (SQLException sqlex ) { System.err.println("Unable to connect a " + url); sqlex.printStackTrace(); } return (connection); }

128

public static Connection conexaoOdbc (String bancoDados,String username, String password) {return (conexao (bancoDados,username, "sun.jdbc.odbc.JdbcOdbcDriver","jdbc:odbc:","" ));} public static ResultSet getResultSet (Connection connection, String query) { Statement statement; ResultSet resultSet = null; try { statement = connection.createStatement(); resultSet = statement.executeQuery(query ); } catch (SQLException sqlex ) {sqlex.printStackTrace(); } return (resultSet); } public static String transformaString (String s){ return (s.substring (s.indexOf("text=")+5,s.indexOf(",verticalAlignment=") ));} public static String executeSQL(Connection connection, String comandosql) {String resp = ""; Statement statement = null; try {statement = connection.createStatement(); statement.execute(comandosql); statement.close(); } catch (Exception e ) { resp = "ERRO: Problema ao executar comando SQL"; } return resp; }} password,

129

Você também pode gostar