Вы находитесь на странице: 1из 17

INGENIERA DE SOFTWARE

La ingeniera de software es una


disciplina que se enfoca en el desarrollo
efectivo de sistemas de software de alta
calidad.

INGENIERA DE SOFTWARE
La nocin de Ingeniera de software fue
primero propuesta en 1968, en donde se
discuti la llamada crisis del software, tras
descubrir que el desarrollo informal de
software no era muy bueno.
El desarrollo del software se detuvo gracias a
la dificultad de dar mantenimiento al ya
existente. Adems el costo del hardware
disminua y el del software se elevaba.
Por tal motivo, la introduccin de tcnicas en el
desarrollo de software fueron necesarias.
Actualmente, sin embargo, se tiene un mejor
entendimiento de las actividades involucradas
en el desarrollo de software. Se han
desarrollado
mtodos
efectivos
de
especificacin
de
software,
diseo
e
implementacin.

INGENIERA DE SOFTWARE
Software
Programas de computadora y documentacin asociada

Ingeniera de software
Disciplina de la ingeniera relacionada con
todos los aspectos de la produccin del
software.

INGENIERA DE SOFTWARE
Diferencia entre ingeniera de software y ciencias de la computacin.

La ingeniera de sistemas se encuentra


relacionada con los aspectos del
desarrollo de sistemas basados en
computadora,
incluyendo
hardware,
software y procesos de ingeniera
Proceso de software

Es un proceso de actividades en donde


la meta es el desarrollo o evolucin de
un software determinado.

INGENIERA DE SOFTWARE
Modelo de proceso de software

Una representacin simplificada de un


proceso de software, presentada desde una
perspectiva especfica.

Costos en la Ingeniera de software

Aproximadamente 60% de los costos son


de desarrollo, 40% son de prueba.

INGENIERA DE SOFTWARE
Mtodos de ingeniera de software
Los enfoques estructurados para el desarrollo de
software que incluyen modelos de sistemas,
notaciones, reglas, ventajas de diseo y guas de
proceso.
Herramientas CASE

Sistemas de software los cuales se realizan


con el fin de otorgar un soporte a las
actividades del proceso del software.

INGENIERA DE SOFTWARE
Aspectos

Descripcin

Software

Programas de computadora y documentacin asociada. Los


productos de software pueden ser desarrollados para un cliente
en particular o pueden ser desarrollados para un mercado
general.

Ingeniera de software

Disciplina de la ingeniera relacionada con todos los aspectos


de la produccin del software.

Diferencia entre
ingeniera de software
y ciencias de la
computacin.

La ciencia de la computacin se encuentra relacionada con


teoras y fundamentos; la ingeniera de software se relaciona
con aspectos prcticos de desarrollo y liberacin de software
til.

Proceso de software

Es un proceso de actividades en donde la meta es el desarrollo


o evolucin de un software determinado.

Modelo de proceso de
software

Una representacin simplificada de un proceso de software,


presentada desde una perspectiva especfica.

INGENIERA DE SOFTWARE
Aspectos

Descripcin

Costos en la
Ingeniera de software

Aproximadamente 60% de los costos son de desarrollo, 40%


son de prueba.

Mtodos de ingeniera
de software

Los enfoques estructurados para el desarrollo de software que


incluyen modelos de sistemas, notaciones, reglas, ventajas de
diseo y guas de proceso.

Herramientas CASE
(Computer-Aided
Software Engineering)

Sistemas de software los cuales se realizan con el fin de otorgar


un soporte a las actividades del proceso del software. Los
sistemas CASE son regularmente utilizados para el soporte de
mtodos.

Atributos de un buen
software

El software debe de otorgar la funcionalidad para la que fue


planeada y la calidad al usuario y debe de podrsele dar
mantenimiento y utilizacin adecuada.

Facetas de cambio
clave en la ingeniera
de software

Copias con alta diversidad y demandas para reducir los tiempos


perdidos y desarrollar software de calidad.

INGENIERA DE SOFTWARE
En la definicin de Ingeniera de Software se tienen 2 aspectos:

(1) Disciplina de la ingeniera. Los ingenieros hacen cosas para trabajar.


Ellos aplican teoras, mtodos y herramientas los cuales son apropiados,
pero ellos los usan de forma selectiva y siempre intentan descubrir
soluciones a problemas cuando no existen teoras aplicables y mtodos.
Los ingenieros tambin reconocen en que deben trabajar en cuestiones
financieras y organizacionales, de tal forma que acoplan las soluciones
dentro de las especificaciones planteadas.
(2) Todos los aspectos de produccin de software. La ingeniera de software
no se encuentra ligada con el proceso de tcnicas de desarrollo de
software tales como la gestin de proyectos y con el desarrollo de
herramientas, mtodos y teoras para soportar la produccin de software.

En general, los ingenieros de software adoptan un enfoque sistemtico y


organizado para realizar su trabajo, debido a que esta es la forma ms efectiva
para producir software de alta calidad.

PROCESOS DE SOFTWARE
ESPECIFICACIN DEL
SOFTWARE

DESARROLLO DEL
SOFTWARE

VALIDACIN DEL
SOFTWARE

EVOLUCIN DEL
SOFTWARE

Donde los clientes e ingenieros definen al software


que ser producido y las condiciones de su
operacin.

Donde se disea y se programa el software

Donde se checa el software y se asegura que hace


lo que el cliente desea.

Donde el software es modificado para adaptarse a


los requerimientos tanto del cliente como del
mercado.

MODELOS GENERALES O PARADIGMAS


DEL DESARROLLO DE SOFTWARE
Este
toma
las
actividades
sealadas
anteriormente descritas y las representa como
fases de procesos separadas tales como:
especificaciones de requerimientos, diseo de
software, implementacin y prueba.
Este
enfoque
interacta
con
las
actividades de especificacin, desarrollo y
validacin. Se desarrolla un sistema de
manera rpida de un conjunto de
especificaciones abstractas. El cual se
refina con entradas del cliente para
producir un sistema que satisfaga las
necesidades del cliente. El sistema
entonces se libera. De manera alternativa,
se puede reimplementar utilizando el
enfoque estructurado, para producir un
sistema robusto y adecuado.

MODELOS GENERALES O PARADIGMAS


DEL DESARROLLO DE SOFTWARE
Esta tcnica considera que las partes del
sistema existe actualmente. El proceso de
desarrollo del software se enfoca a la
integracin de dichas partes ms que a su
desarrollo desde el inicio.

DISTRIBUCIN DEL COSTO EN LAS


ACTIVIDADES DE LA INGENIERA DE
SOFTWARE
Modelo en cascada
0

Especificacin

25

Diseo

Modelo Iterativo
0

25

50

Desarrollo

75

Integracin y prueba

50

75

Especificacin
Desarrollo iterativo
Ingeniera de software basada en componentes
0

25

50

100

100

Prueba del sistema


100

75

Integracin y prueba
Especificacin
Desarrollo
Costos de desarrollo y evolucin para un tiempo de larga vida
0

100

Desarrollo del sistema

200

300

Evolucin del sistema

400

MODELOS DEL PROCESO DE


SOFTWARE
Este representa el proceso de un conjunto de
actividades, cada una de las cuales conlleva a
alguna transformacin. Esto muestra la manera
en la que la entrada al proceso, tal como la
especificacin, se transforma a la salida, tal como
el diseo. Las actividades aqu pueden
representar transformaciones realizadas por la
gente o por computadoras.

Representa los papeles de las personas


involucradas en el desarrollo del software y las
actividades de las cuales son responsables.

MODELOS DE DESCRIPCIN DE
SOFTWARE
Componente

Descripcin

Ejemplo

Descripciones del modelo del


sistema

Descripcin de los modelos del


sistema los cuales deberan de
ser desarrollados y la notacin
utilizada para definir estos
modelos

Modelos de objetos, modelos de flujos


de datos, modelos de mquinas de
estados, etc.

Reglas

Condiciones que siempre se


aplican a modelos del sistema

Cada entidad en un modelo del


sistema debe de tener un nombre
nico.

Recomendaciones

La heurstica la cual caracteriza


adecuados diseos prcticos en
este mtodo. Siguiendo estas
recomendaciones se tendr un
modelo
de
sistema
bien
organizado

Ningn objeto debera de tener ms


de 7 objetos asociados a l

Gua de procesos

Las descripciones de las


actividades que pueden ser
seguidas para el desarrollo de
modelos de sistemas y la
organizacin
de
estas
actividades.

Los atributos de objetos deberan de


ser documentados antes de definir las
operaciones asociadas con el objeto.

MODELOS DE DESCRIPCIN DE
SOFTWARE
Caractersticas del
producto

Descripcin

Mantenimiento

El software debe de ser escrito de tal forma que pueda


involucrar el cambio de las necesidades del cliente. Este es un
atributo crtico dado que cambios en el software son una
consecuencia inevitable en un ambiente de negocios

Dependencia

La dependencia del software tiene un rango de caractersticas,


incluyendo rentabilidad, seguridad y safety. La dependencia del
software no debera de causar problemas fsicos o econmicos
en el evento de falla del sistema

Eficiencia

El software no debe de tener problemas de uso en los recursos


del sistema tales como ciclos de memoria y del procesador. La
eficiencia de alguna forma incluye responsabilidad, tiempo de
procesamiento, utilizacin de memoria, etc.

Uso

EL software debe de ser utilizado, sin grandes esfuerzos por el


tipo de usuario para el cual fue diseado. Esto significa que se
debera de tener una interfaz de usuario apropiada y
documentacin adecuada.

Вам также может понравиться