570 likes | 956 Views
Ingeniería Web. Ingeniería Web. Los sistemas y aplicaciones basados en Web (WebApps) ofrecen un complejo arreglo de contenido y funcionalidad. Ingeniería Web (IWeb). La Iweb es el proceso con el que se crean WebApps de alta calidad. No es un clon perfecto de la ingeniería de software.
E N D
Ingeniería Web • Los sistemas y aplicaciones basados en Web (WebApps) ofrecen un complejo arreglo de contenido y funcionalidad.
Ingeniería Web (IWeb) • La Iweb es el proceso con el que se crean WebApps de alta calidad. • No es un clon perfecto de la ingeniería de software. • Acentúa actividades técnicas y administrativas similares. • Existen sutiles diferencias en la manera en como se dirigen dichas actividades, pero el método primordial dicta un enfoque disciplinado para el desarrollo de un sistema
Ingeniería Web • ¿Se pueden aplicar principios, conceptos y métodos de la ingeniería de software al desarrollo Web? • ¿Qué ocurre si persiste un enfoque sin disciplina?
Atributos de los Sistemas y Aplicaciones Basados en Web • Intensidad de red • Internet, intranet… • Concurrencia • Carga impredecible • Desempeño • Espera prolongada • Disponibilidad • 24/7/365 • Gobernada por los datos • Texto, gráficos, audio y video • Sensibilidad al contenido • Calidad y naturaleza estética
Atributos de los Sistemas y Aplicaciones Basados en Web • Evolución contínua • Análogo a la jardinería • Inmediatez • Poner software en el mercado rápidamente • Seguridad • Estética • Presentación y disposición de los elementos
Categorías de Aplicaciones • Informativo • Contenido de sólo lectura • Descarga • Personalizable • Interacción • Cuartos de charla, tableros de anuncios o mensajería instantánea • Entrada del usuario • La entrada con base en formularios… • Orientada a transacciones • Realizar pedidos • Orientada a servicios • Asesoría en trámites • Portal • Canaliza al usuario hacia otros servicios web • Acceso a una base de datos • Almacén de datos • Colección de grandes bases de datos
Estratos de la Ingeniería de WebApp • Modelos de Proceso • Los modelos de procesos IWeb adoptan la filosofía de desarrollo ágil • Reducir el ciclo de desarrollo • Métodos de IS • Conjunto de labores técnicas para construir una WebApp de alta calidad • Herramientas y Tecnología
Estratos de la Ingeniería de WebApp • Proceso • A pesar de la rapidez de los ciclos de desarrollo es importante que: • Adopte el cambio • Aliente la creatividad y la independencia del equipo de desarrollo y fortalezca la interacción con los accionistas de la WebApp • Construya sistemas que utilicen pequeños equipos de desarrollo • Subraye el desarrollo evolutivo o incremental mediante el uso de cortos ciclos de desarrollo
Estratos de la Ingeniería de WebApp • Categorías de Métodos: • Métodos de comunicación: facilita la comunicación entre ingenieros Web y los demás participantes. Recolección de requisitos. Evaluación de incrementos • Métodos de análisis de requisitos: proporcionan una base para comprender la función que proporcionará al usuario final y los modos de interacción que cada clase de usuario requerirá
Estratos de la Ingeniería de WebApp • Métodos de diseño: técnicas de diseño que abordan el contenido, la aplicación, la arquitectura de información, … • Métodos de prueba: incorporan revisiones técnicas formales, pruebas de navegación, de seguridad, etc.
Estratos de la Ingeniería de WebApp • Herramientas y Tecnología: • Descripción de contenido y lenguajes de modelación (HTML, XMIL, etc) • Lenguajes de programación • Recursos basados en componentes • Navegadores, herramientas multimedia, etc.
El Proceso de la Ingeniería Web • Los atributos de los sistemas y aplicaciones basados en Web tienen una profunda influencia sobre el proceso de IWeb que se elija • La inmediatez y la evolución contínua son atributos principales de una WebApp, se debe elegir un modelo de proceso ágil que produzca liberaciones a un ritmo vertiginoso
El Proceso de Ingeniería Web • Definición del Marco de Trabajo • Refinamiento del Marco de Trabajo
El Proceso de Ingeniería Web • Definición del Marco de trabajo • Cualquiera de los modelos de proceso ágil se pueden aplicar como un proceso Iweb • La efectividad de cualquier proceso de ingeniería depende de su adaptabilidad • Antes de definir un marco de trabajo se debe reconocer que: • Las WebApps con frecuencia se entregan de manera incremental • Los cambios ocurrirán frecuentemente • Los plazos son cortos
El Proceso de Ingeniería Web • Definición del Marco de Trabajo • Actividades involucradas: • Comunicación con el cliente • Análisis del negocio: define el contexto empresarial-organizativo para la WebApp • Formulación: es una actividad de recopilación de requisitos que involucra a todos los participantes • Planeación • Se crea el plan de proyecto para el incremento de la WebApp • Modelado • Abarca las tareas de análisis y diseño • Construcción • Despliegue • La webApp se configura para su ambiente operativo
El Proceso de Ingeniería Web • Refinamiento del marco de trabajo: • Se ha advertido que el modelo de proceso IWeb puede ser adaptable • Las tareas asociadas con las actividades del marco de trabajo IWeb pueden modificarse, eliminarse o extenderse con base en características del problema, el producto, el proyecto y la gente en el equipo.
Mejores Prácticas en Ingeniería Web • Tomar tiempo para entender las necesidades del negocio y los objetivos del producto • Describir como interactuarán los usuarios con la WebApp aplicando un enfoque basado en escenarios • Desarrollar un plan del proyecto
Mejores Prácticas en Ingeniería Web • Utilizar algún tiempo para modelar lo que se construirá • UML, diagramas de secuencia • Revisar la consistencia y calidad de los modelos • RTF • Utilizar herramientas y tecnología que permitan construir el sistema con componentes reutilizables • Diseñar pruebas amplias y ejecutarlas antes de liberar el sistema.
Modelado de Análisis para Aplicaciones Web
Modelado de Análisis para Aplicaciones Web • Un equipo de ingeniería Web debe emprender el modelado de análisis si… • La WebApp es grande o compleja • El número de clientes es grande • El número de ingenieros Web es grande • Las metas y los objetivos afectarán la línea de referencia del negocio • El éxito de la WebApp tendrá fuerte conexión con el del negocio
Requisitos para el Análisis de las WebApps • La jerarquía de usuario • Desarrollo de casos de uso • Afinación del modelo de caso de uso
Requisitos para el Análisis de las WebApps • El análisis de requisitos para las WebApps abarca: • Formulación • Recopilación de requisitos • Modelado de análisis
Requisitos para el Análisis de las WebApps • La jerarquía de usuario • Las categorías de usuarios finales que interacturán con la WebApp se identifican como parte de las tareas de formulación y de recopilación de requisitos • Cuando el número de usuarios es grande es aconsejable desarrollar una jerarquía de usuarios
Requisitos para el Análisis de las WebApps • Desarrollo de casos de uso • Conocidos también como “haces de funcionalidad” • Los casos de uso se desarrollan para cada categoría de usuario descrita en la jerarquía de usuario
Requisitos para el Análisis de las WebApps • Afinación del modelo de caso de uso • Los casos de uso se organizan en paquetes funcionales y cada paquete se valora para verificar que es: • Comprensible • Cohesivo • Libremente acoplados • Jerárquicamente superficial
El Modelado de Análisis para WebApps • Actividades de análisis: • Análisis de contenido • Análisis de interacción • Análisis de funciones • Análisis de configuración
El Modelo de Contenido • Definición de objetos de contenido • Relaciones y jerarquía de contenido • Clases de análisis para WebApps
El Modelo de Contenido • Definición de objetos de contenido • El tipo y forma del contenido abarca un amplio espectro de elaboración y complejidad. • El contenido puede desarrollarse antes de la implementación de la WebApp • Un objeto de contenido puede ser una descripción textual de un producto… • Los objetos de contenido se extraen de los casos de uso.
El Modelo de Contenido • Relaciones y jerarquía de contenido • Una simple lista de objetos de contenido, asociada con una breve descripción de cada objeto • Diagramas de relación de entidades o árboles de datos
El Modelo de Contenido • Clases de análisis para WebApps
El Modelo de Interacción • A este modelo de interacción lo componen 4 elementos: • Casos de uso • Diagramas de secuencia • Diagramas de estado • Prototipo de interfaz de usuario
El Modelo Funcional • Aborda 2 elementos de procesamiento de la WebApp y cada uno representa un grado diferente de abstracción de procedimiento: • 1) Funcionalidad observable respecto al usuario • 2) Operaciones dentro de las clases de análisis que implementan comportamientos asociados a la clase
El Modelo de Configuración • En algunos casos, el modelo de configuración no es mas que una lista de atributos tanto del lado del servidor como del lado del cliente
Análisis Relación-Navegación • “La navegación no sólo es la acción de saltar de página a página, sino la idea de moverse a través de un espacio de información”. • El análisis relación-navegación proporciona una serie de pasos de análisis que luchan por identificar relaciones entre los elementos descubiertos como parte de la creación del modelo de análisis
Análisis Relación-Navegación • El enfoque ARN se organiza en 5 pasos: • Análisis de los participantes • Análisis de elementos • Análisis de relaciones • Análisis de navegación • Análisis de evaluación