19 January 2011

Diseño y arquitectura

El paso lógico después de tener los requerimientos iniciales para un proyecto es diseñar la arquitectura inicial.

Pero normalmente al inicio de muchos proyectos es imposible recoger todos los requisitos; pero tampoco es necesario, tener la arquitectura al completo, describiendo cada detalle y aspecto del sistema antes de empezar a codificar.

A pesar de eso siempre es importante tener resueltas algunas cuestiones, como por ejemplo:

  • Cuales son los principales componentes del sistema y la dependencia que hay entre ellos (los artefactos de alto nivel)
  • Como organizar el código
  • Como se construirá el sistema
  • Que artefactos se crearán en la construcción del sistema
  • Como se organizarán las funcionalidades generales y las trasversales (persistencia, loggin, autentificación, control de errores...)
  • Tener claro lo que irá en cada capa y como será la comunicación entre capas (donde se pondrá la lógica de negocio, como interactuan los objetos del modelo, ...)
  • Como y cuando se validarán las entradas de datos en el sistema
  • Opciones de escalabilidad
  • Como puedo mantener mi sistema seguro
  • Opciones de despliegue

Aunque estos dos últimos puntos, no son necesarios resolver al inicio con detalle, pero son cosas a tener en cuenta ya que pueden influir en como se organiza el código.


- FIN -

No comments: