Recursos especiais neste artigo:
Conteúdo sobre boas práticas
Usabilidade de aplicações é uma etapa importante nos projetos de software, ela é um dos fatores que determinam o sucesso ou fracasso do projeto junto ao usuário. Ter ao menos os conceitos básicos sobre usabilidade em mente é muito importante para todo profissional de TI. Em virtude da importância e complexidade deste tema, é cada vez mais comum o uso de bibliotecas prontas voltadas exclusivamente para a camada de apresentação das aplicações.
Este artigo será útil para relembrar os conceitos básicos sobre Usabilidade de aplicações e também para conhecer uma biblioteca que não é muito comum no Brasil, mas que é muito poderosa, chamada Ext.Net.
Um projeto de software envolve inúmeras questões como o pleno entendimento das regras de negócio, o atendimento dos requisitos, a arquitetura da aplicação, a tecnologia que será empregada, o plano de testes, a elaboração de manuais, e também por um item que em alguns casos passa despercebido, mas que é muito importante para o sucesso de um projeto de software: a Usabilidade da aplicação, que nada mais é do que a interface da aplicação com o usuário do software, também conhecida como IHC (Interface Humano Computador).
Ao desenvolver um software, além de atender todos os requisitos de negócio, também devemos ter como objetivo criar um produto que seja de fácil operação pelo usuário. Para atendermos essa necessidade não precisamos necessariamente criar um padrão a partir do zero, podemos utilizar bibliotecas prontas e adaptarmos estas bibliotecas para as nossas necessidades, gerando assim uma economia de tempo durante esta fase do projeto. Existem diversas bibliotecas voltadas para esse foco principalmente para o desenvolvimento no ambiente web, estas bibliotecas disponibilizam uma série de componentes que nos ajudam na padronização e na garantia usabilidade da interface da aplicação. Além disso, outra vantagem do uso bibliotecas prontas é o fato delas já terem sido testadas em diferentes tipos de navegadores, gerando uma compatibilidade maior do projeto. Pode-se citar como exemplo destes tipos de bibliotecas a jQuery UI, a DOJO e a Ext.Net.
Dentre as bibliotecas citadas, a Ext.Net é a menos conhecida no Brasil, por esta razão ela será o alvo deste artigo. Para apresentar esta biblioteca, serão desenvolvidos alguns exemplos ilustrando a utilização de alguns componentes.
Para que possamos aproveitar ao máximo as facilidades geradas por essas bibliotecas, é necessário termos ao menos um conhecimento básico sobre o conceito de Usabilidade, conceitos estes que também poderão ser vistos neste artigo.
A usabilidade é tão relevante que é citada em diversas normas que regulamentam essa etapa do projeto. Segundo a ISO/IEC 9126, usabilidade é “um conjunto de atributos de software relacionado ao esforço necessário para seu uso e para o julgamento individual de tal uso por determinado conjunto de usuários”, além disso, essa norma define métricas para garantir a usabilidade, sendo elas:
· Inteligibilidade, em que o objetivo é responder a pergunta: é fácil entender os conceitos utilizados?
· Apreensibilidade, ou seja, é fácil aprender a utilizar o software?
· Operacionabilidade, ou seja, é fácil operar e controlar a aplicação?
Outra norma importante é a ISO/IEC 12119, que trata da avaliação de pacotes de software, ela descreve de maneira mais detalhada as características descritas na norma ISO/IEC 9126, tais como:
· Mensagens de erro com informações necessárias para a solução da situação de erro. Em outras palavras, a mensagem precisa ser simples, direta e objetiva para que informe ao usuário sobre o que está acontecendo e como deverá proceder.
· Diferenciação dos tipos de mensagem, ou seja, permita que o usuário consiga distinguir uma mensagem de erro, uma mensagem de aviso, ou uma mensagem de confirmação. Para isso, a melhor maneira é usar imagens ou cores nas mensagens.
· Alertas claros e objetivos para as consequências de uma determinada confirmação a ser realizada pelo usuário. É de fundamental importância que o software interaja com o usuário, mas esta comunicação não pode ser cansativa, precisa ser direta, portanto não crie mensagens com textos enormes, uma vez que a probabilidade do usuário ler a mensagem diminui conforme a quantidade de linhas da mensagem aumenta.
Existem outras normas que também tratam do assunto, como a ISO 9241, que é focada mais no ponto de vista do usuário e define conceitos como eficácia, eficiência e satisfação. Já a ISO 14598 é voltada ao processo de avaliação da qualidade do software.
Mas ao mesmo tempo em que essa etapa é tão importante, nem sempre é dada a ela a devida atenção durante o desenvolvimento do software, inclusive alguns profissionais da área acham essa etapa irrelevante e nem sequer planejam a usabilidade da aplicação. Uma boa estratégia para promover a usabilidade do software é planejá-la em conjunto com o cliente, afinal, será ele que irá utilizar o software, e por mais que o projeto esteja com todas as funcionalidades funcionando adequadamente e com todos os requisitos de negócio atendidos, se a usabilidade não for boa, o usuário não ficará plenamente satisfeito com o aplicativo.
Um bom exemplo da importância dessa fase do projeto são os terminais de atendimento bancário: coloque-se na situação de ter que criar um aplicativo que será usado tanto por pessoas que possuem muito pouco ou nenhum conhecimento com computadores, quanto por pessoas que possuem grande conhecimento. Além disso, esse aplicativo precisa ser intuitivamente simples para que não seja necessário nenhum tipo de treinamento ou manual de operação. É por isso que nestes casos as empresas investem em testes específicos para a usabilidade do software.
Usabilidade do ponto de vista do usuário
Quando desenvolvemos um software, temos que facilitar ao máximo a vida do usuário quando o mesmo estiver operando o sistema. Durante o desenvolvimento temos que direcionar a interface do software, tornando-o intuitivo o suficiente para que, mesmo com pouco ou sem treinamento, o usuário consiga utilizar o aplicativo sem apresentar dificuldades.
Baseado nisso são listadas abaixo algumas situações que precisamos tratar no software para que o mesmo atenda essa necessidade do usuário.
a)
Padronização
dos botões e componentes da tela: devemos padronizar o posicionamento dos
botões e demais componentes da aplicação em todas as telas da aplicação. Do
ponto de vista do usuário é muito desagradável ter que clicar no botão Gravar que
em algumas telas está no canto inferior esquerdo, e em outras no canto inferior
direito.
Precisamos também utilizar sempre o mesmo nome para a mesma funcionalidade, por
exemplo: se sua aplicação possui diversas telas, e nessas telas existe um botão
que grava uma informação no banco de dados, utilize o mesmo titulo para este botão
em todas as telas da aplicação. Evite ter em uma tela um botão com o titulo
Gravar e na outra um botão com o titulo Salvar, isso pode confundir o usuário.
A mesma regra se aplica aos ícones destes botões. Considerando este mesmo
cenário, procure utilizar o mesmo ícone nestes tipos de botões, muitas pessoas
associam a funcionalidade de um botão pelo ícone.
b) Dicas de utilização dos componentes da tela: este é um recurso muito interessante e que, quando bem empregado, facilita muito o entendimento do usuário sobre os componentes da tela, normalmente chamado de “tooltips”. Os tooltips são aqueles textos explicativos que aparecem quando o usuário posiciona o mouse sobre o componente. Mas cuidado, um texto mal redigido ou com dupla interpretação poderá causar um entendimento errôneo por parte do usuário que poderá gerar uma má utilização do software.
c)
Mensagens
emitidas pelo software: assim como vimos nas normas da ISO, não é
recomendado utilizar frases longas e que não sejam claras e objetivas, isso desestimulará
a leitura por parte do usuário, pois nem sempre ele terá paciência de ler até o
fim. Portanto, se precisar utilizar uma “message box” ou um “alert”, procure
utilizar somente quando for realmente necessário, sempre utilize textos curtos,
simples e objetivos, e principalmente, que facilite e não dificulte a vida do
usuário, por exemplo: em uma tela ou formulário com vários campos, se o usuário
esqueceu de preencher o campo senha, o sistema deve emitir um alerta ao usuário
do tipo: “O campo senha deve ser preenchido”, e de preferência posicionar o
foco neste campo, e não exibir uma mensagem genérica do tipo: “Formulário
inconsistente”. Neste tipo de situação, o software além de identificar o
problema no preenchimento dos dados, deve também auxiliá-lo no preenchimento
correto das informações.
Outro exemplo é a utilização de mensagens de confirmação para as funcionalidades
que podem gerar algum tipo de prejuízo ao usuário como, por exemplo, o botão
que possui a funcionalidade de exclusão de registros, antes de excluir a
informação, é importante que o software questione o usuário se o mesmo tem
certeza que deseja realizar tal operação, até porque pode acontecer do usuário
ter clicado sem intenção no botão e ...
Confira outros conteúdos:
Teste unitário com NUnit
Como migrar projetos do ASP.NET MVC...
Crie relatórios com o Stimulsoft...
Black November
Desconto exclusivo para as primeiras 200 matrículas!
Pagamento anual
12x no cartão
De: R$ 69,00
Por: R$ 54,90
Total: R$ 658,80
Garanta o desconto
- Formação FullStack Completa
- Carreira Front-end I e II, Algoritmo e Javascript, Back-end e Mobile
- +10.000 exercícios gamificados
- +50 projetos reais
- Comunidade com + 200 mil alunos
- Estude pelo Aplicativo (Android e iOS)
- Suporte online
- 12 meses de acesso
Pagamento recorrente
Cobrado mensalmente no cartão
De: R$ 79,00
Por: R$ 54,90 /mês
Total: R$ 658,80
Garanta o desconto
- Formação FullStack Completa
- Carreira Front-end I e II, Algoritmo e Javascript, Back-end e Mobile
- +10.000 exercícios gamificados
- +50 projetos reais
- Comunidade com + 200 mil alunos
- Estude pelo Aplicativo (Android e iOS)
- Suporte online
- Fidelidade de 12 meses
- Não compromete o limite do seu cartão
<Perguntas frequentes>
Nossos casos de sucesso
Eu sabia pouquíssimas coisas de programação antes de começar a estudar com vocês, fui me especializando em várias áreas e ferramentas que tinham na plataforma, e com essa bagagem consegui um estágio logo no início do meu primeiro período na faculdade.
Estudo aqui na Dev desde o meio do ano passado!
Nesse período a Dev me ajudou a crescer muito aqui no trampo.
Fui o primeiro desenvolvedor contratado pela minha
empresa. Hoje eu lidero um time de desenvolvimento!
Minha meta é continuar estudando e praticando para ser um
Full-Stack Dev!
Economizei 3 meses para assinar a plataforma e sendo sincero valeu muito a pena, pois a plataforma é bem intuitiva e muuuuito didática a metodologia de ensino. Sinto que estou EVOLUINDO a cada dia. Muito obrigado!
Nossa! Plataforma maravilhosa. To amando o curso de desenvolvimento front-end, tinha coisas que eu ainda não tinha visto. A didática é do jeito que qualquer pessoa consegue aprender. Sério, to apaixonado, adorando demais.
Adquiri o curso de vocês e logo percebi que são os melhores do Brasil. É um passo a passo incrível. Só não aprende quem não quer. Foi o melhor investimento da minha vida!
Foi um dos melhores investimentos que já fiz na vida e tenho aprendido bastante com a plataforma. Vocês estão fazendo parte da minha jornada nesse mundo da programação, irei assinar meu contrato como programador graças a plataforma.
Wanderson Oliveira
Comprei a assinatura tem uma semana, aprendi mais do que 4 meses estudando outros cursos. Exercícios práticos que não tem como não aprender, estão de parabéns!
Obrigado DevMedia, nunca presenciei uma plataforma de ensino tão presente na vida acadêmica de seus alunos, parabéns!
Eduardo Dorneles
Aprendi React na plataforma da DevMedia há cerca de 1 ano e meio... Hoje estou há 1 ano empregado trabalhando 100% com React!
Adauto Junior
Já fiz alguns cursos na área e nenhum é tão bom quanto o de vocês. Estou aprendendo muito, muito obrigado por existirem. Estão de parabéns... Espero um dia conseguir um emprego na área.
Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.