Manual Diseño de Software U1
Manual Diseño de Software U1
2 Manual
Introducción
El diseño de software es una disciplina de la ingeniería de software, que se
enfoca desde la teoría y la práctica. Todo software debe ser analizado y
diseñado. Las metodologías de desarrollo de software tradicionales incorporan
el diseño como una etapa formal en su proceso de desarrollo. En las
metodologías ágiles, el diseño se desarrolla dentro de las iteraciones o sprints,
donde el desarrollador multidisciplinario ejecuta el análisis, diseño o
programación de acorde a sus necesidades o criterios.
El autor
Unidades didácticas
UNIDAD 1 UNIDAD 2 UNIDAD 3 UNIDAD 4
Diseño de la Diseño de la Diseño de Datos Diseño y
arquitectura de interfaz de usuario Evaluación de
software Componentes
4 Manual
UNIDAD 1: Diseño de la arquitectura de
software
Diagrama de organización
Diseño de la
arquitectura de
software
El diseño es lo que casi todo ingeniero quiere hacer. Es el lugar en el que las
reglas de la creatividad — los requerimientos de los participantes, las
necesidades del negocio y las consideraciones técnicas — se unen para
formular un producto o sistema. El diseño crea una representación o modelo del
software, pero, a diferencia del modelo de los requerimientos (que se centra en
describir los datos que se necesitan, la función y el comportamiento), el modelo
de diserto proporciona detalles sobre arquitectura del software, estructuras de
datos, interfaces y componentes que se necesitan para implementar el sistema.
(Pressman, 2010, p.183)
Más exacto, el diseño del software (el resultado) debe describir: la arquitectura
del software, la descomposición del software, la organización de los
componentes, y las interfaces entre los mismos componentes. Debe también
describir los componentes en un nivel de detalle que permita su construcción. El
diseño del software desempeña un papel importante en el desarrollo de
software: permite que la Ingeniería del software produzca los diversos modelos
para la solución que se pondrá en desarrollo. Podemos analizar y evaluar estos
modelos para determinar si o no permitirán que se satisfaga los requisitos.
(Issuu.com, 2015)
6 Manual
mental de la realidad. (Pressman, 2010)
8 Manual
Figura 5. Dependencia entre nodos. Tomado de Diagramas de UML:
Ilustración de Despliegue, por Diagramas de UML, 2017.
1. Una vista lógica, que indique las abstracciones clave en el sistema como
objetos o clases de objeto. En este tipo de vista se tienen que relacionar
los requerimientos del sistema con entidades.
10 Manual
4. Una vista física, que exponga el hardware del sistema y cómo los
componentes de software se distribuyen a través de los procesadores en
el sistema. Esta vista es útil para los ingenieros de sistemas que planean
una implementación de sistema.
12 Manual
5. Arquitectura Llamar-Regresar. Este estilo arquitectónico permite obtener
una estructura de programa que es relativamente fácil de modificar y
escalar.
Paso 1: Responder las preguntas, que definan el entorno del software a ser
diseñado (De la Torre, Zorrilla, Ramos y Calvarro, 2010).
Paso 5: Crear Arquitecturas Candidatas. Una vez realizados los pasos anteriores,
se tendrá una arquitectura candidata que podremos evaluar. Cualquier
arquitectura candidata debería responder a las siguientes preguntas (De la
Torre, Zorrilla, Ramos y Calvarro, 2010):
14 Manual
• ¿Qué funcionalidad implementa?
• ¿Qué riesgos mitiga?
• ¿Cumple las restricciones impuestas por el cliente?
• ¿Qué cuestiones deja en el aire?
C
Cliente. Software que consume servicios en una arquitectura Cliente-Servidor.
D
Despliegue. Distribución del hardware y red de interconexión que dará soporte
al diseño de un software.
M
Módulo. Parte o porción lógica de un software. Puede ser una parte del código
fuente, una pantalla GUI, una página web, una tabla de base de datos, un
archivo de texto, una librería, entre otros.
P
Patrón. Estructura que conforma parte de un software, que ha sido diseñada y
probada por autores especialistas o expertos.
S
Servidor. Software que otorga servicios a los softwares clientes, como por
ejemplo servicio de páginas web, servicios de base de datos, etc.
16 Manual
Bibliografía de la Unidad 1
De la Torre, C., Zorrilla, U., Ramos, M. A. y Calvarro, J. (2010). Guía de Arquitectura
N-Capas orientada al Dominio con .NET 4.0. España: Microsoft Ibérica Krasis
PRESS
Diagramas de UML (2017). Ilustración de despliegue. [Figura]. Recuperado de
https://diagramasuml.com/despliegue/
Diagramas de UML (2017). Ilustración de paquetes [Figura]. Recuperado de
https://diagramasuml.com/paquetes/
Diagramas de UML. (2017). Diagramas de UML [Página Web]. Recuperado de
https://diagramasuml.com/#estructurales
Issuu.com (2015). Ingeniería de software es la aplicación de un enfoque
sistemático [Página Web]. Recuperado de
https://issuu.com/kelvin91/docs
Pressman, R. (2010). Ingeniería del software. Un enfoque práctico. 7 ª ed. México:
McGraw-Hill.
Sánchez, S., Sicilia, M., Rodríguez, D. (2012). Ingeniería del Software, un enfoque
desde la guía SWEBOK. México: Alfaomega
Sommerville, L. (2011). Software Engineering. 9ª ed. New York, Estados Unidos:
Pearson Education