tag:blogger.com,1999:blog-44122275668710079952008-08-21T12:34:49.261+02:00Software Factory - Factoria del Software - Fabrica de SoftwareMancarfnoreply@blogger.comBlogger39125tag:blogger.com,1999:blog-4412227566871007995.post-19121411536655651482008-08-21T12:28:00.002+02:002008-08-21T12:34:49.269+02:00Tristeza por el accidente areo en Madrid<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_YwVqlR3hvAE/SK1EoFoKO2I/AAAAAAAAAkg/MU71RL2JDGg/s1600-h/images.jpeg"><img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://2.bp.blogspot.com/_YwVqlR3hvAE/SK1EoFoKO2I/AAAAAAAAAkg/MU71RL2JDGg/s400/images.jpeg" alt="" id="BLOGGER_PHOTO_ID_5236917397197831010" border="0" /></a><br />Estaba preparando otro post, pero las <span style="font-weight: bold;">dimensiones de la desgracia</span> son importantes. <span style="font-weight: bold;">Más de 150 muertos confirmados..</span> Mueren personas en todo el mundo a todas horas, pero cuando es más cerca más se nota.<br /><br />Mi<span style="font-weight: bold;"> pesame y apoyo a las familias, y respeto a su dolor.</span>Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-73466724427648205082008-08-13T08:28:00.010+02:002008-08-13T09:05:40.505+02:00Ranking Universidades<a href="http://2.bp.blogspot.com/_YwVqlR3hvAE/SKKFxEix_xI/AAAAAAAAAkE/aOBKvwx2Rr8/s1600-h/vt.png"><img id="BLOGGER_PHOTO_ID_5233892795037646610" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_YwVqlR3hvAE/SKKFxEix_xI/AAAAAAAAAkE/aOBKvwx2Rr8/s400/vt.png" border="0" /></a> En el pasado he defendido la tesis de que la<strong> Universidad en España</strong> deja mucho que desear, pues vuelvo a la carga. En concreto hablo de la informática, en donde creo que estamos muy lejos de la senda correcta. Hay excepciones supongo, pero casi todo lo que conozco... A la <strong>Software Factory sigue llegando gente sin preparación</strong>, pese a tener unas notas excelentes, ¿como se come esto? ...<br />Esto ocurre porque aquí, en España, aún se sigue pensando que <strong>la Universidad es libre de decidir que impartir y que no</strong>, que una serie de profesores piensan que su libro es el bueno pese a que solo lo compran sus alumnos obligados... por favor señores de la catedra, enterense ya que en esto de la informatica, <strong>los americanos nos dan mil vueltas y nos llevan mucho ventaja</strong>...(Google, Microsoft, IBM, Sun, Bea, Dell, Intel, Amd, HP, Apple, etc) no piensen más que ustedes saben de este negocio.. Si, es un negocio por si no lo sabían. Es un error que pagan todos los que pasan por su red.<br /><div><div><br /></div><div><a href="http://1.bp.blogspot.com/_YwVqlR3hvAE/SKKFLD2YsyI/AAAAAAAAAj8/qcUrbLcYheY/s1600-h/rnk.JPG"><img id="BLOGGER_PHOTO_ID_5233892142016410402" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; CURSOR: hand" alt="" src="http://1.bp.blogspot.com/_YwVqlR3hvAE/SKKFLD2YsyI/AAAAAAAAAj8/qcUrbLcYheY/s400/rnk.JPG" border="0" /></a> </div><div><br />Salgan de sus despachos y pasense por las empresas y vean sus necesidades, después asesorense y hagan unos temarios acordes, <strong>promuevan el I+D con la empresa</strong>, y dejen que entre aire fresco. Sigan el modelo americano, que parece que les va muy bien, ya que las mejores Universidades del mundo allí están...<br /><br />Aquí pongo dos ranking de universidades, <strong>la primera española aparece en el puesto 141</strong>. Ole.</div></div><div></div><div>Estos son los dos enlace mencionados:</div><div> </div><div></div><div></div><ul><li><a href="http://www.webometrics.info/top4000.asp?offset=0"><strong>WeboMetrics Rank</strong></a> </li></ul><div></div><ul><li><a href="http://www.arwu.org/rank2008/ARWU2008_A(EN).htm"><strong>Arwu</strong></a></li></ul><div><br />Buscad la vuestra..!!!<br /><br /><strong>Si alguien tiene otro que me lo pase.</strong></div><div></div><div><br />Por cierto en este aparece <a class="nav6a" href="http://www.cmu.edu/" target="_blank"><strong>Carnegie Mellon University</strong></a> , precursora <strong>del </strong><a href="http://www.sei.cmu.edu/cmmi/"><strong>modelo CMMI </strong></a>en el puesto 14. Esto es lo que ocurre <strong>cuando vas por delante y no por detrás</strong>.. que es la empresa la que te sigue. Pero para esto, aquí queda mucho camino por andar.</div><div> </div>Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-72727698951196449832008-08-06T17:37:00.003+02:002008-08-06T17:48:18.020+02:00KNOL a unit of Knowledge<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_YwVqlR3hvAE/SJnHGq7LxoI/AAAAAAAAAi0/EsZX_iAvBiQ/s1600-h/K.JPG"><img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 277px; height: 207px;" src="http://1.bp.blogspot.com/_YwVqlR3hvAE/SJnHGq7LxoI/AAAAAAAAAi0/EsZX_iAvBiQ/s200/K.JPG" alt="" id="BLOGGER_PHOTO_ID_5231431359583209090" border="0" /></a><br /><span style="font-weight: bold;">Google</span> no deja de sorprendernos y esta vez <span style="font-weight: bold;">lanza </span><a style="font-weight: bold;" href="http://knol.google.com/">Knol</a><span style="font-weight: bold;">.</span> Para mi es una sorpresa agradable ya que creo que en cierto modo casa con este blog. <a style="font-weight: bold;" href="http://knol.google.com/">Knol</a><span style="font-weight: bold;"> pretende ser una base de conocimiento</span>, en la cual se realizan aportaciones de personas con un nivel alto de experiencia y conocimiento del tema tratado.<br /><br />Para el que prefiera la definición en inglés:<br /><br /><span style="font-weight: bold;">"A knol is an authoritative article about a specific topic."</span><br /><br />Algunos de los articulos que podeis leer en mi modesto blog, tienen es ocasiones estas pretensiones como la trilogia de Software Factory, que por cierto siguen siendo los articulos más visitados del blog. Creo que intentaré <span style="font-weight: bold;">migrar algún articulo a Knoll</span>, esta claro que una versión mejorada del mismo.<br /><br /><span style="font-weight: bold;">¿Quien más se anima?</span>Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-54711122666499381522008-08-03T12:12:00.007+02:002008-08-06T17:36:06.444+02:00Pizarras Agiles<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_YwVqlR3hvAE/SJWHJXAjoxI/AAAAAAAAAic/JVRJQz1KqzQ/s1600-h/f1.jpg"><img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp3.blogger.com/_YwVqlR3hvAE/SJWHJXAjoxI/AAAAAAAAAic/JVRJQz1KqzQ/s320/f1.jpg" alt="" id="BLOGGER_PHOTO_ID_5230235137125622546" border="0" /></a><br />Me ha llegado un articulo sobre el uso de las pizarras en <span style="font-weight: bold;">proyectos ágiles</span>.. Creo que la pizarra es un bien universal a todos los proyectos. Por mucho que sigamos avanzando en modernas herramientas de seguimiento o <span style="font-weight: bold;">con la integración de los "ToDo</span>" en los entornos de desarrollo, la pizarra para mi es imprescindible..<br /><br />Lo que nunca me había planteado es el uso de calendarios para representar el estado de <span style="font-weight: bold;">animo o motivación del equipo</span> de desarrollo, como representa el <span style="font-weight: bold;">Nico Calendar.</span><br /><br />Si estás interesados no os perdáis el articulo <a style="font-weight: bold;" href="http://www.ddj.com/architect/201807863">"Visualizing Agile Projects with Kanban Boards"</a>Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-26981284053737429152008-07-20T11:16:00.008+02:002008-07-20T12:56:11.813+02:00Mercado Español de Gestion de Contenidos<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_YwVqlR3hvAE/SIMW5pGHndI/AAAAAAAAAiM/BCPqsW72sY8/s1600-h/x2.jpg"><img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp2.blogger.com/_YwVqlR3hvAE/SIMW5pGHndI/AAAAAAAAAiM/BCPqsW72sY8/s320/x2.jpg" alt="" id="BLOGGER_PHOTO_ID_5225045172219780562" border="0" /></a><br /><span style="font-weight: bold;">IDC </span>compañia dedicada al <span style="font-weight: bold;">análisis continuo del mercado</span> de las Tegnologías de la Información ha publicado un <span style="font-weight: bold;">estudio sobre los Gestores de Contenidos</span> en el mercado español. El estudio lo podéis encontrar <a href="http://www.idc.com/spain/research/estudio_gestion_contenidos.jsp">aquí,</a> aunque solo se puede acceder al resumen ejecutivo sin pasar por caja.<br /><br />El estudio aporta información interesante sobre el <span style="font-weight: bold;">mercado nacional, y el análisis de la demanda</span>.Por otro lado estudia cada uno de los players, aquí la información es restringida, así que no he podido acceder al detalle de cada uno.<br /><br />Pero lo que si es público es la lista que es la siguiente:<br /><span style="font-weight: bold;"><br /># IBM<br /># EMC<br /># Open Text<br /># Microsoft<br /># Grupo DICOM (Kofax Division)<br /># Oracle<br /># Interwoven<br /># Vignette<br /># FatWire<br /># Divisa iT<br /># Ever Team<br /># Xerox</span><br /><br />No conozco todos los <span style="font-weight: bold;">ECM ((Enterprise Content Management)</span> del mercado, pero si puedo echar alguno de menos rápidamente <span style="font-weight: bold;">ALFRESCO, para mi es incomprensible que no este en esta lista..</span> Cuando sin duda es mejor producto que otros que si están.. Señores de IDC, <span style="font-weight: bold;">¿</span>ALFRESCO<span style="font-weight: bold;"> no es un </span>player<span style="font-weight: bold;">?</span> Yo al menos me lo he encontrado en bastantes sitios..<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_YwVqlR3hvAE/SIMXv7zQJII/AAAAAAAAAiU/gZZTRaZtJlI/s1600-h/x1.jpg"><img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp0.blogger.com/_YwVqlR3hvAE/SIMXv7zQJII/AAAAAAAAAiU/gZZTRaZtJlI/s320/x1.jpg" alt="" id="BLOGGER_PHOTO_ID_5225046104953857154" border="0" /></a><br />Estoy de acuerdo en que si nos centramos en los ECM y no en los CMS<span style="font-weight: bold;"> (</span>Content<span style="font-weight: bold;"> </span>Management System<span style="font-weight: bold;">)</span> la lista se acorta, pero creo que hay muchos que <span style="font-weight: bold;">se encuentran en la frontera entre ECM y CMS</span>, y que últimamente se han subido al carro de ECM porque tiene más nicho de mercado. Existen algunos CMS como <span style="font-weight: bold;">OpenCms, que creo que sin duda esta al nivel</span> de alguno de la lista.<br /><br />No deja de sorprenderme <span style="font-weight: bold;">la inclusión de Divisa IT</span>, empresa nacional. Que nadie lo lea como una crítica, que es un aplauso, para mi <span style="font-weight: bold;">que alguien de la tierra compita con los grandes</span> y consiga aparecer en la lista, <span style="font-weight: bold;">es de admiración.</span>. Lo consiga como lo consiga. Ya me gustaría a mi algún día lograr lo mismo..<br /><br />Por otro lado el otro día pude ver en televisión un reportaje sobre la web del <a href="http://www.realmadrid.com/cs/Satellite/es/Home"><span style="font-weight: bold;">Real Madrid</span></a>, y como se habían <span style="font-weight: bold;">volcado en la distribución de contenidos</span>. Aunque apenas entraron en aspectos técnicos, si mencionaron que <span style="font-weight: bold;">la tecnología era Fatwire</span>. Aunque a todo se le pueden poner pegas, (solo idioma ingles y español, y el mercado chino donde van de gira!!), <span style="font-weight: bold;">es un magnífico trabajo. </span>La verdad es que me quede con ganas de ver más, y me encantaría que hubiera reportajes de este tipo en los medios..Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-27452966580758798012008-07-03T18:24:00.004+02:002008-07-03T18:32:03.147+02:00Firefox World RecordPues finalmente parece que se consiguió el record. Estoy contento por poner el granito de arena ya que el navegador es fantástico.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_YwVqlR3hvAE/SGz-gn7IEbI/AAAAAAAAAiE/Pcy_vx79zMI/s1600-h/Firefox.JPG"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://bp0.blogger.com/_YwVqlR3hvAE/SGz-gn7IEbI/AAAAAAAAAiE/Pcy_vx79zMI/s320/Firefox.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5218825904641806770" /></a><br /><br />Felicidades Mozilla !!Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-16009878243462552692008-06-30T23:51:00.002+02:002008-07-01T00:01:12.417+02:00A vuela plumaHoy acabo una etapa en Caceres, de la cual me quedo con muchas cosas, pero sobre todo con las personas que he conocido... <br /><br />Gracias por acogerme en ese núcleo, en esa mesa, en esos desayunos, en ese bks, en ese java, en ese cobol, en ese padel, en las comidas, en los chistes, en las gominolas..<br /><br />Sois geniales, gracias..<br /><br />P.D: Volveré !!Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-54284160363995899962008-06-28T01:41:00.006+02:002008-06-28T02:25:03.996+02:00Pair Programming, Cola y Software Factory<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_YwVqlR3hvAE/SGWCo8QpYkI/AAAAAAAAAh0/VLjfSXcJ8Og/s1600-h/h1.jpg"><img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp3.blogger.com/_YwVqlR3hvAE/SGWCo8QpYkI/AAAAAAAAAh0/VLjfSXcJ8Og/s200/h1.jpg" alt="" id="BLOGGER_PHOTO_ID_5216719383260914242" border="0" /></a><br />Hace ya bastante tiempo que conocí el concepto de <a style="font-weight: bold;" href="http://en.wikipedia.org/wiki/Pair_programming">Pair Programming</a>, que para el que no lo conozca, se trata de una técnica de desarrollo que se basa en que <span style="font-weight: bold;">dos programadores trabajan simultáneamente sobre el mismo código.</span> Programan juntos lo mismo compartiendo ordenador, uno teclea y otro dicta.<br /><br />En realidad la definición es mucho más formal y define a los participantes como <span style="font-weight: bold;">Driver</span> (o el que teclea) <span style="font-weight: bold;">que es el encargado de implementar</span> en base al cumplimiento de las normas de estilo o buenas practicas de programación, y el <span style="font-weight: bold;">Observer que es el encargado del aspecto estratégico</span>, afronta una visión más global del aplicativo, selecciona patrones correctos, etc.<br /><br />Nunca creí que esto pudiera funcionar, de hecho es algo que descarte nada más conocerlo sin prestarle más atención. Porque para mi <span style="font-weight: bold;">un programador tecleando y otro al lado</span> con unos papeles explicándole que hacer, no me entra fácil.. <span style="font-weight: bold;">que perdida de tiempo !!!</span><br /><br />Evidentemente la técnica evoluciona y ya los entornos de desarrollo distan mucho de los que yo use cuando era programador. De repente me encuentro algo, como<span style="font-weight: bold;"> Cola y la Edición compartida en tiempo real, y todo ello en Eclipse integrado y con skype..</span><br /><br />A continuación os dejo el video, que no tiene ningún desperdicio, pero si al que no le apetezca le dejo un<span style="font-weight: bold;"> enlace con el </span><a style="font-weight: bold;" href="http://wiki.eclipse.org/DocShare_Plugin">plugin de Eclipse</a><span style="font-weight: bold;"> </span>que explica como funciona.<br /><div style="text-align: center;"><br /><object width="400" height="225"> <param name="allowfullscreen" value="true"> <param name="allowscriptaccess" value="always"> <param name="movie" value="http://www.vimeo.com/moogaloop.swf?clip_id=1195398&server=www.vimeo.com&show_title=1&show_byline=1&show_portrait=1&color=00ADEF&fullscreen=1"> <embed src="http://www.vimeo.com/moogaloop.swf?clip_id=1195398&server=www.vimeo.com&show_title=1&show_byline=1&show_portrait=1&color=00ADEF&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="225"></embed></object><br /><a href="http://www.vimeo.com/1195398?pg=embed&sec=1195398">Cola: Real-Time Shared Editing</a> from <a href="http://www.vimeo.com/mustafa?pg=embed&sec=1195398">Mustafa K. Isik</a> on <a href="http://vimeo.com/?pg=embed&sec=1195398">Vimeo</a>.<br /></div><br />De repente uniendo esto,<span style="font-weight: bold;"> con el Pair Programming y la Software Factory</span>, empiezo a tener ideas de como un programador senior, quizás fuera capaz de Construir una aplicación manejando a la vez a tres programadores junior, siguiendo sus avances y dictando ordenes.. Además estos podían estar en diferentes lugares...<br /><br />Vale, ya se que no invento nada, esto se llama <span style="font-weight: bold;">Virtual Pair Programming</span>, pero en principio voy más allá.. pienso en la parte <span style="font-weight: bold;">NearShore como Observer y el OffShore como Driver.</span>. ¿Imposible? Técnicamente no lo es, y rentable supongo que si sería.. Probablemente sea una locura, pero si pudiera lo intentaba..<br /><br />Otra idea, que me asusta, es si esto se pude volver un<span style="font-weight: bold;"> gran hermano (Big Brother) de la programación</span>, en que se controla línea a línea, lo que escriben los programadores.. Esperemos que esto última jamás sea cierto, porque pase la Monitorización se Servidores, pero la Monitorización de Programadores.. :-D<br /><br />Gracias a Abraham por el video y la idea..Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-62431608604669470582008-06-25T19:23:00.006+02:002008-06-25T20:12:41.795+02:00Reglas de Juego en los Proyectos (ground rules)<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_YwVqlR3hvAE/SGKIE2qubXI/AAAAAAAAAhU/N0bOGRCC6d0/s1600-h/543.jpg"><img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;" src="http://bp1.blogger.com/_YwVqlR3hvAE/SGKIE2qubXI/AAAAAAAAAhU/N0bOGRCC6d0/s320/543.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5215880935424028018" /></a><br /><br />La lectura de un <a href="http://elcafedejoe.com/2008/06/25/reglas-de-juego-en-los-proyectos/">post</a> en el Café de Joe, recomendable blog sobre la Gestión de Proyectos, me ha hecho reflexionar sobre el tema de <span style="font-weight:bold;">los valores o principios de Software Factory</span> sobre lo que <a href="http://software--factory.blogspot.com/2008/06/valores-de-software-factory.html">ya escribí</a> un articulo.<br /><br />Tengo que reconocer que no conocia el termino <span style="font-weight:bold;">Ground Rules</span>, ni que estuviera i<span style="font-weight:bold;">ncluido en el PMBOK</span>, pero para aprender estoy. La definición es la siguiente:<br /><span style="font-style:italic;"><br /><span style="font-weight:bold;">Una lista de comportamientos aceptables e inaceptables adoptados por el equipo de proyecto para mejorar la relación de trabajo, efectividad y la comunicación”</span></span><br /><br />Cuando hablaba de valores de Software Factory como esos pilares que debemos tener sobre la mesa, no reflexionaba que para muchas personas <span style="font-weight:bold;">su mundo es su proyecto y no existe nada más que eso en sus vidas (laboralmente hablando)</span>. Por tanto las <span style="font-weight:bold;">Ground Rules</span> que se establezcan para ellos son las reglas que rigen su universo, y si no se sienten cómodos con ellas estarán descontentos y trabajarán peor.. o se irán a otra empresa o pedirán la salida del proyecto.<br /><br /><span style="font-weight:bold;">La alternativa es establecer unas buenas reglas, que nunca puedan ir en contra de los valores de la compañía..</span> Es decir la compañía no puede estar diciendo que tiene como principio "Conciliar la vida laboral y familiar",y el jefe de proyecto hacerles realizar un overtime de dos horas diarias.. <br /><br />Si entramos dentro del proyecto, es conveniente fomentar que los procesos de comunicación sean robustos, que se escuche la opinión de todos, que las reuniones sea participativas, que exista el compañerismo, el éxito es de todos, tener claro como solucionar conflictos, enfados, riñas..<br /><br /><span style="font-weight:bold;">¿Cuando arrancáis un proyecto pensáis en los Ground Rules?</span> No estaría demás ya que otro JP / PM puede tener otras y el equipo esperar otros comportamientos... Evitemos el "Es que yo estuve en un proyecto en que lo hacíamos así.. ", que me recuerda a la típica frase de partida de parchis entre amigos.. "Es que en mi casa se juega así" Por mi parte empezaré a pensar más en ello, y no dejar cosas al azar..<br /><br />Según leo parece que la mejor manera de hacerlo es la siguiente:<br /><span style="font-style:italic;"><span style="font-weight:bold;"><br />"El proceso de discutir las reglas de juego permite a los miembros descubrir que valores son importantes para cada uno"<br /><span style="font-style:italic;"></span></span></span><br />¿pero nos podemos permitir que opinen sobre todo o discutirlo con los equipos? No lo tengo tan claro.. <span style="font-weight:bold;">¿un proyecto es una democracia? </span>Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-45076009331409134102008-06-17T18:55:00.005+02:002008-06-18T10:33:26.887+02:00Mozilla Firefox 3.0Ya está aquí !! La tercera versión del popular navegador está lista y dentro de poco todos la podremos tener en nuestros equipos.. Instalarla ya en vuestra Software Factory , si os dejan los de Sistemas !!! :-D<br /><br />Mientras tanto Mozilla pretende batir el record mundial de descargas en un día..<br /><br /><a href="http://www.spreadfirefox.com/node&id=0&t=282"><img border="0" alt="Download Day - Spanish" title="Download Day - Spanish" src="http://www.spreadfirefox.com/files/images/affiliates_banners/468x60_dday_es.png"/></a><br /><br />Yo ya me he apuntado.<br /><br />A las 19:00 estará disponible..Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-36571826604464702362008-06-12T19:47:00.004+02:002008-06-12T20:37:08.598+02:00Valores de Software Factory<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_YwVqlR3hvAE/SFFsAhf_BuI/AAAAAAAAAgg/pUo8XgYIGU4/s1600-h/swf1.JPG"><img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp0.blogger.com/_YwVqlR3hvAE/SFFsAhf_BuI/AAAAAAAAAgg/pUo8XgYIGU4/s400/swf1.JPG" alt="" id="BLOGGER_PHOTO_ID_5211065000092698338" border="0" /></a><br />De manera rápida me gustaría dejar la idea, más allá del diseño de Software Factory apoyado en un modelo determinado y en unos costes, creo que se pueden <span style="font-weight: bold;">establecer una serie de valores que digan que hacemos y que no hacemos.</span><br /><br />Hace poco me decía un amigo "No me gusta lo que hacemos" y luego dijo "Mejor dicho como lo hacemos"..<br /><br />Conclusión:<br /><span style="font-style: italic;"><br />" No por mucho que te pague por hora un cliente se puede aceptar lo que te pide, por tanto hay que fundamentar la compañía en unos valores o principios. "</span><br /><br />Os voy a dar una serie de principios, interesantes:<br /><br /><span style=""><b>1. Lo más importante es pensar en el usuario.<br /><br /></b></span><span style=""><b>2. Es mejor especializarse en algo y hacerlo realmente bien.<br /></b></span><span style=""><b><br />3. La velocidad es un valor seguro.<br /><br /></b></span><span style=""><b>4. La democracia en la web funciona.<br /><br /></b></span><span style=""><b>5. No tiene por qué estar en su despacho para obtener una respuesta.<br /><br /></b></span><span style=""><b>6. Es posible obtener ingresos actuando de forma ética.<br /><br /></b></span><span style=""><b>7. Es imposible abarcar toda la información disponible.<br /><br /></b></span><span style=""><b>8. La necesidad de información supera todas las fronteras.<br /><br /></b></span><span style=""><b>9. Es posible ser profesional sin llevar traje.<br /><br /></b></span><span style=""><b>10. No nos conformamos con unos resultados estupendos.<br /><br /></b>Como veis son 10, el 10 es un buen número.. :-)<br /><br />Algunos diréis que no son muy buenos, que los vuestros son mejores, y seguramente no os falte razón, pero estos no son los míos... Son los de <a href="http://www.google.es/intl/es/corporate/tenthings.html">Google</a> y la verdad es que no les ha ido mal.<br /><br />¿tiene tu empresa o factoría los TUYOS? Si coinciden bien, sino.. tu dirás.</span><span style=""><b><br /></b></span>Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-45956056286423499482008-05-29T10:12:00.014+02:002008-06-01T15:25:52.773+02:00Android (primera parte)<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://code.google.com/android/goodies/index.html"><img id="BLOGGER_PHOTO_ID_5206492801121976322" style="FLOAT: right; MARGIN: 0pt 0pt 10px 10px; WIDTH: 305px; CURSOR: pointer; HEIGHT: 321px" alt="" src="http://bp2.blogger.com/_YwVqlR3hvAE/SEEtnhCBAAI/AAAAAAAAAfc/9OT7s97HXGo/s400/android.JPG" border="0" /></a><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://code.google.com/android/goodies/index.html"></a><span style="font-family:arial;font-size:100%;"><span style="FONT-WEIGHT: bold">Google</span> en su continua expansión como empresa, sigue dotando al mercado de una gran gama de aplicaciones sobre las que sustentar su negocio base, el de la publicidad. En un entorno en el que se presenta un <span style="FONT-WEIGHT: bold">emergente acceso a Internet desde dispositivos móviles</span>, mayoritariamente los teléfonos, <span style="FONT-WEIGHT: bold">Google</span> se nomina como participante en esta carrera para conquistar a <span style="FONT-WEIGHT: bold">millones de usuarios</span> potenciales con <span style="FONT-WEIGHT: bold">Android</span>.<br /><br /></span><span style="font-family:arial;font-size:100%;">Naturalmente Google no se puede presentar a la carrera solo<span style="font-size:0;"> </span>y para ello ha levantado una Alianza lo que llama <span style="font-size:0;"></span><a style="FONT-WEIGHT: bold" href="http://www.openhandsetalliance.com/index.html">Open HandSet Alliance</a></span><span style="font-size:100%;"> involucrando a </span><span style="FONT-WEIGHT: bold;font-size:100%;" >operadores, fabricantes, empresas de sw, distribuidores, etc..</span> Y la verdad tiene buena pinta, pero creo que aún les quedan aliados por conquistar o atraer. . Por cierto Telefónica está en la lista..<span style="font-size:100%;"><br /><br />Las premisas en las que se ha basado Google para construir Android son las siguientes:<br /><br /></span><span style="font-size:100%;"></span><ul><li><span style="FONT-WEIGHT: bold;font-size:100%;" >Open:</span><span style="font-size:100%;"> El sistema debe ser abierto y las aplicaciones pueden usar todos los recursos del HW (camara, BT, llmadas, etc) además el sistema puede ser extendido por los desarrolladores.</span></li></ul><ul><li><span style="FONT-WEIGHT: bold;font-size:100%;" >Aplicaciones iguales: </span><span style="font-size:100%;">Todas las aplicaciones pueden ser creadas del mismo modo, no existen ventajas, ni diferencias para aplicaciones creadas por el fabricante o por empresas terceras.</span></li></ul><ul><li><span style="FONT-WEIGHT: bold;font-size:100%;" >Aplicaciones sin barreras:</span><span style="font-size:100%;"> No poner ningun limite a la inovacion, pudiendo combinar recursos del dispositivo móvil, aplicaciones web, datos del usuario.. Sin limites para innovar.</span></li></ul><ul><li><span style="FONT-WEIGHT: bold;font-size:100%;" >Desarrollo Fácil y Rápido. </span><span style="font-size:100%;">Ofrece una serie de aplicaciones y herramientas que permiten poder desarrollar aplicaciones rápidas y dotadas de gran funcionalidad.<br /></span></li></ul><span style="FONT-WEIGHT: bold;font-size:100%;" >Android </span><span style="font-size:100%;">se presenta como una</span><span style="FONT-WEIGHT: bold;font-size:100%;" > plataforma para dispositivos móviles, </span><span style="font-size:100%;">ya que pretende ir más allá de ser un</span><span style="FONT-WEIGHT: bold;font-size:100%;" > sistema operativo para móviles aportando middleware y aplicaciones. </span><span style="font-size:100%;">A estas aplicaciones las llama clave, que son aquellas que todos esperamos que nos traiga de base el móvil cuando lo compramos, y el Middleware son todas las aportaciones a nivel de SDK, que nos permitan construir aplicativos que doten al movil de mayores prestaciones funcionales.<br /><br />Si inspeccionamos la <a href="http://es.wikipedia.org/wiki/Android">wikipedia</a></span><span style="font-size:100%;"> </span><span style="font-size:100%;">podemos encontrar más acerca de Android pero en el momento de escritura de este articulo, no deja casi de ser una traducción de la web oficial de </span><span style="FONT-WEIGHT: bold;font-size:100%;" >Android (</span><span style="font-size:100%;"><a style="FONT-WEIGHT: bold" href="http://code.google.com/android/what-is-android.html"> What is Android?</a></span><span style="FONT-WEIGHT: bold;font-size:100%;" >)</span><span style="font-size:100%;">, en la cual podremos leer mucho más..</span><span style="font-size:100%;"> </span><span style="font-size:100%;"><br /><br />Desde el punto de vista tecnico tenemos las siguientes características, extraidas literalmente:<br /><br /></span><span style="font-size:100%;"></span><ul><li><span style="font-size:100%;"><strong>Application framework</strong> enabling reuse and replacement of components</span></li></ul><ul><li><span style="font-size:100%;"><strong>Dalvik virtual machine</strong> optimized for mobile devices</span></li></ul><ul><li><span style="font-size:100%;"><strong>Integrated browser</strong> based on the open source <a href="http://webkit.org/">WebKit</a> engine </span></li></ul><ul><li><span style="font-size:100%;"><strong>Optimized graphics</strong> powered by a custom 2D graphics library; 3D graphics based on the OpenGL ES 1.0 specification (hardware acceleration optional)</span></li></ul><ul><li><span style="font-size:100%;"><strong>SQLite</strong> for structured data storage</span></li></ul><ul><li><span style="font-size:100%;"><strong>Media support</strong> for common audio, video, and still image formats (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)</span></li></ul><ul><li><span style="font-size:100%;"><strong>GSM Telephony</strong> (hardware dependent)</span></li></ul><ul><li><span style="font-size:100%;"><strong>Bluetooth, EDGE, 3G, and WiFi</strong> (hardware dependent)</span></li></ul><ul><li><span style="font-size:100%;"><strong>Camera, GPS, compass, and accelerometer</strong> (hardware dependent)</span></li></ul><ul><li><span style="font-size:100%;"><strong>Rich development environment</strong> including a device emulator, tools for debugging, memory and performance profiling, and a plugin for the Eclipse IDE</span></li></ul><span style="font-size:100%;">Sobre todo me quedo con que el núcleo (Kernel) del </span><span style="FONT-WEIGHT: bold;font-size:100%;" >Sistema Operativo</span><span style="font-size:100%;"> está basado en </span><span style="FONT-WEIGHT: bold;font-size:100%;" >Linux</span><span style="font-size:100%;">, lo que nos da unas garantias de seguridad, una eficiente gestión de memoria y HW. El navegador se basa en</span><span style="FONT-WEIGHT: bold;font-size:100%;" > Safari</span><span style="font-size:100%;">, y naturalmente supongo que será uno de los aspectos más cuidados. Otro detalle es que han desarrollado una</span><span style="FONT-WEIGHT: bold;font-size:100%;" > Maquina Virtual (Dalvik)</span><span style="font-size:100%;"> a medida del sistema. Me ha encantado también que traiga una </span><span style="FONT-WEIGHT: bold;font-size:100%;" >BBDD SQLite</span><span style="font-size:100%;">, que permite poder desarrollar aplicaciones de peso. Desde luego si sumamos todo, tenemos una</span><span style="FONT-WEIGHT: bold;font-size:100%;" > plataforma ideal para el desarrollo de aplicaciones Java.. </span><span style="font-size:100%;"><br /><br />Desde luego a día de hoy la apuesta de Google respecto a </span><span style="FONT-WEIGHT: bold;font-size:100%;" >Android es llegar a los desarrolladores</span><span style="font-size:100%;">, puedo suponer que en dos sentidos, uno como</span><span style="FONT-WEIGHT: bold;font-size:100%;" > testers de la nueva plataforma</span><span style="font-size:100%;"> y otro sabiendo que cuanto mas desarrolladores, más aplicaciones en el mercado, </span><span style="FONT-WEIGHT: bold;font-size:100%;" >más competitiva es la plataforma </span><span style="font-size:100%;">y puede competir con <a href="http://es.wikipedia.org/wiki/Symbian">Symbian</a> y <a href="http://es.wikipedia.org/wiki/Windows_Mobile">Windows Mobile</a> .<br /><br />No hay nada como organizar una competición entre desarrolladores para conseguirlos, y por ello Google lanzó el <span style="FONT-WEIGHT: bold">Android Developer Challenge</span>, cuyas normas, reglas y objetivos podemos leer <a href="http://code.google.com/android/adc.html">aquí.</a> Básicamente busca aplicaciones para Android, premiando la originalidad, el uso del sistema, y la funcionalidad que desarrollan.. </span><br /><span style="font-size:100%;"></span><br /><span style="font-size:100%;">De esto hablaré en la segunda parte..<br /></span><br /><br /><br /><span style="font-size:0;"></span>Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-20860085999826807802008-05-23T13:02:00.005+02:002008-05-23T13:23:29.504+02:00Lineas de Producto SoftwareHasta este momento había comentado los Modelos de Software Factory (<a href="http://software--factory.blogspot.com/2008/01/modelos-de-software-factory.html"> I</a> , <a href="http://software--factory.blogspot.com/2008/02/modelos-de-software-factory-segunda.html">II</a> , <a href="http://software--factory.blogspot.com/2008/04/modelos-de-software-factory-tercera.html">III </a>) en una serie de artículos que aún esta pendiente de cerrarse, en ellos nos centramos en como presentar el modelo al cliente y como gestionar la producción interna así como los éxitos y beneficios de cada uno.<br /><br />En este artículo vamos a centrarnos en como organizar nuestra producción desde el punto de vista Metodológico y Técnico con dos claros objetivos:<span style="font-weight: bold;"><br /><br /></span><ul style="text-align: center;"><li style="text-align: left;"><span style="font-weight: bold;"> Ahorro de costes.</span></li><li style="text-align: left;"><span style="font-weight: bold;"> Mejora del Time to Market.</span></li><li style="text-align: left;"><span style="font-weight: bold;">Alta calidad del producto.</span><br /></li></ul>Evidentemente el que encuentre la manera de conseguir este trinomio y mantenerlo en el tiempo ha conseguido encontrar el Santo Grial del Software. No va a ser tan fácil de conseguir como muchos autores promulgan, pero sin duda las Líneas de Productos Software es el camino.<br /><br />En general los dos <span style="font-weight: bold;">sistemas de reutilización</span> más usados, son <span style="font-weight: bold;">el Individual</span> que se basa en el Copy & Paste del programador y el <span style="font-weight: bold;">Oportunista </span>que ocurre cuando un componente se parece a otro que hicimos en el pasado y lo encajamos con calzador.<br /><br />Siempre lo que debemos buscar es una <span style="font-weight: bold;">reutilización gestionada</span>, basada en una planificación y en la que pensemos desde el principio de los desarrollos.<br /><br />Las <span style="font-weight: bold;">Líneas de Producto Software (LPS)</span> o <span style="font-weight: bold;">Software Product Lines (SPL)</span>, para el que prefiera documentarse en inglés, proponen un sistema de producción basado en la reutilización de componentes en un determinado dominio. Si nos fijamos en otra industria como puede ser la del automóvil, podemos ver como una misma cadena puede producir hasta automóviles con 1000 diferencias entre si, aplicando este sistema podemos tener un linea de producción capaz de generar multitud de variantes en una tipologia de SW.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_YwVqlR3hvAE/SDamICwxGxI/AAAAAAAAAfU/bNpvrk9L8DU/s1600-h/productline.gif"><img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp1.blogger.com/_YwVqlR3hvAE/SDamICwxGxI/AAAAAAAAAfU/bNpvrk9L8DU/s400/productline.gif" alt="" id="BLOGGER_PHOTO_ID_5203529076583766802" border="0" /></a><br />Evidentemente montar este sistema no es cosa de un día, ya que tenemos que tener una metodología de desarrollo que nos permita <span style="font-weight: bold;">generar activos sw o piezas de la configuración</span>, almacenarlas en un repositorio, para a posteriori poder <span style="font-weight: bold;">ensamblarlas para componer otro producto</span> de diferentes requerimientos.<br /><br />Naturalmente otra necesidad es saber <span style="font-weight: bold;">construir una Arquitectura a medida</span> de este paradigma de producción, ya que no tiene sentido tener un repositorio de activos sw, si el coste de ensamblaje de los mismos es más alto que el de construcción..<br /><br />Queda mucho trabajo por hacer.. y mucho por leer, por eso empecemos cuanto antes..<br /><br /><span style="font-weight: bold;">Bibliografía</span><br /><br />http://www.softwareproductlines.com/<br />http://bradapp.blogspot.com/2008/03/software-product-line-architecture-and.html<br />http://www.ieee.org.ar/downloads/2006-montilva-productos.pdf<br />http://www.sei.cmu.edu/productlines/spl_factory.html<br />http://worldofreuse.blogspot.com/Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-28701139995045268942008-05-02T00:03:00.007+02:002008-05-23T13:34:31.047+02:00Arquitectura: Marca de Software FactoryVoy a empezar una serie de artículos que tienen que ver con las Arquitecturas, estando más cerca de los conceptos de metodología de desarrollo, arquitecturas empresariales y lineas de productos software, que cerca de la tecnología de implementación de las mismas. Evidentemente al hablar de desarrollo de arquitecturas todo el mundo vuelve la cabeza para mirar Java y .net principalmente.<br /><br /><a href="http://bp0.blogger.com/_YwVqlR3hvAE/SBpFuj8Cg9I/AAAAAAAAAd0/Yg1mTQyhigo/s1600-h/java.bmp"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp0.blogger.com/_YwVqlR3hvAE/SBpFuj8Cg9I/AAAAAAAAAd0/Yg1mTQyhigo/s400/java.bmp" alt="" id="BLOGGER_PHOTO_ID_5195541786348651474" border="0" /></a><br /><br />Hace unos días me comentaba un amigo que se encontraba trabajando en la nueva versión de la arquitectura y que iban a pasar a la versión 4.2, en ese momento le pregunté ¿y porque no la 5?, a lo que me respondió con una serie de argumentos técnicos (todos muy acertados), que justificaban claramente el porque solo un crecimiento en el digito de menos peso.<br /><br />Muy probablemente en su empresa siguen criterios cercanos a los de <span style="font-weight: bold;">Apache http://apr.apache.org/versioning.html</span> , que desde luego me parece un gran acierto y un planteamiento más que respetable. <br /><br />En resumen lo que dice <a href="http://apr.apache.org/versioning.html">Apache</a> respecto a su versionado, siendo esto una política muy extendida. Se basa en tres niveles separados por puntos, MAJOR.MINOR.PATCH, aplicando a cada uno criterios diferentes:<br /><br /><a href="http://bp1.blogger.com/_YwVqlR3hvAE/SBpDHz8Cg7I/AAAAAAAAAdk/Q-5PwQe45Bw/s1600-h/apr_logo_wide.png"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp1.blogger.com/_YwVqlR3hvAE/SBpDHz8Cg7I/AAAAAAAAAdk/Q-5PwQe45Bw/s400/apr_logo_wide.png" alt="" id="BLOGGER_PHOTO_ID_5195538921605465010" border="0" /></a><br /><br /> *<span style="font-weight: bold;"> PATCH VERSION</span>: Solo se realizan correcciones, que no cambian el comportamiento de la aplicación, no cambian los parámetros y llamadas. Por tanto al instalar la versión la aplicación no cambia.<br /><br /> * <span style="font-weight: bold;">MINOR VERSION</span>: Introduce nuevas funciones, o cambia y modifica el comportamiento de las existentes pero no rompe la compatibilidad con otras Minor Versions.<br /><br /> * <span style="font-weight: bold;">MAJOR VERSION</span>: Cualquier tipo de cambio son aplicables a Major Version y no tiene porque guardar compatibilidad con minor versions. Normalmente se aplica cuando se introducen importantes grupos de nuevas funcionalidades.<br /><br />La verdad es que se trata de un criterio de versionado robusto, pero no olvidemos que normalmente una arquitectura debe ser proporcionada a un usuario de la misma, bien interno (linea de productos sw, departamentos de la compañia, etc) o externo cara a la venta de un proyecto o venta de una arquitectura empresarial o sectorial, a un determinado cliente.<br /><br />Desde el punto de vista anterior y teniendo en cuenta que un equipo de desarrollo de Arquitectura no lo hace para si mismo, para un agente externo aparenta más solvencia otra manera de presentar versiones. Pensemos que a todos nos da más garantías un producto que se encuentra en la versión 2.2, que uno que está en la versión 1.3... Aunque ambos pueden tener el mismo número de mejoras y correcciones, solo que aplican criterios diferentes.<br /><br />Si algún lector no me cree, solo tiene que hacer la prueba, muestre dos productos diferentes que tengan funcionalidad similares, apuesten a que en la mayoría de los casos el cliente o usuario se decantara por el de la versión más alta. ¿Por qué? Porque piensa que lleva más tiempo en el mercado, porque piensa que se ha invertido mucho esfuerzo en él, porque si ha llegado a 7 versiones es que será bueno, etc.. La mayoría de estas valoraciones aveces serán acertadas y aveces erróneas.. pero en cualquier caso se basan en un criterio de apariencia.<br /><br />Por tanto desde este punto de vista, es más fácil vender, justificar presupuesto, etc , aplicando un criterios de versionado ágiles. ¿Es un engaño? No, es Marketing Tecnológico.<br /><br />Evidentemente no se puede caer en el abuso, y de repente encontrarnos en la versión 23 de un producto. Hay que poner todo en la balanza y aplicar tanto criterios técnicos como marketinianos.<br /><br />Cara a introducir un nuevo enfoque voy a contar una anécdota empresarial:<br /><br /><em>Hoy en día, todo el mundo, o gran parte de el, conoce a una empresa como Nokia. Por increíble que parezca Nokia en sus orígenes fabricaba botas de goma para pescadores, y el nombre proviene de un río existente en Finlandia el Nokia. <br /><br /><a href="http://bp3.blogger.com/_YwVqlR3hvAE/SBpEXT8Cg8I/AAAAAAAAAds/HMAruaIsYIU/s1600-h/211083809_6a4fc489cc.jpg"><img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp3.blogger.com/_YwVqlR3hvAE/SBpEXT8Cg8I/AAAAAAAAAds/HMAruaIsYIU/s400/211083809_6a4fc489cc.jpg" alt="Ruedas nokia" id="BLOGGER_PHOTO_ID_5195540287405065154" border="0" /></a><br /><br />Sin embargo el mayor acierto de Nokia en su historia, probablemente no ha sido realizar teléfonos móviles, sino ser pionera en el branding, de este modo su marca siempre aparece en todos sus productos, incluso cuando hacía botas</em><br /><br />Supongo, que ya vais viendo a donde quiero llegar..<br /><br />Si tenemos en cuanta las<span style="font-weight: bold;"> </span><a href="http://www.millwardbrown.com/Sites/Optimor/Content/KnowledgeCenter/BrandzRanking.aspx"><span style="font-weight: bold;">100 marcas más conocidas</span> </a> en el mundo encontraremos muchas tecnológicas y bastantes dedicadas a los Sistemas de Información.. La primera es Google (¿quién la conocia hace 10 años?), y entre las diez primeras Mocrosoft, IBM , Apple y Nokia . Nadie duda que la marca les ayuda a vender..<br /><br />¿Por qué no aprovecharnos de este concepto y que nuestra arquitectura tenga marca? <br /><br />Sin duda, nos costará poco y ganaremos mucho. Algo que tiene nombre existe y es importante...<br /><br /><strong>¿Que necesitamos?</strong><br /><br />Un nombre y un logo. (por supuesto nada que pise otras marcas)<br /><br /><strong>¿Como lo usamos?</strong><br /><br />Poniéndolo en toda la documentación, presentaciones, etc.<br /><br />En mi antigua y querida empresa nadie se dio por enterado que teníamos una arquitectura hasta que le pusimos nombre y logo. En ese momento todo cambió, parecía que las horas no se gastaban sino que se invertían, que teníamos un producto que vender, que ahorrábamos costes empleándola, etc.. Pero ella era la misma, con sus defectos y virtudes..<br /><br />Eso si, bautizada.Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-937314587789344722008-04-25T18:32:00.008+02:002008-04-27T16:47:18.740+02:00Javahispano Java CupDespués de asistir a dos Congresos de JavaHispano y ser asiduo visitante a su web, junto al respeto y admiración que tengo por esta organización, no puedo dejar de publicitar, en medida de mis posibilidades la <a href="http://javacup.javahispano.org/">Java Cup</a>.<br /><br /><a href="http://bp0.blogger.com/_YwVqlR3hvAE/SBIPbj8Cg6I/AAAAAAAAAdc/oqabcCRHXKI/s1600-h/javacup.jpg"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://bp0.blogger.com/_YwVqlR3hvAE/SBIPbj8Cg6I/AAAAAAAAAdc/oqabcCRHXKI/s400/javacup.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5193230286489551778" /></a><br /><br />La Java Cup es una competición de aplicaciones java, basada en construir un buen algortimo que permita ganar un partido de futbol simulado entre ambos aplicativos.<br /><br />Si no os ha quedado claro lo mejor es que visiteis la <a href="http://javacup.javahispano.org/">web Oficial.</a><br /><br />La verdad, es que quiero aprovechar la ocasión para agradecer todo lo que me aportasteis en su momento en mi modo de pensar respecto a java y sus frameworks y arquitecturas.<br /><br /><a href="http://www.javahispano.org/"><img id="BLOGGER_PHOTO_ID_5193225385931867026" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://bp3.blogger.com/_YwVqlR3hvAE/SBIK-T8Cg5I/AAAAAAAAAdU/_AAb4AsG3nY/s400/javahispano.jpg" border="0" /></a><br /><br />GRACIASMancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-64686658426760516672008-04-10T20:39:00.005+02:002008-04-10T23:26:19.656+02:00Modelos de Software Factory. (tercera parte)En este capitulo vamos a hablar de los Mantenimientos de Aplicaciones, como otro modelo de relación y de gestión dentro de una fabrica de software.<br /><br />C. Mantenimiento de Aplicaciones <br /><br />Tenemos que diferenciar entre el concepto de Mantenimiento dentro de la Ingeniería del Software y el termino A.M o mantenimiento de aplicaciones dentro de una Software Factory (Fabrica de Software).<br /><br />Cuando hablamos del Mantenimiento de un proyecto hablamos de la fase del ciclo de vida, pudiendo ser este evolutivo o correctivo principalmente. En cambio al hablar de Mantenimiento de Aplicaciones hablamos de una externalización de un conjunto de aplicaciones. Muchas veces esta externalización puede tener que ver con un mantenimiento o puede tratarse del desarrollo de nuevas versiones de aplicaciones o funcionalidades concretas.<br /><br />Este modelo es uno de los más interesantes para una Software Factory, ya que permite tener una previsión estable de facturación durante un periodo de tiempo.<br /><br />Evidentemente mejor será el modelo según las condiciones que se cierren en el contrato con el cliente. Los siguientes puntos son vitales se lleguen a cerrar con la mayor precisión posible.<br /><br />- Volumen mínimo anual, pudiéndose tratar en horas y euros, o en ambos sentidos.<br /><br />- Gestión de picos y valles, cuanto es lo mínimo al mes que se debe garantizar y cuanto puede crecer mensualmente la factoría para gestionar un pico de carga.<br /><br />- Acotar tecnologías, arquitecturas y herramientas.<br /><br />- Definir Metodología de Desarrollo acorde a cada necesidad o tecnología.<br /><br />- Definir pirámide global y por tecnología, coste hora por perfil.<br /><br />- Definir estimadores o tablas de estimación. (tecnología – arquitectura – complejidades)<br /><br />- Definir costes de gestión, humanos (jefes de proyecto, gestores, coordinadores).<br /><br />- Definir claramente SLA´s y penalizaciones.<br /><br />- Diseñar las condiciones de salida del contrato y penalizaciones.<br /><br />- Definir normativa de calidad aplicable, ISO, CMMI, ITIL..<br /><br />- Estudiar costes adicionales y amortizaciones, sw, hw, comunicaciones.<br /><br />- Medir los costes de formación. Diferenciar entre general y especifica del proyecto / cliente.<br /><br />- Definir el modelo de relación, responsables, niveles de decisión, escalado, etc.<br /><br />- Definir hitos de facturación, periodicidades y condiciones de pago.<br /><br />- Para mantenimientos plurianuales estipular evolución de precios y estimadores.<br /><br /> Naturalmente en función de la capacidad de negociación y la flexibilidad del cliente, junto al interes de las partes por cerrar los termisno contractuales, serán los factores de exito o fracaso del modelo.Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-79911591267006756982008-03-31T23:05:00.005+02:002008-04-01T00:11:23.679+02:00Java esta de modaHa llegado a mis manos la publicación de <a href="http://www.tiobe.com">TIOBE (www.tiobe.com)</a> sobre los lenguajes más populares. Es una estadística que se basa en las búsquedas realizadas sobre google, yahoo, msn…<br /><br /><a href="http://bp0.blogger.com/_YwVqlR3hvAE/R_FeB1hO2XI/AAAAAAAAAb8/OIpZSfzfxZo/s1600-h/lenguajes.JPG"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://bp0.blogger.com/_YwVqlR3hvAE/R_FeB1hO2XI/AAAAAAAAAb8/OIpZSfzfxZo/s320/lenguajes.JPG" border="0" alt="www.tiobe.com"id="BLOGGER_PHOTO_ID_5184028031719496050" /></a><br /><br />Desde el principio de la publicación del indicador Java ha sido el más popular, y eso hace por lo menos 8 años, según el gráfico que os presento a continuación.<br /><br /><a href="http://bp1.blogger.com/_YwVqlR3hvAE/R_Fe0FhO2YI/AAAAAAAAAcE/PFHnb3mYcnQ/s1600-h/tpci_trends.JPG"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://bp1.blogger.com/_YwVqlR3hvAE/R_Fe0FhO2YI/AAAAAAAAAcE/PFHnb3mYcnQ/s320/tpci_trends.JPG" border="0" alt="www.tiobe.com"id="BLOGGER_PHOTO_ID_5184028895007922562" /></a><br /><br />Como observareis salvo en Octubre de 2004, Java ha sido siempre el líder. Cuando lo vi me llamó la atención y comencé a pensar que podía ser que coincidiera con el lanzamiento de alguna versión de .net o algo así. Nada más lejos de la realidad. No es que java dejara de ser el más popular sino que Google cambio su manera de calificar las búsquedas.. quede esto como anécdota.<br /><br />Creo que para todos 8 años son mucho tiempo, pero evidentemente no representa lo mismo para una persona, para un perro o para un Drago milenario. Lo que está claro que 8 años en informática es mucho, mucho tiempo. <br /><br />La informática ha demostrado ser imparable, realizando en menos tiempo que cualquier ingeniería una evolución exponencial, y ha sido la tool del resto, desde aeronáutica, caminos, industriales, química, etc , Por eso a este nivel una década, marca una tendencia y Java sin duda es el rey de la misma.<br /><br />Cuando Java se debate entre los evolucionistas que pretenden que java siga cambiando (o mutando ¿?) continuamente con versiones de JDK y los inmovilistas que creen que java debe frenar su evolución y su continuo chorreo de versiones, que prefieren dejar para lenguajes como Groovy y Scala, EXISTEN personas que creen que Java no debe ser un lenguaje apto para enseñar en la Universidad. Se imaginan que en la facultad de Medicina solo se dieran las enfermedades de hace más de 50 años, o que en Arquitectura no permitieran el uso de programas tipo Autocad, o en Física no usaran los ordenadores, .. Impensable verdad??. <br /><br />Hoy por hoy, llegan universitarios a la Software Factory que no conocen Java, ni tampoco .net, ni Cobol, ni SAP… siento decir que la Universidad no hace su trabajo y no mira por sus clientes, los alumnos. Si esto sigue así la informática corre el riesgo de salir de la Universidad, y eso espero que nunca ocurra porque creo que Informática y empresa deben ir de la mano.<br /><br />Entiendo a dos amigos que uno con una asignatura y otro con el proyecto, dicen que para ellos es una bobada tener la carrera. Que razón tienen !! Lo único que les conviene acabar por "El que dirán.. los de RRHH", aunque tampoco hay una carrera de RRHH.. :-D (con cariño que algunos son muy buenos y grandes amigos).Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-41517686022537537212008-03-22T17:45:00.007+01:002008-03-22T18:28:16.651+01:00Cuando era mas jovenHace unos años publique un articulo en la revista de mi antigua empresa, de cuyo titulo no logro acordarme, ya que se puso en la publicación y no dispongo de ella. He añadido un par de imagenes para complementarlo. Os dejo con el..<br /><br />Encontrándome ante la tesitura de tener que impartir un curso para Jefes de Proyecto empecé a recabar información sobre la que apoyarme y que me aportara una visión externa de los proyectos y una buena base teórica. Buscando unos datos para la introducción me acorde de Mr Gartner (en realidad es una consultora).<br /><br />El ver las estadísticas de Gartner hace pensar a cualquiera sobre los proyectos del sector de las Tecnologías de la Información, no tengo intención de dar cifras pero puedo resumir que dependiendo del tipo de proyecto el porcentaje de éxito/fracaso está sobre 50 %. Normalmente esto supone unas perdidas económicas terribles tanto a compradores como vendedores de proyectos.<br /><br /><a href="http://bp1.blogger.com/_YwVqlR3hvAE/R-VAsFhO2VI/AAAAAAAAAbs/3FQEkrgoQ34/s1600-h/javavsnet.jpg"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://bp1.blogger.com/_YwVqlR3hvAE/R-VAsFhO2VI/AAAAAAAAAbs/3FQEkrgoQ34/s320/javavsnet.jpg" border="0" alt="Tecnologías de Hoy"id="BLOGGER_PHOTO_ID_5180618072499607890" /></a><br /><br />No puedo imaginar que solo el 50 % de las autopistas que se construyen acabaran exitosamente, o aviones, o edificios o puentes. La informática también es una ingeniería o eso me han contado. Parece que es jugársela a cara o cruz cada vez que alguien se plantea hacer un nuevo proyecto. Evidentemente algo no funciona en el sector.<br /><br />Una deducción rápida permite afirmar que el 50 % de los proyectos no deben hacerse, la complejidad reside en determinar cuales antes de empezar con ellos, ¿bola de cristal? No, mejor una Metodología.<br /><br />Claro, la Metodología, que fácil era. Espera no tan rápido, ¿eso no fue la conclusión que se saco en la crisis del SW de los 70? ¿Pero no tenemos ya un montón? RUP, Merisse, Metrica 3, Extreme Programming, etc. Todas tienen éxitos y fracasos, por tanto hemos vuelto al principio.<br /><br />Cada año aparecen nuevas metodologías milagro que han conseguido éxitos en proyectos en la India o en China, siempre bien lejos, como Pair Programming, ¡ dos programadores por ordenador¡. ¿Cómo no se me había ocurrido antes? Supongo que porque los ordenadores solo tienen un teclado.<br /><br />Sin embargo para encontrar el camino es mejor mirar donde se ha acertado y cuando se ha acertado y con que. El sector financiero (Banca y Seguros) históricamente ha sido uno de los sectores más robustos en cuanto a sus sistemas y aplicaciones Sw. La mayoría de ellos aún cuentan con todas sus reglas de negocio y core sw realizados en antiguas tecnologías como cobol y RPG, todo ello construido en los 80, y funciona. Cada vez que intentan migrar o generar nuevos procesos se enfrentan al cara y cruz, por eso prefieren, si pueden, no tocarlo.<br /><br /><a href="http://bp1.blogger.com/_YwVqlR3hvAE/R-VBIFhO2WI/AAAAAAAAAb0/8B2ATqHPxDw/s1600-h/COBOL.jpg"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://bp1.blogger.com/_YwVqlR3hvAE/R-VBIFhO2WI/AAAAAAAAAb0/8B2ATqHPxDw/s320/COBOL.jpg" border="0" alt="Tecnologías de ayer"id="BLOGGER_PHOTO_ID_5180618553535945058" /></a><br /><br />Tecnologías obsoletas, con menos medios, e informáticos ya jubilados son los que parece que lo hicieron bien, y ni siquiera Microsoft había inventado el Project.<br /><br />Evidentemente la tecnología es imparable y ahora sin duda todo es mejor, ¿pero funciona mejor?.<br /><br /><br />Publicado en Te Interesa. Marzo 2006Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-83018421286687017782008-03-22T12:22:00.005+01:002008-03-22T12:54:17.318+01:00Fabricas del Software<a href="http://bp0.blogger.com/_YwVqlR3hvAE/R-TxYFhO2RI/AAAAAAAAAbM/u248qh7aYgc/s1600-h/8090.jpg"><img id="BLOGGER_PHOTO_ID_5180530867483629842" style="FLOAT: right; MARGIN: 0px 0px 10px 10px; CURSOR: hand" alt="" src="http://bp0.blogger.com/_YwVqlR3hvAE/R-TxYFhO2RI/AAAAAAAAAbM/u248qh7aYgc/s400/8090.jpg" border="0" /></a><br />En esta entrada del Blog voy a comentaros mi última adquisición literaria <a href="http://www.ra-ma.es/libros/0001915.htm">"Fabricas del Software: Experiencias, Tecnologías y Organización"</a> publicado en Diciembre de 2007 por Ra-Ma.<br /><br />En este punto solo puedo daros unas primeras impresiones, ya que no he podido completar su lectura aún, pero no quería esperar más para daros esa primera visión.<br /><br />En primer lugar se agradece que alguien se adentre en este mundo y ponga un libro en nuestro idioma en la calle y a disposición de todos. En ese punto solo puedo aplaudir a los autores y a Ra-Ma por darles cobertura.<br /><br />El libro tiene a mi modo de ver dos partes totalmente diferenciadas:<br /><br />- La primera que repasa la historia de las “software factories”, tecnologías, modelos de desarrollo, orientación a procesos y calidad.<br /><br />- Una segunda parte en que nos encontramos con varios casos de estudio sobre fabricas del software existentes en la actualidad, unas con más información que otras, pero en cualquier caso da una medida del mercado.<br /><br />De momento he atacado algunos capítulos, no creo que sea necesario leerlos en orden, y puedo decir que la visión de resumen y la forma de llevar temas que son pesados a quince o veinte páginas me ha gustado. Además aporta una extensa bibliografía al final de cada capítulo para el que quiera profundizar.<br /><br />En principio es recomendable para todos los públicos, desde comerciales, directores, jefes de proyecto y programadores con inquietudes..<br /><br />De momento alabo la idea y el formato, además la existencia de varios autores hace pensar en que cada experto tiene "su tema". Ahora solo me queda esperar que los contenidos también sean buenos.. pero eso lo comentaré más adelante.<br /><br />Lo podéis adquirir tanto en Ra-Ma como en la Casa del libro.Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-91489922024818331652008-03-04T18:19:00.003+01:002008-03-04T18:59:19.572+01:0010 cosas que todo Arquitecto debe saber..Como mucha gente sabe una de mis pasiones es la vertiente más tecnológica de la Ingeniería del Software, personificada en el concepto de Arquitectura. Antes de nada os dejo una pequeña reflexión.<br /><br />Cuando hablo de Concepto Arquitectura pienso, sobre todo, en que cada día se demuestra más la tendencia a que vamos a una ingeniera del software gobernada por la Arquitectura, y sin embargo desde el punto de vista del usuario de negocio, esto tiene que dejar de existir ya. La tecnología debe dejar de ser una barrera, sobre todo en cuanto a su continua evolución, y cada día vemos más empresas manteniendo viejos sistemas, aunque es mejor que migrarlos todos cada poco.. no es la solución.<br /><br />Para mi cada vez esta más claro que el éxito de las arquitecturas empresariales viene dado por pensar en una clara orientación a servicios (SOA) , (quizás es pronto para orientación a eventos EDA) para acabar llegando a BPM. Donde el usuario de negocio debe ser capaz de definir sus propios procesos de negocio… que si ¡!! que esto es viable, preguntar a BEA.<br /><br />Tenemos que pensar que no podemos construir un BPM como primer paso, sino empezar a pensar en una estructura de Gobierno SOA sobre la cual vayamos creciendo hasta tener una suficiente estructura de servicios de negocio, que nos permitan montar BPM. Por tanto el modo de llegar es ir dando pasos.. no esperar a empezar los últimos la carrera.<br /><br />A donde quería llegar, sobre las arquitecturas, es proporcionaros un interesante documento que ha llegado a mis manos, el cual se titula “ 10 cosas que todo arquitecto debe saber” y la verdad es que son ciertamente interesantes:<br /><br />1. La base esta en las personas.<br />2. Todas las soluciones llegan a ser obsoletas.<br />3. Los Datos son para siempre.<br />4. La flexibilidad genera complejidad.<br />5. Nada funciona según se esperaba.<br />6. La documentación es el codigo fuente universal.<br />7. Conozca el negocio.<br />8. Mantenga la visión.<br />9. Los arquitectos deben ser programadores.<br />10. La experiencia es insustituible.<br /><br />Sobre cada una existen frases reflexivas, que realmente dan que pensar. <br /><br />Doy las gracias al autor del mismo <a href="http://www.monson-haefel.com/">Richard Monson-Haefel</a> por sus <a href="http://swfactory.es/arquitectura/10_Things_Final_Deck_for_NFJS.ppt">“10 Things Every Architect Should Know”, </a>que aquí publico, creo que siguiendo correctamente la <a href="http://creativecommons.org/licenses/by-nc-sa/3.0/">licencia</a>.Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-26376354884760697762008-02-26T19:00:00.004+01:002008-02-26T19:14:30.716+01:00Gestion del ConocimientoLa noticia, que leo en un <a href="http://www.euribor.com.es/2008/02/22/%c2%bfsaber-ganar-o-saber-administrar/">blog</a>, es la siguiente “un estudio demuestra que el 60% de los jugadores de la nba están en la ruina 5 años después de retirarse”, el autor de dicho blog pretende explicar que lo importante no es solo ganar o generar ingresos sino también saber administrarlo. Esto me hizo pensar en la forma de trabajo de las SWF respecto a la gestión del conocimiento.<br /><br />Cuando hoy en día nadie duda que el conocimiento es uno de los grandes valores de la SWF, esta muy claro que existe una gran preocupación por tenerlo. Esta reflexion de las SWF viene motivada por dos razones, mayor capacidad de venta “Si conozco más cosas, tengo más mercado y puedo vender más…” y porque impacta directamente sobre la productividad “ Si tengo equipos bien formados, que conocen la tecnología y las herramientas, produzco más rápido y con más calidad”.. Hasta aquí parece que el sistema es bastante simple.<br /><br />Ahora la problemática es como adquirir Conocimiento, y en realidad esto también es como la mayoría de las cosas, o soy capaz de producirlo o tengo que comprarlo. Para producirlo hay que tener un gran sistema de sw i+d y formación interno, no solo en cuanto al volumen de conocimiento que puede repartir, sino en cuanto a la capacidad que tiene de adaptarse y formar en lo que demanda un mercado cambiante. Para comprar es necesario tener un buen área de selección, que conozca el paño, para poder adquirir el conocimiento de una manera ágil y eficiente.<br /><br />Otra cosa es cuando hablamos de Administrar el Conocimiento esto no parece tan sencillo, y a toda SWF le puede pasar como a los jugadores de la nba, hoy somos ricos y mañana estamos en la ruina.. y tenemos que volver a empezar.<br /><br />Si es un hecho, que es difícil gestionar algo que es totalmente dependiente del capital humano, añadimos personas que se encuentran en sedes o centros de trabajo distribuidos geográficamente, nos damos cuenta que todo lo que ganamos lo perdemos rápidamente, ya que continuamente empezamos de 0.<br /><br />Habitualmente cuando se detecta este problema se ponen medidas, que casi siempre son las siguientes:<br /><br />Formación presencial y online. Mantener un catalogo de curso accesible para que cuando alguien necesite.. lo realice. Normalmente los cursos no encajan con las necesidades.<br /><br />Foro: Poner un foro en la web, en la mayoría esto es un fracaso absoluto, cuando entras se ve que hay mensajes de años sin contestar. Nadie lo lee..<br /><br />Repositorio documental: Se pone toda la documentación en un macro servidor, pero tampoco se usa porque lo más fácil es ir a Google..<br /><br />De wikis, faq´s, etc.. ya ni hablo la mayoría fracasan en pocos días..<br /><br />¿Pero entonces hay que dar la batalla por perdida? Si, no, yo que se.. me explico.<br /><br />Un sistema de gestión del conocimiento funciona muy bien con ese % pequeño de gente, que les gusta aprender y son proactivos.. pero el resto y gran mayoría no participará sino se lo impone. Y ese grupo de buenos técnicos, lo hará igual.. A veces la empresa (SWF) piensa que con todos los medios que ha puesto, no le debe preocupar que se vaya fulanito o menganito, gran error..<br /><br />Lo mejor, desde mi punto de vista es, además de gestionar el conocimiento, gestionar el talento y pujar por el económicamente.. No permitir perderlo bajo ningún concepto, ya que con el somos capaces de investigar, formar, administrar la documentación, producir mejor y mucho más.. Por tanto gestionado el talento el conocimiento se administra solo.Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-6377168001752951272008-02-15T08:21:00.005+01:002008-03-22T18:47:35.102+01:00Tan lejos y tan cerca..Por mucho que hablemos de globalización, y siendo las factorías un mercado proclive a montar proyectos en otros países y externalizar parte de su trabajo (normalmente el de menos coste) cuando lo analizas fríamente parece que no funciona tan bien.<br /><br />Hoy en día cada vez más se manejan conceptos como NearShore y OffShore, pero como todo el mundo sabe, el Near más caro y de mas calidad, o así se espera, y el Offshore más barato con menos calidad y mayor riesgo por lo general.<br /><br />Mis experiencias en este modelo son claramente mayores siendo Nearshore pero tambien he tenido algún escarceo Offshore.<br /><br />Teóricamente se supone que hay dos maneras de externalizar a Offshore:<br /><br />1) Modo un salto. Pasamos directamente de la parte funcional (entorno cliente) a factoría lejana.. Puede funcionar bien con una factoría sudamericana, evita salto de idioma.. Pero no imagino al cliente gestionando una factoría lejana.. el cliente no entiende de carga, picos, valles, perfiles, etc Aunque pongamos el típico Director de proyecto al lado del cliente..<br /><br />2) Modelo dos saltos: Pasamos antes por el NearShore y que está factoría filtre la carga que se puede enviar a las factorías lejanas.. Me creo que funciona bien siendo las factorías lejanas de Construcción y PU, y la cercana de Diseño y Pruebas..<br /><br />Ahora bien, a cuantos realmente le esta funcionando el modelo? Mi experiencia es la siguiente:<br /><br />Creo que puede funcionar con Sudamérica, Argentina, Chile o Colombia. He tenido experiencias tanto con factorías de Argentina y Colombia, y se cumple perfectamente el patrón "es barato y de calidad media", salvas el idioma pero tienes la pega del horario...<br /><br />Siempre hay gente que dice que hoy en día el inglés no es problema, ja ja ja, una especificación sobre un USE CASE complejo no la hace cualquiera en inglés.. o un buen DT especificado para llevar fuera.. Que algunos de cada factoría pueden hacerlo, si, ¿pero con ellos podemos generar el suficiente volumen para amortizar el coste de levantar una linea de producción offshore? No lo creo.. y lo que esta claro que solo es rentable si tenemos mucho volumen, en el cual podamos amortizar los sobre costes de refinamiento. Y si hablamos de trabajar con china, pega doble, porque ellos hablan aún menos inglés.. así que vamos listos. <br /><br />Ahora, en mi factoría, hay posibilidades de montar a lo largo de 2008, una conexión con la India y Brasil con factorías de hasta 30.000 personas. No puedo imaginar como debe ser una factoría de 30.000 personas.. Normal que vendan barato, un valle de carga de un 10% representa 3000 recursos parados.. madre de Dios, como para que no funcione bien la Dirección de Producción. <br /><br />El problema es que para trabajar en offshore necesitamos (el sector) un mayor número de profesionales mucho más cualificados y mejorar mucho nuestro sistema de Calidad. No veo trabajar en Offshore sin un nivel CMMI 3 asentado, simplemente no es viable, y digo en destino y origen. <br /><br />¿Si ya tengo problemas para generar carga de calidad para mis propios equipos, como lo genero para equipos externos, que además siguen otros modelos de trabajo? <br /><br />Y sin embargo, es algo que estoy convencido que es imprescindible para una evolución del sector, en la cual tendremos profesionales cualificados y de primer nivel en España y sacaremos la rodaja de producción gorda fuera, con un coste más que razonable.Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-53574100608744923042008-02-13T17:10:00.003+01:002008-02-13T17:18:16.521+01:00Modelos de Software Factory. (segunda parte)Continuamos hablando de modelos de SWF, en este segundo articulo. Cuando acabe todos los modelos prometo moontarlos en un documento y refinar lenguaje y forma.. alguno me lo ha comentado.. <br /><br />B. Bodyshopping<br /><br />Entendemos por BodyShopping la venta de recursos (personas), a un cliente determinado en un proyecto determinado y por un periodo de tiempo.<br /><br />El cliente especifica el perfil que necesita, dando normalmente como entradas los años de experiencia, la tecnología y/o metodología que requiere. El objetivo del cliente es encargar una serie de tareas a esa persona o grupo de personas y controlar su realización. Otro requisito habitual, cara a poder controlar los recursos contratados es que estas labores se realicen en sus oficinas o sede.<br /><br />Hasta aquí tenemos el <span style="font-weight:bold;">modelo clásico</span> de venta, el cual puede ser aprovechado por la SWF ya que dispone de una cantera importante de recursos a poner en el mercado, pero que cuenta con los siguientes handicap:<br /><br />Ubicación: Normalmente la SWF no esta en la misma ciudad que el cliente, por tanto no puede competir en igualdad de condiciones, ya que debe trasladar los costes de desplazamiento al cliente. También tiene problemas para contratar recursos en una ciudad que no es la suya (no tiene sede), si quiere abaratar costes.<br /><br />Lentitud: Es lenta para ubicar recursos en un cliente, necesita convencer al equipo para que se desplace y es lenta para sustituir.<br /><br />Riesgo de fuga: Salvo que los recursos quieran volver al origen, cambiarán de empresa tan pronto puedan, no tiene sentido pertenecer a una empresa sin sede. Puede que no cambie de empresa sino de área de la compañía, pero al final es una perdida para la SWF.<br /><br />Si pensamos en el modelo clásico que describíamos anteriormente, también lo podemos encontrar referenciado como un <span style="font-weight:bold;">modelo ‘Time and Material”</span>. Indica que lo que se cobra es el tiempo invertido de principio a fin (no se estima a priori) y el material invertido. Si nos dedicáramos a la fontanería sería algo como el tiempo de reparar la fuga más el precio de la tubería, eso con el margen pertinente.<br /><br />Elementos a valorar para ofertar el Bodyshopping, en modelo clásico:<br /><br />Duración del contrato: Se recomienda no hacer ofertas por un tiempo inferior a 6 meses, ya que si dura menos los periodos de No Asignación y vacaciones se suelen comer el beneficio.<br /><br />Posibilidades de Prorroga: Este punto es muy importante, ya que cuanto más prorrogas, más beneficio, por tanto interesan los largos proyectos. También interesa más la Administración Pública que la empresa privada, ya que la primera suele tener asignado presupuesto por todo un periodo y es poco probable que corte el proyecto o contrato.<br /><br />Capacidad de Renegociación: Las personas con el tiempo querrán mejorar sus condiciones salariales, por tanto debemos tener “ventanas de negociación” con el cliente. Normalmente de manera anual..<br /><br />Absentismo: Si una persona es propensa a las ausencias, de cualquier tipo, que no sean una baja laboral, ante un cliente al que facturamos por horas, con un margen de benefició de un 20 %, dos ausencias al mes nos lo pueden dejar en un 10 %. Solución, seleccionar personas con bajo absentismo y manejar márgenes de más de un 30 %. <br /><br />Otro modelo es el <span style="font-weight:bold;">Bodyshopping deslocalizado</span>, en el cual el cliente controla sus recursos en remoto. <br /><br />Este suele ser un modelo de venta que se sigue algunas veces en la SWF, pero realmente implica muchos riesgos. Normalmente se tiende a este modelo porque un cliente esta a trabajar en el mismo e interpreta que trabajar con una SWF implica condiciones similares solo que fuera de su sede y a un precio muy competitivo.<br />Esto sería realmente maravilloso tanto para el cliente como para la SWF, ya que es un beneficio garantizado, los problemas vienen cuando el cliente tiene unas expectativas mucho más altas en su “equipo remoto” que de lo que este llega a hacer.<br /><br />El problema fundamental es el siguiente:<br /><br />Los recursos que trabajan en este modelo para la SWF son recursos asignados full-time de los cuales no se tiene que preocupar que dar carga y por tanto la única preocupación es la de facturar como si estuvieran fuera de la sede.<br /><br />El cliente espera conseguir grandes resultados porque no es consciente de los problemas y retrasos que tiene su equipo, de los cuales si sería consciente si los tuviera en su sede y asumiría en la misma sin problema.<br /><br />De repente todos topan con la realidad, el cliente esperaba un producto SWF en un plazo y no lo tiene, y no sabe porque.. piensa que en realidad la SWF no trabaja como debe y se siente engañado. <br /><br />La SWF cuanta al cliente que los problemas no son suyos, sino de comunicación, de que no tuvieron carga, que los analistas del cliente no se preocuparon de especificar bien etc.. Da igual, ya esta claro que llegados a este punto hay que cambiar de modelo.<br /><br />¿De quien es el error? De la SWF que pensó que era un modelo muy rentable y que no tenia ningún riesgo, además de beneficiarse del desconocimiento del cliente. <br />Entonces, ¿se puede emplear el Modelo de BodyShopping con éxito en la SWF? La respuesta es si.<br /><br />Se puede si explicamos claramente al cliente las condiciones del servicio, se puede si asignamos un responsable que levante bandera si algo no va como debe, se puede sino solo se quiere facturar si no hacer SW y reportar avances y resultados. <br /><br />El modelo encajaría para pequeños proyectos con pocos recursos y para arranques de proyecto en los cuales no es viable hacer una valoración del mismo a priori, arrancamos que nos paguen un mes del equipo y luego ya veremos cuantos y cuanto tiempo..Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-44447571108192932412008-02-11T20:45:00.000+01:002008-02-11T21:13:14.715+01:00Open Source, en Dolares (mejor) ¿para todos?Después de leer un nuevo <a href="http://piratosa-factory.blogspot.com/2008/02/el-valor-del-opensource-pero-ahora.html">articulo</a> de mis amigos de Piratosa, creo que este articulo refuerza mis pensamientos del gran modelo de negocio que está tras el OS.<br /><br />Lo único que siento es que esas grandes cifras, no suelen llegar a los programadores que contribuyeron desinteresadamente... y luego nos encontramos con programadores, cobrando lo que cobran.. viendo como alguien se forra con sus donaciones.<br /><br />Esto es lo que me preocupa, aún así prefiero este modelo que otros, y no he perdido toda la Fe en el mismo.<br /><br />Dejo un enlace por si alguien quiere continuar estudiando el modelo de negocio del Open Source.. <a href="http://www.infoworld.com/event/osbc/08/index.html">Open Source Business Conference.</a><br /><br />Otra cosa, a ojo, me parece que la mayoria de compañias compradas son americanas.. funciona el modelo open en Europa? Tanto a nivel de generación de proyectos interesantes como compras interesantes?? Alguna me dirá que OpenCMS es aleman.. y que no se escribe así..<br /><br />Si alguien me sabe decir grandes proyectos europeos OpenSOurce que me los diga.. <br /><br />No vale Linux !!! Ese ya lo se.. (aunque minix.. era americano no? y Linus T. lo copió y era mejor la teoria del microkernel de Tanenbaum ) No me meto en ese charco ya que alguin linuxero me betara para siempre.. Es broma.Mancarfnoreply@blogger.comtag:blogger.com,1999:blog-4412227566871007995.post-34136068563408692712008-02-11T19:45:00.000+01:002008-02-11T20:28:03.242+01:005 Tecnologías JavaTras leer un <a href="http://www.manageability.org/blog/stuff/five-java-technologies-to-learn-in-2008">articulo</a> sobre las 5 tecnologías java, que aprender en 2008. Surge el debate sobre que esta de moda y que realmente aporta. Os dejo opiniones que he recabado..<br /> <br />OSGI. Si está bien, pero verde y en pañales..<br /> <br />JCR. Imprescindible que tu CMS lo tenga... ¿pero para que vale para un proyecto independiente y aislado, sin más pretensiones que distribuir unos contenidos entre sus usuarios? No parece tan impresicindible.. <br /> <br />GWT. Está muy bien, parece interesante y puede ser un siguiente paso..quizás complementandolo con algun otro framework.. y JSF?<br /> <br />Groovy. Interesante si no lo sacas de altas, bajas y modificaciones.. <br /> <br />Cloud Computing En cuantos proyectos de SWF podemos aplicar esto??? (Ironia).<br /> <br />Como veis desde el punto de vista de la SWF parece que no son tan interesantes, entonces cuales son las 5 tecnologías Java a perseguir dentro de ls SWF? Parece que solo GWT.. <br /> <br />y si estas son las las 5 que aprender, no puede ser que 2008 sea un año de parón en la evolución de Java? No hay ninguna tecnología SOA o de ESB, salvo que a OSGI le demos este <a href="http://underlap.blogspot.com/2007/02/is-osgi-soa.html">enfoque</a>, que merezca la pena según este estudio aprender? o es que ya las da por aprendidas? Que al menos en España, seguro que no..Mancarfnoreply@blogger.com