Sunteți pe pagina 1din 14

Introduccin a la

Ingeniera de Software
Ms. Camilo E. Surez Rebaza
Software
Muchas personas asocian el trmino software con los
programas de computadora. Sin embargo, el software no son
slo programas, sino todos los documentos asociados y la
configuracin de datos que se necesitan para hacer que estos
programas operen de manera correcta.
Por lo general, un sistema de software consiste en diversos
programas independientes, archivos de configuracin que se
utilizan para ejecutar estos programas, un sistema de
documentacin que describe la estructura del sistema, la
documentacin para el usuario que explica cmo utilizar el
sistema y sitios web que permitan a los usuarios descargar la
informacin de productos recientes.
Ingeniera de Software
La ingeniera del software es una disciplina de la ingeniera
que comprende todos los aspectos de la produccin de
software desde las etapas iniciales de la especificacin del
sistema, hasta el mantenimiento de ste despus de que se
utiliza.
En esta definicin, existen dos frases clave:
Disciplina de ingeniera
Todos los aspectos de produccin de software
Ingeniera de Software
La ingeniera de software es el establecimiento y uso de
principios fundamentales de la ingeniera con objeto de
desarrollar en forma econmica software que sea confiable y
que trabaje con eficiencia en mquinas reales.

El IEEE ha desarrollado una definicin ms completa:
La ingeniera de software es: 1) La aplicacin de un enfoque
sistemtico, disciplinado y cuantificable al desarrollo,
operacin y mantenimiento de software; es decir, la aplicacin
de la ingeniera al software. 2) El estudio de enfoques segn el
punto 1.
Ingeniera de Software vs Computacin
Esencialmente, la ciencia de la computacin se refiere a las
teoras y mtodos subyacentes a las computadoras y los
sistemas de software, mientras que la ingeniera del software
se refiere a los problemas prcticos de producir software.

Los ingenieros de software requieren ciertos conocimientos
de ciencia de la computacin, de la misma forma que los
ingenieros elctricos requieren conocimientos de fsica.
Ingeniera de Software vs Ingeniera de
Sistemas
La ingeniera de sistemas se refiere a todos los aspectos del
desarrollo y de la evolucin de sistemas complejos donde el
software desempea un papel principal.

Por lo tanto, la ingeniera de sistemas comprende el desarrollo
de hardware, polticas y procesos de diseo y distribucin de
sistemas, as como la ingeniera del software.

Los ingenieros de sistemas estn involucrados en la
especificacin del sistema, en la definicin de su arquitectura
y en la integracin de las diferentes partes para crear el
sistema final. Estn menos relacionados con la ingeniera de
los componentes del sistema (hardware, software, etc.)
Proceso de Software
Un proceso del software es un conjunto de actividades y
resultados asociados que producen un producto de software.
Estas actividades son llevadas a cabo por los ingenieros de
software.
Existen cuatro actividades fundamentales:
1. Especificacin del software donde los clientes e ingenieros
definen el software a producir y las restricciones sobre su
operacin.
2. Desarrollo del software donde el software se disea y
programa.
3. Validacin del software donde el software se valida para
asegurar que es lo que el cliente requiere.
4. Evolucin del software donde el software se modifica para
adaptarlo a los cambios requeridos por el cliente y el mercado.
Proceso de Software
Un Proceso define QUIEN hace QU, CUNDO y CMO, para
alcanzar cierto objetivo

En el contexto de la ingeniera de software, un proceso no es
una prescripcin rgida de cmo elaborar software de
cmputo. Por el contrario, es un enfoque adaptable que
permite que las personas que hacen el trabajo (el equipo de
software) busquen y elijan el conjunto apropiado de acciones
y tareas para el trabajo. Se busca siempre entregar el
software en forma oportuna y con calidad suficiente para
satisfacer a quienes patrocinaron su creacin y a aquellos que
lo usarn.
Modelo de Proceso de Software
Un modelo de procesos del software es una descripcin simplificada
de un proceso del software que presenta una visin de ese proceso.
Estos modelos pueden incluir actividades que son parte de los
procesos y productos de software y el papel de las personas
involucradas en la ingeniera del software.
Ejemplos de estos tipos de modelos que se pueden producir son:
1. 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.
2. Un modelo de flujo de datos o de actividad. Representa el proceso
como un conjunto de actividades, cada una de las cuales realiza
alguna transformacin en los datos. Muestra cmo la entrada en el
proceso se transforma en una salida. Pueden representar
transformaciones llevadas a cabo por las personas o por las
computadoras.
3. Un modelo de rol/accin. Representa los roles de las personas
involucrada en el proceso del software y las actividades de las que
son responsables.
Modelo de Proceso de Software
La mayor parte de los modelos de procesos del software se basan en
uno de los tres modelos generales o paradigmas de desarrollo de
software:
1. El enfoque en cascada. Considera las actividades anteriores y las representa
como fases de procesos separados, tales como la especificacin de
requerimientos, el diseo del software, la implementacin, las pruebas,
etctera. Despus de que cada etapa queda definida se firma y el
desarrollo contina con la siguiente etapa.

2. Desarrollo iterativo. Este enfoque entrelaza las actividades de
especificacin, desarrollo y validacin. Un sistema inicial se desarrolla
rpidamente a partir de especificaciones muy abstractas. Este se refina
basndose en las peticiones del cliente para producir un sistema que
satisfaga las necesidades de dicho cliente. El sistema puede entonces ser
entregado.

3. Ingeniera del software basada en componentes (CBSE). Esta tcnica
supone que las partes del sistema existen. El proceso de desarrollo del
sistema se enfoca en la integracin de estas partes ms que desarrollarlas
desde el principio.
Ejemplo de Proceso de Software - RUP
Ejemplo de Proceso de Software - RUP
Otros Procesos de Software
Lectura:
La esencia de un Proceso de desarrollo efectivo

S-ar putea să vă placă și