<?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>i3Factory</title>
	<atom:link href="http://i3factory.com/it/feed/" rel="self" type="application/rss+xml" />
	<link>http://i3factory.com</link>
	<description>La tua Iphone, iPad &#038; Android Application Factory</description>
	<lastBuildDate>Mon, 07 May 2012 08:56:53 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Guida al Design di App per iOS (iPhone, iPod Touch &amp; iPad)</title>
		<link>http://i3factory.com/it/guida-al-design-di-app-per-ios-iphone-ipod-touch-ipad/</link>
		<comments>http://i3factory.com/it/guida-al-design-di-app-per-ios-iphone-ipod-touch-ipad/#comments</comments>
		<pubDate>Mon, 30 Apr 2012 12:59:49 +0000</pubDate>
		<dc:creator>Igor Wolfango Schiaroli</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[designers]]></category>
		<category><![CDATA[iOS]]></category>

		<guid isPermaLink="false">http://i3factory.com/it/?p=1990</guid>
		<description><![CDATA[<p>Di norma gli sviluppatori non sono guru del Photoshop e del design in generale e certamente odiano rifare il proprio lavoro per venir incontro alle esigenze degli esperti.<br />
Così abbiamo deciso di segnalarvi una guida <em>infographic</em> pensata per i progettisti che intendono fare App per  iOS  e aiutarli spedire file corretti per lo sviluppatore.</p>

No related posts.]]></description>
			<content:encoded><![CDATA[<div class="AWD_facebook_likebutton "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fi3factory.com%2Fit%2Fguida-al-design-di-app-per-ios-iphone-ipod-touch-ipad%2F&amp;send=true&amp;layout=standard&amp;width=300&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=&amp;height=40&ref=" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:40px;" allowTransparency="true"></iframe></div><ul class="lang_switch"></ul>
<p>Di norma gli sviluppatori non sono guru del Photoshop e del design in generale e certamente odiano rifare il proprio lavoro per venir incontro alle esigenze degli esperti.<br />
Così abbiamo deciso di segnalarvi una guida <em>infographic</em> pensata per i progettisti che intendono fare App per  iOS  e aiutarli spedire file corretti per lo sviluppatore.</p>
<p>Lo stile di <em>infographic</em> e&#8217; quello di spiegare tutto con un&#8217;immagine, che vo proponiamo di seguito:</p>
<p style="text-align: center;"><a href="http://www.i3factory.com/wp-content/uploads/iOS-designer-guide_guida_Design_app_iPhone_iPod-touch_iPad.jpg"><img class="aligncenter  wp-image-1991" title="iOS-designer-guide_guida_Design_app_iPhone_iPod-touch_iPad" src="http://www.i3factory.com/wp-content/uploads/iOS-designer-guide_guida_Design_app_iPhone_iPod-touch_iPad.jpg" alt="" width="420" height="3870" /></a></p>
<p style="text-align: center;">
<p style="text-align: left;">Innanzi tutto come vediamo nell&#8217;immagine e&#8217; necessario ricordare le dimensioni dei differendi device di Apple.</p>
<p style="text-align: left;">Iphone e ipod touch fino alla terza generazione: <strong>320 x 480 px</strong> / 163 PPI<br />
Iphone4 e ipod tpuch di ultima generazione:<strong> 640 x 960 px</strong> / 326 PPI<br />
iPad &amp; iPad2 : <strong>1024 x 768 px</strong> / 132 PPI<br />
iPad 3 : <strong>2048 x 1536 px / </strong>264 PPI<strong></strong></p>
<p style="text-align: left;">Apple raccomanda di utilizare icone<strong>:<br />
<a href="http://www.i3factory.com/wp-content/uploads/design_ios_button_control.jpg"><img class="alignleft size-full wp-image-1993" title="design_ios_button_control" src="http://www.i3factory.com/wp-content/uploads/design_ios_button_control.jpg" alt="" width="169" height="68" /></a><br />
44&#215;44 px</strong> per i <strong>bottoni di controllo</strong></p>
<p style="text-align: left;">
<p style="text-align: left;">
<p>Un&#8217;altro suggerimento e&#8217; quello di preparare le icone partendo <strong></strong>da dimensioni 512 x 512 px e 1024&#215;1024 px nel caso di iPad con retina display, facendo sempre attenzione a visonare il design quando queste vengono rimpicciolite.</p>
<p>Il resto dei suggerimenti sono molto piu&#8217; chiari se leggete con attenzione cio&#8217; che e&#8217; segnalato nell&#8217;immagine postata sopra.</p>
<p style="text-align: left;">
<p style="text-align: left;">FONTE:   un post <em>infographic</em>, ovvero Tutto riassunto da un&#8217;immagine,   inserito nel blog FSM (http://www.funkyspacemonkey.com/ios-app-designers-guide-infographic) <strong><br style="text-align: left;" /></strong></p>
<p style="text-align: left;">
<div class="AWD_facebook_likebutton "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fi3factory.com%2Fit%2Fguida-al-design-di-app-per-ios-iphone-ipod-touch-ipad%2F&amp;send=true&amp;layout=standard&amp;width=300&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=&amp;height=40&ref=" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:40px;" allowTransparency="true"></iframe></div><p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://i3factory.com/it/guida-al-design-di-app-per-ios-iphone-ipod-touch-ipad/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Principi di design in un prodotto e per un&#8217;app iOS e Android: iPhone, iPad, Android App Design</title>
		<link>http://i3factory.com/it/principi-di-design-in-un-prodotto-e-per-unapp-ios-e-android-iphone-ipad-android-app-design/</link>
		<comments>http://i3factory.com/it/principi-di-design-in-un-prodotto-e-per-unapp-ios-e-android-iphone-ipad-android-app-design/#comments</comments>
		<pubDate>Fri, 13 Apr 2012 05:48:57 +0000</pubDate>
		<dc:creator>Igor Wolfango Schiaroli</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[10 principi]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[designers]]></category>
		<category><![CDATA[developmet]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[oltre]]></category>
		<category><![CDATA[valutazione euristica]]></category>

		<guid isPermaLink="false">http://i3factory.com/it/?p=1978</guid>
		<description><![CDATA[<p>Quando si decide di progettare un'App è sempre necessario seguire i principi di base della progettazione industriale.<br />
Molte persone  pensano di commissionare un'app, ma quando si trovano a dover descrivere l'applicazione e quindi come la loro idea possa essere tradotta nell'esperienza dall'utente e nell'interfacia grafica (User Experience &#38; User Interface)   si trovano impreparati e si nascondono molto spesso dietro frasi del tipo "non saprei questo è un lavoro per tecnici, pensateci voi tecnici!".</p>

Related posts:<ol>
<li><a href='http://i3factory.com/it/ios-tecniche-per-non-appesantire-le-app-in-vista-di-ipad-3/' rel='bookmark' title='iOS: Tecniche per non appesantire le App; sviluppare per iPad 3'>iOS: Tecniche per non appesantire le App; sviluppare per iPad 3</a></li>
<li><a href='http://i3factory.com/it/stimare-il-tempo-di-sviluppo-software-come-per-app-per-ios-iphone-e-ipad-android/' rel='bookmark' title='Stimare il tempo di sviluppo software, come per App iOS, iPhone e iPad, &amp; Android'>Stimare il tempo di sviluppo software, come per App iOS, iPhone e iPad, &#038; Android</a></li>
<li><a href='http://i3factory.com/it/mockapp-un-tool-per-il-design-di-app-per-iphone/' rel='bookmark' title='MockApp: un tool per il design di app per iPhone'>MockApp: un tool per il design di app per iPhone</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="AWD_facebook_likebutton "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fi3factory.com%2Fit%2Fprincipi-di-design-in-un-prodotto-e-per-unapp-ios-e-android-iphone-ipad-android-app-design%2F&amp;send=true&amp;layout=standard&amp;width=300&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=&amp;height=40&ref=" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:40px;" allowTransparency="true"></iframe></div><ul class="lang_switch"></ul>
<p style="text-align: center;"><a href="http://www.i3factory.com/wp-content/uploads/principi-design-app-iphone-ipad-android-mobille-touch1.png"><img class="aligncenter  wp-image-1981" title="principi-design-app-iphone-ipad-android-mobille-touch" src="http://www.i3factory.com/wp-content/uploads/principi-design-app-iphone-ipad-android-mobille-touch1.png" alt="" width="576" height="356" /></a></p>
<p>Quando si decide di progettare un&#8217;App è sempre necessario seguire i principi di base della progettazione industriale.<br />
Molte persone  pensano di commissionare un&#8217;app, ma quando si trovano a dover descrivere l&#8217;applicazione e quindi come la loro idea possa essere tradotta nell&#8217;esperienza dall&#8217;utente e nell&#8217;interfacia grafica (User Experience &amp; User Interface),  si trovano impreparati e si nascondono molto spesso dietro frasi del tipo &#8220;non saprei questo è un lavoro per tecnici, pensateci voi tecnici!&#8221;.<br />
Inutile aggiungere che quando poi i cosidetti &#8220;Tecnici&#8221; si mettono al lavoro queste persone, che non hanno vuluto delegare il concept, inizieranno a chiedere modifiche sostanziali dispensando consigli e ragguagli di ogni genere e quasi sempre solo dopo che l&#8217;app e&#8217; arrivata alla fase finale del suo sviluppo.<br />
E&#8217; ben noto il concetto secondo il quale i &#8220;tecnici&#8221;, e gli ingenieri, prima costruiscono il cuore dell&#8217;applicazione e poi ci adattano il design e fanno il contrario, loro malgrado, solo se il commitment e&#8217; valido e convincente e, sopratutto, quando questo è deciso fin dall&#8217;inzio delle fasi di progettazione.<br />
Di norma con l&#8217;approccio &#8220;<em>fate voi che poi vediamo</em>&#8221; , voluto dai professionisti distratti e poco preparati,  il risultato estetico finale può risultare quantomai scadente dato che ogni ingeniere sa bene che, prima di mettersi a scrivere codice, bisogna aver chiari i principi dell&#8217;interfaccia utente unitamente alla descrizione delle funzionalità legate all&#8217;esperienza dell&#8217;utente stesso.</p>
<p>Alcuni sofisti mi potranno criticare per l&#8217;uso della parola &#8220;utente&#8221;, che a volte risulta poco accattivante se si pensa che alla fine gli utenti non sono altro che persone, ovvero individui utilizzatori. Questa differenza di significato delle parole mi è molto chiara, ma per semplicità comunicativa e sopratutto per necessità di traduzione preferisco usare la parola &#8220;utente&#8221; o &#8220;utilizzatore&#8221; al posto dell&#8217; &#8220;<em>individuo</em>&#8220;.</p>
<p><strong>10 principi per un buon design di un&#8217;app e di un prodotto</strong></p>
<p>Inanzi tutto,  per citare Steve Jobs,  propongo  una delle definizioni di design che più mi ha convinto:<br />
<em>&#8220;Il design è l&#8217;anima che si trova al cuore di un oggetto creato dall&#8217;uomo e che gradualmente si estrinseca ai piani esteriori.&#8221;</em></p>
<p>Di certo lo stesso Jobs si ispirava ai principi di <em>Dieter Rams</em>, ex-designer della Braun, che ha enumerato i suoi <strong>10 principi </strong>per un  buon design di un prodotto:</p>
<div id="attachment_1982" class="wp-caption aligncenter" style="width: 560px"><a href="http://www.i3factory.com/wp-content/uploads/Dieter_Rams-poduct-designs.jpg"><img class="size-full wp-image-1982" title="Dieter_Rams-poduct-designs" src="http://www.i3factory.com/wp-content/uploads/Dieter_Rams-poduct-designs.jpg" alt="" width="550" height="366" /></a><p class="wp-caption-text">Dieter Rams e i suoi prodotti di design</p></div>
<ul>
<li>Un buon design deve essere innovativo.</li>
<li>Un buon design deve rendere il prodotto utile.</li>
<li>Un buon design deve essere dotato di estetica.</li>
<li>Un buon design deve aiutare a capire il prodotto.</li>
<li>Un buon design non deve essere invasivo, mancare di riservatezza.</li>
<li>Un buon design deve essere onesto.</li>
<li>Un buon design deve essere durevole.</li>
<li>Un buon design è la conseguenza dell’ultimo dettaglio.</li>
<li>Un buon design si deve preoccupare dell’ambiente.</li>
<li>Un buon design deve contenere il minor design possibile.</li>
</ul>
<p>Naturalmente è facile capire che questi principi si adattano sia al design dei prodotti industriali, ma anche per il design delle Applicazioni, sopratutto se queste verranno utilizzate sui prodotti che sono stati costruiti proprio secondo i buoni principi del design industriale, come lo sono tutti i prodotti Apple.</p>
<p><strong>Progettare meglio, lavorare meno</strong></p>
<p><em>Dieter Rams</em>, creatore dei 10 principi, ha sempre espresso il suo approccio al design con la frase: “Weniger, aber besser” , ovvero “<em>Meno, ma meglio</em>” .<br />
Il minimalismo , oltre ad essere molto elegante, è sicuramente il modo migliore per permettere a tutti gli utenti-utilizzatori di comprendere d&#8217;istinto il prodotto e le sue funzionalità e rende il prodotto stesso, o l&#8217;App,  amichevole all&#8217;uso (<em>user friendly</em>) e &#8220;puro&#8221;.</p>
<p>Di seguito riporto i commenti , tradotti dall&#8217;inglese, dello stesso Rams sui principi da lui stesso enunciati:</p>
<ol>
<li> Le possibilità d&#8217;innovazione non sono esaurite. Lo sviluppo tecnologico offre sempre nuove opportunità per il design innovativo. Ma il design innovativo si sviluppa sempre assieme alla tecnologia innovativa, e non può mai essere fine a se stesso.<em><br />
(The possibilities for innovation are not, by any means, exhausted. Technological development is always offering new opportunities for innovative design. But innovative design always develops in tandem with innovative technology, and can never be an end in itself )</em></li>
<li>Un prodotto viene acquistato per essere utilizzato. Esso deve soddisfare determinati criteri, non solo funzionali, ma anche psicologici ed estetici. Un buon design sottolinea l’utilità di un prodotto, mentre trascura tuuto ciò che potrebbe sminuirla.<br />
<em>(A product is bought to be used. It has to satisfy certain criteria, not only functional, but also psychological and aesthetic. Good design emphasises the usefulness of a product whilst disregarding anything that could possibly detract from it. )</em></li>
<li>La qualità estetica di un prodotto è parte integrante della sua utilità, perché i prodotti che utilizziamo ogni giorno influiscono sulla nostra persona e il nostro benessere. Ma solo gli oggetti ben costruiti possono essere belli.<br />
<em>(The aesthetic quality of a product is integral to its usefulness because products we use every day affect our person and our well-being. But only well-executed objects can be beautiful.)</em></li>
<li>Chiarifica la struttura del prodotto. Meglio ancora, si può far parlare il prodotto. Meglio se esso è auto-esplicativo.<br />
<em>(It clarifies the product’s structure. Better still, it can make the product talk. At best, it is self-explanatory.) </em></li>
<li>I prodotti che soddisfano un fine sono come strumenti. Non sono né oggetti decorativi, né opere d’arte. Il loro Design dovrebbe quindi essere sia neutrale che sobrio, per lasciare spazio all’auto-espressione dell’utilizzatore.<br />
<em>(Products fulfilling a purpose are like tools. They are neither decorative objects nor works of art. Their design should therefore be both neutral and restrained, to leave room for the user’s self-expression.) </em></li>
<li>Non costruire il prodotto in modo da farlo apparire più innovativo, potente o importante di quanto sia realmente. E non tentare di manipolare il consumatore con promesse che non possono essere mantenute.<br />
<em>(It does not make a product more innovative, powerful or valuable than it really is. It does not attempt to manipulate the consumer with promises that cannot be kept.) </em></li>
<li>Evita di seguire la moda ma non appare mai antiquato. A differenza del design “alla moda”, il prodotto deve durare per molti anni – anche nella società dell’usa e getta di oggi.<br />
<em>(It avoids being fashionable and therefore never appears antiquated. Unlike fashionable design, it lasts many years – even in today’s throwaway society.) </em></li>
<li>Nulla deve essere arbitrario o lasciato al caso. La cura e la precisione, nel processo di progettazione, mostrano il rispetto nei confronti dei consumatori.<br />
<em>(Nothing must be arbitrary or left to chance. Care and accuracy in the design process show respect towards the consumer.) </em></li>
<li>Il Design offre un importante contributo alla salvaguardia dell’ambiente. Esso conserva le risorse e riduce al minimo l’inquinamento fisico e visivo durante tutto il ciclo di vita del prodotto.<br />
<em>(Design makes an important contribution to the preservation of the environment. It conserves resources and minimises physical and visual pollution throughout the lifecycle of the product.) </em></li>
<li>Meno, ma meglio – questo perchè ci si concentra sugli aspetti essenziali, e i prodotti non sono appesantiti da elementi non essenziali. Torna alla purezza, torna alla semplicità.<br />
<em>(Less, but better – because it concentrates on the essential aspects, and the products are not burdened with non-essentials.Back to purity, back to simplicity.)</em></li>
</ol>
<p><strong>Valutazione Euristica</strong></p>
<p>A questo punto non mi resta che descrivere anche la cosidetta <em>valutazione euristica</em>.<br />
La Valutazione Euristica è un metodo ispettivo che viene effettuato esclusivamente dagli esperti di usabilità  e consente di valutare se una serie di principi generali di progettazione sono stati applicati correttamente nell’interfaccia utente.<br />
Le linee guida (“<strong><a title="UI guidelines , linee guida utente, possono essere valide per app iOS, iPhone, iPad e Android" href="http://www.useit.com/papers/heuristic/heuristic_list.html" target="_blank">Ten Usability Heuristics</a></strong>”) su cui si basa questo tipo do valutazione sono state sviluppate negli anni 1990 da <strong>Jakob Nielsen</strong> e <strong>Rolf Molich</strong> e sono state pensate per i desktop software , ma anche in questo caso questi principi sono ancora validi per le applicazioni studiate per touchscreen, come le App iOS per iPhone e iPad ,  per le  app Android e Window Mobile.</p>
<div>
<div>
<p>Con la <em>valutazione euristica</em> si rileva quindi la fedeltà e l&#8217;aderenza del prodotto ai principi di <em>usabilità , </em>che potete trovare tradotti in italiano sul sito<em> <a title="link ai 10 principi di usabilità usati per la valutazione euristica" href="http://www.urp.it/cpusabile/index7ca8.html" target="_blank">http://www.urp.it/cpusabile/index7ca8.html</a>.</em></p>
<p>Questo metodo, che come abbiamo detto e&#8217; di tipo ispettivo, prevede il solo coinvolgimento degli esperti di usabilità e non chiama in causa gli utenti finali: per questo motivo è facilmente eseguibile, economico e rapido ma non tiene conto delle possibili evoluzioni delle esigenze del pubblico e quindi, a mio modesto parere, risulta certamente molto utile ma posside in se il limite di essere poco flessibile ; e la poca flessibilità di norma puo&#8217; castrare l&#8217;evoluzione creativa.</p>
<p>La valutazione euristica consiste quindi in una serie test di navigazione del prodotto che vengono effettuati separatamente da ciascun &#8220;esperto&#8221;. Durante il test di utilizzo,  il prodotto software viene valutato sia per gli aspetti statici dell&#8217;interfaccia , come ad esempio il layout delle finestre, le  etichette, i pulsanti ecc., e  sia per gli aspetti dinamici e d&#8217;interazione (logica,  processi e flussi).<br />
Una volta terminate le indagini, gli esperti si riuniscono in brainstorming, verificano i risultati e li confrontano con i principi forniti dalle linee guida per arrivare a delle conclusioni comuni.</p>
<p><strong>Conclusioni</strong><br />
Il metodo di valutazione euristica è certamente  molto utile e spesso necessario, ma credo  possa anche essere fatto anche d&#8217;istinto se <em>&#8220;l&#8217;esperto&#8221;</em> che testa l&#8217;app e&#8217; un vecchio <em>guru</em> del settore.<br />
Il dubbio che ho quando si seguono questi metodi, molto rigidi, è che si può facilmente cadere nel rischio d&#8217;ingabbiare le valutazioni in un sistema burocratico &#8211; con le sue regole scolpite &#8211; che limita fortemente quelle persone creative che , come suggerito dallo stesso creatore dell&#8217;iPhone e dell&#8217;Ipad, &#8220;<em>Pensano Differente</em>&#8220;.</p>
<p style="text-align: left;"><strong><a href="http://www.i3factory.com/wp-content/uploads/think_different_APP.jpg"><img class="aligncenter  wp-image-1979" title="think_different_APP" src="http://www.i3factory.com/wp-content/uploads/think_different_APP.jpg" alt="" width="576" height="360" /></a><br />
Think Different</strong> è infatti sempre stata la chiave di volta del grande successo di ogni prodotto, in ogni settore.</p>
<p>Ovviamente nessuno dei grandi casi di successo , basati sul modello &#8220;Think different&#8221;, ha mai ignorato l&#8217;esistenza dei principi di Nielsen che sono una delle basi culturali di questo settore.<br />
Non bisogna mai ignorare le basi, ma neppure rimanere chiusi in pochi principi enunciati, quanto grandi e importanti essi siano, se si vuole cercare di essere innovativi e rivoluzionari.</p>
</div>
</div>
<p>&nbsp;</p>
<div class="AWD_facebook_likebutton "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fi3factory.com%2Fit%2Fprincipi-di-design-in-un-prodotto-e-per-unapp-ios-e-android-iphone-ipad-android-app-design%2F&amp;send=true&amp;layout=standard&amp;width=300&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=&amp;height=40&ref=" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:40px;" allowTransparency="true"></iframe></div><p>Related posts:<ol>
<li><a href='http://i3factory.com/it/ios-tecniche-per-non-appesantire-le-app-in-vista-di-ipad-3/' rel='bookmark' title='iOS: Tecniche per non appesantire le App; sviluppare per iPad 3'>iOS: Tecniche per non appesantire le App; sviluppare per iPad 3</a></li>
<li><a href='http://i3factory.com/it/stimare-il-tempo-di-sviluppo-software-come-per-app-per-ios-iphone-e-ipad-android/' rel='bookmark' title='Stimare il tempo di sviluppo software, come per App iOS, iPhone e iPad, &amp; Android'>Stimare il tempo di sviluppo software, come per App iOS, iPhone e iPad, &#038; Android</a></li>
<li><a href='http://i3factory.com/it/mockapp-un-tool-per-il-design-di-app-per-iphone/' rel='bookmark' title='MockApp: un tool per il design di app per iPhone'>MockApp: un tool per il design di app per iPhone</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://i3factory.com/it/principi-di-design-in-un-prodotto-e-per-unapp-ios-e-android-iphone-ipad-android-app-design/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Flashback, Apple ha già aggiornato: ma non è un virus</title>
		<link>http://i3factory.com/it/flashback-apple-ha-gia-aggiornato-ma-non-e-un-virus/</link>
		<comments>http://i3factory.com/it/flashback-apple-ha-gia-aggiornato-ma-non-e-un-virus/#comments</comments>
		<pubDate>Wed, 11 Apr 2012 18:42:02 +0000</pubDate>
		<dc:creator>Igor Wolfango Schiaroli</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[antivirus]]></category>
		<category><![CDATA[malware]]></category>
		<category><![CDATA[Virus]]></category>

		<guid isPermaLink="false">http://i3factory.com/it/?p=1970</guid>
		<description><![CDATA[<p>Ancora una volta la stampa pubblica frasi d'impatto per far credere che anche il sistema Apple sia stato infettato da un Virus.</p>
<p><strong>Nell'articolo descriviamo di cosa si tratta in realtà,  come trovarlo e nel caso rimuoverlo.</strong></p>
<div></div>

Related posts:<ol>
<li><a href='http://i3factory.com/it/downgrade-di-ios-come-far-tornare-il-vostro-iphone-e-ipad-aggiornato-con-ios-5-0-1-a-ios-4-3-3-4-3-4-4-3-5-5-0-0/' rel='bookmark' title='Downgrade di IOS: come far tornare il vostro iPhone e iPad aggiornato con iOS 5.0.1 a iOS 4.3.3 / 4.3.4 / 4.3.5 / 5.0.0'>Downgrade di IOS: come far tornare il vostro iPhone e iPad aggiornato con iOS 5.0.1 a iOS 4.3.3 / 4.3.4 / 4.3.5 / 5.0.0</a></li>
<li><a href='http://i3factory.com/it/virus-per-mac-osx-le-solite-storie-tsunami-e-un-semplice-trojan/' rel='bookmark' title='Virus per Mac Osx, le solite storie. Tsunami è un semplice trojan Pdf'>Virus per Mac Osx, le solite storie. Tsunami è un semplice trojan Pdf</a></li>
<li><a href='http://i3factory.com/it/apple-store-no-rss-applications/' rel='bookmark' title='Apple Store: no RSS applications?'>Apple Store: no RSS applications?</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="AWD_facebook_likebutton "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fi3factory.com%2Fit%2Fflashback-apple-ha-gia-aggiornato-ma-non-e-un-virus%2F&amp;send=true&amp;layout=standard&amp;width=300&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=&amp;height=40&ref=" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:40px;" allowTransparency="true"></iframe></div><ul class="lang_switch"></ul>
<p>&nbsp;</p>
<p><a href="http://www.i3factory.com/wp-content/uploads/apple-full2.png"><img class="aligncenter size-full wp-image-1971" title="apple-full2" src="http://www.i3factory.com/wp-content/uploads/apple-full2.png" alt="" width="345" height="348" /></a>Ancora una volta la stampa pubblica frasi d&#8217;impatto per far credere che anche il sistema Apple sia stato infettato da un Virus.</p>
<p>Sicuramente un tipo di infezione c&#8217;e&#8217; stata ma come già avevamo spiegato in un precedente articolo , i sistemi basati su unix molto difficilmente possono essere infettati da virus veri e propri.</p>
<p>Quel che sta succedendo in questi giorni è che un Malware, e non un virus, ha infettato alcuni mac i cui utenti hanno disgraziatamente istallato una falsa estensione per flash, che di norma non andrebbe istallata senza le dovute precauzioni.</p>
<p>Chi possiede un Mac sa benissimo che il proprio sistema funziona a dovere e che prima di istallare aggiornamenti al di fuori dei metodi automatici e tradizionali bisogna informarsi in quanto si può rischiare qualche sorpresa.</p>
<p>Spiegheremo ora come rimuovere questo malware denominato Flashback, ma prima di farlo vi proporrò ancora una volta la <strong>differenza tra Virus informatico  e malware.</strong></p>
<p><strong></strong>Riprendendo un vecchio articolo di youtek.it (<a title="link esterno" href="http://youtek.it/differenza-tra-virus-e-malware/" target="_blank">http://youtek.it/differenza-tra-virus-e-malware/</a>)  cerchiamo di capire le differenze , che a volte sembrano dei veri e propri rompicapo dei tecnici;</p>
<p><strong>Cos’è un virus?</strong></p>
<p>E’ un frammento di software, che una volta avviato infetta file,cartelle, registro di sistema insomma tutto cio’ che trova sul nostro pc! Ovviamente piu’ e’ potente il virus piu’ danni causa.</p>
<p>Spesso quelli di alta’ pericolosita’ sono difficilmente rintracciabili dall’utente.<br />
<strong></strong></p>
<p><strong>Cos’è un Malware?</strong></p>
<p>E’ un qualsiasi software creato per danneggiare un computer o un sistema informatico. Dove esso puo’ causare vari danni di varie identita’. Non a caso il nome MALWARE che significa letteralmente “Programma Malvagio” o piu’ corretto chiamarlo Codice Maligno.</p>
<p>&nbsp;</p>
<p>Cio&#8217; che non mi piace è che molti autorevoli testate giornalistiche hanno aperto la sezione tecnologia con titoli e sottotitoli che inneggiavano al fatto che Apple avesse un virus, che avesse perso la verginità e che addirittura questo suddetto virus fosse pericolosissimo.</p>
<p>Risulta totalmente inutile cercare di capire il motivo di tanta superficialità, ignoranza e poca innocenza da parte di quei giornalisti che, senza pudore, scrivono di cose si cui non capiscono quasi nulla o peggio hanno solo voglia di confondere le idee , già peraltro confuse, dei tanti lettori che si definiscono non tecnici.</p>
<p><strong>La verità e la decenza</strong></p>
<p>Ovviamente la verità non è a disposizione di tutti ma cercherò comunque di definire l&#8217;argomento e di spiegare come rimuovere questo malware.</p>
<p>L&#8217;allarme infezione viene lanciato da Dr. Web, un&#8217;azienda russa di antivirus, e prontamente Apple ha già rilasciato il codice (patch) per evitare di incappare in questo pericolo poiché Flashback viene istallato nel sistema utilizzando una vulnerabilità Java dei browser internet Safari camuffandosi da estensione per Flash che viene chiesto di istallare.</p>
<p><a href="http://www.i3factory.com/wp-content/uploads/Java-update.jpg"><img class="aligncenter size-full wp-image-1972" title="Java-update" src="http://www.i3factory.com/wp-content/uploads/Java-update.jpg" alt="" width="400" height="186" /></a></p>
<p>Per evitare che il proprio mac sia esposto a rischi, <strong>è necessario installare quanto prima la patch Java proposta da Apple</strong>.</p>
<p>Queste le note di rilascio da Cupertino:</p>
<blockquote><p>Java per Mac OS X 2012-001 fornisce una migliore compatibilità, sicurezza e affidabilità aggiornando Java SE 6 alla versione 1.6.0_31.</p></blockquote>
<p>Chiudi tutti i browser e le applicazioni Java prima di installare questo aggiornamento.</p>
<p>Consulta: <em>http://support.apple.com/kb/HT5055?viewlocale=it_IT</em>  per ulteriori dettagli su questo aggiornamento.</p>
<p>Consulta: <em>http://support.apple.com/kb/HT1222?viewlocale=it_IT</em>  per informazioni sul contenuto di sicurezza di questo aggiornamento.</p>
<p>oppure</p>
<p>e&#8217; stata rilasciata un&#8217; applicazione  di terze parti che, vi permette in due fasi il controllo:</p>
<ol>
<li>Scaricate FlashbackChecker – <a href="https://github.com/jils/FlashbackChecker/wiki"><strong>Download</strong></a> -</li>
<li>Decomprimere ed eseguire l’applicazione FlashbackChecker e cliccate sul pulsante “Check for Infection Flashback”</li>
</ol>
<p>Se viene visualizzata la voce “No Signs of infection were found”(Nessuna infezione è stata trovata) significa che le probabilità che il vostro Mac sia infetto sono bassissime. Se invece appare un messaggio “Potential Issue found” (Trovato Potenziale problema) il vostro Mac potrebbe essere infetto.</p>
<p><strong>Rimozione Manuale</strong></p>
<p>Di seguito riportiamo rimozione del malware come redatta da F-Secure.</p>
<p>1 &#8211; Aprire il terminale e digitare “defaults read /Applications/Safari.app/Contents/Info LSEnvironment”<br />
2 &#8211; Prendere nota dei codici DYLD_INSERT_LIBRARIES e premere nuovamente invio<br />
3 &#8211; Se si riceve un messaggio d’errore simile a “The domain/default pair of (/Applications/Safari.app/Contents/Info, LSEnvironment) does not exist” non si è infetti.<br />
4 &#8211; Se i file vengono effettivamente trovati, digitare “grep -a -o ‘__ldpath__[ -~]*’ %percorso_del_punto_2% ” e prendere nota del valore di fianco a “__ldpath__”<br />
5 &#8211; Eseguire i comandi “sudo defaults delete /Applications/Safari.app/Contents/Info LSEnvironment” e “sudo chmod 644 /Applications/Safari.app/Contents/Info.plist”, cancellando poi i file trovati nel secondo punto e nel quarto.<br />
6 &#8211; Eseguire il comando “defaults read ~/.MacOSX/environment DYLD_INSERT_LIBRARIES” e, se si riceve un messaggio come “The domain/default pair of (/Users/joe/.MacOSX/environment, DYLD_INSERT_LIBRARIES) does not exist” il trojan è stato correttamente rimosso. In caso contrario, eseguire nuovamente “grep -a -o ‘__ldpath__[ -~]*’ %percorso_del_punto 4% “, prendendo nota dei valori.<br />
7 &#8211; Dopo aver eseguito “defaults delete ~/.MacOSX/environment DYLD_INSERT_LIBRARIES launchctl unsetenv DYLD_INSERT_LIBRARIES”, cancellare i file indicati nei punti precedenti.</p>
<h3><strong>Scheda del Malware </strong></h3>
<p>Come riportato da F-Secure il malware viene definito come trojan (cavallo di troia)</p>
<p><strong>Detection Names:</strong>Trojan-Downloader:OSX/Flashback.K</p>
<p><strong>Category :</strong>Malware<br />
<strong>Type:</strong>Trojan-Downloader<br />
<strong>Platform:</strong>OSX</p>
<div>
<p><strong>Summary</strong></p>
<div>Trojan-Downloader:OSX/Flashback.K connects to a remote site to download its payload; on successful infection, the malware modifies targeted webpages displayed in the web browser.</div>
<div></div>
<div>
<div>
<p><strong>Disinfection </strong></p>
<div>
<p><strong>Manual Removal</strong></p>
<p><strong>Caution:</strong> Manual disinfection is a risky process; it is recommended only for advanced users. Otherwise, please seek professional technical assistance.<br />
<strong>Manual Removal Instructions</strong></p>
<div id="articles">
<ul type="none">
<li>1. Run the following command in Terminal:defaults read /Applications/Safari.app/Contents/Info LSEnvironment</li>
<li>2. Take note of the value, DYLD_INSERT_LIBRARIES</li>
<li>3. Proceed to step <strong>8</strong>if you got the following error message:&#8221;The domain/default pair of (/Applications/Safari.app/Contents/Info, LSEnvironment) does not exist&#8221;</li>
<li>4. Otherwise, run the following command in Terminal:grep -a -o &#8216;__ldpath__[ -~]*&#8217; <strong>%path_obtained_in_step2%</strong></li>
<li>5. Take note of the value after &#8220;__ldpath__&#8221;</li>
<li>6. Run the following commands in Terminal (first make sure there is only one entry, from step 2):sudo defaults delete /Applications/Safari.app/Contents/Info LSEnvironment
<p>sudo chmod 644 /Applications/Safari.app/Contents/Info.plist</li>
<li>7. Delete the files obtained in steps 2 and 5</li>
<li>8. Run the following command in Terminal:defaults read ~/.MacOSX/environment DYLD_INSERT_LIBRARIES</li>
<li>9. Take note of the result. Your system is already clean of this variant if you got an error message similar to the following:&#8221;The domain/default pair of (/Users/joe/.MacOSX/environment, DYLD_INSERT_LIBRARIES) does not exist&#8221;</li>
<li>10. Otherwise, run the following command in Terminal:grep -a -o &#8216;__ldpath__[ -~]*&#8217; <strong>%path_obtained_in_step9%</strong></li>
<li>11. Take note of the value after &#8220;__ldpath__&#8221;</li>
<li>12. Run the following commands in Terminal:defaults delete ~/.MacOSX/environment DYLD_INSERT_LIBRARIES
<p>launchctl unsetenv DYLD_INSERT_LIBRARIES</li>
<li>13. Finally, delete the files obtained in steps 9 and 11.</li>
<li>14. Run the following command in Terminal:ls -lA ~/Library/LaunchAgents/</li>
<li>15. Take note of the filename. Proceed only when you have one file. Otherwise contact our customer care.</li>
<li>16. Run the following command in Terminal:defaults read ~/Library/LaunchAgents/<strong>%filename_obtained_in_step15%</strong> ProgramArguments</li>
<li>17. Take note of the path. If the filename does not start with a &#8220;.&#8221;, then you might not be infected with this variant.</li>
<li>18. Delete the files obtained in steps 15 and 17.</li>
</ul>
</div>
</div>
</div>
</div>
<div></div>
</div>
<div>
<h2>Additional Details</h2>
<div>
<p>Trojan-Downloader:OSX/Flashback.K is dropped by malicious Java applets that exploit the known <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2012-0507">CVE-2012-0507</a> vulnerability.</p>
<p>On execution, the malware will prompt the unsuspecting user for the administrator password. Whether or not the user inputs the administrator password, the malware will attempt to infect the system, though entering the password will affect how the infection is done.<br />
<strong>Installation</strong></p>
<p>There are two files that are dropped and executed on the system when users visited a malicious webpage.</p>
<p>The first file is an updater component. It is dropped in the users home folder. It may have the default filename &#8220;.jupdate&#8221; or a filename supplied by the malicious webpage. The filename will always start with a &#8220;.&#8221;.</p>
<p>A launch point is then created for the updater component in the ~/Library/LaunchAgents folder. It may have the default filename &#8220;com.java.update.plist&#8221; or a filename supplied by the malicious webpage.</p>
<p>On the first execution, this component reports to the following:</p>
<div id="articles">
<ul>
<li>http://[...]31.31.79.87/[...]/stat_svc/</li>
</ul>
</div>
<p>On the second execution and onwards, it connects to a hard coded list of addresses to download it&#8217;s update.</p>
<p>The second file is the downloader component just like the previous variants. It is dropped and executed in the /tmp folder. It may have the default filename &#8220;Update&#8221; or a filename supplied by the malicious webpage.</p>
<p>The malware then reports to the following location whether it successfully exploited the system or not:</p>
<div id="articles">
<ul>
<li>http://[...]31.31.79.87/[...]/stat_j/%result%</li>
</ul>
</div>
<p><strong>Downloading the Payload</strong></p>
<p>The malware connects to the following URL to download its payload:</p>
<div id="articles">
<ul>
<li>http://[...]31.31.79.87/[...]/counter/%encoded_data%Where decoded data follows this format:
<ul>
<li>%hardware_UUID|%machine_architecture%|%kernel_version%|0|%architecture_of_malware_process%|<br />
%current_hardware_type_of_system%|%is_user_daemon%</p>
<ul>
<li>%is_user_daemon% is &#8220;1&#8243; if the process is running as the first OS X user account or daemon &#8220;0&#8243; otherwise</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<p>The filename and actual content of the payload depends on reply of the remote host. The reply is compressed and encrypted but the actual content follows this format:</p>
<div id="articles">
<ul>
<li>%encoded_filename%|%encoded_binary1_content%|%encoded_payload_config%| %encoded_binary2_content%|%encoded_png_content%Where:
<ul>
<li><em><strong>Binary 1</strong></em>We were not able to obtain the payload during our analysis. However based on previous variants, binary1 is most likely the malware&#8217;s main component. It hijacks CFReadStreamRead and CFWriteStreamWrite by creating an interposition to these functions. The malware modifies contents returned or send by these APIs. It targets the contents of specific webpages, as determined by config information returned by the remote host.</li>
</ul>
</li>
</ul>
<ul>
<li><em><strong>Binary 2</strong></em>We were not able to obtain the payload during our analysis. However based on previous variants, binary2 is most likely a filter component that will load binary1 only into a targeted process. This is to avoid crashing incompatible applications and raising the user&#8217;s suspicions. In the sample that we analyzed, it targets the Safari web browser.</li>
</ul>
</div>
<p><strong>Infection</strong></p>
<p>Only after downloading the payload does Flashback.K proceed with infecting the machine. To do so, the malware prompts for the administrator password.</p>
<p>Whether or not the user inputs their administrator password at the prompt determines the type of infection the malware subsequently performs:</p>
<p>&nbsp;</p>
<p><strong><em>Infection Type 1</em></strong></p>
<p>If the user inputs their administrator password, the malware will create the following files:</p>
<div id="articles">
<ul>
<li><strong>/Applications/Safari.app/Contents/Resources/.%decoded_filename%.png</strong> &#8211; contains %decoded_binary1_contents% and %decoded_payload_config%</li>
<li><strong>/Applications/Safari.app/Contents/Resources/.%decoded_filename%.xsl</strong> &#8211; contains %decoded_binary2_contents%</li>
</ul>
</div>
<p>The malware then creates a launch point, inserting the following line into &#8220;/Applications/Safari.app/Contents/Info.plist&#8221;:</p>
<div id="articles">
<ul>
<li>&lt;key&gt;LSEnvironment&lt;/key&gt;&lt;dict&gt;&lt;key&gt;DYLD_INSERT_LIBRARIES&lt;/key&gt;<br />
&lt;string&gt;/Applications/Safari.app/Contents/Resources/.%decoded_filename%.xsl&lt;/string&gt;&lt;/dict&gt;</li>
</ul>
</div>
<p>This in effect will inject binary2 into Safari when the browser is launched.</p>
<p>If the malware was able to infect the system this way, it reports success to the following URL:</p>
<div id="articles">
<ul>
<li>http://[...]31.31.79.87/[...]/stat_d/</li>
</ul>
</div>
<p>If it failed to infect the system, the malware reports to the following URL:</p>
<div id="articles">
<ul>
<li>http://[...]31.31.79.87/[...]/stat_n/</li>
</ul>
</div>
<p>&nbsp;</p>
<p><strong><em>Infection Type 2</em></strong></p>
<p>In cases where the user did not input their administrator password, the malware checks if the following path exists in the system:</p>
<div id="articles">
<ul>
<li>/Applications/Microsoft Word.app</li>
<li>/Applications/Microsoft Office 2008</li>
<li>/Applications/Microsoft Office 2011</li>
<li>/Applications/Skype.app</li>
</ul>
</div>
<p>If any of these are found, the malware again skips the rest of its routine and proceeds to delete itself, presumably to avoid infecting a system that has an incompatible application installed.</p>
<p>If none of the incompatible applications are found, the malware will create the following files:</p>
<div id="articles">
<ul>
<li><strong>~/Library/Application Support/.%decoded_filename%.tmp</strong> &#8211; contains %decoded_binary1_contents% and %decoded_payload_config%</li>
<li><strong>/Users/Shared/.libgmalloc.dylib</strong> &#8211; contains %decoded_binary2_contents%</li>
</ul>
</div>
<p>The malware then creates a launch point by creating &#8220;~/.MacOSX/environment.plist&#8221;, containing the following lines:</p>
<div id="articles">
<ul>
<li>&lt;key&gt;DYLD_INSERT_LIBRARIES&lt;/key&gt;<br />
&lt;string&gt;/Users/Shared/.libgmalloc.dylib&lt;/string&gt;</li>
</ul>
</div>
<p>This in effect will inject binary2 into every application launched by the infected user.</p>
<p>For this infection type, the malware reports the successful infection to the following URL:</p>
<div id="articles">
<ul>
<li>http://[...]31.31.79.87/[...]/stat_u/</li>
</ul>
</div>
</div>
</div>
<div class="AWD_facebook_likebutton "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fi3factory.com%2Fit%2Fflashback-apple-ha-gia-aggiornato-ma-non-e-un-virus%2F&amp;send=true&amp;layout=standard&amp;width=300&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=&amp;height=40&ref=" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:40px;" allowTransparency="true"></iframe></div><p>Related posts:<ol>
<li><a href='http://i3factory.com/it/downgrade-di-ios-come-far-tornare-il-vostro-iphone-e-ipad-aggiornato-con-ios-5-0-1-a-ios-4-3-3-4-3-4-4-3-5-5-0-0/' rel='bookmark' title='Downgrade di IOS: come far tornare il vostro iPhone e iPad aggiornato con iOS 5.0.1 a iOS 4.3.3 / 4.3.4 / 4.3.5 / 5.0.0'>Downgrade di IOS: come far tornare il vostro iPhone e iPad aggiornato con iOS 5.0.1 a iOS 4.3.3 / 4.3.4 / 4.3.5 / 5.0.0</a></li>
<li><a href='http://i3factory.com/it/virus-per-mac-osx-le-solite-storie-tsunami-e-un-semplice-trojan/' rel='bookmark' title='Virus per Mac Osx, le solite storie. Tsunami è un semplice trojan Pdf'>Virus per Mac Osx, le solite storie. Tsunami è un semplice trojan Pdf</a></li>
<li><a href='http://i3factory.com/it/apple-store-no-rss-applications/' rel='bookmark' title='Apple Store: no RSS applications?'>Apple Store: no RSS applications?</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://i3factory.com/it/flashback-apple-ha-gia-aggiornato-ma-non-e-un-virus/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Disegnare bottoni e controlli iOS e OSX con PaintCode Mac App</title>
		<link>http://i3factory.com/it/disegnare-bottoni-e-controlli-ios-e-osx-con-paintcode-mac-app/</link>
		<comments>http://i3factory.com/it/disegnare-bottoni-e-controlli-ios-e-osx-con-paintcode-mac-app/#comments</comments>
		<pubDate>Fri, 16 Mar 2012 18:51:13 +0000</pubDate>
		<dc:creator>Igor Wolfango Schiaroli</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[retina]]></category>

		<guid isPermaLink="false">http://i3factory.com/it/?p=1959</guid>
		<description><![CDATA[<p>Progettare indipendentemente dalla risoluzione dell'interfaccia utente è difficile, soprattutto se si deve programmare il codice del disegno.<br />
Per semplificare questo processo di sviluppo è utile un' applicazione di disegno vettoriale che genera istantaneamente codice Objective-C.</p>

Related posts:<ol>
<li><a href='http://i3factory.com/it/ios-tecniche-per-non-appesantire-le-app-in-vista-di-ipad-3/' rel='bookmark' title='iOS: Tecniche per non appesantire le App; sviluppare per iPad 3'>iOS: Tecniche per non appesantire le App; sviluppare per iPad 3</a></li>
<li><a href='http://i3factory.com/it/progettare-app-disegnare-mockapp-direttamente-con-ipad/' rel='bookmark' title='Progettare App: disegnare Mockapp direttamente con iPad'>Progettare App: disegnare Mockapp direttamente con iPad</a></li>
<li><a href='http://i3factory.com/it/disegnare-per-iphone-4-retina-display/' rel='bookmark' title='Disegnare per iPhone 4 Retina Display'>Disegnare per iPhone 4 Retina Display</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="AWD_facebook_likebutton "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fi3factory.com%2Fit%2Fdisegnare-bottoni-e-controlli-ios-e-osx-con-paintcode-mac-app%2F&amp;send=true&amp;layout=standard&amp;width=300&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=&amp;height=40&ref=" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:40px;" allowTransparency="true"></iframe></div><ul class="lang_switch"></ul>
<p><a href="http://www.i3factory.com/wp-content/uploads/disegnare_progettare_ios_xcode.png"><img class="aligncenter size-full wp-image-1960" title="disegnare_progettare_ios_xcode" src="http://www.i3factory.com/wp-content/uploads/disegnare_progettare_ios_xcode.png" alt="" width="480" height="291" /></a></p>
<p style="text-align: left;">Progettare indipendentemente dalla risoluzione dell&#8217;interfaccia utente è difficile, soprattutto se si deve programmare il codice del disegno.<br />
Per semplificare questo processo di sviluppo è utile un&#8217; applicazione di disegno vettoriale che genera istantaneamente codice Objective-C.<br />
In questo modo è possibile progettare il design dei bottoni o di tutti quei componenti che possono essere visualizzati da iOS o OSX attraverso il codice; in questo modo l&#8217;app sarà di certo molto performante e avrà la qualità del design indipendente dalla risoluzione grafica del dispositivo, sia esso iPad3, iPhone4, iPad 2 o qualsiasi altro dospositivo apple.</p>
<p>Abbiamo utilizzato l&#8217;app <strong>PaintCode</strong> con iMac e la abbiamo scaricata dal mac app store. Il prezzo non è tra i più bassi ed è di 80 dollari, ma l&#8217;acquisto di questa app permette al programmatore di smettere di scrivere il codice di disegno e al designer piu&#8217; avanzato di non lavorare direttamente su files grafici.</p>
<p>PaintCode è una semplice applicazione di disegno vettoriale che genera codice per Mac OS X e iOS.</p>
<p>Non è più necessario ricompilare il codice, più e più volte, per ottenere il risultato desiderato. Con app di questo tipo anche un graphic designer senza esperienza di programmazione può disegnare controlli, icone e altri elementi propri della UI.</p>
<p><strong>Interfaccia utente resolution-independent</strong></p>
<p>Con questo stumento è possibile utilizzare forme vettoriali <em>built-in</em> (rettangoli, rettangoli arrotondati, ovali, testi, Béziers, stelle e poligoni) per disegnare i pulsanti, cursori, icone e altri elementi dell&#8217;interfaccia utente, allineandoli alla griglia a pixel nei posti giusti.<br />
È anche possibile aggiungere gradienti e ombre per rendere l&#8217;interfacia più realistica.</p>
<p style="text-align: left;"><a href="http://www.i3factory.com/wp-content/uploads/forme_ios.png"><img class=" wp-image-1961" title="forme_ios" src="http://www.i3factory.com/wp-content/uploads/forme_ios.png" alt="" width="160" height="120" /></a></p>
<p><strong>Generare il codice per OS X e iOS</strong></p>
<p>È possibile scegliere tra OS X o iOS codice. PaintCode genera Objective-C che utilizza Cocoa, Quartz e Core Graphics API. È anche possibile spostare l&#8217;origine e generare un codice di disegno per NSViews capovolte!</p>
<p style="text-align: center;"><a href="http://www.i3factory.com/wp-content/uploads/bottoni_ios_iphone_ipad.png"><img class="wp-image-1962 aligncenter" title="bottoni_ios_iphone_ipad" src="http://www.i3factory.com/wp-content/uploads/bottoni_ios_iphone_ipad.png" alt="" width="480" height="291" /></a></p>
<p><strong>Preparatevi per i display Retina</strong></p>
<p>Per aiutarvi a preparare il mondo ad alta risoluzione, con display ad alta densità, PaintCode consente di attivare la modalità <em>Retina</em>. Questo raddoppia la risoluzione del disegno. Quando si è in modalità Retina, si può immediatamente vedere il disegno in modo molto simile a iPhone 4, iPhone 4S, il nuovo iPad 3 e altri dispositivi retina-display  che possono essere aggiunti in futuro.</p>
<div class="AWD_facebook_likebutton "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fi3factory.com%2Fit%2Fdisegnare-bottoni-e-controlli-ios-e-osx-con-paintcode-mac-app%2F&amp;send=true&amp;layout=standard&amp;width=300&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=&amp;height=40&ref=" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:40px;" allowTransparency="true"></iframe></div><p>Related posts:<ol>
<li><a href='http://i3factory.com/it/ios-tecniche-per-non-appesantire-le-app-in-vista-di-ipad-3/' rel='bookmark' title='iOS: Tecniche per non appesantire le App; sviluppare per iPad 3'>iOS: Tecniche per non appesantire le App; sviluppare per iPad 3</a></li>
<li><a href='http://i3factory.com/it/progettare-app-disegnare-mockapp-direttamente-con-ipad/' rel='bookmark' title='Progettare App: disegnare Mockapp direttamente con iPad'>Progettare App: disegnare Mockapp direttamente con iPad</a></li>
<li><a href='http://i3factory.com/it/disegnare-per-iphone-4-retina-display/' rel='bookmark' title='Disegnare per iPhone 4 Retina Display'>Disegnare per iPhone 4 Retina Display</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://i3factory.com/it/disegnare-bottoni-e-controlli-ios-e-osx-con-paintcode-mac-app/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>iOS: Tecniche per non appesantire le App; sviluppare per iPad 3</title>
		<link>http://i3factory.com/it/ios-tecniche-per-non-appesantire-le-app-in-vista-di-ipad-3/</link>
		<comments>http://i3factory.com/it/ios-tecniche-per-non-appesantire-le-app-in-vista-di-ipad-3/#comments</comments>
		<pubDate>Tue, 06 Mar 2012 12:58:04 +0000</pubDate>
		<dc:creator>Igor Wolfango Schiaroli</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[iPad3]]></category>
		<category><![CDATA[Retina display]]></category>

		<guid isPermaLink="false">http://i3factory.com/it/?p=1926</guid>
		<description><![CDATA[<p>Con il rilascio della prossima generazione dell' iPad (iPad 3)  si aprirà una nuova stagione per la progettazione grafica ad altissima risoluzione.Le nuove App dedicate ad iPad , sopratutto quelle universali , dovranno valorizzare il nuovo Retina display, che raggiunge l'incredibile risoluzione  di 2048x1536 pixel.<br />
La distribuzione di massa di un iPad con uno schermo così dettagliato e di risoluzione grafica così elevata rappresenta una sfida per tutti gli sviluppatori che vogliono mantenere i loro App Bundle al di sotto del limite di 20 MB.</p>

Related posts:<ol>
<li><a href='http://i3factory.com/it/stimare-il-tempo-di-sviluppo-software-come-per-app-per-ios-iphone-e-ipad-android/' rel='bookmark' title='Stimare il tempo di sviluppo software, come per App iOS, iPhone e iPad, &amp; Android'>Stimare il tempo di sviluppo software, come per App iOS, iPhone e iPad, &#038; Android</a></li>
<li><a href='http://i3factory.com/it/riviste-e-magazine-tecniche-di-page-rendering-parte-4-pagine-da-immagini/' rel='bookmark' title='Riviste e Magazine: Tecniche di Page Rendering #parte 4 : pagine da immagini'>Riviste e Magazine: Tecniche di Page Rendering #parte 4 : pagine da immagini</a></li>
<li><a href='http://i3factory.com/it/riviste-e-magazine-su-ipad-tecniche-di-page-rendering-parte-1/' rel='bookmark' title='Riviste e Magazine su iPad: Tecniche di Page Rendering #parte 1'>Riviste e Magazine su iPad: Tecniche di Page Rendering #parte 1</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="AWD_facebook_likebutton "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fi3factory.com%2Fit%2Fios-tecniche-per-non-appesantire-le-app-in-vista-di-ipad-3%2F&amp;send=true&amp;layout=standard&amp;width=300&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=&amp;height=40&ref=" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:40px;" allowTransparency="true"></iframe></div><ul class="lang_switch"></ul>
<p><a href="http://www.i3factory.com/wp-content/uploads/ipad3_retina_xcode_app_ios_progetto.png"><img class="aligncenter size-full wp-image-1937" title="ipad3_retina_xcode_app_ios_progetto" src="http://www.i3factory.com/wp-content/uploads/ipad3_retina_xcode_app_ios_progetto.png" alt="" width="512" height="512" /></a></p>
<p>Con il rilascio della prossima generazione dell&#8217; iPad (iPad 3)  si aprirà una nuova stagione per la progettazione grafica ad altissima risoluzione.Le nuove App dedicate ad iPad , sopratutto quelle universali , dovranno valorizzare il nuovo Retina display, che raggiunge l&#8217;incredibile risoluzione  di 2048&#215;1536 pixel.</p>
<div id="attachment_1934" class="wp-caption aligncenter" style="width: 647px"><a href="http://www.i3factory.com/wp-content/uploads/ipad3_ios_ipnone_retina_risoluzioni.jpg"><img class="size-full wp-image-1934" title="ipad3_ios_ipnone_retina_risoluzioni" src="http://www.i3factory.com/wp-content/uploads/ipad3_ios_ipnone_retina_risoluzioni.jpg" alt="" width="637" height="474" /></a><p class="wp-caption-text">L&#39;iPad 3 possiede uno schermo di dimensione superiore anche alla risoluzione full HD del blu Ray (1920*1080 px).</p></div>
<p style="text-align: left;">La distribuzione di massa di un iPad con uno schermo così dettagliato e di risoluzione grafica così elevata rappresenta una sfida per tutti gli sviluppatori che vogliono mantenere i loro App Bundle al di sotto del limite di 20 MB.<br />
20 Mega Byte è attualmente il limite imposto  dall&#8217;Apple Store per  effettuare  il download delle App attraverso la rete Umts , 3G o edge; sapendo che Apple limita il download di App da rete cellulare dobbiamo tener presente che se compiliamo App &#8220;Grasse&#8221; &#8211; Fat Binary superiori ai 20 mb &#8211; è necessario che il nostro cliente sia collegato in modalità Wifi.</p>
<p>Di seguito  suggerisco alcune tecniche che gli sviluppatori possono utilizzare per mantenere le loro App  nella fascia &#8221; magra&#8221;.</p>
<p>Vi mostrerò interessanti tecniche  suggerite in un post di <em>David Smith</em> (<a href="http://david-smith.org/blog/2012/03/05/techniques-for-shrinking-app-bundle-size/" target="_blank">http://david-smith.org/blog/2012/03/05/techniques-for-shrinking-app-bundle-size/</a>) , un developer di app quale ad es. <em>My Recipe Book</em>.</p>
<p><strong>Rimuovere il codice inutilizzato</strong></p>
<p>Il primo passo per il taglio  di spazio è quello di trovare il codice non utilizzato nel progetto. Il candidato più probabile sarebbe da trovare in tutte le librerie di terze parti (3rd party library) che vengono fornite con il progetto, ma che non verranno attivamente utilizzate.</p>
<p><a href="http://www.i3factory.com/wp-content/uploads/frameworks_librerie_ios_xcode.jpg"><img class="aligncenter size-full wp-image-1940" title="frameworks_librerie_ios_xcode" src="http://www.i3factory.com/wp-content/uploads/frameworks_librerie_ios_xcode.jpg" alt="" width="449" height="569" /></a></p>
<p>Inoltre, bisogna sincerarsi di controllare anche  l&#8217;intero contenuto di una libreria ; se si ha solo bisogno di alcuni file, si possono eliminare quelli non utilizzati.</p>
<p><strong>Rimuovere risorse non utilizzate<br />
</strong></p>
<p>Il secondo passo è quello di assicurarsi che non siano comprese le risorse che non vengono utilizzate nel nostro progetto. Spesso trovo che la nostre app  comprendono  immagini, icone, suoni che appatengono a versioni precedenti a cui non si fa più riferimento.</p>
<p><a href="http://www.i3factory.com/wp-content/uploads/xcode_app_Rimuover_risorse_non_utilizzate_xcode.jpg"><img class="aligncenter size-full wp-image-1941" title="xcode_app_Rimuover_risorse_non_utilizzate_xcode" src="http://www.i3factory.com/wp-content/uploads/xcode_app_Rimuover_risorse_non_utilizzate_xcode.jpg" alt="" width="276" height="215" /></a></p>
<p><a href="http://www.i3factory.com/wp-content/uploads/slender_app_xcode_ios_iphone_ipad_ft_binary.png"><img class="wp-image-1932 alignright" title="slender_app_xcode_ios_iphone_ipad_ft_binary" src="http://www.i3factory.com/wp-content/uploads/slender_app_xcode_ios_iphone_ipad_ft_binary.png" alt="" width="175" height="175" /></a>Fare auditing del vostro progetto per questi casi è spesso difficile,  e per questo David ci consiglia un ottimo strumento chiamato <strong><a href="http://itunes.apple.com/us/app/slender/id493656257">Slender</a></strong> che elimina una parte del lavoro analizzando il progetto per i file inutilizzati e permette di rimuoverli. Questo strumento analizza vari tipi di file e oltre a indicare quali di questi non vengono referenziati all&#8217;interno del progetto, individua anche alcuni problemi, come ad esempio la mancanza della versione @2x (utilizzata per il Retina Display), la dimensioni delle artwork grafiche di sistema (icona, Default image, ecc.) più una serie di controlli apparentemente minori ma che servono a fare pulizia del progetto. Inoltre questa applicazione ad ogni modifica effettua una copia di backup affinché eventuali file incorrettamente rimossi possano essere facilmente ripristinati.</p>
<p><strong>Caricare le risorse On-Demand</strong></p>
<p>Se il progetto comprende risorse come video tutorial o immagini che sono utilizzati  e necessari solo raramente, è possibile spostare questi su un web-server e richiamarli on-demand.  Amazon <a href="http://aws.amazon.com/s3/">S3</a> o di un piccolo servizio di VPS  <a href="http://www.linode.com/">Linode</a> sono ottime soluzioni possibili.  E&#8217; necessaria discrezione con questa tecnica se si vuole evitare di frustrare l&#8217;utente con una serie download dopo l&#8217;installazione.<br />
Personalmente trovo utile ciò che ha fatto David per i video tutorial  nella sua App <em>My Recipe Book</em>, questi Video infatti sono richiamati solo in schermate secondarie dell&#8217;app e non fanno parte della cosidetta <em>user’s initial experience.</em><br />
Nell&#8217;eventualità che questi file siano necessari per l&#8217;utilizzo primario dell&#8217;app, potete sempre offrire la possibilità di una visione online a quella di poter scaricare il file localmente. Tenderei ad evitare il fastidioso requisito di scaricare i file una volta scaricata l&#8217;app, dato che spesso l&#8217;utente non si avvede immediatamente di questa necessità e nel momento stesso in cui se ne accorgerà questo accadrà troppo tardi, ormai lontano da ogni connessione Wi-Fi.</p>
<p>&nbsp;</p>
<p><strong>Utilizzare immagini Patterned</strong></p>
<p>Seguendo la definizione di Wikipedia:<br />
&lt;&lt;&#8221;Nell&#8217;ingegneria del software, un <em>design pattern</em> (schema di progettazione) può essere definito come : una soluzione progettuale generale a un problema ricorrente. Esso non è una libreria o un componente di software riusabile, quanto piuttosto una descrizione o un modello da applicare per risolvere un problema che può presentarsi in diverse situazioni durante la progettazione e lo sviluppo del software (NB: nel nostro caso e&#8217; un&#8217;immagine).<br />
&#8230;.<br />
La differenza tra un algoritmo e un design pattern è che il primo risolve problemi computazionali, mentre il secondo è legato agli aspetti progettuali del software.&#8221;&gt;&gt;</p>
<p>Nel nostro caso, un Pattern è una sorta di <em>trama grafica (una sorta tegola) </em>che viene ripetuta e sata come riempimento per un&#8217;immagine.</p>
<p><em>UIColor</em> include una funzione fantastica per ridurre la necessità di includere le immagini di grandi dimensioni strutturate all&#8217;interno del progetto.</p>
<p>Ad esempio le dimensioni medie di un&#8217;immagine per dispositivo Apple sono le seguenti:</p>
<ul>
<li>iPad 3 (@2x) = 2048*1536 px = 1,2 Mb = 1200 Kb</li>
<li>iPad 1 e 2 = 102*768 px = 0,73 Mb = 730 Kb</li>
<li>iPhone 4 (@2x) = 960*640 px = 0,63 Mb = 630 Kb</li>
<li>iPhone 3 = 480*320 = 0,34 Mb = 340 kb</li>
</ul>
<p>TOTAL = 2900 Kb</p>
<ul>
<li>Single Pattern Tile = 300 kb</li>
</ul>
<p style="text-align: center;">Vi segnalo uno dei tanti video che vi insegnerà (tutorial) a creare Pattern:<iframe src="http://www.youtube.com/embed/IxKgv8h1OF0" frameborder="0" width="560" height="315"></iframe></p>
<p>Un uso utile del Patterned image è quando volete fornire alla vostra applicazione uno sfondo stilizzato, anche se questa tecnica si applica altrettanto bene a piccole aree in cui si desidera aggiungere texture a un controllo dell&#8217;interfaccia utente.</p>
<p>Basta impostare il colore di sfondo della vista desiderata per un colore fantasia come questo:</p>
<pre>view.backgroundColor = [UIColor colorWithPatternImage: [UIImage imageNamed: @ "pattern_image.png"]];</pre>
<p>La <em>view</em>  avrà così uno sfondo con texture che viene scalato e regolato secondo le dimensione della vista stessa.<br />
David ci segnala che una buona fonte per le tile texture (texture tegola) è il progetto <a href="http://subtlepatterns.com/">Subtle Patterns</a>.</p>
<p>&nbsp;</p>
<p><strong>Utilizzare Stretched UI Image</strong></p>
<p><em>UIImage</em> include un metodo performante per creare immagini che vengono scalate o bilanciate dinamicamente in relazione  alla dimensione (size). L&#8217;immagine è configurata in modo che la sezione centrale si allunga mantenendo invariati i bordi. Questo è spesso usato per oggetti, come i pulsanti, dove si ha uno stile per gli angoli e per i lati, ma il corpo del pulsante è semplice.<br />
Funziona bene anche per la creazione di un effetto&#8221;inciso&#8221; (<em>etched</em>) in una <em>table view</em> (vista tabella).</p>
<p style="text-align: center;"><a href="http://www.i3factory.com/wp-content/uploads/usare_UIImage_streched-image_app_ios.png"><img class="aligncenter  wp-image-1942" title="usare_UIImage_streched-image_app_ios" src="http://www.i3factory.com/wp-content/uploads/usare_UIImage_streched-image_app_ios.png" alt="" width="630" height="173" /></a></p>
<p>Quindi, piuttosto che la creare un&#8217;immagine 320&#215;48 che rappresenta lo sfondo della cella si crea una piccola immagine 1&#215;3 con il top desiderato, il corpo e i colori di sfondo. Questo viene poi assegnata come backgroundView;</p>
<pre><code>UIImage* template = [UIImage imageName:@"template.png"]; UIImage* stretched = [template resizableImageWithCapInsets:UIEdgeInsetsMake(1, 0, 1, 0)]; cell.backgroundView = [[UIImageView alloc] initWithImage:stretched]; </code></pre>
<p>&nbsp;</p>
<p><strong>Disegnare elementi dell&#8217;interfaccia utente (<em>UI Elements</em>) in Quartz</strong></p>
<p>Essenzialmente quando si realizzano degli elementi dell&#8217;interfaccia (<em>UI Elements</em>) utente geometrici  è spesso possibile evitare l&#8217;utilizzo di un&#8217;immagine PNG per raggiungere l&#8217;obiettivo dato dalla progettazione.<br />
Piuttosto che pre-generare gli elementi in Photoshop e poi bundle con l&#8217;applicazione, è sufficiente rendere lo stile desiderato in fase di runtime. Questo può essere semplice come creare uno stile pulsanti quadri:</p>
<pre>UIButton SquareButton * = [UIButton buttonWithType: UIButtonTypeCustom];
 [squareButton.layer setBorderColor: [[UIColor blackColor] CGColor]];
 [squareButton.layer setBorderWidth: 1,0];
 [SquareButton setTitleColor: [UIColor blackColor] forState: UIControlStateNormal];
 squareButton.backgroundColor = [UIColor whiteColor];</pre>
<p>Oppure, più complicato come il progetto <a href="http://code.google.com/p/iphonegradientbuttons/">Gradient Buttons</a> dell&#8217;ottimo Jeff LaMarche. Per quest&#8217;ultimo ricordiamo che i file presenti nel repository non sono compatibili con ARC e quindi vanno modificati (le modifiche richieste sono poche ma necessarie per non avere errori di compilazione).</p>
<p><a href="http://www.i3factory.com/wp-content/uploads/iphone_ipad_ios_gradient-buttons.png"><img class="aligncenter size-full wp-image-1943" title="iphone_ipad_ios_gradient-buttons" src="http://www.i3factory.com/wp-content/uploads/iphone_ipad_ios_gradient-buttons.png" alt="" width="441" height="142" /></a><br />
L&#8217;obiettivo è quello di rendere quello che ti serve attraverso il codice, piuttosto che fare il bundling con decine di mini vedute di background con la tua applicazione.</p>
<p><strong>Utilizzare file PDF</strong></p>
<p>Ultimamente è stata avanzata dal noto sviluppatore inglese Matt Gemmell, nel suo articolo <a href="http://mattgemmell.com/2012/02/10/using-pdf-images-in-ios-apps/">Using PDF Images in iOS apps</a>, la proposta di utilizzare il PDF come elemento portante di immagini vettoriali. Ricordiamo che le immagini vettoriali permettono di raggiungere, per loro natura, delle definizioni molto elevate, per esempio le due immagini del &#8220;close button&#8221; (entrambe tratte dall&#8217;articolo di Gemmell), sono la rappresentazione in scala diversa dello stesso oggetto vettoriale: <a href="http://www.flickr.com/photos/mattgemmell/6852073089/"><img class="alignleft" title="Bottone di chiusura a dimensione nominale" src="http://farm8.staticflickr.com/7043/6852073089_799396a83e_o.jpg" alt="" width="55" height="54" /></a> <a href="http://farm8.staticflickr.com/7153/6852073179_9331c86de0_o.jpg"><img class="alignnone" title="Sempre il bottone di chiusura, ingrandito." src="http://farm8.staticflickr.com/7153/6852073179_9331c86de0_o.jpg" alt="" width="330" height="328" /></a>. Utilizzando Photoshop è possibile ottenere un file PDF sufficientemente compresso (il PDF è un ottimo &#8220;vettore&#8221; di file vettoriali) che potrà essere in seguito manipolato con del codice Objective-C per ottenere le immagini delle dimensioni desiderate. In tal caso si richiede allo sviluppatore la capacità di spacchettare queste immagini nel momento opportuno senza anche qui bloccare l&#8217;applicazione all&#8217;inizio. Un buon esempio di tale codice è reperibile nel progetto <a href="https://github.com/mindbrix/UIImage-PDF">UIImage+PDF category su GitHub</a>.</p>
<p><strong> Conclusioni</strong></p>
<p>L&#8217;uso ponderato di queste tecniche può aiutare a ridurre drasticamente le dimensioni del bundle delle vostre applicazioni, aiuta quindi a pubblicare un&#8217;app sotto il limite di download per 3G.</p>
<p>Tuttavia, è necessario fare attenzione e non esagerare; non fatevi prendere la mano e a volte è meglio frenare il vostro desiderio di ottimizzazione se c&#8217;e&#8217; il rischio di ottienere una soluzione che sia lontana dal buon gusto di progettare un user experience di gusto e design.</p>
<div class="AWD_facebook_likebutton "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fi3factory.com%2Fit%2Fios-tecniche-per-non-appesantire-le-app-in-vista-di-ipad-3%2F&amp;send=true&amp;layout=standard&amp;width=300&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=&amp;height=40&ref=" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:40px;" allowTransparency="true"></iframe></div><p>Related posts:<ol>
<li><a href='http://i3factory.com/it/stimare-il-tempo-di-sviluppo-software-come-per-app-per-ios-iphone-e-ipad-android/' rel='bookmark' title='Stimare il tempo di sviluppo software, come per App iOS, iPhone e iPad, &amp; Android'>Stimare il tempo di sviluppo software, come per App iOS, iPhone e iPad, &#038; Android</a></li>
<li><a href='http://i3factory.com/it/riviste-e-magazine-tecniche-di-page-rendering-parte-4-pagine-da-immagini/' rel='bookmark' title='Riviste e Magazine: Tecniche di Page Rendering #parte 4 : pagine da immagini'>Riviste e Magazine: Tecniche di Page Rendering #parte 4 : pagine da immagini</a></li>
<li><a href='http://i3factory.com/it/riviste-e-magazine-su-ipad-tecniche-di-page-rendering-parte-1/' rel='bookmark' title='Riviste e Magazine su iPad: Tecniche di Page Rendering #parte 1'>Riviste e Magazine su iPad: Tecniche di Page Rendering #parte 1</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://i3factory.com/it/ios-tecniche-per-non-appesantire-le-app-in-vista-di-ipad-3/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Progettare App: disegnare Mockapp direttamente con iPad</title>
		<link>http://i3factory.com/it/progettare-app-disegnare-mockapp-direttamente-con-ipad/</link>
		<comments>http://i3factory.com/it/progettare-app-disegnare-mockapp-direttamente-con-ipad/#comments</comments>
		<pubDate>Sat, 03 Mar 2012 15:06:20 +0000</pubDate>
		<dc:creator>Igor Wolfango Schiaroli</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Research]]></category>
		<category><![CDATA[App Universali]]></category>
		<category><![CDATA[Mockapp]]></category>
		<category><![CDATA[Universal application]]></category>

		<guid isPermaLink="false">http://i3factory.com/it/?p=1901</guid>
		<description><![CDATA[<p>Sempre più spesso i nostri clienti e lettori inviano delle proposte per lo sviluppo App senza utilizzare uno standard documentale e senza utilizzare quelle terminologie che possano aiutare  a comprendere correttamente quanti e quali funzionalità l'app proposta dovrebbe possedere.</p>
<p>Se volete trasmetterci un'idea per sviluppare un'app per iPhone, iPad o Android  è necessario che prepariate un <em>Documento Funzionale</em> nel quale verranno dettagliate tutte le funzionalità della vostra app per iPhone o iPAd o Android.</p>

Related posts:<ol>
<li><a href='http://i3factory.com/it/come-pubblicare-una-rivista-o-magazine-per-ipad-con-html5/' rel='bookmark' title='Come pubblicare una rivista o magazine per iPad con HTML5'>Come pubblicare una rivista o magazine per iPad con HTML5</a></li>
<li><a href='http://i3factory.com/it/modena-camera-di-commercio-con-i3factory-su-app-store/' rel='bookmark' title='made in Modena: Camera di Commercio con i3Factory su App Store'>made in Modena: Camera di Commercio con i3Factory su App Store</a></li>
<li><a href='http://i3factory.com/it/mockapp-un-tool-per-il-design-di-app-per-iphone/' rel='bookmark' title='MockApp: un tool per il design di app per iPhone'>MockApp: un tool per il design di app per iPhone</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="AWD_facebook_likebutton "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fi3factory.com%2Fit%2Fprogettare-app-disegnare-mockapp-direttamente-con-ipad%2F&amp;send=true&amp;layout=standard&amp;width=300&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=&amp;height=40&ref=" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:40px;" allowTransparency="true"></iframe></div><ul class="lang_switch">
<li class="lang_switch"><a href="http://i3factory.com/en/progettare-app-disegnare-mockapp-direttamente-con-ipad/"><img src="http://i3factory.com/wp-content/plugins/zdmultilang/flags/en_US.png" alt="English" title="English" border="0">English</a></li>
</ul>
<p><a href="http://www.i3factory.com/wp-content/uploads/mockapp-ios_iphone_ipad_android.jpg"><img title="mockapp-ios_iphone_ipad_android" src="http://www.i3factory.com/wp-content/uploads/mockapp-ios_iphone_ipad_android.jpg" alt="" width="574" height="430" /></a></p>
<p>Sempre più spesso i nostri clienti e lettori inviano delle proposte per lo sviluppo App senza utilizzare uno standard documentale e senza utilizzare quelle terminologie che possano aiutare  a comprendere correttamente quanti e quali funzionalità l&#8217;app proposta dovrebbe possedere.</p>
<p>Se volete trasmettere un&#8217;idea che permetta di creare un&#8217;app per iPhone, iPad o Android  è necessario preparare un vero e proprio <em>Mockapp e/o Documento Funzionale</em> nel quale verranno dettagliate tutte le funzionalità della vostra app per iPhone o iPAd o Android unitamente ad un layout che faccia comprendere la User Interface e la User Experience.</p>
<p style="text-align: center;"><a href="http://www.i3factory.com/wp-content/uploads/creare_mockapp_con_appcooker.png"><img title="creare_mockapp_con_appcooker" src="http://www.i3factory.com/wp-content/uploads/creare_mockapp_con_appcooker.png" alt="" width="298" height="308" /></a><br />
Cooker App &#8211; Design, Mockup e Prototype Apps interfacce app su iPhone</p>
<p>Qualora vogliate utilizzare il vostro iPad come strumento per preparare il mockapp prototipale, vi segnalo App Cooker (sito web: <a href="http://www.appcooker.com/" target="_blank">http://www.appcooker.com/</a>).</p>
<p>Segnaleremo invece nel prossimo articolo sull&#8217;argomento quale sono gli strumenti che potrete utilizzare  con il vostro Mac o Pc.</p>
<p>Molte persone hanno abbamdonato quasi del tutto l&#8217;uso del computer e si affidano all&#8217;iPad per inviare email, fruire dell&#8217;Internet e utilizzare strumenti di lavoro;</p>
<p style="text-align: center;"><a href="http://www.i3factory.com/wp-content/uploads/app_cooker_mockapp_iphone_ipad_ios_app.jpg"><img title="app_cooker_mockapp_iphone_ipad_ios_app" src="http://www.i3factory.com/wp-content/uploads/app_cooker_mockapp_iphone_ipad_ios_app.jpg" alt="" width="480" height="360" /></a></p>
<p><strong>App Coocker</strong> è un&#8217;app per iPad e la consideriamo uno strumento utilissimo , se volete portare le vostre idee ad uno stadio di possibile realizzazione.</p>
<p>App Cooker, è attualmente  presente in App Store al prezzo di 15,99 € , che secondo alcuni rumors aumenterà a 24$ alla prossima versione;   l&#8217;applicazione (per iPad) è sviluppata da <em>HotAppsFactory</em> e , come abbiamo detto, serve  a progettare applicazioni per iPhone e iPad..</p>
<p>L&#8217; <em>App Board</em> raccoglierà i vostri piani concettuali, mock-up, icone, Scheda Negozio App e la strategia dei prezzi.<br />
Sarà la spina dorsale di ogni vostro progetto e permette di lavorare in modo organizzato e chiaro.</p>
<p><em>Di seguito il video in lingua inglese direttamente dal sito ufficiale:</em><br />
<iframe src="http://www.youtube.com/embed/GBjX_4wxOio" frameborder="0" width="560" height="315"></iframe></p>
<p><strong>Definire le idee</strong></p>
<p>Iniziamo con un&#8217;idea, uno schizzo e utilizziamo questa l&#8217;App per organizzare e ispirare le idee.<br />
L&#8217;idea è l&#8217;essenza stessa di una qualsiasi applicazione e richiede momenti si riflessione e di attenzione.<br />
App Cooker fornisce uno strumento dedicato per questo, fornendo preziosi consigli raccolti da Apple e da altri professionisti del settore.</p>
<p style="text-align: center;"><a href="http://www.i3factory.com/wp-content/uploads/mockapp_iPhone-iPad_appcooker_disegnare_prototipi.jpg"><img class="aligncenter size-full wp-image-1907" title="mockapp_iPhone-iPad_appcooker_disegnare_prototipi" src="http://www.i3factory.com/wp-content/uploads/mockapp_iPhone-iPad_appcooker_disegnare_prototipi.jpg" alt="" width="480" height="360" /></a></p>
<p><strong>iOS Mockups</strong></p>
<p>Il motore di mockup supporta l&#8217;orientamento , semplici link e unisce assime la  UI di Apple(interfaccia utente) con disegni bitmap, forme vettoriali, testo e immagini.<br />
I prototipi possono prendere vita, senza una sola riga di codice.</p>
<p><strong>L&#8217; Icona marchio di fabbrica dell&#8217;App</strong></p>
<p>L&#8217;icona è il volto della vostra applicazione. La creazione di grandi icone richiede sperimentazione e diversi tentativi fino a quando la soluzione ideale non sarà trovata. Utilizzando i tool a mano libera, con forme vettoriali o immagini potrete definire l&#8217;aspetto delle icone delle vostre idee e vedere i risultati nelle varie dimensioni e in poco tempo.</p>
<p><strong>Strumento Prezzi</strong><br />
App Cooker consente di confrontare un gran numero di scenari di prezzo per trovare il  giusto modello per la vostra applicazione. Supporta sia gli acquisti app che la pubblicità, il che rende facile prevedere ricavi, costi e profitti.</p>
<p style="text-align: center;"><a href="http://www.i3factory.com/wp-content/uploads/appcooker_disegnare_prototipi_iphone-ipad_android_strimento-tool-prezzo.jpg"><img class="aligncenter size-full wp-image-1908" title="appcooker_disegnare_prototipi_iphone-ipad_android_strimento-tool-prezzo" src="http://www.i3factory.com/wp-content/uploads/appcooker_disegnare_prototipi_iphone-ipad_android_strimento-tool-prezzo.jpg" alt="" width="480" height="360" /></a></p>
<p><strong>Descrizioni </strong><strong>App Store </strong></p>
<p>La descrizione sul prodotto pagina di iTunes è un fattore decisivo per i potenziali acquirenti. App Cooker rende lo scrivere queste informazioni un compito semplice, e fornisce un luogo per localizzare in uno qualsiasi dei App Store di 18 lingue.</p>
<p>&nbsp;</p>
<p><strong>Mock-up prima dello sviluppo di codice</strong></p>
<p>Progettare una buona applicazione è difficile. Si deve possedere  creatività, il talento, le risorse, la conoscenza, il tempo e un forte senso di autocritica; le app di successo sono sempre il risultato di un lungo processo di raffinazione.</p>
<p>Abbiamo speso tantissimo tempo, con i tanti clienti e le diverse aziende che ci contattano, per cercare di spiegare il modo migliore di progettare applicazioni per iPhone , iPad e Android.</p>
<p>Con il tempo prima o poi tutti scoprono che la progettazione di un applicazione è molto più che solo il design grafico.</p>
<p>Di seguito vi enuncio  i 10 Principi che ho raccolto dal sito di <strong>App cooker</strong>:<br />
<a href="http://www.i3factory.com/wp-content/uploads/10-Principi-per-disegnare-App-iPhone-iPad-iOS-Design.png"><img class="size-full wp-image-1903 alignright" title="10-Principi-per-disegnare-App-iPhone-iPad-iOS-Design" src="http://www.i3factory.com/wp-content/uploads/10-Principi-per-disegnare-App-iPhone-iPad-iOS-Design.png" alt="" width="376" height="360" /></a></p>
<p>1) Definire l&#8217;idea con precisione</p>
<p>2) Soddisfare le esigenze degli utenti</p>
<p>3) Descrivere un&#8217; importante Interfaccia Utente e Esperienza Utente</p>
<p>4) Utilizzare Grafica sofisticata</p>
<p>5) Iterare per raggiungere la perfezione</p>
<p>6) Essere semplici ma eleganti</p>
<p>7) Un  Icona pulita e &#8220;chiara&#8221;</p>
<p> <img src='http://i3factory.com/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /> Parlare a tono basso ma chiaramente</p>
<p>9) Stabilire un prezzo onestamente</p>
<p>10) Pensare Mobile e Tattile</p>
<p>&nbsp;</p>
<p><strong>Per concludere</strong>,</p>
<p><em>App Cooker si</em> configura come una applicazione professionale, in quanto permette di progettare tutti gli elementi di una applicazione compatibile con tutti i dispositivi Apple iOS.</p>
<p>Rivolgendosi a tutti coloro i quali hanno intenzione di far sviluppare una propria applicazione,  innanzitutto si dovrà mettere in chiaro l’idea iniziale, la compatibilità con i vari dispositivi e le varie funzionalità, successivamente bisognerà creare i vari elementi grafici del mockup, l’icona, la localizzazione sull’App Store e le prospettive di diffusione e di guadagno.</p>

<a href='http://i3factory.com/it/progettare-app-disegnare-mockapp-direttamente-con-ipad/creare_mockapp_con_appcooker/' title='creare_mockapp_con_appcooker'><img width="150" height="150" src="http://www.i3factory.com/wp-content/uploads/creare_mockapp_con_appcooker-150x150.png" class="attachment-thumbnail" alt="creare_mockapp_con_appcooker" title="creare_mockapp_con_appcooker" /></a>
<a href='http://i3factory.com/it/progettare-app-disegnare-mockapp-direttamente-con-ipad/10-principi-per-disegnare-app-iphone-ipad-ios-design/' title='10-Principi-per-disegnare-App-iPhone-iPad-iOS-Design'><img width="150" height="150" src="http://www.i3factory.com/wp-content/uploads/10-Principi-per-disegnare-App-iPhone-iPad-iOS-Design-150x150.png" class="attachment-thumbnail" alt="“In most people’s vocabularies, design means veneer. It’s interior decorating. It’s the fabric of the curtains of the sofa. But to me, nothing could be further from the meaning of design. Design is the fundamental soul of a human-made creation that ends up expressing itself in successive outer layers of the product or service. When you’re a carpenter making a beautiful chest of drawers, you’re not going to use a piece of plywood on the back, even though it faces the wall and nobody will ever see it. You’ll know it’s there, so you’re going to use a beautiful piece of wood on the back. For you to sleep well at night, the aesthetic, the quality, has to be carried all the way through.” — Steve Jobs" title="10-Principi-per-disegnare-App-iPhone-iPad-iOS-Design" /></a>
<a href='http://i3factory.com/it/progettare-app-disegnare-mockapp-direttamente-con-ipad/app_cooker_mockapp_iphone_ipad_ios_app/' title='app_cooker_mockapp_iphone_ipad_ios_app'><img width="150" height="150" src="http://www.i3factory.com/wp-content/uploads/app_cooker_mockapp_iphone_ipad_ios_app-150x150.jpg" class="attachment-thumbnail" alt="app_cooker_mockapp_iphone_ipad_ios_app" title="app_cooker_mockapp_iphone_ipad_ios_app" /></a>
<a href='http://i3factory.com/it/progettare-app-disegnare-mockapp-direttamente-con-ipad/mockapp_iphone-ipad_appcooker_disegnare_prototipi/' title='mockapp_iPhone-iPad_appcooker_disegnare_prototipi'><img width="150" height="150" src="http://www.i3factory.com/wp-content/uploads/mockapp_iPhone-iPad_appcooker_disegnare_prototipi-150x150.jpg" class="attachment-thumbnail" alt="mockapp_iPhone-iPad_appcooker_disegnare_prototipi" title="mockapp_iPhone-iPad_appcooker_disegnare_prototipi" /></a>
<a href='http://i3factory.com/it/progettare-app-disegnare-mockapp-direttamente-con-ipad/appcooker_disegnare_prototipi_iphone-ipad_android_strimento-tool-prezzo/' title='appcooker_disegnare_prototipi_iphone-ipad_android_strimento-tool-prezzo'><img width="150" height="150" src="http://www.i3factory.com/wp-content/uploads/appcooker_disegnare_prototipi_iphone-ipad_android_strimento-tool-prezzo-150x150.jpg" class="attachment-thumbnail" alt="appcooker_disegnare_prototipi_iphone-ipad_android_strimento-tool-prezzo" title="appcooker_disegnare_prototipi_iphone-ipad_android_strimento-tool-prezzo" /></a>
<a href='http://i3factory.com/it/progettare-app-disegnare-mockapp-direttamente-con-ipad/mockapp-ios_iphone_ipad_android/' title='mockapp-ios_iphone_ipad_android'><img width="150" height="150" src="http://www.i3factory.com/wp-content/uploads/mockapp-ios_iphone_ipad_android-150x150.jpg" class="attachment-thumbnail" alt="mockapp-ios_iphone_ipad_android" title="mockapp-ios_iphone_ipad_android" /></a>
<a href='http://i3factory.com/it/progettare-app-disegnare-mockapp-direttamente-con-ipad/mockapp-ios_iphone_ipad_android2/' title='mockapp-ios_iphone_ipad_android2'><img width="150" height="150" src="http://www.i3factory.com/wp-content/uploads/mockapp-ios_iphone_ipad_android2-150x150.jpg" class="attachment-thumbnail" alt="mockapp-ios_iphone_ipad_android2" title="mockapp-ios_iphone_ipad_android2" /></a>
<a href='http://i3factory.com/it/progettare-app-disegnare-mockapp-direttamente-con-ipad/mockapp-ios_iphone_ipad_android3/' title='mockapp-ios_iphone_ipad_android3'><img width="150" height="150" src="http://www.i3factory.com/wp-content/uploads/mockapp-ios_iphone_ipad_android3-150x150.jpg" class="attachment-thumbnail" alt="mockapp-ios_iphone_ipad_android3" title="mockapp-ios_iphone_ipad_android3" /></a>
<a href='http://i3factory.com/it/progettare-app-disegnare-mockapp-direttamente-con-ipad/mockapp-ios_iphone_ipad_android1/' title='mockapp-ios_iphone_ipad_android1'><img width="150" height="150" src="http://www.i3factory.com/wp-content/uploads/mockapp-ios_iphone_ipad_android1-150x150.jpg" class="attachment-thumbnail" alt="mockapp-ios_iphone_ipad_android1" title="mockapp-ios_iphone_ipad_android1" /></a>
<a href='http://i3factory.com/it/progettare-app-disegnare-mockapp-direttamente-con-ipad/mockapp-ios_iphone_ipad_android4/' title='mockapp-ios_iphone_ipad_android4'><img width="150" height="150" src="http://www.i3factory.com/wp-content/uploads/mockapp-ios_iphone_ipad_android4-150x150.jpg" class="attachment-thumbnail" alt="mockapp-ios_iphone_ipad_android4" title="mockapp-ios_iphone_ipad_android4" /></a>

<div class="AWD_facebook_likebutton "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fi3factory.com%2Fit%2Fprogettare-app-disegnare-mockapp-direttamente-con-ipad%2F&amp;send=true&amp;layout=standard&amp;width=300&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=&amp;height=40&ref=" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:40px;" allowTransparency="true"></iframe></div><p>Related posts:<ol>
<li><a href='http://i3factory.com/it/come-pubblicare-una-rivista-o-magazine-per-ipad-con-html5/' rel='bookmark' title='Come pubblicare una rivista o magazine per iPad con HTML5'>Come pubblicare una rivista o magazine per iPad con HTML5</a></li>
<li><a href='http://i3factory.com/it/modena-camera-di-commercio-con-i3factory-su-app-store/' rel='bookmark' title='made in Modena: Camera di Commercio con i3Factory su App Store'>made in Modena: Camera di Commercio con i3Factory su App Store</a></li>
<li><a href='http://i3factory.com/it/mockapp-un-tool-per-il-design-di-app-per-iphone/' rel='bookmark' title='MockApp: un tool per il design di app per iPhone'>MockApp: un tool per il design di app per iPhone</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://i3factory.com/it/progettare-app-disegnare-mockapp-direttamente-con-ipad/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Downgrade di IOS: come far tornare il vostro iPhone e iPad aggiornato con iOS 5.0.1 a iOS 4.3.3 / 4.3.4 / 4.3.5 / 5.0.0</title>
		<link>http://i3factory.com/it/downgrade-di-ios-come-far-tornare-il-vostro-iphone-e-ipad-aggiornato-con-ios-5-0-1-a-ios-4-3-3-4-3-4-4-3-5-5-0-0/</link>
		<comments>http://i3factory.com/it/downgrade-di-ios-come-far-tornare-il-vostro-iphone-e-ipad-aggiornato-con-ios-5-0-1-a-ios-4-3-3-4-3-4-4-3-5-5-0-0/#comments</comments>
		<pubDate>Tue, 21 Feb 2012 15:09:52 +0000</pubDate>
		<dc:creator>Igor Wolfango Schiaroli</dc:creator>
				<category><![CDATA[Consumer]]></category>
		<category><![CDATA[Software Gratuito]]></category>
		<category><![CDATA[Downgrade]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[iOs5]]></category>

		<guid isPermaLink="false">http://i3factory.com/it/?p=1889</guid>
		<description><![CDATA[<p>Questa procedura è dedicata a tutti gli utilizzatori sui iPhone 4 e 3GS, iPad 1 e 2 e iPod Touch che hanno aggiornato il proprio sistema operativo e che, per diversi motivi, vogliono tornare indietro.</p>

Related posts:<ol>
<li><a href='http://i3factory.com/it/cari-clienti-fare-unapp-per-ios-richiede-un-sacco-di-lavoro/' rel='bookmark' title='Costo App iPhone &amp; iPad, fare un&#8217;app per iOS richiede un sacco di lavoro!'>Costo App iPhone &#038; iPad, fare un&#8217;app per iOS richiede un sacco di lavoro!</a></li>
<li><a href='http://i3factory.com/it/pubblicare-riviste-giornali-magazine-su-ipad-con-i3factory-editorial/' rel='bookmark' title='Pubblicare riviste, giornali, magazine su iPad con i3Factory Editorial'>Pubblicare riviste, giornali, magazine su iPad con i3Factory Editorial</a></li>
<li><a href='http://i3factory.com/it/le-dimensioni-delle-icone-per-ios-iphone-ipad-osx/' rel='bookmark' title='Le dimensioni delle ICONE per iOS (iPhone, iPad, osX)'>Le dimensioni delle ICONE per iOS (iPhone, iPad, osX)</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="AWD_facebook_likebutton "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fi3factory.com%2Fit%2Fdowngrade-di-ios-come-far-tornare-il-vostro-iphone-e-ipad-aggiornato-con-ios-5-0-1-a-ios-4-3-3-4-3-4-4-3-5-5-0-0%2F&amp;send=true&amp;layout=standard&amp;width=300&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=&amp;height=40&ref=" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:40px;" allowTransparency="true"></iframe></div><ul class="lang_switch"></ul>
<div id="attachment_1890" class="wp-caption aligncenter" style="width: 450px"><a href="http://www.i3factory.com/wp-content/uploads/downgradare_iphone_ipad_ios.png"><img class="size-full wp-image-1890" title="downgradare_iphone_ipad_ios" src="http://www.i3factory.com/wp-content/uploads/downgradare_iphone_ipad_ios.png" alt="" width="440" height="361" /></a><p class="wp-caption-text">Pentiti dell&#39;aggiornamento IOS5, downgrade di iPhone e iPad al sistema precedente</p></div>
<p>Questa procedura è dedicata a tutti gli utilizzatori sui iPhone 4 e 3GS, iPad 1 e 2 e iPod Touch che hanno aggiornato il proprio sistema operativo e che, per diversi motivi, vogliono tornare indietro.</p>
<p>Ho scritto questa breve guida dopo aver aggiornato il mio vecchio iPad 1 con la versione 5 di IOS. Dopo questa operazione l&#8217;iPad 1 sembra essere molto piu&#8217; lento di prima e la batteria sembra anche durare meno, per cui ho deciso di ritornare alla versione 4.x dato che un &#8220;vecchio&#8221; dispositivo funziona sicuramente meglio con un &#8220;vecchio&#8221; sistema operativo.</p>
<p>Tutto questo vi sembrerà assurdo, dato che ho definito <em>vecchio</em> un dispositivo che  ho acquistato un anno fa; a questo proposito Vi consiglio un documentario che fa capire cosa e&#8217; esattamente la &#8220;obsolescenza programmata&#8221; e che potete visionare su questo blog: <a title="Documentario che spiega come le industrie modificano i prodotti per farli smettere di funzionare opo un certo periodo: obsolescenza programmata" href="http://energiasi.com/obsolescenza-programmata/" target="_blank">http://energiasi.com/obsolescenza-programmata/<br />
</a></p>
<p><strong>Avete Aggiornato il firmware del vostro iPhone, iPad o iPod touch?</strong></p>
<p>Qualora abbiate aggiornato il vostro device Apple ad iOS 5.0.1 ma volete tornare indietro siete ancora in tempo per effettuare il cosidetto <em>downgrade di sistema operativo</em>.<br />
Limitazione: se siete dei developer e i vostro dispositivo è stato aggiornato alla versione di iOS 5.1 (disponibile per il momento solo per gli sviluppatori iscritti al Developer Program) non potete effettuare il downgrade dato che  questo tipo di operazione è stata direttamente bloccata da Apple.</p>
<p><strong>Prima di tutto </strong><br />
Se non avete salvato i certificati SHSH del vostro dispositivo non potrete andare avanti.</p>
<p>I certificati SHSH sono indispensabili per le procedure di downgrade ad un firmware meno recente.Consigliamo dunque a tutti gli utenti interessati  di salvare i propri certificati SHSH con il software TinyUmbrella, che potete scaricare da <a href="http://thefirmwareumbrella.blogspot.com/">questa pagina</a>.</p>
<p><a href="http://www.ipaddisti.it/tinyumbrella-si-aggiorna-di-nuovo-aggiunto-il-supporto-a-ios-5-beta-3.html">TinyUmbrella</a>, è un’ utility sviluppata da Notcom che permetterà di salvare i certificati SHSH sul computer.<br />
Disponibile sia in vesione Mac che Win necessita di  <a href="http://www.java.com/it/download/">Java</a> installato sul proprio pc.</p>
<p><strong>Procedura per salavare i dcertificati SHSH</strong></p>
<ul>
<li>Avviare TinyUmbrella</li>
</ul>
<ul>
<li>Collegare il dispositivo iPhone o iPad o iPod al computer</li>
<li>Cliccare su Save SHSH. Il software salverà  i certificati SHSH sul vostro disco.</li>
</ul>
<p>Solo ora possiamo procedere ad effettuare il  downgrade.</p>
<p><strong>Downgrade di firmaware iOS</strong></p>
<p>Mettete il Vostro iPhone, iPod Touch o iPad  in modalità DFU:</p>
<ul>
<li>Spegnere il dispositivo</li>
</ul>
<ul>
<li>Riaccendere tenendo premuto contemporaneamente gli unici 2 tasti ( Power + Home) per circa 10 secondi,quindi  rilasciare il tasto Power e continuare a tenere premuto il tasto Home per altri 10 secondi</li>
</ul>
<ul>
<li>    A questo punto non vi resta che collegare l&#8217;iPhone, o l&#8217;iPad, al  computer:</li>
</ul>
<p>Su Windows o Mac, andiamo ad aprire il file hosts  (ad esempio, il percorso potrebbe essere su windows  Sistema -&gt; Driver -&gt; Etc. -&gt; Hosts mentre su Mac per modificare il file host su Mac Os x dovete seguire questi passi:</p>
<ol>
<li>Clicca su Finder</li>
<li>Clicca su Applicazioni</li>
<li>Entra nella cartella Utility</li>
<li>Clicca due volte su Terminale</li>
<li>Copia e Incolla la seguente stringa nel terminale:  sudo /Applications/TextEdit.app/Contents/MacOS/TextEdit /etc/hosts</li>
<li>A questo punto inserisci la password di sistema e premete invio</li>
<li>Il file Hosts verrà aperto in textEdit dove potrai editarlo e successivamente salvarlo</li>
</ol>
<p><em>NB: Effettuiamo un copia di questo file per sicurezza, poi apriamolo con un qualsiasi editor di testo</em></p>
<ul>
<li>    Con il file aperto alla fine del testo, incolliamo questo codice :<br />
74.208.105.171    gs.apple.com</li>
<li>   Salviamo il file</li>
</ul>
<ul>
<li>    Apriamo iTunes e procediamo con il Restore del nostro device premendo il tasto Shift (Windows) o Alt (Mac)</li>
</ul>
<ul>
<li>    Verrà richiesto di scegliere un nuovo firmware da caricare: quindi precedentemente dobbiamo aver scaricato la versione di iOS che vogliamo sul nostro device (possiamo scegliere iOS 4.3.3, 4.3.4, 4.3.5, …).</li>
</ul>
<p>In questo modo, abbiamo effettuato il downgrade di iOS!</p>
<p>NB: Qualora comparisse un messaggio d’ errore dopo aver selezionato il firmware dovrete aprire TinyUmbrella e cliccare sull’ opzione Exit Recovery.</p>
<p>Allego un Video tra i tanti presenti su youtube, in lingua inglese:</p>
<p style="text-align: center;"><iframe src="http://www.youtube.com/embed/GKfrab3H7xE" frameborder="0" width="560" height="315"></iframe></p>
<p>&nbsp;</p>
<div class="AWD_facebook_likebutton "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fi3factory.com%2Fit%2Fdowngrade-di-ios-come-far-tornare-il-vostro-iphone-e-ipad-aggiornato-con-ios-5-0-1-a-ios-4-3-3-4-3-4-4-3-5-5-0-0%2F&amp;send=true&amp;layout=standard&amp;width=300&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=&amp;height=40&ref=" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:40px;" allowTransparency="true"></iframe></div><p>Related posts:<ol>
<li><a href='http://i3factory.com/it/cari-clienti-fare-unapp-per-ios-richiede-un-sacco-di-lavoro/' rel='bookmark' title='Costo App iPhone &amp; iPad, fare un&#8217;app per iOS richiede un sacco di lavoro!'>Costo App iPhone &#038; iPad, fare un&#8217;app per iOS richiede un sacco di lavoro!</a></li>
<li><a href='http://i3factory.com/it/pubblicare-riviste-giornali-magazine-su-ipad-con-i3factory-editorial/' rel='bookmark' title='Pubblicare riviste, giornali, magazine su iPad con i3Factory Editorial'>Pubblicare riviste, giornali, magazine su iPad con i3Factory Editorial</a></li>
<li><a href='http://i3factory.com/it/le-dimensioni-delle-icone-per-ios-iphone-ipad-osx/' rel='bookmark' title='Le dimensioni delle ICONE per iOS (iPhone, iPad, osX)'>Le dimensioni delle ICONE per iOS (iPhone, iPad, osX)</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://i3factory.com/it/downgrade-di-ios-come-far-tornare-il-vostro-iphone-e-ipad-aggiornato-con-ios-5-0-1-a-ios-4-3-3-4-3-4-4-3-5-5-0-0/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Lo sviluppo di software è creazione di nuova conoscenza. L&#8217;azienda vuole evolvere il proprio know-how?</title>
		<link>http://i3factory.com/it/lo-sviluppo-di-software-e-creazione-di-nuova-conoscenza-lazienda-vuole-evolvere-il-proprio-know-how/</link>
		<comments>http://i3factory.com/it/lo-sviluppo-di-software-e-creazione-di-nuova-conoscenza-lazienda-vuole-evolvere-il-proprio-know-how/#comments</comments>
		<pubDate>Wed, 08 Feb 2012 20:07:04 +0000</pubDate>
		<dc:creator>Igor Wolfango Schiaroli</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[development]]></category>

		<guid isPermaLink="false">http://i3factory.com/it/?p=1837</guid>
		<description><![CDATA[<p>I problemi delle grandi aziende IT è spesso ricercato nel settore sviluppo, tanto che più è grande l'azienda e piu' si cerca di esternalizzare proprio lo sviluppo. In alcuni casi si cerca di manterenere il controllo sul know-how internalizzando i settori funzionali a scapito del development.</p>

Related posts:<ol>
<li><a href='http://i3factory.com/it/metodologia-agile-per-il-project-manager/' rel='bookmark' title='Metodologia &#8220;Agile&#8221; per il project manager'>Metodologia &#8220;Agile&#8221; per il project manager</a></li>
<li><a href='http://i3factory.com/it/stimare-il-tempo-di-sviluppo-software-come-per-app-per-ios-iphone-e-ipad-android/' rel='bookmark' title='Stimare il tempo di sviluppo software, come per App iOS, iPhone e iPad, &amp; Android'>Stimare il tempo di sviluppo software, come per App iOS, iPhone e iPad, &#038; Android</a></li>
<li><a href='http://i3factory.com/it/suggerimenti-per-la-creazione-di-icone-e-artworks-per-il-retina-display/' rel='bookmark' title='Suggerimenti per la creazione di Icone e Artworks per il Retina Display'>Suggerimenti per la creazione di Icone e Artworks per il Retina Display</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="AWD_facebook_likebutton "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fi3factory.com%2Fit%2Flo-sviluppo-di-software-e-creazione-di-nuova-conoscenza-lazienda-vuole-evolvere-il-proprio-know-how%2F&amp;send=true&amp;layout=standard&amp;width=300&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=&amp;height=40&ref=" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:40px;" allowTransparency="true"></iframe></div><ul class="lang_switch"></ul>
<p><a href="http://www.i3factory.com/wp-content/uploads/conoscenza_liberta_app_sviluppo.png"><img class="aligncenter size-full wp-image-1848" title="conoscenza_liberta_app_sviluppo" src="http://www.i3factory.com/wp-content/uploads/conoscenza_liberta_app_sviluppo.png" alt="" width="400" height="300" /></a></p>
<p>Con questo articolo cerco di rispondere ad alcune domande.</p>
<ul>
<li>L&#8217;azienda vuole evolvere il proprio know-how?</li>
</ul>
<ul>
<li>Che cosa sta uccidendo molte aziende che si occupano di sviluppo?</li>
</ul>
<p>I problemi delle grandi aziende IT è spesso ricercato nel settore sviluppo, tanto che più è grande l&#8217;azienda e piu&#8217; si cerca di esternalizzare proprio lo sviluppo. In alcuni casi si cerca di manterenere il controllo sul know-how internalizzando i settori funzionali a scapito del development.<br />
Detto questo non penso lontanamente che ci possa essere un problema nell&#8217;IT a causa dell&#8217;assenza di capacità professionali d&#8217;eccellenza all&#8217;interno dell&#8217;azienda, piuttosto sono convinto che il settore sviluppo sia proprio quello che concentra più cervelli interessanti; chi si dedica allo sviluppo lo fa quasi sempre per la passione nell&#8217;approfondire la conoscenza.<br />
Per questo motivo vedo il problema dello sviluppo incentrato su come gli sviluppatori vengono messi assieme in azienda, come vengono gestiti e per quale motivo vengono assunti e con quale criterio gli vengono affidati i ruoli.</p>
<p>Nella  esperienza avuta ho potuto vedere risultati d&#8217;eccellenza e di qualità internazionale solo in brevi momenti  , solo in determate &#8220;isole felici&#8221; che il mercato era pronto ad assorbire. Questi gruppi di sviluppo sono evaporati nel tempo in molte delle aziende che ho conosciuto.</p>
<p><strong>Le ipotesi che stanno dietro il recruiting di sviluppatori.</strong></p>
<p>Per spiegare questa situazione ho intenzione di rendere espliciti alcuni dei presupposti taciti che spesso in una grande azienda sono alla base del recruiting di un team del settore sviluppo. Questo è un punto cruciale poichè, nella gran parte delle organizzazioni, chi influenza queste decisioni il più delle volte non potrà mai essere ritenuto responsabile.</p>
<p>Basandomi sulle idee di Ash Moran, i presupposti dell&#8217;organizzazione in questione sembrano essere i seguenti:</p>
<ol>
<li>Gli sviluppatori sono fungibili</li>
<li>La produttività è proporzionale alle ore di  sviluppo</li>
<li> I requisiti sono tutti necessari</li>
</ol>
<p><strong>1. Gli sviluppatori sono fungibili</strong></p>
<p>Tom de Marco, nel suo &#8220;<a href="http://www.amazon.com/Slack-Getting-Burnout-Busywork-Efficiency/dp/0767907698/" target="_blank">Slack &#8211; manuale per manager, imprenditori e Ceo</a>&#8220;,  definisce &#8220;<em>Il mito della risorsa fungibile</em>&#8220;. Molti posti di lavoro in fabbrica e in magazzino sono ampiamente fungibili, nel senso che il tempo di portare qualcuno fino alla piena produttività è pressoché irrilevante (ore o giorni). Questo non è vero quando si parla di sviluppo, dove anche se un neo assunto conosce il linguaggio di programmazione, dato il contesto, ci vorrà  molto tempo per  l&#8217;apprendimento del codice di base e delle metodologie aziendali.</p>
<p>Non credo che gli sviluppatori  siano <em>fungibili</em> (almeno nella stragrande maggioranza dei casi), ma ho partecipato a innumerevoli meeting in cui i decision maker si comportavano come se questa ipotesi fosse valida. Ogni volta , stime alla mano, la stragrande maggioranza dei managers agisce come se un nuovo sviluppatore possa immediatamente aumentare la produttività del team.<br />
Questa assunzione è in contraddizione con ciò che gli sviluppatori pensano espressamente in merito alla natura del proprio lavoro.</p>
<p><strong>2. La produttività è proporzionale alle ore di sviluppo</strong></p>
<p>Ci sono due forme degenerative di pensiero per questa ipotesi:</p>
<p>1) L&#8217;idea che uno sviluppatore che lavora 10 ore al giorno sarà il 25% più produttivo di uno sviluppatore di lavoro di 8 ore al dì</p>
<p>2) La convinzione che un team di 10 sviluppatori è del 25% più produttivo di un team di 8.</p>
<p>Ho parlato di degenerazione in quanto sono convinto, come Ash, che la natura dello sviluppo del software sia la creazione di nuova conoscenza, concetto che ho descrito in un precedente articolo.<br />
Dobbiamo pensare agli svilppatori come figure che affrontano un compito creativo. Un lavoro che coinvolge costantemente il programmatore, chiamato sempre più spesso a prendere decisioni logiche.</p>
<p>L&#8217;ipotesi <em>produttività-tempo</em> si basa sull&#8217;idea che la produttività sia rappresentabile come una bilancia a squadra lineare. Questo non è vero nello sviluppo, per la semplice ragione che la complessità nella gestione di un team non è per forza relativa al numero di persone coinvolte, ma è funzione della natura del coinvolgimento e della quantità di comunicazione necessaria per svolgere un determinato compito.<br />
Basta pensare che a volte è più semplice far svolgere un compito a molte persone, piuttosto che cercare di mettere daccordo 4 persone sulla scelta di quale film andare a vedere dopo cena.<br />
Ovviamente dipende dal compito, così come alcuni importanti progetti informatici si possono svolgere meglio con una piccola squadra di lavoro.</p>
<p>La disattenzione è la causa principale di importanti bug.</p>
<p><em>Vi segnalo un interessante articolo: <a href="http://www.nytimes.com/2011/08/21/magazine/do-you-suffer-from-decision-fatigue.html?_r=2&amp;pagewanted=all" target="_blank">Do You Suffer From Decision Fatigue?</a> ; il cervello umano ha una capacità limitata di fare scelte, e una volta stanchi, ci trova spesso a ricercare scorciatoie.</em></p>
<p><strong>3. I requisiti sono tutti necessari</strong></p>
<p>Nella maggior parte delle grandi aziende informatiche, i requisiti funzionali  vengono definiti al di fuori del team di sviluppo. A meno che il team di sviluppo non stia scrivendo software esclusivamente per se stesso, il cosidetto &#8220;Settore Funzionale&#8221; (Functionals) sarà coinvolto nel redigere un documento in cui è descritto il lavoro che deve essere svolto dal settore sviluppo. In seguito a volte accade che il 30% delle funzionalità nel software non saranno mai usate o non necessarie, quindi almeno il 30% del tempo di sviluppo diventa puro spreco.  Tuttavia, molte squadre sono contrattualmente obbligate a fornire una specifica (documento funzionale) senza un riferimento al valore delle caratteristiche della specifica stessa, questo può essere una fonte di bugs difficile da sanare.</p>
<div dir="ltr"></div>
<div id="gt-res-content">
<h3 dir="ltr"><strong>Il team impegnato</strong></h3>
<div dir="ltr">Quando il team di sviluppo non sta funzionando a pieno regime, si perde almeno il 25% del  tempo a rielaborare e a fare manutenzione. Se succede questo la squadra non produce codice di massima qualità, anche se le competenze esistenti del team sono altissime. Alcuni bug vengono introdotti da sviluppatori che sono stanchi e troppo stressati. L&#8217;overhead di comunicazione riduce la produttività a breve termine.</div>
</div>
<div dir="ltr"></div>
<div dir="ltr"><strong>Le dimensioni del team</strong></div>
<div dir="ltr"></div>
<div dir="ltr">Quanti sviluppatori si dovrebbero assumere?</div>
<div dir="ltr">L&#8217;aumento della capacità non è l&#8217;unico motivo per cui si consiglia di assumere personale. Un motivo molto valido è la ridondanza. Le squadre molto piccole sono vulnerabili alla legge di Murphy; se il vostro unico sviluppatore viene investito da un autobus, il progetto sarà in gravissimo pericolo. Ma è anche possibile che un team di 10 persone sia devastato da un singolo incidente nello stesso bus. Alcune questioni sulla dimensione di varie squadre di lavoro sono dettagliate in un articolo di Christopher Allen dal titolo <a href="http://www.lifewithalacrity.com/2004/03/the_dunbar_numb.html" target="_blank">Il numero di Dunbar come un limite alla dimensione del gruppo</a>.Un team di piccole dimensioni può essere meno rischioso di quello che appare, dato che  gli sviluppatori sono molto raramente investiti da autobus, come è vero però che vanno gestiti dato che molto raramente lasciano il lavoro a causa della retribuzione.<br />
I programmatori molto frequentemente lasciano il team a causa di condizioni di lavoro insoddisfacenti, condizioni che sono causate quasi sempre dalle decisioni dei manager.<br />
C&#8217;è anche una situazione in cui si può desiderare di aumentare la dimensione della tua squadra: quando la persona che stai aggiungendo ha la conoscenza e l&#8217;esperienza per contribuire a migliorare l&#8217;efficacia di tutti gli altri. In questo caso, però, le loro responsabilità dovranno estendersi ben oltre lo sviluppo puro.</div>
<div dir="ltr"></div>
<div style="text-align: left;" dir="ltr"><strong>Cosa fare?</strong></div>
<div style="text-align: left;" dir="ltr"></div>
<div style="text-align: left;" dir="ltr">La prima cosa è fare un passo indietro e verificare se si sta cercando di risolvere un problema fondamentalmente causato dall&#8217;inutilità sistematica di immetere un effort maggiore al team.<br />
Sappiamo che se un capitano di un&#8217;imbarcazione, che vedendo una falla, ordinasse a tutti i marinai di svuotare l&#8217;acqua piuttosto tenere sotto controllo la situazione e chiamare un singolo ingeniere per riparare la falla, sarebbe inefficace.<br />
Fred Brooks ha espresso la Legge di Brooks più di trent&#8217;anni fa: &#8220;L&#8217; Aggiunta di manodopera per un progetto software in ritardo porta più ritardo&#8221;.</div>
<div style="text-align: left;" dir="ltr"></div>
<div style="text-align: left;" dir="ltr">Migliorare la produttività di un team che sviluppa software è difficile. Si tratta di comprendere il business, il team, la storia e gli ostacoli che bloccano il progresso. Si tratta di affrontare un problema complesso, sensibile al contesto.<br />
Noi vediamo il mondo filtrato dalle metafore che siamo in grado di esprimere.</div>
<div class="AWD_facebook_likebutton "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fi3factory.com%2Fit%2Flo-sviluppo-di-software-e-creazione-di-nuova-conoscenza-lazienda-vuole-evolvere-il-proprio-know-how%2F&amp;send=true&amp;layout=standard&amp;width=300&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=&amp;height=40&ref=" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:40px;" allowTransparency="true"></iframe></div><p>Related posts:<ol>
<li><a href='http://i3factory.com/it/metodologia-agile-per-il-project-manager/' rel='bookmark' title='Metodologia &#8220;Agile&#8221; per il project manager'>Metodologia &#8220;Agile&#8221; per il project manager</a></li>
<li><a href='http://i3factory.com/it/stimare-il-tempo-di-sviluppo-software-come-per-app-per-ios-iphone-e-ipad-android/' rel='bookmark' title='Stimare il tempo di sviluppo software, come per App iOS, iPhone e iPad, &amp; Android'>Stimare il tempo di sviluppo software, come per App iOS, iPhone e iPad, &#038; Android</a></li>
<li><a href='http://i3factory.com/it/suggerimenti-per-la-creazione-di-icone-e-artworks-per-il-retina-display/' rel='bookmark' title='Suggerimenti per la creazione di Icone e Artworks per il Retina Display'>Suggerimenti per la creazione di Icone e Artworks per il Retina Display</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://i3factory.com/it/lo-sviluppo-di-software-e-creazione-di-nuova-conoscenza-lazienda-vuole-evolvere-il-proprio-know-how/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Metodologia &#8220;Agile&#8221; per il project manager</title>
		<link>http://i3factory.com/it/metodologia-agile-per-il-project-manager/</link>
		<comments>http://i3factory.com/it/metodologia-agile-per-il-project-manager/#comments</comments>
		<pubDate>Tue, 07 Feb 2012 19:45:27 +0000</pubDate>
		<dc:creator>Igor Wolfango Schiaroli</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Agile Manifesto]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[Management]]></category>
		<category><![CDATA[Project]]></category>

		<guid isPermaLink="false">http://i3factory.com/it/?p=1843</guid>
		<description><![CDATA[<p>Nel febbraio 2001, in una stazione scistica nel Wasatch Mountains dello Utah, diciassette persone si sono incontrate per parlare, sciare, rilassarsi, e cercare di trovare qualcosa in comune.<br />
Ciò che è emerso è stato il Manifesto Agile Software Development.</p>

Related posts:<ol>
<li><a href='http://i3factory.com/it/stimare-il-tempo-di-sviluppo-software-come-per-app-per-ios-iphone-e-ipad-android/' rel='bookmark' title='Stimare il tempo di sviluppo software, come per App iOS, iPhone e iPad, &amp; Android'>Stimare il tempo di sviluppo software, come per App iOS, iPhone e iPad, &#038; Android</a></li>
<li><a href='http://i3factory.com/it/k-team-presenta-i-corsi-i3factory-a-didamatica-2011-aica-politecnico-di-torino/' rel='bookmark' title='K-Team presenta i Corsi i3Factory a DIDAMATICA 2011 (AICA, Politecnico di Torino)'>K-Team presenta i Corsi i3Factory a DIDAMATICA 2011 (AICA, Politecnico di Torino)</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="AWD_facebook_likebutton "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fi3factory.com%2Fit%2Fmetodologia-agile-per-il-project-manager%2F&amp;send=true&amp;layout=standard&amp;width=300&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=&amp;height=40&ref=" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:40px;" allowTransparency="true"></iframe></div><ul class="lang_switch"></ul>
<div id="attachment_1846" class="wp-caption aligncenter" style="width: 460px"><a href="http://www.i3factory.com/wp-content/uploads/metodo_pratiche_agile_chart_manifesto_ita.png"><img class="size-full wp-image-1846" title="metodo_pratiche_agile_chart_manifesto_ita" src="http://www.i3factory.com/wp-content/uploads/metodo_pratiche_agile_chart_manifesto_ita.png" alt="" width="450" height="450" /></a><p class="wp-caption-text">Metodo Agile</p></div>
<p>Questo articolo nasce dopo una lunga &#8220;navigazione&#8221; tra moltissime pagine web che ho letto al fine di documentarmi meglio sulle metodologie che istintivamente ho sempre messo in essere quando ho avuto modo di gestire uno o più progetti.</p>
<p>Nel febbraio 2001, in una stazione scistica nel Wasatch Mountains dello Utah, diciassette persone si sono incontrate per parlare, sciare, rilassarsi, e cercare di trovare qualcosa in comune. Ciò che è emerso è stato il Manifesto Agile Software Development. I rappresentanti di Extreme Programming, Scrum, DSDM, Adaptive Software Development, Crystal, Feature-Driven Development, Pragmatic Programming, e altri si trovavano di fronte alla necessità di un&#8217;alternativa alla documentazione che guida il processo, e alle pesanti metodologie di sviluppo software.</p>
<p>Quanto è emerso da questo incontro è stata la stesura simbolica di un <em>Manifesto per il Software Agile Development</em> firmato da tutti i partecipanti che si autonominarono &#8220;<em>L&#8217;Alleanza Agile</em>&#8220;. Questo gruppo di pensatori indipendenti sullo sviluppo software, a volte concorrenti tra loro, hanno convenuto sul Manifesto for Agile Software Development visualizzato sul  sito web  <a href="http://agilemanifesto.org/" target="_blank">agilemanifesto.org</a>/.</p>
<p>Propongo di seguito la traduzione fatta da Jacopo Romei aul suo sito web.</p>
<h1 style="text-align: center;">Manifesto per lo Sviluppo Agile di Software</h1>
<p style="text-align: center;">Stiamo ricercando modi migliori di sviluppare software facendolo e aiutando gli altri a farlo.</p>
<p style="text-align: center;">Grazie a questa attività siamo arrivati a considerare importanti:</p>
<ul style="text-align: center;">
<li><strong>Gli individui e le interazioni</strong> più dei processi e degli strumenti</li>
<li><strong>Il software funzionante</strong> più che la documentazione esaustiva</li>
<li><strong>La collaborazione col cliente</strong> più che la negoziazione del contratto</li>
<li><strong>Rispondere al cambiamento</strong> più che seguire i piani</li>
</ul>
<p style="text-align: center;">Ovvero, fermo restando il valore delle entità a destra, consideriamo più importanti le entità a sinistra.</p>
<p><a title="I Dodici Principi del Software Agile" href="http://www.manifestoagile.it/principi.html">I Dodici Principi del Software Agile</a> <a title="I firmatari" href="http://agilemanifesto.org/sign/display.cgi"><br />
Vedi i firmatari (via agilemanifesto.org)</a><br />
<a title="Gli autori" href="http://agilemanifesto.org/authors.html">Riguardo gli autori (via agilemanifesto.org)</a><br />
<a title="La storia del Manifesto" href="http://agilemanifesto.org/history.html">Riguardo il Manifesto (via agilemanifesto.org)</a><br />
<a title="La traduzione del Manifesto Agile" href="http://www.manifestoagile.it/traduzione.html">Riguardo questa traduzione</a></p>
<p>&nbsp;</p>
<div id="imCellStyle_9">
<div id="imTextObject_9">
<h3><strong>I 12 principi sottostanti al Manifesto Agile</strong></h3>
<p>1.  La nostra massima priorità è soddisfare il cliente rilasciando software di valore, fin da subito e in maniera continua.</p>
<p>2.  Accogliamo i cambiamenti nei requisiti, anche a stadi avanzati dello sviluppo.</p>
<p>3.  I processi agili sfruttano il cambiamento a favore del vantaggio competitivo del cliente.</p>
<p>4.  Consegniamo frequentemente software funzionante, con cadenza variabile da un paio di settimane a un paio di mesi, preferendo i periodi brevi.</p>
<p>5.  Committenti e sviluppatori devono lavorare insieme quotidianamente per tutta la durata del progetto.</p>
<p>6.  Fondiamo i progetti su individui motivati. Diamo loro l&#8217;ambiente e il supporto di cui hanno bisogno e confidiamo nella loro capacità di portare il lavoro a termine.</p>
<p>7.  Una conversazione face to face (o meglio skype to skype) è il modo più efficiente e più efficace per comunicare con il team ed all&#8217;interno del team.</p>
<p>8.  Il software funzionante è il principale metro di misura di progresso. I processi agili promuovono uno sviluppo sostenibile. Gli sponsor, gli sviluppatori e gli utenti dovrebbero essere in grado di mantenere indefinitamente un ritmo costante.</p>
<p>9.  La continua attenzione all&#8217;eccellenza tecnica e alla buona progettazione esaltano l&#8217;agilità.</p>
<p>10.  La semplicità -<wbr> l&#8217;arte di massimizzare la quantità di lavoro non svolto -</wbr><wbr> è essenziale.</wbr></p>
<p>11.  Le architetture, i requisiti e la progettazione migliori emergono da team che si auto-<wbr>organizzano.</wbr></p>
<p>12.  A intervalli regolari il team riflette su come diventare più efficace, dopodiché regola e adatta il proprio comportamento di conseguenza.</p>
<p>L&#8217;utilizzo di questo approccio rispetto ai processi più tradizionali di sviluppo (a cascata o iterativi) risulta più idoneo per progetti di dimensioni medio-<wbr>piccole, con gruppi di lavoro non superiori alle 8-</wbr><wbr>10 persone.Gruppi più grandi rischiano infatti di non riuscire ad applicare con efficacia le discipline collaborative previste dal modello Agile.<br />
</wbr></p>
</div>
</div>
<h3><strong>Processo Agile</strong></h3>
<p>Agile non è un processo specifico, ma piuttosto un termine generico per un gruppo di metodologie e di approcci che hanno una base simile. Questi approcci, tra cui Extreme Programming, Dynamic System Development Method, Scrum, Crystal e Lean tra gli altri, si basano sulla realizzazione di alta qualità, lavorando software presto e spesso, e la creazione di soddisfazione del cliente.</p>
<p>Sebbene ciascuno dei metodi che formano la famiglia dei processi agili ha un obiettivo simile, si raggiunge questo obiettivo attraverso pratiche diverse.</p>
<p>In questo articolo ho preso le migliori pratiche che abbiamo visto e fatto il lavoro di elencare tutti i processi e metterli insieme.</p>
<p>Immaginiamo una  figura a cerchi (come l&#8217;immagine dell&#8217;articolo)  come una rappresentazione di base di queste  pratiche agili che abbiamo distillato;<br />
il cerchio più al centro  indica le pratiche che un paio di programmatori usano in quotidiano. Il successivo cerchio esterno  mostra le pratiche che vengono utilizzati da un team di sviluppatori. Il cerchio più esterno ci dà pratiche utilizzate da tutte le persone coinvolte in un progetto come &#8220;I clienti, sviluppatori, tester, analisti aziendali, ecc</p>
<p>Ciascuna delle pratiche nei cerchi si riferisce direttamente ai valori fondamentali della filosofia Agile mostrati ai quattro angoli: Comunicazione, Feedback, Coraggio e Semplicità. Cioè, ogni pratica ci dà un modo concreto per seguire i valori Agile e renderli parte del processo.</p>
<h3><strong>Elenchiamo le metodologie del modello &#8220;Agile&#8221;.</strong></h3>
<p><strong>Agile Unified Process</strong></p>
<p>Si tratta di una versione semplificata dell&#8217;IBM Rational Unified Process (RUP). Descrive un approccio semplice per lo sviluppo di software applicativo utilizzando tecniche agili e concetti propri del RUP.</p>
<p><strong>Dynamic System Development Process</strong></p>
<p>Si tratta di un metodo basato sul Rapid Application Development, un approccio iterativo e incrementale che enfatizza il continuo coinvolgimento di utenti e cliente.</p>
<p>Studiato per progetti di sviluppo di sistemi informativi caratterizzati da schedulazioni e budget ridotti e indirizza le più comuni cause di fallimento di un progetto, come il superamento del budget, il mancato rispetto delle date di consegna, il mancato coinvolgimento degli utenti finali e del top management.</p>
<p>Il suo obiettivo è di consegnare progetti nei tempi e costi previsti, adattando le modifiche ai requisiti in corso d&#8217;opera.</p>
<p><strong>XTreme Programming</strong></p>
<p>Extreme Programming (XP) è una disciplina che organizza i gruppi di lavoro verso la produzione di software di alta qualità in modo più produttivo che con metodi tradizionali. XP cerca di ridurre i costi delle modifiche ai requisiti decomponendo le attività di sviluppo in molti cicli brevi piuttosto che in un unico lungo ciclo.</p>
<p><strong>Feature Driven Development</strong></p>
<p>Un processo di sviluppo software iterativo ed incrementale che miscela una serie di buone pratiche in un insieme coeso. Queste pratiche sono orientate allo sviluppo di funzionalità nel rispetto delle esigenze del cliente, suddividendo l&#8217;attività di sviluppo in singole componenti (Feature) che procedono parallelamente.</p>
<p><strong>Scrum</strong></p>
<p>Un framework iterativo e incrementale per la gestione di progetti. Si basa su tre semplici punti: <em>Sprint</em>, <em>Backlog</em> e <em>Scrum Meeting</em>.<br />
Molto simile ad <em>Extreme Programming</em> prevede di dividere il progetto in blocchi rapidi di lavoro (Sprint) alla fine dei quali consegnare una versione al cliente, indica come definire i dettagli del lavoro da fare nell&#8217;immediato futuro (Backlog) per averne una definizione estesa, organizza riunioni giornaliere del team di sviluppo (Scrum Meeting) per verificare cosa si è fatto e cosa si farà.</p>
<p>&nbsp;</p>
<h3> <strong>Le sette pratiche centrali di lavoro Agile</strong></h3>
<p>Il lavoro Agile  si compone di 7 pratiche di base. Queste pratiche costituiscono un solido punto di partenza per qualsiasi persona, gruppo o comunità che voglia seguire la via Agile.</p>
<p><strong>Self-Organizing Team</strong></p>
<p>Qualsiasi gruppo di persone che desiderano essere un Team Agile ha bisogno di prendere l&#8217;iniziativa e di decidere autonomamente su come sta andando il lavoro (processo) e su come ha intenzione di fare il lavoro (prodotto). Il termine &#8220;squadra&#8221; si applica in generale a qualsiasi gruppo formato di persone che stanno lavorando insieme verso un obiettivo comune.</p>
<p>Il risultato più importante del team di sviluppo è lo stesso team, e non le specifiche competenze e capacità che gli individui imparano.</p>
<p>Se la squadra è parte di un&#8217;organizzazione più ampia, l&#8217;organizzazione deve dare alla squadra lo spazio, l&#8217;autorità e la sicurezza per riuscire ad essere auto-organizzati. Riguardo alla leadership, l&#8217;organizzazione è responsabile per la determinazione del &#8220;perché?&#8221;, Alcuni vincoli sul &#8220;come?&#8221;, Lasciando poi al team di rispondere alla necessità nel miglior modo possibile.</p>
<p>Questa pratica è Conosciuta anche come: Team totale (Extreme Programming), Cross-Functional Team (gestione aziendale).</p>
<p><strong>Deliver Frequently</strong></p>
<p>Agile utilizza brevi periodi di tempo per monitorare il processo di erogazione di valore. Ognuna di queste iterazioni o timeboxes è strutturata in modo tale, in realtà, che la squadra o il gruppo quando finisce un pezzo di lavoro lo consegna ai soggetti interessati.<br />
Prima che i prodotti  possano essere consegnati, il valore maggiore puo&#8217; essere ottenuto da questi prodotti. Questo valore aggiunto è derivato da opportunità quali le vendite precedenti, vantaggio competitivo, feedback , e riduzione dei rischi.</p>
<p>C&#8217;è un compromesso: più breve è il tempo di consegna, minore è valore che sarà dato a quel pezzo.</p>
<p>Conosciuto anche come: Sprint (Scrum), iterazione (Extreme Programming), timeboxing (generico), valore temporale del denaro (contabilità).</p>
<p><strong>Plan to Learn</strong></p>
<p>Ogni tipo di lavoro è disciplinato da un orizzonte di prevedibilità. Qualsiasi piano che si estende al di là di questo orizzonte di prevedibilità è destinato a fallire. <em>Agile</em>  utilizza un ciclo di apprendimento legato alla pianificazione dei lavori e accoglie questo come inevitabile.</p>
<p>Innanzitutto, è richiesto un obiettivo. Questo obiettivo può essere a lungo termine. Team che utilizzano lavoro Agile creano una coda di task di lavoro per raggiungere questo obiettivo. Per ogni iterazione, alcuni di questi elementi sono selezionati, finiti e quindi la coda viene regolata. I cambiamenti nella coda di lavoro si basano su fattori esterni, e che la squadra conosce.</p>
<p>Uno dei metodi più efficaci per la squadra per conoscere lo stato del suo lavoro è la retrospettiva. Dopo ogni consegna dei risultati, il team tiene una retrospettiva per esaminare come si può migliorare.</p>
<p>Conosciuto anche come: Controllare e Adattare (Scrum), Kaizen (Lean), Adaptive Planning (generico).</p>
<p><strong>Communicate Powerfully</strong></p>
<p>Una squadra ha bisogno di disporre di mezzi efficaci per comunicare, sia tra i membri del team e anche per le parti interessate. Per &#8220;Comunicare Potentemente&#8221; , una squadra ha bisogno di preferire la comunicazione di persona attraverso la comunicazione distribuita. Sincrono sulla comunicazione asincrona. Elevata larghezza di banda e più bassa larghezza di banda di comunicazione. Comunicazione multi-mode  su singola modalità di comunicazione.</p>
<p>Il risultato di non riuscire a comunicare con forza include il tempo sprecato per l&#8217;attesa, le incomprensioni che portano a difetti o re-lavoro, abbassamento della fiducia, difficoltà nel team-building, e in definitiva un fallimento.</p>
<p>Il mezzo più efficace per comunicare con forza, è quello di mettere tutta la squadra insieme in una stanza dove può fare il loro lavoro, ogni giorno per la maggior parte del tempo di lavoro.</p>
<p>Alcuni tipi di lavoro non si prestano a questo approccio (ad esempio la creazione di un video documentario), ma ogni sforzo dovrebbe essere fatto per migliorare la comunicazione.</p>
<p>Conosciuto anche come: Visibilità (Scrum), Team e Team intero Camera (Extreme Programming), War Room (gestione aziendale).</p>
<p><strong>Test Everything</strong></p>
<p>Testando tutto, guidando tutto il lavoro di un team, creando casi di test per verificare il lavoro, una squadra può raggiungere livelli qualitativi estremamente elevati. Questa capacità di prevenire i difetti è così importante che solo una decisione di livello esecutivo deve essere considerata sufficiente per consentire i difetti in un processo di lavoro. La qualità non è negoziabile.</p>
<p>Nel lavoro Agile, la rimozione di un difetto è l&#8217;unico tipo di lavoro che ha priorità su tutte le nuove caratteristiche / funzionalità. Se il risultato finale desiderato è quello di massimizzare il valore, rimuovendo difetti si raggiunge più facilmente un tal fine.</p>
<p>Ogni squadra ha un dovere etico di scoprire nuovi modi per testare efficacemente il proprio lavoro. Questo può avvenire attraverso l&#8217;uso di strumenti, meccanismi di feedback, automazione, e il buona vecchia capacità di problem solving.</p>
<p>Conosciuto anche come: canarino nella miniera di carbone (Scrum), Test-Driven Development (Extreme Programming), difetti per Opportunità (Six-Sigma).</p>
<p><strong>Misura del valore</strong> <strong>(Measure Value</strong>)</p>
<p>Dal momento che la realtà è percepita, è importante per un team Agile, e per l&#8217;organizzazione, avere un metodo chiaro per descrivere e percepire ciò che è importante per l&#8217;organizzazione. Misurare il valore è un metodo critico per descrivere e percepire ciò che è importante.</p>
<p>Una metrica singola può essere usata per guidare tutte la misure e la definizione degli obiettivi e le ricompense di un&#8217;organizzazione. Tutte le altre misure sono secondarie e devono essere trattate come tali: limitate e temporanee.</p>
<p>Ci sono molte cose più facilmente misurabili rispetto al valore. Spesso è facile misurare i costi, e le ore lavorate, oppure i difetti riscontrati, o la stima ore effettive &#8230; ecc, tuttavia, tutte queste altre misure implicitamente o esplicitamente non fanno altro che portare ad un comportamento sub-ottimale.</p>
<p>Conosciuto anche come: Risultati di misura (Scrum), ROI (gestione aziendale), Driver economico (Good to Great), Running Caratteristiche testate (Extreme Programming).</p>
<p><strong>Clear the Path (Cancellare il Percorso)<br />
</strong></p>
<p>Tutti coloro i quali, in un&#8217;organizzazione, utilizzano lavoro Agile si assumono la responsabilità per la pulizia del percorso, rimuovendo (cancellando!) gli ostacoli che impediscono il lavoro venga svolto in modo efficace. <em>Cancellare il percorso</em> non significa solo trovare espedienti e soluzioni rapide ai problemi, ma piuttosto avere il tempo di guardare un ostacolo e fare il meglio possibile per rimuovelo in modo permanente.</p>
<p>Nel metodo di lavoro Agile, il <em>Facilitatore del processo</em> è la persona che è responsabile per tracciare gli ostacoli e garantire che il &#8220;percorso venga cancellato&#8221;. Per fare questo, il <em>facilitatore di processo</em> mantiene un record sugli ostacoli.</p>
<p>La <em>cancellazione del percorso</em> è  a volte un doloroso lavoro che ci espone a cose che preferiremmo non affrontare. Di conseguenza, è fondamentale che le persone costruiscano la loro capacità di veridicità e lavorino per accrescere la fiducia tra di loro. Costruire una capacità di veridicità non è qualcosa che può essere fatto usando un processo esplicito.</p>
<p>Conosciuto anche come: eliminazione degli ostacoli (Scrum), fermare la linea (Lean).</p>
<p>&nbsp;</p>
<h2><strong>E l&#8217;Acqua Calda?</strong></h2>
<p>Tutte le pratiche e le metodologie Agile sono destinate ad aumentare la produttività dei team che le adottano. In un certo senso si può pensare ad essa come &#8220;team + pratica  = migliore&#8221;, ciò che andreamo ad esplorare è la natura di &#8220;+&#8221;.<br />
<strong></strong></p>
<p>Se si vuole fare un piatto di pasta, mettiamo l&#8217;acqua a bollire in pentola e, la nostra acqua, inizialmente sarà fredda. Facciamo un intervento per correggere questo stato indesiderabile: accendiamo il fuoco. Mettiamo la pasta a mollo? Voglio dire, adesso? A meno che non vogliate mangiare della pasta scotta, che farà rabbrividire un italiano, la risposta è no: l&#8217;acqua deve ancora bollire. C&#8217;è un ritardo tra il momento in cui accendiamo il fuoco sotto la pentola e la bollitura dell&#8217;acqua, più o meno di 15 minuti. Ciò è significativo: significa che abbiamo il tempo andare a sfogliare un magazine su iPad. Ciò significa anche che, se l&#8217;acqua (gia salata?) non è ancora in ebollizione dopo mezz&#8217;ora, c&#8217;è qualcosa di sbagliato. Forse arriva poco gas, o non abbiamo girato bene la manopola. Qualunque cosa accada, intuitivamente sappiamo come utilizzare questo ritardo per gestire &#8220;pentola + manopola gas  in esecuzione = &#8230;.&#8221;.</p>
<p>La stessa idea è altrettanto &#8211; se non più &#8211; importante all&#8217;interno di un team di sviluppo software. Senza un senso del ritardo tra lo stato originale e lo stato desiderato dato un certo intervento, è facile sotto o sovrastimare.</p>
<p>Durante il riscaldamento della vostra acqua per la pasta, non c&#8217;è bisogno di aspettare fino alla fine per vedere se è in bollitura: controllando di tanto in tanto, si può vedere se i tempi vanno come previsto. Si può essere in grado di vedere se l&#8217;acqua ha iniziato il processo di ebollizione ed è quasi tutta evaporata, oppure si riscalda lentamente e ti rendi conto che la manopola del gas è al minimo. Questo feedback aggiuntivo consente di gestire in modo più efficace. Ma se l&#8217;acqua bolle dopo 15 minuti in condizioni ideali, e siete a soli 10 minuti, non aspettatevi che sia eveporata.</p>
<p><strong>Conclusioni</strong></p>
<p>Ancora una volta, non spegnere il gas e  esclamare: &#8220;L&#8217;acqua non bolle! Non abbiamo bisogno di mangiare dopo tutto! &#8220;.</p>
<p>&nbsp;</p>
<div class="AWD_facebook_likebutton "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fi3factory.com%2Fit%2Fmetodologia-agile-per-il-project-manager%2F&amp;send=true&amp;layout=standard&amp;width=300&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=&amp;height=40&ref=" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:40px;" allowTransparency="true"></iframe></div><p>Related posts:<ol>
<li><a href='http://i3factory.com/it/stimare-il-tempo-di-sviluppo-software-come-per-app-per-ios-iphone-e-ipad-android/' rel='bookmark' title='Stimare il tempo di sviluppo software, come per App iOS, iPhone e iPad, &amp; Android'>Stimare il tempo di sviluppo software, come per App iOS, iPhone e iPad, &#038; Android</a></li>
<li><a href='http://i3factory.com/it/k-team-presenta-i-corsi-i3factory-a-didamatica-2011-aica-politecnico-di-torino/' rel='bookmark' title='K-Team presenta i Corsi i3Factory a DIDAMATICA 2011 (AICA, Politecnico di Torino)'>K-Team presenta i Corsi i3Factory a DIDAMATICA 2011 (AICA, Politecnico di Torino)</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://i3factory.com/it/metodologia-agile-per-il-project-manager/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Stimare il tempo di sviluppo software, come per App iOS, iPhone e iPad, &amp; Android</title>
		<link>http://i3factory.com/it/stimare-il-tempo-di-sviluppo-software-come-per-app-per-ios-iphone-e-ipad-android/</link>
		<comments>http://i3factory.com/it/stimare-il-tempo-di-sviluppo-software-come-per-app-per-ios-iphone-e-ipad-android/#comments</comments>
		<pubDate>Sat, 04 Feb 2012 17:45:33 +0000</pubDate>
		<dc:creator>Igor Wolfango Schiaroli</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[App]]></category>
		<category><![CDATA[Developers]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[sviluppo]]></category>
		<category><![CDATA[Sviluppo Applicazioni]]></category>

		<guid isPermaLink="false">http://i3factory.com/it/?p=1806</guid>
		<description><![CDATA[<p>Perché gli sviluppatori non riescono a stimare di stimare il tempo di produzione?</p>
<p>Questa, come altre domande, sono lo spunto per scrivere un articolo che mi è stato ispirato dopo la lettura di un post di  <em>Ash Moran</em> mentre navigavo per il <em>Patch Space Blog</em>.</p>

Related posts:<ol>
<li><a href='http://i3factory.com/it/cari-clienti-fare-unapp-per-ios-richiede-un-sacco-di-lavoro/' rel='bookmark' title='Costo App iPhone &amp; iPad, fare un&#8217;app per iOS richiede un sacco di lavoro!'>Costo App iPhone &#038; iPad, fare un&#8217;app per iOS richiede un sacco di lavoro!</a></li>
<li><a href='http://i3factory.com/it/testflight-come-testare-le-nostre-app-ios-beta-testing-on-the-fly/' rel='bookmark' title='TestFlight, come testare le nostre app iOS beta testing on the fly'>TestFlight, come testare le nostre app iOS beta testing on the fly</a></li>
<li><a href='http://i3factory.com/it/mockapp-un-tool-per-il-design-di-app-per-iphone/' rel='bookmark' title='MockApp: un tool per il design di app per iPhone'>MockApp: un tool per il design di app per iPhone</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="AWD_facebook_likebutton "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fi3factory.com%2Fit%2Fstimare-il-tempo-di-sviluppo-software-come-per-app-per-ios-iphone-e-ipad-android%2F&amp;send=true&amp;layout=standard&amp;width=300&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=&amp;height=40&ref=" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:40px;" allowTransparency="true"></iframe></div><ul class="lang_switch"></ul>
<div id="attachment_1817" class="wp-caption aligncenter" style="width: 394px"><a href="http://www.i3factory.com/wp-content/uploads/processo_stima_costi_app_iphone_ipad_android.png"><img class=" wp-image-1817" title="processo_stima_costi_app_iphone_ipad_android" src="http://www.i3factory.com/wp-content/uploads/processo_stima_costi_app_iphone_ipad_android.png" alt="Come Stimare i Costi di sviluppo di un'App per iPhone , iPad e Android. I processi di sviluppo di un'app in Tempi Moderni" width="384" height="296" /></a><p class="wp-caption-text">Stimare i costi e definire il processo di un&#39;app è come rivedere Tempi Moderni</p></div>
<p style="text-align: center;"><strong>Perché gli sviluppatori non riescono a stimare di stimare il tempo di produzione?</strong></p>
<p>Questa, come altre domande, sono lo spunto per scrivere un articolo che mi è stato ispirato dopo la lettura di un post di  <a href="http://posterous.com/users/5fiM1GMIFeXD" target="_blank">Ash Moran</a> mentre navigavo per il Patch Space Blog.</p>
<p><strong>Introduzione</strong><br />
In passato, mentre ero dirigente (settore di Sviluppo) di grandi gruppi italiani, ho cercato molte volte di comunicare al vertice aziendale che determinare su un documento (Plan) le esatte tempistche delle diverse fasi di lavoro dello sviluppo di un software è un attività abbastanza inutile e che, semmai, serve solo a far lievitare drammaticamente i costi.<br />
Con questo non voglio affermare che le pianificazioni, e i diversi report che ci impongono le grandi aziende, sono  inutili; questi report servono a fornire date di scadenza e di rilasco delle componenti in relazione ad un budget definito.<br />
Il problema nasce quando ti capita come capo la classica persona (top-manager?) che non avendo mai neppure sviluppato un &#8220;hello world!&#8221; si ostina a cercare di voler capire cosa esattamente farai con la tua squadra e ti imporrà dei lunghi meeting in cui sarai costretto a dire numerose baggianate perchè le domande che ti faranno saranno talmente idiote da non poter far altro che costringerti a dettagliare le varie fasi del processo che tanto non comprenderanno del tutto.</p>
<p>Cercare di spiegare e dettagliare in anticipo le fasi di uno sviluppo software, come definire i tempi di  tutte queste singole fasi (o task) a un &#8220;Manager&#8221; che si ostina a voler capire come poter fare/controllare/comprendere il tuo lavoro è come chiedere ad un compositore musicista di spiegargli come farà a comporre una canzone e quando e come arriverà alla prima , alla seconda o alla terza strofa&#8230;<br />
Sappiamo con certezza che ad un compositore si puo&#8217; affidare la scrittura di un&#8217;opera e l&#8217;artista al massimo potrà dirci quando ce la consegnerà ma di certo nessuno con la testa sulle spalle potrà pensare di chiedergli esattamente cosa farà , quando lo farà e di fornirgli una data esatta in cui sarà arrivato all&#8217; ennesima nota sullo spartito.</p>
<p>A questo punto uno dei tanti miei ex colleghi, che casualmente leggerà questo articolo, si dirà: &#8220;bhe ma in azienda a noi non servono grandi artisti come Mozart, ma solo mediocri esecutori che devono fare esattamente quel che diciamo&#8221;.<br />
La mediocrità è ovviamente una componente essenziale di molti cosidetti &#8220;managers&#8221; della grande o media azienda italiana, quella mediocrità che ha portato un paese di artisti e navigatori ai margini dell&#8217;impero economico e culturale.<br />
E&#8217; quindi abbastanza facile intuire che il mio pensierò ha basi culturali completamente diverse, poichè lo sviluppo è a mio parere sinonimo di creatività e solo la creatività applicata, unitamente alla genialità, può portare risultati duraturi e tenere alti quei fattori che fanno di un&#8217;azienda un motore economico-sociale che non si arresta neppure con le crisi.<br />
Semmai, per parafrasare Einsten, è solo con la crisi che si sviluppa la genialità.</p>
<p><strong>Stimare il tempo o il rilascio?</strong></p>
<p>Non possiamo stimare il tempo per ogni singola attività nello sviluppo di software in quanto la natura del lavoro è la creazione di nuova conoscenza.</p>
<p>L&#8217;obiettivo di sviluppo del software è quello di automatizzare i processi. Una volta che un processo è automatizzato, esso può essere eseguito ripetutamente, e nella maggioranza dei casi, in un tempo prevedibile.</p>
<p>Il <em>codice sorgente</em> è come un progetto di produzione, il computer è come una vera e a se stante azienda, gli ingressi (dati) sono come materie prime, e le uscite (dati o programmi) sono come prodotti finiti. Quindi la chiave di volta sta nella progettazione del processo, che è un compito complesso e costoso. Una volta che il processo è stato definito e reso efficente non c&#8217;è più bisogno di riscoprire questo processo, basta acquisire il modello.</p>
<p>Non è in realtà sempre un problema il fatto che i tempi di sviluppo sono in parte  imprevedibili, perché il rovescio della medaglia è che così è il valore restituito sarà maggiore; un software di successo può creare o salvare molto più del suo costo. Tom DeMarco, sempre citato da Ash,  sostiene la necessità di concentrarsi sui progetti di alto valore proprio per questo motivo. Si noti che questo approccio ha valore come generazione di un nuova mentalità, che porterà a superare l&#8217;attuale  prevalente mentalità basata quasi esclusivamente sul controllo dei costi . Questa è una questione tutt&#8217;altro che banale.</p>
<p>Una delle migliori spiegazioni della variabilità, e come sfruttarla per creare valore, è  nei &#8220;Principi del flusso di prodotto per lo sviluppo&#8221; di Don Reinertsen.</p>
<p><strong>Regola generale: prendere le stime di uno sviluppatore, raddoppiare e aggiungere un po&#8217;</strong></p>
<p>Il doppio-and-add-a-bit è una regola interessante. Quando i manager fanno questo, spesso  le attività vengono completate in tempo.</p>
<p>Voglio precisare che la pratica di stimare ogni task, o building block (come lo chiamano alcuni consulenti) puo&#8217; portare alla richiesta di budget di gran lunga piu&#8217; elevati del necessario; a questo proposito voglio fare un&#8217;esempio su un fatto che mi è accaduto realmente:<br />
Qualche anno fa un grandissimo gruppo industriale mi chiese di dirigere un progetto per un portale intranet, che sarebbe stato utile ai dipendenti. Dopo le prime stime sull&#8217;utilità di un nuovo portale intranet e sopratutto dopo l&#8217;analisi degli eventuali costi risparmiati dal Gruppo con l&#8217;introduzione del self-service per i dipendenti, si cerco&#8217; di stimare tempi e costi dello sviluppo.<br />
Consegnai un breve rapporto, basato sulla forte esperienza pratica sul campo, in cui stimavo a spanne un budget di X euro e il rilascio graduale dei servizi entro un anno. Mi chiesero allora di dettagliare uno per uno i task , fino al singola piccola applet, e di definirne per ognuno tempi di rilascio e costi per task . Facendo questo mi ero accorto, seguendo il loro modello di stima, che in ogni singola pagina web potevano essere presenti anche una trentina di building blocks (&#8230;). Evidentemnte ho cercato di fargli capire che questa era una pratica del tutto superflua e che bastava proiettare delle medie rispetto alle esperienze pregresse e sopratutto in base al materiale disponibile e alle caratteristiche professionali del team di sviluppo.<br />
Sono stato costretto a lasciare l&#8217;incarico quando un gruppetto di giovani consulenti d&#8217;azienda , che mai nella loro vita avevano neppure lavorato su un sisterma di sviluppo, hanno presentato un piano ben dettagliato in un mastodontico file power point (ppt) con bella grafica e in cui si definivano tutti i piccoli building block, uno per uno e si proiettavano scadenze e costo per ognuno di essi: risultato un budget da 7X euro in tre anni. Decisi di lasciare l&#8217;incarico sopratutto dopo che il mio sguardo si era soffermato su una decina di slides dedicate al servizio &#8220;calcolatrice&#8221; il cui costo era di alcuni giorni di lavoro. Ogni sviluppatore degno di questo nome sa che un building block &#8220;calcolatrice&#8221; lo si ottiene gratis e neppure si deve mostrare in un piano del genere&#8230; e questo non era neppure il fatto piu&#8217; eclatante.<br />
Inutile proseguire , poiche&#8217; evidentemente il mio approccio non era piaciuto e mi sarei dovuto adattare a quello dei consulenti che hanno lasciato l&#8217;azienda qualche anno dopo, in fallimento, e con nessun portale intranet funzionante&#8230; dopo 4 anni la stessa azienda ha dovuto riaccendere il sistema precedente , e questo dopo aver speso piu&#8217; del previsto e senza risparmiare alcun costo.<br />
Questo racconto è importante per far capire ai decision maker che un software , come un&#8217;app per iPhone o un sito web è frutto di esperienza sul campo e questa non potrà essere mai sostituita da stime dettagliate e del tutto astratte , che spesso costringono al rispetto stretto dei tempi intermedi non curando il senso del progetto stesso.<br />
A mio parere è proprio l&#8217;insistenza  ,da parte dei top manager, ad adottare modelli di stima basati sul modello finanziario e fondato sul controllo del prodotto che hanno portato l&#8217;industria informatica italiana ad una crisi cosi&#8217; profonda che oramai parlare di industria informatica italiana non ha neppure piu&#8217; senso&#8230;</p>
<p>&nbsp;</p>
<p><strong>Non sono solo agli sviluppatori a far male le stime.</strong></p>
<p>Tutti prima o poi inprovviseranno perché gli sarà affidato un compito che non hanno mai fatto prima e non saranno in grado di effettuare con successo una vera stima fino a quando non hanno acquisito esperienza.<br />
Se non sappiamo, non sappiamo, e dobbiamo dirlo. I clienti o i capi che vedono i progressi compiuti e sono stati messi al corrente  del rischio dei task (e hanno scelto di investire ) hanno molto di più fiducia nel proprio team ripetto ai clienti o ai capi che basano il loro controllo su stime.</p>
<p><strong>La stima è una abilità molto importante e dovrebbe essere insegnata sopratutto a figure &#8220;junior&#8221;</strong></p>
<p>Ciò che dobbiamo fare è insegnare a tutti gli sviluppatori junior il significato della parola &#8220;fatto&#8221; o &#8220;terminato&#8221;. Se un cliente o un capo viene a scoprire nel futuro, a un certo punto imprecisato,  che qualcosa è stato consegnato incompiuto (possibilmente in fretta per venire incontro alla stima) cio&#8217; non solo rende la stima controproducente, ma rende inaffidabile tutto il calendario di lavoro con l&#8217;attuale processo. Questo problema è molto comune, e può causare una significativa perdita della capacità di un team di sviluppo.</p>
<p><a href="http://www.i3factory.com/wp-content/uploads/tempi_moderni_progettare_app.jpg"><img class="aligncenter size-full wp-image-1877" title="tempi_moderni_progettare_app" src="http://www.i3factory.com/wp-content/uploads/tempi_moderni_progettare_app.jpg" alt="" width="500" height="373" /></a></p>
<p><strong>Agile Developing</strong></p>
<p>Nessuna grande e consolidata azienda ha avuto risultati straordinari come quelli avuti dalle società create da adolescenti o giovani imprenditori che non avevano, fortunatamente, alcuna idea dei modelli di lavoro , e di pensiero, che erano imposti dall&#8217;establishment e dall&#8217;economia finanziaria. Pensiamo a Mark Zuckerberg | Facebook, a Larry Page e Sergey Brin | Google, Sean Parker | Napster, Plaxo, Causes e Facebook.. pensiamo a Jeff Bezos, Bill Gates o a Steve Jobs e tanti altri.<br />
Tutti questi personaggi hanno creato il nostro futuro e,  con tutta probabilità, non si sono mai adattati (per fortuna!) ai modelli aziendali e alla moda.</p>
<p>Negli ultimi anni , probabilmente a causa degli enormi Flop,  tutte le grandi aziende  hanno tentato di cavalcare l&#8217;onda della new economy e ora si ritrovano a terra, parlano molto di &#8220;<em>Agile Developing</em>&#8220;.<br />
Il nome &#8220;Agile&#8221; ci arriva dall&#8217;ingegneria del software che differenzia i metodi e i modelli di sviluppo in:  Metodologie pesanti per i vecchi metodi basati sul Modello a cascata,  Metodologie iterative per i metodi basati sul Modello a spirale e  Metodologie agili per i metodi basati sui principi definiti nell&#8217;Agile Manifesto.<br />
Leggendo Wikipedia si scopre che il termine &#8220;Metodologie Agili&#8221; fu coniato nel 2001 proprio quando il Manifesto Agile è stato formulato e che:<br />
&#8221; La gran parte dei metodi agili tentano di ridurre il rischio di fallimento sviluppando il software in finestre di tempo limitate chiamate iterazioni che, in genere, durano qualche settimana. Ogni iterazione è un piccolo progetto a sé stante e deve contenere tutto ciò che è necessario per rilasciare un piccolo incremento nelle funzionalità del software: pianificazione (planning), analisi dei requisiti, progetto, implementazione, test e documentazione.<br />
Anche se il risultato di ogni singola iterazione non ha sufficienti funzionalità da essere considerato completo deve essere rilasciato e, nel susseguirsi delle iterazioni, deve avvicinarsi sempre di più alle richieste del cliente. Alla fine di ogni iterazione il team deve rivalutare le priorità di progetto&#8221;.</p>
<p>Se si utilizza l&#8217;approccio agile si dovrà comunicare sempre in tempo reale, preferibilmente faccia a faccia, puttosto che fare report o documenti. Componenti di un team agile sono solo le persone necessarie per portare a termine il progetto.</p>
<p>Mi aspetto che qualcuno mi dirà: bella scoperta , quella dell&#8217;acqua calda&#8230;</p>
<p>Molto probabilmente parleremo nei prossimi articoli di questo metodo che molte aziende stanno implementando , anche perche&#8217; importato da molte società di consulenza.</p>
<div class="AWD_facebook_likebutton "><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fi3factory.com%2Fit%2Fstimare-il-tempo-di-sviluppo-software-come-per-app-per-ios-iphone-e-ipad-android%2F&amp;send=true&amp;layout=standard&amp;width=300&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font=&amp;height=40&ref=" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:300px; height:40px;" allowTransparency="true"></iframe></div><p>Related posts:<ol>
<li><a href='http://i3factory.com/it/cari-clienti-fare-unapp-per-ios-richiede-un-sacco-di-lavoro/' rel='bookmark' title='Costo App iPhone &amp; iPad, fare un&#8217;app per iOS richiede un sacco di lavoro!'>Costo App iPhone &#038; iPad, fare un&#8217;app per iOS richiede un sacco di lavoro!</a></li>
<li><a href='http://i3factory.com/it/testflight-come-testare-le-nostre-app-ios-beta-testing-on-the-fly/' rel='bookmark' title='TestFlight, come testare le nostre app iOS beta testing on the fly'>TestFlight, come testare le nostre app iOS beta testing on the fly</a></li>
<li><a href='http://i3factory.com/it/mockapp-un-tool-per-il-design-di-app-per-iphone/' rel='bookmark' title='MockApp: un tool per il design di app per iPhone'>MockApp: un tool per il design di app per iPhone</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://i3factory.com/it/stimare-il-tempo-di-sviluppo-software-come-per-app-per-ios-iphone-e-ipad-android/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
	</channel>
</rss>

