Conceptos esenciales del software: definición, clases, vistas y problemáticas
Clasificado en Informática
Escrito el en
español con un tamaño de 3,24 KB
¿Qué es el software?
Definición: Es un conjunto de programas que controlan la operación de una computadora y permiten realizar tareas.
Características
El software es único, maleable, intangible, de alto contenido intelectual. El proceso de desarrollo está basado en equipos y por proyectos.
Cualidades del software
Externas
- Correctitud
- Reutilizable
- Confiable
- Eficiencia
Internas
- Costo de mantenimiento
- Flexibilidad
- Mantenibilidad
Clases de información
Tenemos tres clases:
- Representaciones de software
- Conocimiento de ingeniería de software
- Conocimiento específico del dominio
La intersección de estos círculos se llama intersección crítica.
Vistas
Software como producto
- En los 60 se separó el software del hardware y se empezó a construir como producto.
- El software es tanto un producto como un objeto técnico.
Software como conocimiento
Si los programas contienen conocimiento, entonces las versiones iniciales también contienen conocimiento, y lo perdemos si nos reducimos a los conceptos del software ejecutable. No perder este conocimiento es una de las principales razones de la reusabilidad del software.
Características conceptuales
- Su producción es humano-intensiva.
- Tradicionalmente, en la ingeniería, el ingeniero dispone de herramientas para describir el producto que son distintas del producto; no es así en la ingeniería de software.
- Las cualidades del producto de software están a menudo entremezcladas en especificaciones con las cualidades del diseño.
Problemática actual
- Incapacidad para estimar tiempo, costo y esfuerzo para el desarrollo de un producto software.
- Falta de calidad del producto software.
- Avance del hardware y necesidad de aplicaciones más complejas.
- Cambio en la relación entre el coste hardware/software.
Preguntas recurrentes
¿Por qué lleva tanto tiempo terminar los programas? ¿Por qué es tan elevado su costo? ¿Por qué no podemos encontrar todos los errores antes de entregar el software a nuestros clientes?
Algunas causas:
- Problemas derivados de la intervención de grupos.
- Problemas de comunicación con los clientes.
- Poco esfuerzo en el análisis y el diseño.
- Problemas de gestión y planificaciones optimistas.
- Limitaciones con las nuevas técnicas, métodos y herramientas.