Conceptos y Principos Diseño

12
©Ing. Christian Araujo González U3: T1-1 Tema 1: Conceptos y Principios del Diseño de Software Unidad 3: Diseño, Implementación y Mantenimiento de Software

description

Ing Software Unt

Transcript of Conceptos y Principos Diseño

  • Ing. Christian Araujo Gonzlez U3: T1-1

    Tema 1: Conceptos y Principios del

    Diseo de Software

    Unidad 3: Diseo, Implementacin y Mantenimiento

    de Software

  • Ing. Christian Araujo Gonzlez U3: T1-2

    Contenido :

    1. Qu es el diseo de Sistemas Software? 1.1. Definiciones 1.2. El diseo estructurado 2. Diseo e Ingeniera de Software 3. Principios del Diseo

  • Ing. Christian Araujo Gonzlez U3: T1-3

    1. Qu es el Diseo de Sistemas Software?

    1.1. Definiciones

  • Ing. Christian Araujo Gonzlez U3: T1-4

  • Ing. Christian Araujo Gonzlez U3: T1-5

  • Ing. Christian Araujo Gonzlez U3: T1-6

    1.2. El Diseo Estructurado

    Objetivos Fundamentales

    Maximizar la facilidad de modificacin del sistema.

    Disear sistemas fciles de probar y verificar.

    La documentacin debe ser producto natural del mismo proceso.

    La estructura del diseo debe facilitar el poder aislar el efecto de un cambio dado.

    La metdica del diseo del diseo debe tener un alto grado de particionamiento, para tener una mayor flexibilidad en la distribucin del trabajo durante la implementacin.

    El mtodo del diseo debe ser una jerarqua uniforme de lo ms abstracto a lo ms detallado, de forma tal que el personal de ms experiencia pueda trabajar en la arquitectura del sistema, mientras que el de manos experiencia trabaje en los detalles.

    Objetivos Complementarios

  • Ing. Christian Araujo Gonzlez U3: T1-7

    Caractersticas

    La mantenibilidad del sistema (primer objetivo del diseo) est fuertemente relacionada con las caractersticas de los mdulos que se disean tales como: el tamao, la independencia, el aislamiento de los detalles, la estructura de las decisiones, el acceso a los datos.

    Los aspectos anteriores, ejercen un gran efecto en la simplicidad o complejidad que puede tener la verificacin del sistema (segundo objetivo), sobre todo la de aislar los detalles a los niveles ms bajos, lo cual facilita la implementacin top-down.

    Antes de dar una definicin de diseo estructurado es necesario conocer que es una estrategia de diseo y un diseo top-down.

    Una estrategia de diseo es un conjunto de mtodos o tcnicas que se utilizar para derivar, evaluar, refinar y documentar un diseo.

    Una diseo top-down es un tipo particular de diseo en lugar de una estrategia. Se dice que es top-down si esta formado por una jerarqua o grupos de mdulos o programas donde cada uno tiene una sola entrada y salida.

  • Ing. Christian Araujo Gonzlez U3: T1-8

    Definicin

    El diseo estructurado es aquel que utiliza una estrategia para producir un diseo top-down altamente mantenible y fcil de verificar.

    Las tcnicas para derivar son: - el anlisis de transformacin y de transaccin. - la teora de autmatas (monitor de dilogo).

    Las tcnicas para evaluar y refinar son: - el acoplamiento. - la cohesin.

    Los instrumentos fundamentales de la documentacin son: - el diagrama estructurado (formado por Diagrama Estructurado de Procesos

    -DEP- y/o diagramas de estado). - el diagrama Entidad-Relacin (para la base de datos).

  • Ing. Christian Araujo Gonzlez U3: T1-9

    2. Diseo e Ingeniera de Software

    El diseo de software se sita en el ncleo tcnico del proceso de ingeniera del software y se aplica independiente del paradigma de desarrollo utilizado.

    El diseo es la primera de las tres actividades tcnicas dieo, codificacin y prueba- necesarias para construir y verificar el software.

    Cada uno de los elementos del modelo del anlisis proporciona informacin necesaria para crear un modelo de diseo. Los requisitos del software, manifestados por los datos y los modelos funcionales y comportamiento, componen la fase de diseo. Mediante el empleo de los mtodos de diseo, la fase de diseo produce un diseo de datos, un diseo arquitectnico, un diseo de interfaz y un diseo procedimental. Ver el esquema de transformacin del modelo de anlisis en diseo de software.

    La importancia del diseo del software se puede decir en una sola palabra: calidad. El diseo es donde se fomenta la calidad en el desarrollo del software. El diseo nos proporciona representaciones del software en las que se pueden valorar la calidad. El diseo es la nica manera de traducir con precisin los requisitos del cliente en un sistema o producto software.

  • Ing. Christian Araujo Gonzlez U3: T1-10

    Diccionario

    de datos

    Diagrama

    de Flujo

    de Datos

    Especificaciones

    de proceso

    Diagrama

    Entidad-

    Relacin

    Descripcin de

    datos

    Diagrama de

    Transicin de estados

    Especificacin de control

    Diseo Procedimental

    Diseo de Interfaz

    Diseo Arquitectnico

    Diseo de Datos

    Modelo del Anlisis Modelo del Diseo

    Esquema de la transformacin del modelo de anlisis en un diseo de software

  • Ing. Christian Araujo Gonzlez U3: T1-11

    El diseo de datos transforma el modelo de dominio de la informacin, creado durante el anlisis (DER y DD), en las estructuras de datos necesarias para implementar el software.

    El diseo arquitectnico define la relacin entre los principales elementos estructurales del programa (estructura modular).

    El diseo de interfaz describe como se comunica consigo mismo, con los sistemas que operan con el y con los operadores que lo emplean.

    El diseo procedimiental transforma los elementos estructurales de la arquitectura del programa en una descripcin procedimental de los componentes del software (especificacin de mdulos)

  • Ing. Christian Araujo Gonzlez U3: T1-12

    3. Principios del Diseo de Software

    El diseo de software es tanto un proceso como un modelo.

    El proceso de diseo es una secuencia de pasos que hacen posible que el diseador describa todos los aspectos del software que se va ha construir.

    El modelo de diseo es equivalente a los planes de un arquitecto para una casa. Comienza representando la totalidad de todo lo que se va ha construir y refina lentamente lo que va ha proporcionar la gua para construir cada detalle.

    Los principios bsicos de diseo hacen posible que el ingeniero de software navegue por el proceso de diseo. Davis sugiere los siguientes:

    . En el proceso de diseo no deber utilizarse orejeras.

    . El diseo deber poderse rastrear hasta el modelo de anlisis.

    . El diseo no deber inventar nada de lo que ya este inventado.

    . El diseo deber minimizar la distancia intelectual entre el software y el problema como si de la misma vida real se tratara.

    . El diseo deber presentar uniformidad e integracin.

    . El diseo deber estructurarse para admitir cambios.