exposicion

20
Republica Bolivariana de Venezuela Ministerio del Poder Popular para la Educacion Universitaria IUTLL. INF. Trayesto II, Trimestre II. Seccion 03. Valle de la Pascua Estado Guarico Profesor : Integrantes : Cipriano Infante Medina Anggela Ledezma Gabriel. Velasquez Leonardo Antonio Alonzo José Pérez Niuska Carrazquel Oscar Anare PROCESO DE DESARROLLO DE SOFTWARE

Upload: pedro-gonzalez-matos

Post on 13-Jun-2015

730 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Exposicion

Republica Bolivariana de VenezuelaMinisterio del Poder Popular para la Educacion Universitaria

IUTLL. INF. Trayesto II, Trimestre II. Seccion 03.Valle de la Pascua Estado Guarico

Profesor: Integrantes: Cipriano Infante Medina Anggela Ledezma Gabriel. Velasquez Leonardo Antonio Alonzo José Pérez Niuska Carrazquel Oscar Anare

PROCESO DE DESARROLLO DE SOFTWARE

Page 2: Exposicion

Metodologías para desarrollo del software.

Un proceso de software detallado y completo suele denominarse “Metodología”. Las metodologías se basan en una combinación de los modelos de proceso

genéricos (cascada, evolutivo, incremental, etc.

• Metodologías estructuradas

• Metodologías orientadas a objetos

• Metodologías tradicionales (no ágiles)

• Metodologías ágiles

Page 3: Exposicion

Técnicas para el desarrollo del softwareEl análisis de requerimientos es la tarea que plantea la asignación de

software a nivel de sistema y el diseño de programas . El análisis de requerimientos facilita al ingeniero de sistemas especificar la función y comportamiento de los programas, indicar la interfaz con otros elementos del sistema y establecer las ligaduras de diseño que debe cumplir el programa.

4. Tareas del Análisis:El análisis de requerimientos puede dividirse en cuatro áreas:1.- Reconocimiento del problema2.- Evaluación y síntesis3.- Especificación4.- Revisión.

Page 4: Exposicion

Entre otra técnica esta:

Principios del Análisis:

En la pasada década, se desarrollaron varios métodos de análisis y especificación del software. Los investigadores han identificado los problemas y sus causas y desarrollando reglas y procedimientos para resolverlos.

El dominio de la información, así como el dominio funcional de un problema debe ser representado y comprendido.

El problema debe subdividirse de forma que se descubran los detalles de una manera progresiva (o jerárquica)

Deben desarrollarse las representaciones lógicas y físicas del sistema.

Page 5: Exposicion

Actividades y Herramientas en el proceso de desarrollo del software

Un Proceso de desarrollo de software tiene como propósito la producción eficaz y eficiente de un producto que reúna los requisitos del cliente.

Debido a la diversidad, es difícil automatizar todo un proceso de desarrollo del software.

Existe un conjunto de actividades fundamentales:

1) Especificación de software: Se debe definir la funcionalidad y restricciones operacionales que debe cumplir el software.

2) Diseño e Implementación: Se diseña y constituye el software de acuerdo a la especificación.

3) Validación: Debe validarse, para asegurar que cumpla con lo que quiere el cliente.

4) Evolución: Debe evolucionar, para adaptarse a las necesidades del cliente.

Además de estas actividades, hay otras denominadas actividades protectoras:

5) Seguimiento y control del proyecto del software.6) Revisiones técnicas formales.7) Garantía de calidad de software.8) Gestión de configuración del software.

Requisitos nuevoso modificados

Sistema nuevoo modificado

Proceso de Desarrollo de Software

Requisitos nuevoso modificados

Sistema nuevoo modificado

Proceso de Desarrollo de Software

Page 6: Exposicion

FUNDAMENTOS DE LA INGENIERIA DEL SOFTWARE

Objetivo y Propósito

De forma especifica lo que esta asignatura requiere dar a conocer el proceso de ciclo de vida del software y sus diferentes formas de organización conocer la importancia de la ingeniería del software su desarrollo y mantenimiento.

Se busca dar a conocer las posibilidades que ofrece la reutilización del software en todos los niveles del desarrollo.

Page 7: Exposicion

MODELOS:

Page 8: Exposicion

Modelos de procesos del software:

• Podemos definir un modelo de procesos del software como una representación abstracta de alto nivel de un proceso software.

• Cada modelo es una descripción de un proceso software que se presenta desde una perspectiva particular. Alternativamente, a veces se usan los términos ciclo de vida y Modelo de ciclo de vida

Page 9: Exposicion

• Modelo en cascada o lineal secuencial• Modelo en cascada con prototipado desechable• Modelos evolutivos>*-Modelo incremental: Este modelo entrega el software

en partes pequeñas, pero utilizables, llamadas incrementos En general, cada incremento se construye sobre aquél que ya ha sido entregado.

*-Modelo en espiral: Propuesto por Boehm y actualmente muy conocido, es un modelo evolutivo que conjuga aspectos sistemáticos del modelo lineal secuencial con la naturaleza iterativa propia de este tipo de modelos

• Modelo de desarrollo formal

Page 10: Exposicion
Page 11: Exposicion

• Modelo de Ciclo de Vida.

• Modelo Cascada.• Modelo De Desarrollo

Incremental.• Modelo De Desarrollo

Evolutivo.• Modelo Espiral.• Modelo Concurrente.

MODELO DE CICLO DE VIDA:

• Un modelo de ciclo de vida de software es una vista de las actividades que ocurren durante el desarrollo de software, intenta determinar el orden de las etapas involucradas y los criterios de transición asociadas entre estas etapas.

• Un modelo de ciclo de vida del software: • Describe las fases principales de desarrollo de

software. • Define las fases primarias esperadas de ser ejecutadas

durante esas fases. • Ayuda a administrar el progreso del desarrollo, y • Provee un espacio de trabajo para la definición de un

detallado proceso de desarrollo de software. • Así, los modelos por una parte suministran una guía

para los ingenieros de software con el fin de ordenar las diversas actividades técnicas en el proyecto, por otra parte suministran un marco para la administración del desarrollo y el mantenimiento, en el sentido en que permiten estimar recursos, definir puntos de control intermedios, monitorear el avance, etc.

MODELOS

Page 12: Exposicion

.•Este es el más básico de todos los modelos, y sirve como bloque de construcción para los demás modelos de ciclo de vida. La visión del modelo cascada del desarrollo de software es muy simple; dice que el desarrollo de software puede ser a través de una secuencia simple de fases. Cada fase tiene un conjunto de metas bien definidas, y las actividades dentro de una fase contribuye a la satisfacción de metas de esa fase o quizás a una su secuencia de metas de la fase. Las flechas muestran el flujo de información entre las fases. La flecha de avance muestra el flujo normal. Las flechas hacia atrás representan la retroalimentación.•El modelo de ciclo de vida cascada, captura algunos principios básicos:

•Planear un proyecto antes de embarcarse en él. •Definir el comportamiento externo deseado del sistema antes de diseñar su arquitectura interna. •Documentar los resultados de cada actividad. •Diseñar un sistema antes de codificarlo. •Testear un sistema después de construirlo.•Una de las contribuciones más importantes del modelo cascada es para los administradores, posibilitándoles avanzar en el desarrollo, aunque en una escala muy bruta.

MODELO CASCADA

Page 13: Exposicion
Page 14: Exposicion

.

•Los riesgos asociados con el desarrollo de sistemas largos y complejos son enormes. Una forma de reducir los riesgos es construir sólo una parte del sistema, reservando otros aspectos para niveles posteriores. El desarrollo incremental es el proceso de construcción siempre incrementando subconjuntos de requerimientos del sistema. Típicamente, un documento de requerimientos es escrito al capturar todos los requerimientos para el sistema completo. •Note que el desarrollo incremental es 100% compatible con el modelo cascada. El desarrollo incremental no demanda una forma específica de observar el desarrollo de algún otro incremento. Así, el modelo cascada puede ser usado para administrar cada esfuerzo de desarrollo, como se muestra en la figura. •El modelo de desarrollo incremental provee algunos beneficios significativos para los proyectos: •Construir un sistema pequeño es siempre menos riesgoso que construir un sistema grande. •Al ir desarrollando parte de las funcionalidades, es más fácil determinar si los requerimientos planeados para los niveles subsiguientes son correctos. •Si un error importante es realizado, sólo la última iteración necesita ser descartada. •Reduciendo el tiempo de desarrollo de un sistema (en este caso en incremento del sistema) decrecen las probabilidades que esos requerimientos de usuarios puedan cambiar durante el desarrollo. •Si un error importante es realizado, el incremento previo puede ser usado. •Los errores de desarrollo realizados en un incremento, pueden ser arreglados antes del comienzo del próximo incremento

MODELO DE DESARROLLO INCREMNTAL

Page 15: Exposicion
Page 16: Exposicion

.

•Como el modelo de desarrollo incremental, el modelo de desarrollo evolutivo (algunas veces denominado como prototipado evolutivo) construye una serie de grandes versiones sucesivas de un producto. Sin embargo, mientras que la aproximación incremental presupone que el conjunto completo de requerimientos es conocido al comenzar, el modelo evolutivo asume que los requerimientos no son completamente conocidos al inicio del proyecto.

•En el modelo evolutivo, los requerimientos son cuidadosamente examinados, y sólo esos que son bien comprendidos son seleccionados para el primer incremento. Los desarrolladores construyen una implementación parcial del sistema que recibe sólo estos requerimientos.

MODELO DE DESARROLLO EVOLUTIVO

Page 17: Exposicion
Page 18: Exposicion

MODELO ESPIRAL.

•El modelo espiral de los procesos software es un modelo del ciclo de meta-vida. En este modelo, el esfuerzo de desarrollo es iterativo. Tan pronto como uno completa un esfuerzo de desarrollo, otro comienza. Además, en cada desarrollo ejecutado, puedes seguir estos cuatros pasos: •· Determinar qué quieres lograr. •· Determinar las rutas alternativas que puedes tomar para lograr estas metas. Por cada una, analizar los riesgos y resultados finales, y seleccionar la mejor. •· Seguir la alternativa seleccionada en el paso 2. •· Establecer qué tienes terminado.

Page 19: Exposicion
Page 20: Exposicion