Dise - PowerPoint PPT Presentation

About This Presentation
Title:

Dise

Description:

Dise o de Sistemas Conceptos Fundamentales Que es Dise o? Tiene como objetivo producir modelos o representaciones de una entidad que se construir posteriormente ... – PowerPoint PPT presentation

Number of Views:78
Avg rating:3.0/5.0
Slides: 31
Provided by: JorgeG7
Category:
Tags: base | datos | dise | modelo

less

Transcript and Presenter's Notes

Title: Dise


1
Diseño de Sistemas
  • Conceptos Fundamentales

2
Que es Diseño?
  • Tiene como objetivo producir modelos o
    representaciones de una entidad que se construirá
    posteriormente
  • Combina intuición, experiencia, heurísticas,
    criterios de calidad y un proceso de iteración

3
Definiciones
  • El diseño pone de relieve una solución lógica.
  • Determina como el sistema cumple con los
    requerimientos.
  • Ejemplos De que manera el software del SI de la
    Biblioteca capturara y registrara los prestamos
    de libros?
  • Definitivamente el Diseño se implementa en
    Hardware y Software.

4
Diseño e Ingeniería de Software
  • El diseño es el núcleo técnico del proceso de
    ingeniería
  • Toma como base la información proporcionada por
    el modelo de análisis
  • El diseño de software evoluciona constantemente

5
La etapa de Diseño
  • Se define una estructura eficaz del software
  • Se especifica el detalle procedimental
  • Se analiza la adecuación al hardware
  • Se define la arquitectura del software

6
Como es un buen Diseño?
  • Implementa todos los requisitos contenidos en el
    modelo de análisis
  • Es comprendido por quienes construyen, prueban y
    mantienen el sistema
  • Brinda una idea completa del software, desde la
    perspectiva de la implementación

7
Como obtener un buen Diseño?
  • Organización jerárquica de los participantes
  • Partición lógica del sistema
  • Abstracciones de datos y procedimientos
  • Componentes con características funcionales
    independientes

8
Decisiones del diseñador de sistemas
  • Organizar el sistema en subsistemas
  • Identificar la concurrencia inherente al problema
  • Asignar los subsistemas a los procesadores y
    tareas.
  • Seleccionar una aproximación para la
    administración de almacenes de datos
  • Manejar el acceso a recursos globales
  • Seleccionar la implementación de control en
    software
  • Manejar las condiciones de contorno
  • Establecer la compensación de prioridades

9
1. Descomposición de un sistema en subsistemas
  • Cada subsistema abarca aspectos del sistema que
    comparten alguna propiedad común.
  • Un subsistema es un paquete de clases,
    operaciones y sucesos que tienen una interfaz
    razonablemente bien definida.
  • Se identifica por los servicios que proporciona.
  • Define una forma coherente de examinar un aspecto
    coherente del problema.
  • Se puede diseñar independientemente, sin afectar
    a los demás.

10
Descomposición de un sistema en subsistemas (II)
  • Los subsistemas deben definirse de tal forma que
    la mayoría de las interacciones se produzcan
    dentro de , y no en los limites de distintos
    subsistemas, para no tener dependencias.
  • Los subsistemas de mas bajo nivel se denominan
    modulos.
  • La descomposición en subsistemas se puede
    organizar como una secuencia de capas
    horizontales o en particiones verticales.

11
Descomposición de un sistema en subsistemas (III)
  • Capas
  • Conjunto ordenado de mundos virtuales, cada uno
    construido en términos de los que tiene por
    debajo y proporciona la base de la implementación
    para los que están encima.
  • El conocimiento se transmite en un solo sentido.
  • Se conocen las capas que están por debajo, pero
    no se conocen las que están por encima.

12
Ejemplo de Arquitectura en capas
13
Descomposición de un sistema en subsistemas (IV)
  • Particiones
  • Dividen verticalmente un sistema en subsistemas
    débilmente acoplados o independientes.
  • Cada uno proporciona una clase de servicio.
  • Pueden tener entre ellas algún conocimiento mutuo
    pero sin crear dependencias de diseño.
  • Todo sistema puede descomponerse en una mezcla de
    capas y particiones.

14
Ejemplo de particiones
Importante conocer esta transformación, pues la
información recogida de los Webs es crítica para
el canal central del negocio
15
(No Transcript)
16
2. Identificación de la concurrencia
  • Hay que identificar los objetos que deben estar
    activados concurrentemente y los objetos que
    tienen actividad que sea mutuamente exclusiva.
  • Estos objetos (mut.excl.) se pueden juntar en un
    único hilo de control o tarea.
  • Dos objetos son concurrentes si pueden recibir
    sucesos al mismo tiempo sin interactuar.
  • Si los sucesos no están sincronizados los objetos
    no pueden plegarse a un hilo de control.
  • Los subsistemas independientes son deseables
    porque se pueden asignar a diferentes unidades de
    Hw. sin coste en comunicaciones.

17
Identificación de la concurrencia (cont.)
  • No necesariamente dos subsistemas que sean
    concurrentes tienen que estar en unidades de Hw
    distintas, se tienen las interrupciones, Sist.
    Operativos para simulación en sistemas
    monoprocesadores.
  • Un hilo de control es una vía a través de varios
    diagramas de estados en la cual solo esta
    activado un objeto en cada instante, se escinde
    si el objeto envía un suceso y sigue funcionando
  • Los hilos se implementan como tareas en el CPU

18
3. Asignacion de subsistemas a procesadores y a
tareas
  • Un subsistema concurrente debe ser asociado a CPU
    de prop. general o a una unidad funcional
    especializada.
  • Estimacion de las necesidades de rendimiento y
    los recursos necesarios para satisfacerlos.
  • Seleccionar las implementaciones de HW o SW para
    los subsistemas.
  • Asignar los subsistemas de SW a los CPUs para
    satisfacer las necesidades de rendimiento y para
    minimizar la comunicacion interprocesadores.
  • Determinar las conexiones de unidades fisicas que
    implementan los subsistemas.

19
4. Administracion de DBMS
  • Las bases de datos proporcionan puntos de
    separacion entre subsistemas, con interfaces bien
    definidas.
  • Puede combinar archivos, estructuras de datos en
    memoria o en dispositivos secundarios.
  • Proporcionan compensaciones entre coste, tiempo
    de acceso, capacidad y fiabilidad

20
Administracion de bases de datos (ventajas)
  • Hay muchas caracteristicas de infraestructura.
  • Existe un interfaz comun para todas las
    aplicaciones.
  • Un lenguaje de acceso standard.(SQL)

21
Administracion de bases de datos (desventajas)
  • Costes temporales en terminos de rendimiento.
  • Funcionalidad insuficiente para aplicaciones
    avanzadas.
  • Una interfaz dificultosa con los lenguajes de
    programacion.

22
5. Manejo de recursos globales
  • Se debe identificar los recursos globales
    determinar mecanismos para controlar el acceso a
    ellos.
  • Recursos globales CPU, memoria, espacio en
    disco, botones de ratón, nombres de archivos, de
    clases, BD
  • Un recurso físico se controla estableciendo un
    protocolo para obtener acceso

23
6. Selección de una implementación de control de
software
  • Generalmente se selecciona un único estilo de
    control, aun cuando no haya una necesidad lógica.
  • Dos tipos de flujos de control externo e
    interno.
  • El control externo es el flujo de los sucesos
    externamente visibles entre los objetos del
    sistema.
  • 3 Tipos Controlados por procedimientos, por
    sucesos y los concurrentes.

24
6a.Sistemas controlados por procedimientos
  • El control esta en el código del programa.
  • Los proc. envían solicitudes de entradas
    externas, y cuando llegan el control pasa a quien
    hace la llamada.
  • Fácil de implementar mediante lenguajes de prog.
  • La concurrencia de los objetos se hace
    corresponder con un flujo secuencial de control.
  • Toda operación debe corresponder con un par de
    sucesos.

25
6b.Sistemas controlados por sucesos
  • El control reside dentro de un distribuidor.
  • Este es proporcionado por el lenguaje o Sist.
    Operativo.
  • Se asignan procs de aplicación a los sucesos, y
    son invocados por el distribuidor cuando se
    produce el suceso correspondiente.
  • Las llamadas de proc. al distribuidor envían
    salidas o habilitan entradas, pero no esperan por
    ellas
  • Todo proc devuelve el control al distrib. Y no lo
    retiene.

26
6c.Sistemas concurrentes.
  • El control esta concurrentemente en varios
    objetos independientes, cada uno realiza una
    tarea distinta.
  • Los sucesos se implementan como mensajes
    unidireccionales entre objetos.
  • Una tarea puede esperar a una entrada y los demás
    pueden seguir ejecutándose.
  • El S.O. proporciona una cola para los sucesos de
    tal forma que no se pierda ninguno si esta
    ejecutándose una tarea.

27
6d. Control interno.
  • Las operaciones que afectan a objetos se expanden
    formando otras de nivel inferior aplicables a los
    mismos objetos o a otros.
  • Es similar a la implementación externa.
  • Difieren en que las operaciones internas son
    generados por objetos como parte de la
    implementación, por lo tanto son predecibles.
  • Algunas operaciones se implementan como
    procedimientos.

28
7. Manejo de las condiciones de entorno
  • Se deben tener en cuenta las siguientes
    condiciones
  • Iniciación.
  • Terminación.
  • Fallos.

29
8. Establecimiento de prioridades de compensación
  • Prioridades que se usaran para las compensaciones
    necesarias durante el diseño
  • Se debe escoger entre objetivos deseables pero
    incompatibles.
  • Se debe conciliar los deseos del cliente y la
    forma que deben realizar las compensaciones.
  • El carácter de un sistema queda afectado por las
    decisiones de compensación..

30
Características de una buena metodología de diseño
  • Motivar la actividad pretendida
  • El diseño debe ser completo
  • Debe ser verificable antes de su construcción
  • Debe producir productos diferenciados que son
    mensurables
  • Debe ser fácilmente aprovechado en el producto
    final
Write a Comment
User Comments (0)
About PowerShow.com