Usabilidade

Você já ouviu falar do termo Usabilidade?

O que é?

Para que serve?

Para medir a usabilidade existe cinco fatores que devem ser considerados

  • Velocidade
  • Eficiência
  • Aprendizado
  • Memorização
  • Preferência do usuário

Velocidade: É a forma de medir o quão rápido um usuário consegue executar determinada tarefa.
Para obter essa informação iremos cronometrar o tempo ele demora para completá-la, ignorando os erros. Assumindo que o usuário está executando a tarefa de forma correta e não fazendo várias coisas erradas.

Eficiência: Mede quantos erros são cometidos em determinada tarefa. Isto é, alguém pode ser capaz de executar uma tarefa de forma rápida, porém irá fazer muitos erros durente a tarefa. Podendo haver uma grande divergência entre velocidade e eficiência.

Aprendizado: É a forma que nos diz o quão fácil é para um usuário aprender a utilizar o sistema. Isso nos permite saber o quão bem alguém poderá entrar no sistema pela primeira vez e utilizá-lo. Possivelmente ele precisará de uma pequena ajuda, e deverá ser capaz de encontrar os recursos que precisa de uma forma fácil.

Memorização: Amplia a capacidade de aprendizado. Uma vez que o usuárioaprendeu a utilizar o sistema. A memorização nos diz o quão fácil é para o usuário lembrar de como utilizar o sistema. Então se um usuário parou de utilizar o sistema por um tempo, depois volta a utilizar é desejável que ele rapidamente lembre-se como usá-lo.

 

Fonte: Coursera – The “Cybersecurity” Specialization

[Teste de software] Aula #1 – Tipos

Hoje foi o meu primeiro dia de aula na cadeira de teste de software, o professor pediu para realizarmos uma busca na definição dos tipos de testes existentes.

  • Testes de caixa-cinza – fazer overview
    • Teste de regressção
    • Teste de cobertura

Teste de unidade

A single unit test should test a particular behaviour within the production code. Its success or failure validates a single unit of code. Well-writen tests set up an environment or scenario that is independent of any other conditions, then perform a distinct action and check a definite result. These tests should avoid dependencies on the results of other tests (called test coupling), and they should be short and simple.

Unit Test Frameworks: Tools for High-Quality Software Development at page 2

Teste de integração

The integration test plan should be a joint venture between the design team and the integration team. The document is tested by review. In parallel with the module design and test stages the integration team producecs the Integration Tests Specifications and the test software for each test identified in the Integration Test Plan.

Testing in Software Development
By Martyn A. Ould, Charles Unwin, British Computer Society. Working Group on Testing at page 73

Testes funcionais

O teste funcional também é conhecido como teste caixa preta [10] pelo fato de tratar o software como uma caixa cujo conteúdo é desconhecido e da qual só é possível visualizar o lado externo, ou seja, os dados de entrada fornecidos e as respostas produzidas como saída. Na técnica de teste funcional são verificadas as funções do sistema sem se preocupar com os detalhes de implementação

www.inf.ufpr.br/silvia/topicos/apostilaUSP.pdf.gz

Teste de aceitação

Advantages of Acceptance Testing

While testing software for acceptance, predefined and approved test cases and test data are used for execution. It gives fair amount of confidence to the users that the software will perform as per requirements defined in requirement specifications. As the software is running in production environment or simulated business environment, real-life scenario can be tested without much problem. Acceptance testing helps in the following.

  • Simulation of actual system usage in test lab environment/businesspilot environment, as the case may be. This is more applicable in case of alpha testing done at development sites and beta testing done at customer site.
  • It does not make any system structure assumptions and tests only for user scenario with black box testing techniques. It tests ‘fit for use’ from the users perspective.

Disavantages of Acceptance testing

As acceptance testing is done with predefined test cases and test data, it can limit the scope of acceptance testing. Developers may know in advance how the system will be tested and would ensure that acceptance test cases will never fail.

  • Random situations of testing are note create and executed during acceptance testing, as these are outside the scope of testing and developers may not accept any failure even if acceptance testers find something which is not covered in agreed acceptance testing.
  • It is not possible to do exhaustive acceptance testing but it is limited to sampling and governed by the sampling erros. Most of the cases of definition of acceptance test cases will be tested by development team while ensuring that they will definitely pass in system testing before showing the product to customer.
    Anything in application may fail but these test cases will never fail.
  • There is a possibility of missing logic errors during acceptance testing. Nobody can test all permutations and combinations, and the test cases defined for acceptance might be the ones which will never fail.
  • There is a possibility of redundant testing as it does not refer to any reusability. As testing is done by the users who may not be experts in testing, there may be some lacune in testing skills.

Software Testing: Principles, Techniques and Tools – Milind G. Limaye @ page 256

Aula #1 – Teste de Software – FADERGS – Fabian Corrêa Marques

Curso Marketing estratégico

Trabalho com desenvolvimento de software há um longo tempo e todo o meu conhecimento é focado nessa área, apenas divergindo em tecnologias como pode ser observado no meu currículo.

A muito tempo venho buscando conhecimento em outras áreas além da TI. Um dos assuntos que chama a minha atenção é o Marketing Estratégico, costumo ler sobre sobre o assunto em diversos sites, blogs e afins. Porém para potencializar os meus estudos resolvi fazer um curso de Marketing Estratégico no SENAC RS que irá dar uma visão geral sobre o assunto.

Objetivo do curso:
O futuro das organizações depende de sua sobrevivência em um mercado cada vez mais competitivo. A gestão de marketing das empresas reflete este cenário e deve criar necessidades de consumo de forma dinâmica. Desta forma, entender este processo e definir estratégias para criar valor através de Produtos e Serviços é fundamental apara determinar o sucesso empresarial. Neste contexto, o objetivo deste curso é oferecer aos participantes condições de: planejar, identificar, analisar, segmentar, posicionar, construir cenários, definir estratégias para a construção de Produtos e Serviços de valor para o cliente e determinar os critérios de sua satisfação.
Continue lendo “Curso Marketing estratégico”

Programando aplicações móveis para sistemas android – Parte I

A tempos utilizo a tecnologia móvel (smartphone) mas nunca cheguei a desenvolver algum aplicativo. (vergonha)
Resolvi então procurar um curso para aprender a desenvolver aplicativos para celulares android e encontrei uma especialização da Universidade de Maryland – USA: Programando aplicações móveis para sistemas android.

O curso já está em andamento pois começou no dia 26 de setembro mas vou tentar aproveitar os finais de semana para chegar perto da turma que está realizando o curso desde o início.

Continue lendo “Programando aplicações móveis para sistemas android – Parte I”

Vida, morte, alegria e tristeza

Se há muito sofrimento, também há sempre alegria e vice-versa. Até estas lindas flores algum dia irão murchar e todas as coisas vivas deste mundo não param nem por um momento. Estão sempre se movendo e mudando, esse é o maior prazer existente, a vida das pessoas é igual.

Mas, se a morte certa espera por todos, não é a tristeza que deveria controlar a vida de todos? Enquanto se vive, não importa quantas vezes tente se alivar do sofrimento, ou quantas vezes buscam por amor e alegria e, a morte sempre acaba com tudo. Se é assim, para que um homem nasce? Não podemos fingir que não existe a morte, completa e eterna.

Apenas não se esqueça de uma coisa:

A morte não é o fim de tudo, a morte é o passo que leva à vida seguinte. A morte não é algo definitivo. No passado todos aqueles que nasceram neste mundo, mas foram chamados de santos, todos puderam superar a morte, se entender isso se tornará o homem mais perto de Deus.

As flores nascem e depois murcham… as estrelas brilham, mas algum dia se extinguem… Tudo morre… A terra, o Sol, a Via Láctea e até mesmo todo este universo não é exceção!
Comparado com isso, a vida do homem não é nada mais do que um simples piscar de olhos, um breve momento. Nesse pouco tempo, as pessoas nascem, riem, choram, lutam, são feridas, sentem alegria, tristeza, odeiam alguém, amam alguém.

Tudo isso em um só momento.

Shaka

In memorian – Flávio Flain Marques