<?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>Silverlight &#38; WCF RIA Services &#187; Rich User Experience</title>
	<atom:link href="http://bachelorthesis.zdechovan.com/tag/rich-user-experience/feed/" rel="self" type="application/rss+xml" />
	<link>http://bachelorthesis.zdechovan.com</link>
	<description>Bachelor Thesis About RIA Enterprise Applications (written by Lukáš Zdechovan, led by Ondrej Svačina)</description>
	<lastBuildDate>Sat, 29 May 2010 17:57:41 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>How to: Create an advanced SketchFlow Prototype</title>
		<link>http://bachelorthesis.zdechovan.com/how-to-create-advanced-sketchflow-prototype/</link>
		<comments>http://bachelorthesis.zdechovan.com/how-to-create-advanced-sketchflow-prototype/#comments</comments>
		<pubDate>Sat, 13 Mar 2010 11:22:04 +0000</pubDate>
		<dc:creator>Lukáš Zdechovan</dc:creator>
				<category><![CDATA[Samples]]></category>
		<category><![CDATA[Rich User Experience]]></category>
		<category><![CDATA[Silverlight]]></category>
		<category><![CDATA[SketchFlow]]></category>
		<category><![CDATA[UI prototype]]></category>

		<guid isPermaLink="false">http://bachelorthesis.zdechovan.com/?p=212</guid>
		<description><![CDATA[
I&#8217;m working on a Silverlight demo LoB application as a part of my bachelor thesis and I made a UI prototype with a couple of screens containing sample data and some basic functionality like navigating through screens, autocomplete boxes, some pop-up windows&#8230;
At first, check out the SketchFlow prototype (or just PDF exported document) which I&#8217;m [...]]]></description>
			<content:encoded><![CDATA[<p><a class="lightbox" title="LoginSketch" href="http://bachelorthesis.zdechovan.com/wp-content/uploads/2010/02/LoginSketch.PNG"><img class="size-thumbnail wp-image-195 alignleft" style="margin-left: 10px; margin-right: 10px; margin-top: 5px; margin-bottom: 5px;" title="Login Sketch" src="http://bachelorthesis.zdechovan.com/wp-content/uploads/2010/02/LoginSketch-150x150.PNG" alt="Login view sketch" width="150" height="150" /></a></p>
<p>I&#8217;m working on a<strong> Silverlight demo LoB application</strong> as a part of my bachelor thesis and I made a<strong> UI prototype </strong>with a couple of screens containing sample data and some basic functionality like navigating through screens, autocomplete boxes, some pop-up windows&#8230;</p>
<p>At first, check out the <a href="http://bachelorthesis.zdechovan.com/demoapp/sketchflow/">SketchFlow prototype</a> (or just <a href="http://bachelorthesis.zdechovan.com/demoapp/sketchflow/TelecoSystemsPrototype.pdf?updated=2010_03_12">PDF exported document</a>) which I&#8217;m going to describe here, to see whether the rest of article is interesting for you.</p>
<p>Download the <a title="SketchFlow prototype source code" href="http://bachelorthesis.zdechovan.com/demoapp/sketchflow/telecosystemsprototype.zip">source code</a> of the project.</p>
<p><span id="more-212"></span></p>
<h3>Why to do WPF/Silverlight UI prototypes in SketchFlow?</h3>
<p>We usually build the software for our customers and therefore we have to check regularly whether our work really meets their expectations.</p>
<p><strong>To avoid reconstruction</strong> of the user interface near the end of the development, project teams tends to do UI prototypes. This way we could get the feedback from our managers and customers about the basic design elements like layout, UI components used, data that is shown, etc.</p>
<p>SketchFlow enable to create UI mocks that looks like <strong>hand-drawn</strong>, but<strong> with real XAML elements and C#(or VB)</strong> code so there is a great chance, that in the end you can reuse a lot of the XAML code for the real project. Plus you can easily create <strong>Sample Data Sources</strong> with &#8220;lorem ipsum&#8221; style data.</p>
<p>To enrich the communication process between you and the customer there are some<strong> feedback</strong> controls to draw and write notes in the running prototype and then export it.</p>
<p>I will <strong>explore the whole process of creating SketchFlow prototype</strong> in the next couple sections.</p>
<h3>Basic Orientation in SketchFlow Project</h3>
<div id="attachment_214" class="wp-caption alignleft" style="width: 310px"><a class="lightbox" title="sketchflow overview" href="http://bachelorthesis.zdechovan.com/wp-content/uploads/2010/03/sketchflow-overview.png"><img class="size-medium wp-image-214" title="sketchflow overview" src="http://bachelorthesis.zdechovan.com/wp-content/uploads/2010/03/sketchflow-overview-300x171.png" alt="Overview of Expression SketchFlow" width="300" height="171" /></a><p class="wp-caption-text">Overview of Expression SketchFlow</p></div>
<p>The most important parts of the environment are <strong>SketchStyles assets</strong>, that are actually styles applied on dozens of classic UI controls.</p>
<p>Another important tool is <strong>SketchFlow Map</strong> where you can create connected screens, organize component screens and visually tag them to express some king of grouping.</p>
<p>In the right panel there are by default <strong>Properties</strong> (of selected component) and<strong> Data</strong> panels. In Data panel you can create collections of sample data or import data sources from XML files.</p>
<p>In some cases you would like to create some basic animations of the content and this can be done with the<strong> animation panel</strong>.</p>
<p>If you can&#8217;t find some of these panels you can show them by the Window submenu in the Main menu.</p>
<h3>Create navigation screen with views as component screens</h3>
<p>At first, you should see the first blank screen in your project. You can place there some Sketchy controls to create the user interface on that screen.</p>
<div id="attachment_216" class="wp-caption alignleft" style="width: 310px"><a class="lightbox" title="sketchflow-map" href="http://bachelorthesis.zdechovan.com/wp-content/uploads/2010/03/sketchflow-map.png"><img class="size-medium wp-image-216" title="sketchflow-map" src="http://bachelorthesis.zdechovan.com/wp-content/uploads/2010/03/sketchflow-map-300x106.png" alt="SketchFlow Map" width="300" height="106" /></a><p class="wp-caption-text">SketchFlow Map</p></div>
<p>This will be the first screen in your project and by clicking on buttons in the SketchFlow map you can <strong>create screens that are connected to this screen</strong>.</p>
<p>You can also create new screen separately and after that <strong>connect</strong> the screen to another existing screen.</p>
<p>To create a component screen I recommend to create some basic stuff at the source screen first, place it in some Grid and than raise context menu on that Grid in the Objects and Timeline panel and choose Make into component screen.</p>
<div id="attachment_217" class="wp-caption alignleft" style="width: 280px"><a class="lightbox" style="float: left" title="sketchflow-group" href="http://bachelorthesis.zdechovan.com/wp-content/uploads/2010/03/sketchflow-group.png"><img class="size-medium wp-image-217" title="sketchflow-group" src="http://bachelorthesis.zdechovan.com/wp-content/uploads/2010/03/sketchflow-group-300x263.png" alt="Group UI controls into Layout element" width="270" height="245" /></a><p class="wp-caption-text">Group UI controls into Layout element</p></div>
<div id="attachment_218" class="wp-caption alignleft" style="width: 280px"><a class="lightbox" style="float: left" title="sketchflow-makeinto" href="http://bachelorthesis.zdechovan.com/wp-content/uploads/2010/03/sketchflow-makeinto.png"><img class="size-medium wp-image-218" title="sketchflow-makeinto" src="http://bachelorthesis.zdechovan.com/wp-content/uploads/2010/03/sketchflow-makeinto-300x244.png" alt="Make element into..." width="270" height="230" /></a><p class="wp-caption-text">Make element into...</p></div>
<p><br style="clear: both;" /><br />
Then you can see in Objects and Timeline that the Grid changed to the &#8220;NewComponentName&#8221; and you can edit its contents and its code-behind in separated files.</p>
<p>In my case I have a TabControl in every screen (Products, Customers&#8230;)  and <strong>TabItems content</strong> is transformed to separate <strong>Component screens</strong>. I have the <strong>navigation</strong> of my app as a separate <strong>UserControl</strong>, to enable placing it in all Screens, but still edit it in one place.</p>
<p>To enable <strong>navigtion between the screens</strong> from the screen by clicking on some buttons, you have to open the context menu on selected button and choose <strong>Navigate To</strong> and selected the desired screen. Only screens to which current screen is connected could apper here.</p>
<h3>Create Sample Data and bind UI controls to it</h3>
<p>You can easily create new <strong>collections</strong> of sample data, that contains <strong>simple/complex properties and sub-collections</strong>. After creating a new property you should set the type and some details (size, max length, etc.).</p>
<div id="attachment_226" class="wp-caption alignleft" style="width: 310px"><a class="lightbox" title="sketchflow-sampledata" href="http://bachelorthesis.zdechovan.com/wp-content/uploads/2010/03/sketchflow-sampledata.png"><img class="size-medium wp-image-226" title="sketchflow-sampledata" src="http://bachelorthesis.zdechovan.com/wp-content/uploads/2010/03/sketchflow-sampledata-300x160.png" alt="SketchFlow Sample Data" width="300" height="160" /></a><p class="wp-caption-text">SketchFlow Sample Data</p></div>
<p>There is also an option to <strong>edit</strong> pre-generated values and set the count of sample records in a collection.</p>
<p>Image type property should be linked to a directory that contains sample images.</p>
<p>Binding works the same way like in normal WPF/Silverlight project. I recommend to set the DataContext of the LayoutRoot grid to the <strong>ProjectDataSource</strong> and then just bind ItemsSource properties of ListBoxes, Grids on the screen to sample data collections.</p>
<h3>How to create sketchy controls that are not included in default SketchStyles</h3>
<div id="attachment_228" class="wp-caption alignleft" style="width: 310px"><a class="lightbox" title="sketchflow-applysketch" href="http://bachelorthesis.zdechovan.com/wp-content/uploads/2010/03/sketchflow-applysketch.png"><img class="size-medium wp-image-228" title="sketchflow-applysketch" src="http://bachelorthesis.zdechovan.com/wp-content/uploads/2010/03/sketchflow-applysketch-300x197.png" alt="SketchFlow Apply sketchy resource" width="300" height="197" /></a><p class="wp-caption-text">SketchFlow Apply sketchy resource</p></div>
<p>There is limited amount of controls that could be drag&#8217;n'dropped from the SketchStyles panel.</p>
<p>In my prototype I used <strong>AutocompleteBox, DataPicker</strong> and maybe some other controls, that should be styled the sketchy way, as well.</p>
<p>A lot of these extra controls are <strong>derived or contain some primitive UI controls</strong>. AutocompleteBox is derived from standerd TextBox and therefore we can apply TextBox-Sketch resource to it.</p>
<p>In other controls we could at least change the Font to <strong>Buxton Sketch</strong> and set colors of control to grayscale ones.</p>
<h3>Publish the project, Export to Microsoft Word, Manage the Feedback</h3>
<p>In the Main menu, you can <strong>Package the SketchFlow project</strong> and that will export your prototype to a specified folder. Actually the only files you need for publishing on the web or to deliver to customer are Silverlight XAP file and an HTML document that hosts that Silverlight application. Show my <a href="http://bachelorthesis.zdechovan.com/demoapp/sketchflow/">published project</a>.</p>
<p>The other interesting function is <strong>Export to Microsoft Word</strong>, where the SketchFlow generates a Word document with the SketchFlow Map and all the Navigation and Component Screens. Show my <a href="http://bachelorthesis.zdechovan.com/demoapp/sketchflow/TelecoSystemsPrototype.pdf?updated=2010_03_12">exported document</a> saved as PDF.</p>
<div id="attachment_232" class="wp-caption alignleft" style="width: 310px"><a class="lightbox" title="sketchflow-feedback" href="http://bachelorthesis.zdechovan.com/wp-content/uploads/2010/03/sketchflow-feedback.png"><img class="size-medium wp-image-232" title="sketchflow-feedback" src="http://bachelorthesis.zdechovan.com/wp-content/uploads/2010/03/sketchflow-feedback-300x178.png" alt="SketchFlow project Feedback" width="300" height="178" /></a><p class="wp-caption-text">SketchFlow project Feedback</p></div>
<p>In the running project, the user can navigate through the left sidebar or by clicking on buttons in screens.</p>
<p>In the left sidebar there is also a Feedback panel where the user can <strong>write, draw feedback</strong> and then <strong>export</strong> it and <strong>send</strong> the exported file to development team.</p>
<p>You as a developer could import/add feedback files from your customers (or managers) via the Feedback panel (on the left from the Objects and Timeline).</p>
<h3 style="clear:both;">Useful links about Expression SketchFlow</h3>
<p>In the end, I will share with you some links about SketchFlow I&#8217;ve already collected.</p>
<p><a href="http://blog.ondrejsv.com/post/How-to-Create-a-sketchy-Siverlight-GroupBox-in-BlendSketchFlow.aspx">How to: Create a sketchy Siverlight GroupBox in Blend/SketchFlow</a> (ondrejsv, 17th January 2010)</p>
<p><a href="http://blog.ondrejsv.com/post/How-to-Create-a-new-format-for-sample-data-in-BlendSketchFlow.aspx">How to: Create a new format for sample data in Blend/SketchFlow</a> (ondrejsv, 17th January 2010)</p>
<p><a href="http://www.infoq.com/articles/guest-simon-sketchflow">Using SketchFlow to Create Better Prototypes</a> (Simon Guest, 29th April 2009)</p>
<p><a href="http://silverzine.com/tutorials/getting-in-depth-with-sketchflow/">Getting in-depth with SketchFlow</a> (Alex Knight, 26th October 2009)</p>
<p><a href="http://videos.visitmix.com/MIX09/C01F">Sketch Flow: From Concept to Production &#8211; MIX &#8216;09 video</a> (Christian Schormann, 20th March 2009)</p>
<p><a href="http://franksworld.com/blog/archive/2009/08/27/11677.aspx">SketchFlow tutorial</a></p>
<p>Thanks for reading.</p>
<p>Download the <a title="SketchFlow prototype source code" href="http://bachelorthesis.zdechovan.com/demoapp/sketchflow/telecosystemsprototype.zip">source code</a> of this project.</p>
]]></content:encoded>
			<wfw:commentRss>http://bachelorthesis.zdechovan.com/how-to-create-advanced-sketchflow-prototype/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Rich User Experience</title>
		<link>http://bachelorthesis.zdechovan.com/rich-user-experience/</link>
		<comments>http://bachelorthesis.zdechovan.com/rich-user-experience/#comments</comments>
		<pubDate>Mon, 23 Nov 2009 10:53:22 +0000</pubDate>
		<dc:creator>Lukáš Zdechovan</dc:creator>
				<category><![CDATA[User Experience]]></category>
		<category><![CDATA[Rich User Experience]]></category>
		<category><![CDATA[User Experience Design]]></category>

		<guid isPermaLink="false">http://bachelorthesis.zdechovan.com/?p=45</guid>
		<description><![CDATA[User experience, most often abbreviated UX, but sometimes UE, is a term used to describe the overarching experience a person has as a result of their interactions with a particular product or service, its delivery, and related artifacts, according to their design. [wiki]

User experience design is integrated into software development and other forms of application development [...]]]></description>
			<content:encoded><![CDATA[<p>User experience, most often abbreviated UX, but sometimes UE, is a term used to describe the overarching experience a person has as a result of their <strong>interactions</strong> with a particular product or service, its delivery, and related artifacts, according to their design. [<a href="http://en.wikipedia.org/wiki/User_experience_design#The_user_experience">wiki</a>]</p>
<p><span id="more-45"></span></p>
<p style="margin-top: 0.4em; margin-right: 0px; margin-bottom: 0.5em; margin-left: 0px; line-height: 1.5em;"><strong>User experience design</strong> is integrated into software development and other forms of application development in order to inform feature requirements and interaction plans based upon the user&#8217;s goals. New introduction of software must keep in mind the dynamic pace of technology advancement and the need for change.<br />
The benefits associated with integration of these design principles include:</p>
<ul>
<li>Reducing excessive features which miss the needs of the user</li>
<li>Improving the <strong>overall usability</strong> of the system</li>
<li>Expediting design and development through detailed and properly conceived guidelines</li>
<li>Incorporating business and marketing <strong>goals</strong> while catering to the user<br />
[<a href="http://en.wikipedia.org/wiki/User_experience_design#Benefits">wiki</a>]</li>
</ul>
<p><strong>Experience design</strong> (XD) is the practice of designing products, processes, services, events, and environments with a focus placed on the <strong>quality of the user experience</strong> and culturally relevant solutions, with less emphasis placed on increasing and improving functionality of the design. [<a href="http://en.wikipedia.org/wiki/Experience_design">wiki</a>]</p>
<p>Look at a very nice visualization of The Importance of User Experience.</p>
<div id="attachment_46" class="wp-caption alignnone" style="width: 253px"><a href="http://bachelorthesis.zdechovan.com/wp-content/uploads/2009/11/user_experience.jpg"><img class="size-medium wp-image-46 " title="user_experience" src="http://bachelorthesis.zdechovan.com/wp-content/uploads/2009/11/user_experience-243x300.jpg" alt="A picture that visualises Rich User Experience" width="243" height="300" /></a><p class="wp-caption-text">A picture that visualises Rich User Experience (click for full size)</p></div>
]]></content:encoded>
			<wfw:commentRss>http://bachelorthesis.zdechovan.com/rich-user-experience/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

