INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE

Slides:



Advertisements
Presentaciones similares
EL PROCESO DE DESARROLLO DEL SOFTWARE
Advertisements

Ciclo de vida de desarrollo de software
Desarrollo en espiral.
Fundamentos de Diseño de Software INFT.1
CICLO DE VIDA DEL DESARROLLO DE SOFTWARE
Metodologías de desarrollo
PROCESO Y MODELOS EN LA INGENIERIA DE SOFTWARE
ANÁLISIS DE REQUERIMIENTOS
METODOLOGÍAS ÁGILES “PROCESO UNIFICADO ÁGIL (AUP)
10º2 Sergio Posso. Jonatán Agualimpia. Julia Blandón. Docente:
Modelo de ciclo de vida clásico o en cascada
Modelos de Proceso del Software
CONCEPTOS Y PRINCIPIOS DE DISEÑO
Administración de Procesos de Pruebas
CICLO DE VIDA DE UN PROYECTO DE SOFTWARE
INSTITUTO TECNOLÓGICO SUPERIO DE LIBRES
M.S.C. Ivette Hernández Dávila
INGENIERIA DEL SOFTWARE
Diseño del Software Diseño de datos Diseño arquitectónico
Ingeniería de Software
CICLO DE VIDA DEL SOFTWARE
Ciclo de Vida del Software Paradigmas de Desarrollo
Ciclo de Vida del Software
CONCEPTOS BÁSICOS Diseño de Sistemas.
Modelos de desarrollo de Software
Técnicas de Programación
MODELO DE DESARROLLO DE SOFTWARE
Ingeniería de Software: Metodologías Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de:
Ingeniería de Software
Ingeniería del Software
Ingeniería de Requerimiento
INGENIERÍA DE SOFTWARE
Tema 1: Introducción a la Ingeniería de Software
Importancia en la efectividad del:
Diseño de Software y su Proceso
VISIÓN GENERAL DE LA IS Con independencia del modelo de proceso hay tres fases genéricas: Fase de definición Fase de desarrollo Fase de mantenimiento Cada.
Ciclo de Vida del Software Paradigmas de Desarrollo
Las Pruebas del Software y sus Fundamentos
INGENIERIA DE SOFTWARE
Metodología de Desarrollo Unidad Educativa Bolívar Sebastián Torres 6° 18°
Alexander Aristizabal Ángelo flores herrera
Diseño de Sistemas.
Capitulo 1 Roger S. Presman
Ciclo de vida de un sistema
 Sara Isabel Osorio Alcaraz Ana Isabel Vallejo Grisales 10 Informática 1.
TIPOS DE AUDITORÍAS EN SISTEMAS DE INFORMACIÓN
TIPOS DE PRUEBAS DEL SOFTWARE
METODOLOGIAS DE DESARROLLO DE SOFTWARE
Actividades en el Proceso de desarrollo de Software
Ingeniería del Software I
Estructurar tus ideas para hacerlas realidad
JHENNIFER SANCHEZ ORTIZ CRISTIAN CAMILO RIASCOS ALEJANDRO PINEDA SANCHEZ FERNANDO JAVIER REBELLON.
“ NO HAY NADA MÁS DIFÍCIL DE CONSEGUIR, MÁS ARRIESGADO DE MANTENER NI MÁS INSEGURO DE TENER ÉXITO, QUE ESTAR A LA CABEZA EN LA INTRODUCCIÓN DE UN.
Ciclo de Vida del Software
MÓDULO INTRODUCCIÓN AL CICLO DE VIDA DEL SOFTWARE
 es el conjunto de conocimientos y técnicas científicas aplicadas al desarrollo, implementación, mantenimiento y perfeccionamiento de estructuras (tanto.
DESARROLLO DE SOFTWARE Cuando se va desarrollar un software intervienen muchas personas como lo es el cliente quien es el que tiene el problema en su.
Proceso de desarrollo de Software
¿Qué es la Ingeniería De Software? Ingeniería de Software.
CONCEPTO DE CICLO DE VIDA 1 En los departamentos de Sistemas se debe definir un marco de referencia común que debe ser:  Pueda ser empleado por todos.
Fundamentos de Computación
Las fases del ciclo de la vida de desarrollo de sistemas
Software de Comunicaciones
Modelo de procesos de software
CICLO DE VIDA DE UN SOFTWARE. Es el conjunto de los programas de cómputo, procedimientos, reglas, documentación y datos asociados, que forman parte de.
Objetivos de la prueba Los objetivos principales de realizar una prueba son: Detectar un error. Tener un buen caso de prueba, es decir que tenga más probabilidad.
1 CICLO DE VIDA. 2 CICLO DE VIDA DE Los Sistemas de Información “ Es un proceso por el cual los analistas de sistemas, los ingenieros computacionales,
NOTA: Para cambiar la imagen de esta dispositiva, seleccione la imagen y elimínela. A continuación haga clic en el icono Imágenes en el marcador de posición.
Verificación y Validación del Software
VERIFICACIÓN Y VALIDACIÓN DE SISTEMAS 3.10 Fase de manejo de requerimientos 4.1 Modelado de pruebas en UML Ponente: ing. Alejandro tapia vazquez.
Transcripción de la presentación:

INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE TEMA 5: INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE

Definición de Ingeniería del Software “Estudio de los principios y metodologías para el desarrollo y mantenimiento de sistemas software [Zelkovitz, 1978]”. “Aplicación práctica del conocimiento científico en el diseño y construcción de programas de computadora y la documentación asociada requerida para desarrollar, operar (funcionar) y mantenerlos. Se conoce también como desarrollo de software o producción de software [Bohem, 1976]”. El IEEE 1993 ha desarrollado una definición más completa: “La aplicación de un enfoque sistemático, disciplinado, cuantificable al desarrollo, operación (funcionamiento) y mantenimiento del software, es decir, la aplicación de ingeniería al software”. Ingeniería del Software

Proceso de Desarrollo de Software “Es aquel en que las necesidades del usuario son traducidas en requerimientos de software, estos requerimientos transformados en diseño y el diseño implementado en código, el código es probado, documentado y certificado para su uso operativo. Concretamente "define quién está haciendo qué, cuándo hacerlo y cómo alcanzar un cierto objetivo“. Ingeniería del Software

Proceso de Desarrollo de Software El conjunto de actividades fundamentales que se encuentran presentes en los procesos de desarrollo de software son: Especificación de software: Define la funcionalidad y restricciones operacionales que debe cumplir el software. Diseño e Implementación: Se diseña y construye el software de acuerdo a la especificación. Validación: El software debe validarse, para asegurar que cumpla con lo que quiere el cliente. Evolución: El software debe evolucionar, para adaptarse a las necesidades del cliente. Ingeniería del Software

Métodos de Proceso de Software Todo el desarrollo del software se puede caracterizar como un bucle de resolución de problemas en el que se encuentran cuatro etapas distintas: definición de problemas, desarrollo técnico, status quo e integración de soluciones. Ingeniería del Software

Ciclos de vida del software El desarrollo de software va unido a un ciclo de vida compuesto por una serie de etapas que comprenden todas las actividades, desde el momento en que surge la idea de crear un nuevo producto software, hasta aquel en que el producto deja definitivamente de ser utilizado por el último de sus usuarios. Las principales etapas a realizar en cualquier ciclo de vida son: Análisis: Construye un modelo de los requisitos. Diseño: A partir del modelo de análisis se deducen las estructuras de datos, la estructura en la que descompone el sistema y la interfaz de usuario. Codificación: Construye el sistema. La salida de esta fase es código ejecutable. Pruebas: Se comprueba que se cumplen criterios de corrección y calidad. Mantenimiento: En esta fase, que tiene lugar después de la entrega se asegura que el sistema siga funcionando y adaptándose a nuevos requisitos. Ingeniería del Software

Ingeniería del Software Ciclo de vida clásico El modelo lineal secuencial llamado algunas veces “Ciclo de vida clásico” o “Modelo en Cascada” comienza en un nivel de sistemas y progresa con el análisis, diseño, codificación, pruebas y mantenimiento. Ingeniería del Software

Ingeniería del Software Ciclo de vida clásico Es un ciclo de vida que admite iteraciones, ya que después de cada etapa se realiza una o varias revisiones para comprobar si se puede pasar a la siguiente. Es un modelo rígido, poco flexible y con muchas restricciones, y sirvió de base para el resto de los modelos de ciclo de vida. Es un ciclo adecuado para los proyectos en los que se dispone de todos los requerimientos al comienzo, para el desarrollo de un producto con funcionalidades conocidas o para proyectos, o para proyectos, que aún siendo muy complejos se entienden perfectamente desde el principio. Es un modelo puramente teórico, ya que el usuario rara vez mantiene los requerimientos iniciales y existen muchas posibilidades de que se debamos retomar alguna etapa anterior. Pero es mejor que no seguir ningún ciclo de vida en el diseño de software. Ingeniería del Software

Ingeniería del Software Ciclo de Vida en V Ingeniería del Software

Ingeniería del Software Ciclo de Vida en V Las características de este modelo son las mismas que las del ciclo de vida en cascada, con el agregado de los controles cruzados entre etapas para lograr una mayor corrección. Proviene del principio que establece que los procedimientos utilizados para probar si la aplicación cumple las especificaciones ya deben haberse creado en la fase de diseño. Una fase además de utilizarse como entrada para la siguiente, sirve para validar o verificar otras fases posteriores. Ingeniería del Software

Modelo del Ciclo de Vida en Espiral Ingeniería del Software

Modelo del Ciclo de Vida en Espiral Consiste en una serie de ciclos que se repiten. Cada uno tiene las mismas fases y cuando termina da un producto ampliado con respecto al ciclo anterior. En este sentido es parecido al modelo incremental, la diferencia importante es que tiene en cuenta el concepto de riesgo. Un riesgo puede ser muchas cosas: requisitos no comprendidos, mal diseño, errores en la implementación, etc. Al terminar una iteración se comprueba que lo que se ha hecho efectivamente cumple con los requisitos establecidos, también se verifica que funciona correctamente. El propio cliente evalúa el producto. No existe una diferencia muy clara entre cuando termina el proyecto y cuando empieza la fase de mantenimiento. Cuando hay que hacer un cambio, este puede consistir en un nuevo ciclo. Dónde es adecuado? Sistemas de gran tamaño. Proyectos donde sea importante el factor riesgo. Cuando no sea posible definir al principio todos los requisitos. Ingeniería del Software

Análisis de Requisitos Software (¿Qué quiere el usuario?) El análisis de requisitos permite al ingeniero de sistemas: Especificar la función y el rendimiento del software. Indicar la interfaz del sistema. Establecer las restricciones que debe cumplir el software. Refinar la definición del software. Construir modelos de los dominios de datos, funcional y de comportamiento que van a ser tratados en el software. Proporciona modelos que pueden traducirse en el diseño arquitectónico, de datos, de interfaz y procedimental. El enfoque primario del analista está en el “qué” y no el “cómo”, es decir, ¿Qué datos produce y consume el sistema, qué funciones debe realizar el sistema, qué interfaces se definirán y qué restricciones son aplicables? Ingeniería del Software

Especificación de los Requisitos del Software (ERS) El objetivo del ERS es el establecimiento de un acuerdo entre el usuario y los analistas sobre QUÉ debe hacer el software. Debe prepararse de forma conjunta por los usuarios y por los analistas. La especificación de los requisitos del software se produce en la culminación de la tarea de análisis. Ingeniería del Software

Modelado de Análisis (¿Qué vamos hacer?) Es un conjunto de modelos, es la primera representación técnica de un sistema. Con los años se han propuesto muchos métodos para el modelado del análisis, sin embargo, hay dos tendencias que dominan: Análisis Estructurado: Orientación hacia los procesos que intervienen en el sistema a desarrollar. Dividir los módulos en partes más pequeñas Análisis Orientado a Objetos (AOO): Módulos basados en componentes, es decir cada módulo es independiente del otro. Permite que el código sea reutilizable. Más fácil de mantener porque los cambios son localizables. Ingeniería del Software