Está en la página 1de 35

DESARROLLO DE SOFTWARE ING.

OSCAR OMAR PINEDA EQUIPO # 2 EXPOSICION: PROCESOS DEL SOFTWARE CHOLUTECA, HONDURAS

PROCESOS DEL SOFTWARE

PROCESOS DEL SOFTWARE

Un proceso del software es un conjunto de actividades que conducen a la creacin de un producto software. software. Estas actividades pueden consistir en el desarrollo de software desde cero en un lenguaje de programacin estndar como Java o C.

Aunque Existen Muchos Procesos Diferentes De Software:

1. Especificacin del software 2. Diseo e implementacin del software 3. Validacin del software 4. Evolucin del software

MODELO DEL PROCESO DEL SOFTWARE

Un

modelo

del

proceso

del

software

es

una

representacin abstracta de un proceso del software. software. Cada modelo de proceso representa un proceso desde una perspectiva particular, y as proporciona solo informacin parcial sobre ese proceso. proceso.

Los Modelos De Procesos

1. EL modelo en cascada

2. Desarrollo evolutivo

3. Ingeniera del software basado en componente

El Modelo En Cascada

Llamado algunas veces ciclo de vida bsico o modelo en cascada, el modelo lineal secuencial sugiere un enfoque sistemtico, sistemtico, secuencial, para el desarrollo del software que comienza en un nivel de sistemas y progresa con el anlisis, diseo, codificacin, pruebas y mantenimiento. mantenimiento.

Modelo Lineal Secuencial

Anlisis

Diseo

Cdigo

Prueba

Desarrollo Evolutivo

El desarrollo evolutivo se basa en la idea de desarrollar una implementacin inicial, exponindola a los

comentarios del usuario y refinndola a travs de las diferentes versiones hasta que se desarrolla un sistema adecuado. adecuado.

Desarrollo Evolutivo
Especificacin Versin Inicial

Esbaso de la descripcin

Desarrollo

Versin Intermedia

Validacin

Versin Final

Tipos De Desarrollo Evolutivo:

1. Desarrollo exploratorio: donde el objetivo del proceso es exploratorio: trabajar con el cliente para explorar sus requerimientos y entregar un sistema final. final.

2. Prototipo desechables: donde el objeto del proceso de desechables: desarrollo evolutivo es comprender los requerimientos del cliente y entonces desarrollar una definicin mejorada de los requerimientos para el sistema. sistema.

Ingeniera Del Software Basada En Componentes


Ha surgido un enfoque de desarrollo de software denominado ingeniera del software basada en componentes (CBSE) que se basa en la reutilizacin, el cual se est utilizando de forma amplia. amplia.

Este enfoque basado en la reutilizacin se compone de una gran base de componentes software reutilizable y de algunos marcos de trabajo de integracin para estos. Algunas veces estos componentes estos. son sistemas por s mismo (COTS o sistemas comerciales) que se pueden utilizar para proporcionar una funcionalidad especfica, como dar formato al texto o efectuar clculos numricos. numricos.

Etapas Ingeniera Del Software Basada En Componentes

Especificacin de Requerimientos

Anlisis de los Componentes

Modificacin de los Requerimientos

Diseo del Sistema de Reutilizacin

Desarrollo e Integracin

Validacin del Sistema

Iteracin De Proceso
Los cambios son inevitable en todos los proyectos de software grandes. grandes. Los requerimientos del sistema cambian cuando el negocio que procura el sistema responde a las presiones externas. Las prioridades de gestin externas. cambian. cambian. Cuando se dispone de nuevas tecnologas, cambian los diseos y la implementacin. Esto significa que el proceso del software no es un implementacin. proceso nico. nico.

Dos modelos de proceso que han diseado explcitamente para apoyar la iteracin de proceso: proceso: 1. 2. Entrega incremental Desarrollo en espiral

Entrega Incremental
El modelo de desarrollo en cascada requiere que los clientes de un sistema cumplan un conjunto de requerimientos antes de que se inicie el diseo y que el diseador cumpla estrategias particulares de diseo antes de implementacin. implementacin. Los cambios de requerimiento implican rehacer el trabajo de captura de estos, de diseo e implementacin. Sin embargo, la implementacin. separacin en el diseo y la implementacin deben dar lugar a sistemas bien documentados susceptibles de cambio. cambio.

Entrega Incremental

Definicin esbozo de requerimientos

Asignar requerimientos a los incrementos

Disear la arquitectura del sistema

Desarrollar incrementos del sistema

Validar incremento

Integrar Incremento

Validar sistema

Sistema Final Sistema Incompleto

Ventajas Del Desarrollo Incremental


1. Los clientes no tienen que esperar hasta que el sistema completo se entregue para sacar provecho de l. El primer incremento satisface los requerimientos l. ms crticos de tal forma que pueden utilizar el software inmediatamente. inmediatamente. Los clientes pueden utilizar los incrementos iniciales como prototipos y obtener experiencia sobre los requerimientos de los incrementos posteriores del sistema. sistema. Existen un bajo riesgo de un fallo total del proyecto. Aunque se puede encontrar proyecto. problemas en algunos incrementos, lo normal es que el sistema se entregue de forma satisfactoria al cliente. cliente. Puesto que los servicios de ms alta prioridad se entregan primero y los incrementos posteriores se integran en ellos, es inevitable que los servicios ms importantes del sistema sean a los que se les hagan ms pruebas. pruebas.

2.

3.

4.

Desarrollo En Espiral
Ms que representar el proceso de software como una secuencia de actividades con retrospectiva de una actividad a otra, se presenta como un espiral. As, el ciclo ms interno espiral. podra referirse a la viabilidad del sistema, el siguiente ciclo a la definicin de requerimientos, el siguiente ciclo al diseo del sistema, y as sucesivamente. sucesivamente.

Cada Ciclo De Espiral Se Divide En Cuatro Sectores

1. Definicin de objetivos 2. Evaluacin y reduccin de riesgos 3. Desarrollo y validacin 4. Planificacin

Cada Ciclo De Espiral Se Divide En Cuatro Sectores

ACTIVIDADES DEL PROCESO


Las cuatro actividades bsicas del proceso de planificacin, desarrollo, validacin, y evolucin se organiza de formas distintas en distintas procesos del desarrollo. En el enfoque en desarrollo. cascada, estn organizadas en secuencias, mientras que el desarrollo evolutivo se entrelaza. Como se llevan a cabo estas entrelaza. actividades dependen del tipo de software, de las personas y de las estructuras organizacionales implicadas. implicadas.

Especificacin Del Software

La especificacin del software o ingeniera de requerimientos es el proceso de compresin y definicin de que servicios se requieren y de identificacin de las restricciones de funcionamiento y desarrollo del mismo. mismo.

Fases Principales En El Proceso De Ingeniera De Requerimientos:

Estudio de viabilidad

Obtencin y anlisis de requerimientos Especificacin de requerimientos

Informe de viabilidad

Validacin de requerimientos Modelos del sistema Requerimientos del usuario y del sistema Documento del requerimiento

Diseo E Implementacin Del Software

La etapa de implementaciones del desarrollo de software es el proceso de convertir una especificacin del sistema en un sistema ejecutable. Siempre implica los procesos de diseo y ejecutable. programacin de software, pero si se utiliza un enfoque evolutivo de desarrollo, tambin puede un refinamiento de la especificacin del software. software.

Modelo General Del Proceso De Diseo

Especificacin de requerimiento

UN MODELO GENERAL DEL PROCESO DE DISEO

Actividades de diseo Diseo arquitectnico Especificacin abstracta Diseo de la interfaz Diseo de complementos Diseo de la estructura de datos Diseo de algoritmo

Arquitectura del sistema

Especificacin del software

Especificacin de la interfaz

Especificacin de componentes

Especificacin de la estructura de datos

Especificacin de algoritmos

Productos del diseo

Validacin De Software

La validacin del software o, de forma ms general, la verificacin y validacin (V & V) se utilizan para mostrar que el sistema se ajusta a su especificacin y que cumple las expectativas del usuario que lo comprara. comprara.

Etapas Del Proceso De Prueba

El Proceso De Pruebas

Prueba de componentes

Prueba del sistema

Prueba de aceptacin

Evolucin Del Software


La flexibilidad de los sistemas software es una de las principales razones por la que ms y ms software se incorpora a los sistemas grandes y complejos. Una vez que se complejos. decide adquirir hardware, es muy costoso hacer cambios en su diseo. Sin embargo, se pueden hacer cambios al software diseo. en cualquier momento durante o despus del desarrollo del sistema. sistema.

Ingeniera del Software Asistida por Computadora


Ingeniera del Software Asistida por Computadoras (CASE) es el nombre que se le da al software que se utiliza para ayudar a las actividades del proceso del software como la ingeniera de requerimientos, el diseo, el desarrollo de programas y las pruebas. pruebas. Por lo tanto, las herramientas CASE incluyen editores de diseo, diccionarios de datos, compiladores, depuradores, herramientas de construccin de sistemas, etctera. etctera.

Clasificacin de CASE
Las clasificaciones de CASE nos ayudan a comprender los tipos de herramientas CASE y su papel en la ayuda a las actividades de proceso del software. software.

Existen varias formas diferentes de clasificar las herramientas CASE, cada una de las cuales nos proporciona una perspectiva distinta de estas herramientas: herramientas: 1. Una perspectiva funcional en la que las herramientas CASE se clasifican de acuerdo con su funcin especfica. especfica. 2. Una perspectiva de proceso en la que las herramientas se clasifican de acuerdo con las actividades del proceso que ayudan. ayudan. 3. Una perspectiva de integracin en la que las herramientas CASE se clasifican de acuerdo con la forma en que estn organizadas en unidades integradas que proporcionan ayuda a una o ms actividades del proceso. proceso.

Segn Fuggetta los sistemas CASE se deben clasificar en tres categoras:


1. Las herramientas ayudan a las tareas individuales del

proceso como la verificacin de la consistencia de un diseo, la compilacin de un programa y la comparacin de los resultados de las pruebas. Las herramientas pueden ser de pruebas. propsito general, independientes (por ejemplo, un

procesador de texto) o agrupadas en bancos de trabajo. trabajo.

Segn Fuggetta los sistemas CASE se deben clasificar en tres categoras:


2. Los bancos de trabajo ayudan a las fases o actividades del proceso como la especificacin, el diseo, etctera. etctera. Normalmente consisten en un conjunto de herramientas con algn grado mayor o menor de integracin. integracin.

3. Los entornos ayudan a todos los procesos del software, o al menos a una parte sustancial de stos. Normalmente stos. incluyen varios bancos de trabajo integrados. integrados.

Tecnologa CASE

Herramientas

Bancos de Trabajo

Entornos

Editores

Compiladores

Comparadores de Archivo

Entornos Integrados

Entornos centrados en el proceso

Anlisis y Diseo

Programacin

Pruebas

Bancos de trabajo multimtodo

Bancos de trabajo multimtodo

Bancos de trabajo de propsito general

Bancos de trabajo de lenguaje especfico

También podría gustarte