<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Learn Software Development &#187; UI</title>
	<atom:link href="http://learnsoftwareprocesses.com/category/ui/feed/" rel="self" type="application/rss+xml" />
	<link>http://learnsoftwareprocesses.com</link>
	<description>All about the processes involved in software development</description>
	<lastBuildDate>Sat, 04 Sep 2010 20:03:47 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>More about the Product Backlog &#8211; When and where ?</title>
		<link>http://learnsoftwareprocesses.com/2009/11/24/more-about-the-product-backlog-when-and-where/</link>
		<comments>http://learnsoftwareprocesses.com/2009/11/24/more-about-the-product-backlog-when-and-where/#comments</comments>
		<pubDate>Tue, 24 Nov 2009 17:11:10 +0000</pubDate>
		<dc:creator>ashish</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Interface]]></category>
		<category><![CDATA[Product]]></category>
		<category><![CDATA[Product Management]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[UI]]></category>
		<category><![CDATA[User]]></category>
		<category><![CDATA[Pre-work]]></category>
		<category><![CDATA[Product Manager]]></category>
		<category><![CDATA[Product Owner]]></category>
		<category><![CDATA[Sprint Cycle]]></category>
		<category><![CDATA[Sprint Planning]]></category>
		<category><![CDATA[User Experience]]></category>
		<category><![CDATA[User Interface]]></category>
		<category><![CDATA[User Story]]></category>

		<guid isPermaLink="false">http://learnsoftwareprocesses.com/?p=466</guid>
		<description><![CDATA[In the previous post (link), I had started writing about the Product Backlog, but soon realized that I needed more than one post. So here is Part 2 about the Product Backlog. Part of the debate about a Product Backlog is about the extent of detail, as well as when should more detail be added. [...]]]></description>
			<content:encoded><![CDATA[<p>In the previous post (<a href="http://learnsoftwareprocesses.com/2009/11/21/scrum-terms-what-is-a-product-backlog/">link</a>), I had started writing about the Product Backlog, but soon realized that I needed more than one post. So here is Part 2 about the Product Backlog.<br />
Part of the debate about a Product Backlog is about the extent of detail, as well as when should more detail be added. Now, Scrum is all about not adding detailed requirements well ahead of time (Waterfall, anyone?); it is about getting details in when these details are required by the team to start implementing the required user stories. However, if you consider the situation where, for a given Sprint Planning, the top items in the Product Backlog (as optimized by the Product Owner) contains only single statement requests, you do not have enough detail to start work. One can envisage spending a lot of time in the Sprint Planning sessions where the feature needs to be detailed enough so that estimates can be made. However, for the case of user stories where the workflow is complex or needs to be detailed, you need the User Interface Designer to have already spent some time before the team can make estimates and start working on the tasks. For this purpose, you would need the Product Owner to have spent the required time with the UE team so as to have added more details to the user story, and then the User Interface Designer to draw up the required workflows. It could be argued that if the workflow / user story is so complex that it would require so much pre-work, then maybe the user story has not been stated clearly enough. However, for many UI interaction heavy tasks such as portals, shopping carts, etc, it is required that this kind of pre-work be done; although you only need to do it as the relevant Sprint appears closer, as opposed to doing it much earlier. One advantage of doing such pre-work is that several different UI&#8217;s can be generated, and user feedback sought from a sample set of users. This helps in ensuring that the final product will be closer to one that customers want.<br />
Further, taking such a approach means that the user story can be refined, and also broken down into several smaller user stories, with the additional advantage that estimation for such tasks can be done with a greater amount of efficiency. One thing to keep in mind is that you need not reach a final detailed UE, instead a UE that is good enough to guide the team can be done upto the Sprint planning, and the UE finalized during the actual Sprint cycle.</p>
]]></content:encoded>
			<wfw:commentRss>http://learnsoftwareprocesses.com/2009/11/24/more-about-the-product-backlog-when-and-where/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Benefits of usability testing</title>
		<link>http://learnsoftwareprocesses.com/2008/04/24/benefits-of-usability-testing/</link>
		<comments>http://learnsoftwareprocesses.com/2008/04/24/benefits-of-usability-testing/#comments</comments>
		<pubDate>Thu, 24 Apr 2008 19:15:12 +0000</pubDate>
		<dc:creator>ashish</dc:creator>
				<category><![CDATA[Benefits]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[UI]]></category>
		<category><![CDATA[Usability]]></category>

		<guid isPermaLink="false">http://learnsoftwareprocesses.com/2008/04/24/benefits-of-usability-testing/</guid>
		<description><![CDATA[Why is there such a lot of focus on doing proper usability testing ? Whenever there is any discussion of doing a product and plans are drawn, doing usability testing is deemed as a critical part of the overall plan. What are the benefits of doing usability testing and what can you learn about your [...]]]></description>
			<content:encoded><![CDATA[<p>Why is there such a lot of focus on doing proper usability testing ? Whenever there is any discussion of doing a product and plans are drawn, doing usability testing is deemed as a critical part of the overall plan. What are the benefits of doing usability testing and what can you learn about your product from this process ? Presented below is a list of queries / outcomes / benefits, many of which may seem relevant and others not so relevant:</p>
<p>Are the test participants able to complete the task scenarios successfully? Do the test participants understand the various test scenarios ? If they are not able to understand or frequently ask for directions or seem confused, it implies that there are problems that need to be addressed. </p>
<p>Do participants perform well enough to meet the usability objectives? Supposing the participants are able to move ahead in the flow, the next question is about their performance in the study. Their level of completion, the amount of assistance they required, whether they moved in the workflow the same way that the designers intended, all these are queries that need to be assessed.</p>
<p>How satisfied are participants with the site or application? It is very important to gauge the level of satisfaction of the users with the site / application. Preparing a series of questions during and after the study will allow determination of the satisfaction levels of the users with the overall site / application, as well as individual elements.</p>
<p>What changes are needed to make sure that the site / application will enable more users to perform more successfully? A usability study is an excellent time to find out which is the more user-friendly route for users. In fact, it is very much possible that during the course of a usability study, designs could be reworked in an iterative way to find the one that seems to be the most user-friendly.</p>
<p>Verification of user analysis data: Designs in a lot of cases have been made on the basis of previous user analysis data. Typically, such analysis leads to a lot of data about the workflows that users seem to prefer; however, it is also known that in many cases, users state something based on questions &#8211; but these can get modified when they actually see this in operation (also known as &#8216;users finally get to know what they want when they see it&#8217;). Hence, usability studies are a good way of finally verifying the user analysis data.</p>
<p>Validate design guidelines: The usability testing also helps to confirm the various design guidelines that have been established for the project. These guidelines serve to set the basis of the user workflows. An example of some of these are:<br />
* Make links predictable: Links should have the same type of UI and should work in the same way<br />
* Make screens as simple as possible &#8212; first screen should have only the most frequently used functions and secondary screens should have optional interactions<br />
* Use graphics minimally &#8212; only when necessary, and make graphics meaningful, to indicate where a link goes or what page it deals with; and<br />
* Make the page easy to scan &#8212; most people scan the page, picking out individual words or sentences and do not read word-by-word<br />
Now these are general guidelines and may not be applicable for all cases.</p>
<p>Testing allows designers to settle disagreements and differences: Different designers in a team could have multiple opinions and getting usability tests determines which is the one most likely to work. This happens without hurting egos if decisions are made on the basis of user study.</p>
<p>Usability tests can help you understand how real users will use your product, and how the interface could be improved accordingly: Teams developing the product / site can have blinkered visions; getting target segment users brings you close to reality.</p>
<p>Results of testing give the designer ammunition to use in responding to outside attempts to change design based on whims or personal bias: Higher management or experts can have their own opinions and may want a workflow to happen in a certain way, and getting usability results helps defeat such attempts if they are based on personal whims. </p>
<p>Testing saves time and money. Rubin notes that &#8220;doing usability testing through the development project allows you to make user-centered changes as you go, before you have so much time and money invested in the project that it makes it difficult to make changes.</p>
<p>Testing is good public relations: It sends a message that the team/company is interested in what the user thinks and needs and can be used very easily for good coverage and to show that the company has done a best effort.</p>
<p>Testing allows the designer to cast a broad net: It helps ensure that the design is good for all users, not just those users who think like you do. Getting a cross section that is diverse is much easier if you are doing a bigger usability study.</p>
<p>In summary, the process can work like this &#8211; With the iterative approach, a site prototype can be created, viewed, and evaluated by a small subset of users who identify problems and suggest changes. Once immediate problems are corrected and suggestions are implemented, the site is released to a larger audience, who become part of the design and quality control team by using and evaluating the resources and sharing their feedback with the developers. Usability testing methods, by their very nature, keep the user in the forefront. User testing helped us, the designers, distance ourselves from the product. Rather than focusing on what we thought/liked/needed, we could focus on what the user thinks/likes/needs. What users say they need and want is often substantially disconnected from what they actually need and want when faced with using a product to perform a task. It is for these reasons that the only way to effectively determine what is best for users is to observe users performing tasks with the product of interest.</p>
]]></content:encoded>
			<wfw:commentRss>http://learnsoftwareprocesses.com/2008/04/24/benefits-of-usability-testing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What is user interface prototyping ?</title>
		<link>http://learnsoftwareprocesses.com/2008/02/16/what-is-user-interface-prototyping/</link>
		<comments>http://learnsoftwareprocesses.com/2008/02/16/what-is-user-interface-prototyping/#comments</comments>
		<pubDate>Sat, 16 Feb 2008 19:40:39 +0000</pubDate>
		<dc:creator>ashish</dc:creator>
				<category><![CDATA[Interface]]></category>
		<category><![CDATA[Prototyping]]></category>
		<category><![CDATA[UI]]></category>

		<guid isPermaLink="false">http://learnsoftwareprocesses.com/2008/02/16/what-is-user-interface-prototyping/</guid>
		<description><![CDATA[A prototype is a semi-functional simulation of the product, and an inexpensive alternative to full technical implementation. Prototyping is an excellent means for generating ideas about how a user interface can be designed, and it helps to evaluate the quality of a solution at an early stage. Prototypes may be created using tools such as [...]]]></description>
			<content:encoded><![CDATA[<p>A prototype is a semi-functional simulation of the product, and an inexpensive alternative to full technical implementation. Prototyping is an excellent means for generating ideas about how a user interface can be designed, and it helps to evaluate the quality of a solution at an early stage. Prototypes may be created using tools such as paper, white boards, Adobe Illustrator, Photoshop, HTML, Flash, Java or other technologies. The prototype is used to refine the user interface and user experience. Usability tests are often conducted using a User Interface Prototype.<br />
User interface (UI) prototyping is an iterative analysis technique in which users are actively involved in the mocking-up of the UI for a system. UI prototypes have several purposes:<br />
* As an analysis artifact that enables you to explore the problem space with your stakeholders.<br />
* As a requirements artifact to initially envision the system.<br />
* As a design artifact that enables you to explore the solution space of your system.<br />
* A vehicle for you to communicate the possible UI design(s) of your system.<br />
* A potential foundation from which to continue developing the system (if you intend to throw the prototype away and start over from scratch then you don’t need to invest the time writing quality code for your prototype).<br />
In the past, it was very common for the consideration of the user interface to be one of the last steps performed in the System Development Life Cycle. Typically after everything about the system had been analyzed and designed, the user interface was developed. The driving factors behind the interface design tended to be what the programmer felt was a logical, intuitive depiction of the system&#8217;s capabilities and processes. When, or if, usability testing was done, it generally occurred after barriers such as coding time and expense were in place that prohibited major revisions.<br />
What users want is for developers to build applications that meet their needs and that are easy to use. Too many developers think that they are artistic geniuses – they do not bother to follow user interface design standards or invest the effort to make their applications usable, instead they mistakenly believe that the important thing is to make the code clever or to use a really interesting color scheme.<br />
A well-designed graphical user interface decreases the user&#8217;s learning curve and is able to lessen the user&#8217;s mental load when using the application. User interfaces have been shown to impact usability when measured by such criteria as speed, accuracy, number of tasks completed, time to learn how to use the system, frequent of reference to documentation, and subjective measures regarding satisfaction with system and satisfaction with performance.</p>
]]></content:encoded>
			<wfw:commentRss>http://learnsoftwareprocesses.com/2008/02/16/what-is-user-interface-prototyping/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why does user interface design fail ?</title>
		<link>http://learnsoftwareprocesses.com/2008/02/12/why-does-user-interface-design-fail/</link>
		<comments>http://learnsoftwareprocesses.com/2008/02/12/why-does-user-interface-design-fail/#comments</comments>
		<pubDate>Tue, 12 Feb 2008 18:18:36 +0000</pubDate>
		<dc:creator>ashish</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Interface]]></category>
		<category><![CDATA[UI]]></category>
		<category><![CDATA[Usability]]></category>

		<guid isPermaLink="false">http://learnsoftwareprocesses.com/2008/02/12/why-does-user-interface-design-fail/</guid>
		<description><![CDATA[Let&#8217;s take the scenario of a company striving to make a great product. They believe that they have a good development team, are well connected with potential consumers, and there is a ready market out there. And they are sufficiently knowledgeable that they want to do a cycle of user interface design and spend some [...]]]></description>
			<content:encoded><![CDATA[<p>Let&#8217;s take the scenario of a company striving to make a great product. They believe that they have a good development team, are well connected with potential consumers, and there is a ready market out there. And they are sufficiently knowledgeable that they want to do a cycle of user interface design and spend some amount of time in this process. Everything done, they release the product / web site and wait to see praise and purchases coming in; to their horror, the product does not take off as expected, and support staff get a lot of customer reports about poor interface. Why do cases like these happen ? Well, here are some possible reasons for such a thing happening: </p>
<p>1. A fundamental difference between the way interaction and information experts diverge instead of collaborating. In the case of the company, the interface designer worked in a silo, instead of spending a lot of time with the information workflow expert. While usability is obviously important, it’s far from the only consideration in designing a user experience. There are at least three aspects to sites: information, experience, and interaction – fact (or fiction), form, and function, if you will. User interface gurus tend to focus only on interaction, and the information architecture gurus tend to focus on information – and each tends to overlook the other two areas.</p>
<p>2. No single magic bullet to interface design. Expert literature offers many principles of good interface design, providing helpful guidelines for designers. However, even if every designer in a software development organization was well versed in these design principles, this would not be enough to ensure good interface design. Many of the available design principles are based on experts&#8217; intuitions, rather than on hard data. What may work in one situation would not work in another, and it is for the interface designer to try out the ones that seem most suitable, and then test them out as to their individual benefits. Usually for any given design problem, they will come in direct conflict with each other, and there are no algorithms for making the trade-offs. </p>
<p>3. User interface design is a matter of compromise and tradeoff, for example, there i the need for powerful functionality, but within a simple, clear interface (seems a paradox in most cases). We want ease of use but also ease of learning. We want a system that is flexible but also one that provides good error handling. We strive for consistency across all aspects of the interface, but also to optimize individual operations. The interface designer finds him or herself constantly confronted with these kinds of conflicting goals, and with the expectation that the designer will be able to resolve all of them brilliantly. Well, sometimes these are not resolved.</p>
<p>4. Design by committee: In many cases, maybe to speed things up, or because influential stakeholders feel that they have the pulse of the customer, they get involved in the interface design process. Or many representatives from the team join in. In such cases, the interface designer has to take along all these people, and compromise; sometimes weakening the design.</p>
<p>5. In many many cases, designers operate in a vacuum, with little prior experience and no interaction with potential users to guide them. At best the interface designers are experienced and have learned from feedback from users of earlier systems. Even so, the technology changes so quickly that even experienced designers constantly confront new design possibilities they have no prior experience with, or have to work with changes technical possibilities that they are really not aware about.</p>
<p>6. Taking the interface designer&#8217;s work as gospel: The interface designer is not god. Even though the work looks good, it is always good to get the work evaluated by users  in the form of usability testing.</p>
<p>7. Inexperienced designers: Just because a person is an interface designer does not automatically mean a high degree of skill in all areas. For example, if a web designer skilled in commercial web sites was asked to develop the interface for a web applet version of a media player, one can be sure that it will take some time to develop the necessary domain experience to be able to judge customer flows.</p>
<p>Poor user interface design can hide even the most powerful and useful Web sites or well engineered products from all but the most advanced and patient users. Developers have to consider seriously the issues of user interface implementation. A poor user interface will mean low usage of the site and its ultimate failure. </p>
]]></content:encoded>
			<wfw:commentRss>http://learnsoftwareprocesses.com/2008/02/12/why-does-user-interface-design-fail/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>User interface design process</title>
		<link>http://learnsoftwareprocesses.com/2008/02/07/user-interface-design-process/</link>
		<comments>http://learnsoftwareprocesses.com/2008/02/07/user-interface-design-process/#comments</comments>
		<pubDate>Thu, 07 Feb 2008 12:39:52 +0000</pubDate>
		<dc:creator>ashish</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Interface]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[UI]]></category>

		<guid isPermaLink="false">http://learnsoftwareprocesses.com/2008/02/07/user-interface-design-process/</guid>
		<description><![CDATA[The above term sounds like a very grand term, although it could be simply defined as the way that the user interface design works. User interface design requires a judicious mixture of creativity, design knowledge and experience, task analysis and a thorough understanding of users requirements. Let us try and understand what this process is [...]]]></description>
			<content:encoded><![CDATA[<p>The above term sounds like a very grand term, although it could be simply defined as the way that the user interface design works. User interface design requires a judicious mixture of creativity, design knowledge and experience, task analysis and a thorough understanding of users requirements. Let us try and understand what this process is actually like, and if you take the context of working the process through a project cycle, it will be easier to understand. One typical definition of the user interface design process is: User interface design process as the total set of design tasks to be carried out to transform a user&#8217;s requirements into a user interface design specification (User Interface Specification is a document that includes an overall definition of the application, from the user interface perspective).</p>
<p>An Overview of the Design Process<br />
All application design methodologies break the development process down into discrete phases. Below are some typical phases.</p>
<p>Requirements Phase: Determine the requirements for the application by interacting with users. Can be further divided into funtionality requirements gathering and user analysis:<br />
* Functionality requirements gathering &#8211; assembling a list of the functionality required of the system to accomplish the goals of the project and the potential needs of the users.<br />
* User analysis &#8211; analysis of the potential users of the system either through discussion with people who work with the users and/or the potential users themselves. This phase can take some good amount of time to achieve, but is very important for later success of the User Interface. Typical questions involve:<br />
o What would the user want the system to do?<br />
o How would the system fit in with the user&#8217;s normal workflow or daily activities?<br />
o How technically savvy is the user and what similar systems does the user already use?<br />
o What interface look &#038; feel styles appeal to the user?</p>
<p>Conceptual Design Phase: Model the underlying business that the application will support. The objective is to model the business irrespective of any implementation issues. This phase also involves working on the information architecture &#8211; development of the process and/or information flow of the system (i.e. for web sites this would be a site flow that shows the hierarchy of the pages).</p>
<p>Logical Design: Design in general terms how the application will operate. This includes the prototyping of the interface. Prototyping means the development of wireframes, either in the form of paper prototypes or simple interactive screens. These prototypes are stripped of all look &#038; feel elements and most content in order to concentrate on the interface.</p>
<p>Physical Design: Design in specific terms how the application will be constructed, and this includes incorporating the platform on which the application is supposed to work. From this stage, it is possible to figure out whether some aspects of the logical design are actually possible or not.</p>
<p>Construction: Construct the application. It is during this phase that users actually get their hands on what the application would actually work like, and it is quite possible that at this point, they would prefer certain changes.</p>
<p>Usability Testing: Test the usability of the user interface; or in more detail, testing of the prototypes on an actual user — often using a technique called talk aloud protocol where you ask the user to talk about their thoughts during the experience of using the application. </p>
<p>Graphic Interface design &#8211; actual look &#038; feel design of the final graphical user interface (GUI.) It may be based on the findings developed during the usability testing if usability is unpredictable, or based on communication objectives and styles that would appeal to the user. In rare cases, the graphics may drive the prototyping, depending on the importance of visual form versus function. If the interface requires multiple skins, there may be multiple interface designs for one control panel, functional feature or widget. This phase is often a collaborative effort between a graphic designer and a user interface designer, or handled by one who is proficient in both disciplines.</p>
]]></content:encoded>
			<wfw:commentRss>http://learnsoftwareprocesses.com/2008/02/07/user-interface-design-process/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
