gabriel.oliva posted on December 21, 2009 17:57

Taking Business Intelligence beyond the Business Analyst

 Descarga en PDF la edicion numero 22 de The Architecture Journal

 AJ22_EN.zip (3.95 mb)

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

gabriel.oliva posted on November 20, 2009 18:17

 

 

 

 

 

 

 

 

 

 

 

 

 

Descarga en PDF la edicion numero 21 de The Architecture Journal

AJ21_EN.zip (2.53 mb)

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

Definiciones de conversión entre estructuras relacionales y objetos (Object Relational Mappers)

 

LA OTRA OPCION DISPONIBLE A LA ESCRITURA DE MUCHO SQL – CHRIS KOCH  

En el capítulo 3 hicimos nuestro primer esfuerzo para unir el mundo de los objetos con los datos mediante la escritura a mano de nuestra propia capa de acceso a datos y su definición de conversión. Este enfoque resultó ser más bien limitado y requirió una cantidad significativa de código repetitivo (aunque  fue útil para demostrar las bases).  Agregar más objetos y funcionalidad sobrecargaría nuestro Capa de Acceso a Datos (DAL) en una enorme violación inmanejable del principio que dicta ‘No te repitas a ti mismo’ (DRY, por sus siglas en inglés). En este capítulo veremos un marco de trabajo real para la definición de conversiones entre Objetos y Entidades Relacionales (O/R Mapping) que haga todo el trabajo pesado por nosotros. Específicamente veremos el popular marco de trabajo de código abierto llamado NHibernate.

La única y más grande barrera que impide a la gente adoptar el diseño guiado por el dominio (DDD por sus siglas en inglés), es el problema de la persistencia. Mi propia adopción de las definiciones de conversión entre estructuras relacionales y los objetos (O/R Mappers) inicio con gran confusión y duda.  Básicamente se te pedirá que cambies tu conocimiento de un método probado  por algo que parece de un poco mágico.  Puede ser requerida algo de fe ciega.

La primer cosa con la que hay que llegar a un acuerdo es con que las definiciones de conversión generan tu SQL por ti, lo sé, suena como que será algo lento, inseguro e inflexible, especialmente debido a que probablemente imaginaste que se tendría que usar SQL en línea. Pero sí puedes quitarte esos miedos de tu mente por un segundo, tienes que admitir que podría ahorrarte mucho tiempo y tener como resultado un número mucho menor de defectos. Recuerda, queremos enfocarnos en construir el comportamiento, no preocuparnos con cuestiones de interconexión (y si te hace sentir mejor, una buena definición de conversiones entre estructuras relacionales y objetos te proveerá formas sencillas de desactivar la generación automatizada de código y ejecutar tu propio SQL o tus procedimientos almacenados).

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

La incorporación de patrones es muy importante pues en un escenario como el anterior y ayudado de políticas de codificación te puede ayudar a establecer los parámetros mediante los cuales se le permite al equipo trabajar, pero no solo eso, los patrones nos dan una forma de resolver un problema común, retos a los que alguien mas ya se enfrento en su momento y para lo cual genero una solución, algo probado que sabes que funcionará, esto te ahorrará mucho tiempo en la conceptualización y el diseño, los patrones también como base para el establecimiento de mecanismos de generación automática de código por lo menos a nivel de proxys o contratos , es decir … que una vez establecido un patrón para cierto componente o parte de la aplicación puedes generar cuando menos platillas automáticas que te generaran el esqueleto, más aun, la aplicación de los patrones hacen que el costo de mantener,  modificar y extender tus módulos o la aplicación completa, sea infinitamente menor … algo que seguramente apreciarás cuando el cliente te pida cambios o adecuaciones ‘menores’  que sin la incorporación de patrones te tomaría meses … el tiempo invertido en el diseño puede ser el factor clave que te permita hacer esos cambios en solo días … incluso horas o minutos.

Aquí les dejo un reporte generado por Nucleus Reseach dedicado precisamente a analizar las ventajas de incorporar los patrones a sus proyectos de construcción de software.

 

j61_-_Report_-_Microsoft_patterns_and_practices.pdf (196.98 kb)

 

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

A lo largo de mis años en la industria del desarrollo de software he tenido la fortuna de vivir en carne propia ambas caras de la moneda en cuanto al uso e implementación de de patrones, desde el desarrollo con un uso nulo de los mismos (en mis primeros años) hasta el uso extensivo y casi religioso de un conjunto bastante extenso. ¿Y porque digo que he tenido la fortuna de vivir ambos?, bien pues básicamente por que el pasar por la experiencia de no usarlos y después dedicar tiempo significativo en su evaluación e incorporación dentro de los proyectos solo me ayudó a entender el por qué son tan importantes, en el aspecto práctico el uso de patrones en el diseño de la arquitectura de software puede marcar la diferencia entre el éxito y el fracaso de un proyecto … crees que exagero ? ok, imagina que debes realizar un producto muy grande en donde por el tamaño necesitas que tu equipo esté formado por varios desarrolladores, cada uno con diferente nivel de experiencia (incluso en el manejo de la tecnología), cada uno con una forma de ver el producto y por supuesto cada uno de ellos con una manera diferente de enfrentar los retos tecnológicos que implica la construcción de la aplicación.

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

gabriel.oliva posted on October 19, 2009 06:57

Hace algunos meses platicando con un cliente y amigo personal me inquieto un poco la percepción que se tiene respecto a lo que es computo en la nube y las nuevas tendencias orientadas hacia este tipo de plataformas globales... en aquella ocasión el me comentaba que algunos de sus productos ya estaban orientados desde hace algunos años al nuevo paradigma de ‘computo en la nube’, aun cuando su estrategia comercial de ‘Software As A Service’ me parecía muy inteligente, ésta mas bien se trataba de la venta de licenciamiento del software que ‘hosteaba’ en sus servidores. Con la nueva oleada de tecnologías y formas de conceptualizar la oferta de servicios en línea considero importante el establecer claramente las diferencias entre lo que es Hosting VS. Cloud computing, es por eso que aquí les comparto un muy buen documento de introducción a Azure escrito por David Chapell, no olvides visitar: http://www.microsoft.com/windowsazure/  

Windows Azure Platform, v1.2--Chappell[1].pdf (1.08 mb)

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

Les comparto algunas ligas que les pueden ser de mucha utilidad si requieren entrenamiento o informacion de las herramientas con las que Microsoft cuenta para los que nos dedicamos a la industria de TI.

 

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

gabriel.oliva posted on July 15, 2009 04:43

Una de las desiciones mas importantes a las que un equipo de desarrollo se enfrenta cuando un proyecto de desarrollo se encuentra en sus primeras fases, es la de evaluar y seleccionar la estrategia de diseño que será la base para establecer la arquitectura de la aplicación, como algunas veces he comentado, mi punto de vista personal es que no existe una forma correcta o incorrecta de establecer el diseño conceptual (asumiendo que se cuente con ´proven practices' y con buen nivel técnico) ya que en gran medida esto depende de las características funcionales que se busca incorporar, sin embargo muchas veces este proceso se vuelve complejo cuando nos topamos con diferentes formas y tecnologías de implementar un mismo esquema (ej. un flujo de trabajo), la buena noticia es que no es necesario invertir mucho tiempo realizando pruebas de concepto para ver que estrategia funciona mejor para las características de la solución aqui les comparto un par de ligas que pueden serles de mucha utilidad para evaluar patrones de arquitectura, conocer soluciones probadas para problemas comunes, guias de diseño y codigo fuente de ejemplo.

 Have Fun :)

patterns & practices: App Arch Guide 2.0 Knowledge Base

patterns & practices: Data Access Guidance

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

Hace algunos días mientras preparaba un webcast sobre WWF comencé a percatarme de lo rápido que cambian algunas de las tecnologías incluidas en los últimos releases del NET Framework, es obvio pensar que muchas de las incorporaciones que Microsoft esta haciendo a las nuevas liberaciones del framework continuaran evolucionando en los próximos años y con esto es necesario estar enterado de cuales son los cambios trascendentes a los espacios de nombres, nombres de clases, métodos y demás características de definición.

 

Con el lanzamiento del nuevo modelo de programación para Workflow Foundation que será introducido en el .NET Framework 4.0, el equipo de desarrollo ha comenzado con la creación de los primeros cuatro documentos de la guía de migración para aplicaciones desarrolladas con WF en versiones pasadasDicha guía estará compuesta de ocho documentos que permitirán la actualización de los workflows diseñados con esta tecnología a incorporar las nuevas definiciones creadas para la versión del .NET framework 4.0, la lista de documentos planeados es la siguiente:

 

  1. WF Migration Overview (Now Live!)
  2. WF Migration: Best Practices for WF3 Development (Now Live!)
  3. WF Guidance: Rules (Now Live!)
  4. WF Guidance: State Machine (Now Live!)
  5. WF Migration Cookbook: Custom Activities (Coming Soon)
  6. WF Migration Cookbook: Workflows (Coming Soon)
  7. WF Migration Cookbook: Workflow Services (Coming Soon)
  8. WF Migration Cookbook: Advanced Custom Activities (Coming Soon)



los documentos restantes que por ahora no están disponibles serán liberados conforme se acerque la liberación del RTM, adicionalmente se incluirá material de soporte (código fuente de ejemplo), mientras tanto pueden entrar al foro de WF en MSDN para estar informados de las noticias y avances.

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList


En 2005, Microsoft liberó Visual Studio 2005 Team System como un amplio conjunto de herramientas con el que los equipos de todos los tamaños pueden administrar el ciclo de vida de las aplicaciones. Recientemente Microsoft liberó la siguiente versión de este conjunto de herramientas con Visual Studio Team System 2008 y agregó herramientas y capacidades para mejorar la calidad y permitir que las divisiones de informática compartan su entrega con la estrategia de negocios. 
 

Conoce mas acerca de las características avanzadas de VSTS para desarrollo de software de alto nivel y la proxima generación de herramientas incluidas en el siguiente release de VSTS 'Rosario'

URL de Registro para Asistentes (Público):
http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032389739&Culture=es-AR

Recursos:
Pdf de la presentación: VSTS - El hoy y el mañana.pdf (1.16 mb)
Guia de instalación de VSTS & Foundation Server:  TFSInstall-SP1-RTM-v080908.chm (342.99 kb)
Información sobre procesos de desarrollo de Sw. y su automatización con VSTS: ITB Sw Dev Process v2.ppt (3.48 mb)
Informacion en línea sobre VSTS 2008: VSTS on MSDN  
Visual Studio Team System 2010 Overview: http://msdn.microsoft.com/en-us/vstudio/bb725993.aspx
 
Capacitación:
Si estas interesado en recibir entrenamiento directamente de los expertos en desarrollo de software de
IT Builder México escribe a contacto@itbuilder.com.mx o gabriel.oliva@itbuilder.com.mx,
con el entrenamiento recibirás información valiosa para poder desarrollar software de mejor calidad.

Digg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

IT Builder

Conoce mas de los servicios de IT Builder y la forma en la que podemos apoyarte a construir software de clase mundial

* Procesos para el desarrollo de software (CMMI, MSF, TSP, PSP, Moprosoft).
* Habilitacion de ambientes colaborativos y automatizacion con Visual Studio Team System.
* Arquitectura de aplicaciones bajo tecnologia Microsoft.
* Construccion de aplicaciones .NET.

www.itbuilder.com.mx
Imaginalo, nosotros lo construimos !

Calendar

«  March 2010  »
MoTuWeThFrSaSu
22232425262728
1234567
891011121314
15161718192021
22232425262728
2930311234
View posts in large calendar

MVP

MVP Factor


Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2010 ITB - Gabriel Oliva C.