JOÃO GABRIEL MARIANO DE OLIVEIRA MODELAGEM E DESENVOLVIMETO DE UM APLICATIVO HIPERMÍDIA PARA O ENSINO DE METODOLOGIAS ÁGEIS



Documentos relacionados
Com metodologias de desenvolvimento

Ágil. Rápido. Métodos Ágeis em Engenharia de Software. Introdução. Thiago do Nascimento Ferreira. Introdução. Introdução. Introdução.

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Capítulo 2. Processos de Software Pearson Prentice Hall. Todos os direitos reservados. slide 1

Processos de gerenciamento de projetos em um projeto

3 Qualidade de Software

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO DEPARTAMENTO DE ESTATÍSTICA E INFORMÁTICA BACHARELADO EM SISTEMAS DE INFORMAÇÃO RAPID APPLICATION DEVELOPMENT

3. Fase de Planejamento dos Ciclos de Construção do Software

2 Engenharia de Software

Planejamento - 7. Planejamento do Gerenciamento do Risco Identificação dos riscos. Mauricio Lyra, PMP

Aula 2 Revisão 1. Ciclo de Vida. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW

INTRODUÇÃO A PROJETOS

Comparativo entre Processos Ágeis. Daniel Ferreira

DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Desenvolvimento Ágil Modelos Ágeis. Profª Esp.: Maysa de Moura Gonzaga

UNIVERSIDADE ESTADUAL DA PARAÍBA CENTRO DE CIÊNCIAS E TECNOLOGIA DEPARTAMENTO DE QUÍMICA CURSO DE LICENCIATURA EM QUÍMICA LINDOMÁRIO LIMA ROCHA

1 Um guia para este livro

Recomendada. A coleção apresenta eficiência e adequação. Ciências adequados a cada faixa etária, além de

ESTUDO DE CASO: LeCS: Ensino a Distância

natureza do projeto e da aplicação métodos e ferramentas a serem usados controles e produtos que precisam ser entregues

O Processo Unificado

Metodologia de Desenvolvimento de Software. Prof. M.Sc. Sílvio Bacalá Jr

COORDENAÇÃO DE EAD MANUAL DE UTILIZAÇÃO DO MOODLE 2.6 PERFIL ALUNO. Versão 1.0

UNEMAT SISTEMA DE INFORMAÇÃO (SI) Professora: Priscila Pelegrini

Metadados. 1. Introdução. 2. O que são Metadados? 3. O Valor dos Metadados

ESTENDENDO A UML PARA REPRESENTAR RESTRIÇÕES DE INTEGRIDADE

Introdução Ciclo de vida tradicional de desenvolvimento Prototipagem Pacotes de software Desenvolvimento de 4ª geração Terceirização

Guia de utilização da notação BPMN

A construção de um manual sobre a utilização dos modelos também poderá alavancar o uso das representações. Este conteria a explicação detalhada da

Indicamos inicialmente os números de cada item do questionário e, em seguida, apresentamos os dados com os comentários dos alunos.

JOGOS ELETRÔNICOS CONTRIBUINDO NO ENSINO APRENDIZAGEM DE CONCEITOS MATEMÁTICOS NAS SÉRIES INICIAIS

Requisitos para Gestão de Requisitos no Desenvolvimento de Software que Utilizam Prática Ágeis

MÍDIAS NA EDUCAÇÃO Introdução Mídias na educação

Administração de Pessoas

O PROCESSO DE INCLUSÃO DE ALUNOS COM DEFICIÊNCIA VISUAL: UM ESTUDO DE METODOLOGIAS FACILITADORAS PARA O PROCESSO DE ENSINO DE QUÍMICA

CURSO DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS

Q-Acadêmico. Módulo CIEE - Estágio. Revisão 01

CADERNOS DE INFORMÁTICA Nº 1. Fundamentos de Informática I - Word Sumário

Portal do Projeto Tempo de Ser

Síntese do Projeto Pedagógico do Curso de Sistemas de Informação PUC Minas/São Gabriel

1 Introdução. Componentes Usuários. Provedor de Serviços. Figura 1.1 Ambiente de oferecimento de serviços

INTERPRETANDO A GEOMETRIA DE RODAS DE UM CARRO: UMA EXPERIÊNCIA COM MODELAGEM MATEMÁTICA

agility made possible

FILOSOFIA SEM FILÓSOFOS: ANÁLISE DE CONCEITOS COMO MÉTODO E CONTEÚDO PARA O ENSINO MÉDIO 1. Introdução. Daniel+Durante+Pereira+Alves+

Metodologias Ágeis. Aécio Costa

Desenvolvimento Ágil de Software

Roteiro SENAC. Análise de Riscos. Planejamento do Gerenciamento de Riscos. Planejamento do Gerenciamento de Riscos

A Sustentabilidade e a Inovação na formação dos Engenheiros Brasileiros. Prof.Dr. Marco Antônio Dias CEETEPS

A NECESSIDADE DE UMA NOVA VISÃO DO PROJETO NOS CURSOS DE ENGENHARIA CIVIL, FRENTE À NOVA REALIDADE DO SETOR EM BUSCA DA QUALIDADE

perspectivas e abordagens típicas de campos de investigação (Senra & Camargo, 2010).

ADMINISTRAÇÃO I. Família Pai, mãe, filhos. Criar condições para a perpetuação da espécie

Gerenciamento de Projetos Modulo VIII Riscos

Disciplina: Alfabetização

Processos de Software

TÉCNICAS DE PROGRAMAÇÃO

A SEGUIR ALGUMAS DICAS PARA O DESENVOLVIMENTO DE UM PROJETO CIENTÍFICO

SCRUM: UM MÉTODO ÁGIL. Cleviton Monteiro

INTEGRAÇÃO DE MÍDIAS E A RECONSTRUÇÃO DA PRÁTICA PEDAGÓGICA

08/05/2009. Cursos Superiores de. Prof.: Fernando Hadad Zaidan. Disciplina: PIP - Projeto Integrador de Pesquisa. Objetivos gerais e específicos

Curso Superior de Tecnologia em Gestão de Recursos Humanos. Professora Mestranda Elaine Araújo

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

Soluções via.net para otimização de processos paramétricos com Autodesk Inventor.

Pedagogia Estácio FAMAP

Engenharia de Software II

MANIFESTO ÁGIL. Esses conceitos aproximam-se melhor com a forma que pequenas e médias organizações trabalham e respondem à mudanças.

Gerenciamento da Integração (PMBoK 5ª ed.)

3.1 Definições Uma classe é a descrição de um tipo de objeto.

Requisitos de Software

Ouvir o cliente e reconhecer o problema: ingredientes essenciais à gestão de projetos

PLANEJAMENTO ESTRATÉGICO

Agenda Semântica. Grupo: Francisco Rodrigues Júnior Guilherme Daher Ferreira Luana Vieira Morellato Renan Rigo

5.1. Análise Comparativa

BSC Balance Score Card

Teste de Software: Um Breve Estudo do Importante Processo no Desenvolvimento de Softwares

CASTILHO, Grazielle (Acadêmica); Curso de graduação da Faculdade de Educação Física da Universidade Federal de Goiás (FEF/UFG).

DESENVOLVENDO O SISTEMA

LEITURA E ESCRITA NO ENSINO FUNDAMENTAL: UMA PROPOSTA DE APRENDIZAGEM COM LUDICIDADE

O MOODLE COMO FERRAMENTA DIDÁTICA

Desenvolvimento de uma Etapa

Casos de uso Objetivo:

Tutorial 7 Fóruns no Moodle

DESENVOLVENDO COMPETÊNCIAS MATEMÁTICAS Marineusa Gazzetta *

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0

BUSCANDO UM PROCESSO DE DESENVOLVIMENTO DE SOFTWARE PARA AUXILIAR A GESTÃO DE PRODUÇÃO DO PBL-VE E DO PBL-VS

2 METODOLOGIA DA PESQUISA

UTILIZAÇÃO DAS METODOLOGIAS ÁGEIS XP E SCRUM PARA O DESENVOLVIMENTO RÁPIDO DE APLICAÇÕES

4- PROJETO DE BANCO DE DADOS

Levantamento, Análise e Gestão Requisitos. Aula 06

Relatório de Investigação da Escola julho 2015

O USO DO EDITOR DE APRESENTAÇÃO NO DESENVOLVIMENTO DE ATIVIDADES EDUCATIVAS

QUALIDADE DE SOFTWARE

Uso da Telefonia Móvel: Uma Ferramenta de Interação para a Aprendizagem a Distância

18º Congresso de Iniciação Científica IMPLEMENTAÇÃO DE UM MODELO DE TESTE DE APLICAÇÕES WEB

Autoria Multimídia: o uso de ferramentas multimídia no campo educacional

Resumo artigo Agile Modeling- Overview

CENTRO UNIVERSITÁRIO DE ENSINO SUPERIOR DO AMAZONAS - CIESA CENTRO DE PROCESSAMENTO DE DADOS CPD MANUAL DE UTILIZAÇÃO DO MOODLE 2.

Figura 5.1.Modelo não linear de um neurônio j da camada k+1. Fonte: HAYKIN, 2001

AS CONTRIBUIÇÕES DAS VÍDEO AULAS NA FORMAÇÃO DO EDUCANDO.

Alexandre Lima Guilherme Melo Joeldson Costa Marcelo Guedes

Transcrição:

JOÃO GABRIEL MARIANO DE OLIVEIRA MODELAGEM E DESENVOLVIMETO DE UM APLICATIVO HIPERMÍDIA PARA O ENSINO DE METODOLOGIAS ÁGEIS LAVRAS - MG 2014

JOÃO GABRIEL MARIANO DE OLIVEIRA MODELAGEM E DESENVOLVIMETO DE UM APLICATIVO HIPERMÍDIA PARA O ENSINO DE METODOLOGIAS ÁGEIS Monografia de graduação apresentada ao Departamento de Ciência da Computação da Universidade Federal de Lavras como parte das exigências do curso de Sistemas de Informação para obtenção do título de Bacharel em Sistemas de Informação. Orientador: Prof. Dr. Andre Luiz Zambalde LAVRAS - MG 2014

A família que eu nasci A família que conheci em Lavras A família que vou construir DEDICO

AGRADECIMENTOS A minha família que sempre apoiou minhas e me ajudou mesmo que longe, em especial meu pai Gabriel e minha mãe Martinéia e meus irmãos Gabrielle e Gabriel Jr. graças a eles eu construi meu caráter. Também não posso deixar de agradecer meus tios Luiz Fernando e Rita de Cassia e os primos Matheus e Thiago, pois quando sentia saudades de casa podia ser confortado em sua casa. Agradecer meus amigos Jose Luiz e Flávia Fernandes que acompanharam a distancia minha graduação e quando voltava pra minha cidade natal me recebiam para uma prosa gostosa. Agradecer também os amigos que fiz aqui, principalmente os amigos/irmãos do brejão em especial ao Francis, Antônio Passos, Fabio Nogueira, Giovanni, Luiz Carlos, Eduardo que tiveram muita paciência de dividir um teto comigo. E os grandes amigos Thiago Dias, Ale, Laissa, Daniel, Priscila, Patrícia, Mariana (estrela), Barbara, Sassa, Esther, Jesimar, Graziela e tantos outros que me acompanharam ao longo do curso. Por ultimo quero agradecer a minha companheira de longa data Ana Flavia, sem ela a chances de eu ter chegado aqui seriam bem pequenas. Graças a ela eu comecei o meu interesse por TI, quando me incentivou a começar um curso técnico. Foi meu porto, meu incentivo e estava preparada pra me dar uma sacudida quando eu desanimava. Essa conquista é tão sua quanto minha. Obrigado por me esperar já estou chegando!

RESUMO O presente trabalho tem por objetivo a modelagem e o desenvolvimento de um aplicativo hipermídia educativo voltado para a aprendizagem das Metodologias Ágeis. O produto desenvolvido faz o uso de ferramentas e estruturas fornecidas pelo ambiente de autoria hipermídia Multimídia Builder, permitindo a apresentação do conteúdo geral de metodologias ágeis, através de representações gráficas e sonoras. Para a elaboração do projeto, utilizou-se o paradigma OOHDM (Object Oriented Hypermedia Design Model). O trabalho compõe-se, basicamente, da revisão de literatura de sistemas hipermídia, hipermídia educacional, OOHDM e metodologias ágeis. Concluiu-se que a utilização do OOHDM é eficiente, permitindo fácil documentação e reuso. O produto final, aplicativo hipermídia, constitui uma ferramenta preliminar de ensinoaprendizagem de Metodologias Ágeis. Palavras chave: Hipermídia, OOHDM, Metodologias Ágeis.

ABSTRACT This work aims at modeling and development of an educational hypermedia application geared towards learning the Agile Methodologies. The product developed is the use of tools and frameworks provided by hypermedia authoring Multimedia Builder environment, allowing the presentation of the general contents of agile methodologies, through graphic and audio representations. To prepare the dog project, we used the paradigm OOHDM (Object Oriented Hypermedia Design Model). The work consists basically of a literature review of hypermedia systems, educational hypermedia, OOHDM and agile methodologies. It was concluded that the use of OOHDM is efficient, allowing easy reuse and documentation. The final product, hypermedia application, is a primary tool for teaching and learning of Agile Methodologies. Keyword: Hypermedia, OOHDM, Agile Methodologies.

LISTAS DE FIGURAS FIGURA 1 - COMPONENTES DA METODOLOGIA OOHDM... 10 FIGURA 2 - CICLO DE VIDA ASD... 20 FIGURA 3 - MODELO FDD... 22 FIGURA 4 - CICLO SCRUN... 23 FIGURA 5 - TIPOS DE PESQUISA CIENTÍFICA (JUNG, 2009)... 25 FIGURA 6 - MODELO CONCEITUAL... 28 FIGURA 7 - CLASSE CONCEITUAL "MENUPRINCIPAL"... 29 FIGURA 8 - CLASSES CONCEITOSBASICOS E VALORESPRINCIPIOS... 29 FIGURA 9 - CLASSES DAS METODOLOGIAS ÁGEIS... 30 FIGURA 10 - MODELO NAVEGACIONAL "MENUPRINCIPAL"... 31 FIGURA 11 - MODELO NAVEGACIONAL "CONCEITOSBASICOS"... 31 FIGURA 12 - MODELO NAVEGACIONAL "XP"... 32 FIGURA 13 - MODELOS NAVEGACIONAIS DAS CLASSES DE METODOLOGIAS ÁGEIS... 32 FIGURA 14 - DESIGN ABSTRATO "MENUPRINCIPAL"... 33 FIGURA 15 - DESIGN ABSTRATO "CONCEITOSBASICOS"... 34 FIGURA 16 - DESIGN ABSTRATO "METODOLOGIAAGIL"... 35 FIGURA 17 - DESIGN ABSTRATO "SUBCLASSES"... 36 FIGURA 18 - INTERFACE GRÁFICA "MENUPRINCIPAL"... 37 FIGURA 19 - INTERFACE GRÁFICA "CONCEITOSBASICOS"... 38 FIGURA 20 - INTERFACE GRAFICA "SCRUM"... 39 FIGURA 21 - INTERFACE GRÁFICA EXIBINDO VIDEO... 40 FIGURA 22 - INTERFACE GRÁFICA EXIBINDO IMAGEM... 40 FIGURA 23 - INTERFACE GRÁFICA SUBCLASSE... 41

SUMÁRIO 1 INTRODUÇÃO... 1 1.1 CONTEXTUALIZAÇÃO E MOTIVAÇÃO... 1 1.2 PROBLEMA E OBJETIVO DE PESQUISA... 2 1.3 ESTRUTURA DO TRABALHO... 3 2 REFERENCIAL TEÓRICO... 4 2.1 HIPERTEXTO E HIPERMÍDIA... 4 2.1.1 Construção de hipermídia... 6 2.1.2 Hipermídia Educacional... 7 2.2 OOHDM (OBJECT-ORIENTED HYPERMEDIA DESIGN METHOD)... 8 2.3 METODOLOGIAS AGEIS... 14 2.3.1 Introdução... 14 2.3.2 Manifesto Ágil... 16 2.3.3 Conceitualização das metodologias... 18 3 METODOLOGIA DE PESQUISA... 24 3.1 TIPO DE PESQUISA... 24 3.2 PROCEDIMENTOS METODOLÓGICOS... 26 4 RESULTADOS E DISCUSSÃO... 28 4.1 MODELAGEM CONCEITUAL... 28 4.2 PROJETO NAVEGACIONAL... 30 4.3 PROJETO ABSTRATO... 32 4.4 IMPLEMENTAÇÃO... 36 5 CONCLUSÕES... 42 REFERÊNCIAS BIBLIOGRÁFICAS... 43

1 1 INTRODUÇÃO Este capítulo faz uma introdução sobre o assunto abordado, contextualizando a necessidade de utilização de sistemas hipermídia no processo de ensino-aprendizagem e difusão do conhecimento. Tem-se ainda a especificação do principal objetivo de pesquisa e uma breve descrição dos demais capítulos componentes deste estudo. 1.1 Contextualização e motivação Na atual realidade em que vivemos, na qual busca-se adquirir conhecimento no menor tempo possível, percebe-se a necessidade de utilizar ferramentas que facilitem a compreensão de informações. Para que seja solucionado o impasse de informação versus tempo, foram criadas tecnologias que auxiliam no aprendizado, entre elas a hipermídia, que será abordada neste trabalho, como ferramenta de otimização de aprendizagem. De acordo com Zambalde (1996), projetos que visam estimular o uso dos computadores como ferramenta de apoio à difusão da informação e ao ensino através de sistemas hipermídia (mídias digitais e internet) são desenvolvidos em todo o mundo. A maioria desses projetos alcança aplicações em diversas áreas de conhecimento, tais como informática, medicina, história, geografia, matemática, português, inglês e biologia. Enfim cada dia surgem novas áreas de aplicação que utilizam a flexibilidade dos hipertextos combinada com a riqueza dos tipos de dados da multimídia. Neste sentido Cunha (2002) afirma que para desenvolver um sistema hipermídia que seja de qualidade e atenda aos requisitos básicos de manutenção e reuso, é preciso que se busque um modelo de autoria que possa descrever toda a estrutura da aplicação e sua semântica de navegação de uma forma independente da implementação. Este sistema deve fornecer construções de

2 design de alto nível e mecanismos de abstração, bem como permitir uma transição tranquila entre a abstração do domínio da aplicação e a implementação final, preenchendo assim, o espaço entre os modernos mecanismos de engenharia de software e as peculiaridades da hipermídia. Ele ainda deve ser capaz de fornecer meios para que se façam alterações no modelo para uma aplicação final (e vice-versa), tornando a manutenção e o reuso mais fácil. O presente trabalho, dentro do contexto educacional, propõe a utilização da hipermídia como instrumento facilitador da compreensão das Metodologias Ágeis. Na literatura geralmente encontra-se esse tipo de conhecimento disponibilizado em forma de artigos científicos que requerem de seu leitor um conhecimento mais abrangente, tornando seu entendimento mais complexo. Sendo assim, o sistema educacional desenvolvido vem como um agente facilitador da aprendizagem desta área do conhecimento. 1.2 Problema e objetivo de pesquisa O principal objetivo do presente trabalho foi a modelagem e desenvolvimento de um aplicativo educacional hipermídia voltado ao ensinoaprendizagem de metodologias ágeis, com intuito de criar uma forma alternativa para ser utilizada no processo de ensino-aprendizagem. A modelagem devera atender ao pressuposto OOHDM (Método de Desenvolvimento Hipermídia Orientado a Objeto), isto é: modelagem conceitual, projeto navegacional, projeto abstrato e iplementação de Schwaber e Rossi (1994). Entende-se que usando objetos não só como artefatos de implementação, mas principalmente como ferramentas de modelagem durante o processo de desenvolvimento de aplicações hipermídia, consegue-se solucionar problemas de reuso e manutenção.

3 Como ferramenta de aplicação e desenvolvimento foi utilizado o Multimídia builder 4.9.8. 1.3 Estrutura do Trabalho O trabalho está estruturado nos capítulos: O Capítulo 2 apresenta o Referencial Teórico, utilizando-se de fundamentos teóricos obtidos da literatura de artigos, livros, monografias e web. Onde os conceitos serão explicados para o entendimento do trabalho. No capítulo 3 tem-se a Metodologia, com o detalhamento do modelo proposto, contendo informações sobre como o estudo foi conduzido e os recursos e procedimentos utilizados na produção da hipermídia. O capítulo 4 detalha o processo de modelagem e desenvolvimento do aplicativo hipermídia voltado ao ensino e aprendizado de Metodologias Ágeis. Ao final tem-se a conclusão do trabalho, indicações para trabalhos futuros, além da lista de referências utilizadas.

4 2 REFERENCIAL TEÓRICO Neste capitulo são apresentadas referencias, de outros autores, necessárias para entendimento do assunto abordado. Inicialmente tem-se a conceituação de hipermídia, em seguida trata-se da modelagem OOHDM e Metodologias Ágeis. 2.1 Hipertexto e Hipermídia O termo hipertexto refere-se à informação organizada de maneira não linear. Esta organização permite localizar assuntos diferentes, mas interrelacionados em diferentes níveis de aprofundamento, proporcionando a personalização do processo de ensino-aprendizagem e permitindo ao usuário trabalhar em seu próprio ritmo, nível e estilo. Cabe ao usuário escolher a sequência da navegação e explorar as informações do hipertexto (BUGAY; ULBRICHT, 2000). Rezende e Cola (2006) definem a relação de hipertexto e multimídia como hipermídia. Entende-se que multimídia é a união de múltiplos meios como, por exemplo, textos, imagens, sons, animações e vídeo para representar uma informação. Este termo pode qualificar representações de informações veiculadas por sistemas computacionais ou por outros suportes, não informatizados. Por hipertexto entende-se um sistema computacional que representa nós de informações, organizados de forma não linear, por meio de ligações conceituais (links) (REZENDE; COLA, 2006). Segundo Zambalde (2012), Hipermídia refere-se a um tipo de aplicação ou sistema de informação que combina diferentes meios de comunicação (nós de informação) para fornecer ao usuário uma maior possibilidade de interação. As aplicações de internet, implementadas no World Wide Web (WWW) incorporam o conceito de hipermídia como CDs e jogos educacionais (ZAMBALDE et al, 2012).

5 Os principais conceitos relacionados às estruturas que compõe a hipermídia são os seguintes (LIMA, 1994): Nós: parte do documento hipermídia ou de hipertexto que contém um trecho da informação que se está apresentando (conteúdo de informação); Elos (ligações ou links): relacionamento entre os nós, ou seja, os relacionamentos existentes entre dois trechos de informação do hiperdocumento; Âncoras: a percepção dos elos é, usualmente, feita através de âncoras (ou botões). As âncoras são marcadores que indicam ao leitor a existência de um (ou mais) elos, e podem ser ativadas através de alguma operação, normalmente um clique do mouse. Segundo Schwabe (1993), as âncoras podem ser indicadas de diversas formas: símbolos ou ícones específicos que servem como marcadores; vídeo reverso; caixas ao redor do texto ou bordas ao redor dos gráficos ou imagens; indicações tipográficas (negrito, itálico, cor etc.); mudanças na forma do cursor; piscamento, entre outros. Navegação / Folheio: o que o sistema de hipertexto ou hipermídia tenta é dar ao leitor a sensação de manuseio de um livro, ou outro documento de papel, quando este manipula as janelas de uma aplicação. Portanto, uma das mais importantes operações neste tipo de sistema é o folheio ou browsing das páginas do hiperdocumento. Alguns sistemas, além de permitir o browsing, fornecem também ao leitor um mapa, na forma de um grafo, com a topologia da rede (também conhecido como diagrama). Autoria em ponto grande: a preocupação aqui é com os diversos tipos de nós e elos, ou seja, como os conceitos do domínio da aplicação (estrutura planta), sem levar em conta detalhes. Autoria em ponto pe-

6 queno: depois de definidos nós e elos, e quais especificações (ou instâncias) destes tipos ocorrerão, são definidos os detalhes da aplicação. O desenvolvimento de boas aplicações hipermídia pressupõe a ampla exploração de suas possibilidades, ou seja, uma rede rica em conexões e informações que permita ao usuário navegar livremente pelo hiperespaço. Não há sentido em se utilizar aplicações hipermídia apenas de forma linear ou como se estivesse lendo um livro, sequencialmente (ASSIS et al, 2004). O hipertexto surge como uma alternativa mais eficiente para a comunicação no meio digital, na medida em que minimiza os limites impostos para a leitura na tela e explora de forma funcional as possibilidades de construção de sentidos viabilizadas pelo computador: o uso de links e da integração de várias linguagens favorecida pelos programas de edição de texto, de som e de imagem. Adicionalmente, como o leitor tem acesso direto à matriz textual, a ausência de custos no processo de reprodução do texto favorece construções textuais que se organizam de forma inclusiva e não mais da forma exclusiva que tipifica a produção de textos impressos (BRAGA, 2005). Por suas qualidades específicas, a hipermídia têm sido amplamente utilizada no contexto educativo. A hipermídia permite relacionar assuntos diversos de maneira interconectada, possibilitando ao aluno se aprofundar em variados níveis de um determinado conhecimento, de acordo com seu interesse e ritmo de aprendizagem. Além disso, a integração de diferentes linguagens ou mídias possibilita a exploração de diversos sentidos, ampliando as formas de aproximação entre o aluno e o conteúdo; assim como gera certo grau de redundância, situação necessária ao ato cognitivo (NUNES; GONÇALVES, 2011). 2.1.1 Construção de hipermídia De acordo com Schwabe (1993), o projeto de uma aplicação hipermídia

7 deve cuidar da modelagem conceitual, ou seja, o mapeamento da estrutura da informação a ser apresentada, abstraindo-se da parte de apresentação. Isso permite ao projetista criar um mesmo projeto lógico que possa ser utilizado para implementação de diversas plataformas de hardware e software (reuso). Segundo o autor, após a modelagem conceitual é, construído o modelo navegacional que descreve como serão os relacionamentos a serem implementados a cada pagina da aplicação. A semântica de desenvolvimento é de alto nível. Na seqüência, tem-se o design abstrato da interface, onde se especifica a forma e o conteúdo da interface com o usuário, obedecendo às determinações da modelagem e navegação e mantendo-se o critério de abstração e reuso. A preocupação principal deste passo é a interação do usuário com a aplicação. Depois que este passo for concluído, tem-se informação bastante para implementar a aplicação usando um ambiente hipermídia. Em outras palavras, o design abstrato da interface provê um mapeamento entre a abstração (o projeto da aplicação em alto-nível) e a implementação propriamente dita em um dado ambiente de software e hardware (CUNHA, 2002). 2.1.2 Hipermídia Educacional Pelo grande poder oferecido pela hipermídia de apresentar informações não somente através de textos, mas também de imagens, sons, vídeos e animações, esta tem se destacado também em um meio comum e muito importante, a área de ensino, mostrando-se como ferramenta capaz de prender a atenção dos alunos de forma mais interessante e eficaz. Tendo em mente estes fatores, e ainda levando à conta a necessidade de criação de uma forma de aprendizado que envolva cada vez mais a atenção dos usuariaos surgem então os sistemas de hipermídia educacional (BORGES, 2011).

8 Segundo Guedes (2004), através de recursos de multimídia e hipertexto, o estudante pode navegar pela informação disponível de forma livre, sem uma sequência predefinida, o que torna a interatividade muito maior, sendo o usuário não apenas um espectador passivo, mas também um participante ativo. De acordo com Swan & Meskill (1996), existe uma série de razões pelas quais a hipermídia apresenta vantagens sobre textos impressos, citando algumas: Hipermídia permite um aprendizado independente através do controle das informações e eventos pelo estudante promovendo um aprendizado centrado. Hipermídia tem sido um poderoso catalizador para o ensino cooperativo atribuído à possibilidade de processos de aprendizado mediados socialmente. Permite visões Construcionistas do aprendizado, em que o aprendizado ocorre quando estudantes constroem estruturas de conhecimento ativamente e coletivamente. Permite múltiplas representações do conhecimento e uma análise de domínio não-linear, podendo tomar uma grande quantidade de informações acessíveis das quais surgem múltiplos significados e interpretações. Os elementos da multimídia permitem diferentes estilos de aprendizado. Estes elementos permitem a hipermídia um ambiente rico e atrativo, contribuindo para um alto nível de envolvimento e motivação. 2.2 OOHDM (Object-Oriented Hypermedia Design Method) O OOHDM é um modelo de projeto e implementação proposto por Schwabe e Rossi (1995), que utiliza o conceito de orientação a objetos para o desenvolvimento de aplicativos hipermídia, separando a modelagem estrutural da implementação. O OOHDM é primariamente um mecanismo de modelagem, que permite

9 a descrição do domínio da aplicação usando mecanismos de alto nível e independente do sistema de hipertextos já existente ou a ser projetado (CUNHA, 2002). O modelo faz uma evolução desde o modelo abstrato até uma descrição em alto nível da aplicação hipermídia e mais tarde em aplicações concretas, que não necessariamente precisam ser implementadas num sistema orientado a objeto (CUNHA, 2002). Ele ainda permite o projeto conceitual da aplicação sem que o autor tenha que se preocupar demasiadamente com detalhes de implementação, servindo também como forma de comunicação entre projetistas, implementadores e usuários (CUNHA, 2002). O principal objetivo do Modelo OOHDM é facilitar a modelagem de projetos independente do conteúdo que ira alimenta-lo. OOHDM considera o processo de desenvolvimento da aplicação hipermídia como um processo de quatro atividades: modelagem de domínio ou conceitual, projeto navegacional, projeto da interface abstrata e implementação, como é demonstrado na figura 1, desempenhadas em uma mistura de estilos iterativos e incrementais de desenvolvimento; em cada etapa um modelo é construído ou enriquecido.

10 Figura 1 - Componentes da metodologia OOHDM As setas de avanço demonstram a evolução natural do empreendimento de projeto, enquanto as setas de retorno expressam não apenas a possibilidade de feedback (volta no processo), mas também a existência de um modelo simples, porém potente, de rastreamento que permite mapear as modificações em um modelo de projeto para partes de um outro modelo (rastreamento para trás) (SCHWABE; ROSSI, 1994). Durante a modelagem conceitual, um modelo do domínio da aplicação é construído utilizando-se princípios bem conhecidos de modelagem orientada a objetos aumentados com algumas primitivas tais como perspectivas de atributo e sub-sistemas. Classes conceituais podem ser construídas utilizando-se hierarquias de agregação e de generalização/especialização. Não há, nesta etapa

11 preocupação com os tipos de usuários e tarefas, apenas com a semântica do domínio da aplicação. O produto desta etapa é um esquema de classes e objetos construído a partir de Sub-Sistemas, Classes e Relações (SCHWABE; ROSSI, 1994). Esta modelagem segue os princípios de Orientação a Objetos, com notação semelhante a UML (Unified Modeling Language). A modelagem conceitual não distingue os tipos de usuários, tarefas ou com a implementação dos procedimentos futuros. Uma das características das aplicações hipermídia é a noção de navegação. No OOHDM, uma aplicação é vista como uma visão navegacional do modelo conceitual. Esta visão é construída durante o Projeto Navegacional levando-se em conta os tipos de usuários aos quais a aplicação se destina e o conjunto de tarefas que deverão desempenhar utilizando-o. Diferentes modelos navegacionais podem ser construídos para o mesmo esquema conceitual, expressando, desta forma, diferentes visões (aplicações) no mesmo domínio. Os aspectos dinâmicos da navegação são apresentados na forma de Diagramas de Navegação, um modelo baseado em maquinas de estados no qual são mostradas transformações no estado do espaço navegacional (FIALHO, 2004). Durante o Projeto de Interface Abstrata um modelo de interface é construído. Este modelo especifica que objetos de interface serão vistos pelo usuário e, particularmente, a forma que tomarão diferentes objetos navegacionais, que objetos de interface ativarão a navegação, a maneira como os objetos de interface multimídia serão sincronizados e que transformações ocorrerão na interface (SCHWABE; ROSSI, 1994). Esta tarefa exige muito cuidado, pois é um ponto crítico da criação de uma aplicação hipermídia. Pois nesta etapa surgira a interface de contato com o usuário. Para isto é necessário especificar:

12 A aparência de cada objeto navegacional que será percebido pelo usuário, isto é, a representação de seus atributos (incluindo as âncoras). O mesmo objeto navegacional pode ter diferentes representações de interface em diferentes situações. Por exemplo, um nó pode ter a representação de uma fotografia de um monumento ou a de um ícone em um mapa que atue como um índice para monumentos; outros objetos de interface para oferecer as diversas funções do aplicativo, como barras de menus, botões de controle e menus; os relacionamentos entre os objetos de interface e navegacionais, tais como o modo com que um evento externo, como o fato de o usuário "clicar" o mouse afetará a navegação; as transformações de interface que ocorrem pelo efeito da navegação ou de eventos externos no computador de diferentes objetos de interface; a sincronização de alguns objetos de interface deve ser considerada, especialmente quando há meios dinâmicos, como áudio e vídeo envolvidos. Para o desenvolvimento da interface abstrata na metodologia OOHDM, faz-se o uso de ADVs Abstract Data Views Tal modelo de projeto fora criado orginalmente para especificar de forma clara e formal a separação entre a interface do usuário e os componentes de um sistema de software, e para oferecer um método de projeto independente da implementação, gerando graus mais altos de reuso de componentes de projeto de interfaces (CARNEIRO et al, 1994; COWAN et al, 1995). Um modelo ADV, quando usado em um projeto de aplicação hipermídia, pode ser visto como um objeto de interface contendo um conjunto de atributos que definem suas propriedades de percepção e o conjunto de eventos com os

13 quais pode lidar, como os eventos gerados pelo usuário (ROSSI, 1996). Finalmente, mapeando os modelos navegacionais e de interface ao ambiente de implementação escolhido, o autor produz o sistema real de hipermídia a ser rodado. Em particular, o modelo de interface pode ser implementado de forma direta sobre plataformas hipermídia disponíveis tais como Hypercard, Toolbook, MacWeb, Mulimedia Builder 3d e Flash Director (SCHWABE; ROSSI, 1994). Analisando as informações acima, pode-se afirmar que o OOHDM potencializa os processos de construção de aplicações hipermídia com a introdução de um novo conceito: a utilização de objetos. Segundo Schwabe e Rossi (SCHWABE; ROSSI, 1994), as vantagens de se utilizar objetos na modelagem de aplicações hipermídia são: oferece um referencial natural para raciocinar acerca de entidades do mundo real, objeto da maior parte das aplicações hipermídia; fornece mecanismos de abstração adequados ao nosso empreendimento como Agregação e Especialização/Generalização; desde que estrutura e comportamento sejam encapsulados por objetos, seremos capazes de elaborar não apenas aplicações hipermídia convencionais (como Art Gallery ou Dinossaurs da Microsoft), mas também aplicações sofisticados combinando navegação hipermídia com diferentes tipos de processamento de informação, como ocorre, por e- xemplo, nos ambientes de Engenharia de Software; são utilizadas as mesmas primitivas de modelagem (objetos, classes), simplificando a transição de uma atividade para outra; ao longo do processo utilizamos os mesmos mecanismos de abstração, isto é, agregação, classificação e generalização/especialização.

14 pelo fato de os objetos serem artefatos reativos, podem ser construídas aplicações sofisticadas baseadas em hipermídia, definindo-se padrões de comportamento e de comunicação entre objetos; aplicações projetadas e construídas em torno de objetos tendem a ser mais robustas e fáceis de modificar, tanto pelo uso de polimorfismo e herança como por composição; construir novas aplicações reutilizando componentes existentes é altamente viável quando os componentes são descritos como objetos. 2.3 Metodologias ageis Neste capitulo o leitor encontrara informações referentes as metodologias ágeis encontrados em textos científicos. Buscou-se abordar rapidamente as principais metodologias envolvidas no contexto ágil. 2.3.1 Introdução De acordo com Pressman (2006), para acabar com o caos no desenvolvimento de software, na engenharia de software era preciso processos que estrutura no desenvolvimento do software. Com proposta foram modelos prescritivos de processo, que dividia o desenvolvimento em etapas. Segundo Bassi Filho (2008) o modelo Clássico ou Sequencial foi o primeiro processo publicado de desenvolvimento de software (BASSI, 2008). Desde sua introdução tem sido muito utilizado. É um modelo em que existe uma sequência a ser seguida de uma etapa a outra. Cada etapa tem associada ao seu término uma documentação padrão que deve ser aprovada para que se inicie a etapa imediatamente posterior. De uma forma geral fazem parte do modelo Clássico as etapas de definição de requisitos, projeto do software, implementação e teste unitário, integração e teste do sistema, operação e manutenção. Esse modelo é derivado

15 de outras engenharias tradicionais (Civil, Elétrica, Naval,...) e foi o primeiro a ser usado pela Engenharia de Software, na década de 70 (SOARES, 2004). Até o inicio da década de 90 o modelo Cascata foi a forma de desenvolvimento mais usada, apesar das advertências dos pesquisadores da área e dos desenvolvedores, que identificaram os problemas gerados ao se adotar esta visão sequencial de tarefas. Alguns pesquisadores descrevem que é impossível especificar totalmente um software antes do inicio de sua implementação (BROOKS, 1987). Um desenvolvimento incremental é estimulado como um modelo que apresenta menores riscos e maiores possibilidades de sucesso (SOARES, 2004). No modelo incremental, um sistema é dividido em incrementos que possuem conjuntos de funcionalidades. O primeiro incremento é definido com as funcionalidades mais prioritárias, e os incrementos subsequentes são definidos com as funcionalidades adicionais. Cada incremento desenvolvido e validado é entregue ao cliente, que pode colocá-lo em operação e assim começar a usufruir antecipadamente de parte do sistema solicitado (SOMMERVILLE, 2011). Porem um modelo incremental causa problemas com documentação, torna-se necessário, então, utilizar metodologias, que não são orientadas à documentação nem tampouco se preocupam apenas com a codificação (SOARES, 2004). Segundo Limbardi e Barbosa (2010), novos modelos incremetnais de desenvolvimento foram surgindo, embora cada uma tivesse suas próprias práticas e teorias sobre como fazer um projeto de software ter sucesso, cada um com as suas particularidades, possuiam um pequeno conjunto de princípios sempre parecia ter sido respeitado quando os projetos davam certo.

16 2.3.2 Manifesto Ágil Em uma reunião, no ano de 2001, 17 representante de diferentes metodologias ágeis levantaram alternativas para o rigoroso desenvolvimento de software orientado a documentação. Foi formada então a Aliança Ágil. Como os membros representavam organizações concorrentes, não quiseram especificar táticas detalhadas do projeto, mas chegar a um acordo sobre o apoio ao desenvolvimento leve de software com alta qualidade. Assim, o Manifesto Ágil é uma coleção de valores e princípios que pode se usada na maioria dos métodos ágeis (KALERMO; RISSANEN, 2002). O Manifesto Ágil ressalta o que mais tem valor para as metodologias ágeis. Processos, contratos, documentação e planejamento tem valor para o desenvolvimento de software, mas são menos importante do que saber como lidar com pessoas, do que ter o cliente colaborando para encontrar a melhor solução, do que entregar o software com qualidade e do que se adaptar às mudanças (BASSI, 2008). De acordo com Jacbson (2002), em um processo moderno de software, tudo é agil. A capacidade que a equipe possui para responder adequadamente a modificações é considerada como agilidade. Modificação no software que esta sendo construído, modificações nos membros da equipe, modificações por causa de novas tecnologias, modificações de todas as espécies que podem ter impacto no produto que eles constroem e no projeto que cria o produto. Ainda há processos e ferramentas, documentação, negociação de contratos, porém de forma reduzida e mais objetiva. Mas a ideia do Manifesto Ágil foi redefinir as prioridades em um projeto de software. Minimizando assim os riscos no desenvolvimento e gerenciamento de projetos de software (SANTOS, 2011). A filosofia ágil foi descrita em 12 princípios (AGILE ALLIANCE,

17 2012): Princípio um: Nossa maior prioridade é satisfazer o cliente, a- través da entrega adiantada e contínua de software de valor. Princípio dois: Aceitar mudanças de requisitos, mesmo no fim do desenvolvimento. Processos ágeis se adéquam a mudanças, para que o cliente possa tirar vantagens competitivas. Princípio três: Entregar software funcionando com frequência, na escala de semanas até meses, com preferência aos períodos mais curtos. Princípio quatro: Pessoas relacionadas a negócios e desenvolvedores devem trabalhar em conjunto e diariamente, durante todo o curso do projeto. Princípio cinco: Construir projetos ao redor de indivíduos motivados. Dando a eles o ambiente e suporte necessário, e confiar que farão seu trabalho. Princípio seis: O Método mais eficiente e eficaz de transmitir informações para, e por dentro de um time de desenvolvimento, é através de uma conversa cara a cara. Princípio sete: Software funcional é a medida primária de progresso. Princípio oito: Processos ágeis promovem um ambiente sustentável. Os patrocinadores, desenvolvedores e usuários, devem ser capazes de manter indefinidamente, passos constantes. Princípio nove: Contínua atenção à excelência técnica e bom design, aumenta a agilidade. Princípio dez: Simplicidade: a arte de maximizar a quantidade de trabalho que não precisou ser feito.

18 Princípio onze: As melhores arquiteturas, requisitos e designs emergem de times auto-organizáveis. Princípio doze: Em intervalos regulares, o time reflete em como ficar mais efetivo, então, se ajustam e otimizam seu comportamento de acordo. 2010]: Esses princípios podem ser resumidos em quatro valores [Beck et al, Indivíduos e interações ao invés de processos e ferramentas. Software executável ao invés de documentação. Colaboração do cliente ao invés de negociação de contratos. Respostas rápidas a mudanças ao invés de seguir planos. Dentre as metodologias ágeis iniciais, desenvolvidas num contexto relacionado Manifesto Ágil destacam-se o Extreme Programming, Adaptive Software Development, Feature Driven Development, Dynamic Systems Development Method e Família Crystal para desenvolvimento de software, Scrum para gerenciamento de projetos. 2.3.3 Conceitualização das metodologias É importante que as Metodologias Ágeis tais como Extreme Programming, Adaptive Software Development, Feature Driven Development, Dynamic Systems Development Method, Família Crystal e Scrum sejam conceitualizadas visando adequar o embasamento do leitor. Assim tem-se as seguites definições: Método Extreme Programming (XP) Extreme Programming (XP) é provavelmente visto como destaque na maioria das metodologias ágeis de desenvolvimento. Originalmente definido para atender às necessidades específicas de desenvolvimento de software

19 conduzido por equipes pequenas, preferencialmente 12 desenvolvedores, diante de requisitos vagos e em mudança (SCHNEIDER; JONHTSON, 2005). Enfatiza o desenvolvimento rápido do projeto e visa garantir a satisfação do cliente, além de favorecer o cumprimento das estimativas (LIMBARDI, 2010). As regras, práticas e valores da XP proporcionam um agradável ambiente de desenvolvimento de software para os seus seguidores, que são conduzidos por quatro valores: comunicação, simplicidade, feedback e coragem (LIMBARDI, 2010). Resumidos da seguinte forma (PAULK, 2001): Comunicação contínua com o cliente e dentro da equipe; Simplicidade, atingido por um foco constante em soluções minimalistas; Feedback rápido através de mecanismos como unidade e testes funcionais, e A coragem de lidar com os problemas de forma proativa. A aposta da XP é melhor realizar algo simples no inicio projeto e pagar um pouco mais para modificar o sistema no futuro do que implementar algo complicado que talvez seja desnecessário no sistema, sempre considerando que requisitos são mutáveis (LIMBARDI, 2010). Método ASD- Adaptive Software Development Com base na teoria dos sistemas adaptativos complexos e apoiado por sua experiência com Radical Software Development, Jim Highsnith criou o ASD, um método de desenvolvimento de software que considera a incerteza e a instabilidade dos requisitos e permite que o aprendizado aconteça durante o desenvolvimento (BASSI, 2008). O método ASD é destinado a desenvolvimento de sistemas complexos e de grande porte. Esse método procura trabalhar as mudanças, decorrentes de

20 ambientes turbulentos, ao invés de confrontá-las. É interativo e incremental, tendo o cliente sempre presente. Suas práticas estão focadas nessa adaptação às mudanças (HIGHSMITH, 2002). O apoio filosófico do ASD centra-se na colaboração humana e na autoorganização da equipe. Highsmith argumenta que uma abordagem de desenvolvimento ágil, adaptativa, baseada em colaboração é tanto uma fonte de ordem em nossas interações complexas quanto à disciplina e a engenharia. Ele define um ciclo de vida ASD que incorpora três fases: especulação, colaboração e aprendizado, como são visto na figura 2 (PRESSMAN, 2006). Figura 2 - Ciclo de vida ASD Método DSDM Dynamic System Development Method O DSDM é um método ágil de desenvolvimento de software que oferece ferramentas para construir e manter um sistema com o prazo apertado por meio de prototipagem. O DSDM sugere uma filosofia de uma versão modificada do

21 princípio de Pareto. Neste caso, 80% de uma aplicação pode ser entregue em 20% do tempo que levaria para entregar a aplicação completa (PRESSMAN, 2006). O DSDM procura executar o projeto ajustando os requisitos do sistema ao tempo e aos recursos disponíveis, ao contrário do convencional, que tendo um conjunto de requisitos, procura ajustar o tempo e os recursos para alcançar a funcionalidade desejada (JÚNIOR, 2008). A filosofia do DSDM prega que software não é desenvolvido perfeitamente pela primeira vez, por isso as interações e a colaboração servem para chegar gradativamente ao resultado esperado (BASSI, 2008). Método FDD Feature Driven Development O FDD foi originalmente concebido por Peter Coad e seus colegas como um modelo prático de processo para a engenharia de software orientada a objetos. Stephem Plamer e John Felsing estenderam a melhoram o trabalho de Coad descrevendo um processo ágil e adaptativo que pode ser aplicado a projetos de software de tamanho moderado e grande (PRESSMAN, 2006). O inicio do ciclo do FDD é com a criação do modelo de objetos do domínio do problema. Usando experiências de projetos anteriores, os desenvolvedores criam a lista de funcionalidade. Logo após, planejam um plano para cada funcionalidade e atribuem responsabilidades. Dividindo os desenvolvedores em equipes pequenas desenvolvem as funcionalidades, realizando repetidas interações de projeto e construção, como apresentado na figura 3, com duração de no máximo duas semanas (GONÇALVES; REIS FILHO, 2008).

22 Figura 3 - Modelo FDD O diferencial do FDD está em sua combinação de práticas de planejamento e gerencia de projetos, equilibrando conceitos de processos tradicionais e processos ágeis (SANTOS, 2011). Método Família Crystal Os métodos Crystal são focados nos talentos e nas habilidades das pessoas, por isso permitem que o processo de desenvolvimento seja moldado conforme as características específicas da equipe, mesclando a sua cultura de trabalho com a proposta de desenvolvimento ágil (BASSI, 2008). Na família Crystal as entregas são frequentes, envolvendo usuários e clientes, reduzindo a necessidade de produtos intermediários. A equipe possui bastante proximidade e integração, porém, os membros têm especialidades distintas. Depende-se de uma comunicação eficaz e um bom fluxo de informação. Os projetos têm ciclos de desenvolvimento incremental com liberação de versões de um a quatro meses. Após o término das iterações é comum fazer uma reflexão sobre possíveis melhorias (PESSOA FILHO, 2011). Método Scrum

23 Scrum é um método ágil orientado a gerencia de projeto sua aplicação não se limita apenas no desenvolvimento de software, qualquer contexto onde um grupo de pessoas necessita trabalhar juntas para atingir um objetivo comum, o Scrum pode ser aplicado (SALGADO et al, 2010). O Scrum analisa as prioridades do projeto (Product Backlog), criando grupos de entrega para o cliente. O Product Backlog é dividido em iterações menores (Sprints) de duração máxima de trinta dias, como mostrado na figura 4. Equipes pequenas, de até dez pessoas, e multidisciplinares são formadas para trabalhar com as funcionalidades no inicio de cada Sprint. A equipe é responsável pelo desenvolvimento desta funcionalidade (SOARES, 2004). Figura 4 - Ciclo Scrun Times de Scrum são projetados para aperfeiçoar flexibilidade e produtividade. Para esse fim, eles são auto-organizáveis, multidisciplinares e trabalham em iterações (SCHWABER; SUTHERLAND, 2010). Os times são divididos em ScrumMaster, Product Owner e a Equipe

24 3 METODOLOGIA DE PESQUISA A metodologia de pesquisa é um conjunto de métodos, técnicas e procedimentos cuja finalidade é viabilizar a execução da pesquisa que tem como resultado um novo produto, processo ou conhecimento (JUNG, 2009). Na sequencia apresenta-se uma classificação do tipo de pesquisa e a discução dos procedimentos metodológicos aplicados a sua execução. 3.1 Tipo de Pesquisa Coforme Jung (2009), uma pesquisa pode ser classificada da seguinte forma (figura 5): quanto a Natureza: i) Pesquisa Básica (gerar conhecimento sem finalidades de aplicação) e ii) Pesquisa Aplicada (gerar conhecimento sem finalidades de aplicação), quanto aos Objetivos: i) Exploratória (descobrir/inovar); ii) descritiva (como?); e iii) explicativa (por que?), quanto as Abordagens: i) Quantitativa e ii) Qualitativa e quanto aos Procedimentos: i) Survey; ii) Pesquisa-Ação; iii) Estudo de Caso Único ou Múltiplos; iv) Operacional; e v) Experimental.

25 Figura 5 - Tipos de Pesquisa Científica (JUNG, 2009) Além disso, as formas de coleta dos dados podem ser por meio de (i) observação do participante, (ii) grupos de foco, (iii) entrevistas, (iv) questionário, (v) experimentação e (vi) observação. Neste contexto quanto à natureza, este trabalho classifica-se como pesquisa aplicada, pois será utilizado a abordagem especifica para o desenvolvimento do aplicativo. Quanto aos objetivos este trabalho classifica-se como exploratório, pois busca o desenvolvimento de um protótipo inicial de aplicação voltado as Metodologias Ágeis. Quanto à abordagem é classificado como qualitativa, pois trata-se de uma concepção interpretativa da aplicação a partir da base referencial. Quanto ao procedimento tem-se o conceito de pesquisa-ação, associado ao design science methodology (HEVNER et al, 2004) ou seja: desenvolvimento de um artefato (aplicação hipermídia) com a intenção de melhorar o desenvolvimento educacional do usuário.

26 3.2 Procedimentos Metodológicos Este trabalho iniciou-se com o interesse do pesquisador no estudo em metodologias ágeis. Durante o processo de pesquisa houve a percepção de que os textos encontrados eram muito densos, e de difícil compreenção, exigindo do leitor um alto nível de conhecimento. A partir deste ponto, foi despertada a ideia de utilizar-se uma linguagem mais acessível ao publico e consideram a possibilidade do desenvolvimento da aplicação na metodologia OOHDM. Assim, buscou-se desenvolver todo um aplicativo educacional levandose em conta as fase do OOHDM, quais sejam: modelo conceitual, projeto navegacional, design abstrato da interface e implementação. O objetivo foi o desenvolvimento de um aplicativo hipermídia educacional com o intuito de auxiliar o ensino e aprendizado de metodologias ágeis. Para tal, procurou-se inicialmente entender o tema. Em seguida foi feita a análise e o projeto do sistema, com intuito de melhor entender seu funcionamento. Seguindo OOHDM a primeira etapa foi à construção da modelagem conceitual do aplicativo hipermídia utilizando o software DIA 1. A segunda etapa foi elaborada o projeto navegacional do aplicativo hipermídia também utilizando o software DIA. A terceira etapa foi desenvolvida o projeto abstrato de interface do aplicativo hipermídia. Nesta etapa foi utilizado o GIMP 2.88 2. Finalmente a ultima etapa do modelo OOHDM, a implementação. Foi 1 http://www.dia-installer.de/ 2 http://www.gimp.org/

27 utilizado o software Multimedia Builder 4.9.8 3, uma ferrameta tradicional para o desenvolvimeto de hipermídias, de propriedade da Media Center. A escolha deste software foi a facilidade de encontrar fontes e tutoriais de como utilizar esta ferramenta. A projeto foi desenvolvido utilizando um computador com processador Intel Core i3 @ 2.53 GHz, 2 GBs de memória RAM e sistemas operacionais Windows 7 Ultimate e Ubuntu 12.04 Linux. 3 http://www.mediachance.com/mmb/

28 4 RESULTADOS E DISCUSSÃO Neste capítulo é descrito o processo de modelagem e desenvolvimento tendo como ponto de partida a modelo OOHDM. Este projeto é focado no ensino-aprendizagem de Metodologias Ágeis, mas a aplicação pode ser reutilizada com outros temas. Também será detalhada as etapas para o desenvolviemto da hipermídia: modelagem conceitual, projeto navegacional, projeto de inteface abstrata e a implementação pelo software Multimedia Builder 4.9.8. 4.1 Modelagem Conceitual Nesta etapa, foi construído o modelo de classes, são demonstradas as classes e os relacionamentos existentes entre elas. A Figura 6 ilustra o resultado da modelagem conceitual utilizada para a construção do Aplicativo Educacional de Metodologias Ágeis. Figura 6 - Modelo Conceitual

29 A primeira classe conceitual apresentada ao usuário será o MenuPrincipal, uma estrutura global de todo o sistema. Esta classe possibilita ao usuário navegar pelas outras classes. O modo como o usuário poderá navegar no sistema será detalhado na etapa Projeto de Navegação. A seguir serão detalhados os componentes do modelo conceitual - classes da aplicação. A Figura 7 ilustra de modo detalhado o MenuPrincipal. Figura 7 - Classe conceitual "MenuPrincipal" A classe MenuPrincipal possui os atributos Título, Introdução e Ilustração. Onde, Título é utilizado para representar o título da página e Descrição é utilizado para descrever a tela, ambos são atributos do tipo String. Tem-se que Ilustração é do tipo imagem e indica uma ilustração do tema abordado. O detalhamento das classes conceituais ConceitosBasicos, e ValoresPrincipios encontra-se na figura 8. Figura 8 - Classes ConceitosBasicos e ValoresPrincipios Estas classes é composta de subclasses da classe MenuPrincipal, e possuem os mesmos atributos da mesma. Na classe ConceitosBasicos encontram-se informações sobre a evolução dos métodos de construção de um

30 software. A classe ValoresPrincipios apresenta as características que definem uma metodologia ágil. A seguir serão mostradas as classes conceituais XP, Scrum, FDD, ASD, DSDM e Crystal, representando o restante das classes do diagrama. Figura 9 - Classes das metodologias ágeis Estas classes possuem os atributos Título, Descricão e Imagem. Assim como nas classes demonstradas anteriormente, o atributo Titulo é utilizado para representar o título da página, o atributo Descricão é utilizado para representar a descrição da página e o atributo Imagem é utilizado para representar, de forma não textual, o conteúdo e os ensinamentos da pagina apresentada. 4.2 Projeto Navegacional Após o desenvolvimento do modelo conceitual, foi realizado o Projeto de Navegação. Esta etapa preocupou-se em elaborar a estrutura navegacional da aplicação. Para este projeto foi considerada a visão navegacional dos usuários com acesso total. Apesar de algumas modificações, o projeto navegacional tem características semelhantes ao modelo conceitual, pois é baseado sua estrutura. Com novas alterações no esquema de desenvolvimento, as classes passaram a

31 ser chamadas de classes navegacionais. As classes navegacionais possuem atributos diferenciados de navegação pelo sistema, como elos e âncoras, por exemplo. A seguir serão descritas as classes navegacionais do aplicativo, destacando as alterações em relação às suas respectivas classes conceituais. A figura 10 ilustra a classe navegacional MenuPrincipal, onde pode-se notar que ela contem características da classe conceitual referente a mesma classe. Figura 10 - Modelo Navegacional "MenuPrincipal" A classe navegacional MenuPrincipal possui o atributo subclasse que é utilizado como uma âncora de acesso aos subsistemas: ValoresPrincipios, ConceitosBasicos, XP, Scrum, FDD, ASD, DSDM e Crystal. Um exemplo prático e de melhor entendimento do atributo Subsistemas, seria um menu de acesso, onde os itens do menu são representados por este atributo e cada item possibilita o acesso ao seu respectivo destino. A Figura 11 demonstra uma classe navegacional dos subsistemas da classe navegacional representada na Figura 10. Figura 11 - Modelo Navegacional "ConceitosBasicos" Essas classes se diferenciam da classe MenuPrincipal por possuírem

32 um atributo intitulado Voltar. Trata-se de um atributo do tipo âncora, que possibilita ao usuário voltar a classe MenuPrincipal. A figura 12 representa a classe navegacional denominada XP (Extreme Programming) Figura 12 - Modelo Navegacional "XP" Na sequência tem-se as demais classes navegacionais (figura 13). Figura 13 - Modelos navegacionais das classes de metodologias ágeis A classe XP, assim como as demais classes, diferencia-se da classe ilustrada na figura 11 pela inclusão dos atributos Imagem e Video. Estes atributos são utilizados para representar um vídeo e uma imagem demonstrando a página em questão. 4.3 Projeto Abstrato

33 Seguindo o modelo OOHDM, após o desenvolvimento do modelo navegacional foi implementado o projeto abstrato. Que é um proto, pensando como o aplicativo funcionara no seu termino. Para realizar esta etapa foi desenvolvido um storyboard em software de apresentação, onde cada slide representa uma tela da aplicação com espaços reservados para os elementos visuais como textos, imagens, vídeos, títulos e âncoras. O primeiro slide apresentado é o MenuPrincipal, representada pela figura 14 Figura 14 - Design Abstrato "MenuPrincipal" A classe MenuPrincipal possui um título com o nome do tema abordado pelo slide apresentado em tela. Os botões são uma estrutura de navegação para as outras classes associadas, ao clicar em um deles o slide correspondente será exibido com seu conteúdo especifico e também uma

34 imagem ilustrativa do tema. A figura 15 ilustra a classe ConceitosBasicos, são classes teóricas para abordar os assuntos introdutórios ao tema central (Metodologias Ágeis). Figura 15 - Design Abstrato "ConceitosBasicos" As classe ConceitosBasicos possui um título com a mesma função apresentada na figura 14, uma descrição com o conteúdo sobre o tema do slide e um botão usado pra voltar a classe MenuPrincipal. A figura 16 descreve o slide da classe MetodologiaAgeis. Esta classe será usada para apresentar as metodologias ágeis XP, Scrum, FDD, DSDM, ASD e Crystal.

35 Figura 16 - Design Abstrato "MetodologiaAgil" Estas classes possuem o título e a descrição. Além de botões de acesso a vídeos e botões de acesso a imagens relacionadas ao tema apresentado na classe acessada, podendo conter mais de um botão para tais objetos. Tem-se ainda um botão voltar, que direciona a navegação para a classe MenuPrincipal. A figura 17 ilustra a subclasse Valores, e a subclasse Principios possui o mesmo comportamento.

36 Figura 17 - Design Abstrato "Subclasses" O que difere está subclasse da figura 16 é que ela possui dois botões de navegação, um que retorna para a classe anterior a ela e o outro que retorna para a classe MenuPrincipal. 4.4 Implementação A ultima etapa do modelo OOHDM é a implementação do aplicativo hipermídia, que utilizara a interface abstrata para desenvolvimento visual do projeto e a criação dos elos desenvolvidos no projeto navegacional. Para desenvolvimento do aplicativo foi utilizado o software Multimedia Builder 4.9.8, para ambiente Windows, visando o ensino de metodologias ágeis. A primeira interface apresentada é o menu principal, com o titulo