Home   |   Structure   |   Research   |   Resources   |   Members   |   Training   |   Activities   |   Contact

EN | PT

EuPTCEEn1646-98952013000100007

EuPTCEEn1646-98952013000100007

variedadeEu
Country of publicationPT
colégioEx-Tech-Multi Sciences
Great areaEngenharia
ISSN1646-9895
ano2013
Issue0001
Article number00007

O script do Java parece estar desligado, ou então houve um erro de comunicação. Ligue o script do Java para mais opções de representação.

Desenvolvimento e avaliação de um interface com o utilizador para um sistema de escalonamento

1. Introdução O processo de escalonamento consiste na afetação de operações a recursos disponíveis. Neste processo é necessário ter em conta um conjunto de restrições como a disponibilidade de recursos, capacidade de produção e metas de produção a alcançar (Pinedo, 2009). Um sistema de escalonamento contribui para a tomada de decisão estratégica de uma organização, reforçando a sua competitividade.

O presente trabalho surge da necessidade de criar um interface com o utilizador para um sistema de escalonamento existente. Surgem assim dois objetivos a alcançar: o primeiro objetivo é permitir, de uma forma gráfica e interativa, a definição de um problema de escalonamento; o segundo objetivo é permitir visualizar e adaptar, de uma forma interativa, o plano de escalonamento.

Para atingir os objetivos foi necessário estudar e selecionar uma metodologia que permitisse o desenvolvimento de um interface centrado no utilizador. A metodologia eleita foi a Metodologia em Estrela (Hix e Hartson, 1993), uma vez que esta se centra na avaliação de usabilidade.

Esta metodologia permitiu o desenvolvimento de um protótipo que foi submetido a uma sessão de avaliação com o intuito de avaliar a sua usabilidade. Esta avaliação representa a fase conclusiva do primeiro ciclo iterativo da Metodologia em Estrela.

Em termos de estrutura, após a Introdução, este artigo apresenta a secção dedicada à interação entre humano e computador onde são apresentados os conceitos que sustentam este trabalho.

Na secção seguinte, Análise do Problema, são identificadas as análises que contribuem para a contextualização e compreensão do problema e que permitem a construção do modelo de interação.

A secção Protótipo é dedicada à descrição dos módulos que fazem parte do protótipo desenvolvido. É feita uma análise detalhada às suas principais características e funcionalidades.

Não menos importante, a secção Avaliação de Usabilidade é dedicada à avaliação da facilidade de utilização do protótipo. É apresentada a metodologia utilizada, forma como foi conduzida a sessão de avaliação, os resultados obtidos e a interpretação dos mesmos.

Por fim, na secção Conclusões e Trabalho Futuro é realizada a apreciação do trabalho desenvolvido e são apresentadas as perspetivas de trabalho futuro.

2. Interação entre Humano e Computador A interação entre um utilizador e um sistema computacional interativo define-se como o processo de comunicação entre estes dois elementos e que é gerido por um terceiro elemento preponderante: o interface (Piairo, 2012).

O interface assume-se como uma fronteira entre o humano e o computador. Permite representar o comportamento de um sistema computacional interativo e proporciona ao utilizador os meios necessários para controlar ou operar esse mesmo sistema (Meech, 1999).

A área de investigação que estuda o processo de comunicação entre humano e computador designa-se por Interação Humano-Computador (HCI) (Hewett et al., 1996). Enquanto área de investigação multidisciplinar, a principal preocupação e contribuição da HCI é proporcionar ao utilizador um meio adequado através do qual possa interagir com um sistema computacional interativo.

Neste contexto, a HCI identifica dois conceitos que devem ser considerados no desenvolvimento de um sistema computacional interativo: funcionalidade e usabilidade (Karray et al., 2008). O primeiro conceito é definido como o conjunto de ações ou serviços disponibilizados aos utilizadores. Relativamente ao conceito de usabilidade, este é definido como a eficiência e adequabilidade na concretização de determinados objetivos por determinados utilizadores (Karray et al., 2008). A definição de usabilidade de um sistema computacional alterou-se ao longo tempo devido à melhor compreensão da interação entre humano e computador e dos fenómenos que rodeiam esse processo de comunicação. Uma das mais conhecidas definições de usabilidade foi apresentada por Nielsen (1993): a usabilidade apresenta múltiplos componentes e é tradicionalmente associada a cinco atributos: facilidade de aprendizagem, eficiência, facilidade de memorização, reduzida taxa de erros, e satisfação de utilização.

Num sistema computacional interativo evidenciam-se dois componentes principais: o componente funcional, também designado por computacional, é responsável pela concretização de tarefas; o componente comunicacional, mais conhecido como interface, é responsável pela gestão do processo de comunicação entre o sistema e o utilizador (Hix e Hartson, 1993). Do ponto de vista do utilizador, o interface representa todo o sistema.

2.1.Desenvolvimento do interface O processo de desenvolvimento de um interface é composto por duas partes: componente de interação e componente de software. O componente de interação define o comportamento do interface. O componente de software fornece os meios para implementar o código que instancia o componente de interação (Hix e Hartson, 1993).

Apesar dos componentes serem desenvolvidos em diferentes domínios (o componente de interação ocorre no domínio comportamental enquanto o componente de software ocorre no domínio da construção), ambos são necessários e igualmente importantes na definição do grau de usabilidade do sistema.

A fim de desenvolver o componente de interação foi necessário adotar uma metodologia para tal. A metodologia selecionada designa-se por Metodologia em Estrela (Hix e Hartson, 1993). Esta metodologia permite o desenvolvimento de interfaces centrados no utilizador uma vez que se centra na avaliação contínua ao longo de todo o processo de desenvolvimento. Como consequência, os resultados de cada atividade são avaliados antes de se iniciar a atividade seguinte.

A designação Metodologia em Estrela deve-se à sua forma em estrela. As pontas da estrela não estão ordenadas ou ligadas segundo uma sequência. O que significa que o processo de desenvolvimento, na teoria, pode ser iniciado em qualquer ponto da estrela (Hix e Hartson, 1993). No centro da estrela encontra- se o processo de avaliação de usabilidade.

Esta metodologia inclui as seguintes atividades: Análise do sistema, das tarefas, de funcionalidades, do utilizador; Especificação dos requisitos de usabilidade; Design e representação do design; Prototipagem rápida; e Avaliação de usabilidade. É necessário referir que as cinco fases contidas na área de interesse são as fases necessárias para a criação e avaliação de um protótipo de um interface para um sistema de escalonamento.

3. Análise do problema A fase de Análise representa o ponto de partida do processo de desenvolvimento do interface. Foram realizadas as seguintes análises: outros sistemas de escalonamento, sistema de escalonamento existente, utilizador, tarefas e funcionalidades. A informação resultante da fase de análise é posteriormente vertida num modelo de interação durante a fase de Design e representação do mesmo.

O estudo e análise dos sistemas de escalonamento JD Edwards EnterpriseOne Production Scheduling (Oracle, 2007), Sistrade Scheduling (Sistrade, 2009) e Lekin (Pinedo et al., 2002) tiveram como objetivos: a identificação dos objetos empregues na interação e das funcionalidades valorizadas pelos utilizadores; e a compreensão das formas de interação e comparação das formas de representação disponibilizadas por cada um dos sistemas. Nestes sistemas, o plano de escalonamento é representado através de um diagrama de Gantt, onde os retângulos representam tarefas. As diferentes colorações e comprimentos permitem dotar cada um dos retângulos com diferentes significados (diferentes tarefas com diferentes tempos de processamento, por exemplo). Ao nível da interação a principal funcionalidade disponibilizada é o drag and drop de tarefas, funcionalidade que permite movimentações horizontais (antecipação ou atraso do inicio de tarefa) e movimentações verticais (migração de tarefas entre máquinas paralelas). É dado um especial enfâse à representação gráfica dos resultados (planos de escalonamento) por parte destes sistemas. Ou seja, existe um maior investimento na visualização e interação com os resultados em detrimento da definição dos dados de entrada. Em termos práticos isto pode significar em algumas situações um maior consumo de tempo na definição do problema de escalonamento em comparação com a análise do plano de escalonamento resultante.

Este trabalho procura equilibrar o investimento em termos de visualização e interação entre a entrada de dados (problema de escalonamento) e os resultados (plano de escalonamento).

As análises do sistema de escalonamento existente, dos potenciais utilizadores, das tarefas a realizar e das funcionalidades a disponibilizar tiveram como objetivo compreender e contextualizar o problema identificado. Este conjunto de análises permitiu especificar os requisitos de usabilidade. No entanto, é necessário referir que a especificação dos requisitos de usabilidade não está confinada à fase de análise, ou seja, alguns requisitos foram identificados ou alterados em fases posteriores. A informação recolhida e elaborada ao longo de toda a fase de Análise permitiu construir o modelo de interação.

O modelo de interação, elaborado na fase de Design e representação do design, identifica os objetos com os quais os utilizadores irão interagir. Foram identificados os seguintes objetos de interação: operações, tarefas e precedências.

A concretização da fase de Design é o ponto de partida para o desenvolvimento de um protótipo do interface. O desenvolvimento de um protótipo permitirá avaliar todo o trabalho de análise.

4. Protótipo O sistema recebe como entrada de dados um problema de escalonamento através do interface com o utilizador e processa essa informação com a finalidade de obter um plano de escalonamento como resultado. Este resultado é disponibilizado graficamente ao utilizador através de um diagrama de Gantt com o qual o utilizador pode interagir.

A Figura_3 ilustra a visão global do sistema. O módulo Editor de Tarefas e o módulo Editor de Problemas de Escalonamento são responsáveis pela definição do problema de escalonamento (entrada de dados) enquanto o módulo de Visualização de Resultados é responsável pela representação e interação com o plano de escalonamento (saída de resultados).

4.1. Editor de Tarefas O Editor de Tarefas (Piairo, 2012) (Piairo et al., 2013) permite, de uma forma gráfica e interativa, definir ou editar uma sequência de operações. Esta sequência define a ordem pela qual as operações devem ser processadas (Figura 4).

Uma operação pode ter como precedente uma outra operação ou um conjunto de operações. Cada uma das operações possui três atributos: descrição, identificação da máquina onde é processada e tempo de processamento.

O utilizador pode inserir, remover, selecionar, mover e redimensionar operações e precedências. Ao utilizador são disponibilizadas as seguintes funcionalidades: cortar, copiar e colar, undo e redo, zoom in e zoom out, e auto-layout. Esta última funcionalidade destaca-se pela sua utilidade, uma vez que permite a estruturação automática das operações de acordo com os seus respetivos níveis.

De modo a assegurar a correta definição de uma tarefa, foi desenvolvido um mecanismo de validação em tempo real. O mecanismo permite que qualquer alteração promovida pelo utilizador na sequência de operações seja validada instantaneamente. No caso de insucesso numa validação, a coloração do objeto que provocou a falha é alterada e é disponibilizada uma mensagem tooltip para que o utilizador possa identificar e compreender a causa do insucesso. São realizadas as seguintes validações: operações isoladas ' uma tarefa com mais do que uma operação não deve conter operações isoladas (operação sem qualquer relação de precedência com outra qualquer célula); precedências ' uma precedência deve estar associada a uma operação de origem e a uma operação de destino e entre uma operação de origem e uma operação de destino deve existir apenas uma precedência (repetição de precedências); atributos da operação ' todos os atributos da operação devem ser devidamente definidos (descrição, tempo de processamento e identificação da máquina); operações finais ' uma tarefa apenas deve conter uma operação final; ciclos ' numa tarefa não é permitida a existência de ciclos (conjunto de operações que formam um rede fechada); descrição da tarefa ' deve ser definida uma descrição para a tarefa.

4.2. Editor de Problemas de Escalonamento O Editor de Problemas de Escalonamento (Piairo, 2012) (Piairo et al., 2013) permite, de uma forma gráfica e interativa, definir ou editar um problema de escalonamento. Um problema de escalonamento corresponde a um conjunto de tarefas a serem realizadas num determinado período de tempo (Figura_5).

O utilizador pode selecionar, inserir, remover, mover e redimensionar as tarefas. Cada uma das tarefas é caraterizada por quatro atributos: data de lançamento, data de entrega, prioridade e quantidade. São disponibilizadas as funcionalidades: cortar, copiar e colar, undo e redo, zoom in e zoom out.

O utilizador pode selecionar, inserir, remover, mover e redimensionar as tarefas. Cada uma das tarefas é caraterizada por quatro atributos: data de lançamento, data de entrega, prioridade e quantidade. São disponibilizadas as funcionalidades: cortar, copiar e colar, undo e redo, zoom in e zoom out.

O utilizador pode aplicar dois tipos de movimentos às tarefas: movimentos horizontais e movimentos verticais. Relativamente aos primeiros, quando o utilizador move horizontalmente uma tarefa, a sua data de lançamento e de entrega são alteradas, enquanto a sua duração se mantém inalterada. No caso em que o utilizador opte por redimensionar a tarefa (apenas o redimensionamento horizontal é permitido), uma das datas, lançamento ou entrega, é alterada, assim como a duração da tarefa. Relativamente aos movimentos verticais, o utilizador pode trocar de posição uma ou várias operações em simultâneo.

Existem algumas ações que alteram a posição das tarefas: remover uma tarefa - o espaço da operação removida é ocupado por uma outra tarefa de modo a não existirem espaços livres; inserir uma tarefa ' uma nova tarefa é sempre inserida imediatamente abaixo da última tarefa.

O valor máximo da escala temporal pode ser alterado pelo utilizador, o que provoca uma adaptação automática das dimensões dos objetos à nova escala.

Tal como acontece no módulo anterior, para o módulo Editor de Problemas de Escalonamento foi também desenvolvido um mecanismo de validações em tempo real para orientar o utilizador ao longo do processo de definição do problema de escalonamento. São realizadas as seguintes validações: gama operatória ' uma tarefa deve ter associada uma gama operatória; estado da gama operatória ' a gama operatória associada à tarefa pode ter sido validada com sucesso ou insucesso; atributos da tarefa ' todos os atributos das tarefas devem ser devidamente definidos (data de lançamento, data de entrega, prioridade e quantidade); valor máximo da escala temporal - deve ser um número inteiro maior que zero; descrição do problema de escalonamento ' deve ser definida uma descrição para o problema de escalonamento.

4.3. Editor de Visualização de Resultados O Editor de Visualização de Resultados (Piairo, 2012) permite a visualização do plano de escalonamento e interação entre o utilizador e as operações das tarefas constituintes do plano de escalonamento (Figura_6). Esta interação permite o ajustamento do plano às necessidades do utilizador e/ou criação de cenários alternativos.

As alterações promovidas pelo utilizador podem ser classificadas como movimentos horizontais e movimentos verticais. Os movimentos horizontais consistem na alteração da posição de uma operação dentro da mesma máquina. Isto permite antecipar ou retardar o início do processamento de uma determinada operação. Para estes movimentos são realizadas duas validações: sobreposições de operações ' não são permitidas sobreposições de operações na mesma máquina; operações antecessoras ' a data de início de uma operação não deve ser inferior à data de conclusão da operação antecessora. Relativamente ao movimento vertical, este implica a migração de uma determinada operação para uma máquina diferente da inicial. Esta possibilidade assume interesse no caso de máquinas paralelas ou de avarias.

5. Avaliação de usabilidade Esta secção descreve a metodologia utilizada na avaliação de usabilidade do protótipo desenvolvido e apresenta os resultados obtidos durante a sessão de avaliação assim como a respetiva análise.

5.1. Metodologia Com o intuito de avaliar a facilidade de utilização do interface desenvolvido foi preparado um guião baseado em (Pereira, 2004). Não menos importante, pretendia-se também a construção de um documento com os comentários e sugestões de melhoria recolhidos durante a sessão de avaliação.

O guião teve um papel orientador dos participantes durante a sessão de avaliação e é composto por quatro elementos: introdução, questionário inicial, teste de eficiência e questionário final. A introdução procura contextualizar os participantes de modo a que possam compreender o propósito do sistema e da sessão de avaliação, das tarefas a executar durante a sessão, e o tipo de perguntas apresentadas; o questionário inicial, preenchido antes da realização do teste de eficiência, procurar traçar o perfil dos participantes e avaliar a sua atitude perante sistemas de escalonamento; o teste de eficiência é caracterizado por um conjunto de tarefas referência que os participantes devem realizar com o objetivo de definir um problema de escalonamento específico, permitindo deste modo a observação de diferentes formas de interação; o questionário final, preenchido após o teste de eficiência procura obter a opinião dos participantes relativamente aos aspetos específicos da interação e às funcionalidades disponibilizadas. Adicionalmente são solicitados aos participantes comentários e sugestões de melhoria.

Na sessão de avaliação estiveram presentes 10 participantes. Todos os participantes possuem experiência em sistemas de escalonamento, experiência adquirida em contexto profissional e/ou académico. A definição do número necessários de participantes para a sessão de avaliação baseou-se em (Virzi, 1992). Segundo este, uma sessão de avaliação com apenas 5 participantes permite identificar cerca de 80% dos problemas de usabilidade. No caso de estarem pelo menos 10 participantes na sessão de avaliação será possível identificar 90% dos problemas de usabilidade.

5.2. Sessão de avaliação A sessão de avaliação teve início com a receção dos participantes e entrega do guião da sessão de avaliação. De seguida foi realizada uma introdução ao interface com o utilizador a ser avaliado e aos objetivos da sessão. Após a contextualização dos participantes o questionário inicial foi preenchido.

O passo que se seguiu foi o teste de eficiência. Neste teste, era solicitado aos participantes a definição de um problema de escalonamento baseado em (Madureira, 2003). O problema de escalonamento é composto por 7 tarefas com diferentes data de lançamento e entrega, prioridades e quantidades. Para cada tarefa, os participantes deveriam definir e associar uma sequência de operações (gama operatória). Era necessário a definição de 5 tarefas com 8 a 11 operações, cujos atributos também deveriam ser definidos pelos participantes.

Para cada participante foi registado o tempo gasto na correta definição do problema de escalonamento.

Por fim, e após o teste de eficiência, os participantes preencheram o questionário final, onde eram questionados sobre os diversos aspetos de interação e funcionalidades disponibilizadas pelo interface avaliado.

5.3. Resultados Segue-se a apresentação dos resultados obtidos através do questionário inicial e final e a respetiva interpretação desses resultados.

As respostas obtidas nos questionários foram classificadas segundo uma escala de valores inteiros entre -3 (valor mínimo) e +3 (valor máximo). O valor médio zero é um valor neutro.

No questionário inicial, com o intuito de avaliar a sua atitude relativamente a um sistema de escalonamento, os participantes foram questionados sobre a facilidade de uso e utilidade de um sistema de escalonamento na realização de três tarefas: programação e controlo da produção, distribuição de tarefas e afetação de recursos (Figura_7).

A tarefa afetação de recursos obteve a maior classificação média, sendo por isso a tarefa onde um sistema de escalonamento pode ser especialmente útil. Por outro lado, os participantes reconhecem a complexidade das tarefas, classificando a mesma tarefa como sendo das mais difíceis de realizar.

Relativamente ao principal propósito de um sistema de escalonamento, entre a maximização da utilização de recursos, a redução dos tempos mortos e a otimização do processo de produção, os participantes atribuíram a maior classificação média à primeira e última finalidade (Figura_8).

Ao longo do teste de eficiência o tempo despendido por cada participante na definição do problema de escalonamento foi registado (Figura_9). Em termos médios foram necessários cerca de 33 minutos para os participantes definirem corretamente o problema de escalonamento. O tempo máximo foi cerca de 41 minutos enquanto o tempo mínimo foi cerca de 24 minutos de 33 minutos. Como esperado, os participantes com maior experiência neste tipo de sistema, os especialistas/peritos, registaram os menores tempos de conclusão.

No questionário final, era solicitado aos participantes a sua opinião relativamente a um conjunto de aspetos de interação do interface disponibilizado para avaliação. Em termos de preferência por um dos dispositivos de interação, rato e teclado, foi com naturalidade que se verificou que a preferência dos participantes recaiu sobre o rato (Figura_10).

A Figura_11 ilustra a classificação média obtida dos vário aspetos de interação do Editor de Problemas de Escalonamento. Embora todos os aspetos tivessem obtido classificações positivas, a facilidade de utilização das funções Cortar, Copiar e Colar, assim como a definição do valor máximo da escala temporal destacam-se por terem obtido a classificação máxima. A identificação de erros através da coloração dos contornos dos objetos e a alteração das datas de lançamento e entrega via manipulação com o rato são os aspetos a melhorar.

A Figura_12 ilustra a classificação dos vários aspetos de interação do módulo Editor de Tarefas. As funcionalidades Cortar, Copiar e Colar, e Auto-Layout obtiveram a classificação máxima, sendo por isso as mais fáceis de usar. Os restantes aspetos também obtiveram classificações positivas, apesar de inferiores.

Em termos globais, os participantes avaliaram positivamente o interface nos seus vários aspetos: estrutura geral, funcionalidades disponibilizadas, articulação entre módulos e facilidade de uso.

Ao analisar a Figura_13, pode-se observar que os participantes classificaram o interface como sendo suficiente, adequado e familiar relativamente à definição de problemas de escalonamento.

Após a avaliação dos vários aspetos interativos do interface, os participantes foram capazes de apresentar comentários e sugestões de melhoria Aqui ficam alguns exemplos:

* Armazenamento automático das alterações realizadas nos atributos das operações e tarefas; * Seleção de todo o conteúdo de um campo. Isto permite evitar o duplo clique na seleção de valores; * Seleção automática de uma operação ao ser inserida.

6. Conclusões e Trabalho Futuro A concretização dos objetivos definidos para este trabalho traduziu-se no desenvolvimento de um interface centrado no utilizador para um sistema de escalonamento. Representa o primeiro ciclo iterativo da Metodologia em Estrela.

Este trabalho apresenta duas grandes contribuições. A primeira passa pela definição de um problema de escalonamento de uma forma gráfica e interativa através dos módulos Editor de Problemas de Escalonamento e Editor de Tarefas. O mecanismo de validação em tempo real permite orientar o utilizador ao longo do processo de definição identificando visualmente erros e eventuais falhas ocorridas. A segunda contribuição baseia-se na visualização e interação com os planos de escalonamento. A interatividade proporcionada ao utilizador permite a adaptação dos planos de escalonamento e a criação de cenários alternativos.

A avaliação de usabilidade do protótipo permitiu avaliar a facilidade de interação proporcionado pelo mesmo aos participantes. A criação de um guião revelou-se importante e necessária na organização e coordenação da sessão de avaliação. Em termos de apreciação global, conclui-se que os participantes avaliam positivamente o protótipo nos seus vários aspetos interativos: estrutura geral, articulação entre módulos, facilidade de utilização e utilidade das funcionalidades disponibilizadas. Isto reflete a avaliação positiva da forma gráfica e interativa na definição de um problema de escalonamento.

As perspetivas de trabalho futuro baseiam-se na implementação das melhorias identificadas na sessão de avaliação, na otimização da articulação entre módulos e no refinamento do mecanismo de validação em tempo real.


transferir texto