Conceptos Clave y Proceso de Desarrollo en Ingeniería de Software

Enviado por Programa Chuletas y clasificado en Diseño e Ingeniería

Escrito el en español con un tamaño de 5,17 KB

Ingeniería de Software: Definición y Alcance

La Ingeniería de Software (IS) es un conjunto de etapas parcialmente ordenadas con la intención de lograr un objetivo: la obtención de un producto de software de calidad.

Características Fundamentales del Software

El Software no se fabrica en un sentido clásico

A pesar de que existen similitudes entre el desarrollo del software y la manufactura del hardware, las dos actividades son fundamentalmente diferentes. En ambas, la alta calidad se alcanza por medio del buen diseño. Sin embargo, la fase de manufactura del hardware puede incluir problemas de calidad que no existen en el software.

El Software no se estropea

El software es inmune a los males ambientales que desgastan el hardware. Por lo tanto, la curva de tasas de fallas para el software debería tener la forma de la “curva idealizada”. Los defectos sin descubrir causan tasas de fallas altas en las primeras etapas de vida de un programa. No obstante, los errores se corrigen y la curva se aplana: el software no se desgasta, pero sí se deteriora.

La mayoría del Software se construye a medida

Un componente de software se debe diseñar e implementar de forma que pueda utilizarse en muchos programas diferentes.

Los componentes reutilizables modernos encapsulan tanto los datos como el proceso que se aplica a estos, lo que permite al ingeniero de software crear nuevas aplicaciones a partir de partes reutilizables.

Mitos Comunes en la Ingeniería de Software

Un mito es una actitud errónea que causa serios problemas al gestor y al técnico desarrollador del software.

Mitos de Gestión

  • Mito: Existe un manual de procedimientos sobre cómo desarrollar software.
    (Realidad: No existe un manual único que dicte cómo desarrollar todo el software).
  • Mito: Los requerimientos del proyecto cambian continuamente, pero los cambios pueden acomodarse fácilmente ya que el software es flexible.
    (Realidad: Es verdad que los requerimientos del software cambian, pero el impacto del cambio varía según el momento en que se introduzca).

Mitos del Cliente

Perspectiva errónea sobre el producto real.

Mitos de los Desarrolladores

  • Mito: Al terminar el software, el trabajo ha terminado.
    (Realidad: No es verdad, ya que se le debe dar mantenimiento).

Capas de la Ingeniería de Software

Las capas suministran un soporte automático para los métodos.

  1. Calidad: Es la base o cimiento de la Ingeniería de Software.
  2. Proceso: Es el funcionamiento de la Ingeniería de Software.
  3. Métodos: Indican cómo construir técnicamente el software, incluyendo el análisis de requerimientos, diseño, construcción de programas, pruebas y mantenimiento.
  4. Herramientas (CASE): Proporcionan un soporte automático o semiautomático a los procesos y métodos.

El Proceso del Software

Es el conjunto estructurado de actividades requeridas para desarrollar un sistema de software.

Debe estar explícitamente modelado si va a ser bien administrado.

Actividades Fundamentales del Proceso

Las actividades varían dependiendo de la organización y del tipo de sistema a desarrollarse.

  • Especificación.
  • Diseño.
  • Validación.
  • Evolución.

Conceptos Relacionados con el Proceso

Integridad
Capacidad de los sistemas de software de proteger sus diversos componentes contra modificaciones y accesos no autorizados.

Características Deseables del Proceso

Entendible
El proceso se encuentra bien definido y es entendible.
Visible
El proceso es visible al exterior.
Soportable
El proceso puede ser soportado por herramientas CASE.
Aceptable
El proceso es aceptado por aquellos involucrados en él.
Confiable
Los errores del proceso son descubiertos antes de que se conviertan en errores del producto.
Robustez
El proceso puede continuar a pesar de problemas inesperados.
Mantenible
El proceso puede evolucionar para cumplir con los objetivos organizacionales.
Rapidez
Mide qué tan rápido puede producirse el sistema.

Problemas Comunes del Proceso

  • No existe una distinción precisa entre la especificación, el diseño y la manufactura.
  • Solo hasta que el sistema se ha producido se puede probar.
  • El software no se puede reemplazar siempre durante el mantenimiento.

Calidad del Software

La calidad del software se define como el desarrollo de software basado en estándares, con la funcionalidad y el rendimiento total que satisfacen los requerimientos del cliente.

Entradas relacionadas: