<?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>Really Aced &#187; iterations</title>
	<atom:link href="http://blog.sommestad.net/tag/iterations/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.sommestad.net</link>
	<description>Web and Cocoa development through the eyes of Kristofer Sommestad, a SWAD developer.</description>
	<lastBuildDate>Sun, 23 Jan 2011 12:21:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<item>
		<title>Optimizing the development process</title>
		<link>http://blog.sommestad.net/2009/03/optimizing-the-development-process-2/</link>
		<comments>http://blog.sommestad.net/2009/03/optimizing-the-development-process-2/#comments</comments>
		<pubDate>Mon, 23 Mar 2009 13:46:34 +0000</pubDate>
		<dc:creator>esset</dc:creator>
				<category><![CDATA[Other]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[flex]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[iterations]]></category>
		<category><![CDATA[mxml]]></category>
		<category><![CDATA[pipeline]]></category>
		<category><![CDATA[processes]]></category>

		<guid isPermaLink="false">http://reallyaced.wordpress.com/?p=70</guid>
		<description><![CDATA[I&#8217;m currently working with some research on how to create an optimized development process with between Artists &#60;-&#62; UI designers &#60;-&#62; Developers. This will be an ongoing discussion and evaluation process, but I&#8217;ve come to some conclusions this far. What&#8217;s the deal, anyway? I&#8217;ve been discussing the issue a lot with Peter, our team&#8217;s designer, [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m currently working with some research on how to create an optimized development process with between Artists &lt;-&gt; UI designers &lt;-&gt; Developers. This will be an ongoing discussion and evaluation process, but I&#8217;ve come to some conclusions this far.</p>
<h3>What&#8217;s the deal, anyway?</h3>
<p>I&#8217;ve been discussing the issue a lot with Peter, our team&#8217;s designer, and we&#8217;ve been trying to pin-point the most important parts of the process. Two of the main issues are:</p>
<ol>
<li>being able to have short &#8220;design-implement-test&#8221; iterations when implementing new features, making changes etc.</li>
<li>maintaining a solid code base while still allowing non-developers to make changes to the interface.</li>
</ol>
<h3>Does the technology matter?</h3>
<p><strong> </strong>It&#8217;s hard to say which technology to use in order to meet the demands, as it depends very much on what the product really is. If it&#8217;s a game where instant and fluffy feedback is important, then we should probably make it a Flash app. If it on the other hand is more of a site, where larger sets of data are important to display in an easy-to-understand manor, then we should probably make it a HTML/AJAX app.</p>
<p>In our upcoming, and many of our current, projects we&#8217;re focusing a lot on the visual experience. We&#8217;re developing games. In Flash. So how can we optimize the processes with focus on Flash development?</p>
<h3>Supporting short development iterations</h3>
<p><strong> </strong>In order to support short iterations, we need to make it easier for project members to change things without being hindered by their technical skills; a designer or artist shouldn&#8217;t need to have ActionScript expertise to change the colors of a button or the placement of a menu.</p>
<p>One way of solving this can be to use Flex with MXML. In MXML, the layout (View) can be changed using a special markup language, logically similar to HTML. Various components, such as buttons, can be positioned freely with some pretty easy-to-use tags. This is quite commonly used among developers all over the world.<br />
Now I haven&#8217;t used MXML to any massive extent, but in my opinion, using MXML isn&#8217;t really all I want it to be. The code gets a bit ugly and somewhat hard to control.</p>
<h3>We&#8217;ve got a great tool for this</h3>
<p><strong> </strong>A while ago, one of my co-workers developed our own framework where it&#8217;s possible to easily define views on an XML format. Some capabilities of the framework:</p>
<ul>
<li>a widget (component) class can be mapped to an SWF file, i.e. containing the art assets for a widget</li>
<li>widgets can be positioned anywhere in its container, either with an absolute position or relative to any other widget</li>
<li>widgets can listen to events from other widgets, in order to allow for them to communicate with each other</li>
<li>a widget can consist of another XML definition to allow for better structure in the view document</li>
</ul>
<p>It pretty much meets the demands one&#8217;s got on such a framework! An advantage (which could also be seen as a disadvantage) is that we can develop the framework further when needed, in order to add more nifty functionality.</p>
<h3>Is this enough for us?</h3>
<p>Anyway. Allowing the designer/artist to create widgets/components and using the widget framework for creating a layout is probably a very good way of meeting the demands of our desired work process. A couple of things that are vital:</p>
<ul>
<li>The View (Widgets and Layout) needs to be clearly distanced from the actual functionality in order to maintain a solid and independent code base, i.e. no functionality should reside in the Widgets or the View document.</li>
<li>The widgets should be kept as small and isolated as possible, to make it as flexible as possible and avoid difficulties/conflicts in version systems.</li>
</ul>
<p>We should try to identify if we have any further needs that aren&#8217;t met by our widget framework of today. As it&#8217;s a great system, we should really try to cling on to it and keep developing it (as we have up until today).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.sommestad.net/2009/03/optimizing-the-development-process-2/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

