capitulo 3

9

Click here to load reader

Transcript of capitulo 3

Page 1: capitulo 3

Metodología de diseño hipermedia orientada a objetos (OOHDM)

OOHDM, propuesta por Rossi en 1996, es la metodología más difundida y estudiada, surgió basada en HDM pero orientada a objetos. Su gran aceptación se debe al ciclo de vida que propone, compuesto por 5 fases que, identifican los requerimientos, elaboran el diseño conceptual, el diseño de navegación, el diseño de interfaz abstracta y la implementación. En cada una de las 5 fases, OOHDM hace uso de diferentes técnicas y diagramas para representar estos modelos. Algunas de ellas, muy conocidas por ser basadas en técnicas de modelado de UML, y otras elaboradas específicamente para esta metodología.

Captura y definición de requisitosFase 1

Diseño conceptualFase 2

Diseño de navegaciónFase 3

Diseño de interfaz abstractaFase 4

ImplementaciónFase 5

Metodología de diseño hipermedia orientada a objetos basada en escenarios (SOHDM)

SOHDM, propuesta por Suh y Lee en 1998, es una de las metodologías que da más importancia a la fase de identificación de requisitos y su principal características es el uso de escenarios como técnica de definición de requisitos.

Las 6 fases del ciclo de vida de SOHDM, realizan todas las tareas importantes para el desarrollo de una aplicación web, empezando con la recolección de requisitos hasta llegar a la implementación de la aplicación, siendo la fase de análisis de dominio la más elaborada, mediante el uso de escenarios para representar el flujo de información entre el sistemas y todos los usuarios.

Page 2: capitulo 3

Análisis del Dominio

Modelado de Objetos

Diseño de Vizualización

Diseño de Navegación

Construcción

EscenariosDiagrama de Contextos

Lista de EventosEscenarios

CRC CRCCSD

CRCCSD

vistas OO

vistas OO

vistas OO

Enlaces de Navegación

Esquema de Página

Especificación de UI Esquema Físico de DB

Diseño de implementación

Diseño de la Página

Diseño de Interfaz de Usuario

Diseño de la DB Lógica

UML-Based Web Engineering (UWE)

Esta metodología se basa en un proceso iterativo e incremental, que incluye flujos de trabajo y puntos de control y sus fases coinciden con las propuestas en el Proceso Unificado de Desarrollo, centrando además su atención en aplicaciones sistematizadas y personalizadas (sistemas adaptativos).

Presenta tres características principales:1. Dirigido por casos de uso, estos casos de uso constituyen la guía fundamental

establecida para las actividades a realizar durante todo el proceso de desarrollo incluyendo el análisis, el diseño, la implementación y las pruebas del sistema.

2. Centrado en la arquitectura, la misma que involucra los elementos más significativos del sistema y relaciona la toma de decisiones que indican cómo debe ser construido el sistema, así como la prioridad de sus actividades.

3. Es iterativo e incremental, divide el ciclo de vida del proyecto en cuatro fases, dentro de las cuales se realizan varias iteraciones en número variable según el proyecto, con la finalidad de hacerlo más manejable.

NDT (NAVIGATIONAL DEVELOPMENT TECHNIQUES

Plantea técnicas para capturar, describir y validar los requisitos de un aplicativo web y, partiendo de esos requisitos, generar los modelos de análisis del sistema.

Se centra en una detallada fase de ingeniería de requisitos, que contempla tanto la captura, como la definición y la verificación de los requisitos.

Page 3: capitulo 3

Este resumen ha presentado de manera global los ciclos de vida de las metodologías de desarrollo web, y como se puede apreciar tienen fases muy similares entre sí, pero se diferencian, en las técnicas utilizadas y el énfasis que hace en cada fase según la importancia que la metodología asigna. Debido a estas fases y técnicas que tienen en común las metodologías estudiadas permiten realizar comparativas que a lo largo de este capítulo serán analizadas. Según algunos autores y nuestro propio punto de vista, el aspecto más importante de un aplicativo web debe ser la navegación, porque debe ser lo más intuitiva para el usuario de manera que no se pierda en el sitio web y encuentre fácilmente toda la información que busca. Por este motivo el análisis se realizará enfocándose hacia la forma como cada metodología enfrenta, resuelve e implementa la navegación de un sitio web.

Ciclos de vida y la navegabilidad

En el capítulo uno, se pudo ver los distintos ciclos de vida que pueden haber, cada metodología estudia la navegación usando diferentes técnicas y diagramas. Algunos ciclos de vida, tienen fases con nombres similares pero realizan distintas tareas, por ejemplo la fase de implementación de OOHDM se refiere a la realización del software mientras que en SOHDM la misma fase hace referencia a realizar diagramas de las páginas, interfaces y base de datos.

Para entender mejor el ciclo de vida de una metodología, se presenta a continuación un cuadro con los conceptos y finalidades que debe cumplir cada fase de un ciclo de vida estándar, asumiendo las siguientes fases:

Fase 1: RequisitosFase 2: AnálisisFase 3: DiseñóFase 4: ImplementaciónFase 5: Pruebas

La fase de requisitos se relaciona con la investigación de todos los requerimientos que el usuario tiene y que debe satisfacer el aplicativo, haciendo uso de técnicas para obtener la información y representarla.

En la fase de análisis se refina y reestructura la información para elaborar un diagrama de clases u objetos que represente y ayude a entender mejor la estructura del aplicativo.

La fase de diseño entrega como resultado las interfaces de usuario, es decir todo aquello que el usuario ve y que debe ser elaborado usando estándares conocidos para facilitar el uso de la aplicación web.

En la fase de implementación se lleva a cabo la elaboración del aplicativo tomando como base toda la información resultante de las fases anteriores para satisfacer cada requisito del usuario.

Page 4: capitulo 3

Y en la última fase se elaboran las pruebas para asegurar la calidad del aplicativo, ingresando información y realizando todos los posibles procesos que el aplicativo debe llevar a cabo.

A continuación se muestra un cuadro que resume las fases del ciclo de vida y las técnicas usadas, por las metodologías vistas en el capitulo uno:

Metodología

Ciclo de vida Técnicas/diagramas

OOHDM

Captura y definición de requisitos

Especificación de actores y tareasEspecificación de escenariosDiagramas de interacción de usuario (UID)

Diseño conceptual Diagrama de clases

Diseño de navegación Esquema de navegaciónContexto de navegación

Diseño de interfaz abstracta

Diagramas de widgets

Implementación Herramienta CASE/IDE

SOHDM

Análisis del dominioDiagrama de contextoLista de eventosDiagramas de escenarios

Modelado de objetos Clases responsabilidad/colaboraciónDiagrama de estructura de clases

Diseño de visualización Vistas orientadas a objetos

Diseño de navegación Nodos de estructuras de accesoMatriz de enlaces de navegación

Diseño de implementación

Diseño de páginasDiseño de interfaz de usuarioDiseño de base de datos lógico

Construcción Herramienta CASE/IDE

UWE

Ingeniería de requisitos

Estudio de Factibilidad de ProyectoDefinición del Alcance del ProyectoRecolección y Análisis de RequerimientosIdentificación de los Principales Actores y Casos de Uso, así como sus relaciones.Especificación de Requerimientos de Sistema

ElaboraciónDiseño Conceptual del SistemaDiseño Navegacional del SistemaDiseño de Implementación del Sistema

Construcción Implementación de la AplicaciónTransición Publicación de la Plataforma

NDT Ingeniería de requisitos Obtener información sobre el entorno y definir objetivosIdentificar y definir los requisitos de almacenamiento de informaciónIdentificar y definir los actoresIdentificar y definir los requisitos funcionales

Page 5: capitulo 3

Identificar y definir los requisitos de interacciónIdentificar y definir los requisitos no funcionalesValidar los requisitosGenerar el documento de requisitos del sistema

Análisis

Modelo conceptualModelo de navegaciónValidar los prototipos

Observando el cuadro anterior se puede mencionar que por el número de técnicas que usan las metodologías en cada fase es mayor su interés por conseguir una mejor representación de la información en esa fase, aunque algunas de las técnicas son bastante complejas de entender e implementar.

En OOHDM algunas de las técnicas son muy conocidas y fáciles de implementar debido a que está orientada a objetos y tiene como base UML (Lenguaje unificado de modelado), por lo tanto posee técnicas de UML como las especificaciones de actores y tareas, y otras técnicas propias y un poco más complejas como el contexto de navegación.

Habiendo visto algunas de las falencias de OOHDM, surgió SOHDM que usa técnicas más fáciles de entender e implementar, también basada en objetos pero enfocándose en escenarios.

Debido a la necesidad de desarrollar aplicaciones web dinámicas más sistematizadas y personalizadas, surge la necesidad de implementar una metodología que satisfaga con todo lo mencionado anteriormente, es así que nace UWE como metodología, está a su vez rescata las fases mas primordiales de OOHDM y SOHDM centrándose más profundamente en cada fase del ciclo de vida, haciendo que cada fase sea un proceso iterativo e incremental. Debido a que han surgido muchas falencias al momento de implementar los aplicativos web, surge la necesidad de implementar una nueva metodología que centra sus fases más detalladamente en los requisitos y análisis llamada NDT, está a su vez recopila fases primordiales de OOHDM, SOHDM y UWE, haciendo que sea una metodología más completa y eficaz.

Pero como este análisis comparativo esta enfocado hacia la manera como cada metodología trata la navegación, se muestra a continuación el siguiente cuadro, en el que se puede apreciar las fases del ciclo de vida con distintos tonos de color, donde el tono más fuerte representa que la metodología trata la navegación de manera profunda, un tono medio representa que trata la navegación sin especificar tareas y

Page 6: capitulo 3

técnicas especificas, y cuando aparece en blanco representa que no contempla el tratamiento de la navegación en esa fase.

Requisitos Análisis Diseño Implementación

Pruebas

OOHDMSOHDM

UWENDT

Observando el cuadro anterior se puede distinguir que en las dos primeras fases del ciclo de vida de OOHDM y SOHDM no se ha tratado la navegabilidad, hasta llegar a la fase de diseño donde se realiza un análisis profundo, y en la fase de implementación se baja un nivel en el tratamiento de la navegación, después se aprecia que UWE ya menciona la navegabilidad en su fase de requisitos y sus tres siguientes fases siempre están enfocadas a un análisis más profundo de la navegación. NDT pone más prioridad en sus dos primeras fases que son los requisitos y su análisis ya que estas dos son esenciales para que obtener aplicativos web muy eficaces.

Además, en el cuadro comparativo, las metodologías se muestran desde la primera en aparecer hasta la más reciente, esto es señal de cómo la navegación se ha considerado un tema esencial al desarrollar aplicaciones web, por lo tanto se la empieza a incluir desde la fase de requisitos.

Y debido a la importancia del tratamiento de la navegación dentro de un aplicativo web, porque de este depende que el usuario se sienta familiarizado y le resulte fácil poder encontrar la información que busca, es que la navegabilidad debe mencionarse desde que se inicia el ciclo de vida de una metodología web, y las fases donde se debe analizar más profundamente deben ser las fases de análisis y diseño.

Como la elaboración de la navegabilidad de un sitio web resulta difícil para el desarrollador que no conoce bien el sistema, es necesario incluir en la mayor parte de la elaboración del aplicativo web al cliente o usuario final, aunque también la experiencia del desarrollador será un punto clave y de mucha ayuda, para resolver los problemas que se presenten.

Page 7: capitulo 3