SlideShare uma empresa Scribd logo
1 de 13
Baixar para ler offline
UNIVERSIDAD REGIONAL
AUTÓNOMA DE LOS ANDES




 TRABAJO DE INGENIERIA DE SOFTWARE


 INTEGRNTES: Ipiales Fernanda
              Oña Vanessa
PROCESOS DE SOFTWARE




Un proceso del software es un conjunto de actividades que conducen a la creación de
un producto software. Estas actividades pueden consistir en el desarrollo de software
desde cero en un lenguaje de programación estándar como Java o C. Sin embargo,
cada vez más, se desarrolla nuevo software ampliando y modificando los sistemas
existentes y configurando e integrando software comercial o componentes del
sistema.
ACTIVIDADES FUNDAMENTALES


1. Especificación del software. Se debe definir la funcionalidad del
software y las restricciones
en su operación.
2. Diseño e implementación del software. Se debe producir software que
cumpla su especificación.
3. Validación del software. Se debe validar el software para asegurar que
hace lo que el
cliente desea.
4. Evolución del software. El software debe evolucionar para cubrir las
necesidades cambiantes
del cliente.
MODELOS DEL PROCESO DEL SOFTWARE

Un modelo del proceso del software es una representación abstracta de un proceso
del software. Cada modelo de proceso representa un proceso desde una perspectiva
particular, y así proporciona sólo información parcial sobre ese proceso.
Modelos de procesos:

1.-El modelo en cascada. Considera las actividades fundamentales del proceso de
especificación, desarrollo, validación y evolución, y los representa como fases
separadas del proceso, tales como la especificación de requerimientos, el diseño del
software, la implementación, las pruebas, etcétera.

2. Desarrollo evolutivo. Este enfoque entrelaza las actividades de especificación,
desarrollo y validación.

3. Ingeniería del software basada en componentes. Este enfoque se basa en la
existencia de un número significativo de componentes reutilizables.
MODELO CASCADA
Análisis y definición de requerimientos. Los servicios, restricciones y metas del sistema
se definen a partir de las consultas con los usuarios. Entonces, se definen en detalle
y sirven como una especificación del sistema.

2. Diseño del sistema y del software. El proceso de diseño del sistema divide los
requerimientos en sistemas hardware o software. Establece una arquitectura completa del
sistema..
3. Implementación y prueba de unidades. Durante esta etapa, el diseño del software se
lleva a cabo como un conjunto o unidades de programas. La prueba de unidades implica
verificar que cada una cumpla su especificación.

4. Integración y prueba del sistema. Los programas o las unidades individuales de
programas se integran y prueban como un sistema completo para asegurar que se cumplan
los requerimientos del software. Después de las pruebas, el sistema software se
entrega al cliente.

5. Funcionamiento y mantenimiento. El mantenimiento implica corregir errores no
descubiertos en las etapas anteriores del ciclo de vida, mejorar la implementación de las
unidades del sistema y resaltar los servicios del sistema una vez que se descubren nuevos
requerimientos.
DESARROLLO EVOLUTIVO

El desarrollo evolutivo se basa en la idea de desarrollar una implementación
inicial, exponiéndola
a los comentarios del usuario y refinándola a través de las diferentes versiones
hasta que se desarrolla un sistema adecuado

Existen dos tipos de desarrollo evolutivo:

1. Desarrollo exploratorio, donde el objetivo del proceso es trabajar con el
cliente para
explorar sus requerimientos y entregar un sistema final. El desarrollo empieza
con las partes del sistema que se comprenden mejor. El sistema evoluciona
agregando nuevos atributos propuestos por el cliente.

2. Prototipos desechadles, donde el objetivo del proceso de desarrollo
evolutivo es comprender
los requerimientos del cliente y entonces desarrollar una definición mejorada
de los requerimientos para el sistema. El prototipo se centra en experimentar
con los requerimientos del cliente que no se comprenden del todo
INGENIERIA DEL SOFTWARE BASADA EN
                            COMPONENTES
En la mayoría de los proyectos de software existe algo de reutilización de software. Por lo general, esto sucede
informalmente cuando las personas que trabajan en el proyecto conocen di
senos o código similares al requerido. Los buscan, los modifican según lo creen necesario y
los incorporan en el sistema..
FASES:
Análisis de componentes. Dada la especificación de requerimientos, se buscan los
componentes para implementar esta especificación. Por lo general, no existe una concordancia
exacta y los componentes que se utilizan sólo proporcionan parte de la funcionalidad
requerida.

2. Modificación de requerimientos. En esta etapa, los requerimientos se analizan utilizando
información acerca de los componentes que se han descubierto. Entonces, estos
componentes se modifican para reflejar los componentes disponibles.

3. Diseño del sistema con reutilización. En esta fase se diseña o se reutiliza un marco de
trabajo para el sistema. Los diseñadores tienen en cuenta los componentes que se reutilizan
y organizan el marco de trabajo para que los satisfaga.

4. Desarrollo e integración. Para crear el sistema, el software que no se puede adquirir
externamente se desarrolla, y los componentes y los sistemas COTS se integran. En
este modelo, la integración de sistemas es parte del proceso de desarrollo, más que una
actividad separada.
ITERACIÓN DE PROCESOS

Los cambios son inevitables en todos los proyectos de software grandes.
Los requerimientos del sistema cambian cuando el negocio que procura el
sistema responde a las presiones externas. Cuando se dispone de nuevas
tecnologías, cambian los diseños y la implementación.

MODELOS DE APOYO PARA LA ITERACIÓN DE PROCESOS
1. Entrega incremental La especificación, el diseño y la implementación
del software se
dividen en una serie de incrementos, los cuales se desarrollan por turnos;

. 2. Desarrollo en espiral El desarrollo del sistema gira en espiral hacia
fuera, empezando
con un esbozo inicial y terminando con el desarrollo final del mismo.
FASES PRINCIPALES EN EL PROCESO DE INGENIERÍA DE REQUERIMIENTOS


Estudio de viabilidad. Se estima si las necesidades del usuario se pueden satisfacer con
las tecnologías actuales de software y hardware.

2. Obtención y análisis de requerimientos. Es el proceso de obtener los requerimientos
del sistema por medio de la observación de los sistemas existentes, discusiones con los
usuarios potenciales y proveedores, el análisis de tareas, etcétera.

3. Especificación de requerimientos. Es la actividad de traducir la información recopilada
durante la actividad de análisis en un documento que define un conjunto de requerimientos.
En este documento se pueden incluir dos tipos de requerimientos: los requerimientos
del usuario, y los requerimientos del sistema.

4. Validación de requerimientos. Esta actividad comprueba la veracidad, consistencia y
completitud de los requerimientos. Durante este proceso, inevitablemente se descubren
errores en el documento de requerimientos. Se debe modificar entonces para corregir
estos problemas.
RUP (El Proceso Unificado de Rational)
El RUP es un modelo en fases que identifica cuatro fases diferentes en el proceso del software.
Sin embargo, a diferencia del modelo en cascada donde las fases se equiparan con las actividades
del proceso, las fases en el RUP están mucho más relacionadas con asuntos de negocio
más que técnicos.

FASES:
FASES METODOLOGÍA RUP

1. Inicio. El objetivo de la fase de inicio es el de establecer un caso de negocio para el
sistema. Se deben identificar todas las entidades externas (personas y sistemas) que
interactuarán con el sistema y definir estas interacciones.
2.- Elaboración. Los objetivos de la fase de elaboración son desarrollar una comprensión
del dominio del problema, establecer un marco de trabajo arquitectónico para el sistema,
desarrollar el plan del proyecto e identificar los riesgos clave del proyecto.
3.- Construcción. La fase de construcción fundamentalmente comprende el diseño del
sistema,
la programación y las pruebas. Durante esta fase se desarrollan e integran las
partes del sistema.
4. Transición. La fase final del RUP se ocupa de mover el sistema desde la comunidad
de desarrollo a la comunidad del usuario y hacerlo trabajar en un entorno real. Al terminar
esta fase, se debe tener un sistema software documentado que funciona correctamente
en su
entorno operativo.
INGENIERÍA DEL SOFTWARE ASISTIDA POR COMPUTADORA

Ingeniería del Software Asistida por Computadora (CASE) es el nombre que se le da al software
que se utiliza para ayudar a las actividades del proceso del software como la ingeniería de
requerimientos, el diseño, el desarrollo de programas y las pruebas.
La tecnología CASE proporciona ayuda al proceso del software automatizando algunas de
sus actividades, así como proporcionando información acerca del software en desarrollo
ALGUNOS EJEMPLOS :
1. El desarrollo de modelos gráficos del sistema como parte de la especificación de
requerimientos o del diseño de software.

2. La comprensión del diseño utilizando un diccionario de datos que tiene información
sobre las entidades y relaciones del diseño.

3. La generación de interfaces de usuario a partir de la descripción gráfica de la interfaz
que es elaborada de forma interactiva por el usuario.

4. La depuración de programas por medio de la provisión de la información proporcionada
por los programas en ejecución.
5. La conversión automática de programas de una versión anterior de una lenguaje de
programación, como COBOL, a una versión más reciente.

Mais conteúdo relacionado

Mais procurados

Ciclo de vida de un proyecto de Software.
Ciclo de vida de un proyecto de Software.Ciclo de vida de un proyecto de Software.
Ciclo de vida de un proyecto de Software.Edwin Belduma
 
Modelo De Cascada
Modelo De CascadaModelo De Cascada
Modelo De Cascadaweysiba
 
Etapas de Desarrollo Software
Etapas de Desarrollo SoftwareEtapas de Desarrollo Software
Etapas de Desarrollo SoftwareDaniel Román
 
Modelos de ciclo de vida del software
Modelos de ciclo de vida del softwareModelos de ciclo de vida del software
Modelos de ciclo de vida del softwareIEO Santo Tomás
 
Implementacion de software
Implementacion de softwareImplementacion de software
Implementacion de softwareTom Rodriguez
 
Fases de un proyecto de desarrollo de software
Fases de un proyecto de desarrollo de softwareFases de un proyecto de desarrollo de software
Fases de un proyecto de desarrollo de softwareEugenio Del Pozo Dipre
 
Ingeniería del software
Ingeniería del softwareIngeniería del software
Ingeniería del softwareJoxany Chávez
 
Análisis del Proyecto de Software
Análisis del Proyecto de SoftwareAnálisis del Proyecto de Software
Análisis del Proyecto de SoftwareMaricela Ramirez
 
Modelo Cascada y Espiral
Modelo Cascada y EspiralModelo Cascada y Espiral
Modelo Cascada y Espiraljuanksi28
 
Desarrollo de software basado en componentes
Desarrollo de software basado en componentesDesarrollo de software basado en componentes
Desarrollo de software basado en componentesmellcv
 
Tipos de modelos de procesos
Tipos de modelos de procesosTipos de modelos de procesos
Tipos de modelos de procesosEIYSC
 
PROCESOS DE INGENIERIA DEL SW
PROCESOS DE INGENIERIA DEL SWPROCESOS DE INGENIERIA DEL SW
PROCESOS DE INGENIERIA DEL SWRaquel Solano
 
Fases de desarrollo de un programa...
Fases de desarrollo de un programa... Fases de desarrollo de un programa...
Fases de desarrollo de un programa... grachika
 
Ciclo Vida Sw
Ciclo Vida SwCiclo Vida Sw
Ciclo Vida Swmsc080277
 
Herramientas y entornos de implementacion de software
Herramientas y entornos de implementacion de softwareHerramientas y entornos de implementacion de software
Herramientas y entornos de implementacion de softwareMiguel Sanchez
 

Mais procurados (20)

7iSF-1 ingeniería de software
7iSF-1   ingeniería de software7iSF-1   ingeniería de software
7iSF-1 ingeniería de software
 
Ciclo de vida de un proyecto de Software.
Ciclo de vida de un proyecto de Software.Ciclo de vida de un proyecto de Software.
Ciclo de vida de un proyecto de Software.
 
Modelo De Cascada
Modelo De CascadaModelo De Cascada
Modelo De Cascada
 
Etapas de Desarrollo Software
Etapas de Desarrollo SoftwareEtapas de Desarrollo Software
Etapas de Desarrollo Software
 
Modelos de ciclo de vida del software
Modelos de ciclo de vida del softwareModelos de ciclo de vida del software
Modelos de ciclo de vida del software
 
Implementacion de software
Implementacion de softwareImplementacion de software
Implementacion de software
 
Exposicion 3
Exposicion 3Exposicion 3
Exposicion 3
 
Fases de un proyecto de desarrollo de software
Fases de un proyecto de desarrollo de softwareFases de un proyecto de desarrollo de software
Fases de un proyecto de desarrollo de software
 
Ingeniería del software
Ingeniería del softwareIngeniería del software
Ingeniería del software
 
Análisis del Proyecto de Software
Análisis del Proyecto de SoftwareAnálisis del Proyecto de Software
Análisis del Proyecto de Software
 
Modelo Cascada y Espiral
Modelo Cascada y EspiralModelo Cascada y Espiral
Modelo Cascada y Espiral
 
Desarrollo de software basado en componentes
Desarrollo de software basado en componentesDesarrollo de software basado en componentes
Desarrollo de software basado en componentes
 
Tipos de modelos de procesos
Tipos de modelos de procesosTipos de modelos de procesos
Tipos de modelos de procesos
 
Metodologia clasica en cascada
Metodologia clasica en cascadaMetodologia clasica en cascada
Metodologia clasica en cascada
 
PROCESOS DE INGENIERIA DEL SW
PROCESOS DE INGENIERIA DEL SWPROCESOS DE INGENIERIA DEL SW
PROCESOS DE INGENIERIA DEL SW
 
Fases de desarrollo de un programa...
Fases de desarrollo de un programa... Fases de desarrollo de un programa...
Fases de desarrollo de un programa...
 
Jose r ojas ii
Jose r ojas iiJose r ojas ii
Jose r ojas ii
 
Ciclo Vida Sw
Ciclo Vida SwCiclo Vida Sw
Ciclo Vida Sw
 
Ingenieria de software
Ingenieria de softwareIngenieria de software
Ingenieria de software
 
Herramientas y entornos de implementacion de software
Herramientas y entornos de implementacion de softwareHerramientas y entornos de implementacion de software
Herramientas y entornos de implementacion de software
 

Destaque

Reutilización de software
Reutilización de softwareReutilización de software
Reutilización de softwareKevin F. Mena
 
Reutilización de software
Reutilización de softwareReutilización de software
Reutilización de softwareAntonio Moreno
 
Datos abiertos, reutilización de la información y datos enlazados. Archivos y...
Datos abiertos, reutilización de la información y datos enlazados. Archivos y...Datos abiertos, reutilización de la información y datos enlazados. Archivos y...
Datos abiertos, reutilización de la información y datos enlazados. Archivos y...Julián Moyano Collado
 
Acupuntura y medicina integrativa
Acupuntura y medicina integrativa Acupuntura y medicina integrativa
Acupuntura y medicina integrativa Adrian Lopez
 
Seminario 3 reutilización del software
Seminario 3 reutilización del softwareSeminario 3 reutilización del software
Seminario 3 reutilización del softwarepto0404
 
Educacion estetica.diapositivas
Educacion estetica.diapositivasEducacion estetica.diapositivas
Educacion estetica.diapositivasdugartemayi
 
Metodología de desarrollo de software basada en componentes
Metodología de desarrollo de software basada en componentesMetodología de desarrollo de software basada en componentes
Metodología de desarrollo de software basada en componentesEmmanuel Fontán
 
Desarrollo de software basado en componentes
Desarrollo de software basado en componentesDesarrollo de software basado en componentes
Desarrollo de software basado en componentesUlises Cruz
 
Modelo De Desarrollo Evolutivo
Modelo De Desarrollo EvolutivoModelo De Desarrollo Evolutivo
Modelo De Desarrollo Evolutivocamilosena89
 
Old Dominion vs. Charlotte: Baseball Game March 29
Old Dominion vs. Charlotte: Baseball Game March 29Old Dominion vs. Charlotte: Baseball Game March 29
Old Dominion vs. Charlotte: Baseball Game March 29Patrick Conrad
 
Trabalho Limpar Portugal
Trabalho Limpar PortugalTrabalho Limpar Portugal
Trabalho Limpar PortugalAdminefa
 
Monitoramento e gestão por indicadores de controle para o canteiro de obras
Monitoramento e gestão por indicadores de controle para o canteiro de obrasMonitoramento e gestão por indicadores de controle para o canteiro de obras
Monitoramento e gestão por indicadores de controle para o canteiro de obrasTeclógica
 
Las artesanías
Las artesanías Las artesanías
Las artesanías vale-mosca
 
tabaco. propaganda.
tabaco. propaganda.tabaco. propaganda.
tabaco. propaganda.marujuli
 

Destaque (20)

Microaprendizaje
MicroaprendizajeMicroaprendizaje
Microaprendizaje
 
Ensayo
EnsayoEnsayo
Ensayo
 
Reutilización de software
Reutilización de softwareReutilización de software
Reutilización de software
 
Reutilización de software
Reutilización de softwareReutilización de software
Reutilización de software
 
Datos abiertos, reutilización de la información y datos enlazados. Archivos y...
Datos abiertos, reutilización de la información y datos enlazados. Archivos y...Datos abiertos, reutilización de la información y datos enlazados. Archivos y...
Datos abiertos, reutilización de la información y datos enlazados. Archivos y...
 
Acupuntura y medicina integrativa
Acupuntura y medicina integrativa Acupuntura y medicina integrativa
Acupuntura y medicina integrativa
 
Seminario 3 reutilización del software
Seminario 3 reutilización del softwareSeminario 3 reutilización del software
Seminario 3 reutilización del software
 
Educacion estetica.diapositivas
Educacion estetica.diapositivasEducacion estetica.diapositivas
Educacion estetica.diapositivas
 
Metodología de desarrollo de software basada en componentes
Metodología de desarrollo de software basada en componentesMetodología de desarrollo de software basada en componentes
Metodología de desarrollo de software basada en componentes
 
Puntos gatillo en dolor de espalda
Puntos gatillo en dolor de espaldaPuntos gatillo en dolor de espalda
Puntos gatillo en dolor de espalda
 
Dolor de origen muscular
Dolor de origen muscular Dolor de origen muscular
Dolor de origen muscular
 
Modelos evolutivos. incremental y espiral
Modelos evolutivos. incremental y espiralModelos evolutivos. incremental y espiral
Modelos evolutivos. incremental y espiral
 
Desarrollo de software basado en componentes
Desarrollo de software basado en componentesDesarrollo de software basado en componentes
Desarrollo de software basado en componentes
 
Modelo De Desarrollo Evolutivo
Modelo De Desarrollo EvolutivoModelo De Desarrollo Evolutivo
Modelo De Desarrollo Evolutivo
 
Técnicas de relajación
Técnicas de relajaciónTécnicas de relajación
Técnicas de relajación
 
Old Dominion vs. Charlotte: Baseball Game March 29
Old Dominion vs. Charlotte: Baseball Game March 29Old Dominion vs. Charlotte: Baseball Game March 29
Old Dominion vs. Charlotte: Baseball Game March 29
 
Trabalho Limpar Portugal
Trabalho Limpar PortugalTrabalho Limpar Portugal
Trabalho Limpar Portugal
 
Monitoramento e gestão por indicadores de controle para o canteiro de obras
Monitoramento e gestão por indicadores de controle para o canteiro de obrasMonitoramento e gestão por indicadores de controle para o canteiro de obras
Monitoramento e gestão por indicadores de controle para o canteiro de obras
 
Las artesanías
Las artesanías Las artesanías
Las artesanías
 
tabaco. propaganda.
tabaco. propaganda.tabaco. propaganda.
tabaco. propaganda.
 

Semelhante a Trabajo 2 exposicion

Semelhante a Trabajo 2 exposicion (20)

Proceso del Software
Proceso del Software Proceso del Software
Proceso del Software
 
Modelo de cascadaa
Modelo de cascadaaModelo de cascadaa
Modelo de cascadaa
 
Proceso de desarrollo de sofware
Proceso de desarrollo de sofwareProceso de desarrollo de sofware
Proceso de desarrollo de sofware
 
AMSI
AMSIAMSI
AMSI
 
Ciclo de vida de sistemas
Ciclo de vida de sistemasCiclo de vida de sistemas
Ciclo de vida de sistemas
 
Sdf p4
Sdf p4Sdf p4
Sdf p4
 
Modelos del proceso del software
Modelos del proceso del softwareModelos del proceso del software
Modelos del proceso del software
 
Ingeniería de Software
Ingeniería de SoftwareIngeniería de Software
Ingeniería de Software
 
Proceso de desarrollo de si
Proceso de desarrollo de siProceso de desarrollo de si
Proceso de desarrollo de si
 
Modelos del software
Modelos del softwareModelos del software
Modelos del software
 
4.3pptx
4.3pptx4.3pptx
4.3pptx
 
Los modelos de desarrollo de software (hendrick rodriguez )
Los modelos de desarrollo de software (hendrick rodriguez )Los modelos de desarrollo de software (hendrick rodriguez )
Los modelos de desarrollo de software (hendrick rodriguez )
 
Taller de Programación Distribuida
Taller de Programación DistribuidaTaller de Programación Distribuida
Taller de Programación Distribuida
 
Curso de Ingeniería de Software - Capitulo4
Curso de Ingeniería de Software - Capitulo4Curso de Ingeniería de Software - Capitulo4
Curso de Ingeniería de Software - Capitulo4
 
Jose gpe act4
Jose gpe act4Jose gpe act4
Jose gpe act4
 
Software
SoftwareSoftware
Software
 
Modelos de desarrollo de software
Modelos de desarrollo de softwareModelos de desarrollo de software
Modelos de desarrollo de software
 
Presentación metodología
Presentación metodologíaPresentación metodología
Presentación metodología
 
Capitulo2
Capitulo2Capitulo2
Capitulo2
 
XXXS
XXXSXXXS
XXXS
 

Trabajo 2 exposicion

  • 1. UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES TRABAJO DE INGENIERIA DE SOFTWARE INTEGRNTES: Ipiales Fernanda Oña Vanessa
  • 2. PROCESOS DE SOFTWARE Un proceso del software es un conjunto de actividades que conducen a la creación de un producto software. Estas actividades pueden consistir en el desarrollo de software desde cero en un lenguaje de programación estándar como Java o C. Sin embargo, cada vez más, se desarrolla nuevo software ampliando y modificando los sistemas existentes y configurando e integrando software comercial o componentes del sistema.
  • 3. ACTIVIDADES FUNDAMENTALES 1. Especificación del software. Se debe definir la funcionalidad del software y las restricciones en su operación. 2. Diseño e implementación del software. Se debe producir software que cumpla su especificación. 3. Validación del software. Se debe validar el software para asegurar que hace lo que el cliente desea. 4. Evolución del software. El software debe evolucionar para cubrir las necesidades cambiantes del cliente.
  • 4. MODELOS DEL PROCESO DEL SOFTWARE Un modelo del proceso del software es una representación abstracta de un proceso del software. Cada modelo de proceso representa un proceso desde una perspectiva particular, y así proporciona sólo información parcial sobre ese proceso. Modelos de procesos: 1.-El modelo en cascada. Considera las actividades fundamentales del proceso de especificación, desarrollo, validación y evolución, y los representa como fases separadas del proceso, tales como la especificación de requerimientos, el diseño del software, la implementación, las pruebas, etcétera. 2. Desarrollo evolutivo. Este enfoque entrelaza las actividades de especificación, desarrollo y validación. 3. Ingeniería del software basada en componentes. Este enfoque se basa en la existencia de un número significativo de componentes reutilizables.
  • 6. Análisis y definición de requerimientos. Los servicios, restricciones y metas del sistema se definen a partir de las consultas con los usuarios. Entonces, se definen en detalle y sirven como una especificación del sistema. 2. Diseño del sistema y del software. El proceso de diseño del sistema divide los requerimientos en sistemas hardware o software. Establece una arquitectura completa del sistema.. 3. Implementación y prueba de unidades. Durante esta etapa, el diseño del software se lleva a cabo como un conjunto o unidades de programas. La prueba de unidades implica verificar que cada una cumpla su especificación. 4. Integración y prueba del sistema. Los programas o las unidades individuales de programas se integran y prueban como un sistema completo para asegurar que se cumplan los requerimientos del software. Después de las pruebas, el sistema software se entrega al cliente. 5. Funcionamiento y mantenimiento. El mantenimiento implica corregir errores no descubiertos en las etapas anteriores del ciclo de vida, mejorar la implementación de las unidades del sistema y resaltar los servicios del sistema una vez que se descubren nuevos requerimientos.
  • 7. DESARROLLO EVOLUTIVO El desarrollo evolutivo se basa en la idea de desarrollar una implementación inicial, exponiéndola a los comentarios del usuario y refinándola a través de las diferentes versiones hasta que se desarrolla un sistema adecuado Existen dos tipos de desarrollo evolutivo: 1. Desarrollo exploratorio, donde el objetivo del proceso es trabajar con el cliente para explorar sus requerimientos y entregar un sistema final. El desarrollo empieza con las partes del sistema que se comprenden mejor. El sistema evoluciona agregando nuevos atributos propuestos por el cliente. 2. Prototipos desechadles, donde el objetivo del proceso de desarrollo evolutivo es comprender los requerimientos del cliente y entonces desarrollar una definición mejorada de los requerimientos para el sistema. El prototipo se centra en experimentar con los requerimientos del cliente que no se comprenden del todo
  • 8. INGENIERIA DEL SOFTWARE BASADA EN COMPONENTES En la mayoría de los proyectos de software existe algo de reutilización de software. Por lo general, esto sucede informalmente cuando las personas que trabajan en el proyecto conocen di senos o código similares al requerido. Los buscan, los modifican según lo creen necesario y los incorporan en el sistema.. FASES: Análisis de componentes. Dada la especificación de requerimientos, se buscan los componentes para implementar esta especificación. Por lo general, no existe una concordancia exacta y los componentes que se utilizan sólo proporcionan parte de la funcionalidad requerida. 2. Modificación de requerimientos. En esta etapa, los requerimientos se analizan utilizando información acerca de los componentes que se han descubierto. Entonces, estos componentes se modifican para reflejar los componentes disponibles. 3. Diseño del sistema con reutilización. En esta fase se diseña o se reutiliza un marco de trabajo para el sistema. Los diseñadores tienen en cuenta los componentes que se reutilizan y organizan el marco de trabajo para que los satisfaga. 4. Desarrollo e integración. Para crear el sistema, el software que no se puede adquirir externamente se desarrolla, y los componentes y los sistemas COTS se integran. En este modelo, la integración de sistemas es parte del proceso de desarrollo, más que una actividad separada.
  • 9. ITERACIÓN DE PROCESOS Los cambios son inevitables en todos los proyectos de software grandes. Los requerimientos del sistema cambian cuando el negocio que procura el sistema responde a las presiones externas. Cuando se dispone de nuevas tecnologías, cambian los diseños y la implementación. MODELOS DE APOYO PARA LA ITERACIÓN DE PROCESOS 1. Entrega incremental La especificación, el diseño y la implementación del software se dividen en una serie de incrementos, los cuales se desarrollan por turnos; . 2. Desarrollo en espiral El desarrollo del sistema gira en espiral hacia fuera, empezando con un esbozo inicial y terminando con el desarrollo final del mismo.
  • 10. FASES PRINCIPALES EN EL PROCESO DE INGENIERÍA DE REQUERIMIENTOS Estudio de viabilidad. Se estima si las necesidades del usuario se pueden satisfacer con las tecnologías actuales de software y hardware. 2. Obtención y análisis de requerimientos. Es el proceso de obtener los requerimientos del sistema por medio de la observación de los sistemas existentes, discusiones con los usuarios potenciales y proveedores, el análisis de tareas, etcétera. 3. Especificación de requerimientos. Es la actividad de traducir la información recopilada durante la actividad de análisis en un documento que define un conjunto de requerimientos. En este documento se pueden incluir dos tipos de requerimientos: los requerimientos del usuario, y los requerimientos del sistema. 4. Validación de requerimientos. Esta actividad comprueba la veracidad, consistencia y completitud de los requerimientos. Durante este proceso, inevitablemente se descubren errores en el documento de requerimientos. Se debe modificar entonces para corregir estos problemas.
  • 11. RUP (El Proceso Unificado de Rational) El RUP es un modelo en fases que identifica cuatro fases diferentes en el proceso del software. Sin embargo, a diferencia del modelo en cascada donde las fases se equiparan con las actividades del proceso, las fases en el RUP están mucho más relacionadas con asuntos de negocio más que técnicos. FASES:
  • 12. FASES METODOLOGÍA RUP 1. Inicio. El objetivo de la fase de inicio es el de establecer un caso de negocio para el sistema. Se deben identificar todas las entidades externas (personas y sistemas) que interactuarán con el sistema y definir estas interacciones. 2.- Elaboración. Los objetivos de la fase de elaboración son desarrollar una comprensión del dominio del problema, establecer un marco de trabajo arquitectónico para el sistema, desarrollar el plan del proyecto e identificar los riesgos clave del proyecto. 3.- Construcción. La fase de construcción fundamentalmente comprende el diseño del sistema, la programación y las pruebas. Durante esta fase se desarrollan e integran las partes del sistema. 4. Transición. La fase final del RUP se ocupa de mover el sistema desde la comunidad de desarrollo a la comunidad del usuario y hacerlo trabajar en un entorno real. Al terminar esta fase, se debe tener un sistema software documentado que funciona correctamente en su entorno operativo.
  • 13. INGENIERÍA DEL SOFTWARE ASISTIDA POR COMPUTADORA Ingeniería del Software Asistida por Computadora (CASE) es el nombre que se le da al software que se utiliza para ayudar a las actividades del proceso del software como la ingeniería de requerimientos, el diseño, el desarrollo de programas y las pruebas. La tecnología CASE proporciona ayuda al proceso del software automatizando algunas de sus actividades, así como proporcionando información acerca del software en desarrollo ALGUNOS EJEMPLOS : 1. El desarrollo de modelos gráficos del sistema como parte de la especificación de requerimientos o del diseño de software. 2. La comprensión del diseño utilizando un diccionario de datos que tiene información sobre las entidades y relaciones del diseño. 3. La generación de interfaces de usuario a partir de la descripción gráfica de la interfaz que es elaborada de forma interactiva por el usuario. 4. La depuración de programas por medio de la provisión de la información proporcionada por los programas en ejecución. 5. La conversión automática de programas de una versión anterior de una lenguaje de programación, como COBOL, a una versión más reciente.