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:

  1. Representaciones de software
  2. Conocimiento de ingeniería de software
  3. 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.

Entradas relacionadas: