8 de agosto de 2018

Análisis y abstracción de información


Marco teórico sobre el desarrollo de software

Alrededor del mundo, el software contribuye al crecimiento económico. La ingeniería de software ha cambiado la cultura del mundo debido al extendido uso de dispositivos electrónicos que utilizan software, permitiendo a la gente interactuar de nuevas maneras. El software baja el costo y mejora la calidad de los servicios de salud, los departamentos de bomberos, las dependencias gubernamentales y otros servicios sociales.

Durante décadas se ha perseguido la meta de encontrar procesos reproducibles y predecibles que mejoren la productividad y la calidad. Desde sus inicios el software ha ido experimentando muchas veces problemas de gran magnitud, debido, principalmente, a la mínima eficacia que presentan una gran cantidad de empresas al momento de realizar un software y a la falta de acuerdos entre la comunicación de hardware y software. Sin embargo, fue en 1968 cuando en la primera conferencia elaborada por la OTAN (Organización del Tratado del Atlántico Norte), Friedrich L. Bauer habló por primera vez del conjunto de dificultades o errores ocurridos en la planificación, estimación de los costos, productividad y calidad de un software, o bien, lo que se conoce como la crisis del software, dicho término se le atribuyó a F. L. Bauer aunque ya había sido utilizado por Edsger Dijkstra en su libro The Humble Programmer. Para dar solución a los problemas que se presentaban en esta conferencia se creó una nueva rama de ingeniería, la ingeniería de software. (Dijkstra, Edger. The Humble Programmer.)

La ingeniería de software se puede considerar como la ingeniería aplicada al software, esto es, por medios sistematizados y con herramientas preestablecidas, la aplicación de ellos de la manera más eficiente para la obtención de resultados óptimos. La resolución de problemas, tomando en cuenta las diferentes soluciones, y eligiendo la más apropiada. El proceso de ingeniería de software se define como un conjunto de etapas parcialmente ordenadas con la intención de  obtener un producto de software de calidad

El proceso de desarrollo de software “es aquel en que las necesidades del usuario son traducidas en requerimientos de software, estos requerimientos transformados en diseño y el diseño implementado en código, el código es probado, documentado y certificado para su uso operativo. (Jacobson, 1998)

Se ha incrementado el porcentaje de software en los sistemas y se han diseñado diversas técnicas, actualmente hay 4 actividades fundamentales.
  • Especificación
  • Desarrollo
  • Validación
  • Evolución



Estas actividades se encuentran dentro de modelos de proceso de software
  • De flujo de trabajo
  • De flujo de datos o actividad
  • De rolación


Los cuales se basan en uno de tres modelos generales
  • Enfoque en cascada
  • Desarrollo iterativo
  • Ingeniería del software basada en componentes (CBSE)


Cada producto software necesita un proceso diferente. Por tanto, deben organizarse de diferente manera y en diferentes niveles según el tipo de software para el que se aplique el proceso. Un uso inapropiado del proceso software puede reducir la calidad o la usabilidad, e incluso incrementar los costes de desarrollo.

No hay comentarios.: