<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Agustin Cuenca</title>
	
	<link>http://agustin.aspgems.com</link>
	<description>Pensando en voz alta sobre desarrollo web</description>
	<lastBuildDate>Wed, 09 Jun 2010 11:17:08 +0000</lastBuildDate>
	
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/AgustinCuenca" /><feedburner:info uri="agustincuenca" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>La realidad cambia (y es algo que no debería pillarte por sorpresa)</title>
		<link>http://feedproxy.google.com/~r/AgustinCuenca/~3/qW4gzUYsbYE/</link>
		<comments>http://agustin.aspgems.com/blog/2010/06/la-realidad-cambia-y-es-algo-que-no-deberia-pillarte-por-sorpresa/#comments</comments>
		<pubDate>Wed, 09 Jun 2010 11:17:08 +0000</pubDate>
		<dc:creator>Agustin Cuenca</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[cambio]]></category>
		<category><![CDATA[ingeniería]]></category>
		<category><![CDATA[realidad]]></category>

		<guid isPermaLink="false">http://agustin.aspgems.com/?p=123</guid>
		<description><![CDATA[Antes de construir un puente, el ingeniero tiene que realizar un análisis muy detallado. Después de tomar medidas, va a su oficina y proyecta. Cuando vuelve al lugar en el que se va a construir el puente, todo sigue igual. Nada ha cambiado. Ni el entorno ni las medidas. Es algo que la mentalidad de [...]]]></description>
			<content:encoded><![CDATA[<p>Antes de construir un puente, el ingeniero tiene que realizar un análisis muy detallado. Después de tomar medidas, va a su oficina y proyecta. Cuando vuelve al lugar en el que se va a construir el puente, todo sigue igual. Nada ha cambiado. Ni el entorno ni las medidas. Es algo que la mentalidad de un ingeniero tradicional tiene perfectamente asumido.</p>
<p>Pero en el mundo del desarrollo web esto nunca ocurre.</p>
<p>Todo cambia respecto a lo inicialmente previsto, y lo hace por varias razones:</p>
<h2>1. El cliente no sabe lo que quiere</h2>
<p>En muchas ocasiones, ni siquiera el cliente sabe muy bien lo que quiere. Tiene una idea de cuál es su problema, es verdad, pero a menudo desconoce sus necesidades reales. Y en muchos casos, cuando estamos diseñando un sistema nuevo, solo tenemos una idea aproximada en nuestra imaginación.</p>
<p>Por eso el &#8220;diagnóstico&#8221; no resulta sencillo, y los primeros pasos del proyecto no siempre avanzan en la dirección adecuada. Más tarde o más temprano, esto nos obliga a rectificar.</p>
<p>¿Como podemos hacer un plan para construir un sistema que no sabemos como es?</p>
<p>Un proverbio árabe dice que &#8220;cuando no sabes donde vas cualquier camino te llevará al lugar equivocado&#8221;.</p>
<h2>2. La comunicación es imperfecta</h2>
<p>El proceso de comunicación siempre es imperfecto. El cliente no puede proporcionar una imagen completa sobre sus procesos y las necesidades de su empresa. Es inevitable que  deje de contar cosas: porque no las conoce, porque las olvida, o incluso porque no cree oportuno contarlas.</p>
<p>Y, también de forma inevitable, el informático no es capaz de interiorizar todo lo que oye: hay cosas que no entiende bien, y otras a las que no es capaz de asignar la relevancia que merecen.</p>
<p>La información correcta y precisa no aparece hasta más adelante, como fruto de las diferentes iteraciones. Y cuando aparece, se traduce en cambios.</p>
<h2>3. Al principio sabemos muy poco sobre el proyecto</h2>
<p>Al inicio del proyecto, nuestro nivel de conocimiento de la realidad es muy limitado.</p>
<p>Conforme el trabajo avanza, vamos descubriendo cosas nuevas que antes no sabíamos, obtenemos información muy valiosa -está basada en situaciones reales, no en previsiones- y podemos tomar por tanto decisiones mejor informadas.</p>
<p>Estas decisiones se traducen en cambios frente a lo inicialmente previsto.</p>
<h2 style="font-size: 1.5em">4. La realidad cambia</h2>
<p>Además de que la realidad que tenemos en frente es distinta de la que sería posible construir en un mundo con información completa, y comunicación perfecta. La realidad cambia de verdad, con cosas como:</p>
<ul>
<li>Cambios  (impuestos, exigencias de <a href="http://es.wikipedia.org/wiki/Ley_Org%C3%A1nica_de_Protecci%C3%B3n_de_Datos_de_Car%C3%A1cter_Personal_de_Espa%C3%B1a" onclick="javascript:pageTracker._trackPageview ('/outbound/es.wikipedia.org');">LOPD</a>, <a href="http://es.wikipedia.org/wiki/Ley_de_Servicios_de_la_Sociedad_de_Informaci%C3%B3n_de_Espa%C3%B1a" onclick="javascript:pageTracker._trackPageview ('/outbound/es.wikipedia.org');">LSSI</a>, etc.)</li>
<li>Movimientos de la competencia</li>
<li>Cambios tecnológicos</li>
<li>Cambios en las organizaciones (Fusiones, compras, etc.)</li>
<li>etc.</li>
</ul>
<h3>Conclusión</h3>
<p>Podemos extraer un conclusión muy clara: <strong>la realidad cambia, y no queda más remedio que aprender a cambiar con la realidad.</strong></p>
<p>A estas alturas no debería ser ninguna sorpresa. Pero parece que muchas empresas de desarrollo todavía no lo han asumido. Por eso siguen aferradas a los métodos de ingeniería tradicionales.</p>
<img src="http://feeds.feedburner.com/~r/AgustinCuenca/~4/qW4gzUYsbYE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://agustin.aspgems.com/blog/2010/06/la-realidad-cambia-y-es-algo-que-no-deberia-pillarte-por-sorpresa/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://agustin.aspgems.com/blog/2010/06/la-realidad-cambia-y-es-algo-que-no-deberia-pillarte-por-sorpresa/</feedburner:origLink></item>
		<item>
		<title>Cómo entregar un proyecto en tiempo y coste</title>
		<link>http://feedproxy.google.com/~r/AgustinCuenca/~3/weEfBIjEnb8/</link>
		<comments>http://agustin.aspgems.com/blog/2010/05/como-entregar-un-proyecto-en-tiempo-y-coste/#comments</comments>
		<pubDate>Wed, 12 May 2010 08:44:09 +0000</pubDate>
		<dc:creator>Agustin Cuenca</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Gestión]]></category>
		<category><![CDATA[coste]]></category>
		<category><![CDATA[funcionalidad]]></category>
		<category><![CDATA[plazo]]></category>

		<guid isPermaLink="false">http://agustin.aspgems.com/?p=157</guid>
		<description><![CDATA[En el post anterior mencioné una alternativa diferente para entregar los proyectos en tiempo y coste.
Ahora voy a tratar de explicar en qué consiste de la forma más sencilla posible.
I. Las tres variables del proyecto
En todos los proyectos hay 3 elementos fundamentales:

La fecha de entrega
El conjunto de funcionalidades
Los recursos necesarios para ejecutar el proyecto

II. El [...]]]></description>
			<content:encoded><![CDATA[<p>En el post anterior mencioné una alternativa diferente para entregar los proyectos en tiempo y coste.</p>
<p>Ahora voy a tratar de explicar en qué consiste de la forma más sencilla posible.</p>
<h2>I. Las tres variables del proyecto</h2>
<p>En todos los proyectos hay 3 elementos fundamentales:</p>
<ul>
<li>La fecha de entrega</li>
<li>El conjunto de funcionalidades</li>
<li>Los recursos necesarios para ejecutar el proyecto</li>
</ul>
<h2>II. El enfoque tradicional</h2>
<p>Hasta ahora, en casi todos los proyectos se ha seguido el procedimiento tradicional, que pasa por fijar la funcionalidad y dejar que el equipo técnico (interno o externo) se pelee con las otras dos variables: fecha y recursos.</p>
<h2>III. El resultado</h2>
<p>El resultado final de esta forma de actuar suele ser el que sigue:</p>
<p><strong>A.</strong> Los proyectos se retrasan (la opción más común)</p>
<p><strong>B. </strong>Los recursos superan los inicialmente previstos</p>
<p>Es evidente que ninguna de las dos opciones resulta satisfactoria. Lo más usual es que los proyectos se retrasen, y que casi todas las previsiones iniciales acaben en la papelera, incluido, por supuesto, el documento de especificaciones.</p>
<p>Lo peor de todo es que habremos malgastado tiempo y esfuerzo tratando de ajustarnos a un plan que no tenía futuro.</p>
<h2>IV. El problema está en la pregunta</h2>
<p>Como tantas otras veces ocurre, el problema no está en la respuesta. El problema es la pregunta.</p>
<p><strong>La pregunta no es: </strong>¿Cómo se hace <strong>todo esto</strong> en plazo y tiempo?</p>
<p><strong>La pregunta adecuada es la siguiente:</strong> ¿Cómo hacemos un proyecto que sirva a mis objetivos de negocio y que pueda entregar en fecha ajustándome a los recursos planificados?</p>
<h2>V. El nuevo método</h2>
<p>El método que propongo -y que nosotros ya estamos utilizando- pasa por aceptar que el proyecto es un objetivo en movimiento constante. No tiene sentido malgastar esfuerzos intentando fijar la funcionalidad porque la funcionalidad va a cambiar conforme el proyecto avanza.</p>
<p>Por eso, la clave está en:</p>
<ul>
<li>Determinar nuestro objetivo: qué proyecto necesitamos para mejorar nuestro negocio</li>
<li>Fijar el plazo: cuándo lo necesitamos. Esta variable sigue siendo crítica, porque no sirve de nada llegar tarde al mercado.</li>
<li>Analizar los recursos disponibles.</li>
<li>Determinar qué es lo que podemos hacer con esos recursos para esa fecha. Tendremos que asumir que bastantes de nuestros presupuestos irán cambiando a medida que descubramos cosas nuevas sobre el proyecto y conozcamos mejor el mercado. Lo importante es gestionar esos cambios necesarios con agilidad.</li>
<li>Asignar y reasignar prioridades para “atacar” primero aquellas funcionalidades que realmente son esenciales para el negocio.</li>
</ul>
<p>De esta forma, al llegar al plazo de entrega habremos construido el mejor proyecto posible, con los recursos de los que disponemos, y  con las funcionalidades esenciales para nuestro negocio.</p>
<img src="http://feeds.feedburner.com/~r/AgustinCuenca/~4/weEfBIjEnb8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://agustin.aspgems.com/blog/2010/05/como-entregar-un-proyecto-en-tiempo-y-coste/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://agustin.aspgems.com/blog/2010/05/como-entregar-un-proyecto-en-tiempo-y-coste/</feedburner:origLink></item>
		<item>
		<title>Caminar sobre el agua</title>
		<link>http://feedproxy.google.com/~r/AgustinCuenca/~3/jk0vftmCmKs/</link>
		<comments>http://agustin.aspgems.com/blog/2010/05/caminar-sobre-el-agua/#comments</comments>
		<pubDate>Wed, 05 May 2010 07:48:37 +0000</pubDate>
		<dc:creator>Agustin Cuenca</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Metodología]]></category>
		<category><![CDATA[especificaciones]]></category>

		<guid isPermaLink="false">http://agustin.aspgems.com/?p=136</guid>
		<description><![CDATA[La realidad cambia. No deja de hacerlo.
La respuesta tradicional de los informáticos ante una situación de cambio ha sido la siguiente:

encorsetar al cliente mediante procesos muy estrictos de ingeniería
atarle mediante especificaciones, análisis, y actas de reuniones
construir una representación cerrada de la realidad al inicio del proyecto e intentar bloquear cualquier intento de cambio posterior

Es evidente [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: left">La realidad cambia. No deja de hacerlo.</p>
<p style="text-align: left">La respuesta tradicional de los informáticos ante una situación de cambio ha sido la siguiente:</p>
<ul>
<li>encorsetar al cliente mediante procesos muy estrictos de ingeniería</li>
<li>atarle mediante especificaciones, análisis, y actas de reuniones</li>
<li>construir una representación cerrada de la realidad al inicio del proyecto e intentar bloquear cualquier intento de cambio posterior</li>
</ul>
<p>Es evidente que esto no funciona. Y quien haya contratado un desarrollo software sabe que <strong>cualquier parecido entre la oferta y el documento de especificaciones -por una parte- y lo que se entrega al final -por otra- es pura coincidencia.</strong></p>
<p>Por eso decimos que realizar un proyecto en el plazo estimado y dentro de los costes previstos es tan fácil como caminar sobre el agua. Es decir, resulta muy sencillo siempre y cuando las especificaciones del proyecto y el agua estén congeladas. Algo que nunca ocurre.</p>
<p>Si el cliente le dice al proveedor qué es lo que quiere hacer y lo mantiene hasta el final, entonces no hay ningún problema. Todo es fácil. Pero la realidad es que el mundo en el que vivimos no es así: <strong>las aguas raramente están congeladas; las especificaciones, nunca.</strong></p>
<p>La pregunta es: entonces, ¿cómo hacemos para entregar los proyectos en plazo y coste? La respuesta, en el próximo post <img src='http://agustin.aspgems.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> .</p>
<img src="http://feeds.feedburner.com/~r/AgustinCuenca/~4/jk0vftmCmKs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://agustin.aspgems.com/blog/2010/05/caminar-sobre-el-agua/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://agustin.aspgems.com/blog/2010/05/caminar-sobre-el-agua/</feedburner:origLink></item>
		<item>
		<title>Menos es mas</title>
		<link>http://feedproxy.google.com/~r/AgustinCuenca/~3/T_1aBLXY0JA/</link>
		<comments>http://agustin.aspgems.com/blog/2010/05/menos-es-mas/#comments</comments>
		<pubDate>Mon, 03 May 2010 09:03:02 +0000</pubDate>
		<dc:creator>Agustin Cuenca</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Metodología]]></category>

		<guid isPermaLink="false">http://agustin.aspgems.com/?p=62</guid>
		<description><![CDATA[Hace años que leí el libro de Barry Swartchz &#8220;The paradox of choice&#8220;, y aprendí muchas cosas que a veces son importantes en el día día, (me ayudo a resolver el problema de que desayunan mis hijos   ).
Para entender porque menos es mas hay mucho material en la red, he dejado en slideshare un brevisimo resúmen que [...]]]></description>
			<content:encoded><![CDATA[<p>Hace años que leí el libro de <a href="http://en.wikipedia.org/wiki/Barry_Schwartz" onclick="javascript:pageTracker._trackPageview ('/outbound/en.wikipedia.org');">Barry Swartchz</a> &#8220;<a href="http://www.amazon.com/Paradox-Choice-Why-More-Less/dp/0060005688" onclick="javascript:pageTracker._trackPageview ('/outbound/www.amazon.com');">The paradox of choice</a>&#8220;, y aprendí muchas cosas que a veces son importantes en el día día, (me ayudo a resolver el problema de que desayunan mis hijos <img src='http://agustin.aspgems.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  ).</p>
<p>Para entender porque menos es mas hay mucho material en la red, he dejado en slideshare un brevisimo resúmen que lo intenta explicar:</p>
<p><object type="application/x-shockwave-flash" data="http://static.slideshare.net/swf/ssplayer2.swf?doc=id=3926866&amp;doc=menosesmas-100501024611-phpapp02" width="425" height="348"><param name="movie" value="http://static.slideshare.net/swf/ssplayer2.swf?doc=id=3926866&amp;doc=menosesmas-100501024611-phpapp02" ></object></p>
<img src="http://feeds.feedburner.com/~r/AgustinCuenca/~4/T_1aBLXY0JA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://agustin.aspgems.com/blog/2010/05/menos-es-mas/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://agustin.aspgems.com/blog/2010/05/menos-es-mas/</feedburner:origLink></item>
		<item>
		<title>abredatos: obras son amores…</title>
		<link>http://feedproxy.google.com/~r/AgustinCuenca/~3/qfHHJ_ScoHU/</link>
		<comments>http://agustin.aspgems.com/blog/2010/04/abredatos-obras-son-amores/#comments</comments>
		<pubDate>Wed, 21 Apr 2010 21:12:11 +0000</pubDate>
		<dc:creator>Agustin Cuenca</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://agustin.aspgems.com/?p=110</guid>
		<description><![CDATA[El fin de semana pasado se ha celebrado el Desafio Abredatos, el resultado de ese desafío ha sido espectacular.
Las bases erán sencillas:

48 horas
Máximo 4 personas

Lo espectacular es el resultado de esas 48 horas, algunas de las aplicaciones tienen un altísimo nivel de calidad.
Es también importante destacar la plataforma tecnológica elegida por cada participante:



Languages:
ruby 13
php 5
python [...]]]></description>
			<content:encoded><![CDATA[<p>El fin de semana pasado se ha celebrado el <a href="http://www.abredatos.es/" onclick="javascript:pageTracker._trackPageview ('/outbound/www.abredatos.es');">Desafio Abredatos</a>, el resultado de ese desafío ha sido espectacular.</p>
<p>Las <a href="http://www.abredatos.es/bases/" onclick="javascript:pageTracker._trackPageview ('/outbound/www.abredatos.es');">bases </a>erán sencillas:</p>
<ul>
<li>48 horas</li>
<li>Máximo 4 personas</li>
</ul>
<p>Lo espectacular es el resultado de esas 48 horas, algunas de las aplicaciones tienen un altísimo nivel de calidad.</p>
<p>Es también importante destacar la <a href="http://www.abredatos.es/2010/04/20/resumen-tecnico-de-proyectos-abredatos2010/" onclick="javascript:pageTracker._trackPageview ('/outbound/www.abredatos.es');">plataforma tecnológica elegida</a> por cada participante:</p>
<table border="0">
<tbody>
<tr>
<td><strong>Languages:</strong></td>
<td>ruby 13</td>
<td>php 5</td>
<td>python 4</td>
<td>java 2</td>
<td>others 5</td>
</tr>
<tr>
<td><strong>Frameworks:</strong></td>
<td>rails 12</td>
<td>django 2</td>
<td>spring 1</td>
<td>grails 1</td>
<td>others 13</td>
</tr>
<tr>
<td><strong>Version control:</strong></td>
<td>git(hub) 18</td>
<td>svn 6</td>
<td>unknown 5</td>
</tr>
</tbody>
</table>
<p>Ahh, y enhorabuena a todos los participantes.</p>
<img src="http://feeds.feedburner.com/~r/AgustinCuenca/~4/qfHHJ_ScoHU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://agustin.aspgems.com/blog/2010/04/abredatos-obras-son-amores/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://agustin.aspgems.com/blog/2010/04/abredatos-obras-son-amores/</feedburner:origLink></item>
		<item>
		<title>Diseño por unanimidad</title>
		<link>http://feedproxy.google.com/~r/AgustinCuenca/~3/I_GYdLipuxo/</link>
		<comments>http://agustin.aspgems.com/blog/2010/03/diseno-por-unanimidad/#comments</comments>
		<pubDate>Mon, 29 Mar 2010 11:49:24 +0000</pubDate>
		<dc:creator>Agustin Cuenca</dc:creator>
				<category><![CDATA[Gestión]]></category>
		<category><![CDATA[Metodología]]></category>
		<category><![CDATA[desarrollo web]]></category>

		<guid isPermaLink="false">http://agustin.aspgems.com/?p=61</guid>
		<description><![CDATA[Internet es, de alguna manera, territorio inexplorado. Tenemos muy pocos años de experiencia si nos comparamos, por ejemplo, con otras disciplinas como la arquitectura, que lleva miles de años junto a nosotros.
Probablemente es eso lo que resulta tan atractivo de los proyectos en la red: tenemos espacio para la imaginación, para crear,  para desarrollar nuevos [...]]]></description>
			<content:encoded><![CDATA[<p>Internet es, de alguna manera, territorio inexplorado. Tenemos muy pocos años de experiencia si nos comparamos, por ejemplo, con otras disciplinas como la arquitectura, que lleva miles de años junto a nosotros.</p>
<p>Probablemente es eso lo que resulta tan atractivo de los proyectos en la red: tenemos espacio para la imaginación, para crear,  para desarrollar nuevos servicios y para buscar nuevas maneras de hacer las cosas.</p>
<p>Pero también es cierto que cuando te enfrentas a un desarrollo web, esa misma posibilidad de crear e innovar puede convertirse en uno de los mayores problemas del proyecto.</p>
<p>Generalmente empezamos cada nuevo proyecto muy ilusionados con todas las ideas que queremos añadir a nuestra web. Pero la experiencia nos ha enseñado algunas lecciones que no deberíamos pasar por alto:</p>
<ul>
<li>Muchas de las funcionalidades contempladas por un proyecto no siguen allí pasados pocos meses.</li>
<li>Cuantas más funcionalidades tiene un proyecto, más tardamos en acabarlo y más tiempo en salir al mercado.</li>
<li>El <a href="http://es.wikipedia.org/wiki/Principio_de_Pareto" onclick="javascript:pageTracker._trackPageview ('/outbound/es.wikipedia.org');">principio de Pareto</a> está también presente en el uso de las aplicaciones, y más en el caso específico de la web: el 80% de los usuarios usa solo el 20% de las funcionalidades disponibles.</li>
</ul>
<p>No fue hasta principios del siglo pasado cuando la arquitectura, de la mano de <a href="http://en.wikipedia.org/wiki/Ludwig_Mies_van_der_Rohe" onclick="javascript:pageTracker._trackPageview ('/outbound/en.wikipedia.org');">Mies van der Rohe</a>, empezó a hablar de &#8220;<a href="http://en.wikipedia.org/wiki/Minimalism" onclick="javascript:pageTracker._trackPageview ('/outbound/en.wikipedia.org');">menos es más</a>&#8220;. Y nosotros estamos convencidos de que, efectivamente, es así.</p>
<p><a href="http://en.wikipedia.org/wiki/Barry_Schwartz" onclick="javascript:pageTracker._trackPageview ('/outbound/en.wikipedia.org');">Barry Schwartz</a> lo explica maravillosamente en su libro <a href="http://www.amazon.com/Paradox-Choice-Why-More-Less/dp/B000HWY5MK/ref=ntt_at_ep_dpi_1" onclick="javascript:pageTracker._trackPageview ('/outbound/www.amazon.com');"><em>La paradoja de la elección</em></a>. El libro <a href="http://gettingreal.37signals.com/" onclick="javascript:pageTracker._trackPageview ('/outbound/gettingreal.37signals.com');">Getting Real</a> es sin duda otra lectura recomendable para los que quieren entender por qué &#8220;menos es más&#8221;.</p>
<p>El problema se plantea cuando debemos elegir entre la enorme lista de  cosas que queremos hacer.</p>
<p>De todas las cosas que hemos pensado añadir a la aplicación, ¿cuáles  vamos a dejar fuera o para una segunda fase del proyecto?</p>
<p>Dicho en otras palabras:</p>
<h2>¿Cómo elegir entre un montón de funcionalidad cuando estás diseñando una aplicación web?</h2>
<p>Nosotros lo hemos resuelto acudiendo a la <a href="http://es.wiktionary.org/wiki/unanimidad" onclick="javascript:pageTracker._trackPageview ('/outbound/es.wiktionary.org');">unanimidad</a>.</p>
<p>Cuando estamos diseñando una aplicación proponemos que la decisión sobre la inclusión o no de una funcionalidad se tome por unanimidad. Es decir, basta con que  uno de los miembros del equipo no crea que una funcionalidad deba estar presente para que ésta quede fuera.</p>
<p>El resultado de este proceso es que el producto desarrollado contiene &#8220;sólo aquello que todos los miembros del equipo creen que debe estar&#8221;, en lugar de &#8220;todo lo que alguien del equipo piensa que debería estar presente&#8221;.</p>
<p>Necesariamente, las aplicaciones desarrolladas de esta manera:</p>
<ul>
<li>son más sencillas y, por tanto, más fáciles de usar, explicar, documentar, etc.</li>
<li>son más baratas de desarrollar, puesto que hay menos funcionalidad</li>
<li>son más fáciles de mantener cuando es necesario hacer cambios</li>
<li>si surgen problemas, son más fáciles de resolver (hay menos líneas de código, por lo tanto, hay menos lugares en los que el error puede esconderse)</li>
</ul>
<p>Pero lo más importante de todo es que, al ser las aplicaciones más sencillas, podemos ponerlas en el mercado mucho antes, y tenemos la oportunidad de probar con la realidad de nuestros usuarios. A partir de ese punto podemos empezar a desarrollar con datos y feedback reales, y no con previsiones o estimaciones. Podemos mejorar guiados por lo que los usuarios realmente nos piden o utilizan.</p>
<p>Prueba. Puede sonar un poco extraño, pero nuestra experiencia nos ha demostrado que el concepto &#8220;menos es más&#8221; es una práctica excelente para el desarrollo web.</p>
<img src="http://feeds.feedburner.com/~r/AgustinCuenca/~4/I_GYdLipuxo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://agustin.aspgems.com/blog/2010/03/diseno-por-unanimidad/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://agustin.aspgems.com/blog/2010/03/diseno-por-unanimidad/</feedburner:origLink></item>
		<item>
		<title>Soluciones ágiles</title>
		<link>http://feedproxy.google.com/~r/AgustinCuenca/~3/5iA5yFjAJeI/</link>
		<comments>http://agustin.aspgems.com/blog/2010/03/soluciones-agiles/#comments</comments>
		<pubDate>Wed, 10 Mar 2010 10:28:24 +0000</pubDate>
		<dc:creator>Agustin Cuenca</dc:creator>
				<category><![CDATA[Gestión]]></category>
		<category><![CDATA[Metodología]]></category>

		<guid isPermaLink="false">http://agustin.aspgems.com/?p=68</guid>
		<description><![CDATA[Hoy he estado pensando: ¿en qué consiste realmente una solución ágil?
Para dar con una definición adecuada, creo que lo mejor es ir paso a paso:
¿Qué es una solución?
Según explica la Wikipedia, una solución es una respuesta a un problema complejo.
¿Qué es una solución informática?
Podemos definir una solución informática como la aportación -por parte de un proveedor- [...]]]></description>
			<content:encoded><![CDATA[<p>Hoy he estado pensando: ¿en qué consiste realmente una solución ágil?</p>
<p>Para dar con una definición adecuada, creo que lo mejor es ir paso a paso:</p>
<h2>¿Qué es una solución?</h2>
<p>Según explica la Wikipedia, una <a href="http://es.wikipedia.org/wiki/Solución" onclick="javascript:pageTracker._trackPageview ('/outbound/es.wikipedia.org');">solución</a> es una respuesta a un problema complejo.</p>
<h2>¿Qué es una solución informática?</h2>
<p>Podemos definir una solución informática como la aportación -por parte de un proveedor- del hardware, las redes, el software, el soporte técnico, la formación y el mantenimiento. Es decir todo aquello que hace falta para resolver un problema de negocio mediante el uso de la tecnología.</p>
<p>En los 80 y 90, el concepto de solución iba muy asociado al de servicio integral. Algo así como: &#8220;Tú me contratas y yo me encargo de todo&#8221;.</p>
<h2>¿Qué ha cambiado?</h2>
<p>Con el desarrollo de la <a href="http://es.wikipedia.org/wiki/Computación_en_nube" onclick="javascript:pageTracker._trackPageview ('/outbound/es.wikipedia.org');">Nube</a>, las soluciones informáticas han cambiado de forma radical. Hoy ya no es necesario realizar grandes inversiones en infraestructura. Desde el minuto uno podemos contar con toda la capacidad de los mayores proveedores de la red.</p>
<p>Lo verdaderamente importante de este cambio no es tanto la tecnología, sino el hecho de que hoy puedo empezar con una solución que requiere muy poca inversión para luego ir creciendo y cambiando con las necesidades del mercado. La reducción de costes e inversiones, así como la capacidad de crecimiento, hacen que la filosofía de uso de las soluciones también sea muy diferente.</p>
<h2>¿A qué llamamos “solución ágil”?</h2>
<p>Llamamos <a href="http://agustin.aspgems.com/blog/2010/03/soluciones-agiles/">solución ágil</a> al conjunto de software, hardware y servicios que permiten a un usuario utilizar una <a href="http://es.wikipedia.org/wiki/Aplicación_informática" onclick="javascript:pageTracker._trackPageview ('/outbound/es.wikipedia.org');">aplicación</a>:</p>
<ul>
<li>de la que solo conoce la <a href="http://es.wikipedia.org/wiki/Url" onclick="javascript:pageTracker._trackPageview ('/outbound/es.wikipedia.org');">URL</a></li>
<li>en la que no tiene que preocuparse por la infraestructura técnica asociada: la aplicación que presta el servicio, el hardware, las redes, el mantenimiento, los backups (las copias de seguridad)</li>
<li>y que, sobre todo, le permite afrontar sin riesgos el difícil problema de la escalabilidad de la solución</li>
</ul>
<p>En otras palabras, nosotros -los proveedores de soluciones ágiles- nos encargamos de proporcionar al usuario toda esta infraestructura básica en colaboración con nuestro proveedor de hosting.</p>
<p>Una solución ágil es, por tanto, una solución informática integral. Y en este sentido, se parece a las soluciones tradicionales. Pero si profundizamos un poco, encontramos diferencias sustanciales.</p>
<p>Las soluciones informáticas tradicionales son complejas, y requieren procesos de planificación y diseño muy detallados. Es decir, no solo es compleja la solución; también lo son la metodología y el desarrollo del proyecto. Por decirlo de alguna manera, son soluciones basadas en los principios tradicionales de la ingeniería, y están fuertemente orientadas a procesos.</p>
<p>Las soluciones ágiles, en cambio, se basan en el desarrollo evolutivo, mediante iteraciones, y están orientadas al usuario final:</p>
<ul>
<li>No es necesario hacer complejos estudio de diseño y planificación de la solución.</li>
<li>El desarrollo de la solución es ágil: es decir, utilizamos herramientas, lenguajes y tecnologías que nos permiten introducir cambios con rapidez.</li>
<li>El avance se produce mediante ciclos iterativos que nos permiten adaptarnos, paso a paso, a las exigencias reales de los mercados y de los usuarios</li>
<li>Re-evaluamos las necesidades y exigencias de la solución conforme avanza el proyecto</li>
<li>El principal valor de la solución se encuentra en la funcionalidad desarrollada y, por encima de todo, en el uso que los usuarios finales hacen de esa funcionalidad</li>
</ul>
<p>Al final, podemos decir que una solución ágil es el conjunto de hardware, software y servicios que satisface las necesidades del usuario, que normalmente lo hace utilizando la infraestructura de la Nube, y que incluye el soporte, la capacidad operativa y un elemento fundamental: el mantenimiento asociado.</p>
<p>Debemos insistir en que el mantenimiento es clave, puesto que la solución está siempre en evolución. Estos son algunos de los ejemplos típicos:</p>
<ul>
<li>Nuevas funcionalidades no previstas al principio o modificaciones de las existentes.</li>
<li>Nuevas máquinas para atender a la demanda o picos de servicio.</li>
<li>Cambios en la tecnología de base (versiones, mejoras, etc).</li>
</ul>
<p>Porque una solución ágil no es una caja que se vende al cliente y ya está. Las soluciones ágiles están en continua evolución, están continuamente en fase beta, o <a href="http://en.wikipedia.org/wiki/Perpetual_beta" onclick="javascript:pageTracker._trackPageview ('/outbound/en.wikipedia.org');">beta perpetua</a>.</p>
<p>Una solución ágil es capaz de evolucionar, de crecer y adaptarse a las demandas de los usuarios finales. Y esto exige un acompañamiento técnico y humano.</p>
<img src="http://feeds.feedburner.com/~r/AgustinCuenca/~4/5iA5yFjAJeI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://agustin.aspgems.com/blog/2010/03/soluciones-agiles/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://agustin.aspgems.com/blog/2010/03/soluciones-agiles/</feedburner:origLink></item>
		<item>
		<title>Mínimo proyecto viable</title>
		<link>http://feedproxy.google.com/~r/AgustinCuenca/~3/V3DZd5OZHdY/</link>
		<comments>http://agustin.aspgems.com/blog/2010/03/minimo-proyecto-viable/#comments</comments>
		<pubDate>Sun, 07 Mar 2010 23:55:44 +0000</pubDate>
		<dc:creator>Agustin Cuenca</dc:creator>
				<category><![CDATA[Gestión]]></category>
		<category><![CDATA[Metodología]]></category>

		<guid isPermaLink="false">http://agustin.aspgems.com/?p=53</guid>
		<description><![CDATA[Cuando abordamos un proyecto web tenemos muchas ideas en la cabeza, probablemente hemos visitado cientos de webs parecidas y tenemos la ilusión de dar a los futuros usuarios muchas de esas funcionalidades. Probablemente hemos compartido con nuestro equipo estas ideas y la emoción ha ido creciendo con cada nueva idea: &#8220;y se podrá invitar a tus amigos&#8221;, [...]]]></description>
			<content:encoded><![CDATA[<p>Cuando abordamos un proyecto web tenemos muchas ideas en la cabeza, probablemente hemos visitado cientos de webs parecidas y tenemos la ilusión de dar a los futuros usuarios muchas de esas funcionalidades. Probablemente hemos compartido con nuestro equipo estas ideas y la emoción ha ido creciendo con cada nueva idea: &#8220;y se podrá invitar a tus amigos&#8221;, o mejor &#8220;se podrá invitar a todos los amigos que les guste lo mismo que a ti&#8221;, o aun mejor &#8220;se podrá invitar a los amigos que hayan visto lo mismo que el usuario&#8221;.</p>
<p>Todas estas listas de cosas hacen los proyectos complejos, muy complejos. Cada  funcionalidad requiere:</p>
<ul>
<li>Trabajo de definición detallada, donde estará en la pantalla, como funionará, etc.</li>
<li>Trabajo de  diseño gráfico</li>
<li>Programación</li>
<li>Pruebas, etc.</li>
</ul>
<p>Nuestra experiencia nos dice que además muchas de esa funcionalidades no serán utilizadas, los usuarios no las entenderán o simplemente no habremos acertado. Añadir estas funcionalidades no solo requiere mas trabajo por el hecho de ser más, sino que además,  aumentan la complejidad del proyecto. Y hacer proyectos complejos es muchisimo mas difícil que hacer proyectos sencillos.</p>
<p>La alternativa es construir un proyecto con la funcionalidad indispensable para salir al mercado y que nuestro negocio tenga sentido. Nosotros lo llamamos el <strong><a href="http://agustin.aspgems.com/blog/2010/03/minimo-proyecto-viable">Mínimo Proyecto Viable</a></strong>. No vamos a dedicar tiempo a construir nada que no sea absolutamente esencial. Nuestro proyecto web debe contar solo con la funcionalidad que hace falta para probar la viabilidad de nuestra idea. Centrarnos en lo esencial nos va permitir hacer más fácil muchas de las cosas que son imprescindibles en un proyecto web:</p>
<ul>
<li>Medir el éxito de cada cosa.</li>
<li>Cambiar la web, si es necesario.</li>
<li>Saber que quieren los usuarios.</li>
<li>Entender el comportamiento de los usuarios en la web.</li>
<li>Añadir nuevas ideas o algunas de las que teníamos pensadas desde el principio.</li>
</ul>
<p>Además el <a href="http://agustin.aspgems.com/blog/2010/03/minimo-proyecto-viable"><strong>Mínimo Proyecto Viable</strong></a><strong>:</strong></p>
<ul>
<li>tiene menos coste,</li>
<li>requiere menos tiempo de desarrollo,</li>
<li>menos esfuerzo de gestión,</li>
<li>nos obliga a centrarnos en lo esencial,</li>
<li>nos permite validar nuestra idea en lo esencial, y si es necesaria cambiarla y adaptarla.</li>
</ul>
<p>Pero quizas la ventaja fundamental del <strong><strong><a href="http://agustin.aspgems.com/blog/2010/03/minimo-proyecto-viable">Mínimo Proyecto Viable</a> </strong></strong>es que nos permite salir al mercado lo antes posible, e iterar con la realidad.  Como explica muy bien <a href="http://blog.cabreramc.com" onclick="javascript:pageTracker._trackPageview ('/outbound/blog.cabreramc.com');">José Cabrera</a> en su entrada sobre el <a href="http://blog.cabreramc.com/2010/01/31/liderazgo-2-0-el-arte-de-explorar-el-futuro-en-busca-de-la-emergencia/" onclick="javascript:pageTracker._trackPageview ('/outbound/blog.cabreramc.com');">liderazgo adaptativo</a> la solución a los problemas adaptativos, y crear un nuevo servicio web es un <a href="http://staging.hbp.internetkeep.net/the-practice-of-adaptive-leadership" onclick="javascript:pageTracker._trackPageview ('/outbound/staging.hbp.internetkeep.net');">problema adaptativo</a>, debe emerger poco a poco, y la mejor forma de que una web emerja es iterando con la realidad. Muchos de los servicios web mas famosos hoy nacieron con un objetivo distinto del que tienen ahora.</p>
<p>Si estas pensando en hacer una nueva web, no lo dudes, elige bien como es tu <a href="http://agustin.aspgems.com/blog/2010/03/minimo-proyecto-viable"><strong>Mínimo Proyecto Viable</strong></a><strong>.</strong></p>
<p><strong><br />
</strong></p>
<img src="http://feeds.feedburner.com/~r/AgustinCuenca/~4/V3DZd5OZHdY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://agustin.aspgems.com/blog/2010/03/minimo-proyecto-viable/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://agustin.aspgems.com/blog/2010/03/minimo-proyecto-viable/</feedburner:origLink></item>
		<item>
		<title>Riesgo de cambio</title>
		<link>http://feedproxy.google.com/~r/AgustinCuenca/~3/Xte_Qt7901o/</link>
		<comments>http://agustin.aspgems.com/blog/2010/03/riesgo-de-cambio/#comments</comments>
		<pubDate>Tue, 02 Mar 2010 21:41:35 +0000</pubDate>
		<dc:creator>Agustin Cuenca</dc:creator>
				<category><![CDATA[Gestión]]></category>
		<category><![CDATA[Gestión clientes]]></category>

		<guid isPermaLink="false">http://agustin.aspgems.com/?p=45</guid>
		<description><![CDATA[Parte de lo que pretendo en este blog es compartir algunas lecciones que aprendemos día a día en ASPgems.
Hace poco envié el mail que copio a continuación a un cliente que estaba valorando la posibilidad de hacer un proyecto cambiando de entorno tecnológico. En mi opinión lo relevante del mail no es la discusión sobre [...]]]></description>
			<content:encoded><![CDATA[<p>Parte de lo que pretendo en este blog es compartir algunas lecciones que aprendemos día a día en <a href="http://aspgems.com">ASPgems</a>.</p>
<p>Hace poco envié el mail que copio a continuación a un cliente que estaba valorando la posibilidad de hacer un proyecto cambiando de entorno tecnológico. En mi opinión lo relevante del mail no es la discusión sobre si la tecnología A o B es mejor, sino cuales son los factores mentales y los frenos que afrontan muchas compañías a cambiar y avanzar.</p>
<p>Hay veces que en desarrollo de software vemos los cambios como un riesgo, y el mail pretendía ser una invitación a ver los cambios de plataforma como una oportunidad para aprender.</p>
<p>El coste de cambio es siempre enorme, y la aversión al riesgo una carácterística tremendamente humana.</p>
<blockquote><p><em>Querido cliente:</em></p>
<p><em>Llevo unos días dándole vueltas al proyecto que os presentamos, y a como trasmitirte las ventajas que os puede aportar.</em></p>
<p><em> En primer lugar, quiero volver a insistir en que entiendo perfectamente la situación en la que estáis.</em></p>
<p><em>La plataforma que gestionáis es muy compleja, y sobre todo tiene muchos años de vida (como decimos nosotros: “el mundo se pudo hacer en 7 días porque no había base instalada”). Mantener la aplicación en funcionamiento en un entorno tan cambiante seguro que no es fácil, y mas cuando muchas veces las decisiones hay que tomarlas rápido y no siempre con todos los recursos que serían necesarios.</em></p>
<p><em> Entiendo además que la perspectiva de cambiar de plataforma tecnológica introduce mucha incertidumbre, especialmente en lo que se refiere a dependencia de un proveedor, frente a trabajar con tu propio equipo.</em></p>
<p><em> Te mando este correo para ofrecerte la posibilidad de ver las cosas de otra manera, para ver este proyecto no como un proyecto que complicará vuestra actual infraestructura haciendo vuestro trabajo mas difícil, sino como una oportunidad para la innovación y la mejora que acabará redundando en un mejor servicio al resto de la empresa, y reforzará una de las ventajas competitivas de tu empresa: su diferencial tecnológico.</em></p>
<p><em> Es complicado resumir en pocas líneas todas las ventajas que Ruby on Rails puede ofrecer en un entorno con necesidades de cambio constantes y con presión en plazos y costes. Puedo decirte que las ventajas que estamos experimentando desde hace ya casi 4 años son:</em></p>
<ul>
<li><em>Velocidad de desarrollo</em></li>
<li><em>Estabilidad de la plataforma</em></li>
<li><em>Escalabilidad</em></li>
<li><em>Disminución del número de errores y necesidades de soporte</em></li>
</ul>
<p><em> Si decidierais ir adelante con el proyecto, podríamos abordar juntos, y poco a poco, algunos de los retos a los que tenéis que hacer frente porque:<br />
</em></p>
<ul>
<li><em>La productividad de Ruby on Rails os permite atender mejor las necesidades de las áreas de negocio sin necesidad de nuevos recursos.</em></li>
<li><em>Adoptar un entorno como Ruby On Rails os permite utilizar la experiencia y pasión de muchos desarrolladores, de mucho software disponible como software libre, y servicios.</em></li>
<li><em>El que Ruby On Rails disponga de tres entornos integrados pero diferenciados (desarrollo, pruebas y producción) hace la gestión de los desarrollos, las pruebas de regresión y las puestas en producción mas estables.</em></li>
<li><em>La estabilidad y escalabilidad de la plataforma reducen drásticamente el tiempo dedicado a incidencias.</em></li>
<li><em>Sabes bien que los informáticos somos gente con pasión por la innovación y seguro que un cambio de plataforma es una oportunidad para tu equipo de aprender algo nuevo. Es verdad que cambiar de entorno es un desafío, pero cuentas con nuestro soporte para hacer ese camino lo mas fácil posible. Nosotros estamos teniendo tiempos de aprendizaje básico de la plataforma de menos de 2 semanas.</em></li>
<li><em>Independencia de proveedores y empleados, las aplicaciones Ruby On Rails tienen todas la misma arquitectura y por tanto cuando un desarrollador llega a un proyecto ya sabe donde está todo y su tiempo de adaptación a un proyecto es muy pequeño. Nosotros lo experimentamos continuamente en la reorganziación de los equipos de trabajo, y en las escasas ocasiones donde ha habido que hacer alguna intervención, cualquier miembro de nuestro equipo es capaz de resolver la incidencia. Dejame compartir contigo que en estos cuatro años no hemos tenido ningún bug que nos haya costado mas de 4 horas resolver.</em></li>
</ul>
<p><em>Si te parece oportuno, podemos quedar un día para discutir este tema con nuestro director técnico y el vuestro,  y explicaros con mas tranquilidad nuestro punto de vista.</em></p></blockquote>
<p>El mail no debería ser tan bueno, al final no ganamos el proyecto. <img src='http://agustin.aspgems.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<img src="http://feeds.feedburner.com/~r/AgustinCuenca/~4/Xte_Qt7901o" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://agustin.aspgems.com/blog/2010/03/riesgo-de-cambio/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://agustin.aspgems.com/blog/2010/03/riesgo-de-cambio/</feedburner:origLink></item>
		<item>
		<title>Incertidumbre y control: “too many mind”</title>
		<link>http://feedproxy.google.com/~r/AgustinCuenca/~3/JeU1v7Fo3Q8/</link>
		<comments>http://agustin.aspgems.com/blog/2010/02/incertidumbre-y-control-too-many-mind/#comments</comments>
		<pubDate>Tue, 23 Feb 2010 23:24:55 +0000</pubDate>
		<dc:creator>Agustin Cuenca</dc:creator>
				<category><![CDATA[Gestión]]></category>
		<category><![CDATA[Metodología]]></category>

		<guid isPermaLink="false">http://agustin.aspgems.com/?p=37</guid>
		<description><![CDATA[¿Como reaccionamos ante la incertidumbre en un proyecto software?
Como he dicho en otras ocasiones nuestro nivel de control sobre un proyecto es limitado:

Especificaciones en cambio constante
Incertidumbre sobre las distintas alternativas
Gestión del cambio
Cambios en las personas
Identificación de responsables

La solución habitual para estos problemas ha sido:

Documentos de especificaciones
Documentos de gestión de cambios
Reuniones de seguimiento
Actas de reunión
etc.

Parece todo [...]]]></description>
			<content:encoded><![CDATA[<p>¿Como reaccionamos ante la incertidumbre en un proyecto software?</p>
<p>Como he dicho en otras ocasiones nuestro nivel de control sobre un proyecto es limitado:</p>
<ul>
<li>Especificaciones en cambio constante</li>
<li>Incertidumbre sobre las distintas alternativas</li>
<li>Gestión del cambio</li>
<li>Cambios en las personas</li>
<li>Identificación de responsables</li>
</ul>
<p>La solución habitual para estos problemas ha sido:</p>
<ul>
<li>Documentos de especificaciones</li>
<li>Documentos de gestión de cambios</li>
<li>Reuniones de seguimiento</li>
<li>Actas de reunión</li>
<li>etc.</li>
</ul>
<p>Parece todo muy razonable. Pero la realidad es que estos documentos, en la gran mayoría de los proyectos, acaban convirtiendose en armas arrojadizas ante los problemas entere el cliente y el desarrollador (ya sean estos internos o externos), en una carga de trabajo para todo el equipo (tanto para los que los escriben como para los que los leen), y además no suelen reflejar bien la realidad del proyecto (por ejemplo la documentación nunca o casi nunca coincide con el producto).</p>
<p>En general la respuesta a estos problemas suele ser todavía mas control, todavía mas reuniones, todavía mas documentos, todavía mas trabajo, y además los mismos resultados. Te invito a consultar la documentación que te han entregado de un proyecto software, o la última que hayas escrito, casi siempre la documentación y el código no están sincronizadas.</p>
<p>Hay otra manera de ver las cosas. ¿Que tal si trabajamos todos en la misma dirección? ¿que tal si cambiamos algunas cosas?. Yo empezaría por cambiar la relación entre usuario y desarrollador, empecemos haciendo un esfuerzo real de confianza mutua.</p>
<p>Ahora aderecemos la confianza con:</p>
<ul>
<li>Trasparencia en la evolución del proyecto, toda la información la tiene todo el mundo, o al menos la tiene accesible.</li>
<li>Trabajamos a corto plazo, no hace falta memoría escrita, las decisiones son mas fáciles.</li>
<li>Todos nos equivocamos, el miedo al error paraliza, y en la mayoría de los casos el equipo acierta a la primera. Es mejor aceptar los errores, tiene menos coste que evitarlos, sobre todo si vamos avanzando poco a poco.</li>
<li>Decidamos lo mas tarde posible, cuanto mas tarde tomemos una decisión mas información tendremos sobre ella.</li>
</ul>
<p>Siempre me ha gustado mucho la escena de &#8220;<a href="http://www.warnerbros.es/movies/lastsamurai/home.html" onclick="javascript:pageTracker._trackPageview ('/outbound/www.warnerbros.es');">El último emperador</a>&#8221; cuando <a href="http://en.wikiquote.org/wiki/The_Last_Samurai" onclick="javascript:pageTracker._trackPageview ('/outbound/en.wikiquote.org');">Nobutada le explica a Algren</a> que se deje llevar, que no piense demasiado:</p>
<dd><strong>Nobutada</strong>: Please forgive, too many mind.</dd>
<dd><strong>Nathan Algren</strong>: Too many mind?</dd>
<dd><strong>Nobutada</strong>: Hai. Mind the sword, mind the people watch, mind the enemy, too many mind&#8230; <em>[pause]</em> No mind.</dd>
<p>Cuando el control se relaja, las cosas fluyen. Las personas producen al máximo y el proyecto avanza con velocidad porque:</p>
<ul>
<li>Se ha mejorado la comunicación entre cliente y desarrolladores</li>
<li>La creatividad tiene espacio, porque ya no es culpable en caso de que algo vaya mal</li>
<li>No debo estar pendiente de protegerme del resto del equipo, y por lo tanto la colaboración es mas abierta</li>
</ul>
<p>En definitiva en nuestra experiencia la incertidumbre se reduce con iteración con la realidad y colaboración.</p>
<img src="http://feeds.feedburner.com/~r/AgustinCuenca/~4/JeU1v7Fo3Q8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://agustin.aspgems.com/blog/2010/02/incertidumbre-y-control-too-many-mind/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://agustin.aspgems.com/blog/2010/02/incertidumbre-y-control-too-many-mind/</feedburner:origLink></item>
	</channel>
</rss>
