sábado, 25 de agosto de 2012

Ingeniería del Software


¿Qué es la Ingeniería del Software?

La Ingeniería del Software es una disciplina de la ingeniería que comprende todos los aspectos de la producción de software desde las etapas iniciales de la especificación del sistema, hasta el mantenimiento de éste después de que se utiliza. En esta definición existen dos frases claves:

  • Disciplina de la ingeniería. Los ingenieros hacen que las cosas funcionen. Aplican teorías, métodos y herramientas donde sean convenientes, pero las utilizan en forma selectiva y siempre tratando de descubrir soluciones a los problemas, aun cuando no existan teorías y métodos aplicables para resolverlos. Los ingenieros también saben soluciones tomando en cuenta estas restricciones.

  • Todos los procesos de producción de software. La ingeniería del software no sólo comprende los procesos técnicos del desarrollo de software, sino también con actividades tales como la gestión de proyectos de software y el desarrollo de herramientas, métodos y teorías de apoyo a la producción del software.

En general los ingenieros de software adoptan un enfoque sistemático y organizado en su trabajo, ya que es la forma más efectiva de producir software de alta calidad. Sin embargo, aunque la ingeniería consiste en seleccionar el método más apropiado para un conjunto de circunstancias, un enfoque más informal y creativo de desarrollo podría ser efectivo en algunas circunstancias. El desarrollo informal es apropiado para el desarrollo de sistemas basados en Web, los cuales requieren una mezcla de técnicas de software y de diseño gráfico.



¿Qué es un modelo de procesos de software?


Un modelo de proceso de software es una descripción simplificada de un proceso del software que presenta una visión de ese proceso. Estos modelos pueden incluir actividades que son parte de los procesos y productos del software y el papel de las personas involucradas en la ingeniería del software. Algunos ejemplos de estos tipos de modelos que se pueden producir son:


  • Un modelo de flujo de trabajo. Muestra la secuencia de actividades en el proceso junto con sus entradas, salidas y dependencias. Las actividades en este modelo representan acciones humanas.

  • Un modelo de flujo de datos o actividad. Representa el proceso como un conjunto de actividades, cada una de las cuales realiza alguna transformación en los datos. Muestra cómo la entrada en el proceso, tal como una especificación, se transforma en una salida, tal como un diseño. Pueden presentar transformaciones llevadas a cabo por las personas o computadoras.
  • Un modelo de rolación. Representa los roles de las personas involucradas en el procesp del software y las actividades de las que son responsables.
Un modelo de rolación. Representa los roles de las personas involucradas en el procesp del software y las actividades de las que son responsables.

La mayor parte de los modelos de procesos del software se basan en los tres modelos generales o paradigmas de desarrollo de software:


  • El enfoque en cascada. Considera las actividades anteriores y las representa como fases de procesos separados, tales como la especificación de requerimientos, el diseño del software, la implementación, las pruebas de requerimientos, el diseño del software, la implementación, las pruebas, etc.


  • Desarrollo iterativo. Este enfoque entrelaza las actividades de especificación, desarrollo y validación. Un sistema inicial se desarrolla rápidamente a partir de especificaciones muy abstractas. Éste se refina basándose en las peticiones del cliente para producir un sistema que satisfaga las necesidades de dicho cliente. El sistema puede ser entregado. De forma alternativa, se puede re implementar utilizando un enfoque más estructurado para producir un sistema más sólido y mantenible.


  • Ingeniería del Software basada en componentes (CBSE). Esta técnica supone que las partes del sistema existe. El proceso de desarrollo del sistemas se enfoca en la integración de estas partes más que desarrollarlas desde el principio.
Rocha Ortiz Miguel Angel 2010090617

Fuente: Ingenieria.de.Software.-.Ian.Sommerville.7ma.Edicion.PRENTICE-HALL

No hay comentarios:

Publicar un comentario