You are on page 1of 37

I JORNADAS DE COMPUTACIN Y SISTEMAS Universidad Dr.

Jos Gregorio Hernndez Maracaibo

Jons A. Montilva C. Octubre, 2010

Universidad de Los Andes Facultad de Ingeniera Escuela de Ingeniera de Sistemas Departamento de Computacin Grupo GIDyC Mrida - Venezuela

La ingeniera y su proceso

Mtodos giles y disciplinados Las prcticas giles ms efectivas Balanceando agilidad y disciplina
El mtodo Blue WATCH
Caractersticas del mtodo

Estructura del mtodo


Modelo del productos Modelo de procesos Modelo de actores

Conclusiones
2

La Ingeniera se puede concebir de dos maneras diferentes

Como actividad humana


Orientada a resolver problemas del mundo real Usa el conocimiento cientfico

Como profesin
Es ejercida por individuos que tienen una formacin acadmica en Ciencias y Tecnologas relacionadas

Aspectos claves de la Ingeniera:


Aplica el conocimiento cientfico a la resolucin de problemas del mundo real Involucra procesos de diseo, construccin, operacin y mantenimiento de soluciones tcnicas

El ingenio es una actividad inherente a la Ingeniera


Sus soluciones deben ser eficaces y eficientes y deben ser realizadas:
en el menor tiempo posible, a un bajo costo y con una alta calidad
4

El proceso de ingeniera gua las actividades del ingeniero

Formulacin del problema Anlisis del problema Bsqueda de soluciones Seleccin de la mejor solucin Diseo de la solucin Implementacin de la solucin

Indica que debe hacer el ingeniero para resolver un problema

Un profesional que resuelve problemas de software y automatizacin mediante la aplicacin de:


El conocimiento cientfico de las Ciencias de la Computacin y las Matemticas Procesos de la Ingeniera del Software Tcnicas y mtodos para gestin de proyectos

Resuelve problemas

Usa el conocimiento cientfico Usa tcnicas gerenciales


Tiene habilidades y destrezas

Usa herramientas

Produce modelos
6

El desarrollo de software consta de un conjunto de procesos tcnicos, de gestin y de soporte

Mtodos giles y disciplinados


8

Mtodos giles

Mtodos disciplinados

Basados en el Manifiesto gil que da mayor valor a:


Individuos y su interaccin Cdigo que funcione Colaboracin con el cliente Respuesta al cambio

Basados en la Calidad Total que da mayor valor a:


El proceso de desarrollo Los productos incluyendo el cdigo Contrato con el cliente Seguimiento de un plan

Mtodos giles

Mtodos disciplinados

Centrados en las personas

Centrados en los procesos

nfasis en el cdigo y la cooperacin Procesos mnimos con poca documentacin Formalidad del proceso reducida a un mnimo Procesos no repetibles
Resultados dependen del equipo de trabajo Conocimiento tcito

nfasis en los productos y la organizacin Procesos bien definidos y documentados


Alta formalidad en el proceso de desarrollo Procesos repetibles

Resultados predecibles
Conocimiento explcito
10

Mtodos giles

Mtodos disciplinados

Representantes:
XP Scrum Crystal Light Methods Feature Driven Dvelopment Adaptative Software Development Lean Development

Principales representantes:
RUP OOSE OOAD Personal Software Process (PSP) Team Process Software (TSP) Gray WATCH

11

Balanceando agilidad y disciplina


12

Mtodos giles: Proyectos pequeos Grupos pequeos Ambientes cambiantes Planes internalizados Control cualitativo Ejemplos: XP SCRUM

Mtodos Disciplinados: Grandes proyectos Grupos grandes Ambientes estables Planes documentados Control cuantitativo Ejemplos: RUP Gray WATCH

Los nuevos enfoques apunta a balancear agilidad y disciplina


13

Las prcticas giles ms efectivas


14

Satisfacer al cliente mediante entrega temprana y continua de software Los requisitos cambiantes son bienvenidos Entrega frecuente de software que opere Usuarios y desarrolladores trabajan juntos diariamente Individuos motivados Comunicacin de la informacin va conversacin cara-a-cara

Medir el progreso a travs del software Desarrollo sostenible

Dar atencin a la excelencia tcnica Simplicidad: maximizar la cantidad de trabajo no realizado


Grupos auto-organizados

Retrospectiva: reflexionar como ser ms efectivo

15

16

El mtodo BLUE WATCH


un mtodo balanceado
17

Es un mtodo de desarrollo de software orientado a aplicaciones web de mediana complejidad y/o tamao
Ejemplos de aplicaciones web:
Comercio electrnico Gobierno electrnico Sistemas de informacin web Portales corporativos

Est dirigido a grupos de desarrollo de pequeo tamao: 3-10 desarrolladores

18

Es un mtodo balanceado:
Equilibrio entre disciplina y agilidad

Produce un mnimo de documentos

Est basado en:


Desarrollo de software guiado por modelos (Model Driven Development)
Transformacin de modelos apoyada en herramientas CASE apropiadas

Uso de las prcticas ms efectivas tanto giles como disciplinadas

19

La aplicacin se desarrolla en una o ms versiones

Es versionado, incremental e iterativo

Cada versin se desarrolla gradualmente en forma incremental Un mismo proceso de desarrollo se ejecuta repetidas veces hasta lograr el resultado esperado Proporciona un balance entre agilidad y disciplina

Es un mtodo balanceado

Genera un mnimo de documentacin; la necesaria para facilitar el mantenimiento de la aplicacin Emplea prcticas y procesos giles

Es completo

Cubre todo el ciclo de desarrollo de una aplicacin empresarial Integra los procesos tcnicos del desarrollo de software con los procesos de soporte y gestin del proyecto Basado en el CMMI, SWEBOK, PMBOK, estndares IEEE y la literatura ms relevante del rea

Est slidamente fundamentado

20

21

22

23

Ciclo de la Aplicacin

Aplicacin
Ciclo de Versiones

Versin Incremento

Ciclo de Incremento

Productos del mtodo

Procesos del mtodo


24

El Ciclo de la Aplicacin
DV Desarrollo de Versiones MN Modelado del Negocio

Vn

Vi Cada versin se produce entre 1 3 meses

Gestin del Proyecto Aseguramiento de la Calidad Gestin de Riesgos Gestin de Configuracin Gestin de Requisitos

DR Desarrollo de Requisitos

V1

DA Diseo Arquitectnico

25

El Ciclo de Versin Vi; i = 1,,n


EV Entrega de la Versin i PV Pruebas de la Versin i RR Refinamiento de Requisitos RA Refinamiento de la Arquitectura

II Integracin de Incrementos DI Desarrollo de Incrementos

Planificacin y Control de Versin Verificacin Validacin Gestin de Configuracin Gestin de Requisitos

DD Diseo Detallado de la Versin i

Im

Ij

I1

Cada incremento se produce entre 1 3 semanas

26

El Ciclo del Incremento Ij; j = 1,,m


EI Entrega del Incremento j

RRI Refinamiento de Requisitos del Incremento j

CPI Codificacin y Pruebas del Incremento j

Planificacin de la Iteracin Verificacin Validacin Gestin de Configuracin Gestin de Requisitos

DDI Diseo Detallado del Incremento j

DPI Diseo de las Pruebas del Incremento j

27

Mtodo WATCH

Modelo de Productos

Modelo de Actores

Modelo de Procesos

Modelo de productos
Describe los productos intermedios y finales que se generan, mediante el uso del mtodo, durante el desarrollo de una aplicacin empresarial

Modelo de actores
Identifica a los actores interesados (stakeholders) en el desarrollo de una aplicacin
Describe cmo deben estructurarse los equipos de desarrollo y cules deben ser los roles y responsabilidades de sus integrantes

Modelo de procesos
Describe detalladamente los procesos tcnicos, gerenciales y de soporte que los equipos de desarrollo debern emplear para elaborar las aplicaciones
28

actor,rol Desarrollador

actor,rol Lder del Proyecto

actor,rol Analista

actor,rol Arquitecto-Diseador

actor,rol Programador

actor Experto en Pruebas

actor,rol Gestor de Configuracin

29

Cadena de valor Blue Watch


Modelado del Negocio Desarrollo de Requisitos Diseo Arquitectnico Desarrollo de Versiones

Gestin del Proyecto Gestin de Requisitos Verificacin & Validacin Gestin de Configuracin Gestin de Riesgos

30

Desarrollo de Versiones: Vi; i=1,,n


Desarrollo de Versiones

Ciclo de Versin

Refinamiento de Requisitos

Refinamiento de la Arquitectura

Diseo Detallado de la Versin i

Desarrollo de Incrementos de la Versin i

Integracin de Incrementos

Pruebas de la Versin i

Entrega de la Versin i

Planificacin y Control de Versiones

Verificacin y Validacin de Versiones

31

Desarrollo de Versiones::Diseo Detallado de la Versin i (i=1,,n)


Diseo Detallado de la Versin i

(from Desarrollo de Versiones (DV))

Diseo de la Interfaz Grfica (Versin i)

Diseo de Componentes (Versin i)

Diseo de la Base de Datos (Versin i)

Definicin de Incrementos (Versin i)

32

Desarrollo de Versiones::Desarrollo de Incrementos de la Versin i (i=1,,n)


Desarrollo de Incrementos de la Versin i (from Desarrollo de Versiones (DV))

Ciclo de Incremento

Refinamiento de Requisitos del Incremento j

Diseo Detallado del Incremento j

Diseo de Pruebas del Incremento j

Codificacin y Prueba del Incremento j

Entrega del Incremento j

Planificacin y Control de Incrementos

Verificacin y Validacin de Incrementos


33

Conclusiones
34

En el contexto empresarial, el desarrollo de aplicaciones web es complejo


Por muy pequea que sea la aplicacin, su complejidad no puede menospreciarse

Los enfoques giles y disciplinados son opuestos, pero se pueden combinar


El enfoque balanceado combina las mejores prcticas de ambos mundos

Los mtodos balanceados deben:


Reducir la documentacin sin afectar el mantenimiento

Simplificar los procesos tcnicos y gerenciales sin perder sus objetivos


35

BLUE Watch es un esfuerzo por crear un marco metodolgico que sea balanceado
Estar disponible en www.methodius.org.ve
Es producto de un proyecto de investigacin conjunto (ULA-USB-CPTM) financiado por el FONACIT

BLUE Watch est orientado a


Grupos de desarrollo pequeos (3-10) Aplicaciones web de mediana complejidad y tamao

36

Gracias por su atencin


jonas@ula.ve www.methodius.org.ve www.biosoftca.com
37

You might also like