outsourcing, puede ser realmente agil?
TRANSCRIPT
Outsourcing, ¿puede ser realmente Ágil?
Davor PavisicJalasoftAbril 2014
Los hechos y o personajes en esta presentación son ficticios, cualquier semejanza con la realidad es
PURA coincidencia.
Solo sé que nada sé!
• Cual puede ser mi aporte en esta reunión?
• Todos Uds. son mucho mas agiles que yo
• Que puedo compartir con Uds.?Un sueño y
algunas
recomendaciones
Hace algunos años...
• Una Transición dolorosa– Programación Estructurada (Pascal, C)– Programación OO (C++)
• El desarrollo de software en Bolivia era prácticamente 0
• No había internet ni teléfonos celulares
• Ahora el desarrollo de software en Bolivia es una industria que esta creciendo a pasos agigantados.
Herencia?Polimorfismo?Queeee?
Encaramos otro cambio...
• Transición – Waterfall– Agile
• Pero ahora nos duele mas porque hay dinero involucrado
LA COMUNICACIÓN ES IMPORTANTE
Personas e interacciones por sobre procesos y herramientas
TENEMOS UN PROBLEMA
La realidad del Software en Bolivia
• 90% del software desarrollado en Bolivia es para exportación
• Menos del 10% de este tiene la PI en Bolivia• Muchos de Uds. hacen software por encargo• Algunos de Uds. han hecho su propio software
pero tienen problemas en vender al público en general.
Fabricar Software es Caro
• Hagamos números:– Equipo ágil de 7 ingenieros– Por redondear 1k / persona / mes– Por redondear 10 meses
• 7x10x1k = 70,000 + extras • Inversión aprox. = $100,000 en 1 año
Si hago esta inversión, en cuanto tiempo
recupero mi dinero?
Es poco el
software que se
compra/vende
en Bolivia
Es mejor vender afuera
• Hay que tener una idea por la que la gente quiera pagar
• Esta idea debe resolver “mi problema”• Para desarrollar este software debo entender
los problemas de mis compradoresEs decir, los
problemas de
• Europa
• N. America
• Asia?
Aprender a desarrollar Software
• Hay mucho mas que un grupo de amigos capos para programar
Stakeholders?Dinero? Time to
market?
Outsourcing es una Escuela
• Buen Negocio• De bajo riesgo• Con ingresos• Aprender a desarrollar • Entender los problemas de nuestros clientes• Oportunidad
Entender estos problemas nos va ha dar la posibilidad de hacer algo interesante
Que buscan nuestros clientes?
• Que es lo que buscan nuestros clientes?– Bajar costos– Pero también, buscan “outsourcing” por cierta
especialización que pueden no tener “in-house”
Premium
Service
Que ofrecemos?
• Dentro de todo el ramillete de opciones que ofrecemos... Siempre hay una que dice Agile.
Agile? Yes we are!
• Nuestros clientes en muchas ocasiones tienen una realidad distorsionada de lo que es Agile.
• Todos somos agiles pero estamos realmente hablando el mismo lenguaje?
• Para muchos de nuestros clientes la metodología es el “dashboard” que presentamos
What?
• Business people and developers must work together daily throughout the project.
• The most efficient and effective method of conveying information ... is face-to-face conversation.... And we are promoting offshore development?
• The best architectures, requirements, and designs emerge from self-organizing teams.... Lo siguiente es un equipo comunista
• At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.... Retrospectives? Ni hablar.
El cambio de paradigma es difícil
• Muchos de nuestros pares en el lado del cliente son gente con muchísima experiencia:– CTOs,– Chief Architects,– Etc.
• Es posible que estemos hablando de dos generaciones distintas...
Como ir a
bailar con
los amigos
de tu papá
Scrum es perfecto para cowboys y equipos indisciplinados pero no funciona en el trabajo del mundo real:• inapropiado para equipos empresariales que tienen necesidades de reportes reales... • En este mundo, solo waterfall funciona
Que es lo que ocurre?
• Poca confianza en la novedad• No tengo margen para equivocarme• No puedo permitir que estos estén
experimentando en mi proyecto de $500 k.• Pero al mismo tiempo hay un deseo de
innovar (empresarial o del equipo)
Salen ideas
novedosas:
Agile - Waterfall
Agile welcomes Change but...
• Si bien Agile “embraces change” hay cosas que nos desesperan
• “Feature Creap” dentro de la interacion
1/1/1
4
1/2/1
4
1/3/1
4
1/4/1
4
1/5/1
4
1/6/1
4
1/7/1
4
1/8/1
4
1/9/1
4
1/10/1
4
1/11/1
4
1/12/1
4
1/13/1
4
1/14/1
4
1/15/1
40
50
100
150
200
250
300
350
Burn Down
12/3
0/13
1/1/
14
1/3/
14
1/5/
14
1/7/
14
1/9/
14
1/11
/14
1/13
/14
1/15
/14
1/17
/14
0
50
100
150
200
250
300
350
Burn Down
Story points? I don’t understand
• Queremos estimar la complejidad del trabajo primero– Story Points– Planning poker
Estan en drogas?
Puedes ser Agil en hrs.
• Yo solo entiendo hrs y $$
• Puedes estimar en hrs
• Hrs = $$
• Asi puedo calcular el costo de cada feature
• Ademas se exactamente cuanto se va ha tardar en cada user story
Pero...
Si la iteracion dura 5
dias y tienen una
capacity de n hrs....
A que se dedican
el resto del
tiempo?
• Vamos a escribir User Stories para las reuniones
• Vamos a logear el tiempo que tardamos en leer el correo
• Asi nuestra iteracion esta completa!!!
Agile
Quiero el control
• Se trata de Control
• Nuestros clientes quieren tener el control
• Da la impresión que Ágil es libertinaje, anarquía
• Es una barbaridad!!!
Soy Ágil!!!
Pero lo que necesita es...
• Confianza• Credibilidad• Expectativas• ...• ...
Comunicación
Y cultura
COMO HACER?La solucion no tiene que ser compleja
Como hacer?
• Business commitment: – Alguien que se responsabilize del exito de la
iniciativa– Nuestro cliente debe estar convencido
• Alguien que conozca y haya aplicado la metodologia
• Todos deben entender la filosofia
Pero Sobretodo – Face to Face
• Fundamental que el cliente entienda el medio y conzca a las personas face to face.
• Que trabaje codo a codo con nuestros ingenieros
• Intercambiemos nuestra forma de pensar.
• El cambio es radical
GRACIAS