You are on page 1of 5

Conceptos y Principios del Diseo

1) Diseo: proceso de aplicar distintas tcnicas y principios con el propsito de definir un


dispositivo/proceso.
2) Objetivo del diseador: producir un modelo de una entidad que se va a construir
3) El diseo de sw cambia continuamente a medida que evolucionan nuevos mtodos,
mejores anlisis

DISEO E INGENIERIA DEL SW
4) El diseo del sw es la primera de las tres actividades tcnicas DISEO, CODIFICACION Y
PRUEBA necesarias para construir y verificar el sw. El diseo es el lugar donde se fomenta
la calidad en el desarrollo de sw
5) Que produce la fase de diseo?
Diseo de datos
Diseo arquitectnico
Diseo de interfaz
Diseo procedimental
6) Diseo de datos: La ER y el diccionario de datos son la base para el diseo de datos
7) Diseo arquitectnico: define la relacin entre los principales elementos estructurales del
programa. Se obtiene del DFD
8) Diseo de interfaz: describe como se comunica el sw consigo mismo, con los sistemas que
operan con l y con los operadores que lo emplean. Esta fase obtiene informacin a travs
de DFD Y control.
9) Diseo procedimental: transforma elementos estructurales de la arquitectura del
programa en una descripcin procedimental de los componentes de sw. Obtiene
informacin de EP, EC, Y DTE

EL PROCESO DE DISEO
10) Se evalua la calidad del diseo con una serie de revisiones tcnicas formales.
11) Tres caractersticas que sirven de directrices para la evaluacin de un buen diseo:
*debe implementar todos los requisitos contenidos en el modelo de anlisis y todos los
requisitos que desea el cliente
*debe ser una gua que puedan leer y entender los que construyan el cdigo y los que
prueban y mantienen el sw
*debera proporcionar una completa idea de lo que es el sw

CRITERIOS TECNICOS PARA UN BUEN DISEO
12) *Presentar una organizacin jerarquica que haga un buen uso del componentes del sw
*ser modular
*realizar modulos que presentes caractersticas funcionales


CARACTERISTICAS DE LOS METODOS DEL DISEO
13) *Un mecanismo para la transformacin de un modelo de anlisis en una representacin
del diseo
*notacin para representar componentes funcionales y sus interfaces
*heursticas para el repartimiento y la particin
*consejos para valorar la calidad

PRINCIPIOS DEL DISEO
14) *el diseo no debe inventar nada que ya este inventando: reutilizar
*el diseo debera presentar uniformidad e integracion
*el diseo debera estructurarse para admitir cambios
*se debera valorar la calidad del diseo mientras se crea, no despus de terminarlo
*se debera revisar el diseo para minimizar los errores conceptuales
15) Cuando se aplican estos principios se crea un diseo que muestra factores de calidad
externos e internos
*Externos: propiedades del sw que puedan observar los usuarios (velocidad-fiabilidad-
utilidad)
*internos: son importantes para los ing del sw. Perspectiva tcnica

CONCEPTOS DE DISEO
16) Cada fase del proceso de ing del sw es un refinamiento en el nivel de abstraccin de la
solucin sw
17) Refinamiento: ayuda al diseador a revelar detalles de bajo nivel a medida que progresa el
diseo
18) Abstraccion: permite al diseador especificar procedimientos y datos y suprimir detalles
de bajo nivel
19) Niveles de abstraccin
*procedimental: secuencia de instrucciones que tiene una funcin especifica y limitada
*datos: coleccin determinada de datos que describen un objeto de datos
*control: mecanismo de control del programa sin especificar los detalles internos.
20) Modularidad: divide al sw en componentes denominados mdulos. Un sistema puede
desarrollarse aunque su implementacin sea monolitica
21) Criterios para evaluar un mtodo de diseo para definir un sistema modular eficaz:
Capacidad de descomposicin modular
Capacidad de empleo de componentes modulares
Capacidad de comprensin modular
Proteccin modular
22) Arquitectura del sw: el diseo de sw debe crear una versin arquitectnica de un
sistema



22) Propiedades de un diseo arquitectnico:
Estructurales: define los componentes de un sistema, la manera que se empaquetan
estos componentes y como se relacionan con los otros
Extra-funcionales: ocuparse en como conseguir rendimiento, capacidad, fiablidad,
seguridad, etc
Familias de sistemas relacionados: debera tener la capacidad de utilizar bloques de
construccion arquitectnica reutilizados
23) El modelo arquitectnico puede representarse usando uno o mas modelos diferentes:
*estructurales: coleccin organizada de componentes de programa
*dinmicos: aspectos del comportamiento de la arquitectura del programa
*proceso: diseo del negocio o del proceso tcnico que debe tener el sistema
*funcionales: pueden usarse para representar la jerarqua funcional de un sistema
24) Jerarqua de control (estructura de programa): representa la organizacin de modulos e
implica una jerarquia de control *diagrama de arbol*
25) Particin estructural: la particin del programa deber ser horizontal y vertical
26) Particin horizontal: define ramas separadas de la jerarqua modular para cada funcin
principal del programa. Los modulos de control se usan para coordinar la comunicacin
entre ellos y la ejecucin de las funciones del programa.
El enfoque define 3 particiones:
*entrada *transformacin de datos *salida
Beneficios Desventajas
Proporciona sw mas fcil de probar -causa a menudo el paso de mas datos
Lleva a un sw mas fcil de mantener a travs de interfaces de modulos y
Propaga menos efectos secundarios puede complicar el control globla del
Proporciona sw mas fcil de ampliar programa

27) Particion vertical: (descomposion en factores) :
Los mdulos del nivel superior deberan realizar funciones de control y poco trabajo de
procesamiento. Los mdulos que residen en la parte baja deberan ser los trabajadores,
realizando todas las tareas de entrada, clculo y salida. Estas arquitecturas verticales
tienen menos probabilidad de ser susceptibles a efectos secundarios cuando se hacen
cambio y tendrn por lo tanto mejor capacidad de mantenimiento, un factor clave para la
calidad.
28) Estructura de datos: representacin de la relacin lgica entre los elementos individuales
de datos. Como las alternativas de organizacin, mtodos de acceso, capacidad de
asociacin y procesamiento de la informacin.
29) Estructuras clsicas que forman la base para construir estructuras ms sofisticadas:
- elemento escalar forma ms simple de estructura de dato
- vector secuencial (matriz) elemento escalar como una lista contigua -
- lista enlazada punteros
- estructura de datos jerrquica (pila) contiene: listas enlazadas con escalares, vectores y
matrices
30) Procedimiento del software: debe proporcionar una especificacin exacta del
procesamiento, incluyendo secuencia de acontecimientos, puntos exactos de decisin,
operaciones repetitivas e incluso la organizacin/estructura de los datos.
31) Ocultamiento de la informacin: implica que se puede conseguir una modularidad eficaz
definiendo un conjunto de mdulos independientes que se comunican entre ellos slo la
informacin necesaria para conseguir la funcin del software.

DISEO MODULAR EFECTIVO
32) Reduce la complejidad y facilita los cambios, hace ms fcil la implementacin.
33) independencia funcional: se consigue desarrollando mdulos con una funcin nica. Los
mdulos independientes son fciles de mantener y probar por que los efectos causados
por las modificaciones son limitados, la propagacin de errores es reducida y se pueden
utilizar mdulos reutilizados. Se mide usando dos criterios cuantitativos: cohesin y
acoplamiento
34) Cohesin: Es una extensin del concepto de ocultacin de informacin. Un mdulo con
cohesin realiza una sola tarea dentro de un procedimiento de sw requiriendo poca
interaccin con los procedimientos que realizan en otras partes del programa. un mdulo
con cohesin debera realizar una sola tarea.
- Coincidentalmente cohesivo: mdulo que realiza un conj de tareas poco relacionadas
pero que tiene algo que ver.
- Cohesin lgica: mdulo que contiene tareas relacionadas lgicamente.
- Cohesin temporal : mdulo que contiene tareas relacionadas por el hecho que deben
realizarse en el mismo intervalo.
- Cohesin procedimental: Cuando los elementos de procesamiento estn relacionados y
deben ejecutarse en un orden especfico.
- Cohesin de comunicacin: cuando todos los elementos de procesamiento se concentran
en un area de la estructura de datos

35) Acoplamiento: medida de interdependencia relativa entre los mdulos. En el diseo
intentamos conseguir el menor acoplamiento. Las conexiones sencillas entre mdulos son
ms fciles de entender.

HEURISTICAS DE DISEO PARA UA MODULARIDAD EFECTIVA.

36) La arquitectura del programa se manipula de acuerdo con un conj de directrices:
1) evaluar la primera iteracin de la estructura del programa para reducir el acoplamiento
y mejorar la cohesin.
2) Intentar minimizar las estructuras con mucho grado de salida: intentar concentrar a
medida que aumenta la profundidad.
3) Mantener el alcance del efecto de un mdulo dentro del alcance del control de ese
mdulo.
4) Evaluar las interfaces de los mdulos para reducir la complejidad, la redundancia y
mejorar la consistencia.
5) Definir mdulos cuya funcin sea predecible, pero evitar mdulos que sean demasiados
restrictivos.
6) Intentar conseguir mdulos de entrada controlada evitando conexiones patolgicas
7) Empaquetar el soft basndose en las restricciones del diseo y los requisitos de
portabilidad.

You might also like