Presented in 2012, these slides showcase an analysis over UI in Android applications. By showing examples, other apps and heuristics, it draws some guidelines for the development of mobile apps that have not lost their relevance.
Requirements engineering is the discipline that involves establishing and documenting requirements. The various activities associated with requirements engineering are elicitation, specification, analysis, verification and validation, and management.
Evaluation techniques can be used at all stages of the design process to test interfaces and identify problems. There are two main categories of evaluation: expert analysis and user participation. Expert analysis includes cognitive walkthroughs, heuristic evaluations, and review-based evaluations. User participation evaluations involve testing with users and can be done in laboratories, fields studies, or experiments. A variety of techniques exist within each category to gather both qualitative and quantitative feedback. Choosing an evaluation method depends on factors like the design process stage, desired objectivity, and available resources.
The document discusses various methods for evaluating the usability of interfaces and software systems. It describes the goals of evaluation as assessing functionality, interface effects, and identifying specific problems. Both analytical and empirical testing methods are covered. Analytical methods include heuristic evaluation, consistency inspection, and cognitive walkthrough. Empirical methods involve observation/monitoring of users and experimentation. Key aspects discussed for evaluation include iterative testing, formative vs. summative approaches, and the DECIDE framework.
This document discusses heuristic evaluation, a discount usability testing technique developed by Jacob Nielsen. Heuristic evaluation involves having a small group of 3-5 evaluators independently examine a user interface and identify any usability issues based on 10 design heuristics. Evaluators then aggregate their findings and assign severity ratings to identify the most critical problems. Heuristic evaluation is less costly than other usability testing methods but can still find several usability issues. The document outlines the phases of heuristic evaluation and describes the 10 design heuristics that evaluators use to examine a user interface, such as providing feedback on system status, using familiar language and metaphors, and enabling user control and freedom of use.
What is Heuristic evaluation
Background
Benefits
Main advantages and drawbacks of the method
Scenario and methods of evaluation
10 usability Heuristics in usability engineering
How to conduct heuristic Evaluation
Phases of the Evaluation Method
Problems and Evaluators
Seamlessness thought the whole user experience
Non functional requirements. do we really care…?OSSCube
Ìý
Non Functional requirements are an essential part of a project’s success, sometimes it becomes less focused area as everyone tries to make project successful in terms of functionality. This recorded webinar uncovers what can happen if Non Functional requirements are not addressed properly. What are the after impacts? You also learn the importance of Non Functional requirement, their identification, implementation and verification.
The document discusses various aspects of requirements engineering including processes, techniques, challenges, and importance. It describes requirements elicitation, analysis, specification, validation, and management. Key points covered include feasibility studies, types of requirements, characteristics of good requirements, requirements traceability and evolution. Diagrams like use cases, activity diagrams and data flow diagrams are presented as examples of requirements specification outputs.
Are you in an early stage of your product design or already have a finished product? You can apply heuristics principles and identify key interaction and usability issues its cheaper than usability testing but certainly not effective alternate as real user inputs. This could give way to detailed usability designs without having to spend more time and money.
This document provides an overview of week 2 of an intelligent interfaces course. It discusses theoretical frameworks for human-computer interaction (HCI), including information processing models. Intelligent interfaces aim to enhance flexibility, usability and power of interaction by exploiting knowledge of users, tasks and context. Theories that view HCI as information processing and as socially embedded processes are examined. Methods for evaluating information processing like signal detection and chronometry are also outlined.
The document discusses core principles of software engineering and requirements engineering. It outlines seven principles proposed by David Hooker for software engineering which focus on adding value to users, keeping designs simple, maintaining vision, considering future maintainers and users, planning for reuse, and applying thorough thought. It then describes the key tasks in requirements engineering as inception, elicitation, elaboration, negotiation, specification, validation and management. Data modeling is also discussed including defining data objects, attributes, relationships, modality and cardinality.
This lecture provide a review of requirement engineering process. The slides have been prepared after reading Ian Summerville and Roger Pressman work. This lecture is helpful to understand user, and user requirements.
SD West 2008: Call the requirements police, you've entered design!Alan Bustamante
Ìý
The document discusses best practices for separating requirements and design, as including too much design detail in requirements documentation can lead to increased rework, unrealistic customer expectations, and unnecessary constraints on developers, and it provides recommendations such as using control-agnostic use cases and defining data elements in a shared glossary rather than within use cases.
The document discusses various techniques for project estimation including three point estimation, Delphi method, planning poker, function point analysis, use case points, and PERT diagrams. It provides details on each technique including how they are conducted, their advantages and disadvantages, and when each is best applied. The key aspects that estimators need to consider for large scale projects are work partitioning challenges, increasing communication overhead with larger teams, and understanding how fast the project can realistically be completed based on its size.
Heuristic Evaluation is the process of thorough evaluation/assessment where the experts in a particular domain, used to measure the usability of the user interface.
Heuristic evaluation is a usability inspection method where experts evaluate a design against recognized usability principles called heuristics. It was developed by Jakob Nielsen in 1994 and involves experts inspecting a design to identify any violations of 10 predefined heuristics. Some of these heuristics include ensuring the system status is visible, matching the design to real world expectations, and preventing errors from occurring. Heuristic evaluation provides quick feedback to designers and can identify issues, though it requires experienced evaluators and may miss some major usability problems.
The document discusses present problems and future solutions for software testing. It notes that science fiction ideas often become reality and proposes several futuristic testing ideas that could one day exist, such as self-testing code, integrated software monitoring systems, and automated distributed testing services. It also outlines challenges in testing like determining when enough testing has been done, estimating testing time, and getting developers involved in testing. The document envisions an integrated testing environment that maps requirements, design, code, and tests to automate much of the testing process.
Game Design 2: Expert Evaluation of User InterfacesDavid Farrell
Ìý
This document discusses expert evaluation methods for assessing game designs without end users. It describes cognitive walkthroughs where experts think like users to evaluate if goals and actions are clear. It also discusses heuristic evaluations where experts assess how a design conforms to predefined usability guidelines like Nielsen's heuristics. Both methods are alternatives to user testing that are quicker and cheaper. A minimum of three to five expert evaluators is typically recommended to find different usability issues.
This document discusses software engineering methodologies. It begins by defining software and software engineering. It then covers the software development life cycle including processes like requirements analysis, design, development, testing and maintenance. It describes various methodologies like waterfall, prototyping, iterative development and agile. Waterfall is a linear sequential model while agile focuses on rapid iteration, customer collaboration and responding to change. The document compares agile and plan-driven methods, noting their different suitability based on factors like project length, team experience and requirements stability.
Before spending your budget on Evaluating Interfaces with Users, it's essential to do a evaluation at your end.
At SwitchMe, I took a session with my team of developers to explain importance and method of Evaluating Interfaces at our end first.
Guerilla Human Computer Interaction and Customer Based DesignQuentin Christensen
Ìý
Guerilla HCI is low cost methods of learning from customers and testing your products to improve them. Learn about the different types of guerilla HCI methods you can use to build great products when you don't have unlimited resources to interact with customers and run expensive research studies.
Requirements engineering is the process of establishing the services a system should provide and the constraints under which it should operate. It involves several key tasks: inception to understand the problem domain; elicitation to gather requirements; elaboration to refine and model requirements; negotiation to prioritize requirements; specification to document requirements; validation to verify requirements; and management to track requirements throughout the project. The goal is to clearly define what the customer wants in order to establish a solid foundation for software development.
The document discusses the systems development life cycle and its key phases including systems analysis, design, development and testing, and implementation. It provides details on the various techniques used in systems analysis such as questionnaires, interviews, observation, and documentation reviews. The document also covers the design phase including designing input/output screens, reports, file structures, and validation routines.
Precise and Complete Requirements? An Elusive GoalLionel Briand
Ìý
The document discusses the challenges of achieving precise and complete requirements upfront in software development projects. It notes that while academics assume detailed requirements are needed, practitioners find this difficult to achieve in reality due to limited resources, uncertainty, and changing needs. The document provides perspectives from practice that emphasize starting with prototypes and visions rather than detailed specifications. It also summarizes research finding diverse requirements practices across different domains and organizations. The document concludes that while precise requirements may be desirable, they are often elusive goals, and the focus should be on achieving compliance and delivering working software.
This document discusses evaluation techniques for user interfaces, including cognitive walkthroughs and heuristic evaluation. It provides details on how to conduct a cognitive walkthrough, which involves experts walking through a design to identify potential usability issues. It also describes Nielsen's 10 usability heuristics for heuristic evaluation, such as visibility of system status and user control. Examples are given to illustrate how each heuristic can be applied.
This document discusses methodology selection strategy for systems analysis and design. It explains that there is no single framework appropriate for every software project, and the methodology needs to be adapted to the specific team and product. It outlines important factors to consider like clarity of requirements, technology familiarity, system complexity, schedule constraints. The methodology should guide the team's process but allow flexibility. The success of the methodology is measured by timely delivery of quality product increments that satisfy stakeholders.
Os chatbots estão com força total e muitas pessoas apostam neles como uma tecnologia que pode revolucionar o mercado dos apps. Os chatbots já são utilizados para fazer compras, chamar um táxi e muito mais e, após o último Google I/O, a tecnologia deve se espalhar ainda mais. Nesta talk iremos mostrar, de forma aplicada, como a criação de um chatbot funciona e como ele pode ser integrado a produtos, como o Google Assistant e, em especial, a um aplicativo Android, trazendo mais valor para a solução como produto e diferenciais de UX ao app.
This document provides an overview of week 2 of an intelligent interfaces course. It discusses theoretical frameworks for human-computer interaction (HCI), including information processing models. Intelligent interfaces aim to enhance flexibility, usability and power of interaction by exploiting knowledge of users, tasks and context. Theories that view HCI as information processing and as socially embedded processes are examined. Methods for evaluating information processing like signal detection and chronometry are also outlined.
The document discusses core principles of software engineering and requirements engineering. It outlines seven principles proposed by David Hooker for software engineering which focus on adding value to users, keeping designs simple, maintaining vision, considering future maintainers and users, planning for reuse, and applying thorough thought. It then describes the key tasks in requirements engineering as inception, elicitation, elaboration, negotiation, specification, validation and management. Data modeling is also discussed including defining data objects, attributes, relationships, modality and cardinality.
This lecture provide a review of requirement engineering process. The slides have been prepared after reading Ian Summerville and Roger Pressman work. This lecture is helpful to understand user, and user requirements.
SD West 2008: Call the requirements police, you've entered design!Alan Bustamante
Ìý
The document discusses best practices for separating requirements and design, as including too much design detail in requirements documentation can lead to increased rework, unrealistic customer expectations, and unnecessary constraints on developers, and it provides recommendations such as using control-agnostic use cases and defining data elements in a shared glossary rather than within use cases.
The document discusses various techniques for project estimation including three point estimation, Delphi method, planning poker, function point analysis, use case points, and PERT diagrams. It provides details on each technique including how they are conducted, their advantages and disadvantages, and when each is best applied. The key aspects that estimators need to consider for large scale projects are work partitioning challenges, increasing communication overhead with larger teams, and understanding how fast the project can realistically be completed based on its size.
Heuristic Evaluation is the process of thorough evaluation/assessment where the experts in a particular domain, used to measure the usability of the user interface.
Heuristic evaluation is a usability inspection method where experts evaluate a design against recognized usability principles called heuristics. It was developed by Jakob Nielsen in 1994 and involves experts inspecting a design to identify any violations of 10 predefined heuristics. Some of these heuristics include ensuring the system status is visible, matching the design to real world expectations, and preventing errors from occurring. Heuristic evaluation provides quick feedback to designers and can identify issues, though it requires experienced evaluators and may miss some major usability problems.
The document discusses present problems and future solutions for software testing. It notes that science fiction ideas often become reality and proposes several futuristic testing ideas that could one day exist, such as self-testing code, integrated software monitoring systems, and automated distributed testing services. It also outlines challenges in testing like determining when enough testing has been done, estimating testing time, and getting developers involved in testing. The document envisions an integrated testing environment that maps requirements, design, code, and tests to automate much of the testing process.
Game Design 2: Expert Evaluation of User InterfacesDavid Farrell
Ìý
This document discusses expert evaluation methods for assessing game designs without end users. It describes cognitive walkthroughs where experts think like users to evaluate if goals and actions are clear. It also discusses heuristic evaluations where experts assess how a design conforms to predefined usability guidelines like Nielsen's heuristics. Both methods are alternatives to user testing that are quicker and cheaper. A minimum of three to five expert evaluators is typically recommended to find different usability issues.
This document discusses software engineering methodologies. It begins by defining software and software engineering. It then covers the software development life cycle including processes like requirements analysis, design, development, testing and maintenance. It describes various methodologies like waterfall, prototyping, iterative development and agile. Waterfall is a linear sequential model while agile focuses on rapid iteration, customer collaboration and responding to change. The document compares agile and plan-driven methods, noting their different suitability based on factors like project length, team experience and requirements stability.
Before spending your budget on Evaluating Interfaces with Users, it's essential to do a evaluation at your end.
At SwitchMe, I took a session with my team of developers to explain importance and method of Evaluating Interfaces at our end first.
Guerilla Human Computer Interaction and Customer Based DesignQuentin Christensen
Ìý
Guerilla HCI is low cost methods of learning from customers and testing your products to improve them. Learn about the different types of guerilla HCI methods you can use to build great products when you don't have unlimited resources to interact with customers and run expensive research studies.
Requirements engineering is the process of establishing the services a system should provide and the constraints under which it should operate. It involves several key tasks: inception to understand the problem domain; elicitation to gather requirements; elaboration to refine and model requirements; negotiation to prioritize requirements; specification to document requirements; validation to verify requirements; and management to track requirements throughout the project. The goal is to clearly define what the customer wants in order to establish a solid foundation for software development.
The document discusses the systems development life cycle and its key phases including systems analysis, design, development and testing, and implementation. It provides details on the various techniques used in systems analysis such as questionnaires, interviews, observation, and documentation reviews. The document also covers the design phase including designing input/output screens, reports, file structures, and validation routines.
Precise and Complete Requirements? An Elusive GoalLionel Briand
Ìý
The document discusses the challenges of achieving precise and complete requirements upfront in software development projects. It notes that while academics assume detailed requirements are needed, practitioners find this difficult to achieve in reality due to limited resources, uncertainty, and changing needs. The document provides perspectives from practice that emphasize starting with prototypes and visions rather than detailed specifications. It also summarizes research finding diverse requirements practices across different domains and organizations. The document concludes that while precise requirements may be desirable, they are often elusive goals, and the focus should be on achieving compliance and delivering working software.
This document discusses evaluation techniques for user interfaces, including cognitive walkthroughs and heuristic evaluation. It provides details on how to conduct a cognitive walkthrough, which involves experts walking through a design to identify potential usability issues. It also describes Nielsen's 10 usability heuristics for heuristic evaluation, such as visibility of system status and user control. Examples are given to illustrate how each heuristic can be applied.
This document discusses methodology selection strategy for systems analysis and design. It explains that there is no single framework appropriate for every software project, and the methodology needs to be adapted to the specific team and product. It outlines important factors to consider like clarity of requirements, technology familiarity, system complexity, schedule constraints. The methodology should guide the team's process but allow flexibility. The success of the methodology is measured by timely delivery of quality product increments that satisfy stakeholders.
Os chatbots estão com força total e muitas pessoas apostam neles como uma tecnologia que pode revolucionar o mercado dos apps. Os chatbots já são utilizados para fazer compras, chamar um táxi e muito mais e, após o último Google I/O, a tecnologia deve se espalhar ainda mais. Nesta talk iremos mostrar, de forma aplicada, como a criação de um chatbot funciona e como ele pode ser integrado a produtos, como o Google Assistant e, em especial, a um aplicativo Android, trazendo mais valor para a solução como produto e diferenciais de UX ao app.
(pt-BR) Apresentação que expõe de forma leve e didática o desenvolvimento de aplicativos e protótipos Android levando em consideração tempo e qualidade.
Apresentada internamente no SIDI - CAmpinas
8. Heuristics Evaluation
• Heuristics: Experience-based techniques for
problem solving, learning and discovery
– Less of a rule, more of a guideline
• Classic set of heuristics by Jakob Nielsen (1)
– Rule set is not carved in stone
9. Heuristics Evaluation
• 1. Visibility of system status
• 2. Match between system and the real world
• 3. User control and freedom
• 4. Consistency and standards
• 5. Error prevention
• 6. Recognition rather than recall
• 7. Flexibility and efficiency of use
• 8. Aesthetic and minimalist design
• 9. Help users recognize, diagnose, and recover from
errors
• 10. Help and documentation
11. Heuristics Evaluation
• 2. Match between system and the real world
Consulte a documentação que veio com
seu telefone para instruções adicionais
Leia as instruções que vieram
com seu telefone
Seu telefone está se comunicando
com os servidores do Google para
acessar a sua conta. Esta operação
pode demorar cinco minutos.
Seu telefone está contactando o Google.
Esta operação pode demorar 5 minutos.
12. Heuristics Evaluation
• 3. User control and freedom
Default
functionality
Data
selection
Scroll /
Sibling
Rearrange
data
Zoom In / Text
selection
Zoom
In
Zoom
out
24. Cognitive Walkthrough
• First/Next atomic action user should take
• How will user access description of action?
• How will user associate description with
action?
• All other variable actions less appropriate?
• How will user execute the action?
• If timeouts, time for user to decide before
timeout?
• Execute the action. Describe system response.
• Describe appropriate modified goal, if any.
25. Streamlined Cognitive
Walkthrough
• Will the user know what to do at this step?
• If the user does the right thing, will they
know that they did the right thing, and are
making progress towards their goal?
#11: Visibilidade do estado do sistema:
O sistema deve sempre manter o usuário ciente do que está acontecendo, utilizando-se de feedback apropriado em um tempo razoável.
#13: Controle do usuário e liberdade:
O usuário vai usar funções do sistema por engano e vai precisar de uma "saÃda de emergência" para escapar do estado atual sem ter que passar por todo o fluxo inverso. Dar suporte a "desfazer" e "refazer".
#14: Consistência e padrões:
O usuário não deve ser obrigado a adivinhar se palavras, situações ou ações diferentes significam a mesma coisa. Convenções da plataforma devem ser seguidas.
#17: Flexibilidade e eficiência do uso:
Aceleradores, invisÃveis para o usuário novato, podem acelerar a interação para usuários experientes de forma que o sistema possa atender a ambos tipos de usuário. Permitir que usuários personalizem ações frequentes.
#19: Ajudar o usuário a reconhecer, diagnosticar e se recuperar de erros:
Mensagens de erro devem ser expressas em lÃngua nativa (nada de código), indicar o problema precisamente e construtivamente sugerir uma solução.
#20: Ajuda e documentação:
Mesmo que seja melhor que o sistema possa ser usado sem documentação, pode ser necessário providenciar um "ajuda" e documentação. Qualquer informação dessa natureza deve ser de fácil acesso, focada na tarefa do usuário, listar passos concretos para serem seguidos e não ser grande demais.
#23: - Em computadores, para otimizar o tempo gasto por um usuario para acessar um certo item na tela, segundo a lei de fitts, o tamanho deve ser aumentado e a distancia deve ser diminuida. Objetos colocados nos cantos da tela tem, na prática, um tamanho infinito pois o mouse não ultrapassa a lateral das telas, assim, arrastando o mouse numa velocidade grande não se erra o alvo. Outro ponto ideal seria a posição atual do cursor, assim o usuário precisa apenas clicar.
#26: Bolado para viabilizar o walkthrough cognitivo em ambientes corporativos.
Consiste em 2 testes objetivos para cada cenário de uso do aplicativo.
Equipe de testes deve ser preparada para aplicar estes passos corretamente.
#27: A partir de análises anteriores e do perfil do usuário são preparados alguns cenários de testes.
Os testes são realizados, geralmente, em ambientes controlados, onde podem ser notadas as reações do usuário aos comportamentos do sistema.
Podem ser feitos em ambientes abertos, dependendo do que exatamente se quer testar.
Outros testes possÃveis
- Entrevistas
- Benchmarking
- Comparação com produtos competidores