Hacia Procesos de desarrollo que –además de...

41
1 Hacia Procesos de desarrollo que –además de software– construyan confianza Victor Manuel Toro C. [email protected] CincoSOFT Ltda. Tel.: (1)6226350, (1)6230180 Bogotá - Colombia

Transcript of Hacia Procesos de desarrollo que –además de...

Page 1: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

1

Hacia Procesos de desarrollo que –ademásde software– construyan confianza

Victor Manuel Toro [email protected]

CincoSOFT Ltda.

Tel.: (1)6226350, (1)6230180

Bogotá - Colombia

Page 2: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 2

El contexto

● Proyectos de desarrollo de software en modalidadoffshore.

● Proyectos de desarrollo de software locales

● Compañías desarrolladoras pequeñas

Page 3: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 3

El Offshore

Offshore:

● Desarrollar en un país de bajos salarios y bajos costos deinfraestructura, software requerido en países de altossalarios y altos costos de infraestructura.

Problemas:

● obtener contactos de negocios

● conocimiento tecnológico efectivo

● gerencia de proyectos

● protección de propiedad intelectual

● Construir confianza !!!

Page 4: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 4

El Offshore:

La competencia es en serio!

● Diferencia de precios:

➢ $(1 ingeniero gringo)

➢ = $(2.5 ingenieros colombianos)

➢ = $(4 ingenieros de India)

➢ = $(6 ingenieros de China) ...

● Diferencia de empresas:

➢ India: compañías de mas de 3.000 Ingenieros, con una larga

trayectoria

➢ China: Costos muy bajos ... compañías con gran solidez

financiera

Page 5: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 5

El Offshore:

No todos están de acuerdo !

Page 6: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 6

El Offshore:

No todos están de acuerdo !

Page 7: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 7

El Offshore:

Inicialmente no hay confianza !

xxxxxxxxx

Page 8: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 8

Devolvámonos un poco,para aclarar algunos conceptos

Page 9: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 9

Cinco conceptos relacionados pero distintos:

Lenguaje

Herramienta

ProcesoMetodología

Teo

ría

Page 10: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 10

Aclarando algunos conceptos:

Lenguaje

● Forma de expresión:➢ Sintaxis (elementos del lenguaje)

➢ + Gramática (reglas para combinar dichos elementos)

➢ + Semántica (significado de las frases del lenguaje).

● Ejemplos de Lenguajes:➢ Programación: Java, C, VisualBasic, RPG, Cobol, C#, ...

➢ Análisis/Diseño:➥ Diagramas Entidad-Relación, Diagramas de Flujo de Datos, ...

➢ Especificación: Z, B, VDM, ...

➢ Ingeniería de Software: UML

Lenguaje

Herramienta

ProcesoMetodología

Teo

ría

Page 11: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 11

Aclarando algunos conceptos:

Teoría

● Abstracción / idealización:➢ Lenguaje (definiciones, símbolos)

➢ + Axiomas

➢ + Reglas de inferencia.

● Ejemplos de Teorías:➢ Matemáticas

➢ Teoría de Conjuntos

➢ Autómatas finitos

➢ Lenguajes formales

➢ ...

Lenguaje

Herramienta

ProcesoMetodología

Teo

ría

Page 12: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 12

Aclarando algunos conceptos:

Herramienta

● Medio de trabajo:

➢ Editor de un(os) lenguaje(s)

➢ + Librería de elementos reutilizables

➢ + Ayudas “inteligentes”

➢ + Compilador ó Traductor hacia/desde otro(s) lenguaje(s)

● Ejemplos de Herramientas:➢ Eclipse, JEdit, JBuilder, JDevelopper, ...

➢ VisualStudio.NET

➢ Designer-2000, Erwin, PowerBuilder, OracleForms,...

Lenguaje

Herramienta

ProcesoMetodología

Teo

ría

Page 13: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 13

Aclarando algunos conceptos:

Metodología

● Forma ordenada de pensar:➢ Lenguajes (para expresar el problema y la solución)

➢ + forma de plantear problemas

➢ + forma de construir poco a poco una solución

➢ + forma de verificar que una solución es correcta

➢ + conjunto de patrones (ó paradigmas deseables)

● Ejemplos de Metodologías:➢ Programación Estructurada {Pre y Post condiciones, invariantes, ...}

➢ Metodología Entidad-Relación para diseño de B. de D.

➢ Metodología Orientada a Objetos

Lenguaje

Herramienta

ProcesoMetodología

Teo

ría

Page 14: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 14

Aclarando algunos conceptos:

Proceso

● Organización de actividades y personas:➢ La secuencia de actividades

➢ + el conjunto de Entregables(documentos, código, pantallas, manuales, ...)

donde cada Entregable:➥ se produce siguiendo cierta metodología

➥ se desarrolla usando ciertas herramientas, y

➥ se expresa en determinado lenguaje

➢ + una asignación de responsabilidades

➢ + una dinámica de interacción entre los miembros del grupo

➢ + un conjunto de herramientas adecuadamente sintonizadas

que sigue un grupo para desarrollar software.

Lenguaje

Herramienta

ProcesoMetodología

Teo

ría

Page 15: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 15

Lenguaje

Herramienta

ProcesoMetodología Ejemplos de

Proceso de desarrollo de Software

● “USDP Unified Software Development Process”

● También se le llama “RUP Rational Unified Process”

Page 16: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 16

Lenguaje

Herramienta

ProcesoMetodología Ejemplos de

Proceso de desarrollo de Software

● “Extreme Programming”

● También se le llama XP ó XProgramming

Page 17: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 17

Lenguaje

Herramienta

ProcesoMetodología Ejemplos de

Proceso de desarrollo de Software

● “TSP Team Software Process”

● Respaldado por el “SEI Software Engineering Institute”

Page 18: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 18

Lenguaje

Herramienta

ProcesoMetodología Ejemplos de

Proceso de desarrollo de Software

● “Su propio proceso”

Page 19: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 19

Madurez de un Proceso de Desarrollo

● Un Proceso Desarrollo de Software es MADURO en

la medida que:

➢ Está escrito

➢ Es usado por TODOS los miembros del grupo

➢ Cubre todas las etapas del desarrollo

➢ Es efectivo

➢ Es eficiente

➢ Es repetible, medible, optimizable, ...

● Ver Software Process Capability Maturity Model

Integration CMMI [http://www.sei.cmu.edu/cmmi]

Page 20: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 20

CMM / CMMI

Page 21: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 21

¿ Qué es una compañía de software certificada ?

● Hace explícito su proceso de desarrollo de software

● Documenta su proceso de desarrollo (por escrito)

● Estandariza sus entregables (i.e., crea plantillas)

● Sintoniza sus herramientas para apoyar el proceso

● ...

● Incorpora en su proceso de software las recomenda-ciones de algún Estándar de Calidad (CMMI, ISO)

● Contrata Inspectores autorizados para que revisen, yeventualmente certifiquen, que su proceso dedesarrollo cumple con el Estándar de Calidad.

Page 22: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 22

¿Qué es implantar un estándar de Calidad de Software?

Nuestro Procesode Software

Planeación------------------Seguimiento de Proyectos-------------------Capacitación------------------------Control de Versiones------------------Revisiones de código por pares------------------Administración de Requerimientos---------

Estándar deCalidad de Software

Page 23: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 23

Proceso de Desarrollo de Software:

● Secuencia de actividades, con

asignación de responsabilidades

● Definición y estandarización de entregables(documentos, código, pantallas, manuales, ...)

● Dinámica del ciclo central del desarrollo:

➢ (ajustes al) diseño detallado

➢ creación (modificación) del código fuente

➢ pruebas/registro de problemas (errores, cambios, malentendidos,

mal uso)

Page 24: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 24

Proceso de desarrollo de software:

Definición y Estándarización de Entregables

● Documentos que se elaboran y entregan a lo largo delproyecto (especificación de lógica del negocio, diseño de casos de uso,

diseño de B.D., registros de prueba, manuales, …)

● Cada entregable:➢ tiene una Tabla de Contenido definida de antemano

➢ se produce siguiendo cierta metodología

➢ se desarrolla usando ciertas herramientas

➢ se expresa en determinado lenguaje(s)

● Con excepción de los “Manuales de Usuario”, lacantidad y nivel de detalle de los entregables debemantenerse en el “mínimo necesario”.

Page 25: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 25

Prácticas de Extreme Programming

Page 26: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 26

Dos prácticas básicas

● Estandarización del código:➢ Indentación

➢ Nomenclatura

➢ Organización en directorios

➢ Documentación

● Propiedad colectiva del código:➢ El código no es de quien lo escribió ...

➢ ... el código es del grupo

➢ Cualquier miembro del grupo lo puede modificar ...

➢ ... si sigue las reglas

Page 27: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 27

Estándar de organización y documentación del código:

Nuestra experiencia

Estandar de organización:

• TODO el proyecto bajo una misma jerarquía(código, descriptores, sql, librerias, manuales …)

• Organizado por Módulos

• Dentro de cada módulo, organizado por casos de Usoy Web-services

• Correspondencia de nombres(directorio = caso de uso = clase java, …)

• Administrado por un controlador de versiones(CVS, SubVersion, …).

Page 28: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 28

Integración Permanente

?

Page 29: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 29

Desarrollo en Grupo

Repositorio deVersiones

Servidor deBase de Datos

ServidorJ2EE

Page 30: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 30

Integración permanente

Cada desarrollador:

● tiene copia completa de todo el sistema

● modifica ó agrega algunos archivos fuentes

● recompila el sistema completo

● corrige problemas en los fuentes que está agregando ómodificando ... ó en otros

● corre las pruebas unitarias

● compara su versión con la versión del repositorio

● actualiza y/ó mezcla su copia con la del repositorio

● registra su nueva versión

Page 31: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 31

Integración permanente

Se requiere:

● Computador potente para cada desarrollador

● Todas las herramientas en cada desarrollador

● Estandarizar el código: ← XP !➢ organización

➢ documentación

➢ indentación

➢ nomenclatura

● Propiedad colectiva del código ← XP !

Page 32: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 32

Sistema de software

Pruebas a lo largo de todo elproceso de construcción

Unitarias Integración Funcional

<--

----

Ent

rada

s --

----

>

<--

----

Sal

idas

---

--->

Page 33: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 33

Pruebas permanentes:

Pruebas Unitarias

● OBJETIVO: Ejercitar frecuentemente los métodospúblicos de las clases.

● CÓMO ?: Escribir/generar código que invoque cadamétodo público con distintas combinaciones de susargumentos, y verificar que la respuesta (ó el efectocausado) sean correctos.

● CUÁNDO ?: Se aplican automáticamente cada vezque:

➢ Hay cambios en la implementación de un método

➢ Se hace un Refactoring

➢ Como pre-requisito para registrar una nueva versión

Page 34: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 34

Pruebas permanentes:

Pruebas Unitarias

● El conjunto de pruebas:

➢ se va incrementando a lo largo del proyecto.

➢ hace parte del proyecto (en un árbol paralelo)

➢ está incluído en el sistema de versiones.

● JUnit (Java) y NUnit (.NET) son herramientas libres

que ayudan a:

➢ construir las pruebas

➢ aplicarlas automáticamente

➢ obtener diversos reportes.

Page 35: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 35

Construir confianza con el cliente en el exterior

● NO a la estrategia usual en Colombia:

➢ 30% al inicio

➢ 30 % en la mitad

➢ 40 % al final

● SI a muchos pagos pequeños “contra entrega”:

➢ Cronograma muy detallado de actividades y “Entregables”

➢ Estimación “sustentada” de tiempo y esfuerzo

➢ Un pago pequeño asociado a cada entregable

Page 36: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 36

Proceso de Desarrollo de Software:

Nuestra experiencia

Inicio Elaboración Transición1 2 3

Construcción

...Ent

rega

Ent

rega

Ent

rega

Ent

rega

RU

P

Ext

rem

eP

rogr

amm

ing

Tests de carga

Tests funcionales

Tests integración

Tests unitariosRefinar InterfazPantallas / Web-Servicey Navegación

Refinar Modelo de Datosdel Caso de Uso / Web-Service

Aprobacióndel usuario

ProgramaciónPara cadaCaso de Uso ó Web-Service:

Con

trat

o 1

Esp

ecifi

caci

ón

Pro

pues

ta

Con

trat

o 3

Sop

orte

Con

trat

o 2

Des

arro

llo

Page 37: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 37

Proceso de desarrollo de software ==> Estandarización de Entregables:

Nuestra experiencia

Ext

rem

eP

rogr

amm

ing

Inicio Elaboración Transición1 2 3

Construcción

Tests de carga

Tests funcionales

Tests integración

Tests unitarios

• Inventario Casos de Uso• Descripción global Casos de Uso• Modelaje BPM

• Especificación de la Lógica del Negocio

• Modelaje E-R (global)

Programación

...Ent

rega

Ent

rega

Ent

rega

En

treg

a

RU

P

• Diseño detallado deinterfaz del Caso deUso ó del Servicio

• Diseño de datosdel Caso de Uso ódel servicio

• Nueva versión del software(incremental y acumulativa)

• Manual de usuario del módulo

• Manuales definitivos

Aprobacióndel usuario

Refinar InterfazPantallas / Web-Servicey Navegación

Refinar Modelo de Datosdel Caso de Uso / Web-Service

Para cadaCaso de Uso óWeb-Service:

Page 38: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 38

AmbienteDesarrollo

Stakeholders

Architecture & Designteam

Business LogicTeam

Quality Assuranceteam

Development Team1

Development Team2

Directives,GuidelinesPriorities,Learned lessons

Business Logic

knowledge

New releases

Improvements

New

code, fixesNew

cod

e, fi

xes

Detailed design, test scripts,

errors detected, modifications

Det

aile

d de

sign

, tes

t scr

ipts

,

erro

rs d

etec

ted,

mod

i fica

tions

Architecture:detailed

specification

Formalspecification

of key aspects

Standards:programming,

screens,...

Globaldesign

Developmentenvironment,tools selection

& configuration

Central Repository:Configuration control

Version controlTesting environment

Bug database and trackingDemo environment

De

taile

d d

esi

gns

Co

nfig

ura

tion

&a

dmin

istr

atio

n

Te

st s

crip

ts

Co

de(c

ritic

al s

ubsy

ste

ms)

Error report

New releases Changes

Page 39: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 39

Conclusiones

● Los proyectos de software con las tecnlogías actuales(Java EE ó Microsoft .NET) son de alto riesgo.

● Los procesos iterativos e incrementales mitiganrápidamente los riesgos.

Page 40: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

XXVII Salón de Informática - Septiembre'2007 40

Referencias

● http://www.martinfowler.com

● http://www.extremeprogramming.org

● http://www.xprogramming.com

● http://www.junit.org

● http://groups.yahoo.com/group/extremeprogramming

● http://www.google.com + “Extreme Programming”

Page 41: Hacia Procesos de desarrollo que –además de …52.0.140.184/typo43/fileadmin/Base_de_Conocimiento/XXVII_Salon... · XXVII Salón de Informática - Septiembre'2007 3 El Offshore

41

¿ Preguntas ?

¿ Comentarios ?

¿ Otros puntos de vista ?