Please enable JavaScript.
Coggle requires JavaScript to display documents.
Principios de la Ingeniería del Software, resolver-conflictos, modelos de…
Principios de la Ingeniería del Software
Rigor y formalidad
¿Qué es?
El rigor es un complemento necesario de la creatividad en la ingeniería
La formalidad es el nivel más alto de la rigurosidad.
Beneficios
Se producen productos más confiables
Verificabilidad, mantenibilidad, reusabilidad, portabilidad, comprensibilidad e interoperabilidad.
Ejemplo de uso
En la fase de codificación
Proceso de software
Separación de intereses
¿En qué consiste?
Concentrarse por separado en aspectos individuales de un problema
Formas de separar los intereses
Según el tiempo
En términos de las cualidades
Distintas visiones del software
En términos de tamaño
Ventaja
Es la base para dividir el trabajo en un problema complejo
Modularidad
¿En qué consiste?
Consiste en las piezas más simples (llamadas módulos) de un sistema complejo
Beneficios
Permite la aplicación del principio de intereses en dos fases
Enfrentar los detalles de cada módulo por separado
Enfrentar las características globales de todos los módulos para integrarlos en un sistema coherente.
Objetivos principales
Capacidad de descomponer un sistema
complejo
Capacidad de componerlo a partir de módulos existentes
Comprensión del sistema en piezas (o
pedazos)
Abstracción
¿Qué es?
Proceso donde se identifican los aspectos relevantes de un problema
¿Dónde se aplica?
Productos de software
Procesos
Ejemplo de uso
Modelo de una aplicación propuesta que excluye detalles
Anticipación al cambio
¿Qué es?
Pensar en posibles cambios futuros dentro de un software
¿Por qué surgen los cambios?
Eliminar errores que surgen después de liberar la aplicación
Evolución de la aplicación debido a nuevos requerimientos
Ejemplo de uso en el desarrollo de software
Anticipar los efectos de una reducción de personal
Estimar los costos
Diseñar la estructura de la organización que apoyará la evolución del software
Generalidad
¿Qué es?
Buscar un problema más general para resolver el problema original
Desventaja
Una solución general puede ser más costosa que una especializada
Ejemplos
Procesadores de texto
Creación de modelos de autos
Incrementalidad
¿Qué es?
Proceso desarrollado en forma de pasos, yendo poco a poco
Aplicación
Se comienza con una pequeña app y se van agregando funcionalidades
Riesgos
Hay que tener cuidado con la gestión de documentación
Cada incremento significativo debe ser registrado
Los cambios deben ser ordenados