<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>robMV.com &#187; Arquitectura de Software</title>
	<atom:link href="http://robmv.com/category/arquitectura-de-software/feed/" rel="self" type="application/rss+xml" />
	<link>http://robmv.com</link>
	<description>Divagaciones de un Ingeniero de la Web...</description>
	<lastBuildDate>Tue, 04 May 2010 21:21:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Creando la Arquitectura de Software &#8211; Parte I</title>
		<link>http://robmv.com/creando-la-arquitectura-de-software-parte-i/</link>
		<comments>http://robmv.com/creando-la-arquitectura-de-software-parte-i/#comments</comments>
		<pubDate>Thu, 10 Sep 2009 18:41:31 +0000</pubDate>
		<dc:creator>Rob</dc:creator>
				<category><![CDATA[Arquitectura de Software]]></category>

		<guid isPermaLink="false">http://robmv.com/?p=62</guid>
		<description><![CDATA[Este es el primer post de una serie que quiero ir documentando sobre cómo crear la arquitectura de software de una aplicación, quiero ir mencionando los factores que son importantes a la hora de la creación de la arquitectura, pues a veces nos vamos a programar de una vez, sin tomar en cuenta todo lo [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" title="Arquitecto de Software" src="http://www.robmv.com/images/architect.jpg" alt="" width="254" height="267" />Este es el primer post de una serie que quiero ir documentando sobre cómo crear la arquitectura de software de una aplicación, quiero ir mencionando los factores que son importantes a la hora de la creación de la arquitectura, pues a veces nos vamos a programar de una vez, sin tomar en cuenta todo lo que implica crear un sistema lo más robusto posible.<br />
<em>¿Donde debe el Arquitecto enfocar su atención cuando está creando la Arquitectura de software de una aplicación?</em><br />
Antes que nada se debe de aclarar, que lo primero que tenemos que ver no será la funcionalidad del sistema, hay otros factores que tenemos que ver antes de ponernos a ver cómo va a funcionar la aplicación que desarrollar.<br />
Así como lo leen, <strong>la funcionalidad no es nuestra primera preocupación para crear la arquitectura del software</strong>.
<!-- Begin Google Adsense code -->
<div style='float: right; margin: 10px;'>
<script type='text/javascript'><!--
google_ad_client = 'pub-0844808970363946';
google_ad_width = 300;
google_ad_height = 250;
google_ad_format = '300x250_as';
google_ad_type = 'text_image';
//2007-09-25: RobMV.com
google_ad_channel = '9298830523';
//-->
</script>
<script type='text/javascript'
  src='http://pagead2.googlesyndication.com/pagead/show_ads.js'>
</script>
</div>
<!-- End Google Adsense code -->
<br />
Por ejemplo, si te ofrecen contratarte para desarrollar la arquitectura de software para una aplicación Web, empezarías por preguntar por la estructura de las páginas o la navegación que tendrá el sistema, ó preguntarías lo siguiente:</p>
<ul>
<li> ¿A dónde se alojara la aplicación?</li>
<li>¿Hay alguna restricción de la tecnología que soporta el ambiente donde estará alojada la aplicación?</li>
<li>¿Quiere que corra en un servidor Windows o un Linux?</li>
<li>¿Cuantos usuarios soportara esta aplicación simultáneamente?</li>
<li> ¿Que tan segura necesita ser esta aplicación? ¿Hay datos que necesitamos proteger? ¿La aplicación estará en Internet o en una intranet privada?</li>
<li> ¿Pueden priorizarte todas estas respuestas? Por ejemplo, ¿Es más importante el número de usuarios que soportara o lo será el tiempo de respuesta?</li>
</ul>
<p>Depende de las respuestas a estas u otras dudas que surjan podremos tener una mejor idea a la hora de hacer un sketch o machote de la arquitectura del sistema.<br />
Si se fijan todavía ni he preguntado qué es lo que tenía que hacer mi aplicación!<br />
Y esto lo hacemos porque primero debemos de enfocarnos en resolver las inquietudes, tales como tener todos los elementos necesarios para entregar un software de calidad.<br />
Las inquietudes de Calidad nos especifican la manera en como la funcionalidad del sistema será entregada para que sea aceptable al usuario, quien es al final el que da el visto bueno al sistema y el que mas interés tiene porque le quede bien.<br />
Los usuarios también tienen sus inquietudes y esto lo veremos en el próximo post.</p>
]]></content:encoded>
			<wfw:commentRss>http://robmv.com/creando-la-arquitectura-de-software-parte-i/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>¿Qué cosas hacen la vida de un programador miserable?</title>
		<link>http://robmv.com/%c2%bfque-cosas-hacen-la-vida-de-un-programador-miserable/</link>
		<comments>http://robmv.com/%c2%bfque-cosas-hacen-la-vida-de-un-programador-miserable/#comments</comments>
		<pubDate>Tue, 04 Aug 2009 22:33:14 +0000</pubDate>
		<dc:creator>Rob</dc:creator>
				<category><![CDATA[Arquitectura de Software]]></category>

		<guid isPermaLink="false">http://robmv.com/?p=40</guid>
		<description><![CDATA[Estaba leyendo en el sitio StackOverflow un artículo que pedía la opinión sobre ¿Que hace miserable la vida de un programador?, y es que cuando un programador esta en un ambiente corporativo hay muchas cosas que nos pueden hacer sentir hostigados y desmotivan, puesto que algunos les gusta tener todas las libertades creativas y no [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-75" title="Programador" src="http://robmv.com/images/hacker.gif" alt="Programador" />Estaba leyendo en el sitio <a href="http://stackoverflow.com">StackOverflow</a> un artículo que pedía la opinión sobre <a href="http://stackoverflow.com/questions/1205191/what-are-things-that-make-a-programmers-life-miserable" target="_blank">¿Que hace miserable la vida de un programador?</a>, y es que cuando un programador esta en un ambiente corporativo hay muchas cosas que nos pueden hacer sentir hostigados y desmotivan, puesto que algunos les gusta tener todas las libertades creativas y no ser interrumpidos en su trabajo.</p>
<p>Quizás una de las cosas que en mi caso personal hacen que sea miserable mi vida como programador es concentrarme y encajonarme en un horario para desarrollar mi trabajo, puesto que a veces soy un mejor programador en la noche o cuando no hay nadie alrededor y mi énfasis solo es el código y no tengo que estar contestando llamadas, correos y asistiendo a reuniones. Lógicamente si uno es parte de un ambiente corportativo es muy difícil evitar eso, pero poco a poco he logrado saber canalizar el tiempo creativo con el tiempo que están todas esas distracciones, pero si pudiera evitarlas para solo programar fuera mucho mas productivo.</p>
<p>Otras de las cosas que procuro hacer es dedicarme un tiempo del día o en la semana para aprender una nueva tecnología o un libro sobre lo que hago en mi trabajo o algo que quiera implementar en mi equipo, por cierto les recomiendo el libro <a href="http://www.amazon.com/Agile-Retrospectives-Making-Teams-Great/dp/0977616649">Agile Retrospectives: Making Good Teams Great</a>,  este libro es muy bueno y espero terminarlo pronto para escribir mis impresiones. Se que si no dedicara ese tiempo en la semana mi vida como programador o como Arquitecto de Software no fuera la misma, tengo ese deseo de mejorar y ver como mis proyectos pueden ser los mejores y con la mejor tecnología que yo pueda tener disponible.
<!-- Begin Google Adsense code -->
<div style='float: right; margin: 10px;'>
<script type='text/javascript'><!--
google_ad_client = 'pub-0844808970363946';
google_ad_width = 300;
google_ad_height = 250;
google_ad_format = '300x250_as';
google_ad_type = 'text_image';
//2007-09-25: RobMV.com
google_ad_channel = '9298830523';
//-->
</script>
<script type='text/javascript'
  src='http://pagead2.googlesyndication.com/pagead/show_ads.js'>
</script>
</div>
<!-- End Google Adsense code -->
</p>
<p>Y para finalizar otra de las tantas cosas que creo que puede frustrar a un programador es cuando le piden a uno experiencia de 5 años en 5 diferentes tecnologías, cuando uno como programador sabe que el programar trasciende lenguaje, Sistema Operativo, Hardware. etc.  Mi opinión personal es que un buen programador siempre es un buen programador, sea el lenguaje que sea, porque un buen programador siempre estará listo para ser un autodidacta y tendrá las bases para poder aprender cualquier lenguaje y tecnología.</p>
<p>Y a ustedes, ¿Que cosas hacen su vida sea miserable como programador?</p>
]]></content:encoded>
			<wfw:commentRss>http://robmv.com/%c2%bfque-cosas-hacen-la-vida-de-un-programador-miserable/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Ya me certifique SCJA</title>
		<link>http://robmv.com/ya-me-certifique-scja/</link>
		<comments>http://robmv.com/ya-me-certifique-scja/#comments</comments>
		<pubDate>Thu, 26 Mar 2009 21:26:00 +0000</pubDate>
		<dc:creator>Rob</dc:creator>
				<category><![CDATA[Arquitectura de Software]]></category>

		<guid isPermaLink="false">http://robmv.com/?p=12</guid>
		<description><![CDATA[Hace mas de un mes hice el examen que te da la certificacion SCJA (Sun Certified Java Associate) de Sun MycroSystems, el objetivo de esta certificacion es proveer una forma de entrar en el area de desarrollo de aplicaciones o como software project manager usando tecnologias Java. Por el momento considero que esta certificacion me [...]]]></description>
			<content:encoded><![CDATA[<p>Hace mas de un mes hice el examen que te da la certificacion <a href="http://www.sun.com/training/certification/java/scja.xml" target="_blank">SCJA</a></p>
<p>(Sun Certified Java Associate) de Sun MycroSystems, el objetivo de esta certificacion es proveer una forma de entrar en el area de desarrollo de aplicaciones o como software project manager usando tecnologias Java.<br />

<!-- Begin Google Adsense code -->
<div style='float: right; margin: 10px;'>
<script type='text/javascript'><!--
google_ad_client = 'pub-0844808970363946';
google_ad_width = 300;
google_ad_height = 250;
google_ad_format = '300x250_as';
google_ad_type = 'text_image';
//2007-09-25: RobMV.com
google_ad_channel = '9298830523';
//-->
</script>
<script type='text/javascript'
  src='http://pagead2.googlesyndication.com/pagead/show_ads.js'>
</script>
</div>
<!-- End Google Adsense code -->
<br />
Por el momento considero que esta certificacion me ayuda mucho no a ser un mejor programador en Java, para eso esta la certificacion <a href="http://www.sun.com/training/certification/java/scjp.xml">SCJP</a>, pero si me ayuda a tener un mejor analisis de aplicaciones de software Orientada a Objetos, como Arquitecto de Sistemas este tipo de certificaciones ayudan mucho a ser un mejor analista y ademas te ayudan en tu hoja de vida, logicamente si uno tiene la experiencia y capacidad te hara resaltar entre los demas, sino es una certificacion que sera solo un papelito mas&#8230;</p>
<p>El dia del examen me encerraron dos horas con el aire acondicionado congelandome, me desconcentre un poco, pero al final pase el examen y un mes despues llego un paquete con mi Certificado, una carta de felicitacion, un Pin indicando que soy un Java Associate, y una tarjeta de presentacion indicando mi logro.</p>
<p>De verdad que si motiva mucho hacer este tipo de certificaciones y ya me estoy preparando para las que vienen&#8230; el objetivo a futuro sera tener la certificacion para ser un Arquitecto para aplicaciones empresariales de Sun (<a href="http://www.sun.com/training/certification/java/scea.xml" target="_blank">SCEA</a>)</p>
]]></content:encoded>
			<wfw:commentRss>http://robmv.com/ya-me-certifique-scja/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Arquitecto de Software</title>
		<link>http://robmv.com/arquitecto-de-software/</link>
		<comments>http://robmv.com/arquitecto-de-software/#comments</comments>
		<pubDate>Sun, 26 Oct 2008 06:25:08 +0000</pubDate>
		<dc:creator>Rob</dc:creator>
				<category><![CDATA[Arquitectura de Software]]></category>

		<guid isPermaLink="false">http://robmv.com/arquitecto-de-software/</guid>
		<description><![CDATA[Desde hace ya unos meses me dieron un ascenso en el trabajo, me dieron el puesto de Arquitecto de Software, es un puesto con mas responsabilidades, entre las funciones que como Arquitecto de Software me tocan estan: Funciones principales: Arquitectura: Definición de arquitectura de los sistemas, vista física, vista lógica, principios de arquitectura, seguridad, etc. [...]]]></description>
			<content:encoded><![CDATA[<p>Desde hace ya unos meses me dieron un ascenso en el trabajo, me dieron el puesto de Arquitecto de Software,  es un puesto con mas responsabilidades, entre las funciones que como Arquitecto de Software me tocan estan:<br />

<!-- Begin Google Adsense code -->
<div style='float: right; margin: 10px;'>
<script type='text/javascript'><!--
google_ad_client = 'pub-0844808970363946';
google_ad_width = 300;
google_ad_height = 250;
google_ad_format = '300x250_as';
google_ad_type = 'text_image';
//2007-09-25: RobMV.com
google_ad_channel = '9298830523';
//-->
</script>
<script type='text/javascript'
  src='http://pagead2.googlesyndication.com/pagead/show_ads.js'>
</script>
</div>
<!-- End Google Adsense code -->
<br />
F<span style="font-family: verdana">unciones principales:</span></p>
<ul>
<li><span style="font-family: verdana">Arquitectura: Definición de arquitectura de los sistemas, vista física, vista lógica, principios de arquitectura, seguridad, etc.</span></li>
<li><span style="font-family: verdana">Selección de Software: Pilas de aplicaciones, bases de datos, librerías, frameworks, estándares tecnológicos, etc.</span></li>
<li><span style="font-family: verdana">Selección de Infraestructura: Sistemas Operativos, hardware, redes, sistemas de recuperación, etc.</span></li>
<li><span style="font-family: verdana">Requisitos no Funcionales: Rendimiento, escalabilidad, seguridad, etc.</span></li>
<li><span style="font-family: verdana">Liderazgo: Liderazgo Técnico, responsabilidad y autoridad, dirección de equipos, etc.</span></li>
<li><span style="font-family: verdana">Coaching y Mentoring: Ayuda sobre problemas técnicos, ayuda en la evolución profesional, etc.</span></li>
<li><span style="font-family: verdana">Metodología de Proyectos: Estructura de Proyectos, Metodologías (Waterfall, Scrum, RUP, XP&#8230;).</span></li>
<li><span style="font-family: verdana">Procesos de Desarrollo: Control de versiones de código fuente, procesos de construcción, integración continua, automatización de pruebas y otros procesos y herramientas de desarrollo. </span></li>
<li><span style="font-family: verdana">Prácticas y Estándares: Estándares de codificación y libros blancos, selección de herramientas, etc.</span></li>
<li><span style="font-family: verdana">Diseño, Desarrollo y Pruebas: Diagramas UML, codificación, pruebas unitarias, etc.</span></li>
<li><span style="font-family: verdana">Experiencia: Conocimiento sobre tecnologías y arquitecturas.</span></li>
<li><span style="font-family: verdana">Estar al día en cuanto a tendencias tecnológicas: Agile, Web 2.0, SOA, Lightweight Java EE, etc.</span></li>
</ul>
<p>De todas esas funciones hay algunas que antes hacia y ahora me siento comodo haciendolas, como el coaching y el mentoring, a mi me gusta mucho orientar sobre como hacer las cosas, y me gusta mucho investigar sobre las nuevas tecnologias.</p>
<p>EStoy bien contento con lo que estoy logrando profesionalmente y me gustaria ir comentando mi experiencia para ir creciendo mas y capaz ayudando a otros que comienzan esta carrera muy emociionante de la arquitectura de software.</p>
]]></content:encoded>
			<wfw:commentRss>http://robmv.com/arquitecto-de-software/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

