Zusammenfassung der Ressource
Diseño de Sistemas
Anmerkungen:
- Diseño de Sistemas
- Diseño en el contexto de la
ingeniería de software
- ¿Qué es? El diseño crea una representación del
modelo del software, proporciona detalles sobre
arquitectura del software, estructura de datos,
interfaces y componentes que se necesitan para
implementar el sistema.
- ¿Quién lo hace? Ingenieros de software. ¿Por qué es
importante? Permite modelar el sistema o producto que se va
a construir. Este modelo se evalúa respecto a la calidad y su
mejora antes de generar código; después se efectúan pruebas
y se involucra a muchos usuarios finales
- “¿Qué es el diseño? Es donde se está con un pie en dos mundos –el de la
tecnología y el de las personas y los propósitos humanos– que tratan de
unificarse……”
- Diseño en el contexto de la ingeniería de software
- Los edificios bien diseñados eran aquellos que tenían resistencia,
funcionalidad y belleza. Lo mismo se aplica al buen software. Resistencia: un
programa no debe tener ningún error que impida su funcionamiento.
Funcionalidad: un programa debe ser apropiado para los fines que persigue.
Belleza: la experiencia de usar un programa debe ser placentera.
- Diseño en el contexto de la ingeniería de software.
- El diseño de software comienza una vez que se han analizado y
modelado los requerimientos. Cada uno de los elementos del modelo de
requerimientos proporciona información necesaria para crear los cuatro
modelos del diseño necesarios para la especificación completa del
diseño.
- PROCESO DEL DISEÑO. Lineamientos y atributos de la calidad del
software Debe implementar todos los requerimientos explícitos
contenidos en el modelo de requerimientos y dar cabida a todos los
requerimientos implícitos que desean los participantes
- Lineamientos y atributos de la calidad del software
- Lineamientos de la calidad Debe tener estilos arquitectónicos reconocibles. Debe ser
modular. Debe contener distintas representaciones de datos, arquitectura, interfaces y
componentes.
- La evolución del diseño de software
- Los primeros trabajos de diseño se concentraban en criterios para el desarrollo de
programas modulares. Los aspectos de procedimiento del diseño evolucionaron hacia
una filosofía llamada programación estructurada. Los enfoques mas nuevos
propusieron un enfoque orientado a objetos para diseñar derivaciones.
- Conceptos de diseño
- Conceptos de diseño: Abstracción,
Arquitectura, Patrones, División de
problemas Modularidad Ocultamiento
de información Independencia,
funcional Refinamiento Aspectos
Rediseño Conceptos de diseño orientado
a objeto Clases de diseño .
- Abstracción
- FDFDF
- ARQUITECTURA.
Anmerkungen:
-
•En su forma
mas sencilla, la arquitectura es la estructura de organización de los
componentes de un programa (módulos), la forma en la que éstos interactúan y la
estructura de datos que utilizan.
•Propiedades
del diseño de la arquitectura:
oPropiedades
estructurales (componentes)
oPropiedades extrafuncionales (desempeño,
capacidad, etc.)
oFamilias de
sistemas relacionados (reutilizar bloques de construcción arquitectónica)
- PATRONES
Anmerkungen:
-
•“Es una mezcla
con nombre propio de puntos e vista que contienen la esencia de una solución
demostrada para problema recurrente dentro de cierto contexto de necesidades en
competencia”.
- DIVISIÓN DE PROBLEMAS
Anmerkungen:
-
•Un problema es
una característica o comportamiento que se especifica en el modelo de los
requerimientos para el software. Al
separar un problema en sus piezas mas pequeñas y por ello mas manejables, se
requiere menos esfuerzo y tiempo para resolverlo.
•Es mas fácil
resolver un problema complejo si se divide en elementos manejables.
- MODULARIDAD
Anmerkungen:
-
•Debe hacerse
un diseño con módulos, de manera que el
desarrollo pueda planearse con mas facilidad,
•Que sea
posible definir y desarrollar los incrementos del software.
•Que los
cambios se realicen con mas facilidad.
•Que las
pruebas y la depuración se efectúen con mayor eficiencia
•Que el
mantenimiento a largo plazo se lleve a cabo sin efectos colaterales de
importancia.
- OCULTAMIENTO DE INFORMACION
Anmerkungen:
-
•El uso de
ocultamiento de información como criterio de diseño para los sistemas modulares
proporciona los máximos beneficios cuando se requiere hacer modificaciones
durante los pruebas, y mas adelante, al dar el mantenimiento al software.
- INDEPENDECIA FUNCIONAL
Anmerkungen:
-
•La independencia funcional se logra desarrollando
módulos con funciones «miopes» que tengan «aversión» a la interacción excesiva con otros
módulos. Dicho de otro modo, debe diseñarse
software de manera que cada módulo
resuelva un conjunto específico de requerimientos y tenga una interfaz sencilla
cuando se vea desde otras partes de la estructura del programa.
- Refinamiento
- Es decir, el enunciado describe la función o información de manera conceptual, pero no dice nada
de los trabajos internos de la función o de la estructura interna de la información. La abstracción y el
refinamiento con conceptos complementarios. La primera permite especificar internamente el
procedimiento y los datos, el refinamiento ayuda a revelar estos detalles a medida que avanza el
diseño.
- ASPECTO
- Idealmente, un modelo de requerimientos se organiza de manera que permita aislar cada
preocupación (requerimiento) a fin de considerar en forma independiente.
- Conceptos de diseño orientado a objeto
Anmerkungen:
-
•El paradigma de la programación orientad a objetos
(OO) se utiliza mucho en la ingeniería de software moderna.
•Algunos conceptos de diseño OO, tales como clases y
objetos, herencia, mensaje y
polimorfismo, entre otros.
- CLASES DE DISEÑO
Anmerkungen:
-
•Clases de usuario de la interfaz: definen todas las
abstracciones necesarios para le interacción humano-computadora.
•Clases del dominio de negocios: refinamiento de las
clases de análisis definidas antes.
•Clases del proceso: abstracciones de negocios de bajo
nivel.
- El modelo del diseño
- Elementos del diseño de datos
Anmerkungen:
-
•Este modelo de los datos se refina después en forma
progresiva hacia representaciones mas específicas de la implementación que
puedan ser procesadas por el sistema basado en computadora.
- Elementos del diseño arquitectónico
Anmerkungen:
-
•El modelo arquitectónico proviene de tres funciones
1)información sobre el dominio de la aplicación del software que se va a
elaborar, 2) los elementos específicos del modelo de requerimientos y 3) la
disponibilidad de estilos arquitectónicos y sus patrones.
•Por lo general, el elemento de diseño arquitectónico
se ilustra como un conjunto de sistemas interconectados.
- Elementos de diseño de la interfaz
Anmerkungen:
-
•Hay tres elementos importantes 1) la interfaz de
usuario (IU), 2) las interfaces externas que tienen que ver con otros sistemas,
dispositivos, redes y otros productos o consumidores de información y 3)
interfaces internas que involucran a los distintos componentes del diseño.
- Elementos del diseño del despliegue
Anmerkungen:
-
•Durante el diseño se desarrolla un diagrama de
despliegue que después se refina, se indican los subsistemas (funcionalidad)
que están alojados en cada elemento.
- BIBLIOGRAFIA
Anmerkungen:
-
•Pressman, R. (2010). Ingeniería de
Software. Un enfoque práctico. México: McGRAW HILL.