martes, 26 de enero de 2010

Antes de desarrollar la solución

Antes de iniciar con el desarrollo hay que tener definido una estructura del como trabajar, como analizamos, modelamos y documentamos el sistema, como se debe programar y trabajar, lo cierto es que los eso facilita el trabajo en equipo, así como nos permite el poder retomar sistemas y poder darle mantenimiento a los mismos, sin tanto problemas, cuando un sistema es un par de pantallas y un solo programador lo hace, bueno no es tan importante, pero cuando se es un sistema gigante, y hay cambios continuamente, algún cambio de programador o bien de equipo, ahí nos queremos cortar las venas con galletas de animalitos por que no tenemos ni idea que hizo la anterior persona o bien su lógica es muy particular y diferente al nuestro.

Me ha tocado ver el echo que se quiere vender una solución solo por el echo de venderla y cobrar, sin analizar en si el problema y ver cual es la mejor solución y tecnología a emplear, de acuerdo a las necesidades y posibilidades del cliente., igual la solución es mas simple de lo que parece o bien mas costosa de lo que estimamos.

Hay que tener en cuanta que el cliente, espera un beneficio/inversión, o bien aumentar sus ganancias o bien bajar sus costoso ambos, eso es bueno tenerlo presente por que la mayoría de las empresas quieren invertir y muchas veces el que toma la decisión no sabe de tecnología, pero si sabe de ganancias y costos.
Bueno primero que nada recomendamos enfáticamente escuchar el video de Ángel Java López, donde se explica el uso de Domain Drive Design.


Hay que mencionar.

• Uml es el medio usado para modelar el análisis, en el video se da por entendido, el uml es independiente de la tecnología, un buen diseño se puede usar ya sea en Java, .Net. Android, Cocoa, C++, etc.
• Los diagramas mínimos de documentación recomendados son los de casos de uso, clases, estado.
• Manejar test unitarios, o mínimamente probar siempre todo, al momento de hacer un cambio, un mal hábito es solo probar lo que se modifica y no ver si esto no afecta lo demás.
• Se pretende mostrar de momento las cosas lo mas estándar posible, sin inclinarnos a una tecnología o lenguaje especifico, ya al momento de implementar se deberá hacerlo de acuerdo a la tecnología especifica, sea .Net, Java, Andriod, etc.
• En el curso desarrollador 5 estrellas, se recomienda revisar la estrella 5 en la parte de arquitectura.
• El IDesign es un ejemplo en c# de estandarización de la forma de codificar, pero ya cada lenguaje empleara el indicado o bien se deberá documentar una propia.

Algunas ligas informativas.

No hay comentarios:

Publicar un comentario