Metodologías de Desarrollo Web: Pierre Sergei Zuppa Azúa
Metodologías de Desarrollo Web: Pierre Sergei Zuppa Azúa
Metodologías de Desarrollo Web: Pierre Sergei Zuppa Azúa
Principios básicos:
•Se realizan una serie de mini-waterfalls, donde todas
las fases del desarrollo en cascada se completan para
una pequeña parte del sistema, antes de abordar la
siguiente parte.
•Los conceptos iniciales del sistema, análisis de
requerimientos, diseño de arquitectura, etc. Del
sistema completo se definen usando también la
técnica de Cascada.
•Después de esto mediante prototipos se van
desarrollando las distintas partes en las que ha sido
dividido el proyecto.
•Finalmente el proceso culmina con la implantación del
sistema en su conjunto (otro mini-waterfall)
Espiral
Consiste en una serie de ciclos En cada vuelta o iteración hay
que se repiten en forma de que tener en cuenta:
espiral, comenzando desde el
centro. Se suele interpretar como • Objetivos
que dentro de cada ciclo de la • Alternativas
» Características: experiencia del
espiral. personal, requisitos a cumplir, etc.
» Formas de gestión del sistema.
» Riesgo asumido con cada alternativa.
» Desarrollar y Verificar: Programar y
probar el software
Espiral
si el resultado no es el adecuado
Se planifican los siguientes pasos y se
comienza un nuevo ciclo de la espiral, la
espiral tiene dos dimensiones, la radial
y la angular.
– Balancear Prioridades
– Demostrar valor iterativamente
– Elevar el nivel de abstracción
– Enfocarse en la calidad
RUP
Ciclo de vida
–Fase de Iniciación
•Las iteraciones hacen mayor énfasis en actividades de
modelado del negocio y de requerimientos.
–Fase de elaboración
•Las iteraciones se orientan al desarrollo de la línea de
base de la arquitectura, abracan más los flujos de trabajo
de requerimientos, modelos de negocio, análisis, diseño e
implementación orientada a la línea de base de la
arquitectura.
–Fase de Construcción
•Construcción del producto mediante series de
iteraciones.
•Para cada iteración se seleccionan algunos casos de
uso, se refina su análisis y diseño y se procede a su
implementación y pruebas.
•Se realiza una pequeña cascada para cada ciclo.
•Se realizan tantas iteraciones como requiera la
implementación del producto.
–Fase de Transición
RUP
Secciones
–Sección de Proceso
•Modelado de Negocio
•Requisitos
•Análisis y diseño
•Implementación
•Pruebas
•Despliegue
–Sección de Soporte
•Gestión del cambio y configuraciones
•Gestión del proyecto
•Entorno
RUP
Artefactos
–Fase de Inicio
•Documento Visión
•Especificación de requerimientos
–Fase de elaboración
•Diagramas de caso de uso
–Fase de construcción
•Trabaja desde cuatro vistas:
–Vista lógica
»Diagrama de clases
»Modelo ER
–Vista de implementación
»Diagrama de Secuencia
»Diagrama de estados
»Diagrama de colaboración
–Vista conceptual
»Modelo de dominio
–Vista física
»Mapa de comportamiento HARDWARE
Metodología UCD
Metodología Diseño Centrado en el Usuario
Metodología Diseño Centrado en el Usuario
¿Para qué sirve hacerlo?
Rebrief Benchmark
¿Qué necesito saber antes de empezar ¿Qué han hecho otros?
el proyecto? ¿Qué ha hecho la competencia?
¿Tengo toda la información que ¿Qué han hecho los referentes a nivel
necesito? mundial en el rubro?
¿El cliente me presentó una necesidad
o una solución?
¿Están claros los compromisos?
Necesito saber sobre
La empresa
Sus servicios
Sus competidores
Su posicionamiento
Su personalidad
Su identidad corporativa
Sus soportes de difusión
Sus planes a futuro
¿Que se espera del sitio?
¿Cómo se planea medir el éxito?
¿Tiene el cliente referentes para compartir?
¿Que sería bueno que el sitio hiciera?
¿Quién se encargará de los contenidos?
¿Cuanto sabe mi cliente de Interrnet? Tiene sitio
ya?
Que pasa con el servidor?
¿Y sobre la fotografía?
¿En que estado se encuentran los recursos?
¿Algún deadline?
Y ¿alguna posibilidad de fee?
¿Para qué sirve hacerlo?
Persona Capacidades del sistema
¿Conozco a mi usuario? ¿Que va hacer el sitio?
¿Tengo argumentos suficientes para ¿Qué propuestas deben cotizarse?
tomar decisiones de diseño en función ¿Qué funcionalidades deben esperar a
del comportamiento de mis usuarios? una segunda etapa?
¿Estoy diseñando para mí o para mi ¿Cómo se relacionan los distintos
usuario? contenidos?
¿Como se llamarán las secciones del
sitio?
Metodologías ágiles
Característica principal adaptación al Valores
cambio define alcance, costos y
tiempos.
1. Individuos e iteraciones Vs.
procesos y herramientas
•Iteraciones cortas entre dos y 2. Software funcionando Vs.
cuatro semanas documentación extensiva
3. Colaboración con el cliente Vs.
•Se planifica solo cuando ha negociación contractual
terminado una iteración 4. Respuesta ante el cambio Vs.
seguir un plan
Metodologías ágiles
• Modelo conceptual de
información
• Modelo navegacional
• Modelo de presentación
31
¿qué es UWE?
34
MDWE
Metamodelos
• Se refiere al uso del paradigma basado en
modelos en metodologías de desarrollo Web.
• Ayuda a obtener modelos en un punto
específico del proceso de desarrollo, mediante
el uso de los conocimientos adquiridos en las
etapas anteriores, con los modelos
previamente desarrollados.
• Los metamodelos proporcionan una solución
para la multiplicidad de vocabularios y
enfoques.
• Un metamodelo es una representación
abstracta de los conceptos o artefactos que se
permitirán usar en los modelos que se basen
en ese metamodelo.
• No se centra en la terminología o forma
(símbolos o código) en la que se expresarán
los conceptos en los futuros modelos, sino en
los conceptos y la relación entre ellos.
35
Model-Driven Architecture
(MDA)
Niveles de modelado
• CIM (Computer-Independent
Model): define conceptos que captan
la lógica del sistema.
• PIM (Platform-Independent
Model): define el sistema de software
sin ninguna referencia a la plataforma
de desarrollo específica.
• PSM (Platform-Specific Model):
define los modelos, con detalles que
dependen de la plataforma de
desarrollo específico.
• Code: Representa el código fuente
de la aplicación.
36
Metodologías MDWE
• OOHDMDA: Basada en la metodología • W2000: Establece 4 metamodelos:
de OOHDM (1995), que separaba el Information, Navigation, Presentation,
diseño de un sistema web en 3 modelos: Dynamic Behavior.
conceptual, navegacional y de interface
abstracta. • UWE. Establece 5 metamodelos:
Requirements, Content, Navigation,
Presentation, Process. Y un conjunto de
• WebML Development Process. Hay
transformaciones para derivar unos modelos
varias propuestas de metamodelos y de otros. Herramienta CASE: MagicUWE.
transformaciones
– WebML1: Establece 4 metamodelos:
• NDT: Incluye 2 metamodelos para el nivel
CommonElements, DataView, HypertextView
and PresentationView PIM: Content, Navigational. Define un
conjunto de transformaciones basadas en
– WebML2: Establece 5 metamodelos:
Hypertext Organization, Access Control, QVT, pars obtener PIM a partir de CIM.
Hypertext, Content Management and Herramienta CASE: NDT-Suite.
Content.
– Herramienta CASE: WebRatio.
37
Comparación de metodologías MDWE
MDA Framework
Una de las ventajas más importantes
del paradigma MDWE es la posibilidad
de hacer compatibles diversas
metodologías.
• Si se define un metamodelo o algunas
transformaciones utilizando un
lenguaje común, la conexión entre las
metodologías podría ser sencilla.
• Para este fin, el uso de perfiles UML
ofrece resultados muy interesantes.
• Un UML Profile es un mecanismo de
extensión que ofrece UML para
extender los conceptos básicos de un
enfoque MDWE.
38
Metodología OOWS
Fase de especificación del sistema
39
Metodología PIM
40
Modelo funcional (PIM)
Captura la semántica asociada a los cambios de estado de los
objetos.
41
Modelo de navegación (PIM)
43
Modelo de presentación (PIM)
•Se captan los requisitos de presentación de
información para cada contexto del mapa de
navegación.
•Se especifica que los objetos de la clase directora
se presentarán en modo tabular y el contexto
(objetos de la clase directora) estará paginado con
una cardinalidad estática de 1 elemento, con
posibilidad de acceso secuencial y circular.
•El patrón de presentación asociado a la relación de
contexto definida entre un Autor y sus Albumes
será maestro-detalle, con el detalle en modo
tabular y con una paginación de cardinalidad
estática de 5 elementos, con acceso secuencial,
circular.
•Se ha definido una ordenación de los elementos de
la clase Album por el año de modo ascendente y la
relación de contexto definida entre la clase Album
con la clase Categoría se presentará en modo
tabular (relación “1 a 1”).
44
Estándares MDA de OMG
Metamodelado:
MDA
Lenguaje MOF
Lenguaje OCL
Perfiles UML
Transformación de modelos
Lenguaje QVT
Lenguajes de modelado específico
BPMN: Business Process Model and
Notation
IFML: Interaction Flow Modeling
Language
SYSML: Systems Modeling Language
45
Frase