Академический Документы
Профессиональный Документы
Культура Документы
Unidad II
Diseo de Sistemas
noviembre de 2017
Diseo Conceptual y Tcnico
noviembre de 2017
Qu es el diseo?
noviembre de 2017
Diseo Conceptual y Tcnico
Diseo Conceptual o del Sistema
noviembre de 2017
Diseo Conceptual y Tcnico
Un buen diseo conceptual debera tener las siguientes
caractersticas:
noviembre de 2017
Diseo Conceptual y Tcnico
Diseo Tcnico
noviembre de 2017
Diseo Conceptual y Tcnico
El diseo tcnico incluye los siguientes tem:
noviembre de 2017
Diseo Conceptual y Tcnico
El diseo se describe en un nico documento, pero
muchas veces se vuelca en dos.
QU CMO
DISEO DISEO
Diseadores
CONCEPTUAL TCNICO
del Sistema
funcin forma
Clientes Constructores
del Sistema
noviembre de 2017
Diseo Conceptual y Tcnico
Ejemplo de Diseo Conceptual y Tcnico.
El usuario podr
enviar mensajes a
cualquier usuario en
cualquier otra Topologa de Red
computadora en red Protocolo
Velocidad (bps)
...
DISEO DISEO
CONCEPTUAL TCNICO
noviembre de 2017
Descomposicin y Modularidad
Todo mtodo de diseo abarca un tipo de descomposicin
a partir de una descripcin de alto nivel de los elementos
claves del sistema, y creando visiones a niveles inferiores
para ver como las caractersticas y funciones del sistema
se acomodaran en conjunto.
Nivel Superior
Primer Nivel de
descomposicin
Segundo Nivel de
descomposicin
noviembre de 2017
Descomposicin y Modularidad
La descomposicin separa el diseo en partes componibles
denominadas mdulos o componentes.
noviembre de 2017
Niveles de Diseo
Shaw y Garlar (2006) sugieren tres niveles de diseo:
Arquitectura
noviembre de 2017
Niveles de Diseo
Diseo de Cdigo
Diseo ejecutables
noviembre de 2017
Etapas del proceso de diseo
arquitectnico
Las siguientes etapas son comunes para todos los
procesos de diseo arquitectnicos:
noviembre de 2017
Etapas del proceso de diseo arquitectnico
Estructura del sistema
noviembre de 2017
Etapas del proceso de diseo arquitectnico
Estructura del sistema
Direccin de la Subsistemas
relacin
noviembre de 2017
Etapas del proceso de diseo arquitectnico
Estructura del sistema Modelo de Depsito
Ejemplo Modelo Depsito: La arquitectura de un conjunto
integrado de herramientas case.
Editor de Generador de
Diseo Cdigo
Analizador de Generador de
Diseo informes
noviembre de 2017
Etapas del proceso de diseo arquitectnico
Estructura del sistema Modelo de Depsito
Ventajas
Desventajas
Componentes:
Llaman a los
servicios ofrecidos
RED
Permite
Ofrecen a los
Servicios
clientes acceder a
los servicios Servidor 1 Servidor 2 Servidor 3
noviembre de 2017
Etapas del proceso de diseo arquitectnico
Estructura del sistema Modelo Cliente - Servidor
Los clientes necesitan conocer los nombres de los
servidores y los servicios que suministran. En cambio, los
servidores no requieren conocer la identidad de los
clientes o cuantos clientes existen.
noviembre de 2017
Etapas del proceso de diseo arquitectnico
Estructura del sistema Modelo de Capas
Modela la interaccin entre los subsistemas.
Subsistema 1
Subsistema 2
Subsistema 3
Subsistema 4
Subsistema 5
noviembre de 2017
Etapas del proceso de diseo arquitectnico
Estructura del sistema Modelo de Capas
Este modelo es una arquitectura cambiable y portable.
Cuando se cambia o elimina una capa, solo se vern
afectadas sus capas adyacentes.
noviembre de 2017
Etapas del proceso de diseo arquitectnico
Modelos de Control
Los modelos para estructurar un sistema se refieren a la
manera en que un sistema se descompone en
subsistemas. Esto no incluye informacin de control.
Proceso 1 Proceso 2
Controlador del
Sistema
Proceso 3 Proceso 4
noviembre de 2017
Etapas del proceso de diseo arquitectnico
Modelos de Control Dirigidos por eventos
noviembre de 2017
Etapas del proceso de diseo arquitectnico
Modelos de Control Dirigidos por eventos
noviembre de 2017
Etapas del proceso de diseo arquitectnico
Modelos de Control Dirigidos por eventos
Vector de
interrupciones
noviembre de 2017
Etapas del proceso de diseo arquitectnico
Descomposicin modular
Despus de disear una arquitectura estructural, la
siguiente etapa del proceso de diseo arquitectnico es
descomponer los subsistemas en mdulos.
Se consideran dos modelos que son de utilidad cuando se
descompone un subsistema en mdulos:
Modelo orientado a objetos: el sistema se descompone
en un conjunto de objetos que se comunican entre ellos.
Modelo de flujo de datos: el sistema se descompone en
mdulos funcionales que afectan entradas de datos y las
transforman, de alguna manera, en datos de salida.
En el modelo objetual, los mdulos son objetos con estado
privado y con operaciones definidas sobre ese estado.
En el modelo de flujo de datos, los mdulos son
transformaciones funcionales.
noviembre de 2017
Etapas del proceso de diseo arquitectnico
Descomposicin modular Modelo de Objetos
El modelo orientado a objetos de una arquitectura de
sistema, estructura el sistema en un conjunto de objetos
dbilmente acoplados con interfaces bien definidas.
Los objetos llaman a los servicios ofrecidos por otros
objetos.
Una descomposicin orientada a objetos, comprende
clases de objetos, sus atributos y operaciones.
Cliente Factura Recibo
Cliente# Factura#
Nombre Factura# Fecha
Direccin Fecha Monto
Periodo de crdito Monto Cliente#
cliente
Pago
Emitir()
Factura# enviarRecordatorio()
Fecha aceptarPago()
Monto enviarRecibo()
Cliente#
noviembre de 2017
Etapas del proceso de diseo arquitectnico
Descomposicin modular Modelo de Objetos
Las ventajas de este modelo son bien conocidas, puesto
que los objetos estn dbilmente acoplados, la
implementacin de objetos se puede modificar sin afectar
a otros objetos.
Adems, los objeto se pueden reutilizar.
La desventaja, es que los objetos para utilizar los servicios
deben hacer referencia explicita al nombre y la interfaz de
otros objetos.
noviembre de 2017
Etapas del proceso de diseo arquitectnico
Descomposicin modular Modelo de Flujo de datos.
En un modelo de flujo de datos, las transformaciones
funcionales procesan sus entradas y producen sus salidas .
Los datos fluyen de un lugar a otro y se transforman
durante este movimiento.
Emitir Recibos
Recibos
Leer facturas Identificar
emitidas Pagos
Hallar pagos Emitir Recordatorio Recordatorios
retrasados De pago
Facturas Pagos
noviembre de 2017
Etapas del proceso de diseo arquitectnico
Descomposicin modular Modelo de Flujo de datos.
Ventajas de esta arquitectura:
Permite la reutilizacin de transformaciones.
Es intuitivo.
Permite que el sistema evolucione al agregar nuevas
transformaciones.
Sencilla de implementar, ya sea como un sistema
concurrente o secuencial.
Desventajas
Cada transformacin debe estar acorde con las
transformaciones que se comunica, en el formato de
los datos a ser procesado.
noviembre de 2017
Problemas en la creacin del diseo
Modularidad y nivel de abstraccin
noviembre de 2017
Problemas en la creacin del diseo
Modularidad y nivel de abstraccin
noviembre de 2017
Caractersticas de un buen diseo
Los diseos de calidad superior deben tener caractersticas
que dan como resultado productos de calidad: facilidad de
comprender, de implementar, de probar, de modificar y la
correcta traduccin de la especificacin de requerimientos.
noviembre de 2017
Caractersticas de un buen diseo
Independencia de los componentes
noviembre de 2017
Caractersticas de un buen diseo
Independencia de los componentes - Acoplamiento
Se dice que dos componentes estn altamente acoplado
cuando existe mucha dependencia entre ellos.
Los componentes poco acoplado tienen algunas
dependencias, pero las interconexiones entre ellos son
dbiles.
No acoplado
Dbilmente Fuertemente
acoplado (pocas acoplado
dependencias) (muchas
dependencias)
noviembre de 2017
Caractersticas de un buen diseo
Independencia de los componentes - Acoplamiento
Se puede medir el acoplamiento en funcin de un rango de
dependencia, que va de la dependencia completa a la
completa independencia.
La meta no necesariamente es la completa independencia,
sino mantener el menor grado de acoplamiento posible.
El bajo acoplamiento contribuye a minimizar el nmero de
componentes que necesitan revisin.
Tipos de acoplamiento: ALTO
Acoplamiento de Contenido
Acoplamiento Comn
noviembre de 2017
Caractersticas de un buen diseo
Independencia de los componentes - Acoplamiento
Acoplamiento Comn
Los datos son accesibles desde un almacenamiento comn
de datos.
La dependencia todava existe, dado que hacer un cambio a
los datos comunes significa rastrear en todos los
componentes que tienen acceso a estos datos, a fin de
evaluar el efecto del cambio.
Global:
A1
A2
A3
rea comn de datos y
Variables: nombres de variables.
V1
V2
Acoplamiento de Control
Se produce cuando un componente pasa parmetros para
controlar la actividad del otro.
Para el componente controlado es imposible funcionar sin la
direccin del que lo controla.
noviembre de 2017
Caractersticas de un buen diseo
Independencia de los componentes - Acoplamiento
noviembre de 2017
Caractersticas de un buen diseo
Independencia de los componentes - Cohesin
Un componente es cohesivo si todos sus elementos estn
orientados a la realizacin de una nica tarea y son
esenciales para llevarla a cabo.
Tipos de cohesin:
ALTA
Funcional
Secuencial
Procedimental
Comunicacional
Temporal
Lgica
Coincidental
BAJO
noviembre de 2017
Caractersticas de un buen diseo
Independencia de los componentes - Cohesin
Cohesin Coincidental
Ocurre cuando las partes de un componente no tienen
relacin alguna entre si.(Cohesin baja)
Funcin A
noviembre de 2017
Caractersticas de un buen diseo
Independencia de los componentes - Cohesin
Cohesin Lgica
Algunas funciones o elementos de datos relacionados
lgicamente estn puestos en el mismo componente.
Ej: Componente que lee todo tipo de entradas (cinta, disco,
puertos, etc.) existe una relacin lgica, pero no todas las
formas son iguales
Funcin A
Lgica
Funcin A
Funciones
Similares
Funcin A
noviembre de 2017
Caractersticas de un buen diseo
Independencia de los componentes - Cohesin
Cohesin Temporal
A veces un componente se utiliza para inicializar un
sistema o un conjunto de variables. Este componente
realiza varias funciones en secuencia, pero las funciones en
si solo se realizan en el momento que ocurren.
Tiempo T0
Temporal
Tiempo T0 + X
Relacionadas por
Tiempo T0 + 2X
el tiempo.
noviembre de 2017
Caractersticas de un buen diseo
Independencia de los componentes - Cohesin
Cohesin Procedimental
Es cuando las funciones se agrupan en un mismo
componente para asegurar un orden previsto.
Por Ejemplo: los datos deben ser ingresados antes de
chequearlos o de manipularlos, tres funciones en una
secuencia especfica.
Funcin A
Procedimental
Funcin B
Relacionada por
el orden de las
Funcin C
funciones.
noviembre de 2017
Caractersticas de un buen diseo
Independencia de los componentes - Cohesin
Cohesin Comunicacional
Es cuando en un componente se asocian funciones que
acceden a un mismo conjunto de datos.
DATOS
Funcin A
Comunicacional
Funcin B
Acceso a algunos
datos
Funcin C
noviembre de 2017
Caractersticas de un buen diseo
Independencia de los componentes - Cohesin
Cohesin Secuencial
Se produce cuando la salida por una parte del componente
acta como entrada para la parte que le sigue.
Funcin A
Secuencial
Funcin B La salida de una
parte es entrada
Funcin C para la siguiente
noviembre de 2017
Caractersticas de un buen diseo
Independencia de los componentes - Cohesin
Cohesin funcional (deseable)
Es la ideal, donde cada elemento de proceso es esencial
para la realizacin de una nica funcin y todos los
elementos esenciales estn contenidos en un nico
componente.
Funcin A parte 1
Funcional
Funcin B parte 2 Secuencial con
funciones
Funcin C parte 3 completamente
relacionadas
noviembre de 2017
Caractersticas de un buen diseo
Identificacin y tratamiento de excepciones
noviembre de 2017
Caractersticas de un buen diseo
Identificacin y tratamiento de excepciones
Excepciones ms comunes:
Fracaso al proporcionar un servicio.
Proporcionar un servicio o dato errneo.
Corrupcin de datos.
Las excepciones se pueden manejar segn uno de los
siguientes criterios:
1. Reintentar: se restaura el sistema a su estado previo y
se intenta realizar el servicio utilizando una estrategia
diferente.
2. Corregir: se restaura el sistema a su estado previo y se
intenta realizar el servicio usando la misma estrategia.
3. Informar: se restaura el sistema a su estado previo, se
informa el problema a un componente de tratamiento de
error y no se proporciona el servicio.
noviembre de 2017
Caractersticas de un buen diseo
Prevencin de defectos y tolerancia de defectos
noviembre de 2017
Caractersticas de un buen diseo
Prevencin de defectos y tolerancia de defectos
Deteccin activa de defectos
Es la forma de controlar peridicamente la presencia de
sntomas de defectos, se intenta anticipar la produccin de
fallas.
Ejemplo:
Sospecha Mutua: cada componente del sistema supone que
los otros componentes contienen defectos. Cada componente
controla la presicin y consistencia de sus entradas. Este manejo
inmediato del defecto limita el dao que produce, evita que se
transforme en una falla.
Redundancia: segn los resultados obtenidos por dos
procesos se comparan si son idnticos. Ej.: En un programa de
contabilidad primero se suman las filas, y luego se suman las
columnas para ver si son iguales.
noviembre de 2017
Caractersticas de un buen diseo
Prevencin de defectos y tolerancia de defectos
Correccin de defectos
Una vez descubierto el defecto se debe corregir.
Por lo general, la correccin del defecto subsana el dao
producido, as como modifica el producto para eliminar tal
defecto.
Los diseadores deben incluir una estrategia para los
defectos a medida que son encontrados.
Se puede optar por detener el sistema cuando lo afecta el
defecto de algn modo o simplemente se registra la
existencia de la falla, apuntar el estado del sistema en el
momento de producirse la falla y arreglar el dao despus.
La criticidad del sistema determinara la estrategia a usar.
noviembre de 2017
Caractersticas de un buen diseo
Prevencin de defectos y tolerancia de defectos
Tolerancia a defectos
noviembre de 2017
Revisiones del diseo
Revisin del diseo preliminar
Los clientes y usuarios se renen para validar el diseo
conceptual.
Se asegura que todos los aspecto relativos a los
requerimientos han sido apropiadamente contemplados en
el diseo.
Se invita a participar a ciertas personas claves:
Cliente (s), quien ayuda a definir los req. del sistema.
Analista (s), quien colabora para definir los req. del sistema
Usuario (s), potenciales del sistema.
Diseador (es) del sistema.
Un moderador (solo coordina), un secretario (no se
involucra).
Otros desarrolladores (entregan perspectiva externa)
noviembre de 2017
Revisiones del diseo
Revisin del diseo preliminar
Se recomienda que el nmero de integrantes sea pequeo
de modo que facilite las discusiones.
Durante la revisin se presenta a la audiencia el diseo
conceptual. Al hacerlo, se demuestra que el sistema tiene
la estructura requerida, las funciones y las caractersticas
especificadas por los documentos de anlisis.
noviembre de 2017
Revisiones del diseo
Revisin crtica del diseo
noviembre de 2017
Revisiones del diseo
Revisin crtica del diseo
Este grupo es ms tcnico que el anterior. Ya que la
revisin trata de aspectos tcnicos.
El moderador conduce la reunin para que se traten dos
puntos: si el diseo implementa todos los requerimientos y
si es un diseo de calidad.
Usando diagramas, datos o ambas cosas, se explican las
estrategias de diseo alternativa y como y porque se han
tomado las principales decisiones de diseo.
Si se identifican problemas mayores el diseo se rehace.
noviembre de 2017
Revisiones del diseo
Revisin del diseo de programas
Cuando el diseo tcnico resulta satisfactorio, los diseadores de
programas estarn en posicin de interpretarlo como el conjunto
de descripciones de diseo para los componentes reales, que
deben ser codificados y probados.
Despus de completar los diseos de programas, pero antes de
comenzar la codificacin, presentan sus planes.
Integrantes:
Analista (s), que produjeran los req. del sistema.
Diseador (es) del sistema.
Diseador (es) del programa.
Un moderador (solo coordina), un secretario (no se involucra).
Diseador (es) de programas para este proyecto.
Probador del sistema.
Analista que escribir la documentacin del sistema.
Otros desarrolladores (entregan perspectiva externa).
noviembre de 2017
Revisiones del diseo
Revisin del diseo de programas
Este proceso se centra en la deteccin de defectos ms que
en su correccin. Adems se esta evaluando el diseo no a
los diseadores.
El proceso beneficia a todos al encontrar defectos y
problemas cuando an son fciles y poco costosos de
corregir.
noviembre de 2017
Documentando el diseo
Una parte de la documentacin esta dirigida a clientes y
usuarios, en lenguaje natural para describir que es lo que
el sistema har.
La segunda parte usa la terminologa tcnica para escribir
la estructura del sistema, datos y funciones.
Pauta de los informes:
1. Justificacin racional del diseo: donde se delinean
las cuestiones criticas y compromisos que fueron
considerados en la generacin del diseo.
2. Descripcin de los componentes del sistema: una
de las secciones debera indicar como interactan los
usuarios con el sistema incluyendo:
noviembre de 2017
Documentando el diseo
Mens y otros formatos de presentacin en pantalla.
Interfaces hombre maquina.
Formatos de los informes.
Entrada: sobre los datos.
Salida: sobre los datos.
Caractersticas funcionales generales.
Exigencias de perfomance.
Procedimientos de archivos.
Enfoque del tratamiento de defectos.
noviembre de 2017
Bibliografa
Solo referencial:
noviembre de 2017