Indice
Introducción
Paradigma Orientado a Objetos
Estudio de caso: Java
Conclusiones
Paradigma Orientado a Objetos
Conceptos generales
Clases y Objetos
Herencia
Polimorfismo
Problemas en la creación del software
¿Hay crisis del software?
Gran complejidad
Número de estados posibles es muy elevado
Conexiones entre entidades
Complejidad arbitraria que surge de instituciones humanas
Sujeto a continuos cambios
No tiene representación gráfica
Especificación de requisitos
Comunicación del equipo
Calidad del Software
Factores Externos
Corrección
Robustez
Extensibilidad
Reutilización
Compatibilidad
Modularidad
Legibilidad
Factores Internos
Eficiencia
Portabilidad
Facilidad de uso
Funcionalidad
Mantenimiento del software
Parte noble: MODIFICACION
Parte no noble: DEPURACION
Se le dedica el 70 % del coste del software
Distribución coste según [Lientz79]:
Cambios solicitados por los usuarios (41.8%)
Cambios en los formatos de los datos (17.4%)
Cambios de emergencia (12.4%)
Depuración rutinaria (9%)
Costes de documentación (5.5%)
Mantenimiento del software
Conclusiones del estudio:
Ausencia de extensibilidad
Estructura física de los datos dispersa por muchas partes del sistema
No se hace documentación a posteriori
Cuando el sistema funciona no se buscan mejoras en eficiencia.
Numero de conexiones sea mínimo
Flujo de información sea mínimo
Comunicaciones explícitas
Acoplamiento mínimo:
Cohesión de datos
Cohesión funcional
Cohesión interna:
En los Sistemas Software interesa …
Reutilización del software
¿Por qué el software no es como el hardware?
¿Por qué cada nuevo proyecto software arranca de la nada?
Librerías de software
Software-IC
Página siguiente |