290 likes | 446 Views
Actividades del diseño de sistemas. Edwin Oliveros. El diseño de sistemas consiste en la transformación del modelo de diseño, que toma en cuenta los requerimientos no funcionales y las restricciones descritos en el enunciado del problema y el documento de análisis de requerimientos.
E N D
Actividades del diseño de sistemas Edwin Oliveros
El diseño de sistemas consiste en la transformación del modelo de diseño, que toma en cuenta los requerimientos no funcionales y las restricciones descritos en el enunciado del problema y el documento de análisis de requerimientos.
Se describirán pues todas las actividades necesarias para asegurarse que una descomposición en subsistemas tome en cuenta todos los requerimientos no funcionales y prepararse para tomar en cuenta cualquier restricción durante la fase de implementación.
Identificamos los objetivos de diseño para los requerimientos no funcionales • Diseñamos una descomposición inicial en subsistemas • Establecemos la correspondencia entre los subsistemas y los procesadores y componentes • Decidimos el almacenamiento • Definimos las políticas de control de acceso
Punto de partida Condición inicial Flujo de eventos 1 El automovilista activa su computadora casera y se registra en el servicio web de planeación de viajes. 2 Luego de registrarse el automovilista proporciona las restricciones para el viaje como una secuencia de destinos. 3 Basándose en una base de datos de mapas, el servicio de planeación calcula la ruta mas corta visitando los destinos en el orden especificado.
Luego el automovilista va al automóvil e inicia el viaje, mientras la computadora de a bordo le da indicaciones, basada en la información del viaje del servicio de planeación y su ubicación actual indicada por sistema GPS a bordo
Realizamos el análisis del sistema mi viaje siguiendo la técnica indicada y obtenemos el siguiente modelo.
Cruce: Un cruce es un punto geográfico en donde el automovilista puede escoger entre varios segmento Segmento: Representa el camino que hay entre dos cruce. Servicio de planeación: Es un servidor web que puede proporcionar información sobre un viaje, vinculando varios destinos en forma de una secuencia de cruces y segmentos.
Asistente Ruta: Este da indicación al automovilista tomando en cuenta la ubicación actual y el siguiente cruce. Indicación: Teniendo un cruce y un segmento adyacente dados, una indicación describe en lenguaje natural la manera de conducir el automóvil al segmento dado.
Identificación de los objetivos de diseño Identifica las cualidades en las que debe enfocarse el sistema. Muchos objetivos de diseño pueden inferirse a partir de los requerimientos no funcionales o del dominio de aplicación. Otros habrá que obtenerlos del cliente.
Objetivos de diseño para “Mi viaje” • Confiabilidad. • Tolerancia a fallas. • Seguro. • Modificabilidad.
Cuando se definen los objetivos de diseño solo se toman en cuenta en forma simultanea un pequeño subconjunto de estos criterios. Por ejemplo, no seria realista desarrollar un software que sea optimo, seguro y barato a la vez.
Identificación de subsistemas • Los subsistemas se combinan en un subsistema, uno de estos complejo se divide en partes y se añaden en unos subsistemas para que se encarguen de nueva funcionalidad. • Las primeras iteraciones sobre la descomposición en subsistemas pueden introducir cambios drásticos en el modelo de diseño del sistema. Con frecuencia se maneja mejor mediante lluvia de ideas.
Encapsulado de sistemas • El patrón fachada nos permite reducir aun mas las dependencias entre clases encapsulando un subsistema con una interfaz unificada simple. • La fachada proporciona el acceso solo a los servicios públicos proporcionados por el subsistema y oculta todos los demás detalles, reduciendo en forma efectiva el acoplamiento entre subsistemas.
Correspondencia de subsistemas a procesadores y componentes • Selección de una configuración de hardware y una plataforma. • Necesitamos examinar en forma minuciosa la asignación de subsistemas a computadoras y el diseño de una infraestructura para soportar la comunicación entre subsistemas. • La selección de una configuración de hardware también incluye la selección de una maquina virtual en la que se construirá el sistema.
La selección de una maquina virtual reduce la distancia entre el sistema y la plataforma del hardware sobre la que se ejecutara. • Entre mas funcionalidad proporcionen los componentes habrá menos trabajo involucrado. • La selección de una maquina virtual también puede estar restringida por consideraciones de costo.
Definición de los sistemas de datos persistentes Los datos persistentes sobreviven a una sola ejecución del sistema. Por ejemplo un autor puede guardar su trabajo en un archivo. En forma similar la información relacionada con los empleados su estado de empleo y sus cheques de pago viven en un sistema de admón. de base de datos. Esto permite que todos los programas que operan sobre datos de empleados lo hagan de forma consistente.
Identificación de condiciones de frontera • Necesitamos decidir la manera en que el sistema se arranca, se inicia y se apaga, y necesitamos definir la manera de manejar grandes fallas, como corrupción de datos, causadas por un error de software o por una falla de corriente eléctrica.