pic1

Indoor Mapping in Consumer or Retail Vertical and it’s impact on UX

Mapping and localization for indoor mapping is gaining momentum in consumer verticals of IT and software services industry to propose new age technological solutions and process re-engineering services that helps in providing value added features to the consumers of the verticals. Also the consumer data mining and data analytics are pushing new dimensions with the indoor mapping technologies to provide new insights into the consumer and end-users’ psyche. This ultimately opening doors to provide better and delightful user experience for the user during his shopping experiences.

 

Technology Used for Indoor Maps

 

Despite the fact that the location determination of mobile users within a building has attracted much attention lately due to its many applications in mobile networking including network intrusion detection problems, it is challenging due to the complexities of the indoor radio propagation characteristics exacerbated by the mobility of the user. Global navigation satellite systems (GPS or GNSS, which act as the benchmark for the standard Map related applications development, are generally not suitable to establish indoor locations, since microwaves will be attenuated and scattered by roofs, walls and other objects. Due to the signal attenuation caused by construction materials, the satellite based Global Positioning System (GPS) loses significant power indoors affecting the required coverage for receivers by at least for satellites. In addition to this, the multiple reflections at surfaces cause multi-path propagation serving for uncontrollable errors. So the most popular among the technologies that are employed for indoor mapping scenario is the wireless technologies like Wifi and RFID.

In Radio-Frequency identification (RFID) systems, the simple concept of location indexing and presence reporting for tagged objects are used, that only acts as the object identification. Typically RFIDs do not report the signal strengths and various distances of single tags or of a pulk of tags and do not renew any before known location coordinates of the sensor or current location of any tags. Operability of such approaches requires some narrow passage to prevent from passing by out of range. In Grid concepts, a dense network of low-range receivers may be arranged, e.g. in a grid pattern for economy, throughout the space being observed. Due to the low range, a tagged entity will be identified by only a few close, networked receivers. An identified tag must be within range of the identifying reader, allowing a rough approximation of the tag location. Advanced systems combine visual coverage with a camera grid with the wireless coverage for the rough location.

 

The use enhanced Wi-Fi infrastructure to provide location information actually provides the missing piece that only RFID can not provide. WiFi infrastructure help in establishing more accurate and stable landmarks, which serve to anchor the various partial trajectories. This approach uses Received signal strength indication (RSSI) – that is a measurement of the power level received by sensor. Because radio waves propagate according to the inverse-square law, distance can be approximated based on the relationship between transmitted and received signal strength (the transmission strength is a constant based on the equipment being used), as long as no other errors contribute to faulty results.

 

Once the user and/or the tracking objects are located and tracked for their movement, the resulting data is mapped to the pre-built indoor location map to provide meaningful observations on the user’s location in particular section of indoor space and based on this the shopping experience of the user can be enhanced.

 

Indoor Maps in Consumer or Retail Verticals

During the last few decades, research on localization for exploration and navigation in indoor environments has made significant progress. However this technology was not accessible to the consumers till Google declared “indoor maps” as the future of consumer facing verticals, which successful attempts in utilizing this technology in shopping malls, museum and related public places where the real-time user analytics based on his location inside the shop helped formulating a set of customized offering to the user to make his experience easier and delightful.

IKEA, one of the world’s leading home furnishings company, uses Google indoor maps for improving customer’s experience in navigating the stores that are typically “typically a two level building that ranges in size from 200,000 sq ft to 450,000 sq ft–the average size is approximately 320,000 sq ft” and which typically “can work against” the “IKEA’s goal is to make the customer feel comfortable and in control of their shopping experience” — “People can have a hard time navigating the store. There have been stories of people saying that they feel like we are are purposely keeping them in.We want to make their shopping experience as easy as possible” (Google).

In a typical customer’s experience in a large sized mall, or shopping store can be frustrating, when he “want the option to quickly find their way to a particular product or throughout the store”(Ibidem,1)and this is mostly the consumer sees as the product he “needs”. Whereas the shopper or the store owner’s intention in most cases is to “encourage customers to find items they didn’t know they needed” – which is in fact conflicting with the thought line of the customer that is more inclined towards the self-gratification through the identification of items of his need.

 

 

The common set of expectations that lies among the conflicts of interests between the shop/store owner and the shopper provides the foundation that helps sustaining the user experience of the shopper in such an eco-system. The common set of expectations mostly revolve around the concepts of getting (for shopper)and providing (for shop-owner)the best possible experience. The common mission when equipped with the technology, such as indoor maps, sets the momentum of better usability and at the same time offers avenues for more cash flow for the store owner.

Most of the mall or stores which have implemented indoor mapping technology have been profitable by capitalizing “on the growing population of smartphone users” who can use the technology through their handsets. As of March 2012, over 106 million people in the U.S. owned a smartphone with Apple and Google having market share of 30% and 51% respectively — which shows that a significant mass of the consumers are also depending on mobility as a medium to consume the technology aided services. This fact is itself acting as a catalyst to propel the usage of indoor maps in consumer sector. (comScore, 2012).

 

Keeping the user in-touch during the whole experience

 

One of the successful features of the indoor mapping eco-system is to keep the user informed at every step of his experience and maintain a communication thread between the user and the system. A sample flow is shown below where the two way communication is illustrated.

 

 

The illustration above highlights how a simple two way communication is established between the user (through his app on his mobile) and the indoor mapping backend running and performs the analysis of user location data to execute productive actions that meets the user goals and helps improve the user’s over shopping experience in the store.

(c) 2013-14, Samir Dash

BOOK-COVER1600x2400

UX Simplified: Models & Methodologies: Digital Edition [Kindle Edition] ISBN: 978-1-3115-9110-4

My  recent title is available on Kindle for download. This book covers basic models and methodologies that are revolved around User Experience (UX). The discussed topics include User Experience, Information Architecture, User Interface, Usability models, User Centered Design (UCD), User Centered Software Design (UCSD), different Software Lifecycles (SDLC) and how usability models fit into SDLC models.

The details of the book are as follows:

UX Simplified: Models & Methodologies: Digital Edition
by Samir Dash
ISBN: 978-1-3115-9110-4
ASIN: B00LPQ22O0

Kindle Price (US$):$1.87
Kindle Price (INR):Rs. 119.00 includes free international wireless delivery via Amazon Whispernet

http://www.amazon.com/dp/B00LPQ22O0/ref=r_soa_w_d

 

 

UX Simplified: Models & Methodologies: Digital Edition [Kindle Edition] ISBN: 978-1-3115-9110-4

UX Simplified: Models & Methodologies: Digital Edition [Kindle Edition] ISBN: 978-1-3115-9110-4

Major topics included in this book are :

• Why “UX: Simplified”?
o The Diverse Disciplines: The ABCs of UX
o User Experience(UX)
o Information Architecture(IA)
o Interaction Design (IxD)
o User Interface Design (UI)
• Usability and Mental Models: Foundations of UX
o What is Usability?
o System Models
o What is a “Mental Model” exactly?
o Most-likely Mental Model
o Conceptual Model
o Challenges in Usability Measurement and Metrics
o A List of Factors for Generic and Consolidated Usability Model
o Heuristics:Measuring Usability
• Engineering and Design Processes: Usability and User Centric Approach
o Usability Engineering
o User-Centered Systems Design (UCSD)
o Usability Design
o User-Centered Design (UCD)
o Don’t get Confused: UCD vs UCSD
o UCD Models and Process
• Software Development Life Cycle (SDLC): Where and How User Experience Models fit in?
o Software Development Life Cycle (SDLC)
o Waterfall model
o Spiral model
o Iterative Development Model
o Agile development
o Challenges in UX Integration to Different SDLC Models
o Usability Designing Process
o How Usability Design Process Fits in Different Phases of SDLC?
o How UX Fits in Different Models of SDLC?
o Challenges with Agile model of SDLC to implement UX
o Lean UX and Agile Model
• Agile in Usability Design:Without Reference to SDLC
o Usability Designing Process
• Lean UX: Another Agile UX?
o The Beauty of Lean UX: Everything is familiar
o Foundation Stones of Lean UX:
o Lean Startup method: The concept of “Build-Measure-Learn”
o Minimum Viable Product (MVP) – Prototyping at it’s best in Lean Startup Method
o Principles of Lean UX

  • File Size: 1435 KB
  • Print Length: 86 pages
  • Simultaneous Device Usage: Unlimited
  • Sold by: Amazon Digital Services, Inc.
  • Language: English
  • ASIN: B00LPQ22O0

 

make

Lean UX : Another Agile UX?

Agile is the most popular and successful SDLC model as of today as it allows better scope in providing continuous and iterative refinement to the product. Historically when developers out of their frustrations with waterfall model turned to the growing Agile Movement to regain their control over the process, they found that “like its ancestors, Agile also didn’t take UX into account. Several of the Agile methods, such as Scrum and XP, recommended users sitting with the team during the development process, but that isn’t the same as design. Everyone who figured out how to get what they wanted from plugging UX into a phased waterfall approach was now struggling to work inside the Agile methods. The Agile principles, that focus more on communication and less on contracts, didn’t fit the status quo UX processes”.So efforts were made again to implement UX into Agile methods just like the way it was implemented into waterfall model . But it was not easy as , in waterfall model there are 2 things which helped implemented UX :

 

  1. The objectives of the project stays same from kickoff to the point where the finished product is launched.
  2. The designers created the set of design specifications as a contract which the developers had to implement into the final product.

 

And above two cannot be expected from Agile model as it is based on iterations and gradual exploration of what is best fit for the final product . On ejust simply cannot predict the final design from the start of the project. So many attempts were made to get the best agile SDLC practices that can incorporate the UX , before “Lean UX” was born.

 

As the above figure shows the documentation and guidelines are stripped to their bare minimum components, providing the minimum amount of information necessary to get started on implementation. Also Long detailed design cycles are discarded in favor of very short, iterative, low-fidelity cycles, with feedback coming from all members of the implementation team early and often.

 

 

Challenges with Agile model of SDLC to implement UX

There are several challenges in implementing UX in Agile model effectively and these challenges include:

  • Different approaches. Usability methodologies are centered on the user and holistic view of the user needs whereas agile methodologies take a broader view and focus on the stakeholder. Agile methods primarily focus on delivering working software early.

  • Different goals: Software engineers focus on the technical design, implementation the system where as UX practitioners focus on “developing systems so end-users can use them effectively”.
  • Organizational challenges: The agile methodologies focus on strategy where teams are self-organizing whereas UX focuses on a centralized UX groups within some organizations so that the needed practices, tools, and standards can be provided.
  • UX practitioners struggle to be heard: Many UX practitioners often complain that the results of their work are not considered in the design decisions and even if it is heard, there seems to be focus more on engineering decisions over the usability decisions.

Lean UX and Agile Model

 

Many of UX practitioners see “Lean UX” as the answers to the challenge we see in implementing UX into an Agile SDLC where it uses “taking the best parts of our current UX practices and redesigning them specifically for use in an agile world”. Lean UX, is about reducing waste in a process by removing it from the value chain of the usability process..

The proactive measures for border engagement in Agile model has paved path to a new and more practical implementation of UX discipline and methods called “Lean UX” Lean UX once blended with any exiting Agile SDLC, helps to “create a more productive team and a more collaborative process” .

 

The basic principles Lean UX uses to provide positive refinements to SDLC are through the following 3 foundation stones for it:

 

  1. Design Thinking:This foundation upholds the concept that “every aspect of a business can be approached with design methods” and gives “designers permission and precedent to work beyond their typical boundaries”.

  2. Agile Software Development: Core values of Agile are the key to Lean UX.
  3. Lean Startup method:Lean Startup uses a feedback loop called “build-measure-learn” to minimize project risk and gets teams building quickly and learning quickly

 

Lean UX and UX in Agile SDLC

 

“Lean UX” is seen as the answers to the challenge we see in implementing UX into an Agile SDLC. As discussed in the earlier chapters, Lean UX principles use “taking the best parts of our current UX practices and redesigning them specifically for use in an agile world”.

Lean UX solved many issues were even there with the practices and usability process used in waterfall and different derivative iterative models. In Lean UX practices, there is no more requirements for the “objectives will stay the same and that you can design for a single solution throughout the project”. Also there no more need for the designers to create bulky guidelines and documentations for the developers to be used as a contract. Rather the Lean UX practice upholding agile approach, only focuses on each independent design iteration as a “hypothesis” which has to be validated from a “customer perspective” and from a “business perspective” . The beauty here is because of the Agile process being followed, fast iterations can happen to quickly test hypotheses and get to a great design in the end of the project.

In context of a real world situation the Lean UX is something like:

“The traditional paper work is discarded, while the focus is turned to making sketches of the idea. Then the sketch is presented and discussed with the team. The initial prototype effort is very small comparing to detailed documents, so it’s easy to make changes. After it’s agreed internally, rough prototype is made and tested with users. The learning from users help refine the idea and iteration starts over again”

And this makes case for “collaboration with the entire team” as it becomes critical to the success of the product and the whole project.

 

The Beauty of Lean UX: Everything is familiar

No practice used in Lean UX is something new. Rather it is “built from well-understood UX practices”. Many of the techniques used over the time in various UX process and have the practical usability even today, have been packaged properly in Lean UX.

 

Lean UX is not Same as Agile UX

Lean UX is a totally different term than Agile UX.Lean UX details methods and their practical application in dynamic environment of a Lean StartupIt is the converging point for product development and business, through constant measurement and so called “learning loops” (build – measure – learn).

Agile UX defines update of Agile Software Methodology with UX Design methods. It aims to unify developers and designers in the Agile process of product development.

However Lean UX uses Agile UX methodologies, tools to coordinate their software development.

Foundation Stones of Lean UX:

The key ingredients of Lean UX which act as foundation stones for it are:

 

  1. Design Thinking:
    This foundation upholds the concept that “every aspect of a business can be approached with design methods” and gives “designers permission and precedent to work beyond their typical boundaries”.

  2. Agile Software Development
    Core values of Agile are the key to Lean UX. It forces on 4 major principles of Agile development to product design:
    • Individuals and interactions over processes and tools: This principle louds the concept of exchange of ideas freely and frequently in a team. “The constraints of current processes and production tools are eschewed in favor of conversation with colleagues”

    • Working Software over Documentation:This focuses on bringing out solution quickly so that it can be “accessed for market and viability”.
    • Customer Collaboration over Contract Negotiation:Collaboration with teammates and customers builds consensus behind decisions which results in faster iterations and lessens heavy documentations.
    • Responding to change over following a plan: “The assumption in Lean UX is that the initial product designs will be wrong, so the goal should be to find out what’s wrong with them as soon as possible” and this helps in finding the right direction quickly.
  3. Lean Startup method: 
    Lean Startup uses a feedback loop called “build-measure-learn” to minimize project risk and gets teams building quickly and learning quickly. Typically startups are “free to build products in a manner which differentiate on quality”. Also startups can focus on “intrinsic value and usefulness of the product, rather than on a long list of mostly irrelevant features”. Startups have a distinguishable feature of reducing long product cycles into smaller, shorter chunks and validating these iterations with people that will use the products, actually opens the gate for important information needed to avoid expensive development cycles that come withsome kind of risk. ”The secret sauce of lean startup people is that they advocate for user experience research and design as one of the primary solutions to their business problems, and they do it using plain language”.

 

 

Lean Startup method: The concept of “Build-Measure-Learn”

The fundamental activity of a startup is to “turn ideas into products” at the first step. Next it has the aim to measure how customers respond and then to learn whether to pivot or persevere. So basically a startup’s success depends on this feedback loop. To be successful a startup has to accelerate that feedback loop. The feedback loop being employed here includes three primary activities: build the product, measure data and learn new ideas.

However the Lean Startup method employed in Lean UX , is slightly different – it’s basically about “Think-Make-Check”. The difference lies in the fact that in latter case the “feedback loop incorporates your own thoughts as a designer, not just ideas learned through measurement”.

 

Minimum Viable Product (MVP) – Prototyping at it’s best in Lean Startup Method

Minimum viable product is a version of the product that enables a full turn of the Build-Measure-Learn loop with a minimum amount of effort and the least amount of development time. The MVP is, in fact, an early prototype that serves as a tool to learn and test the team’s assumptions.

 

 

Lean UX is where prototyping is best promoted, focusing the prototype on major components of the experience. Once created, it will be immediately testable by any and all users to start the feedback loop. In most of the case the fidelity of the prototype is not a road block, rather the only mission is to get a quick prototype that can be tested quickly. However where the need for better visualization has priority, the best practices and tools are used to develop high fidelity prototypes in shortest time possible.

 

Principles of Lean UX

There are some guiding principles behind Lean UX which can be used to make sure the methodologies used in a Lean process is on track.

 

  1. Cross-Functional Teams: Specialists from various disciplines come together to form a cross functional team to create the product. Such a team typically consists of Software engineering, product management, interaction design, visual design, content strategy, marketing, and quality assurance (QA).

  2. Small, Dedicated, Collocated: Keep your teams small—no more than 10 total core people as keeping small team has the benefit of small teams comes down to three words: communication,focus, and camaraderie. It is easier to manage smaller team as keeping track of status report , change management and learning.
  3. Progress = Outcomes, Not Output: The focus should be on business goals which are typically are the “outcomes”, rather than the output product/system or service.
  4. Problem-Focused Teams:“A problem-focused team is one that has been assigned a business problem to solve, as opposed to a set of features to implement”.
  5. Removing Waste: This is one of the key ingredients of Lean UX which is focused on “removal of anything that doesn’t lead to the ultimate goal” so that the team resource can be utilized properly.
  6. Small Batch Size: Lean UX focuses on “notion to keep inventory low and quality high”.
  7. Continuous Discovery: “Regular customer conversations provide frequent opportunities for validating new product ideas”
  8. GOOB: The New User-Centricity: GOOB stands for “getting out of the building” — meeting-room debates about user needs won’t be settled conclusively within your office. Instead, the answers lie out in the marketplace, outside of your building.
  9. Shared Understanding: The more a team collectively understands what it’s doing and why, the less it has to depend on secondhand reports and detailed documents to continue its work.
  10. Anti-Pattern: Rock-stars, Gurus, and Ninjas:Team cohesion breaks down when you add individuals with large egos who are determined to stand out and be stars. So more efforts should on team collaboration.
  11. Externalizing Your Work:“Externalizing gets ideas out of teammates’ heads and on to the wall, allowing everyone to see where the team stands”.
  12. Making over Analysis: “There is more value in creating the first version of an idea than spending half a day debating its merits in a conference room”.
  13. Learning over Growth: “Lean UX favors a focus on learning first and scaling second”.
  14. Permission to Fail: “Lean UX teams need to experiment with ideas. Most of these ideas will fail.The team must be safe to fail if they are to be successful”.
  15. Getting Out of the Deliverables Business: “The team’s focus should be on learning which features have the biggest impact on the their customers. The artifacts the team uses to gain that knowledge are irrelevant.”

 

 

 

 

 

 

(c)2013-14, Samir Dash

waterfallmodel_UXphases

How UX Fits in Different Models of SDLC?

In my last post “Challenges in UX integration with different SDLC models” we explored about the challenges of fitting UX into different SDLC models. I would like to extend that discussion in the current post.

 

he pre-agile era saw many attempts of UX getting fitted into the waterfall and it’s derivative models of SDLCs. Such attempts by the many developers were natural outcome of the post-projects disasters, where ‘design’ was never the personality of “software product engineering” and the lack of usability doomed the products even after the initial set of requirements check list was fulfilled.

More demands for Graphic User Interfaces (GUI) in software application (due to GUI’s power to offer better visibility and power to the end users) tempted the developers to follow emerging UX practices which included a task to add “design phase” to existing SDLCs. Waterfall model was good enough to accommodate a notion of design in its phases and become popular despite its limitations (which later pave paths for Agile era). Most of the design approaches and techniques created during this era were having mostly a goal “to eliminate any deviation during the development process, by telling the developers exactly what we expect of them”.

Let’s see how different models of SDLC accommodated UX differently in the following:

 

Waterfall model

In this process the developers follow the different phases described in the previous section in order.


 

 

 

UCD components in Waterfall model:

Historically the waterfall model of SDLC can use the UCD components in its engineering process and the product to translate the “set of requirements into something beautiful”. It is relatively simpler and easy to spot the to spot the areas within different phases where UX can be easily fits in as each phases are clearly

 

 

 

 

 

 

 

 

 

 

 

 

 

In this model once one phase is finished, it proceeds to the next one. Reviews may occur before moving to the next phase which allows for the possibility of changes. Reviews may also be employed to ensure that the phase is indeed complete; the phase completion criteria are often referred to as a “gate” that the project must pass through to move to the next phase. Waterfall discourages revisiting and revising any prior phase once it’s complete.

 

Spiral model:

In this model deliberate iterative risk analysis, particularly suited to large-scale complex systems happens at a predefined frequency. It emphasizes risk analysis, and thereby requires customers to accept this analysis and act on it. So the developers typically spend more to fix the issues and are therefore often used for large-scale internal software development.

The Spiral is visualized as a process passing through some number of iterations, with the four quadrant diagram representative of the following activities:

  1. Formulate plans to: identify software targets, implement the program, clarify the project development restrictions
  2. Risk analysis: an analytical assessment of selected programs, to consider how to identify and eliminate risk
  3. Implementation of the project: the implementation of software development and verification

 

 

 

Because of frequent risk analysis and more effort spent by the developer to analyze the risks accurately, the cost factor goes up in the project.

 

UCD components in Spiral model:

In Spiral model, the UCD design can work across different quadrants of activities. The first quadrant where the objectives are determined, the usability and user research can happen as this is where requirements are planned. In the second quadrant the activities involving risk identification can best use UX activities involving IA and prototyping. The third quadrant of development and testing can utilize consultation and usability testing. The final fourth quadrant of activities can be used for feasibility evaluation and setting up usability metrics and bench marking for the next release.

..

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Iterative development model

This method helps to develop a system through repeated cycles and in smaller chunks at a time, allowing software developers to take advantage of what was learned during development of earlier parts or versions of the system.

Incremental development divides the system functionality into increments (portions). In each increment, a portion of functionality is delivered through cross-discipline work, from the requirements to the deployment. The unified process groups increments/iterations into phases: inception, elaboration, construction, and transition. It identifies scope, functional and non-functional requirements and risks at a high level which can be estimated. 

Applying this model to multidisciplinary complex project with large volume can come with a risk as inability in the developers part to uncover important issues early before problems can spoil the project.


 

 

 

 

 

 

 

 

 

 

 

 

 

 

UCD components in Iterative development model

In this model each iteration cycle can be divided into different activities phases to incorporate UCD methodologies for UX integration. Each iteration activities block that are mostly split across concept, design, build and test phases can be used for different UCD activities.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Agile development

This is perhaps today’s the most widely used SDLC model. It uses iterative development as a basis ,but uses people-centric viewpoint through user feedbacks rather than planning as the primary control mechanism. The feedback is driven by regular tests and releases of the evolving software.

There are many variations of agile processes “:

  1. Agile Data (AD)
  2. Agile Microsoft Solutions Framework (MSF)
  3. Agile Modeling (AM)
  4. Agile Unified Process (AUP)
  5. Dynamic System Development Method (DSDM)
  6. Extreme Programming (XP)
  7. Feature Driven Development (FDD)
  8. Scrum
  9. Usage-Centered Design (UCD)

 

 

UCD components in Agile development

This is the most popular and successful SDLC model as of today as it allows better scope in providing continuous and iterative refinement to the product.

 

Historically when developers out of their frustrations with waterfall model turned to the growing Agile Movement to regain their control over the process, they found that “like its ancestors, Agile also didn’t take UX into account. Several of the Agile methods, such as Scrum and XP, recommended users sitting with the team during the development process, but that isn’t the same as design. Everyone who figured out how to get what they wanted from plugging UX into a phased waterfall approach was now struggling to work inside the Agile methods. The Agile principles, that focus more on communication and less on contracts, didn’t fit the status quo UX processes”. So efforts were made again to implement UX into Agile methods just like the way it was implemented into waterfall model . But it was not easy as , in waterfall model there are 2 things which helped implemented UX :

 

  1. The objectives of the project stays same from kickoff to the point where the finished product is launched.
  2. The designers created the set of design specifications as a contract which the developers had to implement into the final product.

 

And above two cannot be expected from Agile model as it is based on iterations and gradual exploration of what is best fit for the final product . On ejust simply cannot predict the final design from the start of the project. So many attempts were made to get the best agile SDLC practices that can incorporate the UX , before “Lean UX” was born.

 

As the above figure shows the documentation and guidelines are stripped to their bare minimum components, providing the minimum amount of information necessary to get started on implementation. Also Long detailed design cycles are discarded in favor of very short, iterative, low-fidelity cycles, with feedback coming from all members of the implementation team early and often.

(c) 2013-14, Samir Dash

ux-process-vs-sdlciterative

Challenges in UX integration with different SDLC models

There are several challenges in integrating UX design and related activities into a typical agile software development life cycle process. The most common problem is typically “ finding a balance between up-front interaction design and integrating interaction design with iterative coding with the aim of delivering working software instead of early design concepts”. This happens mostly because typical pure SDLC approaches primarily aim at “efficient coding tactics together with project management and team organization instead of usability engineering”.As Agile is more “a way of thinking about creating software products’ rather than being a specific process or methodology hints at the challenges of UX integration into it as  integrating user research and UX design with agile, is itself an “agile antipattern”.The very idea of SDLC being a process for developing software , traditionally never kept the “user” into a focus, or event kept any scope for methedologies that try to bring any component that is not considered as native ingredient of the process of creating a software product. The focus was always the “cost, scope, and schedule” that drive any traditional SDLC models including Agile. And sure enough this typically gives rise to the challenges for UX integration into any SDLC as project managers never try to upset the balance of these three by reducing costs, tightening deadlines, and adding features in the specification.

However even though there are many challenges in integrating UX design with agile practices, some researchers see “agile software development practices” as enablers for bringing UX design closer to software engineering and enhancing interaction between these two disciplines.

In Current State of Agile User-Centered Design: A Survey. HCI and Usability for e-Inclusion. Lecture Notes in Computer Science, (by Hussain, Z., Slany, W., and Holzinger, 2009), a survey of the integration of usability and UCD practices with agile methods reported that “the majority of the respondents found that usability and user-centered design practices had brought added value through improvements in the usability and quality of the end product. Development teams often report that they are better able to respond to the needs of the customer with agile methods, and their measured or perceived productivity has been reported to be better than development teams using traditional methods”.

 

Agile development

This is perhaps today’s the most widely used SDLC model. It uses iterative development as a basis ,but uses people-centric viewpoint through user feedbacks rather than planning as the primary control mechanism. The feedback is driven by regular tests and releases of the evolving software.

 

 Fig. 1

 

There are many variations of agile processes “:

  1. Agile Data (AD)
  2. Agile Microsoft Solutions Framework (MSF)
  3. Agile Modeling (AM)
  4. Agile Unified Process (AUP)
  5. Dynamic System Development Method (DSDM)
  6. Extreme Programming (XP)
  7. Feature Driven Development (FDD)
  8. Scrum
  9. Usage-Centered Design (UCD)

 

 

Challenges with Agile model of SDLC to implement UX

There are several challenges in implementing UX in Agile model effectively and these challenges include:

  • Different approaches. Usability methodologies are centered on the user and holistic view of the user needs whereas agile methodologies take a broader view and focus on the stakeholder. Agile methods primarily focus on delivering working software early. 
  • Different goals: Software engineers focus on the technical design, implementation the system where as UX practitioners focus on “developing systems so end-users can use them effectively”.
  • Organizational challenges: The agile methodologies focus on strategy where teams are self-organizing whereas UX focuses on a centralized UX groups within some organizations so that the needed practices, tools, and standards can be provided.
  • UX practitioners struggle to be heard: Many UX practitioners often complain that the results of their work are not considered in the design decisions and even if it is heard, there seems to be focus more on engineering decisions over the usability decisions.

Usability Designing Process

While exploring through available scopes in different SDLC models, we can notice a set of common activities which can be combined together to form a generic Usability Designing Process. Basically there are four phases of the whole set of activities which can be tagged separately as follows:

 

1. Plan: This phase involves the following major activities:

  • i. Developing a Plan
  • ii. Assembling a project team
  • iii. Kicking of the project

2. Analyze: This can have the following activities:

  • i. Evaluation of scope
  • ii. Evaluation of existing product (if enhancements are planned)
  • iii. User Research
  • iv. Task Analysis
  • v. Persona Development
  • vi. Scenarios evaluation and prescription
  • vii. Define measurable goals

3. Design: This is phase where some out puts related to the actual product are generated:

  • i. Product/ Site requirement analysis
  • ii. Conducting a content inventory
  • iii. Performing card sorting
  • iv. Information Architecture (IA) formation
  • v. Writing for web
  • vi. Parallel design
  • vii. Wire framing and prototyping
  • viii. Usability Consultations to programming team

4. Test and refinement: This is a phase that can be applied to multiple phases of SDLC as it is mostly about usability testing :

  • i. Usability Testing
  • ii. Heuristic Evaluations
  • iii. Implementation and retest

 

Note that the above phases are not the phases we discussed regarding different SDLC processes. Rather these are the phases that can paired with different phases of SDLC processes depending on the SDLC model used. Typically Usability Designing Process is led by the “usability designer” with the team of field study specialists, user research specialists, usability evaluation specialists, prototype developers, interface designers and graphic designers along with other specialists from related disciplines that varies from project to project.

 

How Usability Design Process Fits in Different Phases of SDLC?

The different blocks of usability design process can be mapped to different process blocks of any SDLC model. The following diagram shows a generic model for typical process blocks for the typical iterative SDLC model.

 

 Fig: 2

 One thing to keep in mind is that process is not a complete product development process as it does not out put the final product at the end of the process cycle. Rather Usability process supplements to any software development life cycle at various stages.

Plan or Ideationand Requirement Analysis Phase: In this phase while the technical feasibility is being evaluated, UCD contributors can assist product management by conducting user research with people in the target market to evaluate target user goals, tasks, and workflow. Requirement analysis phase is also aided by the UCD experts in careful review of the gathered data and preparing metrics that can be used in the development phase.

Design Phase: UCD contributors who are skilled at interaction design, visual design, and information design create mockups or prototypes of portions of the system, and contributors who are trained in usability evaluation assess the designs by subjecting them to usability testing.

Build or Development Phase: UCD contributors are usually called upon in a consultative or interpretive role, meeting with the developers responsible for actual implementation of the product, and providing guidance for underspecified areas of the product. In this phase the UCD contributor’s role is to remain the consistent user advocate throughout the project. When negotiations must happen during design and development of a feature, the UCD contributor reminds the team of the design persona (the “design target”, or user group at which the feature is aimed), helps the product manager identify and weigh the risks of leaving off certain areas of functionality, etc.

Integration and Testing/ Verification Phase:UCD experts help in benchmarking usability tests popularly known as “summative evaluations” that evaluates performance of the system /product developed on several grounds. The metrics of this test is typically based on the “error rate for users as they use the system”, the “time it takes to attain proficiency performing a task”, and the “time it takes to perform a task once proficiency has been attained”.

 

 

(c)2013-14, Samir Dash

3a

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

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 usage of a book is bound with your past experience and the expectation aroused there by using the 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 measureshow easy it for the user to master the usage of the functionalities.
  9. Safety: It measure the level of safety of the user and his information during and after the period of operation
  10. Accessibility:It measures 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 specially measures if the user trusts the system for critical usage (such as using credit cards on an ecommerce 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

2d

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

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 design or user interface engineering is the design of computers, 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

 

10effdb

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

“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.

 

Fig: 2

 

 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

2b

Why ‘UX’ is must for software industry?

In software industry , just like any other manufacturing industry the final production of final output step of the whole process of software development is critical as well as expensive. So it became necessary for the different stake holders of the process and the final output to figure out the exact “what” and “how” aspect. To cater these needs new specialties such as “interaction design”, “information architecture” emerge. These new disciplines became the part of software development life cycle gradually after 90s and put an impact on production design process in software industry.

Software industry is itself in a speedy evolving process. So the methodologies used in production design also gradually evolved to match the changing needs of the time. For example the competition in the software product market gave rise to the trend of publishing quick and iterative versions to the market and gradually improvement of the product based on the feedback of the users on the versions available in the market. The agile methodology in the software production process helped changing the process related goals for the developers and designers involved. In the designers process concepts like “Lean UX” has emerged to meet the need of the competitive timelines and “quick to production” demands through agile process.

This is high time we need to see how the “ever evolving” change in production design process can be handled by the designers, developers and information architects through bare minimum effort and learning curve. Understanding of UX is after all is a ‘must’ for those who want a quick fix solution for the changes that happen in the production process and find answers on how to map different UX and IXD concepts to their “ever changing needs” in software production.

(c) 2013-14 , Samir Dash