Fundamentos Esenciales de Software, Ingeniería y Sistemas de Información
Enviado por Programa Chuletas y clasificado en Diseño e Ingeniería
Escrito el en español con un tamaño de 4,98 KB
Software
Conjunto de programas, procedimientos y documentación asociada a la operación de un sistema informático.
La Crisis del Software
Problemas del Software
- Mal funcionamiento
- Dificultad para desarrollar nuevo software
- Reto de mantener el volumen creciente de software existente
- Incesante demanda de software
- Barreras en el mantenimiento
Problemas en el Desarrollo del Software
- Imprecisión en la planificación y la estimación
- Baja productividad
- Calidad insuficiente del software
- Otros problemas:
- Falta de recolección de datos sobre el proceso de desarrollo
- Insatisfacción del cliente
- Calidad cuestionable
- Dificultad de mantenimiento
Causas de los Desafíos del Software
- Responsables no cualificados
- Falta de comunicación entre las partes involucradas
- Desconocimiento de las nuevas tendencias y tecnologías
- Resistencia al cambio
- Falta de reconocimiento de la figura del informático
Sistemas de Información
El conjunto de medios humanos y materiales encargados del tratamiento de la información empresarial, mediante la entrada de datos, su proceso y almacenamiento, y su posterior salida, presentación y, a veces, su explotación.
Objetivos de un Sistema de Información (SI)
- Facilitar o realizar automáticamente procesos de tradición manual
- Proporcionar información relevante
- Apoyar la toma de decisiones
Elementos de un Sistema de Información (SI)
- Los procesos
- La información
- Las personas o usuarios de esa información
- El equipo de soporte
Estructura de un Sistema de Información (SI)
- Operaciones y transacciones
- Nivel operativo de dirección
- Nivel táctico de dirección
- Nivel estratégico de dirección
Ingeniería del Software
La Ingeniería del Software es el establecimiento y uso de principios sólidos de ingeniería, orientados a obtener software económico que sea fiable y trabaje de manera eficiente en máquinas reales.
Factores de Calidad del Software
- Eficiencia
- Fiabilidad
- Integridad
- Facilidad de mantenimiento
- Facilidad de uso
- Portabilidad
- Legibilidad
- Reutilización
- Robustez
- Facilidad de prueba
- Buena documentación
Ciclo de Vida del Software
El ciclo de vida del software es un marco de referencia que contiene los procesos, las actividades y las tareas involucradas en el desarrollo, la explotación y el mantenimiento de un producto de software. Abarca la vida del sistema desde la definición de requisitos hasta la finalización de su uso, es decir, el período de tiempo que comienza cuando se concibe la idea de generar el programa hasta que finalmente se retira.
Modelos del Ciclo de Vida del Software
Modelo en Cascada (Waterfall)
Se denomina modelo en cascada porque su característica principal es que no se comienza con un paso hasta que se ha terminado el anterior.
Modelo de Prototipos
Consiste en iterar en la fase de requisitos y diseño tantas veces como sea necesario, mostrando prototipos al usuario para que pueda indicarnos de forma más eficiente los requisitos del sistema. La iteración finalizará cuando el usuario dé el visto bueno al prototipo.
Modelo Evolutivo
Se diferencia del modelo por prototipos en que, en prototipos, se da por hecho que, aunque se necesiten varias iteraciones para lograrlo, al final se llegará a tener una serie de requisitos completos y sin errores que no vayan a cambiar más. El modelo evolutivo asume que los requisitos pueden evolucionar.
Modelo Incremental
Aquí se desarrolla el sistema para satisfacer un subconjunto de los requisitos especificados y, en posteriores versiones, se incrementa el programa con nuevas funcionalidades que satisfagan más requisitos.
Modelo en Espiral
Toma las ventajas del modelo de desarrollo en cascada y el de prototipos, añadiéndole el concepto de gestión de riesgos.
Etapas del Ciclo de Vida del Software
- Análisis del sistema
- Planificación del proyecto
- Análisis de riesgos
- Asignación de recursos
- Estimación de costes
- Definición de tareas
- Planificación del trabajo
- Análisis de requisitos
Tipos de Mantenimiento del Software
- Mantenimiento Correctivo: Corrección de errores.
- Mantenimiento Adaptativo: Adaptaciones a cambios en el entorno.
- Mantenimiento Perfectivo: Cambios en los requisitos o mejoras funcionales.
- Mantenimiento Preventivo: Mejora de las características internas del producto para hacerlo más mantenible.