• Nenhum resultado encontrado

4.2 Ambiente Web

4.2.2 Ferramentas Utilizadas

O sistema operacional escolhido para a utilização e suporte oficial do back-end do projeto é a distribuição Ubuntu Linux, mantida pela Canonical Ltd. e sua própria funda- ção. Segundo estatísticas [W3Techs 2016], 8,4% de todos os websites utilizam Ubuntu em sua infraestrutura de servidores. Além disso, a distribuição possui também os benefí- cios de ser de fácil utilização e manutenção, baseada na distribuição Debian Linux e por possuir uma vasta comunidade ativa, útil e mobilizada.

A facilidade no manuseio e configuração do sistema operacional abre portas para usuá- rios inexperientes configurarem e disponibilizarem o projeto em seu próprio domínio. Usuários avançados também não encontram dificuldades ou limitações, podendo realizar adaptações na plataforma e executá-la em conjunto com outros serviços.

Por ser baseado no Debian Linux, o Ubuntu conta com muitos pacotes disponíveis para instalação e autoconfiguração imediata, através do gerenciador de pacotes que ambas as distribuições têm em comum. A disposição que tem a comunidade de usuários também facilita a manutenção e resolução de erros e problemas que os usuários e instaladores do sistema possam encontrar durante a realização de suas atividades.

A versão atual do sistema utilizada no desenvolvimento do ambiente é a Ubuntu 14.04.1 LTS. A sigla LTS significa Long Term Support ou em uma tradução livre, Su- porte Estendido. A Canonical Ltd. se compromete a entregar diversas atualizações do

4.2. AMBIENTE WEB 39 sistema e principalmente atualizações de desempenho e segurança durante um período de até cinco anos, permitindo que a manutenção dos servidores seja adiada e seus intervalos sejam um pouco mais espaçados, garantindo, no entanto, a segurança do sistema.

Seguindo a linha de pensamento que nos levou a escolha de uma distribuição Linux como sistema operacional principal, escolhemos a plataforma Java para desenvolver o ambiente. Dentre os diversos motivos que sustentam a escolha do Java, podemos citar a compatibilidade para multiplataforma. Segundo a Oracle [Oracle 2016], mais de 2 bilhões de dispositivos utilizam o Java nos dias atuais. De supercomputadores a cartões de crédito. Além disso, é uma tecnologia sólida, amplamente divulgada entre a comunidade e conta com diversas bibliotecas de software livre e também de código-fonte aberto. Mas o principal motivo da escolha do Java como plataforma para o ambiente foi o fato de existir muito código legado, o qual corresponde ao tradutor universal proposto que já estava em processo de desenvolvimento [Sá et al. 2013]. Ele é responsável por traduzir comandos R-Educ, escritos em um alto nível de abstração em língua portuguesa para as linguagens alvo, neste caso, cadastradas em um banco de dados.

No presente trabalho, desenvolvemos uma plataforma web para acessar o sistema. Para isso, utilizamos o Groovy on Grails, um framework baseado na linguagem de pro- gramação Groovy e que roda sobre a Máquina Virtual Java (JVM). O Groovy é uma lin- guagem orientada a objetos, compilada dinamicamente para bytecode. Surgiu como uma alternativa à linguagem Java e é bastante similar a linguagens do tipo script como Ruby, JavaScript e Python, além de apresentar características ausentes no Java como suporte na- tivo a sintaxe estática e dinâmica, sintaxe nativa para listas, mapas, vetores e expressões regulares; closures ou clausuras e sobrecarga de operadores.

O Grails é um framework voltado para o desenvolvimento de aplicações web de arqui- tetura MVC (Model View Controller) e inspirado no Ruby on Rails. Alguns benefícios em sua utilização incluem suporte a bibliotecas, código legado e comunidade de desenvolvi- mento Java. Sua interface de banco de dados é baseada em domínios, quando no Rails ela é baseada em modelos, o que viabiliza a modelagem e design das aplicações. Tecnologias sólidas do Java Enterprise como Spring e Hibernate estão presentes no core do Grails, oferecendo confiança e robustez aos desenvolvedores. Um dos motivos da utilização do Groovy on Grailsno projeto foi a facilidade de integração e reaproveitamento do código da última versão do compilador da linguagem R-Educ, escrito em Java [Sá et al. 2013].

Capítulo 5

Método para Avaliação de Softwares

para Robótica Educacional

Nesse trabalho, formulamos um método eficiente e homogêneo para avaliação de softwares específicos para robótica educacional denominado EducAval. Classificamos esse método como homogêneo, pois buscamos ao longo da elaboração desse trabalho torná-lo um método padrão para softwares desta área. Para torná-lo padrão precisáva- mos de embasamentos teóricos e conhecimento de outros tipos de métodos avaliativos, com tais estudos verificamos a existência de vários métodos avaliativos, porém, cada um utilizava uma metodologia diferente, apesar de avaliar o mesmo tipo de software.

De acordo com [Garvin 1984] o conceito de qualidade é descrito a partir de cinco vertentes: visão transcendental, visão do usuário, visão do fabricante, visão do produto e visão baseada em valor. A primeira afirma que qualidade é algo que se reconhece imediatamente, a visão do usuário observa a qualidade a partir de metas específicas de um usuário final. A visão do fabricante avalia a qualidade a partir da especificação original do produto, já a visão do produto avalia as características inerentes ao produto e a visão baseada em valor mede a qualidade a partir de quanto o cliente está disposto a pagar pelo produto. Neste método trabalharemos com duas visões em especifico, a visão do usuário e a visão do produto. Essas duas visões priorizam o papel do usuário/cliente cientes de que esses usuários são fundamentais para uma boa avaliação do software.

De acordo com ISO/IEC 9126, qualidade de software refere-se às características de um software capazes de satisfazer às necessidades implícitas e explicitas do usuário. No caso, neste trabalho, através do grau de satisfação dos usuários, avaliaremos a qualidade de softwares voltados para aplicações em robótica educacional, que são destinados a dois tipos diferentes de usuários: professores e alunos. Esse novo método é composto por duas etapas fundamentais, a aplicação dos questionários e análise dos dados coletados. A avaliação de software, no método EducAval, é realizada de usuário para usuário sem

envolver o desenvolvedor.

Seguindo o conceito de avaliação de usuário para usuário, foi determinado que o ciclo de utilização do método, como descrito na Figura 5.1, seria estruturado em três etapas (de forma simples): aplicação de questionários, análise e geração de relatórios.

Figura 5.1: Ciclo de Utilização do Método

5.1

Questionários

Como citado acima, o método dispõe de questionários para avaliação de softwares para robótica educacional. Para esta avaliação, disponibilizamos dois tipos de questioná- rios, um para os professores e outro para os alunos, sendo que cada um deles é composto por perguntas adequadas aos avaliados. Os questionários propostos na metodologia estão divididos em duas partes, vistas a seguir.

• Avaliação técnica: nessa primeira etapa, abordamos conceitos funcionais e de exe- cução do software, tais como a funcionalidades do software, capacidade de execu- ção em diferentes tipos de hardware e software, satisfação do usuário diante das necessidades, garantia de que o software não falhará durante seu funcionamento, qualidade diante dos objetivos específicos, rapidez no tempo de resposta e layout favorável.

• Avaliação didática: nesta etapa priorizamos conceitos relacionados às técnicas e métodos que possibilitam a aprendizagem, para isso disponibilizamos duas pergun- tas discursivas que relacionam a vivência/aprendizado do aluno com o software. No questionário fornecido aos professores, são disponibilizadas dezesseis perguntas. Na primeira delas, os professores avaliados devem escolher qual das nove funcionalidades apresentadas o software utilizado possui. Da questão dois a doze, o professor deve atri- buir em cada item uma nota de zero a dez ou então informar que o item não se aplica ou não tem condições de avaliar. As questões treze e quatorze são perguntas que deverão ser

5.2. ANÁLISE 43

Documentos relacionados