25 Jun
Conceptos Fundamentales en Ingeniería Web
Ingeniería Web (IW): El marco de disciplinas que garantiza un enfoque para la construcción ágil de aplicaciones web.
Enfoque Ágil: Combina una filosofía y un conjunto de directrices para el desarrollo. Destaca la comunicación activa y continua entre cliente y desarrollador.
Objetivos de la Ingeniería Web (IW):
- Intento de evitar el caos existente en el desarrollo de sitios web.
- Objetivos y requisitos bien definidos.
- Desarrollo de un producto en fases.
- Planificación cuidadosa de dichas fases.
- Diseño y desarrollo sistemático.
- Producción de documentación.
- Auditoría continua de todo el proceso.
Marco de la Ingeniería Web: Conjunto de actividades que siempre se llevarán a cabo para todos los proyectos de IW. Cada actividad se compone de:
- Tareas de trabajo.
- Productos de trabajo.
- Puntos de control de calidad.
- Hitos del proyecto.
Actividades (Paraguas) del Marco:
- Comunicación: Recogida de requisitos implicando una gran colaboración con el cliente.
- Planificación: Establece un plan gradual.
- Modelado: Creación de modelos para ayudar a entender las necesidades de la aplicación web.
- Construcción: Combina la generación de código con las pruebas.
- Implementación: Proporciona información sobre la base de la evaluación.
Principios de Agilidad
- Satisfacer al cliente con la entrega temprana y continua del software.
- Entregar el software incrementalmente a plazos cortos.
- Trabajar juntos los desarrolladores y la gente de negocios.
- Dar un entorno agradable y motivar a los trabajadores.
- Transmitir información cara a cara.
- Mantener un ritmo constante de trabajo.
- Prestar atención al diseño mejora la agilidad.
- Reflexionar sobre cómo ser más eficaz y ajustarse.
Buenas Prácticas en Ingeniería Web (WebE)
- Tomarse tiempo para entender los objetivos.
- Describir con escenarios cómo actúan los usuarios.
- Desarrollar un plan de proyecto.
- Modelar lo que se va a construir.
- Revisar los modelos de consistencia y calidad.
- No reinventar cuando se puede reutilizar.
- No confiar solo en las primeras depuraciones.
Proceso de Ingeniería Web (WebE)
Debe ser ágil y adaptable, pero también incremental, ya que los requisitos evolucionan con el tiempo, los cambios se producen con frecuencia y las líneas de tiempo son cortas. Se debe repetir el ciclo de desarrollo en cada incremento.
Fases del Proceso: Comunicación – Planificación – Modelado – Construcción – Despliegue.
Fase de Comunicación
Entender el problema antes de empezar a resolverlo. Se debe formular, elicitar y negociar.
Formulación
Se centra en la definición de las necesidades del proyecto y el alcance. Comienza con la identificación de una necesidad de negocio y define las principales características de la aplicación web y establece la base para la acción de elicitar.
Elicitación
Reúne los requisitos detallados en colaboración con las partes interesadas. Las tareas son:
- Definir categorías de usuarios desarrollando descripciones para cada una.
- Definir el contenido y la funcionalidad.
- Considerar posibles limitaciones y problemas de rendimiento.
- Escribir escenarios de usuario para cada tipo de usuario.
Restricciones
Restricciones Internas
En el entorno técnico de la aplicación web y en el entorno del proyecto en donde se construyó la aplicación:
- Entorno Técnico: Protocolos de bases de datos, Problemas Cliente-Servidor.
- Entorno del Proyecto: Herramientas WebE, Hardware, estándares de software.
Restricciones Externas
El entorno empresarial y uso de la aplicación web:
- Reglas de negocio.
- Exigencias de seguridad.
- Problemas de privacidad.
- Rendimiento en tiempo de ejecución.
- Restricciones legales.
Casos de Uso
Los casos de uso describen cómo una categoría de usuario específica (actor) va a interactuar con la aplicación web para llevar a cabo una acción específica. Se desarrollan iterativamente. Permiten:
- Proporcionar la información necesaria para la planificación y las actividades de modelado.
- Ayudar a entender cómo los usuarios perciben su interacción con la aplicación web.
- Ayudar a compartir el trabajo de Ingeniería Web (IW).
- Orientar a quienes deben probar la aplicación web.
Negociación
Implica trabajar con los interesados para equilibrar la funcionalidad, el rendimiento y otras características contra el costo y tiempo de entrega. Consejos:
- Reconocer que no es una competición.
- Trazar una estrategia.
- Escuchar activamente.
- Centrarse en los intereses de la otra parte.
- Ser creativo.
- Comprometerse.
Fase de Planificación
Comprender el alcance antes de definir las tareas de trabajo o programar:
- Filtrar actividades marco y tareas.
- Tener un equipo adecuado.
- Evaluar riesgos.
- Definir el cronograma.
- Identificar los criterios de calidad y cómo se va a gestionar el cambio.
Control de Riesgos
Se centra en la comprensión y manejo de los problemas, considera el riesgo en dos niveles de granularidad:
- Impacto del riesgo en el proyecto de aplicación web completa.
- Impacto de riesgo en el incremento actual de la aplicación web.
Tipos de Riesgos
- Personales: Pueden estar directamente relacionados con una acción humana o no.
- Del Producto: Asociados con el contenido, funciones, limitaciones o rendimiento de la aplicación web.
- De Proceso: Están relacionados con las actividades del marco y las tareas.
Mecanismos para Asegurar la Calidad
- Actividad reflexiva con comunicación profunda.
- Reunir cuidadosamente los requisitos.
- Utilizar pruebas para evaluar la calidad.
- Crear una lista de verificación genérica para evaluar los modelos.
Revisión en Pareja (Pair Walkthrough)
- Establecer una agenda y mantenerla.
- Limitar el debate y la refutación.
- Enunciar las áreas problemáticas.
- Tomar notas escritas.
- Dedicar tiempo a descubrir problemas de calidad.
Perspectivas en el Desarrollo Web
- Estructura: Modelado de la estructura lógica de la información.
- Navegación: Romper la estructura secuencial del diseño apoyándose en los modelos de hipertexto.
- Funciones: Mostrar la funcionalidad al usuario en el momento preciso.
- Seguridad: Modelar quién puede hacer qué y en qué contexto.
- Usuarios: Análisis de usuarios y tareas.
- Comportamiento: Funcionamiento interactivo del sistema.
- Presentación: Visualización de la información por parte de los usuarios.
Clases de Aplicaciones Web
Clases por Tipo
- De Información: Periódicos online, catálogos, manuales.
- Interactivas: Juegos, formularios.
- Transaccionales: Comercio electrónico, bancos electrónicos.
- Flujo de Trabajo: Gestión de inventarios, monitoreo de estados.
- Portales Web: Tiendas, intermediarios.
- Servicios Web: Aplicaciones de empresa.
- Sistemas Ubicuos: Servicios de localización.
- Ambientes de Trabajo Colaborativo.
Clases Según Complejidad
- Catálogos Web: Alta complejidad de datos y baja de la aplicación.
- Sistemas de Información Basados en Web: Alta complejidad de datos y de aplicación.
- Sitios de Presencia Web: Baja complejidad de datos y baja de la aplicación.
- Sitios Web Orientados a Servicios: Baja complejidad de datos y alta de aplicación.
Deja un comentario