4.5 Desenvolvimento
4.5.4 Escolha de Ferramentas e Tecnologias
4.5.4.1 Ferramentas (hardware)
As ferramentas utilizadas, assim como suas configurações e propósitos de uso estão listados abaixo.
∙ MacBook Pro Retina, 13 polegadas, 8 GB de memória e processador Intel Core i5, com OS macOS Sierra versão 10.12.5. Máquina (computador) utilizada para desenvolver a ferramenta proposta.
∙ Ipad Air 2, processador Apple A8X de 64 bit, com iOS versão 10.3.2. Utilizado para realizar o deploy da ferramenta, através de conexão cabeada (USB) com o MacBook Pro.
4.5.4.2 Tecnologias (software)
As tecnologias utilizadas, assim como suas configurações e propósitos de uso estão listados abaixo.
Modelagem
∙ Sketch App, versão 41.2. Ferramenta para prototipar interface de sistemas utilzada para desenvolver o protótipo detalhado da ferramenta.
∙ Bizagi Modeler, versão 3.0. Ferramenta de modelagem de processos utilizada para modelar as atividades dos processos de desenvolvimento utilizado, incorporando as atividades de design.
∙ Creately. Ferramenta online para criar diragramas Fishbone utilizada para elabo- rar o diagram de cause e efeito dos problemas identificados com a utilização de questionários manuais.
∙ AstahCommunity, versão 7.0.0. Ferramenta de elaboração de diagramas Unified Mo-
deling Language (UML) utilizada para desenvolver os diagramas de classe, de casos
de uso, e de componentes.
∙ DBDesigner 4. Ferramenta de design de banco de dados utilizada para fazer a mo- delagem do banco.
Capítulo 4. Desenvolvimento da Ferramenta 65
∙ Adobe Kuler: Color wheel. Ferramenta online para criar esquemas de cores utilizada para a escolha do jogo de cores utilizados.
Implementação
∙ Swift versão 3.1. Linguagem de programação para iOS utilizada para desenvolver a ferramenta proposta.
∙ XCode, versão 8.3.3. Ambiente de desenvolvimento integrado (IDE) utilizado para desenvolver (codificar) a ferramenta proposta.
∙ SQLite, versão 3.16.2. Biblioteca para gerar o banco de dados.
∙ FMDB. Biblioteca em linguagem Objective-C utilizada para gerenciar bancos de dados SQLite e os dados da aplicação.
Documentação
∙ Overleaf. Ferramenta online de edição de texto em latex utilizada para documentar todo a pesquisa, processo, planejamento e implementação da ferramenta.
4.5.5
Implementação
A implementação da ferramenta iQuest foi realizada no primeiro semestre de 2017 por uma desenvolvedora.
Primeiramente, a configuração do ambiente foi realizada, atualizando as tecnolo- gias para as versões mais atualizadas das mesmas.
Em seguida, a partir do planejamento feito, da modelagem dos casos de uso, da arquitetura e do banco de dados realizada, a codificação foi iniciada, utilizando os conceitos de orientação a objetos.
A codificação foi dividida em componentes para implementação: avaliador, questi- onário, comparação de rodadas e operações de projeto e rodadas de avaliação. Iniciou-se com a implementação do cadastro de avaliador e seu login, de forma que só é possível realizar operações (criar, editar, excluir e visualizar informações de projetos e rodadas de avaliação) se estiver logado.
Em seguida o componente relacionado ao questionário de avaliação foi implemen- tado, quando um questionário é gerado pelo avaliador, a função para preenchimento do questionário é habilitada para que o participante responda ao mesmo sem precisar logar no sistema (a seção do avaliador é encerrada para proceder ao preenchimento do questio- nário, e quando o preenchimento é encerrado ele pode retomar sua sessão apenas digitando a senha de acesso).
A comparação de rodadas de avaliação foi implementada, permitindo escolha de projetos e de suas respectivas versões. O cadastro, edição e exclusão de projetos e rodadas de avaliação foram implementados em seguida.
Por último foram implementados os relatórios (de rodadas e de comparação de rodadas) das avaliações exibindo o score total, score por categoria, e informações de cada item do questionário, como média, mediana e desvio padrão para cada um, de forma que é perceber, ataravés dos resultados, quais itens relacionados à experiência dos usuário precisam ser revistos para melhorá-la. No caso do relatório da comparação de rodadas, as informações são as mesmas, mas são apresentadas informações das duas versões solicita- das. Na Figura 18está representada a estrutura de diretórios do projeto:
Figura 18 – Estrutura de Diretórios do Projeto. Autor.
Na estrutura de diretórios apresentada, dentro da pasta iQuest há sete diretórios. O diretório "fmdb"contém os arquivos da biblioteca em Objective C, "escondendo"os detalhes de conexão e comunicação no banco de dados SQLite. Essa biblioteca é reconhecida dentro do projeto escrito em Swift através de um arquivo "Bridging"que importa a biblioteca.
O diretório "Conneccao"contém os scripts do banco de dados uilizados na aplicação, com extensões .sql e sqlite.
Seguindo o MVC, os diretórios "ViewControllers", "Storyboards"e "Models"correspondem, respectivamente, aos arquivos das controladoras de visão, aos arquivos de representação visual da interface (visão) e às classes de modelo (dados e negócio) para cada entidade do sistema. As storyboards contêm "scenes", que são telas de conteúdo, e as conexões entre elas. Cada scene representa uma ViewController.
Capítulo 4. Desenvolvimento da Ferramenta 67
controladoras, contendo os serviços de cada entidade. Cada entidade possui um arquivo desse tipo.
E o diretório "DAO"contém a lógica de persistência de dados, ou seja, possue as regras de acesso ao banco de dados, para cada entidade do sistema. Para se conectar com o banco, um singleton é criado para garantir que haja apenas um instância de conexão.
Os outro diretórios são gerados a partir da criação do projeto, com informações default sobre o mesmo. O diretório de "Frameworks"contém a biblioteca libsqlite3.0.tdb. Os diretório "iQuestTests"e "iQuestUITests"contêm arquivos default de testes unitários e de interface de usuário.
Algumas telas do sistema podem ser vistas abaixo:
Figura 19 – Tela de Login. Autor.
A Figura 19 mostra a tela que se refere à realização de login, quando é realizado com sucesso.
A Figura 20 mostra a tela que se refere ao Menu Principal da Aplicação com as opções de Criar novo projeto, Visualizar projetos existentes, e Comparar projetos.
A Figura 21mostra a tela que se refere aos projetos cadastrados na ferramenta. A Figura 22mostra a tela que se refere ao Questionário de avaliação.
4.5.6
Instalação
Após implementado, a ferramenta irá para a Apple Store, de onde poderá ser obtida sem dificuldades através da loja, e utilizaa diretamente em iPads.
Figura 20 – Tela de Menu Principal. Autor.
Figura 21 – Tela de Projetos Cadastrados. Autor.
4.6
Autópsia
Nesta seção, são descritos os processos de verificação da funcionalidade e usabili- dade da ferramenta, bem como os testes que foram realizados e os seus resultados.
4.6.1
Testes
Os testes realizados na ferramenta foram testes de usabilidade, a partir dos casos de uso, para validar as funcionalidades e a usabilidade da ferramenta.
Os participantes escolhidos para realizar os testes possuem conhecimento em En- genharia de Software e algum conhecimento de Usabilidade e IHC. Três participantes
Capítulo 4. Desenvolvimento da Ferramenta 69
Figura 22 – Tela de Questionário. Autor.
testaram a ferramenta no equipamento da própria autora.
4.6.1.1 Roteiro de Testes
Primeiramente, o consentimento dos participantes sobre a participação nos testes foi obtido. Em seguida, as tarefas realizadas incluíram:
1. Realizar cadastro como avaliador;
2. Realizar login;
3. Cadastrar um projeto;
4. Cadastrar uma rodada de avaliação;
5. Cadastrar um questionário;
6. Preencher o questionário;
7. Verificar o relatório da rodada de avaliação;
Durante a realização das atividades, não houve interferência do avaliador, a autora, apenas quando o participante necessitou tirar alguma dúvida.
Após a execução dos testes, os participantes puderam optar entre responder o questionário de usabilidade PSSUQ ou descrever seu parecer sobre o uso da ferramenta, segundo indagação da autora deste trabalho, a respeito de cada uma das atividades.