lunes, 18 de octubre de 2021

¿Qué es RUP?

 Este es una metodología de desarrollo de Software que consiste en suministrar un enfoque para asignar tareas y resposabilidades dentro de una organización de desarrollo. 

El significado de sus siglas significan "Rational Unified Process".

Algunas de sus características son:

-Conceptualmente amplio y diverso.

-Busca implementar las mejores prácticas en Ingeniería de Software.

-Maneja una forma disciplinada de asignar tareas y responsabilidades.

-Permite mediciones, tales como: estimación de costos y tiempo, nivel de avance, entre otras.

Quiz

 https://kahoot.it/challenge/09458706?challenge-id=758a30f5-c6f1-4c7c-b118-3d6e86a9f355_1634602535497

Roles

 

Estos son los Roles de un proyecto y que definen las tareas de cada uno y el resultado. Algunos de esos 

Roles son:

 Analistas:

Analista de procesos de negocio.

Es una persona es responsable de trabajar con los gerentes de negocios y el personal para definir y validar la operación actual del negocio y diseñar modelos de procesos futuros con participantes de negocios, arquitectos de procesos y diseñadores de procesos.


Diseñador del negocio.

Un diseñador de negocios aplica una mentalidad de diseño para resolver problemas comerciales estratégicos. El diseñador de negocios considera un desafío comercial desde una perspectiva mucho más amplia y permite que las organizaciones se adapten más rápidamente a las condiciones y oportunidades del mercado.

Equivalencias

 

¿Cómo se ve esto en otros modelos de software?

Como sabemos en la definición formal de la organización ISO, se cuenta que el estándar indica una serie de procesos desde la recopilación de requisitos hasta la culminación del software y este comprende de 17 procesos los cuales son agrupados en tres categorías: principales, de apoyo y de organización.

Aún que algunos modelos; Como por ejemplo el modelo cascada, cambian las fases de esta definición formal y las resumen a cinco fases (Requisitos, Diseño, Implementación, Verificación y Mantenimiento.) donde en estas se llevan acabó las diversas metodologías para poder alcanzar el resultado deseado, y poder generar mejoras dentro de los programas establecidos y las especificaciones del cliente.

jueves, 14 de octubre de 2021

Artefactos (Productos)

 

Como ya vimos anteriormente cada una de las fases realiza una diferente serie de artefactos para saber mejora función y estructura de un programa. Los artefactos son los productos tangibles (es decir, que se pueden tocar) resultante del proceso de desarrollo de software, algunos artefactos pueden ser documentos como un Caso de Negocio o un documento de la arquitectura del Software, diagramas de clase u otros modelos UML , estos ayudan a la arquitectura o el diseño de este;

Como sabemos cada artefacto sirven para cada paso para la elaboración del programa y estos se dividen en disciplinas, de ahí en modelos y así se acomodan los artefactos que se usan , vamos a adentrarnos un poco más en estos:

 

DISCIPLINA

MODELOS A GENERAR EN LA DISCIPLINA

ARTEFACTOS DE SOFTWARE UTILIZADO

 

Modelo de Análisis/Diseño de Negocio

-Diagrama de clase: 

Identifica las clases del negocio y las relaciones entre ellas. Se corresponde con la estructura de la organización y de la información.


-Diagrama de actividad: 

Se usa principalmente para modelar el flujo de trabajo y es útil para analizar los use case describiendo las acciones que necesitan realizarse.


-Diagrama de secuencia: 

Representa el flujo de trabajo centrado en el intercambio de mensajes entre entidades del negocio.



 

Requerimientos

 

-Tabla de Eventos del Sistema:

Identificar y analizar nuevos eventos a nivel de sistema


 

Modelo Use Case

-Diagrama de use case: 

Describe lo que debe hacer el sistema para automatizar uno o más pasos de la realización del use case de negocio.


-Plantilla para especificar use case, o: A nivel de sistema se distingue entre actores primarios y secundarios.

 

-Diagrama de actividad: Documenta flujos de trabajo del negocio ante las solicitudes del actor.

Análisis y Diseño

Modelo de Análisis

-Diagrama de clase: Identifica las clases del negocio y las relaciones entre ellas.


 

-Diagrama de secuencia: Representa el flujo de trabajo.

 

Modelo de Mapa de Navegación

-Prototipos: Muestra los elementos de la interfaz gráfica de usuario, estos pueden generarse con una herramienta o manualmente.

 

-Diagrama de estado: Representa la secuencia de navegación entre las instancias de las clases interfaz del sistema.


 

Modelo de Diseño

-Diagrama de clase: Se especifican propiedades de las clases entidad, interfaz y control.


-Diagrama de secuencia: Representa el flujo de trabajo

Implementación

Modelo de Implementación

-Código fuente operativo y documentado: En el lenguaje de programación elegido.

 

-Diagrama de paquete: Se utiliza para organizar clases en los subdirectorios de un proyecto, de acuerdo con un criterio.


Prueba

Modelo de Prueba

-Especificación de casos de prueba: Describe cuáles son los datos con los que se ejecuta el caso de prueba.

 

 


REFERENCIAS

Jaramillo, C., & Perfil, V. T. M. (2018, 24 octubre). Roles y Artefactos en RUP. Roles y Artefactos en RUP. Recuperado 14 de octubre de 2021, de http://ingenieria-en-softwaree-ii.blogspot.com/p/roles-y-artefactos-en-rup.html

L, A. (2016, 7 noviembre). Artefactos. RUP. Recuperado 14 de octubre de 2021, de https://rupingsw.wordpress.com/artefactos/

Norelva Niño, Christiane Metzner. “El Proceso de Desarrollo RUP-GDIS.” SCTC 2020 - Sitio del V Simposio Científico y Tecnológico en Computación, 09 Mayo 2016, https://www.sctc.org.ve/memorias/SCTC2016/SCTC2016-p002-011.pdf. Accessed 09 Octubre 2021.



lunes, 11 de octubre de 2021

Fases y Disciplinas

Fases

El ciclo de vida RUP se divide en 4 fases: Iniciación, Elaboración, Construcción y Transición.
En cada fase existen una o mas iteraciones y cada fase tiene un enfoque diferente. Una fase no puede ser iniciada hasta que se le de fin ala fase anterior a esta.

En cada una de las fases de van afinando los objetivos de las fases anteriores lo cual permite ir acercase cada vez mas al objetivo final el cual es poder crear un sistema que logre satisfacer las necesidades de los usuarios.

Este es el objetivo que se busca en cada fase:

Iniciación: Esta fase busca definir y acordar el alcance del proyecto con los involucrados. Se tienen que identificar los diferentes tipos de riesgos asociados al proyecto, producir el plan de las fases e iteraciones posteriores y proponer la visión general de la arquitectura que se estará utilizando en el software.


Elaboración: Se refinan los objetivos de la fase anterior. También en esta fase se seleccionan los casos de uso y se realiza una especificación de los casos de uso seleccionados, así como el primer análisis de l dominio del problema. Los casos de uso permiten definir la arquitectura base del sistema las cuales se desarrollaran en esta fase. 


Fase de Desarrollo o Construcción: En esta fase el propósito es completar la funcionalidad del sistema. Debido a esto se clarifican requerimientos pendientes, se administran los cambios de acuerdo alas evaluaciones hechas por los usuarios y se realizan mejores al proyecto.


Fase de Transición o de Cierre: En esta fase se busca asegurar que el software este completamente disponible para los usuarios finales, se ajustan errores y defectos encontrados en las pruebas de aceptación, se capacita a los usuarios y se provee el soporte técnico que sea necesario. Y finalmente se verifica que el producto cumpla con todas las especificaciones que fueron fijadas en la fase de iniciación por las personas involucradas en el proyecto.








Disciplinas

Son 9 las disciplinas o flujos que conforman el RUP. Están divididas en dos etapas. La primera es la etapa de proceso y la segunda es la etapa de soporte.

Las disciplinas de proceso son:

 • Modelado de negocio: Se busca entender problemas los cuales la organización busca solucionar. Medir el impacto del cambio organizacional. Asegurar que los usuarios finales, desarrolladores y otros participantes tengan un entendimiento compartido del problema. Y entender como el sistema que será desarrollado encaja con la organización.

 • Requisitos: Se busca definir los limites del sistema, proveer a los desarrolladores del sistema de una mejor entendimiento de los requerimientos de este, proveer una base para la planeación de los contenidos técnicos de las diferentes iteraciones, así como una base para la estimación de costo y tiempo necesarios para que el sistema sea desarrollado. Y se define una interfaz para el sistema, esta enfocada en las necesidades y objetivos del usuario.

 • Análisis y Diseño: Se transforman los requerimientos a diseños del sistema. Se desarrolla una arquitectura robusta para el sistema y se adapta el diseño para hacerlos corresponder con el ambiente de implementación y ajustarla para el desempeño adecuado.

 • Implementación: Se define la organización del código, se implementa el diseño de los elementos en términos de los elementos (archivos fuente, binarios, ejecutables y otros). También se busca probar los componentes desarrollados como unidades e integrar los resultados individuales en un sistema ejecutable.

 • Pruebas: El propósito es encontrar las fallas de calidad en el software y documentar la información obtenida. Recomendar sobre la calidad percibida en dicho software, validar y probar las suposiciones hechas durante el diseño y la especificación de requerimientos de forma concreta.

• Despliegue: 
Esta disciplina describe las actividades asociadas con el aseguramiento de la entrega y disponibilidad del producto de software hacia el usuario final.

¿Qué es RUP?

 Este es una metodología de desarrollo de Software que consiste en suministrar un enfoque para asignar tareas y resposabilidades dentro de u...