<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7205146261469834587</id><updated>2011-04-22T04:28:17.925+03:00</updated><title type='text'>Advanced Interfaces</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://advancedinterfaces.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7205146261469834587/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://advancedinterfaces.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Bog</name><uri>http://www.blogger.com/profile/12493041806614124742</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_z8c-k94wGC8/SSGxWBNoFzI/AAAAAAAAAjg/IYUI4WYa5wI/S220/n1255665197_108878_1346.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>1</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7205146261469834587.post-1307707671598230670</id><published>2008-11-23T02:49:00.004+02:00</published><updated>2008-11-23T03:25:10.394+02:00</updated><title type='text'>Concurrent Task Trees Reloaded</title><content type='html'>&lt;div class="entry"&gt;&lt;div style="text-align: justify;"&gt;&lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;Using task models in design and interfaces &lt;/span&gt;&lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;development &lt;/span&gt;&lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;have made an important contribution to getting interactive applications, more user-oriented than traditional applications.&lt;/span&gt; &lt;p&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;The achievement of such task&lt;/span&gt;&lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt; models&lt;/span&gt;&lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;, to be professional, involves the collaboration of specialists in areas such as programming, design, psychology, etc.&lt;/span&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;Notation choosing must take into account several aspects, such as:&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;an hierarchical logical structure, which proved to be a very useful representation of task models, because it allows designers to think design at a certain level of abstraction, and that, obviously, makes the partial results in a better shape &lt;/span&gt; &lt;/li&gt;&lt;li&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;specifying a variety of temporal relationships between the entities considered in the design of tasks, because modern interfaces must bear the behavior of hyper-interactive users.&lt;/span&gt; &lt;/li&gt;&lt;/ul&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;Also, to achieve an interface which performs functions for the application of which is a part of, is required a well based notation system that allows a good integration of functionalities in the application&lt;/span&gt;&lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;.&lt;br /&gt;&lt;/span&gt;          &lt;br /&gt;      Problems that arise in designing models of tasks:&lt;/span&gt;&lt;p&gt; &lt;/p&gt;&lt;ul&gt;&lt;li&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;the priority of different operators using the same level in CTT;&lt;/span&gt; &lt;/li&gt;&lt;li&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;the need to nominate component that will carry out the task;&lt;/span&gt; &lt;/li&gt;&lt;li&gt;&lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;additional information about the tasks that can be used in the user interface Development;&lt;/span&gt; &lt;/li&gt;&lt;li&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;the need to better define the relationships between parent and its subtasks.&lt;/span&gt; &lt;/li&gt;&lt;/ul&gt;&lt;h3&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;What is a task?&lt;/span&gt; &lt;/h3&gt;&lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;A task defines the manner in which a user can achieve a goal in a specific field application.The task&lt;/span&gt;&lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt; changes a state of the system.&lt;/span&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;A task can be described by the following attributes:&lt;/span&gt; &lt;ul type="circle"&gt;&lt;li&gt;&lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;Name: is used to identify the task.&lt;/span&gt; &lt;/li&gt;&lt;li&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;Type: there are four possible types (abstract, user, application, interaction).&lt;/span&gt; &lt;/li&gt;&lt;li&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;Parent task: name of the father's task.&lt;/span&gt; &lt;/li&gt;&lt;li&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;Objects: vectors of objects, where each element defines the name the object, object type, input a list of actions items, list their output.&lt;/span&gt; &lt;/li&gt;&lt;li&gt;In&lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;itial Actions: initial set of &lt;/span&gt;&lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;possible &lt;/span&gt;&lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;actions .&lt;/span&gt; &lt;/li&gt;&lt;li&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;Final Action: final set of actions.&lt;/span&gt; &lt;/li&gt;&lt;/ul&gt;&lt;h3&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;The s&lt;/span&gt;tages of  making task models:&lt;/span&gt; &lt;/h3&gt;&lt;h4&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;Task models are built in three stages:&lt;/span&gt; &lt;/h4&gt;&lt;ol&gt;&lt;li&gt;an hierarchical logical  &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;decomposition of the tasks represented by a tree-type structure&lt;/span&gt; &lt;/li&gt;&lt;li&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;identifying the relationships between temporal tasks on the same level&lt;/span&gt; &lt;/li&gt;&lt;li&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;identifying objects associated with each task and every action that allow mutual communication.&lt;/span&gt;&lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;The process of identification is done on every level.&lt;/span&gt; &lt;/li&gt;&lt;/ol&gt;&lt;h4&gt;  &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;Temporal Operators used in CTT:&lt;/span&gt; &lt;/h4&gt;&lt;ol&gt;&lt;li&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;T1 | | | T2, independent concurrency: the actions of the two tasks can be done in any order.&lt;/span&gt; &lt;/li&gt;&lt;li&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;T1 |[]| T2, synchronization&lt;/span&gt;:the two tasks have to synchronize certain actions in order to make the exchange of information.&lt;/span&gt; &lt;/li&gt;&lt;li&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;T1 &gt;&gt; T2, activation&lt;/span&gt;:the first task is completed, and the second is activated&lt;/span&gt; &lt;/li&gt;&lt;li&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;T1 []&gt;&gt; T2, enabling with information passing:&lt;/span&gt; in this case is intended to highlight the fact that T1 task is completed, but provides some value for the task T2.&lt;/span&gt; &lt;/li&gt;&lt;li&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;T1 [&gt; T2, deactivation&lt;/span&gt;: if an action of the second task occurs, the first is disabled.&lt;/span&gt; &lt;/li&gt;&lt;li&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;T1 |&gt; T2, suspend:&lt;/span&gt; T2 can place T1 and T2 when finaliezeaza, T1 can even take their execution in the state that has been interrupted.&lt;/span&gt; &lt;/li&gt;&lt;li&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;[T1] optional task .&lt;/span&gt;&lt;/span&gt; &lt;/li&gt;&lt;li&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;Recursion:possibility to include specifications of tasks in the task itself.&lt;/span&gt; &lt;/li&gt;&lt;/ol&gt;&lt;h4&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;The CTT (Concurrent Task Tree Environment)&lt;/span&gt;&lt;/h4&gt;&lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;Concurrent Task Tree Environment is a tool developed by the Human Computer Interaction Group - ISTI (Pisa), this editor can generate task models for a single user or for multiple users. In the address above, you can also find various versions of the download, installation instructions, explaining how to use publications.&lt;/span&gt; &lt;h3&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;Conclusions&lt;/span&gt; &lt;/h3&gt;&lt;ul type="circle"&gt;&lt;li&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;design should be simple and coherent&lt;/span&gt; &lt;/li&gt;&lt;li&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;/span&gt;the flow of tasks must express the evolution of the system online.&lt;/span&gt; &lt;/li&gt;&lt;/ul&gt;&lt;h3&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;Resources&lt;/span&gt; &lt;/h3&gt;&lt;p&gt; &lt;span onmouseover="_tipon(this)" onmouseout="_tipoff()"&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;a href="http://66.102.9.104/translate_c?hl=en&amp;amp;sl=ro&amp;amp;u=http://www.acm.org/uist/archive/adjunct/2002/pdf/posters/p17-ali.pdf&amp;amp;usg=ALkJrhgH_qjch0F6m3WOwDuNyxkX9WB14Q"&gt;http://www.acm.org/uist/archive/adjunct/2002/pdf/posters/p17-ali.pdf&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="google-src-text" style="direction: ltr; text-align: left;"&gt;&lt;a href="http://66.102.9.104/translate_c?hl=en&amp;amp;sl=ro&amp;amp;u=http://giove.isti.cnr.it/CTTE/HowToUse.html&amp;amp;usg=ALkJrhgJwUBZNldXuAWxaRdGyGpC2DEdmQ"&gt;http://giove.isti.cnr.it/CTTE/HowToUse.html&lt;/a&gt;&lt;/span&gt;&lt;a href="http://66.102.9.104/translate_c?hl=en&amp;amp;sl=ro&amp;amp;u=http://www.revistaie.ase.ro/content/42/boboila.pdf&amp;amp;usg=ALkJrhgyM0wnHOJPwZjU4AfDPQKoQGPwLA"&gt;&lt;br /&gt;http://www.revistaie.ase.ro/content/42/boboila.pdf&lt;/a&gt;&lt;/span&gt; &lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7205146261469834587-1307707671598230670?l=advancedinterfaces.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://advancedinterfaces.blogspot.com/feeds/1307707671598230670/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7205146261469834587&amp;postID=1307707671598230670' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7205146261469834587/posts/default/1307707671598230670'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7205146261469834587/posts/default/1307707671598230670'/><link rel='alternate' type='text/html' href='http://advancedinterfaces.blogspot.com/2008/11/concurrent-task-trees-reloaded.html' title='Concurrent Task Trees Reloaded'/><author><name>Bog</name><uri>http://www.blogger.com/profile/12493041806614124742</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_z8c-k94wGC8/SSGxWBNoFzI/AAAAAAAAAjg/IYUI4WYa5wI/S220/n1255665197_108878_1346.jpg'/></author><thr:total>0</thr:total></entry></feed>
