<?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>PHPBlog.it &#187; design</title>
	<atom:link href="http://phpblog.it/category/design/feed/" rel="self" type="application/rss+xml" />
	<link>http://phpblog.it</link>
	<description>Solo un altro blog targato WordPress</description>
	<lastBuildDate>Mon, 31 May 2010 20:12:29 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Getting Real</title>
		<link>http://phpblog.it/2008/10/03/getting-real/</link>
		<comments>http://phpblog.it/2008/10/03/getting-real/#comments</comments>
		<pubDate>Fri, 03 Oct 2008 05:00:14 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[dalla rete]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[programmazione]]></category>
		<category><![CDATA[37signals]]></category>
		<category><![CDATA[getting real]]></category>
		<category><![CDATA[ruby on rails]]></category>

		<guid isPermaLink="false">http://phpblog.it/2008/10/03/getting-real/</guid>
		<description><![CDATA[Nei giorni scorsi ho avuto modo di leggere &#8220;Getting Real: The smarter, faster, easier way to build a successful web application&#8221; un libro creato dalla 37signals per esprimere i propri principi aziendali in tema di business, design, programmazione e marketing. Una lettura che cercavo da tempo, non parlo tanto del titolo o degli autori, parlo [...]]]></description>
			<content:encoded><![CDATA[<p>Nei giorni scorsi ho avuto modo di leggere &#8220;<strong>Getting Real: The smarter, faster, easier way to build a successful web application</strong>&#8221; un libro creato dalla <a href="http://www.37signals.com/" title="37signals">37signals</a> per esprimere i propri principi aziendali in tema di business, design, programmazione e marketing. Una lettura che cercavo da tempo, non parlo tanto del titolo o degli autori, parlo piuttosto dei contenuti e degli argomenti trattati.</p>
<p><span id="more-177"></span><strong>37signals</strong> basandosi sui principi descritti in Getting Real <strong>ha realizzato 5 applicazioni web</strong> (Basecamp, Campfire, Backpack, Writeboard, Ta-da List) che hanno riscosso un grande successo tra gli utenti (privati e aziende), attualmente oltre un milione. Va inoltre ricordato che 37signals con <a href="http://www.loudthinking.com/about.html">David Heinemeier Hansson</a> ha dato vita al <strong>framework di sviluppo <a href="http://www.rubyonrails.org/" title="Ruby on Rails">Ruby on Rails</a></strong>.</p>
<p>Il libro è disponibile in 3 formati:</p>
<ol>
<li><a href="https://gettingreal.37signals.com/purchases/new" title="Getting real in pdf">Getting Real in pdf</a> 19$</li>
<li><a href="http://www.lulu.com/content/383343" title="Getting Real in copia cartacea">Getting Real in copia cartacea</a> 25$<a href="http://www.lulu.com/content/383343" title="Getting Real in copia cartacea"><br />
</a></li>
<li><a href="http://gettingreal.37signals.com/toc.php" title="Getting Real online">Getting Real online</a> Gratis</li>
</ol>
<p>I sedici capitoli del libro propongono <strong>idee interessanti per tutto il processo di progettazione-sviluppo-rilascio</strong> di un progetto, in particolare nel settore web restando tuttavia ad un livello piuttosto alto in modo da poter applicare i principi espressi anche il altri settori senza grossi problemi.</p>
<p>E così che si parte dall&#8217;idea (alla base di tutto chiaramente) focalizzando le proprie energie per definire il core dell&#8217;applicazione ignorando nelle prime fasi i dettagli ed evitando di fasciarsi la testa pensando ad un futuro che non potrebbe mai arrivare con problemi di scalabilità e gestione dei costi. Restare semplici per poter cambiare con maggiore facilità.</p>
<p>Per restare semplici al grido di <strong>less is more</strong> è importante capire quali feature sviluppare e come gestire le possibili richieste valutando i costi nascosti che esse comporterebbero. Dopotutto quello che si vuole è realizzare qualcosa che si possa gestire, gli sforzi sono concentrati verso la creazione di un progetto sano. Piuttosto è meglio cercare di scoprire cosa gli utenti non vogliano vedere nell&#8217;applicazione.</p>
<p>Si passa quindi ai primi passi dell&#8217;applicazione vera e propria, è importante avere qualcosa di funzionante in breve tempo. Partendo dal brainstorming, passando per delle simulazioni (prototipizzazione) in html per poi passare finalmente alla scrittura del codice vero e proprio. Per restare semplici è importante prendere alcune decisioni direttamente senza lasciarle agli utenti, alcune preferenze non sono di vitale importanza ecco quindi che basterà prendere una decisione una volta per tutte piuttosto che aver a che fare con la gestione di esse. Fondamentale è la fase di test durante la quale è bene dare l&#8217;applicazione in pasto agli utenti con delle sessioni di utilizzo reale, lo sviluppatore userebbe degli schemi ben precisi di utilizzo e questo non è ciò che avviene con un nuovo utente.</p>
<p>La parte centrale del libro si occupa della <strong>messa in pratica del progetto</strong> dall&#8217;organizzazione del lavoro e alla scelta dello staff necessario per la crescita del progetto. Utili consigli vengono trasmessi per cercare di ottenere il massimo dalla proprie capacità. Si passa quindi al design dell&#8217;applicazione in termini di <strong>interfaccia come punto fondamentale da definire prima</strong> di scrivere codice, vedere realmente come il progetto si presenterà agli utenti permette di capire molte cose e correggerne altre. Si chiude la parte tecnica con un capitolo dedicato interamente al codice: mantenerlo semplice per gestirlo meglio e poter cambiare più rapidamente, aprire le porte agli altri con rss e api, usare tool e linguaggi che piacciano agli sviluppatori. <strong>A happy programmer is a productive programmer. </strong></p>
<p>Si chiude quindi con quella che è la fase meno tecnica e più commerciale/promozionale parlando di preview e facilità di registrazione/cancellazione, passando al lancio vero e proprio dopo aver generato il giusto hype e cavalcando l&#8217;onda del buzz grazie al quale capire la direzione presa dal progetto in termini di immagine. Passato il lancio non è tutto finito, si continua a lavorare per migliorare il prodotto dando le giuste priorità ai problemi comparsi man mano che gli utenti utilizzano il servizio. Essere pronti al cambiamento è fondamentale.</p>
<p><strong>Il mio consiglio? Leggetelo, leggetelo, leggetelo. Tutto, questo fine settimana. Non ci vorrà molto e di sicuro alla fine avrete una carica in più, se anche una sola delle idee lette vi farà dire &#8220;interessante!&#8221; non sarà stato tempo sprecato. Poi tornate su questo post e parliamone assieme!</strong></p>
<p>Per chi avesse problemi con l&#8217;inglese c&#8217;è la <a href="http://gettingreal.37signals.com/GR_ita.php" title="traduzione in italiano">traduzione in italiano</a> (ma non avendola letta non posso garantire che tutto renda come in lingua originale).</p>
]]></content:encoded>
			<wfw:commentRss>http://phpblog.it/2008/10/03/getting-real/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>User Stories e Use Cases: cosa fare e cosa no</title>
		<link>http://phpblog.it/2008/07/09/user-stories-e-use-cases-cosa-fare-e-cosa-no/</link>
		<comments>http://phpblog.it/2008/07/09/user-stories-e-use-cases-cosa-fare-e-cosa-no/#comments</comments>
		<pubDate>Wed, 09 Jul 2008 05:00:30 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[dalla rete]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[Scenarios]]></category>
		<category><![CDATA[Use Cases]]></category>
		<category><![CDATA[User Stories]]></category>

		<guid isPermaLink="false">http://phpblog.it/2008/07/09/user-stories-e-use-cases-cosa-fare-e-cosa-no/</guid>
		<description><![CDATA[Le user story o use case sono degli strumenti molto utili per il design del software. Prendendo in esame un utente con uno specifico scopo si può realizzare il workflow che l&#8217;utente impega per raggiungere lo scopo stesso. Alcuni suggerimenti e consigli per rendere le user story più utili. Utente generico: questo è l&#8217;errore più [...]]]></description>
			<content:encoded><![CDATA[<p>Le <strong>user story</strong> o <strong>use case </strong>sono degli strumenti molto utili per il design del software. Prendendo in esame un utente con uno specifico scopo si può realizzare il workflow che l&#8217;utente impega per raggiungere lo scopo stesso. Alcuni suggerimenti e consigli per rendere le user story più utili.</p>
<p><span id="more-163"></span><strong>Utente generico</strong>: questo è l&#8217;errore più grosso e dannoso in cui si può incappare quando si generano le user story. Considerare un utente troppo generico porta inevitabilmente a due problemi che rallentano il rilascio del sotware. Primo: le necessità dell&#8217;utente sono talmente tante che ci si perderebbe ipotizzando tutte le features realizzabili. Secondo: non si potrebbe raggiungere il livello di dettaglio sperato per l&#8217;implementazione. Quando si realizza una user story è bene avere in mente uno specifico utente. Quest&#8217;utente ha solo un limitato numero di requisiti e può rispondere in modo dettagliato a delle domande.</p>
<p><strong>Utenti poco conosciuti / scenario non familiare</strong>: il design del software dà i risultati migliori quando si progetta software per sè stessi. Le user story sono facili da ottenere e molto accurate. Una buona fetta di software ben progettati è realizzata da chi lo fa per i propri bisogni. Quando invece ci si trova a creare software per user story che non si conoscono e per scenari/domini non conosciuti le cose si complicano. Intervistare gli utenti è il primo passo per raccogliere informazioni, sicuramente qualcosa verrà dimenticato e solo i primi test con il prototipo dell&#8217;applicazione potranno segnalare questi problemi. Due suggerimenti: il primo è quello di impersonare l&#8217;utente seguendo l&#8217;intero processo in prima persona, il secondo è quello di dividere gli utenti in modo da individuare quelli che analizzeranno le prime versioni del software (alpha e beta). I feedback ricevuti in questa fase daranno informazioni più importanti di quelle raccolte dalle interviste.</p>
<p><strong>Feature specifiche o </strong><strong>non-user feature</strong>: quando si lavora a feature che gli utenti non vedono il concetto di user story viene un po&#8217; meno, si pensi per esempio ad architettura, amministrazione etc&#8230;basta ricordare due cose per rendere le user story più concrete. In primo luogo gli amministratori di sistema e gli sviluppatori sono anch&#8217;essi degli utenti. Secondo: realizzare ciò &#8220;che sta sotto&#8221;, parlando di infrastruttura, più tardi possibile in modo da rispondere prontamente agli utenti e risparmiando tempo prezioso nel caso in cui ci si accorgesse che l&#8217;infrastruttura pensata non corrisponde alle reali esigenze.</p>
<p><strong>Storie testuali</strong>: è molto facile dilungarsi in diagrammi e descrizioni che alla fine sono difficili da leggere e per l&#8217;utente anche difficili da comprendere. La miglior soluzione è quella di <strong>realizzare immagini e storyboard</strong> al posto del testo. Una storyboard è una specie di flow chart in cui l&#8217;utente vede le componenti in gioco, schermate del sistema che userà e link che rappresentano le transizioni tra una schermate ed un&#8217;altra. In questo modo si può evitare di dover scrivere la maggior parte del testo e dei commenti posticipando il tutto ad un secondo momento.</p>
<p>Consiglio la lettura di <a href="http://blog.assembla.com/assemblablog/tabid/12618/bid/5543/Do-s-and-Don-ts-for-User-Stories-Use-Cases-Scenarios.aspx" title="Do's and Don'ts for User Stories, Use Cases, Scenarios"><strong>Do&#8217;s and Don&#8217;ts for User Stories, Use Cases, Scenarios</strong></a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://phpblog.it/2008/07/09/user-stories-e-use-cases-cosa-fare-e-cosa-no/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
