Versión X
[ Nombre de Equipo]
[ Logo ]
[Logo] [ Project ] – Especificación del Diseño de Software
Los párrafos escritos en el estilo de “Comentario” son una guía para quien escriba el
documento y deben removerse antes de entregarlo
Esta plantilla sirve como base para la Especificación del Diseño de Software.
Los diseños para sistemas de software deben ser personalizados a las necesidades del
proyecto. Esta plantilla solamente es un punto de inicio; la mayoría de los proyectos no
deben limitar su diseño de sistema a un documento único. Lo hacemos aquí por
conveniencia, para mostrar las generalidades de la información de diseño que los proyectos
deben incluir.
Así, aunque está organizado como un único documento, el material aquí expuesto se
empaquetaría en múltiples documentos dependiendo de las necesidades de cada proyecto.
Por lo tanto, esta plantilla ofrece un punto de inicio que servirá para muchas situaciones,
puesto que captura la información de diseño fundamental para producir un buen diseño y
para documentar las decisiones de diseño para uso futuro.
Page i
[Logo] [ Project ] – Especificación del Diseño de Software
Contenidos
CONTENIDOS....................................................................................................................II
1 INTRODUCCIÓN...............................................................................................................1
1.1 ANTECEDENTES............................................................................................................1
1.2 MAPA DE DISEÑO.........................................................................................................1
1.3 MATERIALES DE SOPORTE..............................................................................................1
1.4 DEFINICIONES Y ACRÓNIMOS..........................................................................................1
2 CONSIDERACIONES DE DISEÑO.........................................................................................2
2.1 SUPOSICIONES..............................................................................................................2
2.2 LIMITANTES.................................................................................................................2
2.3 AMBIENTE DEL SISTEMA................................................................................................2
2.4 METODOLOGÍA DE DISEÑO.............................................................................................2
2.5 RIESGOS......................................................................................................................2
3 ARQUITECTURA..............................................................................................................3
3.1 ANTECEDENTES............................................................................................................3
3.2 JUSTIFICACIÓN..............................................................................................................3
3.3 DETALLES DE COMPONENTES..........................................................................................3
Page ii
[Logo] [ Project ] – Especificación del Diseño de Software
1 Introducción
Este espacio puede usarse para ofrecer una introducción al diseño y para ligar a otros
materiales del proyecto.
1.1 Antecedentes
Descripción breve de alto nivel de la estructura, funcionalidad e interacciones del sistema
con sistemas externos, etc. Si se escribió correctamente esta parte en el documento de plan
de proyecto y el documento de requerimientos, se puede copiar aquí.
Page 1
[Logo] [ Project ] – Especificación del Diseño de Software
2 Consideraciones de Diseño
Esta sección describe cuestiones que necesitan ser resueltas antes o durante la terminación
del diseño así como cuestiones que pueden influir el proceso de diseño.
2.1 Suposiciones
Describe cualquier suposición, antecedente o dependencia del software, su uso, el ambiente
operativo o cualquier otra cuestión significativa. Estas son las cosas que supones verdaderas
y que afectan directamente el diseño
2.2 Limitantes
Describe cualquier limitante sobre el sistema que tenga impacto significativo sobre el diseño
del sistema (limitantes de tecnología, requerimientos de ejecución, características de usuario
final, validación de requerimientos, limitantes del proyecto, etc.). Anota las cosas que el
cliente te dijo que afectan directamente el diseño (la base de datos debe estar hecha en un
DBMS open source…)
2.5 Riesgos
(Opcional) - Describe cualquier riesgo notable del sistema y no las estrategias tomadas para
mitigar riesgos o preparar cambios. Hazlo específico para el diseño, no para la
administración del proyecto. Por ejemplo, si hay un algoritmo especialmente difícil que se
tiene que implementar.
Page 2
[Logo] [ Project ] – Especificación del Diseño de Software
3 Arquitectura
La arquitectura muestra la vista de diseño de nivel superior de un sistema, y es la base para
el trabajo más detallado. Aquí se muestran los componentes de más alto nivel del sistema
que estás construyendo y sus relaciones
3.1 Antecedentes
Esta sección revisa de manera general la descomposición funcional y estructural del sistema.
Enfócate en cómo y por qué el sistema se ha descompuesto de esta manera más que en los
detalles de componentes particulares. Incluye información de las responsabilidades y roles
principales del sistema.
3.2 Justificación
Esta sección discute por qué estás usando esa arquitectura en particular.
Page 3
[Logo] [ Project ] – Especificación del Diseño de Software
Para ADOO, no es necesario documentar todas estas vistas. Para muchas aplicaciones
pequeñas, la vista conceptual es suficiente. Documentar estas vistas te ayudará a diseñar e
implementar el sistema. Si tienes una sola vista, y esa vista se discute adecuadamente en la
sección 3, entonces esta sección puede ser borrada completamente.
Page 4
[Logo] [ Project ] – Especificación del Diseño de Software
Page 5
[Logo] [ Project ] – Especificación del Diseño de Software
Page 6
[Logo] [ Project ] – Especificación del Diseño de Software
7 Modelo de Implementación
Esta sección ofrece descripciones de los artefactos de implementación como el código fuente,
las definiciones de bases de datos, las páginas JSP/XML/HTML, etc.
La implementación en un lenguaje orientado a objetos requiere la escritura de código fuente
para las definiciones de clases e interfaces y las definiciones de los métodos. Estas
definiciones serán descritas en las siguientes secciones, módulo a módulo.
Page 7