Resumen Grupo 5.

Anuncio
PROCESO RACIONAL UNIFICADO
El Proceso Racional Unificado (RUP), es un proceso de desarrollo de
software y, constituye la metodología estándar más utilizada para el análisis,
implementación y documentación de sistemas orientados a objetos. Su
principal herramienta es el UML.
FASES DEL PROCESO RACIONAL UNIFICADO
 Fase De Inicio: En esta fase se determina las principales funciones
del sistema para sus usuarios más importantes, se establece un modelo de la
arquitectura del sistema y establece el plan de proyecto y cuanto será su
costo.
 Fase De Elaboración: Durante esta fase, se especifica, en detalle,
la mayoría de los casos de uso del producto y se diseña la arquitectura del
sistema.
 Fase De Construcción: Desarrolla o adquiere los componentes del
software que harán que cada caso de uso sea operativo para los usuarios
finales. Lograr esto requiere que los modelos de análisis y diseño iniciados
durante la fase de elaboración se completen para reflejar la versión final del
incremento del software.
 Fase De Transición: El software se entrega a los usuarios finales
para realizar pruebas beta, y la retroalimentación del usuario reporta tanto
defectos como cambios necesarios. Además el equipo de software crea la
información de soporte necesaria (manuales de usuario, procedimientos de
instalación) para el lanzamiento.
CARACTERÍSTICAS DEL PROCESO RACIONAL UNIFICADO
 Iterativo E Incremental: RUP es un marco de desarrollo iterativo e
incremental compuesto de cuatro fases denominadas Inicio, Elaboración,
Construcción y Transición. Cada una de estas fases es a su vez dividida en
una serie de iteraciones (la de inicio sólo consta de varias iteraciones en
proyectos grandes). Estas iteraciones ofrecen como resultado un incremento
del producto desarrollado que añade o mejora las funcionalidades del
sistema en desarrollo.
 Dirigido Por Los Casos De Uso: Los casos de uso se utilizan para
capturar los requisitos funcionales y para definir los contenidos de las
iteraciones. La idea es que cada iteración tome un conjunto de casos de uso
o escenarios y desarrolle todo el camino a través de las distintas disciplinas:
diseño, implementación, prueba, etc. el proceso dirigido por casos de uso es
el RUP.
 Centrado En La Arquitectura: Asume que no existe un modelo
único que cubra todos los aspectos del sistema. Por dicho motivo existen
múltiples modelos y vistas que definen la arquitectura de software de un
sistema.
 Enfocado En Los Riesgos: Requiere que el equipo del proyecto
se centre en identificar los riesgos críticos en una etapa temprana del ciclo
de vida. Los resultados de cada iteración, en especial los de la fase de
elaboración, deben ser seleccionados en un orden que asegure que los
riesgos principales son considerados primero.
FLUJOS DE TRABAJOS
Un flujo de trabajo muestra la secuencia de actividades que se
desarrollan dentro de uno o varios Casos de Uso, como una pieza de
funcionalidad concreta que satisface los requerimientos de un Actor.
 Flujos de requisitos
 Flujos de análisis
 Flujos de diseño
 Flujos de implementación
 Flujos de Pruebas
INTRODUCCION AL UML
El Lenguaje Unificado de Modelado (UML), es el lenguaje de
modelado de sistemas de software más conocido y utilizado en la actualidad.
Es un lenguaje gráfico para visualizar, especificar, construir y documentar un
sistema de software.
Un modelo UML esta compuesto por tres clases de bloques de
construcción:
 Elementos: Los elementos son abstracciones de cosas reales o
ficticias (objetos, acciones, etc.)
 Relaciones: relacionan los elementos entre sí.
 Diagramas: Son colecciones de elementos con sus relaciones.
LA CONCEPCIÓN DEL UML
El UML es la creación de Grady Booch, James Rumbaugh e Ivar
Jacobson. Estos, trabajaban en empresas distintas durante la década de los
años ochenta y principios de los noventa y cada uno diseñó su propia
metodología para el análisis y diseño orientado a objetos. Sus metodologías
predominaron sobre las de sus competidores. A mediados de los años
noventa empezaron a intercambiar ideas entre sí y decidieron desarrollar su
trabajo en conjunto.
Los anteproyectos del UML empezaron a circular en la industria del
software y las reacciones resultantes trajeron consigo considerables
modificaciones. Se conformó un consorcio del UML. Entre los miembros se
encuentran DEC, Hewlett-Packard, Intellicorp, Microsoft, Oracle, Texas
Instruments y Rational. En 1997 el consorcio produjo la versión 1.O del UML
y lo puso a consideración del OMG (Grupo de administración de objetos)
como respuesta a su propuesta para un lenguaje de modelado estándar.
El UML ha llegado a ser el estándar de factor en la industria del
software, y su evolución aún continúa.
DIAGRAMAS DEL UML
El UML está compuesto por diversos elementos gráficos que se
combinan para conformar diagramas. La finalidad de los diagramas es
presentar diversas perspectivas de un sistema, a las cuales se les conoce
como modelo. Es importante destacar que un modelo UML describe lo que
supuestamente hará un sistema, pero no dice cómo implementar dicho
sistema.
 Diagrama De Clases: Es un diagrama que modela la estructura de
las clases del sistema. Muestra las entidades en un sistema o dominio y la
forma en que tales entidades se relacionan entre si. Representan un conjunto
de elementos que son estáticos, como las clases y los tipos, sus contenidos,
y las relaciones que se establecen entre ellos.
 Diagrama De Objetos: Un diagrama de objetos está relacionado
de cerca con un diagrama de Clases, con la diferencia de que éste describe
las instancias de los objetos de clases en un punto en el tiempo. Son muy
útiles en la comprensión de diagramas de clases complejos, al crear
diferentes casos en los que se aplican las relaciones y las clases.
 Diagrama De Casos De Uso: Un caso de uso es una descripción
de las acciones de un sistema desde el punto de vista del usuario. Su ventaja
principal es la facilidad para interpretarlos, lo que hace que sean
especialmente útiles en la comunicación con el cliente.
Los casos de uso cuentas con varios elementos básicos:
 Actores: Representa al usuario del sistema. Es una entidad externa
al sistema que se modela y que puede interactuar con el.
 Caso de uso: Es una operación / tarea específica que se realiza tras
una orden de algún agente externo, sea desde una petición de un actor o
bien desde la invocación desde otro caso de uso.
 Asociaciones: Hay una asociación entre un actor y un caso de uso
si el actor interactúa con el sistema para llevar a cabo el caso de uso.
Pueden ser de tres tipos:
1. Include: Se puede incluir una relación entre dos casos de uso de
tipo “include” si se desea especificar comportamiento común en dos o más
casos de uso.
2. Extend: Es decir, esta relación implica que el comportamiento de un
caso de uso es diferente dependiendo de ciertas circunstancias.
3. Generalizaciones: Este tipo de relación es uno de los más
utilizados, cumple una doble función dependiendo de su estereotipo, que
puede ser de Uso (<<uses>>) o de Herencia (<<extends>>). Este tipo de
relación está orientado exclusivamente para casos de uso (y no para
actores).
 Limites del sistema: Resulta útil dibujar los límites del sistema
cuando se pretende hacer un diagrama de casos de uso para parte del
sistema.
 Diagrama De Estados: Los diagramas de estado muestran el
conjunto de estados por los cuales pasa un objeto durante su vida en una
aplicación en respuesta a eventos (por ejemplo, mensajes recibidos, tiempo
rebasado o errores), junto con sus respuestas y acciones.
Un evento es un acontecimiento importante a tomar en cuenta para el
sistema. Un estado es la condición de un objeto en un momento
determinado: el tiempo que transcurre entre eventos. Una transición es una
relación entre dos estados, e indica que, cuando ocurre un evento, el objeto
pasa del estado anterior al siguiente.
 Diagrama De Secuencias: Es uno de los más utilizados para
identificar el comportamiento de un sistema, por representar los objetos que
se encuentran en el escenario y la secuencia de mensajes intercambiados
entre los objetos para llevar a cabo la funcionalidad descrita por una
transacción del sistema. Además, se utiliza con frecuencia para validar los
casos de uso y apreciarla lógica del diseño de forma dinámica.
 Diagrama De Actividades: Representa los flujos de trabajo paso a
paso de negocio y operacionales de los componentes en un sistema. Un
Diagrama de Actividades muestra el flujo de control general. El propósito del
diagrama de actividad es: modelar el flujo de tareas y modelar las
operaciones
 Diagrama De Colaboraciones: Es esencialmente un diagrama que
muestra interacciones organizadas alrededor de los roles. También son
llamados diagramas de comunicación.
 Diagrama De Componentes: Representa cómo un sistema de
software es dividido en componentes y muestra las dependencias entre estos
componentes. Son utilizados para modelar la vista estática y dinámica de un
sistema. Muestra la organización y las dependencias entre un conjunto de
componentes. Uno de los usos principales es que puede servir para ver qué
componentes pueden compartirse entre sistemas o entre diferentes partes de
un sistema.
 Diagrama De Clases De Análisis: Son una abstracción de una o
varias clases y/o subsistemas del diseño del sistema en un nivel más alto y
menos formal. Existen tres estereotipos que permiten distinguir el ámbito de
las diferentes clases, como son:
 Clases de Entidad: se utilizan para modelar información que posee
una larga vida y que es a menudo persistente, son las típicas entidades de
los modelos entidad-relación tradicionales, accedidos normalmente por varios
casos de uso y suelen asociárseles una base de datos.
 Clases de Interfaz: se utilizan para modelar las interacciones entre
el sistema y sus actores, es decir usuarios y sistemas externos. Esta
interacción a menudo implica recibir (y presentar) información y peticiones de
(y hacia) los usuarios y los sistemas externos.
 Clases de Control: representan coordinación, secuencia,
transacciones y control de objetos y se usan con frecuencia para encapsular
el control de un caso de uso en concreto.
WEBML (THE WEB MODELING LANGUAGE, 2010)
Web Modeling Language (WebML), es una notación visual para
especificar el contenido, la composición y funciones de navegación de los
sitios Web complejos en el plano conceptual. WebML permite el alto nivel de
descripción de un sitio Web con arreglo a distintas abstracciones
ortogonales, cada uno capturado por un modelo distinto.
Los principales objetivos del proceso de diseño WebML son los
siguientes:
 Expresar la estructura de una aplicación Web con una descripción
de alto nivel, que se puede utilizar para realizar consultas, evolución y
mantenimiento.
 Presentar múltiples vistas de un mismo contenido.
 Separar el contenido de la información de su composición en las
páginas, la navegación y la presentación, el cual puede ser definido y
desarrollado de forma independiente.
 Almacenar la meta-información recopilada durante el proceso de
diseño en un repositorio o librería, el cual se puede utilizar durante la vida útil
de la aplicación para generar páginas Web de forma dinámica.
 Modelar de manera explícita usuarios y comunidades, para permitir
la especificación de las políticas de personalización y aplicaciones uno-auno.
 Permitir la especificación de las operaciones de manipulación de
datos para actualizar el contenido del sitio o la interacción con servicios
externos.
MODELOS DE WEB UML
La especificación de un sitio en WebML consta de 5 perspectivas
ortogonales:
 Modelo De Datos: Expresa el contenido de los datos del sitio, en
términos de las entidades y las relaciones relevantes. Este modelo es
compatible con notaciones clásicas, como el modelo Entidad-Relación
utilizada en el diseño conceptual de base de datos, y los diagramas de
clases UML, usado en el modelado orientado a objetos.
Los elementos fundamentales del modelo de datos son entidades, que
se definen como contenedores de elementos de datos, y las relaciones,
definidas como conexiones semánticas entre entidades. Las entidades
poseen propiedades, llamadas atributos, las cuales tienen un tipo asociado.
Las entidades pueden ser organizadas jerárquicamente y sus relaciones
pueden ser restringidas por medio de restricciones de cardinalidad.
 Modelo De Hipertexto: Especifica la composición y la navegación
del sitio Web. Esto se describe en dos (2) sub-modelos:
o Modelo de Composición: Describe las páginas que componen el
hipertexto, así como de las unidades de contenido que constituyen una
página.
o Modelo de navegación: Expresa la forma como las páginas y
las unidades de contenido están vinculadas para formar el hipertexto. Los
enlaces pueden ser o no de contexto; es no contextual, cuando se conectan
semánticamente páginas independientes (por ejemplo, la página de un artista
a la página de inicio del sitio), o contextual, cuando el contenido de la unidad
de destino de la relación depende del contenido de la unidad fuente.
 Modelo de Gestión de Contenido:
Las aplicaciones Web con frecuencia realizan operaciones sobre los
datos. Algunos ejemplos son el llenado de formularios de información de
perfil personal, la adición de elementos en un carrito de compras, por medio
de aplicaciones de manejo de contenido. En todos estos casos, las acciones
realizadas a través de las interfaces Web tienen efectos secundarios, por
ejemplo, cambian el contenido de algunos datos fuentes conectadas al sitio
Web.
La introducción de las operaciones en WebML no afecta al modelo de
datos, y requiere dos (2) extensiones del modelo de hipertexto.
WebML incluye unidades operacionales predefinidas, que ofrecen las
primitivas más comúnmente utilizadas para actualizar las instancias de las
entidades y relaciones de la aplicación, al crear, modificar y eliminar objetos,
y la conexión y desconexión a través de las relaciones, además de algunas
operaciones útiles, como el inicio de sesión, cierre de sesión, y operaciones
de envío de correo electrónico. Las operaciones de manejo de contenido
predefinidas pueden ser agrupadas en transacciones, las cuales constituyen
secuencias de actualizaciones ejecutadas atómicamente; cuando una
transacción es especificada, o toda la secuencia de operaciones individuales
que la constituyen se ejecuta con éxito, o la secuencia entera se deshace.
Además de las operaciones incorporadas mencionadas anteriormente,
servicios dependientes de aplicaciones y componentes de negocio, como
servicios de pago electrónico, se puede representar utilizando el concepto
general de operación genérica. Una operación genérica es una "caja negra",
cuyos detalles internos no están explícitos en WebML, los cuales pueden ser
vinculados a las unidades WebML o páginas.
 Modelo de Presentación: Expresa la disposición y el aspecto
gráfico de las páginas, independientemente del dispositivo de salida y el
lenguaje, por medio de un resumen de sintaxis XML. Las especificaciones de
presentación son o bien la página específica o genérica.
 Modelo de Personalización: Los usuarios y grupos de usuarios
están explícitamente modelados en la estructura del esquema en forma de
entidades predefinidas llamado usuario y grupo de usuarios. Las
características de estas entidades se pueden utilizar para almacenar un
grupo específico o contenido individual, como sugerencias de compras, lista
de favoritos, y los recursos para la personalización gráfica. Luego, OQL como
expresiones declarativas similares se puede agregar a la estructura del
esquema, que definen los contenidos derivados basado en el perfil de datos
almacenados en los usuarios y entidades de grupo. Este contenido
personalizado se puede utilizar tanto en la composición de las unidades o en
la definición de las especificaciones de presentación.
Descargar