0% encontró este documento útil (0 votos)
42 vistas7 páginas

Procesos de Software

El documento describe diferentes procesos de software, incluyendo el proceso unificado racional (RUP) que es un proceso de modelo moderno inspirado en UML. El documento también discute las cuatro actividades fundamentales que deben incluir todos los procesos de software.

Cargado por

Jasel Aguilar
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
42 vistas7 páginas

Procesos de Software

El documento describe diferentes procesos de software, incluyendo el proceso unificado racional (RUP) que es un proceso de modelo moderno inspirado en UML. El documento también discute las cuatro actividades fundamentales que deben incluir todos los procesos de software.

Cargado por

Jasel Aguilar
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Procesos de software

Es un proceso que se creo a partir del UML Es una serie de actividades que se Proceso de unificado racional
relacionan entre si, que ayudan a la
elaboración de un proyecto de
software.
Es un proceso de modelo moderno inspirado en el UML y en el proceso asociado de desarollo de software unificado. Es considerado un modelo de proceso híbrido.

Todos los procesos de software Las descripciones de los procesos Tipo de procesos El cambio en el software resulta
deben incluir cuatro actividades deben incluir: algo inevitable y más por la rapidez El RUP es descrito por tres perspectivas Sus fases están más vinculadas con las empresas en lugar de con las preocupaciones técnicas. Fases del RUP
fundamentales: con la que se presentan nuevas
tecnologías.
Plan - driven Modelos de procesos
Productos Son las condiciones que son Roles Precondiciones y poscondiciones Dinámica Estática Práctica Concepción Elaboración Construcción Transición
validas antes y despues de realizar
algunas de la actividades del Existen dos enfoques para reducir Maneras de enfrentar el cambio y
proyecto o de crearse un producto. Tambien son conocidos como Waterfall Desarrollo incremental Ingeniería de software orientada a los costos del cambio: los requerimientos cambiantes
Son el resultado de algunas de las Establecen las responsabilidades procesos ágiles, estos consisten en la reutilización Está muestra las fases del modelo a través del tiempo. Presenta las actividades establecidas del proceso. En esta se sugieren prácticas que pueden resultar buenas para usar en el proceso. Aquí se establece un casi empresarial para el sistemam Se debe desarrollar la comprensión del problema, crear el marco conceptual arquitectónico y diseñar el plan del proyecto. Aquí se incluyen las partes de diseño, programación y las pruebas del sistema. Es la fase final del RUP, se interesa en hacer un cambio desde la parte de desarrollo hasta la parte de usuarios y en finalmente ponerlo a funcionar en el mundo real.
actividades del proceso. de los que intervienen en el que todas las actividades del
proyecto. proceso se planean por anticipado
y el avance de este se mide Fue el primer modelo que se Desarrollo de sistemas formales Se establece con la idea de crear Evitar el cambio, el proceso Tolerancia al cambio, donde todo Prototipo del sistema Entrega incremental
basándose en este plan. publicó acerca de desarrollo de una implementación inicial, La reutilización de software es muy Tipos de software que pueden anticipa algunos cambios posibles el proceso se diseña para que
software, este fue creado a partir mostrársela al usuario para obtener común, esto sucede sin importar el reutilizarse: entonces incluyen actividades para realizar los cambios tenga un bajo
de procesos generales de comentarios y luego desarrollarla proceso de desarrollo que se prevenir el rehacer. costo.
ingeniería en sistemas. Es una variación del modelo con sus distintas versiones, esto utilice, en el siglo XXI los procesos Permite que los usuarios prueben Un prototipo es una versión incial Permite incorporar cambios en
cascada (waterfall), en este se crea hasta lograr producir un sistema de desarrollo con enfoque en el sistema antes de entregarlo y así del sistema de baja, media o alta mayores incrementos a precios
un modelo matemático para un adecuado. reutilización comenzaron a Servicios Web que se crean para Colecciones de objetos que se Sistemas de software que son se puedan pulir los requerimientos, fidelidad, tratar opciones de bajos.
especificación del sistema, luego utilizarse. La etapa incial de atender servicios estándares y que crean como componentes para ser configurados para ser utilizados en de esta manera es probable que diseño e identificar más problemas
Sus etapas principales se basan en se corrige el modelo matemático, a especificación y final de validación se encuentran disponibles para la integrados marco de un entorno específico. los requerimientos de cambios se y encontrar sus soluciones.
las 4 actividades fundamentales través de transformaciones de su modelo se pueden comparar invocación remota. componentes, como lo son .NET o reduzcan.
(especificación, diseño, validación y matemáticas, que mantienen su Las actividades fundamentales, a con otros modelos, sus etapas J2EE.
evolución) y las representa como consistencia en un código que es difernecia del modelo cascada, intermedias son distintas:
fases separadas. posible de ejecutar. Este proceso están entrelazadas y tienen una
es muy útil para desarrolla sistemas retroalimentación rápida entre las
que tengan severos requerimientos actividades. Este resulta un mejor
de seguridad, protección o modelo para los sistemas Análisis de componentes Modificación de requerimientos Diseño de sistema con reutilización Desarrollo e integración
Análisis y definición de Diseño del sistema y software Implementación y prueba de Integración y prueba de sistema Operación y mantenimiento fiabilidad. empresariales, de comercio
requerimientos unidad electrónico y personales.

Una vez se tienen las Se analizan los requerimientos En esta fase se crea o reutiliza un Se crea el software que no puede
Aquí se asignan los requerimientos Se integran y prueban todas las Aquí se instala y se prueba el especificaciones, se realiza una utilizando la información de los marco conceptual, los creadores ser reutilozado y se junta con los
Se consulta al usuario para para los sistemas de hardware y/o En esta etapa se realiza el diseño unidades del programa o programa, normalmente esta es la Este modelo representa la manera busqueda de componentes para componentes encontrados, luegos toamn en consideración los componentes y sistemas COTS,
establecer los servicios, software, esto se hace del software como conjuntos de programas individuales como un fase más larga del ciclo de vida. El en la que se resuelven los poder implementar estas de modifican para utilizar los componentes reutilizados y crean para así crear el nuevo sistema.
restricciones y las metas del estableciendo una arquitectura de programas o unidades del solo sistema completo, esto para mantenimientos consiste en problemas, es poco común que se especificaciones. componentes disponibles. el marco de referencia para
sistema. sistema global. programa. La prueba de unidad se comprobar que se cumple con los arreglar los errores que no fueron trabaje una solución completa del atenderlo.
trata de verificar que cada unidad requerimientos de software. encontrados antes, mejoras la problema por adelantado, mejor
funcione de manera correcta implementación de las unidades dicho avanza paso por paso.
cumpliendo con su funcionalidad. del sistema y aumentar los
servicios del mismo, conforme se
van descubriendo nuevos
requerimientos. El desarrollo incremental tiene tres Viéndolo desde un punto de vista
ventajas, en comparación con el administrativo, tiene dos
modelo Cascada: problemas:

Se reduce el costo de adaptación a Se obtiene retroalimentación del Es muy probable que la El proceso no es visible, ya que no La estructura del sistema tiende a
los requerimientos del cliente. cliente de manera más rápida y implementación y entrega de se muestran avances tan seguido. degradarse conforme hay más
facil. software útil al cliente sea más incrementos,
rápida, incluso si aún no tiene
todas las funcionalidades.
Procesos de software
1. Es una serie de actividades que se relacionan entre si, que ayudan a la elaboración
de un proyecto de software.
1.1. Todos los procesos de software deben incluir cuatro actividades fundamentales:

1.1.1. Especificación del software

[Link]. Se deben definir la funcionalidad y restricciones del software.

[Link].1. Existen 4 actividades principales en este proceso:

[Link].1.1. Estudio de factibilidad

[Link].1.1.1. Se deduce si es posible cubrir las necesidades específicadas por el


usuario con la tecnología disponible, además se considera si el sistema propuesto
tendrá un costó - beneficio desde un POV empresarial.

[Link].1.2. Obtención y análisis de requerimientos

[Link].1.2.1. En este proceso se generan los requerimientos a partir de la observación


de los sistemas que ya existen, charlas con el usuario y posibles proveedores, análisis
de tareas, etc.

[Link].1.3. Especificación de requerimientos

[Link].1.3.1. Trata de pasar a un documento la información recopilada en la fase de


análisis, en este documento deben incluirse dos tipos de requerimientos, los
requerimientos del usuario y los requerimientos del sistema.

[Link].1.4. Validación de requerimientos

[Link].1.4.1. Aqui se analiza que los requerimientos sean realistas, completos y


coherentes.

1.1.2. Diseño e implementación del software

[Link]. El software debe ser desarrollado a modo que cumpla con las especificaciones.

[Link].1. Activdades que podrían ser implementadas en el proceso de diseño

[Link].1.1. Diseño arquitectónico

[Link].1.1.1. En este se identifica la estructura globaldel sistema y sus principales


componentes

[Link].1.2. Diseño de interfaz

[Link].1.2.1. Se definen las interfaces entre los componentes de sistema, estas no


deben ser ambiguas. Con una interfaz precisa es posible utilizar un componente sin
que otros sepan cómo se implementó.

[Link].1.3. Diseño de componentes


[Link].1.3.1. Aquí se toma cada componente existente en el sistema y se diseña su
funcionamiento. Este diseño puede ser un dato de la funcionalidad que se espera y se
le puede dejar al programador el diseño específico.

[Link].1.4. Diseño de base de datos

[Link].1.4.1. Se diseña la estructura del sistema de datos y cómo será representado


en una base de datos, el trabajo depende de si se creará uno nuevo o se reutilizará.

1.1.3. Validación del software

[Link]. Se debe validar para confirmar que el software cumple con todo lo solicitado por el
cliente.

[Link].1. Las etapas en el proceso de pruebas son:

[Link].1.1. Prueba de desarrollo

[Link].1.1.1. Se ponen a prueba cada uno de los componentes que conforman al


sistema por separado, esto va desde simples funciones hasta agrupamientos de
dichas funciones.

[Link].1.2. Prueba del sistema

[Link].1.2.1. Se integran los componentes del sistema para verificar que no existan
errores al momento de juntarlos o errores de interfaces de componentes y además
tiene la finalidad de demostrar que el sistema cumple con las funcionalidades.

[Link].1.3. Pruebas de aceptación

[Link].1.3.1. Esta es la última etapa, antes de que el sistema sea aprobado para su
operación, el cliente lo pone a prueba con datos dados por el mismo, esto para
descubrir errores que pudieron ser omitidos y problemas de requerimientos.

1.1.4. Evolución del software

[Link]. Debe de actualizarse el software para que logre satisfacer las necesidades del cliente.

[Link].1. Ya que el software es muy flexible es que es utilizado cada vez más, pues es más
fácil y económico realizarle cambios que hacerlo con el hardware.

1.2. Las descripciones de los procesos deben incluir:

1.2.1. Productos

[Link]. Son el resultado de algunas de las actividades del proceso.

1.2.2. Son las condiciones que son validas antes y despues de realizar algunas de la actividades
del proyecto o de crearse un producto.

1.2.3. Roles

[Link]. Establecen las responsabilidades de los que intervienen en el proyecto.

1.2.4. Precondiciones y poscondiciones


1.3. Tipo de procesos

1.3.1. Plan - driven

[Link]. Tambien son conocidos como procesos ágiles, estos consisten en que todas las
actividades del proceso se planean por anticipado y el avance de este se mide basándose en
este plan.

1.3.2. Modelos de procesos

[Link]. Waterfall

[Link].1. Fue el primer modelo que se publicó acerca de desarrollo de software, este fue
creado a partir de procesos generales de ingeniería en sistemas.

[Link].1.1. Sus etapas principales se basan en las 4 actividades fundamentales


(especificación, diseño, validación y evolución) y las representa como fases separadas.

[Link].1.1.1. Análisis y definición de requerimientos

[Link].[Link]. Se consulta al usuario para establecer los servicios, restricciones y


las metas del sistema.

[Link].1.1.2. Diseño del sistema y software

[Link].[Link]. Aquí se asignan los requerimientos para los sistemas de hardware


y/o software, esto se hace estableciendo una arquitectura de sistema global.

[Link].1.1.3. Implementación y prueba de unidad

[Link].[Link]. En esta etapa se realiza el diseño del software como conjuntos de


programas o unidades del programa. La prueba de unidad se trata de verificar que
cada unidad funcione de manera correcta cumpliendo con su funcionalidad.

[Link].1.1.4. Integración y prueba de sistema

[Link].[Link]. Se integran y prueban todas las unidades del programa o


programas individuales como un solo sistema completo, esto para comprobar que
se cumple con los requerimientos de software.

[Link].1.1.5. Operación y mantenimiento

[Link].[Link]. Aquí se instala y se prueba el programa, normalmente esta es la


fase más larga del ciclo de vida. El mantenimientos consiste en arreglar los errores
que no fueron encontrados antes, mejoras la implementación de las unidades del
sistema y aumentar los servicios del mismo, conforme se van descubriendo nuevos
requerimientos.

[Link].2. Desarrollo de sistemas formales

[Link].2.1. Es una variación del modelo cascada (waterfall), en este se crea un modelo
matemático para un especificación del sistema, luego se corrige el modelo matemático, a
través de transformaciones matemáticas, que mantienen su consistencia en un código
que es posible de ejecutar. Este proceso es muy útil para desarrolla sistemas que tengan
severos requerimientos de seguridad, protección o fiabilidad.
[Link]. Desarrollo incremental

[Link].1. Se establece con la idea de crear una implementación inicial, mostrársela al


usuario para obtener comentarios y luego desarrollarla con sus distintas versiones, esto
hasta lograr producir un sistema adecuado.

[Link].1.1. Las actividades fundamentales, a difernecia del modelo cascada, están


entrelazadas y tienen una retroalimentación rápida entre las actividades. Este resulta un
mejor modelo para los sistemas empresariales, de comercio electrónico y personales.

[Link].1.1.1. Este modelo representa la manera en la que se resuelven los problemas,


es poco común que se trabaje una solución completa del problema por adelantado,
mejor dicho avanza paso por paso.

[Link].[Link]. El desarrollo incremental tiene tres ventajas, en comparación con el


modelo Cascada:

[Link].[Link].1. Se reduce el costo de adaptación a los requerimientos del


cliente.

[Link].[Link].2. Se obtiene retroalimentación del cliente de manera más rápida


y facil.

[Link].[Link].3. Es muy probable que la implementación y entrega de software


útil al cliente sea más rápida, incluso si aún no tiene todas las funcionalidades.

[Link].[Link]. Viéndolo desde un punto de vista administrativo, tiene dos


problemas:

[Link].[Link].1. El proceso no es visible, ya que no se muestran avances tan


seguido.

[Link].[Link].2. La estructura del sistema tiende a degradarse conforme hay


más incrementos,

[Link]. Ingeniería de software orientada a la reutilización

[Link].1. La reutilización de software es muy común, esto sucede sin importar el proceso de
desarrollo que se utilice, en el siglo XXI los procesos de desarrollo con enfoque en
reutilización comenzaron a utilizarse. La etapa incial de especificación y final de validación
de su modelo se pueden comparar con otros modelos, sus etapas intermedias son distintas:

[Link].1.1. Análisis de componentes

[Link].1.1.1. Una vez se tienen las especificaciones, se realiza una busqueda de


componentes para poder implementar estas especificaciones.

[Link].1.2. Modificación de requerimientos

[Link].1.2.1. Se analizan los requerimientos utilizando la información de los


componentes encontrados, luegos de modifican para utilizar los componentes
disponibles.

[Link].1.3. Diseño de sistema con reutilización


[Link].1.3.1. En esta fase se crea o reutiliza un marco conceptual, los creadores
toamn en consideración los componentes reutilizados y crean el marco de referencia
para atenderlo.

[Link].1.4. Desarrollo e integración

[Link].1.4.1. Se crea el software que no puede ser reutilozado y se junta con los
componentes y sistemas COTS, para así crear el nuevo sistema.

[Link].2. Tipos de software que pueden reutilizarse:

[Link].2.1. Servicios Web que se crean para atender servicios estándares y que se
encuentran disponibles para la invocación remota.

[Link].2.2. Colecciones de objetos que se crean como componentes para ser integrados
marco de componentes, como lo son .NET o J2EE.

[Link].2.3. Sistemas de software que son configurados para ser utilizados en un entorno
específico.

1.4. El cambio en el software resulta algo inevitable y más por la rapidez con la que se presentan
nuevas tecnologías.

1.4.1. Existen dos enfoques para reducir los costos del cambio:

[Link]. Evitar el cambio, el proceso anticipa algunos cambios posibles entonces incluyen
actividades para prevenir el rehacer.

[Link]. Tolerancia al cambio, donde todo el proceso se diseña para que realizar los cambios
tenga un bajo costo.

1.4.2. Maneras de enfrentar el cambio y los requerimientos cambiantes

[Link]. Prototipo del sistema

[Link].1. Permite que los usuarios prueben el sistema antes de entregarlo y así se puedan
pulir los requerimientos, de esta manera es probable que los requerimientos de cambios se
reduzcan.

[Link].2. Un prototipo es una versión incial del sistema de baja, media o alta fidelidad, tratar
opciones de diseño e identificar más problemas y encontrar sus soluciones.

[Link]. Entrega incremental

[Link].1. Permite incorporar cambios en mayores incrementos a precios bajos.

2. Es un proceso que se creo a partir del UML


3. Proceso de unificado racional
3.1. Es un proceso de modelo moderno inspirado en el UML y en el proceso asociado de desarollo de
software unificado. Es considerado un modelo de proceso híbrido.

3.1.1. El RUP es descrito por tres perspectivas

[Link]. Dinámica
[Link].1. Está muestra las fases del modelo a través del tiempo.

[Link]. Estática

[Link].1. Presenta las actividades establecidas del proceso.

[Link]. Práctica

[Link].1. En esta se sugieren prácticas que pueden resultar buenas para usar en el
proceso.

3.1.2. Sus fases están más vinculadas con las empresas en lugar de con las preocupaciones
técnicas.

3.1.3. Fases del RUP

[Link]. Concepción

[Link].1. Aquí se establece un casi empresarial para el sistemam

[Link]. Elaboración

[Link].1. Se debe desarrollar la comprensión del problema, crear el marco conceptual


arquitectónico y diseñar el plan del proyecto.

[Link]. Construcción

[Link].1. Aquí se incluyen las partes de diseño, programación y las pruebas del sistema.

[Link]. Transición

[Link].1. Es la fase final del RUP, se interesa en hacer un cambio desde la parte de
desarrollo hasta la parte de usuarios y en finalmente ponerlo a funcionar en el mundo real.

También podría gustarte