Presentacion


FUNDAMENTOS DE INGENIERÍA DE SOFTWARE




Alumno: 
                   Viridiana Hernández Olguín

Materia: 

                  Fundamentos de Ingeniería de Software


Docente: 

                  Ing. María Guadalupe Rivera García


1.6 CLASIFICACIÓN DE LAS HERRAMIENTAS CASE

1.6 CLASIFICACIÓN DE LAS HERRAMIENTAS CASE


Las herramientas CASE, en función de las fases del ciclo de vida abarcadas, se pueden agrupar de la forma siguiente forma:

1. Herramientas integradas, I-CASE (Integrated CASE, CASE integrado): abarcan todas las fases del ciclo de vida del desarrollo de sistemas. Son llamadas también CASE workbench.


2. Herramientas de alto nivel, U-CASE (Upper CASE - CASE superior) o front-end, orientadas a la automatización y soporte de las actividades desarrolladas durante las primeras fases del desarrollo: análisis y diseño.

1.5 DEFINICIÓN E HISTORIA DE LAS HERRAMIENTAS CASE

1.5 DEFINICIÓN E HISTORIA DE LAS HERRAMIENTAS CASE


Las Herramientas CASE tienen su inicio con el simple procesador de palabras que fue usado para crear y manipular documentación. Los setentas vieron la introducción de técnicas gráficas y diagramas de flujo de estructuras de datos. Sobre este punto, el diseño y especificaciones en forma pictórica han sido extremadamente complejos y consumían mucho tiempo para realizar cambios.



Pronto se reemplazaron los paquetes gráficos por paquetes especializados que habilitan la edición, actualización e impresión en múltiples versiones de diseño. Eventualmente, las herramientas gráficas integradas con diccionarios de base de datos para producir poderosos diseños y desarrollar herramientas, podrían sostener ciclos completos de diseño de documentos.

1.4 CLASIFICACIÓN DE LA TECNOLOGÍA EN EL DESARROLLO DE SOFTWARE (TECNOLOGÍA ESTRUCTURADA Y ORIENTADA A OBJETOS)

1.4 CLASIFICACIÓN DE LA TECNOLOGÍA EN EL DESARROLLO DE SOFTWARE (TECNOLOGÍA ESTRUCTURADA Y ORIENTADA A OBJETOS)


Tecnología estructurada

Las tecnologías de desarrollo estructurado son las más convencionales de las empleadas hoy día. Han surgido de la evolución de las ideas de programación estructurada (hace más de veinticinco años) hacia las fases iniciales del ciclo de vida. En su formulación actual, las notaciones empleadas en las primeras fases del ciclo de vida (especificación de requisitos de usuario y sistema) suelen estar constituidas por lenguajes gráficos que permiten: identificar el sistema y el entorno; representar el flujo de información entre los elementos; y, describir los datos y las actividades del sistema.


La idea base de esta tecnología es que es posible estructurar el modelo de un sistema de software en base a funciones que procesan información que reciben de otras funciones (o del exterior) y dirigen la información procesada a otros módulos funcionales (o al exterior). El enfoque seguido, por tanto, es el de pensar en las funciones del sistema necesarias (extraídas de los requisitos del sistema) y luego en los datos que requieren.




Orientado a Objetos

Los métodos de descomposición orientada a objetos constituyenla tendencia más influyente observada en la ingeniería de sistemas de software en los últimos años. Con ellos nos referimos a un conjunto de métodos (aún en fase de desarrollo o evolución) que permiten al analista y diseñador concebir su sistema identificando clases de objetos, operaciones permitidas y relaciones entre ellos como base para la estructura del sistema a diseñar.
En ellas, un objeto es un conjunto de datos y funciones de manipulación de los mismos encapsulados en una unidad que es posible tratar como un todo (crear, copiar, destruir, etc.). Un objeto posee unas operaciones visibles a otros objetos aunque éstos no conocen cómo están implementadas. El diseñador reconoce inicialmente clases de objetos de las que se derivan los objetos concretos que utilizará en el diseño.


Un objeto puede construirse jerárquicamente empleando, a su vez, a otros objetos más simples. Una clase implica una generalización del concepto de objeto (identificando similitudes entre objetos similares) y constituye la base a partir de las cuales se construye el sistema.
Existen varias tecnologías orientadas a objetos que, aunque similares en su potencia expresiva, ofrecen algunas diferencias que las hacen más adecuadas para algún tipo concreto de sistemas.
Podemos mencionar como una de las más representativas a OMT.
OMT está soportada por muchas herramientas CASE comerciales.
Corresponde a una notación gráfica que permite representar las clases de objetos, sus relaciones y la creación de ejemplares de los mismos. Aunque básicamente empleada para la fase de análisis de requisitos del sistema puede también emplearse para las primeras fases del diseño.





1.3 ETAPAS DEL DESARROLLO DE SOFTWARE

1.3 ETAPAS DEL DESARROLLO DE SOFTWARE


Cuando comenzamos crear un programa desde cero, el desarrollo de software tiene unas etapas que es muy importante conocer. Sin embargo, antes de realizar nuestro software, debemos tener claro el ciclo de vida de nuestro programa.



Etapa de Análisis : Es el proceso de investigar un problema que se quiere resolver. Definir claramente el Problema que se desea resolver o el sistema que se desea crear. Identificar los componentes principales que integrarán el producto.


Etapa de Diseño : Es el proceso de utilizar la información recolectada en la etapa de análisis al diseño del producto. La principal tarea de la etapa de diseño es desarrollar un modelo o las especificaciones para el producto o Componentes del Sistema.




Etapa de Desarrollo : Consiste en utilizar los modelos creados durante la etapa de diseño para crear los componentes del sistema.




Etapa de Pruebas o Verificación Prueba : Consiste en asegurar que los componentes individuales que integran al sistema o producto, cumplen con los requerimientos de la especificación creada durante la etapa de diseño.


Se recomienda aplicar las etapas: • Análisis • Diseño • Desarrollo • Prueba.

Etapa de Implementación o Entrega Implantación : Consiste en poner a disposición del cliente el producto.

Etapa de Mantenimiento : Consiste en corregir problemas del producto y re- liberar el producto como una nueva versión o revisión (producto mejorado).

Aquí un video con el que puedes ayudar a comprender mejor:



1.2 EL PAPEL EVOLUTIVO DEL SOFTWARE

1.2 EL PAPEL EVOLUTIVO DEL SOFTWARE



Hoy en día, el software tiene un papel dual. Es producto y canal de distribución de este. Como producto, ofrece la potencia de cómputo presentada como hardware de una computadora o, de manera más global por una red de computadoras accesible mediante hardware local y de acceso físico. Sin importar el lugar en que resida el software, ya sea en un celular o dentro de una computadora central, éste es un transformador de información; realiza la producción, el manejo, la adquisición, la modificación, el despliegue o la transmisión de la información que puede ser tan simple como un solo bit o tan compleja como una presentación multimedia. En su papel de vehículo para la entrega de un producto, el software actúa como la base para el control de la computadora (Sistemas Operativos), la comunicación de información (redes), y la relación y el control de otros programas (utilerías de software y ambientes).




1.1 CONCEPTOS BÁSICOS

1.1 CONCEPTOS BÁSICOS



La ingeniería de software es una disciplina formada por un conjunto de métodos, herramientas y técnicas que se utilizan en el desarrollo de los programas informáticos (software).


Esta disciplina trasciende la actividad de programación, que es la actividad principal a la hora de crear un software. El ingeniero de software se encarga de toda la gestión del proyecto para que éste se pueda desarrollar en un plazo determinado y con el presupuesto previsto.
La ingeniería de software, por lo tanto, incluye el análisis previo de la situación, el diseño del proyecto, el desarrollo del software, las pruebas necesarias para confirmar su correcto funcionamiento y la implementación del sistema.


UNIDAD 1 FUNDAMENTOS DE INGENIERIA DE SOFTWARE

UNIDAD 1 FUNDAMENTOS DE INGENIERIA DE SOFTWARE


Objetivo de la unidad

Identificar la historia del software así como las características de los paradigmas estructurados y orientados a objetos. Conocer e identificar las herramientas CASE.





Es una disciplina de la Ingeniería que comprende todos los aspectos de la producción del software desde las etapas iníciales de la especificación del sistema hasta el mantenimiento de éste después de que se libera.




La Ingeniería de Software incluye:


Personas (quien lo hace)
Proceso (la manera en que se hace)
Proyecto (la realización)
Producto (la aplicación de artefactos)


BIBLIOGRAFÍA