Archive for October, 2008

The User Interface Editor can be used to specify and set properties for predefined dialog boxes that are displayed during installation on the target computer.

The User Interface Editor is a tree control containing two sections: Install and Admin. The Install section contains dialog boxes that will be displayed when the end user runs the installer; the Admin section contains dialog boxes that will be displayed when a system administrator uploads the installer to a network location.

A default set of predefined dialog boxes is displayed in the editor; you can rearrange or delete these if you choose. The default set of dialog boxes varies according to the type of deployment project.

Predefined dialog boxes are divided into three categories:

  • Start dialog boxes are displayed before the installation begins. Common uses are to gather customer information or to allow the user to change the installation directory.

  • A progress dialog box is displayed to provide feedback on the progress of an installation.

  • End dialog boxes are displayed once the installation has finished successfully. Common uses are to notify the user that the installation is complete or to allow the user to launch the application.

Dialog boxes can be moved between category nodes via dragging with the mouse or via the Cut and Paste commands on the Edit menu.

Installation User Interface Dialog Boxes

Microsoft Visual Studio provides a number of predefined dialog boxes that you can use to display information or gather input during an installation. The following is a list of available dialog boxes. Not all dialog boxes are available for all deployment project types or for Admin installers.

Dialog box Purpose
Checkboxes A, B, or C Presents up to four choices using check boxes. For more information, see Checkboxes User Interface Dialog Box
Confirm Installation Allows the user to confirm settings such as installation location before beginning the installation. For more information, see Confirm Installation User Interface Dialog Box
Customer Information Prompts the user for information including name, company, and serial number. For more information, see Customer Information User Interface Dialog Box.
Finished Notifies the user when the installation is complete. For more information, see Finished User Interface Dialog Box
Installation Address Allows the user to choose the Web location where application files will be installed. For more information, see Installation Address User Interface Dialog Box
Installation Folder Allows the user to choose the folder where application files will be installed. For more information, see Installation Folder User Interface Dialog Box
License Agreement Presents a license agreement for the user to read and acknowledge. For more information, see License Agreement User Interface Dialog Box
Progress Updates the user on the progress of the installation. For more information, see Progress User Interface Dialog Box
RadioButtons (2 buttons) Presents a choice between two mutually exclusive options using option (radio) buttons. For more information, see RadioButtons User Interface Dialog Box
RadioButtons (3 buttons) Presents a choice between three mutually exclusive options using option (radio) buttons. For more information, see RadioButtons User Interface Dialog Box.
RadioButtons (4 buttons) Presents a choice between four mutually exclusive options using option (radio) buttons. For more information, see RadioButtons User Interface Dialog Box.
Read Me Allows the user to view rich text. For more information, see Read Me User Interface Dialog Box
Register User Allows the user to submit registration information.
Splash Presents a bitmap to the user to display a logo or branding information. For more information, see Splash User Interface Dialog Box
Textboxes A, B, or C Prompts the user for custom information using one to three text boxes. For more information, see Textboxes User Interface Dialog Box
Welcome Presents introductory text and copyright information to the user. For more information, see Welcome User Interface Dialog Box

Read Full Post »

A User Interface Management System (UIMS) is a mechanism for cleanly separating process or business logic from Graphical user interface (GUI) code in a computer program. UIMS are designed to support N-tier architectures by strictly defining and enforcing the boundary between the business logic and the GUI. A fairly rigid Software architecture is nearly always implied by the UIMS, and most often only one paradigm of separation is supported in a single UIMS. A UIMS may also have libraries and systems such as graphical tools for the creation of user interface resources or data stores.

Generally, you cannot easily use multiple UIMS systems at the same time, so choosing the correct model for your UIMS is a critical design decision in any project. The choice of system is dependent upon the system(s) you wish to create user interfaces for, and the general style of your application. For example, if you want to create a web based front end, or just a standalone application or both that would be an important factor in choosing. If you want to deploy to the Macintosh, Windows and Linux, that would further influence your choice of a UIMS system.

Read Full Post »

The event, “Google Presents User Experience & Mobile Apps, Google user experience designer Leland Rechis started his talk by re-iterating Google’s mission: Organize the world’s information and make it universally accessible and useful. Rechis added that mobility is fast-becoming the key to making information “universally accessible,” but he warned that without a solid user experience, there is no way mobile applications can be useful.

Rechis said that when Google plans to launch a mobile application, it looks at the potential app through six layers:

1. Understanding users, anywhere, anytime

2. Fits in your pocket

3. More personal than the PC

4. Consistency across modes

5. Localization is intensified

6. Integrated devices, modes, products

Rechis then broke out the company’s mobile development and optimization strategy by each level.

Understanding users, anywhere, anytime

Rechis said that Google breaks down mobile users into three behavior groups:

A. “Repetitive now”
B. “Bored now”
C. “Urgent now”

The “repetitive now” user is someone checking for the same piece of information over and over again, like checking the same stock quotes or weather. Google uses cookies to help cater to mobile users who check and recheck the same data points.

The “bored now” are users who have time on their hands. People on trains or waiting in airports or sitting in cafes. Mobile users in this behavior group look a lot more like casual Web surfers, but mobile phones don’t offer the robust user input of a desktop, so the applications have to be tailored.

The “urgent now” is a request to find something specific fast, like the location of a bakery or directions to the airport. Since a lot of these questions are location-aware, Google tries to build location into the mobile versions of these queries.

Fits in your pocket

Rechis stressed the limitations of mobile phones. He pointed out that any mobile application has to be able to fit on a small screen and cannot require complicated text input. Also, since the third screen has no X-axis, layout has to clean, simple, but maintain the basic usability of the parent desktop application. Rechis also stressed that the “density of information” changes on a mobile phone, requiring designers to identify only the most essential parts of any given application. Obviously, juggling all this isn’t easy.

In order to achieve usable mobile applications, Fechis reminded the audience that they have to be willing to test and re-test applications with users. Otherwise you can’t get it right.

Also, building successful mobile apps requires developers and user experience people who are passionate about their subjects. He pointed out one Google employee who went to great pains to make sure that Google Maps gave directions correctly for Japan. Since street signs and markers in Japan are different than in the West, this employee had to go to great lengths to make sure that the app rendered maps and gave directions in ways that are useful for that country.


Google always strives to keep the look and feel of any Google application consistent, both within the type of function (i.e. all blog search results look different than map search results) and on devices (a map search on a desktop looks and feels like a map search on a mobile phone and vice versa). If mobile applications are to be universal, then developers have to maintain patterns and designs across all screens.

Read Full Post »

What is Strategy

Before we define User Experience Strategy, lets define Strategy. Answers.com says
“Management plan or method for completing objectives; plan of procedures to be implemented, to do something.”

That’s a bit vague, so lets try to get some handle here. Strategy is the path between Vision and executing vision or in other words a vehicle to realize vision. hmm so it’s not just a tool but has great importance. It’s a 3 step dance:

Vision > Execution Strategy > Execution

Many organizations tend to go directly from vision to execution, missing this important step in between, perhaps most important one as it is allows for energies and resources to be canalized in the right direction.


For this article I’ll equate Vision to goals even though that’s not entirely correct. But you’ll see why I am doing this.
Goals that an organization has are more or less a variation of:

  • Increase Revenues
  • Reduce Costs
  • Increase Profits
  • Increase customer base
  • Improve brand image


You need to figure out what variation of which goal do you want focus on in the solution you are building.



So now that some context is set for what strategy is and role it plays, Lets dig deeper into it. Strategy can apply to anything with a vision from building a house to marketing a product to anything. So there can be :

  • Marketing Strategy
  • Brand Strategy
  • Pricing Strategy
  • Product Strategy
  • Experience Strategy
  • Innovation Strategy
  • Coding Strategy
  • Combat Strategy


… this list can go on and on..

Important thing here is to understand that more than one kind of strategy can be applied to reach the goals.

Lets take an example – Microsoft v/s Apple – both would have had similar goals, but applied different kind of strategies, Needless to say but Microsoft focused a greater effort on marketing strategy and less on experience strategy, Apple was opposite.

Lets take another example – Google v/s Microsoft (can’t resist this one). If you look at it Google is NOT a search company, it’s brand stands for innovation , that’s the reason we just absorb “any” product they launch.. everyone has to have an account with new products from Google.

A non-tech example would be airlines – Jet blue had experience strategy, they had well developed systems (in non-technical sense) to ‘institutionalize’ ability to provide superior experience

So User Experience Strategy is one of the many that an organization can choose from. Each strategy has a cost and value that it delivers. Also strategy does is relative not absolute. It depends on time, market, and competition.

How to decide on the strategy? Here are some tips, (but this is a subject that deserves a separate article):

  1. Vision: This of course is the starting point, strategy must align with vision.
  2. Industry Direction: Take an example of Hotel industry, the base direction it is taking is experience strategy, which is good, but question to be asked is if you can differentiate yourself on same strategy or something else is needed. Consider Yahoo – it has opened yahoo products like a development platform, because even though industry is moving towards Innovation Strategy, they cannot generate enough innovation in house.
  3. Socio-Economic Situation: Back in 1940-50s airline prices were regulated by government, given this airlines could only differentiate based on service and experience they provide. Once that regulation was removed, price wars started and strategy changed.
  4. Competitive Landscape: This is very much of like Industry, however in case you have specific competitors you are going after, looking at Industry direction alone would not be enough, you competitor might be doing something that changes Industry direction
  5. Your offerings: Last but not the least your capabilities. Sony is putting a great deal of resources on Blue Ray disc (one of the two HD DVD Formats being released). This has resulted in them selling new Playstation boxes at a loss because Blue Ray drives are being shipped in new PS and have added significantly to costs. But with competition from X-Box they cannot increase prices. So look at where is the strength in our offering and adopt the right kind of strategy.


User Experience

Okay, let me take a parallel road and look at User Experience at very high level, and then we’ll converge it with Strategy discussion.

So what is User Experience? Answers.com does not even tries to answer this, so lets take it from Wikipedia:

“User experience is a term used to describe the overall experience and satisfaction a user has when using a product or system.” We should change ‘system’ to service.

In more materialistic terms I would say User Experience is essentially something that resides in User’s long-term memory and has a bearing on decision to transact with the company in future. This could be positive or negative.

You need to ask following questions, and these will map you to User’s experience life-cycle:

a. How do users come to know of their need?
b. How do they find the right product/service?
c. How do they make a decision on that product/service?
d. How do they order it?
e. How does it get delivered?
f. How does it get installed?
g. How are problems with product and service resolved?
h. How is it disposed?

Am sure some questions here are new and do not form a part of current experience design discussions, but all are important opportunities.

Now map your user’s path across these stages and rate your and competition’s performance at each stage. I like to follow a 5-point scale as it brings enough granularity, and at the same time has limited subjectivity. I do not recommend using 1 to 5 scale, instead use (-) 2 to (+) 2, i.e. –2, -1, 0, +1, +2

-2 Significant problems with experience
-1 Mild problems with experience
0 As expected
+1 Mild improvements to expected experience
+2 Significant improvements to expected experience

So now you have some assessment of User Experience at high level

Bringing the two together


So now you know which places the experience fails. Next Step is to “Identify Critical moments”. These are moments where users decide to move to next step or not. For e.g. lets say you are doing this for Parking Garage and experience of finding the garage was significantly negative, but once they find the garage they might go ahead if other parameters are fine. But if at this stage attendant’s approach is not right and if customer place high value on attendant’s attitude making it “critical” for customer, she might decide to look further.

So identify such critical moments and those are where you start to focus on. With this you have now narrowed on 2-3 such critical points and start to go deeper.

How do you find what’s critical and what’s not – User Observations are the most reliable method. Go in the field see what goes on and you’ll know what’s important what’s not. In addition talk to people. Do this for your product/service as well as competition product/service

Read Full Post »