Please enable JavaScript.
Coggle requires JavaScript to display documents.
Fundamentos del diseño de software - Coggle Diagram
Fundamentos del diseño de software
Definición
Proceso de aplicar distintas técnicas y principios con el propósito de definir un dispositivo, proceso o sistema con los suficientes detalles como para permitir su realización física
Cambian continuamente al aparecer nuevos métodos, mejores análisis y ampliar los conocimientos
Ingeniería del software y diseño del software
Diseño de datos
Diseño arquitectónico
Diseño procedimental
Diseño de interfaz (Opcional)
El proceso de diseño
Diseño preliminar
Diseño detallado
Diseño Y Calidad Del Software
Revisiones técnicas formales (RTF)
Verificar que se hayan alcanzado sus requisitos
Garantizar que se haya representado según los estándares establecidos
Descubrir los errores en la función, la lógica o la implementación
Proyectos manejables
Software desarrollado de forma uniforme
Criterios
Organización jerárquica
Modular
Tiene representaciones distintas y separadas de los datos y de los procedimientos
Tiene módulos que exhiban características funcionales independientes
Conduce a interfaces que reduzcan la complejidad
Obtenible mediante un método que sea reproducible
Características Comunes De Las Metodologías De Diseño
Mecanismo para la traducción de requisitos
Notación para representar los componentes funcionales y sus interfaces
Heurísticas para el refinamiento y la partición
Criterios para la valoración de la calidad
Fundamentos del diseño
Abstracción
Niveles
Abstracción de datos
Abstracción procedimental
Conforme nos movemos desde los preliminares hacia el diseño detallado, se reduce el nivel de abstracción
Refinamiento
Modularidad
Divide y vencerás
Arquitectura del software
La estructura jerárquica de los módulos del software
La estructura de datos
Jerarquía de control
Estructura del programa
Representa la organización jerárquica de los módulos de un programa
Estructura de Datos
Procedimientos del software
Por capas
Ocultamiento de información
Los módulos deben especificarse de forma que la información dentro de un módulo sea inaccesible a otros módulos
Diseño modular efectivo
Tipos de módulos
Secuenciales
Incrementales
Paralelos
Caracteristicas
Historial de incorporación
Mecanismo de activación
Camino de control
Independencia funcional
Consecuencias
Creación de interfaces sencillas
Facilidad para la prueba y el mantenimiento
Se reduce la propagación de errores
Se fomenta la reutilización de módulos
Módulos independientes fáciles de desarrollar
Criterios
Cohesión
Acoplamiento
Resultados
Reduce la complejidad
Facilita los cambios
Implementación más sencilla
Permite el desarrollo paralelo de partes diferentes de un sistema