[Slides] DevConf 2018, Bengaluru : DesOps – Prepare Today for Future of Design (2018)

DesignOps is an approach to design inspired by the culture of DevOps. In this session, we will be touching upon the practical approaches on how to prepare for the next wave in design that compliments DevOps in the concepts of the cultural shift, collaboration, and automation. We will also see how to bringing the full circle of design in the context of software development lifecycle.

Topic: DesignOps – the Prepare Today for Future of Design!
Date & Time: 2:15PM – 2:45PM on 5 August 2018
Venue: Christ University – Bengaluru, India

Event: DevConf.in 2018 is the second free annual community conference sponsored by Red Hat for Developers, System admins, DevOps engineers, Testers, Documentation writers and other contributors to open source technologies. It is a platform for the local FOSS community participants to come together and engage in the knowledge sharing through technical talks, workshops, panel discussions, hackathons and such activities.

More info at: http://desops.io/2018/07/04/talk-at-devconf18-designops-prepare-today-for-future-of-design/

Translating Value at Different Stages of Design with Minimal Waste

In 1967 Ronald Barthe published Elements of Semiology, which stands as a temporal marker of post-structuralism, where he gave rise to the idea of “Meta Language”, which in fact “beyond language” or “Second-order language” which is used to describe, explain or interpret a “First order language”. Each order of language implicitly relies on a metalanguage by which it is explained. And it is obvious that the translations between the first order and the second order never loss-less and the true meaning of the first order language is lost or deteriorates when it is represented in “Second-order language”. Design process involving multiple intersections of information communication and sharing through translation of the value (e.g. vision, idea), loses its original meaning while being translated through different tools into various forms of expressions. Also, the different roles (e.g. Product stakeholder or product manager, information architect, interaction designer, visual designer, prototyper and developer etc. ) contribute to the infinite regression of “meaning” of the value.

That’s why one of the key factors that working with developers in terms of the realization of the design has always been a big pain and non-stop iterations, and this turning in favour of the term Full-stack Designer that shares the same spirits as that of the term Full-stack Developer.

(Download PDF from http://desops.io/2018/05/10/infographic-the-full-stack-roles-in-desops/ )

Typically the phrase “full-stack” (or full-stack developer) refers to someone who is someone comfortable and could single-handedly tackle every layer of software development. Typically DevOps engineers and full-stack developers share the same philosophical traits — they strive for greater agility and flexibility and hint at a trend towards greater generalization in the skillset of technical professionals. In case of the full-stack designer, he grows into a cross-disciplinary professional who can handle across Interaction Design, Visual Design as well as UI Development or prototyping. This helps to reduce the gaps between the outputs from these different and the effort that goes into the translation of concept flowing from one stage to another, where there are many roles assigned to more than one persons are involved (And remember that one of the key principles of DesOps is to remove waste by applying practices like Lean models).

So if we see that one of the major focus of DesOps in this aspect involving the work-culture is to reduce the gaps between the roles and wastage thereby. The translation from one role and discipline to another makes the meaning second-hand interpretation and such process is never loss-less. Something or the other gets lost in translation, as we progress towards the realization of the value or the product.

So by implementing Lean methodologies and by striving towards having minimally sized team members with as diversified expertized to help to minimize the intersections or touch points among disciplines and roles where the translation happens. In short less need to translate the value, the less information gets lost and less is the waste in terms of value, effort, cost and time.

Going “full-stack” is one approach to avoid the waste that happens in the process that Barthe has termed as indefinite regression or Aporia . This is mostly from the roles perspective. The other approach is through process or work practices redesign to reduce the number of intersections where the translation happens. In the context of DesOps, this is significant, as it involves the interactions at various levels between the primary two entities i.e. human (i.e.people or user ) and machine, namely — from human-to-human, human-to-machine, machine-to-human and machine-to-machine.

So one of the key factors involved while implementing the DesOps in the organization is to look for process re-design to “minimize the touch points of interaction” through the principle that advocates to minimize the gaps between the roles.

Sometime back, I was evaluating some of the design systems and tools available to study the pain-points while transitioning the design concept from one tool to another and moving from one role to the other. I got in touch with many of my friends who were designers by profession in different enterprises and were at different levels of comforts with existing design and wireframing toolsets, starting from Adobe Suite to the Sketch based eco-systems. Based on the discussions, the interesting thing that I found was many of the tools being used at different organizations, are selected based on the pricing and what the team is comfortable working with, rather than with a focus to have a seamless workflow. In many cases, the cost played a bigger role and due to licence cost, some had switched from most popular design tools to the cheaper replacements. However, the biggest struggle that was there was never solved i.e. the iterations in the design process remained challenging despite the change in tools. Every change in design aspect that was iterated was facing the overshoot of the effort, time and cost. The transitions of value from one set of tool to the other e.g. the quick wireframe created in Powerpoint during the stakeholder workshops were being translated into Photoshop was actually about relooking at the layout due to the constraint that popped up while working with the specific widgets in a specific resolution that never went well the wireframe concept. In one organization, the team replaced the Powerpoint with Sketch and tried to use that to complete the process, which turned into a nightmare as the sessions ended with the people struggling with the tool.

In search of a tool that can minimize the translations of values, I was toying with an idea of Ditto, a simplified version of the tool that can look familiar to the different roles involved in the process and at the same time it will align with a process that is about having the same source files at any of the stages of the process and can align with any design system with easy configuration mechanism.

(Figure : The common pain-points in typical Design-process  )

 

(Figure : Typical Design process based on various touch-points where translation happens )

Ditto is a conceptual vision of a design tool that uses UI pattern Library (which is configurable ) and understands the relationships among the components of the design system configured to create and maintain its own objects that can be rendered on a super simple easy-to-follow and familiar looking interface with drag and drop kind interactions enabling the users of different role to focus on their goal rather than figuring out how to use the tool. Conceptually Ditto was capable of taking any type of inputs and exporting different types of outputs on demand e.g. the wireframes, visual comps and ready to deploy UI coded with HTML/ CSS/JS.

(Figure : The conceptual solution, Ditto is based on a “Single-Source” based process )

(Figure : The conceptual solution, Ditto  is based on a “Seamless Workflow” based process )

 

Watch a video demo that elaborates the concept in context to these use-cases —

The benefit of such a tool would be to reduce the critical – dependency on any particular role in the team in order to carry out with the project. For example, assuming a startup is only having a visionary guy with a developer, he can go into the tool to drag-drop few shapes and objects in a traditional Powerpoint / Keynote kind of interface which he is familiar with and export that as a barebone interactive code/prototype that can be tested. He can continuously test and get feedback, based on which he can tweak the same source and iterate. His developer friend can use the same source to export the code in a click to use in the production. And interestingly if he makes any change, that would be updated back to the same source. Later if a visual designer’s help is taken to customize the look and feel, it would allow updating the same source that’s running in the production where the necessary changes to the code will be managed by Ditto in the background. And despite the fact that the visual designer modified the source, (which affects the internal code) he is doing that in a Photoshop kind of environment familiar to him.

If we look at this “Single Source Based Design Eco-System“, any role can enter and come out with a production-ready code, be it a product owner or CEO of the startup, or an interaction designer, visual designer or a UI developer.

The benefits of such a tool are many:

  • Seamless work-flow for Design – Developer collaboration
  • Saving on license cost as no longer it is required to use multiple design tools
  • Single source makes it maintainable.
  • The omini-change process ensures that any changes happening at any stage of design stage will automatically take effect on other stage deliverables. (i.e. assuming at if UI html code is tweaked, it will also reflect in wireframe and visual design stages without any extra manual work!)
  • Zero learning-curve
  • Single user – Single Tool: makes it easy for any of the roles can login and generate implementation ready UI output.
  • Significantly reduces Cosmetic / UI compliance issues
  • Significantly reduces the time to implementation of the design concepts
  • Boon for Agile projects where the changes are common.

Some of the components of the conceptual design tool Ditto, you might have noticed are already available in some of the design tools. For example, similar in Sketch, you can create a custom pattern library theme and use drag and drop to add them while you are designing. But, its more about customizing themes based on existing ones and exporting shapes specific CSS at the end, which is at a very lower level of maturity from a design system standpoint. Similarly, exporting existing design to HTML feature from Adobe’s Creative Cloud Extract in some sense does not take account into how certain design systems of high maturity can be fit into it so that the output can have functional interactions as a part of business flow for the UI.

But certainly, Bootstrap Studio is much closer to the concept of Ditto. It can be improved around the areas configurations and there is a need to move away from the traditional Application type UI and interaction layer so that it can align to one of the core attributes i.e. to make each user role feel familiar with the interface or rather making it easy to follow. The UI widget based WordPress-page builder tools like Elementor are closer in this regard. While talking about Eco-Systems the tools and technologies, I will write about what are the tool-chains that we can combine for different levels of DesOps implementation looking at the maturity levels of Design Systems in play in the organizations.

Well, the thoughts presented above is a practical example of conceptualizing a value communication using improvements in processes and using technology to applying regression to the touch points where the translation happens, and thereby reducing waste and avoiding loss of meaning of value throughout the design process. We will explore the aspect of communication aspect of human-to-human, that is an important part of DesOps culture. Stay tuned.

(c)2018 , Samir Dash. All rights reserved.

(This article is originally published at on May 12, 2018 at  https://www.linkedin.com/pulse/desops-next-wave-design-part-11-translating-value-different-dash/ )

Engineering and Design Processes: Usability Engineering vs. Usability Design


(Originally first published on July 2, 2014 at https://www.linkedin.com/pulse/20140702065138-9377042-engineering-and-design-processes-usability-engineering-vs-usability-design/ )

Also, this article is a part of the title UX Simplified: Models & Methodologies by Samir Dash (ISBN: 978-1-3115-9110-4 / ASIN: B00LPQ22O0 ).  Available at Amazon: http://www.amazon.com/dp/B00LPQ22O0/


Usability Engineering

Usability Engineering began to emerge as a distinct set of “professional practice” in the mid- to late 1980s. The majority of the professionals of this practices were from varied backgrounds such as Computer Science or in a sub-field of Psychology such as Perception, Cognition or Human Factors. Today this field is being populated from some newer discipline such as Cognitive Science and Human-Computer Interaction.

Usability engineering, is defined by Preece as

‘an approach to system design in which levels of usability are specified and defined quantitatively in advance, and the system is engineered towards these measures, which are known as metrics.’

The whole concept of Usability Engineering focuses on the “metrics for measuring usability”.

As the emphasis on usability metrics through “analysis and evaluation”is mostly the soul focus of this process, there is not enough focus on the actual design process. In this process the usability is tried to be attained through “engineering and quantifiable methods and techniques” rather than “designing the way to usability”.

Also the “usability engineering”focuses only on providing range of techniques to analyze users, specify usability goals, evaluate designs, but it does not address the whole development process.It has more of a focus on “assessing and making recommendations to improve usability than it does on design, though Usability Engineers may still engage in design to some extent, particularly design of wire-frames or other prototypes”.

The usability engineering mostly seen as a separate activity that can be plugged into different SDLC models as a separate set of activities from a process-oriented perspective.

The Usability Engineering conducts evaluations through the following tools and methodologies:

  1. usability testing
  2. interviews
  3. focus groups
  4. questionnaires/surveys
  5. cognitive walkthroughs
  6. heuristic evaluations
  7. RITE method
  8. cognitive task analysis
  9. contextual inquiry
  10. Think aloud protocol

User-Centered Systems Design (UCSD)

User-Centered Systems Design (UCDS) is set of “usability design” process focusing on usability throughout “the entire development process and further throughout the system life cycle”. It is based on the following key principle:

  1. User focus: The goals of the activity, the work domain or context of use, the users’ goals, tasksand needs should control the development.
  2. Active user involvement: Representative users should actively participate, early and continuously throughout the entire development process and throughout the system life cycle.
  3. Evolutionary systems development: The systems development should be both iterative and incremental.
  4. Simple design representations: The design must be represented in such ways that it can be easily understood by users and all other stakeholders.
  5. Prototyping: Early and continuously, prototypes should be used to visualize and evaluate ideas and design solutions in cooperation with the users.
  6. Evaluate use in context: Baseline usability goals and design criteria should control the development.
  7. Explicit and conscious design activities: The development process should contain dedicated design activities.
  8. A professional attitude: The development process should be conducted by effective multidisciplinary teams.
  9. Usability champion: Usability experts should be involved from the start of project to the very end.
  10. Holistic design: All aspects that influence the future use situation should be developed in parallel.
  11. Process customization: TheUCSDprocessmust be specified, adapted and implemented locally ineach organization. Usability cannot be achieved without a user-centered process. There is, however,no one-size-fits-all process.
  12. A user-centered attitude must be established: UCSD requires a user-centered attitude throughout theproject team, the development organization and the client organization.

The typical process flow of UCSD can be visualized as the following steps (based on ISO/TR 18529:2000):

  1. Pre-study and business analysis: It can be anything from a comprehensive analysis of work procedures, business processes, etc., to a brief statement or vision.
  1. Planning the user-centered systems design process: includes setting up the project with resources, activities, roles, methods, etc.
  1. Do iterative UCSD /Usability DesignActivities: The usability design process approximately.
  1. Formal Summative Evaluation: It covers the usability of the resulting system, as opposed to the formative evaluations used in the usability design process to learn about details in the design .
  1. Introduce and Operate the System: includes installation, change management, user training, evaluating long-term effects and so forth.

The focus of UCDS is all about “changing the attitude among all professionals involved in the software development process” and these set of 10 principles are key for the “user-centered systems design process” which helps in giving “equal weight to interaction design, analysis and evaluation, combining interaction design, and usability engineering”.

Usability Design

The Usability Design is roughly a subset of the UCSD process that matches the “Do Iterative UCSD” step of the UCSD process.

Further study

The usability design outlines the steps in the development process involving usability design aspects. The process can be divided into three main phases:

  1. Requirements analysis: This step is synonymous with planning and analysis phase of typical software development life cycle(SDLC).
  2. Growing software with iterative design: This is the design and testing phase and development phase of typical SDLC.
  3. Deployment: This is same as deployment phase of typical SDLC.

http://samirshomepage.wordpress.com/2013/09/23/dont-get-confused-ucd-vs-ucsd/

(c) 2012-14, Samir Dash

Usability Design and User-Centered Design (UCD)


(Originally first published on July 2, 2014 at https://www.linkedin.com/pulse/20140702070557-9377042-usability-design-and-user-centered-design-ucd/  )

Also, this article is a part of the title UX Simplified: Models & Methodologies by Samir Dash (ISBN: 978-1-3115-9110-4 / ASIN: B00LPQ22O0 ).  Available at Amazon: http://www.amazon.com/dp/B00LPQ22O0/


The Usability Design is roughly a subset of the UCSD process that matches the “Do Iterative UCSD” step of the UCSD process.

The usability design outlines the steps in the development process involving usability design aspects. The process can be divided into three main phases:

  1. Requirements analysis: This step is synonymous with planning and analysis phase of typical software development life cycle(SDLC).
  2. Growing software with iterative design: This is the design and testing phase and development phase of typical SDLC.
  3. Deployment: This is same as deployment phase of typical SDLC.

User-centered design (UCD) is a set of design processes in which “the needs, wants, and limitations of end users of a product are given extensive attention at each stage”. It is characterized as a multi-stage problem solving process involving designers who take the lead responsibility in foreseeing and solving the usability problems the users are likely to face while interacting with or using the system/product. UCD focuses on understanding the behavioral aspect of the user interacting for the first time so that the user’s learning curve in using the system can be evaluated in order to optimize and reduce it. User-centered design philosophy emphasizes on optimizing the product around “how users can, want, or need to use the product, rather than forcing the users to change their behavior to accommodate the product”.

Constantine and Lockwood define UCD as :

‘. . . loose collection of human-factors techniques united under a philosophy of understanding users and involving them in design’. . . ‘Although helpful, none of these techniques can replace good design. User studies can easily confuse what users want with what they truly need. Rapid iterative prototyping can often be a sloppy substitute for thoughtful and systematic design. Most importantly, usability testing is a relatively inefficient way to find problems you can avoid through proper design’. (‘. . . loose collection of human-factors techniques united under a philosophy of understanding users and involving them in design’. . . ‘Although helpful, none of these techniques can replace good design. User studies can easily confuse what users want with what they truly need. Rapid iterative prototyping can often be a sloppy substitute for thoughtful and systematic design. Most importantly, usability testing is a relatively inefficient way to find problems you can avoid through proper design’.

Putting it straightforward UCD is all about 4 factors which are mostly related to the end user :

  1. Needs of users
  2. Limitations of users
  3. Preferences of users
  4. Business objectives of the product.

This helps in achieving the following benefits:

  1. User satisfaction through more user friendly product experience
  2. Increase in customer /user loyalty.
  3. Making the product more relevant and valuable for the user
  4. Product / system is more value added as users

—–

(c)2012-13 : Samir Dash. All rights reserved.

The ABCs of UX: The Diverse Disciplines (Part 3/3)


(Originally first published on July 4, 2014 at https://www.linkedin.com/pulse/20140704153044-9377042-the-abcs-of-ux-the-diverse-disciplines-part-3-3/ )

Also, this article is a part of the title UX Simplified: Models & Methodologies by Samir Dash (ISBN: 978-1-3115-9110-4 / ASIN: B00LPQ22O0 ).  Available at Amazon: http://www.amazon.com/dp/B00LPQ22O0/


The current post is the 3rd in the series of 3 posts, where I would like to clarify the definitions and concepts that are core to our context covering User Experience (UX), Information Architecture(IA) and Interaction Design (IxD).

What is a “Mental Model” exactly?

A mental model is “a person’s intuition of how something works based on past experiences, knowledge, or common sense”. When you see a book you already know how to use it (i.e. read it) as this understanding of the usage of a book is bound with your past experience and the expectation aroused thereby using the book. This typical expectation of how a thing works or the expectation regarding the workflow of an object the user faces is all about a “mental model”. When it is the case of an online experience or a software usage, users expect a certain flow based on both previous experiences and an expectation on what the experience should be. Understanding and catering to this kind of user’s expectation in an intuitive manner is the most critical part of the UX design process.

During “usability testing” of a software product, it is measured against the following five important facets:

  1. Useful:if the product enables users to solve real problems in an acceptable way and as a practical utility whether it supports the user’s own task model.
  2. Findable: if user can find what he is looking for through his interaction with the system.
  3. Accessible:if the system can be used by persons with some type of disability such as visual, hearing and psychomotor.
  4. Usable:if system enables users to solve real problems in an acceptable way
  5. Desirable: if the user is emotionally motivated to use the system
  6. Meaningful: It must improve the value and customer satisfaction to be more meaningful in the context.

Fig : 1

On a close look it is clear that all of these are all related to the users’ expectations. If any of these aspects do not match the expectations of the users, the usability of the product/system decorates. So, in UX design process, the most important task is to match or at least bring the design closer to the mental model of the users.

One of the best definition about mental models as they relate to software and usability can be found out in a 1999 article by Davidson, Dove, and Weltz titled Mental Models and Usability:

For most cognitive scientists today, a mental model is an internal scale-model representation of an external reality. It is built on-the-fly, from knowledge of prior experience, schema segments, perception, and problem-solving strategies. A mental model contains minimal information. It is unstable and subject to change. It is used to make decisions in novel circumstances. A mental model must be “runnable” and able to provide feedback on the results. Humans must be able to evaluate the results of action or the consequences of a change of state.

Most-likely Mental Model

The problem with matching the interfacedesign and system flow with the mental model of the users is that :

  1. There is no fool proof approach that can provide insight into the target users’ mental models
  2. Different users have different mental models. Different users have different perceptions, past experiences, there by their mental models are most likely not the same.

In real life, an interface will never match up with every mental model because the number of possible models ranges from one to millions. So the trick is to create interfaces to match the most-likely mental models for the target users.

To determine what can be the criteria of a most likely mental model, typically different user personas, research, prototyping and user testing tools and methodologies are used.

Conceptual Model

“Conceptual Model” is a term used to represent the engineered interface that is provided to the user. For example, we can think about iBooks app on an iPad as a conceptual model being offered to the user

Fig: 2

To make UX successful, the “conceptual model” is designed to come close to the “mental model”.

If the user has read/seen any physical book, then, in this case, it will be easy for him to use iBooks app as it’s interaction approach is similar to a real-life book where the user can turn pages to read. However, iBooks has been designed by some engineer that presents a similar experience to the real book . This conceptual model in this case matches with the expectations of the user who has never interacted with the app, but has some preconceptions regarding it .His mental model about the app is formed from his past experience of interacting with the real physical book.

Challenges in Usability Measurement and Metrics

All the models and facets of usability described above have some limitations as it is not straight forward to implement them to some kind of metrics by which the usability goals can be measured. This is mostly because, there is comparatively little information about exactly how to select a set of usability factors to form a metrics to measure in the context of a software development lifecycle having aspects such as business needs and goals, management objectives, resource limitation on product development.

Even though in generic terms “usability” refers to a set of multiple concepts, such as execution time, performance, user satisfaction and ease of learning (“learnability”), taken together, it is still not been defined homogeneously to a level useful for creating a fool-proof metrics.

A challenge with definitions of usability is that it is very difficult to specify what its characteristics and its attributes should be, in particular, because the nature of the characteristics and required attributes depend on the context in which the product is used. (Alain Abran et. al. , 2002)

For such reasons, there is always a scope to create a consolidated usability model and its factors that can work for creating a metrics useful for software development life cycles.

A List of Factors for Generic and Consolidated Usability Model

As discussed above, here is a very generic consolidated usability model that can be used to create a metrics for a practical usability review.

The suggested model covers most of the commonly reviewed “factors” of different software products and systems which can be customized depending on the context or the need of the project:

  1. Effectiveness:This factor can be used to measure if the user is able to complete the tasks on product or the system (e.g. a website).
  2. Efficiency:It measures if the user is able to carry out the tasks, accurately and quickly.
  3. Findable: if user can find what he is looking for through his interaction with the system.
  4. Expectations: this measures if the user mental model matches with the conceptual model offered through the system.
  5. Emotions: This measures how the user feels while and after using the system.
  6. Satisfaction/ Experience:This measures if the overall system usage for the user is positive and if the user would like to revisit/reuse the system in case of the need (or will he look for alternatives).This is basically the subjective responses from users about their feelings when using the system.
  7. Productive: This measures if the amount of useful output that is resulted from user interaction with the system.
  8. Learnability: This measures how easy it for the user to master the usage of the functionalities.
  9. Safety: It measures the level of safety of the user and his information during and after the period of operation
  10. Accessibility:It measures the capability of the system to be used by persons with some type of disability such as visual, hearing and psychomotor.
  11. Usefulness:It measure is the product enables users to solve real problems in an acceptable way and as a practical utility whether it supports the user’s own task model.
  12. Universality: It measures if the system has universal appeal and enables the users from diverse cultural backgrounds and locale.
  13. Trustfulness:This especially measures if the user trusts the system for critical usage (such as using credit cards on an e-commerce site)
  14. Meaningfulness:It must improve the value and customer satisfaction to be more meaningful in the context..

Based on the above factors, usability metrics can be prepared to conduct usability testing on the system.

(c) 2013-14, Samir Dash

The ABCs of UX: The Diverse Disciplines (Part 2/3)


(Originally first published on July 4, 2014 at https://www.linkedin.com/pulse/20140704151444-9377042-the-abcs-of-ux-the-diverse-disciplines-part-2-3/

Also, this article is a part of the title UX Simplified: Models & Methodologies by Samir Dash (ISBN: 978-1-3115-9110-4 / ASIN: B00LPQ22O0 ).  Available at Amazon: http://www.amazon.com/dp/B00LPQ22O0/


The current post is the 2nd in the series of 3 posts, where I would like to clarify the definitions and concepts that are core to our context covering User Experience (UX),Information Architecture(IA) and Interaction Design (IxD).

Interaction Design (IxD)

Wikipedia defines Interaction Design as:

In design, human–computer interaction, and software development,interaction design, often abbreviated IxD, is “about shaping digital things for people’s use”

Interaction design involves attributes of several related disciplines such as :

  1. Design research
  2. Human–computer interaction
  3. Cognitive psychology
  4. Human factors and ergonomics
  5. Industrial design
  6. Architecture
  7. User interface design

Interaction design focuses more on human behavior through scientific tools and statistics, even when it is in fact is opposed to the disciplines which focus on “how things are” . Even when it uses tools that span across design and engineering domains, by it’s ability to perform “synthesis and imagining things as they might be” makes it a part of “designing” field.

In his book Designing Interactions. Gillian Crampton Smith, defined 4 dimensions of Interaction Design, to which Kevin Silver later added the 5 and the most important dimension (i.e. behaviour).

Fig:1

Fig. 1 represents the 5 dimensions of IxD namely:

  1. Words: This dimension defines the interactions. Words are the interaction that users use to interact with.
  2. Visual Representations: The visual representations are the things that the user interacts with on the interface. These may include but not limited to “typography, diagrams, icons, and other graphics”
  3. Physical objects or space: The space with which the user interacts is the third dimension of interaction design. It defines the space or objects “with which or within which users interact with”
  4. Time: The time with which the user interacts with the interface. Some examples of this are “content that changes over time such as sound, video, or animation”
  5. Behavior: The behavior defines the users’ actions reaction to the interface and how they respond to it.

Many confuse between Interaction Design with User Interface design, as in most cases interaction design is associated with the designing activities of interfaces. However Interaction Design focuses more “on the aspects of the interface that define and present its behavior over time, with a focus on developing the system to respond to the user’s experience and not the other way around”.

User Interface Design (UI)

Wikipedia defines it as :

User interface designor user interface engineering is the design ofcomputers, appliances, machines, mobile communication devices, software applications, and websites with the focus on the user’s experience and interaction. The goal of user interface design is to make the user’s interaction as simple and efficient as possible, in terms of accomplishing user goals—what is often called user-centered design. Good user interface design facilitates finishing the task at hand without drawing unnecessary attention to itself. Graphic design may be utilized to support its usability. The design process must balance technical functionality and visual elements (e.g., mental model) to create a system that is not only operational but also usable and adaptable to changing user needs.

User Interface design is somewhat “the form-giving counterpart to interaction design”. User Interface design differs from interaction design primarily in “ its focus on the behavior of artifacts rather than the behavior of humans”.In UI, the center of all the focus is artifacts that makes the interface, where as in case of IxD it is the human behavior that takes the center stage.

In case of a Software production process the UI is more associated with the Graphical User interface designer. In industrial design case, UI is more tilted towards the industrial designer.

Fig: 2

The Fig:2, shows various disciplines that contribute to User Interface Design.

Usability and Mental Models: Foundations of UX

What is Usability?

In 1998, the International Standards Organization (ISO),the organization well known for development of standards for industrial processes and product quality, defined“usability” as :

the effectiveness, efficiency and satisfaction with which specified users achieve specified goals in a particular environment. (ISO 9241)

ISO model prescribed the following 3 criteria as components of usability:

  1. Effectiveness: accuracy and completeness with which specified users can achieve specified goals in a particular environment
  2. Efficiency: the resources expended in relation to the accuracy and completeness of the goals achieved
  3. Satisfaction: the comfort and acceptability of the work system to its users and other people affected by its use.

Fig: 3

One year later , in 1999, Cosantine and Lockwood defined ‘usability’ as:

being composed of the learnability, retainability, efficiency of use, and user satisfaction of a product.

So basically it was an upgrade to the existing “usability” definition, with the addition of two new components:

  1. Learnability: the product usability can be learned by the user
  2. Retainability: the product usability an be retained by the user.

Basically the addition of the above two components gave rise to the concepts of “mental model” of the user and it’s role in usability.

System Models

During 1980-90’s many “system models” evolved. These models were actually representation of a system from different stake holders’ perception, namely: the user, the programmer and the designer.

Fig:4

Among the evolved models, the most notables were that of Norman , Cooperand IBM:

  1. The model based on the programmer’s perception:
    This was the way that a system works from the programmer’s perspective
  2. User’s Mental Model:
    The way that the user perceives that the system works.
  3. The model based on the designer’s perception:

The way the designer represents the program to the user, including presentation, interaction, and object relationships.

(To be continued)

(2) 2013-14, Samir Dash

The ABCs of UX: The Diverse Disciplines (Part 1/3)


(Originally first published on July 4, 2014 at https://www.linkedin.com/pulse/20140704013122-9377042-the-abcs-of-ux-the-diverse-disciplines-part-1-3/ )

Also, this article is a part of the title UX Simplified: Models & Methodologies by Samir Dash (ISBN: 978-1-3115-9110-4 / ASIN: B00LPQ22O0 ).  Available at Amazon: http://www.amazon.com/dp/B00LPQ22O0/


 

“To understand what the user is looking for in the things he is looking at.”

The current post is the first one in the series of 3 posts, where I would like to clarify the definitions and concepts that are core to our context covering User Experience (UX)Information Architecture(IA) and Interaction Design (IxD).

User Experience (UX)

User experience (UX) is a convergence of several disciplines. There is no final fool-proof list of disciplines which come together to form it. But yes, there are many popular explanations by social scientists, industrial designers and information architects which describe it as a combination of a verity of disciplines.

Fig: 1

The most popular and accepted compilation of disciplines is shown in Fig 1 where it is represented as a combination of :

  1. Information Architecture (IA)
  2. Visual Design
  3. Industrial Design
  4. Human Factors
  5. Interaction Design (IxD)
  6. Human – Computer Interaction (HCI)
  7. Architecture

There are variations available to this where commercial aspects are added to it . Fig 2 represents such a case.

In Fig:2, you can see the UX definition has been seen as all those disciplines which can work together to provide a solution that can deliver “customer with a harmonious and consistent experience”.

If you notice all the aspects such as “branding” and “customer service” are related with emotional aspect of human behavior. So user experience is also about emotions and psychological dimensions of customer’s perceptions about the product. Wikipedia also defines “User Experience” as :

User experience (UX or UE) involves a person’s emotions about using a particular product, system or service. User experience highlights the experiential, affective, meaningful and valuable aspects of human-computer interaction and product ownership. Additionally, it includes a person’s perceptions of the practical aspects such as utility, ease of use and efficiency of the system. User experience is subjective in nature because it is about individual perception and thought with respect to the system. User experience is dynamic as it is constantly modified over time due to changing circumstances and new innovations.”

Similarly ISO 9241-210 defines user experience as:

a person’s perceptions and responses that result from the use or anticipated use of a product, system or service”. According to the ISO definition user experience includes all the users’ emotions, beliefs, preferences, perceptions, physical and psychological responses, behaviors and accomplishments that occur before, during and after use. The ISO also list three factors that influence user experience: system, user and the context of use.

So basically, “User Experience” deals with the “How” factor of the product or system rather than it’s “What” factor. Most of the customers buy the product not because simply “what it does”, rather the “how” factor takes priority when it comes to choose from a several similar products.

We will dive deep throughout this series, but before that let’s see clear similar jargons.

Information Architecture (IA)

While exploring UX in previous section, we saw that Information Architecture (IA) is one of the contributing disciplines which form the total User Experience. During 1960’s ,Richard Saul Wurman, an architect by profession having skills of a graphic designer, author and an editor of numerous fine graphics related books, coined the term “Information Architecture”. He mostly developed concepts “ in the ways in which information about urban environments could be gathered, organized, and presented in meaningful ways to architects, to urban planners, to utility and transport engineers, and especially to people living in or visiting cities”. Later these impacted a set of disciplines such as library- and information-science (LIS) , graphic design and in recent years the world wide web (www). During 1990’s , with the evolution of the Web, there rose the need to rethink the presentation of library-catalog information as this information has been moved into online public-access catalogs, and in part to the proliferation of information on the Web itself. So during 90’s IA has taken on something of a connotation of applying especially to the organization of information on the World-Wide Web.

Basically Information Architecture (IA), all about organizing information in a meaningful way so that the user can easily find it when needed through proper organizationnavigation,labelingandsearchingsystems.IA also takes care of the process that ensures that there is no information breakdown or explosion with the scaling of information overtime.

Fig: 3

Fig:3 represents the 3 basic ingredients of IA, namely:

Users: This represents those who will use the product or system, their “information seeking behaviour” and their needs. Any of the following roles/skills/features can be applied to them:

  1. Personas
  2. Ethnography
  3. Usability Testing
  4. Expressing User Needs

Content: This is what is presented to the users through the product or system. This includes the data or information that is offered, along with its aspects such as volume, metadata, structure and organization. Sample skills/roles/features/concepts revolving around content are:

  1. Indexing
  2. Cataloguing
  3. Site Architecture
  4. Writing
  5. Content management
  6. Navigation
  7. Labeling
  8. Search mechanism

Context: This is what gives meaning to the content that is being served to the user. This can have the attributes like business model, business value, resource, resource constraints, culture etc. The following features/roles/skills are associated with context:

  1. Defining business requirements
  2. Project management
  3. Business model analysis
  4. ROI calculation
  5. Client management
  6. Technical constraints

(To be continued…)

(c) Samir Dash , 2013 -14

Socio-Cultural UX (SX) in Context of Ontology, Information Architecture & Culture

(This article was originally published on March 24, 2018 https://www.linkedin.com/pulse/socio-cultural-ux-sx-context-ontology-information-culture-samir-dash/ )

During late 19th- and 20th-century, a set of European philosophers who, despite profound doctrinal differences, shared the belief that philosophical thinking begins with the human subject—not merely the thinking subject, but the acting, feeling, living human individual. This doctrine, more popularly known as Existentialism, started from Søren Kierkegaard who proposed that proposed that each individual—not society or religion—is solely responsible for giving meaning to life and living it passionately and sincerely, or “authentically“. After the Second World War years this impacted various discipline including theology, drama, art, literature, and psychology etc. and was carried over by the philosophers like Dostoyevsky, Nietzsche and Sartre.

Sartre claimed that a central proposition of Existentialism is that existence precedes essence, which means that the most important consideration for individuals is that they are individuals—independently acting and responsible, conscious beings (“existence”)—rather than what labels, roles, stereotypes, definitions, or other preconceived categories the individuals fit. So basically, “human beings, through their own consciousness, create their own values and determine a meaning to their life.”

Even though this doctrine was used and misused heavily in the disciplines like literature and filmmaking, it has elements that often helps to revisit and refining existing user experience and usability models, as the underlying concept has ontological aspects involved.

Ontology is even older philosophy, since the time of Parmenides (late sixth or early fifth century BC around the time or Aristotle), related to existence that is more of a study of the nature of being, becoming, existence and reality with the specific focus on the categorization of beings and their interrelationships. Basically, from the field of Metaphysics, it is the study or concern about what kinds of things exist – what entities there are in the universe. When we look at the whole gamut of ontology, we find three terms having the most practical context to user experience discipline – ontology, taxonomy and choreography.

Information Architecture is much more than a sitemap or wireframes. The classical definition of UX always points to have an aspect of “meaningful” to the context of experience for the user. This term “meaning” is more or less derived from the ontological perspective. The Theater of Absurd movement of 1960’s, revolved around the concept of the existence of human and the exploration of “meaning”. Samuel Beckett‘s Waiting for Godot(1966), where the two tramps waited for the Godot through-out the play, and who never arrived till the end, raised the debates that spurred many literary theories and views till the present day, tried to define what or who the Godot is. Many made the reference to archaic as well as biblical roots, where there was another sect who gave the Godot a new meaning as a saviour or a Christ of that age. Interestingly when it was asked to Beckett about the meaning of Godot, he answered “If I knew, I would have said so in the play”

Similarly, Jean-Paul Sartre wrote No Exit in 1944, an existentialist play originally published in French as Huis Clos (meaning In Camera or “behind closed doors”), which is the source of the popular quote, “Hell is other people.” (In French, “L’enfer, c’est les autres”). The play begins with a Valet leading a man into a room that the audience soon realizes is in hell. Eventually, he is joined by two women. After their entry, the Valet leaves and the door is shut and locked. All three expect to be tortured, but no torturer arrives. Instead, they realize they are there to torture each other, which they do effectively by probing each other’s sins, desires, and unpleasant memories. It reflects how ontology affects the meaning of entities/users.

In phenomenology, the terms the Other and the Constitutive Other each identify a cumulative, constituting factor in the self-image of a person; his or her acknowledgement of being real.As such, the Other is dissimilar to and the opposite of the Self, of Us, and of the Same. The condition and quality of Otherness, the characteristics of the Other, is the state of being different from and alien to the social identity of a person and to the identity of the Self.

-Wikipedia

So in user experience, specifically to communication context typically when we speak about ontological factors, we mostly mean language implies certain meaning to us, but may be confusing to others. One word can have a variety of meaning which may be simply opposite to what the user might need to communicate. This communication medium can be oral through any language, through gestures, through visual indicators over a UI etc.

As we know that a mental model of any user varies from another based on his prior experience and expectation of the subject in context. The user is always in the centre and reacts to another user or a subject through any mode of interaction and/or communication. The information that flows through this system (e.g. hypertext system or a social gathering at a certain point in time and place) is significant gets affected by the mental models of the users present and the ontological contexts they have about the others (including the users and the subjects) in that context. In information technology, an ontology is the working model of entities and interactions in some particular domain of knowledge or practices, such as electronic commerce or “the activity of planning.” In artificial intelligence ( AI ), an ontology is, according to Tom Gruber, an AI specialist at Stanford University, “the specification of conceptualizations, used to help programs and humans share knowledge.” In this usage, an ontology is a set of concepts – such as things, events, and relations – that are specified in some way (such as specific natural language) in order to create an agreed-upon vocabulary for exchanging information.

In recent years the awareness about the influence of culture on the UX practices have been increased. Day by day, Human Factor professionals are increasingly reviving the UX tools, frameworks and methodologies in the light of a better understanding of how culture influences user experience and how people think, behave, and feel. awareness of culture is extremely critical as the global community becomes interdependent economically, politically, and socially. To achieve success in the current international marketplace, Human Factors/Ergonomics (HF/E) professionals need to develop an understanding of people from other cultures, such as, for example, how psycho-social factors influence performance in the workplace due to cultural differences.

Power Distance Index (PDI) describes the degree to which less powerful members or a society accept an unequal distribution of power. The central question in this dimension is how a society handles inequalities among individuals. A high power distance means that people within a society have accepted a certain hierarchical order and the inequalities that come with it. In a society with a low power distance, people are constantly trying to equalize the distribution of power, especially those who have less power.

In the articles like Major cultural-compatibility complex: considerations on cross-cultural dissemination of patient safety programmes it is explored how the people from societies with a small power distance don’t like to be controlled. They only accept leadership if it’s based on true expertise.

So one of the popular approaches to design for cross cultural user experience is what Sabina Idler describes as — “Offer enough objective and detailed information on your website to allow people to make up their own mind. Meet your website visitors on eye-level, treat them with respect, and show interest in their needs. Communicate with this group in an informal, direct, and participative way to gain their trust and get them engaged”.

Similarly, it comes out from such research and explorations that website “visitors from societies with a big power distance are used to authorities and solid structures. Be prepared that they take you as an expert and trust you as an authority figure. Make sure you offer them facts and clear statements and don’t give them too much responsibility. Visitors from this group are less critical and less driven to search for detailed information in order to make up their own mind”.

Another cultural aspect that is critical while planning user experience for cross cultural segments is Individualism versus collectivism (IDV). The second dimension describes how much people in a group focus on themselves and on the group as a whole. The position of a society on this dimension is reflected in whether people refer to themselves as “I” or “we”. Individualist societies prefer a loose social network in which everyone is expected to take care of themselves and their immediate families. In a collectivist culture, people care as much or even more for others than for themselves. In exchange, others take care of them. visitors from a collectivist culture act in the interest of the group, rather than their own interest. They make decisions based on the opinion of others and on what’s common or popular, not so much on their individual desire. Consider this on your website and offer enough reference points, such as “most popular” categories, testimonials, or social media sharing options to gather instant and personal feedback from friends.

In Methodological Advancements of Cross-Cultural User-Centered Product Development  (2009) (https://books.google.co.in/books?id=uoReAer3ixgC&printsec=frontcover#v=onepage&q&f=false ) details, the outcome a research that aims at the further advancement of the methodological foundations of cross-cultural user-centred product development approaches based on a stable and profound theoretical basis. The research used approach to ‘study the applicability of six distinct user-centred product development methodologies’ and was ‘tested with 248 participants in total’ using ‘western concepts and theories, and their applicability in disparate cultural contexts of the Far East (China and Korea in particular)’.

The different components of influencing factors analyzed in the context of the result of the research for the cross-cultural method application were – Cognitive abilities, Creativity, Decision Making, Mental Models, Problem Solving, Emotion, Communication, Engagement, Extrinsic, Intrinsic, Ideals and Motivation.

“When asked about top three reasons for failure of International development projects experts mainly pointed out a lack of understanding about the target culture’s user, insufficient financial support and tight time schedules.”  [p. 26]

Also the dissertation suggests “ethnocentric biases” as the red flagged attribute that has to be avoided. “Consequently the experts’ top advices for being prepared for international product development refer to avoiding ethnocentric biases, to be aware of the importance of human factors, i.e. to know the user of the target market, to get the management to buy in and to allow for an appropriate time schedule“   [p. 26]

Back in 2014, I had coined “SX” to represent the overall changing practice methods in usability domain, in the context of cultural and social factors that influences. In the blog post “Socio-cultural User Experience (SX) in context of Google Glass” (https://www.linkedin.com/pulse/20140702135102-9377042-socio-cultural-user-experience-sx-in-context-of-google-glass ), tried to quantify the usability issues of Google Glass in context of the social and cultural context and deductive analysis gave a clue to the root of ‘public fear’ that was growing at the time against the Glass. It was interesting that starting from the later part of 2013, the topics related to The Google Glass infringing with personal privacy became hot cakes for tech-debates. Many social scientists, human rights activists have started to see the ‘Glass’ as the evil that reminds them with George Orwell’s ‘1984’. The fear of a ‘Google Big Brother’ controlling the major shares of the information world is seen as the intruder to private aspects of ‘the public’.

Socio-Cultural User Experience (SX) is the missing piece or the component for the existing tool that helps in bringing in the quantifiable model that tries to bridge the current gap. SX is a framework that also helps to see the social influence on the user and tries to get the insight into the light.

SX provided the required handle for easy customization and tailoring of the Cognitive Task Analysis (CTA)  for people from different cultures and social backgrounds. In addition, it helps in designing for an international market, gaining knowledge with regard to the influence of social and cultural factors on perception, cognition, decision making, persuasion, trust, safety, aesthetics, and usability.   It is interesting to see that the cultural context of the user is found to be a leading reason behind the failure of international projects.

Here is an infograph of SX you can download: http://desops.io/2018/05/07/slides-sx-heuristics/

 

The Evolution of Technology in the Context of Software Development & Design Process: Take-away from the First PatternFly Conference

[This post was originally published on Red Hat Developers, the community to learn, code, and share faster. To read the original post, click here.]

Last Sunday, I returned home, India, after attending a series of collaborative sessions in Raleigh, NC, with many designers and developers across Red Hat and the open-source community, at the UX Summit and the PatternFly Conference. The whole experience was inspiring, informative and at the same time thought provoking with many takeaways, out of which the most interesting for me was that cumulatively all the inspiring talks from the speakers of the conference were implicitly hinting towards a clue. How our attempt to solve the existing technical solutions also impact the existing work process and thereby demand a rethink on the process blocks we use.

Being part of the Red Hat UX Design team, it is always an exploration and giving value to the core principle of “being open” to the “Design” — this is something similar to how the “openness” is seen as the integral value of the “Development”.

“We approach user experience design in the same way we develop our products. It’s all about being open.”

– Jim Whitehurst, CEO & President, Red Hat

So, what’s so special about the design being open? Is it something different from how we design in a traditional enterprise organization? It’s natural to have such questions when we face the open paradigm of the design challenges — I had similar questions. One thing to note here is that designing for open-source has its own challenges that require a re-look at the existing design processes and frameworks especially in the software development scenarios that have been evolving over last two decades. With the focus to bring the user-centric focus to the existing sets of Software Development Life Cycle (SDLC) — these were mostly about advocating Human Factors in the perspective through which we have been used to see SDLC.

But as day-by-day major enterprises are going open-source to bring more and more collaboration with the community to develop the software, the open-source movement itself is getting mature by gradual evolution through different seasonings in the context of the growth of technology and the changing market needs that are driving shaping the SDLCs. For example with the rise of startups in last few years, the adoption of MVP-driven Lean Development models instead of traditional SDLCs has increased indicating the evolving dynamics of adoption of such processes.

In the traditional enterprise, the design process is more or less influenced by standard UX approaches that have evolved over the last couple of decades. Taking into account the SDLC defined towards the end goal of the organization in context to the user experience related benchmarks. Many take different components/tools and methodologies from the Design Thinking and other similar HCI process models, and align them into the SDLC, be it agile, waterfall or hybrid, and try to achieve the user-centered software development (UCSD) from an engineering point of view.

There are sects of organizations, who take into account the user needs related benchmark and make the existing SDLC components to align to that — be it through User-Centered Design (UCD) approach blended with a part of Iterative, Agile or Lean SDLC models or simply following a ready made Lean UX model. While everyone is attempting to solve the UX equation to come up with the best possible framework that works great in advocating user needs, the question is still unsolved — what UX approach works best in a diversified collaborative open-source culture?

In the very first PatternFly conference held on 8th of this month, in his keynote, Michael Tiemann, VP of Open-source Affairs at Red Hat, referred to continuous evolution in the software development domain in context to design. His expressed views, which resonated more with the belief that the sustainable design solution can evolve from an organic design process, where reusability can play an important role.

(Michael Tiemann, Vice President of Open Source Affairs at Red Hat, delivering the keynote at the very first PatternFly Conference at Red Hat Annex, Raleigh on 8th June 2017)

The PatternFly community project supported by Red Hat is an attempt in such a direction that promotes “design commonality and improved user experience”. Dana’s blog post, Are “Web Components” in the future for PatternFly?, is an interesting read in this context from a technical angle where he addresses the thoughts on building a UI framework when there are so many choices and so many strong feelings about the different choices? While every organization is still trying to find the solutions for challenges related to UI development for a better experience such as – how to structure and organize CSS code for reusability in the ever-growing complex world of UI framework choices like Bootstrap, Angular & React etc. It’s also important not to forget that with each adoption of UI framework the impact on how we implement experiences to our products is also evolving, thereby making an impact to the process blocks that run the design, and development testing phases of SDLC.

This leads us to the hypothesis that with the evolution of newer technology adoptions, we are bringing the change catalysts to our development process, which can influence how we conceptualize and deliver the best experience for any product we are building. Along with it, as SDLCs are now getting re-shaped due to needs like, “faster time to market” and to bring out more sustainable solutions for the business needs, so is the associated stages of “Design”, “Development” and “Testing”. These are also getting more mature through the focus on Continuous Integration (CI) and Continuous Delivery (CD); thereby bringing a sea of change to the way software was planned, designed, developed, and tested traditionally. To this model when we add the “Open” aspect that demands the need to improve the process dynamics in order to ensure the end-to-end software delivery is sustainable in coming times. Red Hat’s recent open initiative to announce OpenShift.io is an attempt that tries to address all these aspects, at least it is a “start” where we start re-thinking openly about the solution that we thought we already have.

Openshift.io as an end-to-end development platform tries to address multiple areas or the process blocks like Planning, Analysis, and Creation, that tries to answer one question – what is the best way to deliver a software product in the most effective, seamless and consistent way in a diversified work-culture with value and best experience possible. It would be interesting to see how this platform evolves in coming times with the support and collaborative effort from the open source community to address these process related change catalysts that are getting their way into the work practices due to an ever growing complexity of technology change.

In the forthcoming posts, I will be exploring this context with respect to existing UX models and methodologies try to reflect thoughts on “UX in the Open “. Stay tuned.

(c) 2017,  Samir Dash. All rights reserved