SlideShare ist ein Scribd-Unternehmen logo
1 von 43
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.
• 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
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 Ingeniería Web
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 IWeb
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
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
• 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
Requisitos para el Análisis de las
WebApps
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
• 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
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

Weitere ähnliche Inhalte

Was ist angesagt?

Modelado de analisis para aplicaciones web
Modelado de analisis para aplicaciones webModelado de analisis para aplicaciones web
Modelado de analisis para aplicaciones webMaritzaD
 
Análisis de riesgos de un proyecto de software
Análisis de riesgos de un proyecto de softwareAnálisis de riesgos de un proyecto de software
Análisis de riesgos de un proyecto de softwareAngel Reyes
 
Arquitectura 3 Capas
Arquitectura 3 CapasArquitectura 3 Capas
Arquitectura 3 CapasFani Calle
 
Topicos Avanzados de Programacion - Unidad 3 componentes y librerias
Topicos Avanzados de Programacion - Unidad 3 componentes y libreriasTopicos Avanzados de Programacion - Unidad 3 componentes y librerias
Topicos Avanzados de Programacion - Unidad 3 componentes y libreriasJosé Antonio Sandoval Acosta
 
Modelos de desarrollo de aplicaciones web
Modelos de desarrollo de aplicaciones webModelos de desarrollo de aplicaciones web
Modelos de desarrollo de aplicaciones webYaskelly Yedra
 
Requerimientos no funcionales
Requerimientos no funcionalesRequerimientos no funcionales
Requerimientos no funcionalesAngel Minga
 
CASCADA CON REDUCCION DE RIESGOS
CASCADA CON REDUCCION DE RIESGOSCASCADA CON REDUCCION DE RIESGOS
CASCADA CON REDUCCION DE RIESGOSJofrahona Rojinegro
 
Diccionario de datos
Diccionario de datosDiccionario de datos
Diccionario de datosJorge Garcia
 
Modelos y capas de la ingenieria de software
Modelos y capas  de la ingenieria de softwareModelos y capas  de la ingenieria de software
Modelos y capas de la ingenieria de softwarejhonatanalex
 
diagrama de colaboracion
diagrama de colaboraciondiagrama de colaboracion
diagrama de colaboracionstill01
 
Ejemplo pruebas de software
Ejemplo pruebas de softwareEjemplo pruebas de software
Ejemplo pruebas de softwareJohn Fonseca
 
Importancia del análisis de requerimientos
Importancia del análisis de requerimientosImportancia del análisis de requerimientos
Importancia del análisis de requerimientosalmarza1
 

Was ist angesagt? (20)

Metodologia orientada a objeto
Metodologia orientada a objetoMetodologia orientada a objeto
Metodologia orientada a objeto
 
Metodología CommonKADS
Metodología CommonKADSMetodología CommonKADS
Metodología CommonKADS
 
Requerimientos del software
Requerimientos del software Requerimientos del software
Requerimientos del software
 
Requerimientos norma ieee830
Requerimientos norma ieee830Requerimientos norma ieee830
Requerimientos norma ieee830
 
Modelado de analisis para aplicaciones web
Modelado de analisis para aplicaciones webModelado de analisis para aplicaciones web
Modelado de analisis para aplicaciones web
 
13.diseño de web apps
13.diseño de web apps13.diseño de web apps
13.diseño de web apps
 
Análisis de riesgos de un proyecto de software
Análisis de riesgos de un proyecto de softwareAnálisis de riesgos de un proyecto de software
Análisis de riesgos de un proyecto de software
 
Diseño arquitectónico
Diseño arquitectónicoDiseño arquitectónico
Diseño arquitectónico
 
Arquitectura 3 Capas
Arquitectura 3 CapasArquitectura 3 Capas
Arquitectura 3 Capas
 
Topicos Avanzados de Programacion - Unidad 3 componentes y librerias
Topicos Avanzados de Programacion - Unidad 3 componentes y libreriasTopicos Avanzados de Programacion - Unidad 3 componentes y librerias
Topicos Avanzados de Programacion - Unidad 3 componentes y librerias
 
Metodologias web
Metodologias webMetodologias web
Metodologias web
 
Modelos de desarrollo de aplicaciones web
Modelos de desarrollo de aplicaciones webModelos de desarrollo de aplicaciones web
Modelos de desarrollo de aplicaciones web
 
Requerimientos no funcionales
Requerimientos no funcionalesRequerimientos no funcionales
Requerimientos no funcionales
 
CASCADA CON REDUCCION DE RIESGOS
CASCADA CON REDUCCION DE RIESGOSCASCADA CON REDUCCION DE RIESGOS
CASCADA CON REDUCCION DE RIESGOS
 
Diccionario de datos
Diccionario de datosDiccionario de datos
Diccionario de datos
 
Taller de Base de Datos - Unidad 7 Conectividad
Taller de Base de Datos - Unidad 7 ConectividadTaller de Base de Datos - Unidad 7 Conectividad
Taller de Base de Datos - Unidad 7 Conectividad
 
Modelos y capas de la ingenieria de software
Modelos y capas  de la ingenieria de softwareModelos y capas  de la ingenieria de software
Modelos y capas de la ingenieria de software
 
diagrama de colaboracion
diagrama de colaboraciondiagrama de colaboracion
diagrama de colaboracion
 
Ejemplo pruebas de software
Ejemplo pruebas de softwareEjemplo pruebas de software
Ejemplo pruebas de software
 
Importancia del análisis de requerimientos
Importancia del análisis de requerimientosImportancia del análisis de requerimientos
Importancia del análisis de requerimientos
 

Andere mochten auch

Qué es la ingeniería web
Qué es la ingeniería webQué es la ingeniería web
Qué es la ingeniería webVictor Barraza
 
Ingenieria Web
Ingenieria WebIngenieria Web
Ingenieria WebLiszeth
 
INGENIERIA WEB
INGENIERIA WEBINGENIERIA WEB
INGENIERIA WEBwilboyman
 
Presentacion curso ingenieria web ing. aldo zanabria
Presentacion curso ingenieria web   ing. aldo zanabriaPresentacion curso ingenieria web   ing. aldo zanabria
Presentacion curso ingenieria web ing. aldo zanabriaAldo Hernán Zanabria Gálvez
 
Exp. Ingenieria Web
Exp. Ingenieria WebExp. Ingenieria Web
Exp. Ingenieria WebDiego Celi
 
Metodologías de ingeniería Web dirigida por modelos
Metodologías de ingeniería Web dirigida por modelosMetodologías de ingeniería Web dirigida por modelos
Metodologías de ingeniería Web dirigida por modelosJose R. Hilera
 
Fase 2 modelado del análisis de i web
Fase 2 modelado del análisis de i webFase 2 modelado del análisis de i web
Fase 2 modelado del análisis de i webROSA IMELDA GARCIA CHI
 
Ingenieria web
Ingenieria webIngenieria web
Ingenieria webarienneya
 
Introducción a la ingeniería web
Introducción a la ingeniería webIntroducción a la ingeniería web
Introducción a la ingeniería webCarlos Van de Velde
 
0102 introducción-e_ingeniería_web
0102  introducción-e_ingeniería_web0102  introducción-e_ingeniería_web
0102 introducción-e_ingeniería_webCarlos Angarita
 
Fase 1 formulacion y planeación i web
Fase 1 formulacion y planeación i webFase 1 formulacion y planeación i web
Fase 1 formulacion y planeación i webROSA IMELDA GARCIA CHI
 
Ingeniería del software basada en componentes
Ingeniería del software basada en componentesIngeniería del software basada en componentes
Ingeniería del software basada en componentesjose_macias
 

Andere mochten auch (20)

Qué es la ingeniería web
Qué es la ingeniería webQué es la ingeniería web
Qué es la ingeniería web
 
Ingenieria Web
Ingenieria WebIngenieria Web
Ingenieria Web
 
Ingenieria web
Ingenieria webIngenieria web
Ingenieria web
 
Ingenieria Web
Ingenieria WebIngenieria Web
Ingenieria Web
 
Metodología IWeb
Metodología IWebMetodología IWeb
Metodología IWeb
 
INGENIERIA WEB
INGENIERIA WEBINGENIERIA WEB
INGENIERIA WEB
 
Presentacion curso ingenieria web ing. aldo zanabria
Presentacion curso ingenieria web   ing. aldo zanabriaPresentacion curso ingenieria web   ing. aldo zanabria
Presentacion curso ingenieria web ing. aldo zanabria
 
Exp. Ingenieria Web
Exp. Ingenieria WebExp. Ingenieria Web
Exp. Ingenieria Web
 
Ingenieria web
Ingenieria webIngenieria web
Ingenieria web
 
Ingeniería web
Ingeniería webIngeniería web
Ingeniería web
 
Metodologías de ingeniería Web dirigida por modelos
Metodologías de ingeniería Web dirigida por modelosMetodologías de ingeniería Web dirigida por modelos
Metodologías de ingeniería Web dirigida por modelos
 
Ingenieria web
Ingenieria webIngenieria web
Ingenieria web
 
Ingenieria web
Ingenieria webIngenieria web
Ingenieria web
 
Fase 2 modelado del análisis de i web
Fase 2 modelado del análisis de i webFase 2 modelado del análisis de i web
Fase 2 modelado del análisis de i web
 
Ingenieria web
Ingenieria webIngenieria web
Ingenieria web
 
Ingeniería Web
Ingeniería WebIngeniería Web
Ingeniería Web
 
Introducción a la ingeniería web
Introducción a la ingeniería webIntroducción a la ingeniería web
Introducción a la ingeniería web
 
0102 introducción-e_ingeniería_web
0102  introducción-e_ingeniería_web0102  introducción-e_ingeniería_web
0102 introducción-e_ingeniería_web
 
Fase 1 formulacion y planeación i web
Fase 1 formulacion y planeación i webFase 1 formulacion y planeación i web
Fase 1 formulacion y planeación i web
 
Ingeniería del software basada en componentes
Ingeniería del software basada en componentesIngeniería del software basada en componentes
Ingeniería del software basada en componentes
 

Ähnlich wie Ingenieria web

Modelado de análisis para aplicaciones web karina arevalo
Modelado de análisis para aplicaciones web karina arevaloModelado de análisis para aplicaciones web karina arevalo
Modelado de análisis para aplicaciones web karina arevalokarinaarevalo22
 
FORMACIÓN Y PLANEARON PARA LA INGENIERÍA WEB
FORMACIÓN Y PLANEARON PARA LA INGENIERÍA WEBFORMACIÓN Y PLANEARON PARA LA INGENIERÍA WEB
FORMACIÓN Y PLANEARON PARA LA INGENIERÍA WEBMaya Guerrero
 
Desarrollo web final
Desarrollo web finalDesarrollo web final
Desarrollo web finalproo
 
Desarrollo web
Desarrollo webDesarrollo web
Desarrollo webproo
 
Planificacion y formulacion de web.
Planificacion y formulacion de web.Planificacion y formulacion de web.
Planificacion y formulacion de web.MaritzaD
 
02 proceso ciclodevida
02 proceso ciclodevida02 proceso ciclodevida
02 proceso ciclodevidaclaudiappaez
 
Calendarización de proyectos de software
Calendarización de proyectos de softwareCalendarización de proyectos de software
Calendarización de proyectos de softwareTensor
 
Procesos de Software EGEL-UNITEC
Procesos de Software EGEL-UNITECProcesos de Software EGEL-UNITEC
Procesos de Software EGEL-UNITECmrojas_unitec
 
Modelo de analisis
Modelo de analisisModelo de analisis
Modelo de analisisdiana_caluna
 
Desarrollo de software orientado a la web
Desarrollo de software orientado a la webDesarrollo de software orientado a la web
Desarrollo de software orientado a la webfredycollaguazo
 
Ingeniería de software - definiciones
Ingeniería de software - definicionesIngeniería de software - definiciones
Ingeniería de software - definicionesdettebe
 
Modelado del analisis exposicion
Modelado del analisis exposicionModelado del analisis exposicion
Modelado del analisis exposicionDayanita Intriago
 
Modelado del analisis exposicion
Modelado del analisis exposicionModelado del analisis exposicion
Modelado del analisis exposicionDayanita Intriago
 
15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC
15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC
15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVCLuis Fernando Aguas Bucheli
 

Ähnlich wie Ingenieria web (20)

Modelado de análisis para aplicaciones web karina arevalo
Modelado de análisis para aplicaciones web karina arevaloModelado de análisis para aplicaciones web karina arevalo
Modelado de análisis para aplicaciones web karina arevalo
 
Ddd
DddDdd
Ddd
 
FORMACIÓN Y PLANEARON PARA LA INGENIERÍA WEB
FORMACIÓN Y PLANEARON PARA LA INGENIERÍA WEBFORMACIÓN Y PLANEARON PARA LA INGENIERÍA WEB
FORMACIÓN Y PLANEARON PARA LA INGENIERÍA WEB
 
Desarrollo web final
Desarrollo web finalDesarrollo web final
Desarrollo web final
 
Desarrollo web
Desarrollo webDesarrollo web
Desarrollo web
 
Planificacion y formulacion de web.
Planificacion y formulacion de web.Planificacion y formulacion de web.
Planificacion y formulacion de web.
 
02 proceso ciclodevida
02 proceso ciclodevida02 proceso ciclodevida
02 proceso ciclodevida
 
Calendarización de proyectos de software
Calendarización de proyectos de softwareCalendarización de proyectos de software
Calendarización de proyectos de software
 
Procesos de Software EGEL-UNITEC
Procesos de Software EGEL-UNITECProcesos de Software EGEL-UNITEC
Procesos de Software EGEL-UNITEC
 
Espoch
EspochEspoch
Espoch
 
Clase 11
Clase 11Clase 11
Clase 11
 
Ingeniería web
Ingeniería webIngeniería web
Ingeniería web
 
Modelo de analisis
Modelo de analisisModelo de analisis
Modelo de analisis
 
Desarrollo de software orientado a la web
Desarrollo de software orientado a la webDesarrollo de software orientado a la web
Desarrollo de software orientado a la web
 
Ingeniería de software - definiciones
Ingeniería de software - definicionesIngeniería de software - definiciones
Ingeniería de software - definiciones
 
Modelado del analisis exposicion
Modelado del analisis exposicionModelado del analisis exposicion
Modelado del analisis exposicion
 
Modelado del analisis exposicion
Modelado del analisis exposicionModelado del analisis exposicion
Modelado del analisis exposicion
 
Software de tipo web
Software de tipo webSoftware de tipo web
Software de tipo web
 
15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC
15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC
15-Unidad 4: Introducción a las Arquitecturas Web 4.1 DAO 4.2 MVC
 
La Ingeniería Web
La Ingeniería WebLa Ingeniería Web
La Ingeniería Web
 

Ingenieria web

  • 2. Ingeniería Web • Los sistemas y aplicaciones basados en Web (WebApps) ofrecen un complejo arreglo de contenido y funcionalidad.
  • 3. 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
  • 4. 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?
  • 5. Atributos de los Sistemas y Aplicaciones Basados en Web
  • 6. 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
  • 7. 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
  • 8. 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
  • 9. 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
  • 10. 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
  • 11. 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á
  • 12. 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.
  • 13. 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.
  • 14. El Proceso de Ingeniería Web
  • 15. 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
  • 16. El Proceso de Ingeniería Web • Definición del Marco de Trabajo • Refinamiento del Marco de Trabajo
  • 17. 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
  • 18. 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
  • 20. 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.
  • 21. Mejores Prácticas en Ingeniería Web
  • 22. 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
  • 23. 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.
  • 24. Modelado de Análisis para Aplicaciones Web
  • 25. 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
  • 26. • 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
  • 27. • 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
  • 28. • 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
  • 29. • 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
  • 30.
  • 31. • 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 Requisitos para el Análisis de las WebApps
  • 32. 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
  • 33. El Modelo de Contenido • Definición de objetos de contenido • Relaciones y jerarquía de contenido • Clases de análisis para WebApps
  • 34. • 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
  • 35. 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
  • 36. El Modelo de Contenido • Clases de análisis para WebApps
  • 37. 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
  • 38.
  • 39. 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
  • 40.
  • 41. 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
  • 42. 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
  • 43. 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