Detach: design tool for smartphone application composition

Abstract

Tese de mestrado em Engenharia Informática, apresentada à Universidade de Lisboa, através da Faculdade de Ciências, 2013A Terapia Comportamental Cognitiva (TCC) é uma forma de tratamento que se foca nas relações entre pensamentos, emoções e comportamentos. A TCC pode assim mudar a forma como pensamos (cognição) e como reagimos (comportamento), de maneira a que nos possamos sentir melhor. Para ter sucesso, esta intervenção psicológica usa processos sistemáticos, que são normalmente compostos pelo preenchimento de formulários em papel, com um determinado objectivo específico. Este objectivo poderá ser o tratamento de várias condições: humor, ansiedade, personalidade, obesidade, fobias, depressões, controle de dor, etc. Actualmente, esta área da terapia é normalmente dividida em dois tipos de sessões distintas com os pacientes. Se por um lado existe a sessão no consultório com o terapeuta, por outro, é muitas vezes pedido ao paciente que complete algumas tarefas no exterior, sem a presença do mesmo. Estas tarefas pretendem que este pratique as diversas situações analisadas com o terapeuta. Para isso são usados questionários e formulários em papel que permitem que o paciente registe os seus pensamentos e experiências. No entanto, a incapacidade de adaptação dos mesmos ao paciente e às diversas situações em que são na verdade utilizados resulta na falta de motivação, paciência e sentimento de acompanhamento pessoal para o paciente. Além disso, o tipo de suporte em que estes questionários e formulários assentam acabam por fazer com que o paciente muitas das vezes se esqueça deles em casa ou tenha vergonha de os transportar e preencher em público. Assim, este trabalho vem propor, através das várias tecnologias presentes nos smartphones de hoje em dia, um melhoramento à vertente no exterior do processo terapêutico, que muitas vezes é desprezada pelo paciente ao fim de pouco tempo pondo em causa o sucesso do tratamento. Com isto, pretende-se que o paciente se sinta acompanhado, a todo o momento, por um terapeuta, através de uma aplicação presente no seu próprio smartphone. Idealmente esta aplicação seria criada especificamente para a pessoa em questão e conseguiria adaptar-se às várias situações em que iria ser usada, ajudando eficazmente o paciente. A criação destas aplicações requer conhecimentos técnicos que não estão presentes em todas as pessoas. Se por um lado os especialistas da área de programação são capazes de tal criação, por outro são os especialistas da área da saúde, e neste caso em específico os terapeutas, que são capazes da sua idealização, consoante as necessidades dos seus pacientes. Surge então a necessidade da criação de aplicações móveis, adaptáveis ao contexto do utilizador, por pessoas que não sejam especialistas na área da programação. Assim, este projecto assenta sob três entidades distintas: a) Utilizadores não programadores, que utilizarão uma ferramenta de criação de aplicações móveis; b) Utilizadores das aplicações móveis, que utilizaram as aplicações criadas pelos anteriores; c) Utilizadores programadores, que irão desenvolver novas componentes para a ferramenta de autoria. Nas fases iniciais do desenvolvimento tentámos perceber através de sessões de desenho participativo, como é que os utilizadores não programadores interagiam com um conjunto de elementos presentes num protótipo de baixa fidelidade. Usando algum material de desenho como post-its, folhas de papel, lápis e borracha, propusemos aos participantes que representassem uma determinada aplicação passível de ser utilizada num dispositivo móvel. Os resultados que obtivemos mostraram que a presença destas mesmas representações que foram fornecidas aos participantes permitiram que os mesmos criassem aplicações muito mais complexas e potentes. Adicionalmente estas sessões permitiram também que percebêssemos que a generalidade dos participantes preferiu organizar os elementos da aplicação sobre uma área de trabalho “infinita” e não apenas limitada a uma sequência linear. O método preferencial de relação entre estes mesmos elementos foi a utilização de setas que indicavam quando seria executada a transição entre eles. Com os resultados anteriores construímos o primeiro protótipo funcional de DETACH (DEsign Tool for smarphone Application Composition - Ferramenta de Desenho para a Composição de Aplicações para Smartphones). De acordo com os resultados obtidos nas sessões anteriores com utilizadores, este protótipo continha uma área com alguns ecrãs padrão passíveis de serem usados num ambiente de trabalho “infinito”. Com este protótipo pedimos a alguns utilizadores não programadores que tentassem criar uma aplicação móvel adequada à sua área do conhecimento. Com este primeiro protótipo verificámos que nenhum dos participantes foi capaz de completar todos os passos com sucesso. O aspecto mais problemático que verificámos foi na maneira como os mesmos ligavam os vários ecrãs da aplicação. O facto de o protótipo disponibilizar num dado ecrã a possibilidade de criar dois tipos de ligações, uma que considerasse o mesmo como destino e outra como origem, acabou por confundir os participantes. Apesar de tudo verificámos que a maior parte intencionava usar ambos as ligações considerando o ecrã selecionado como origem. Tais resultados levaram-nos à criação de um novo protótipo com as preferências verificadas pelos utilizadores. Após apresentarmos este último a um novo grupo de utilizadores, para a criação da mesma aplicação, verificámos que mais de metade deles concluiu a mesma com sucesso e em cerca de metade do tempo verificado no protótipo anterior. Tais resultados indicavam que claramente ainda havia espaço para melhoramentos ao protótipo. A visibilidade de algumas das funcionalidades, que ainda não estava clara para alguns dos utilizadores, foi um dos factores negativos apontados. A utilização destes dois protótipos iniciais de DETACH permitiu-nos perceber alguns padrões usados pelos nossos participantes aquando da ligação entre ecrãs, a funcionalidade verificada mais crítica. Enquanto a maior parte dos utilizadores preferiu criar ligações considerando o ecrã selecionado como origem, verificamos também a utilização de outros padrões que se assemelhavam aos usados em ferramentas complexas de programação. Para o produto final decidimos seguir assim a abordagem mais utilizada pelos utilizadores, melhorando o último protótipo. Através dos requisitos reunidos nestas sessões com utilizadores, no trabalho relacionado e em algumas reuniões que tivemos com terapeutas, definimos algumas métricas que a ferramenta DETACH seguiria. De maneira a ser de fácil utilização por qualquer utilizador, proporcionando também o seu alcance através de qualquer plataforma, desktop ou móvel (em tablets por exemplo), seria criada uma ferramenta web. Esta recorreria a um servidor para guardar os projectos criados, para que os mesmos pudessem ser carregados remotamente para os dispositivos móveis destino. De maneira a criar uma ferramenta robusta que possa ser melhorada no futuro com novos tipos de ecrãs ou variáveis de contexto utilizáveis, era necessário também desenvolver a mesma de uma maneira altamente modular para ser então continuada por programadores profissionais. A versão final da ferramenta DETACH nasceu de todo o conjunto de requisitos que verificámos anteriormente. Através de melhoramentos à última versão do protótipo de alta-fidelidade usado chegámos a uma ferramenta que pode até ser usada para além da área da terapia, como para a área de jogos ou do ensino. Para uma correcta avaliação da ferramenta, recorremos a utilizadores distintos daqueles que tinham testado os protótipos iniciais de alta-fidelidade. Os resultados mostraram que todos os participantes conseguiram criar, testar e atribuir a aplicação proposta aos utilizadores destino. Para além da avaliação realizada com os utilizadores finais da ferramenta, pedimos também a alguns programadores para tentarem estender a mesma adicionando um novo ecrã. Os resultados mostraram que também todos os programadores conseguiram realizar a tarefa com sucesso numa média de cerca de 35 minutos. O processo de desenvolvimento deste projecto contribuiu com a publicação de três artigos para conferências na área da saúde e da interacção.This thesis focuses on the Cognitive Behavioral Therapy (CBT) area. This type of therapy is normally subdivided in two kinds of sessions: the ones where the therapist and the patient are both inside an office, and the ones where the patient is outside the therapist office and has to follow some homework tasks, alone. These tasks intend patients to practice the situations analyzed in the sessions with therapists and are normally supported with simple paper forms. The inexistent ability for these homework tasks to adapt themselves to the patient or different use contexts compromises the success of the treatment. It is hence important to find a way where the patient, while outside the office, doesn’t feel that difference, because he carries a virtual therapist inside his smartphone. The usage of modern mobile phones can address the previous problem. Existing solutions encompass replacing traditional treatment methods with a mobile application that is provided to the patients. However, the application content is the same for every patient, regarding the age or treatment focus. Therapists lack the knowledge to create their own mobile applications and information technologies professionals lack the ability to personalize their contents properly. This work aims at circumventing this situation with the introduction of DETACH (DEsign Tool for smartphone Application Composition), a system that comprises: a) a flexible enough platform that allow developers to easily add new components and enables non-programmer users to create powerful mobile applications; b) a framework that runs previously created mobile applications. Particularly important was the user-centered development process of this system. We conducted a series of participatory design and thinking aloud trials with non-programmer users aiming to understand how they conceptualized programming. The results of interacting with low and high fidelity prototypes provided us with a set of interaction patterns and behaviors which we capitalized on in order to design the final DETACH product. Afterwards DETACH was submitted to some tool evaluation tests, by asking non-programmer users to create a mobile application and developers to create a new component for the authoring tool. The results proved the tool success as every participant was able to complete the requested tasks

    Similar works