Está en la página 1de 12

UNIVERSIDAD TECNOLGICA AMRICA

Ingeniera de Software
Nombre: Nivel: Victoria Guamn Octavo Semestre Informtica

CONTENIDO 1 1.1 1.2 CICLO DE DESARROLLO DEL SOFTWARE ------------------------------------------ 3 Aproximacin convencional ------------------------------------------------------------------- 3 Aproximacin prototipo ------------------------------------------------------------------------ 4

1.2 Aproximacin evolutiva ----------------------------------------------------------------------------- 5

1.3
1.4 1.5

Aproximacin incremental --------------------------------------------------------------------- 6 Aproximacin espiral ---------------------------------------------------------------------------- 6 Aproximacin basada en transformaciones ----------------------------------------------- 7 HERRAMIENTAS CASE ------------------------------------------------------------------ 8 Definicin -------------------------------------------------------------------------------------------- 8 Objetivos:-------------------------------------------------------------------------------------------- 8 Evolucin -------------------------------------------------------------------------------------------- 9 Tipos de CASE ------------------------------------------------------------------------------------- 10

2 2.1 2.2 2.3 2.4

2.4.1 Clasificacin en funcin de las fases del ciclo de vida abarcadas ----------------- 10 2.4.2 Clasificacin, utilizando la funcionalidad como criterio principal: ---------------- 10

CICLO DE DESARROLLO DEL SOFTWARE

El software se desarrolla, no se fabrica. Ambas actividades se dirigen a la construccin de un "producto", pero los mtodos son diferentes. Los costes del software se encuentran en la ingeniera, esto implica que los proyectos no se pueden gestionar como si lo fueran de fabricacin. A mediados de la dcada de 1980, se introdujo el concepto de "fbrica de software", que recomienda el uso de herramientas para el desarrollo automtico del software. El software no se estropea La formalizacin del proceso de desarrollo se define como un marco de referencia denominado ciclo de desarrollo del software o ciclo de vida del desarrollo del software o ciclo de vida del desarrollo. Se puede describir como, "el perodo de tiempo que comienza con la decisin de desarrollar un producto software y finaliza cuando se ha entregado ste". Este ciclo, por lo general incluye, una fase de requisitos, fase de diseo, fase de implantacin, fase de prueba, y a veces, fase de instalacin y aceptacin. El ciclo de desarrollo software se utiliza para estructurar las actividades que se llevan a cabo en el desarrollo de un producto software. A pesar de que no hay acuerdo acerca del uso y la forma del modelo, este sigue siendo til para la comprensin y el control del proceso. Seguidamente se exponen las distintas aproximaciones de desarrollo de software, en funcin del tipo de ciclo de vida:

1.1

Aproximacin convencional

Se introdujo como una tcnica rgida para mejorar la calidad y reducir los costos del desarrollo de software. Tradicionalmente es conocido como modelo en cascada, porque su filosofa es completar un paso con un alto grado de exactitud, antes de empezar el siguiente. Esquemticamente se puede representar de la siguiente forma:

1.2

Aproximacin prototipo

Es habitual que en un proyecto software no se identifiquen los requisitos detallados de entrada, procesamiento o salida. En otros casos no se est seguro de la eficiencia de un algoritmo, o de la forma en que se ha de implantar la interface hombre-mquina. En casos as, lo habitual es construir un prototipo, que idealmente sirviera como mecanismo para identificar los requisitos del software. Esta aproximacin consiste en realizar la fase de definicin de requisitos del sistema en base a estos tres factores: Un alto grado de iteracin Un muy alto grado de participacin del usuario Un uso extensivo de prototipos

1.2 Aproximacin evolutiva

En esta aproximacin el nfasis est en lograr un sistema flexible. Se diferencia de la aproximacin anterior, en que en esta los requisitos cambian continuamente, lo cual

implicara en el caso previo que las iteraciones no tendran fin.

1.3 Aproximacin incremental


La diferencia con la aproximacin anterior es que en este caso cada versin parte de una previa sin cambios pero con nuevas funciones, mientras que la aproximacin evolutiva cada vez se desarrolla una nueva versin de todo el sistema.

1.4 Aproximacin espiral


Nace con el objetivo de captar lo mejor de la aproximacin convencional y de la de prototipo, aadiendo un nuevo componente, el anlisis de riesgos.

1.5 Aproximacin basada en transformaciones


Con la aparicin de las herramientas CASE junto con los generadores de cdigo, el ciclo de desarrollo software en cascada ha cambiado a un ciclo de vida basado en transformaciones. La utilizacin de herramientas CASE afecta a todas las fases del ciclo de vida del software. Este ciclo de vida se puede considerar como una serie de transformaciones. Primero se definen los requisitos del sistema, seguidamente existe un proceso de transformacin que hace que la especificacin se convierta en un diseo lgico del sistema. Posteriormente, este sufre otro proceso de transformacin para lograr un diseo fsico, es decir que responda a la tecnologa destino La tecnologa CASE propone que estos procesos de transformacin sean lo ms automatizables posible. Sus ventajas son:

o o o o o

Posibilidad de comprobacin de errores en etapas iniciales de desarrollo. Posibilidad de realizar el mantenimiento en el mbito de especificacin. Soporte de rastreabilidad de los requisitos Soporte de reusabilidad Potencia la especificacin orientada al problema

HERRAMIENTAS CASE

2.1 Definicin
CASE (Software de Ingeniera Asistida por Ordenador). Se puede definir a las Herramientas CASE como un conjunto de programas y ayudas que dan asistencia a los analistas, ingenieros de software y desarrolladores, durante todos los pasos o en algunas faces del Ciclo de Vida de desarrollo de un Software permitiendo llevar a cabo el resto de tareas de modo automatizado, eficiente y efectivo posible. Se puede ver al CASE como la unin de las herramientas automticas de software y las metodologas de desarrollo de software formales. Permiten a los analistas tener ms tiempo para el anlisis y diseo y minimizar el tiempo para codificar y probar. La principal ventaja de la utilizacin de una herramienta CASE, es la mejora de la calidad de los desarrollos realizados y, en segundo trmino, el aumento de la productividad. Para conseguir estos dos objetivos es conveniente contar con una organizacin y una metodologa de trabajo, adems de la propia herramienta. La mejor razn para la creacin de estas herramientas fue el incremento en la velocidad de desarrollo de los sistemas. Por esto, las compaas pudieron desarrollar sistemas sin encarar el problema de tener cambios en las necesidades del negocio, antes de finalizar el proceso de desarrollo.

2.2 Objetivos:
y

Permitir la aplicacin prctica de metodologas estructuradas, las cuales al ser realizadas con una herramienta se consigue agilizar el trabajo. Facilitar la realizacin de prototipos y el desarrollo conjunto de aplicaciones.

y y y y y

Simplificar el mantenimiento de los programas. Mejorar y estandarizar la documentacin. Aumentar la portabilidad de las aplicaciones. Facilitar la reutilizacin de componentes software. Permitir un desarrollo y un refinamiento visual de las aplicaciones, mediante la utilizacin de grficos.

Estos Objetivos se dividen en dos grupos que son Automatizar: El desarrollo del software La documentacin La generacin del cdigo El chequeo de errores La gestin del proyecto Permitir: La reutilizacin del software La portabilidad del software

La estandarizacin de la documentacin

2.3 Evolucin
A inicios de los 80s Ayuda en la documentacin por computadora. Diagramacin asistida por computadora. Herramientas de anlisis y diseo. A mediados de los 80s Diseo automtico de anlisis y pruebas. Repositorios automticos de informacin de sistemas. Al final de los 80s Generacin automtica de cdigo desde especificaciones de diseo A inicios de los 90s Metodologa Inteligente. Interface de Usuario reusable como una metodologa desarrollo

2.4

Tipos de CASE

No existe una nica clasificacin de herramientas CASE. Podran clasificarse atendiendo a:


y

Las plataformas que soportan. Las fases del ciclo de vida del desarrollo de sistemas que cubren. La arquitectura de las aplicaciones que producen. Su funcionalidad.

2.4.1 Clasificacin en funcin de las fases del ciclo de vida abarcadas

Herramientas integradas, I-CASE (Integrated CASE, CASE integrado): abarcan todas las fases del ciclo de vida del desarrollo de sistemas. Son llamadas tambin CASE workbench. Tienen un repositorio y aportan tcnicas estructuradas para todas las fases del ciclo de vida. Herramientas que comprenden algunas fases del ciclo de vida de desarrollo de software:
y

Herramientas de alto nivel, U-CASE (Upper CASE - CASE superior) o frontend, orientadas a la automatizacin y soporte de las actividades desarrolladas durante las primeras fases del desarrollo: anlisis y diseo. Herramientas de bajo nivel, L-CASE (Lower CASE - CASE inferior) o backend, dirigidas a las ltimas fases del desarrollo: construccin e implantacin.

Juegos de herramientas o toolkits, son el tipo ms simple de herramientas CASE. Automatizan una fase dentro del ciclo de vida. Dentro de este grupo se encontraran las herramientas de reingeniera, orientadas a la fase de mantenimiento.

2.4.2 Clasificacin, utilizando la funcionalidad como criterio principal:


y

Herramientas de planificacin de sistemas de gestin. Sirven para modelar los requisitos de informacin estratgica de una organizacin. Proporcionan un

"metamodelo" del cual se pueden obtener sistemas de informacin especficos. Su objetivo principal es ayudar a comprender mejor cmo se mueve la informacin entre las distintas unidades organizativas. Esta es importan en el te desarrollo de nuevas estrategias y sistemas actuales no satisfacen las necesidades de la organizacin.
y

Herramientas de anlisis y diseo. Permiten al desarrollador crear un modelo del sistema que se va a construir y tambin la evaluacin de la validez y consistencia de este modelo. Proporcionan un grado de confianza en la representacin del anlisis y ayudan a eliminar errores con anticipacin. Se tienen:
   

Herramientas de anlisis y diseo (Modelamiento). Herramientas de creacin de prototipos y de simulacin. Herramientas para el diseo y desarrollo de interfaces. Mquinas de anlisis y diseo (Modelamiento).

Herramientas de programacin. Se engloban aqu los compiladores, los editores y los depuradores de los lenguajes de programacin convencionales. Ejemplos de estas herramientas son:  Herramientas de codificacin convencionales.  Herramientas de codificacin de cuarta generacin.  Herramientas de programacin orientadas a los objetos.

Herramientas de integracin y prueba: Sirven de ayuda a la adquisicin, medicin, simulacin y prueba de los equipos lgicos desarrollados. Entre las ms utilizadas estn:  Herramientas de anlisis esttico.  Herramientas de codificacin de cuarta generacin.  Herramientas de programacin orientadas a los objetos.

Herramientas de gestin de prototipos. Los prototipos son utilizados ampliamente en el desarrollo de aplicaciones, para la evaluacin de especificaciones de un sistema de informacin, o para un mejor entendimiento

de cmo los requisitos de un sistema de informacin se ajustan a los objetivos perseguidos.


y

Herramientas de

mantenimiento: La

categora

de

herramientas

de

mantenimiento se puede subdividir en:  Herramientas de ingeniera inversa.  Herramientas de reestructuracin y anlisis de cdigo.  Herramientas de reingeniera.
y

Herramientas de gestin de proyectos. se centran en un elemento especfico, en lugar de proporcionar un soporte global para la actividad de gestin. Estas pueden realizar estimaciones de esfuerzo, coste y duracin, hacer un seguimiento continuo del proyecto, estimar la productividad y la calidad, etc. Se incluyen dentro de las herramientas de control de proyectos las siguientes:  Herramientas de planificacin de proyectos.  Herramientas de seguimiento de requisitos.  Herramientas de gestin y medida.

Herramientas de soporte. Se engloban en esta categora las herramientas que recogen las actividades aplicables en todo el proceso de desarrollo, como las que se relacionan a continuacin:  Herramientas de documentacin.  Herramientas para software de sistemas.  Herramientas de control de calidad.  Herramientas de bases de datos.

También podría gustarte