Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Gestión de Programas
Escalado de la colaboración en toda la organización
* A.
Gestión ágil y ajustada de programas
Johanna Rothman
ISBN 978-1-943487-04-2
Cotizaciones de alabanza . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
............................................ Ⅰ
Reconocimientos...................... . Ⅳ
Prólogo...................... . . . . . . Ⅴ
Introducción.......................... Vii
Lanzamiento...................... . Tome un
1.6 1.10 . . . . . . . .
La Gestión de Programas Coordina el Negocio 1
Valor........................ .
1
1.7 1
La gestión de programas ágiles escala la colaboración
P
1.8 Cambio de efecto ágil y magro a nivel de programa r
Qué hacen los administradores de programas . . . . . . . . i
n
1.9 ................................... c
ipios de gestión ágil y ajustada de programas 6
1
2
Contenido No podem
4.3 ........
2
6
2
6
2
8
2
9
3
1
3
3
3
4
3
5
35
36
37
38
39
45
46
48
50
52
52
53
54
56
Contenido
8
1
8
1
8
2
8
4
8
5
8
7
88
90
92
93
Contenido
............... 95
8.1 Estado explicativo: No use standups en el
Nivel de programa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
................................ 96
Defina un ritmo para el equipo del programa . . . . . . . .
8.2 ...................... 97
Organice sus reuniones de equipo de programa . . . . . .
8.3 .................... 101
Reuniones de equipo de programa Resolver problemas
8.4 ........................ 103
Retrospect ióna anivel de equipo de programa . . . . . . .
8.5 ......................... 106
8.6 Principios para llevar a caboreuniones útiles para su
Programa...................... . 107
12
3
¿Su programa? . . . . . . . . . . . . . . . . . . . 124
Nunca use medidas basadas en equipos para unprograma
10.2 124
Medir por características, no por equipos . . . . . . . . . . .
10.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Medir características completadas . . . . . . . . . . . . . . . . .
10.4 . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Mida el registro pendiente del producto Burnup . . . . . .
10.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
10.6 Mida el tiempo a su entrega liberable 132
Contenido
12.5 Lo que el A
12. Pastorear la arquitectura ágil . . . . . . . . . . . . . . . . . . . . . . . . . . .
La arquitec
........................
Los arquitectos escriben código . . . . . . . . . . . . . . . . . . . 12.6 . . . . . . . . .
12.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12.7 Problemas
Muchos desarrolladores se convierten en arquitectos. Romper la
12.2 . . . . . . 12.8 . . . . . . . . .
12.3 Fomentar la arquitectura iterativa e incremental 12.9 Principios d
Los arquitectos pueden ayudar a exponer riesgos . . . . 13.
12.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Res
olver problemas de programa . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
................................... 151
13.1Pregunte primero 15
por los problemas o impedimentos . . . . . . . . . . . . . . . . . . . . . . . . . 2
............ 15
13.2 Las personas en elequipo principal noentregan lo que 5
prometen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
.............................................. 5
............. 15
13.3 Los propietarios de sus productos tienen feature- 7
it es . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
13.4 Personas en Téms son multitarea . . . . . . . . . . . . . . . . . 8
..........................................
16
0
16
1
16
3
16
4
166
16
6
16
8
16
8
17
0
Contenido
17.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3
Organizar por equipo de características . . . . . . . . . . . .
17.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Aprenda a liberar entregas provisionales . . . . . . . . . . . 6
17.3 . . . . . . . . . . . . . . . . . . . . . . . . . .
21
Aprenda a reducir el tamaño de lote con un tamaño 7
17.4 grande
Programa.............. . . . . . . . . . 21
Pruebe Release Trains . . . . . . . . . . . . . . . . . . . . . . . . . . 7
17.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21
17.6 Principios para qué hacer si ágil es ágil y magro 8
No es adecuado para usted . . . . . . . . . . . . . . . . . . . . . .
.........................................
22
1
Bibliografía anotada . . . . . . . . . . . . . . . . . . . 223
Glosario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
........................................ 228
Más de Johanna . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.................................. 231
Cotizaciones de elogio
"Este es el libro para todos los que están considerando cómo "escalar"
sus procesos lean/agile para trabajar en grandes programas. Johanna
proporciona consejos directos y prácticos sobre cómo pasar de una
implementación ágil de un solo proyecto/producto simple
agrandes,complexprogramasmientras
quereteniendoelnúcleodeagilidad y pensamiento magro. Ella nos lleva
de nuevo a los principios fundamentales de ágil y magro y muestra
cómo utilizar esos principios como un base para la verdadera
agilidadsational organi, construyendo productos que necesitan
múltiples equipos con diferentes flujos de trabajo interdependientes
manteniendo la adaptabilidad y capacidad de respuesta que está en el
núcleodemagra y ágil
Pensando. "
Ⅰ
Cotizaciones deelogio ii
Leanintuit
mustbeincludedinagileprograms,featureswillhavedependencies across
many teams and systems, people (even good people) will fail to cumpla
commitments, etc. Este libro ofrece una mezclaúnica
de anécdotas que provocan pensamientos y patrones exitosos para
escalar
Colaboración. Thisisagreatreadforprogrammanagersandleaders en
grandes organizaciones."
—Catherine Swetel, Principal Consulthormiga
Reconocimientos
Ⅳ
Prólogo
Desearía que este librose hubiera publicado la última vez que dirigí un
proyecto importante; queesuna acción pragmática
ybasadoen,butenuna manera queestambién
consistente con la teoría—algo que es demasiado raro.The
Agilecomunidad,comoaentero,está plagadoconmétodos rígidos
impuestos con los religiososceloa programas de capacitación y
certificación.
En contraste, este libro entiende queel escaladoAgile se trata del
montaje de diferentes herramientas, métodos y prácticas para lograr
unaresultadodentro deaespecíficoscontexto.Setieneaenterosección
sobre quéhacercuandoAgileesno es un partido culturalparala
organización.Mientras queque
se basa en el liderazgo de los siervos, reconoce que esto no "significa
que usted es un empujón." A vecesquetienenaeliminarequipo
Miembros.
Ⅴ
Prólogo vi
Vii
Introducción viii
Cada programa necesita una visión coherente detrás del programa para
que pueda crear una carta del programa. La carta ayuda a los equipos
de características a asumir laresponsabilidad de sus compensaciones.
Hablaremos más sobre esto
en Iniciar su programa a la derecha. With una carta de programa en su
lugar, los equipos de característicasno tendránque trabajar hacia arriba
y luego por una jerarquía.
Algunas personas llaman a la gestión de programas"escalado ágil." Se
podría llamarqueeso.Elnombre realesgestión de
programas.Enprograma
gestión, usted escala ágil yl eancollaborationpracticestodo el programa,
para que pueda lanzar un gran producto.
El programateamssolveproblemscross-funcionalmente. Esagran
diferencia.
"Pienso 'Producto'Ahora"
Programa.
12
Considere el contexto de su programa 13
Marco Cynefin
Cynefinisnotatwo-by-twomatrixwhereyoulocateyourprogram, úselo
para tomar decisiones y nunca vuelva al marco.En su
lugar,especialmenteconprogramsde nueve equipos o más, diferentes
partesdeel programavoluntadtienen diferentes desafíos.Elmás
inconocibles los desafíos, más
quepartedeelprogramaesenelComplejopartedeel marco. A medida que
los equipos ofrecen características,
aprenden más. ThatpartoftheprogrammovestotheComplicated parte
del framework.
Considere el contexto de su programa 15
En este caso, usted tiene una plataforma de servicios comunes conlo que
se siente al cliente como productos separados. Las GUI pueden tener su
propio aspecto, pero la GUI no es común en todo el programa
Producto.
26
Organice sus equiposde programa 27
Siempre les digo a los miembros del equipo principal que somos las
mejores personas de la organización para trabajar en este producto—
que podemos
collaborateandshepherdthisproducttoitsfinalrelease. Poreso la
organización nos eligió.
Diferentes equipos
Organice sus equiposde programa 30
Ahora que tiene un equipo principal, vamosa ver cómo podría sersu
equipo de programa de software. Es posible que debarevisar la imagen
Cómo podría ser su programa de software.
El equipo del programa de software tiene equipos de características
solos, si pueden estar solos.Joe,Tim,yHenrytodos tienen equipos de
características independientes.
Si más de un equipo trabaja en un conjunto de características, es posible
que necesite un programa para ese conjunto de características.
Recogeresos equiposenun programa.
Sally tiene un pequeño programa de equipos de características
recopilados.
Para un programa de software, escale horizontalmente, no hacia arriba.
No hay jerarquía de gerentes de proyecto, a menos que los equipos lo
deseen. No hay jerarquía de Maestros Scrum. Los equipos son iguales y
trabajan juntos.
El té del programade softwaretiene estas responsabilidades durante el
programa:
Biga
Youprogramcangetforthesoftwareprogramorthehardwareprogramma
ydiscoveryourorganizationhasanaturallimittohow.
La carta del programa podría ser algo como esto: "Proporcionar a los
amantes de la tique una manera de comprar artículos inusuales,
personalizados para su
Gustos. " Quevisióninferela búsqueda, la comunicación y el
pagoproyectos,perodoesn't decir nada acerca
deelespecíficosproyectosenel programa.Elprogramavisiónayuda ala
gentever todo el producto
Posibilidades.
35
Comience su programa a la derecha 36
Youmaytoaddmilestonessuchastradeshowsshowsortarget fechas;lo
que está impulsando esteprograma,ROT07 y punterosaotros
planesoelriesgolista.
Esta carta es a la vez un documento chárter y un plan de programa.
Sique
needtobreakthedocumentintotwo,considerarhavingjustthevisión y
criterios de liberación como el documento de carta del programa. A
continuación, puede tener el resto del documento como plan de
programa.
Si usted tiene un documento como carta del programa, puede talleres
de la carta programconteo con todo el equipo principal en un día o
menos al comienzo del programa. Recomiendo esto porque es fácil y
ayuda al equipo principala fusionarse como un equipo.
4.5.1 Desarrollar la Visión del Programa
Te recomiendo que uses alto, medio y bajo para describir tus riesgos.
Muchos programas comienzan con piezas significativas de riesgos
indefinidos.Siquetry yadescribircon porcentajes,quepodría encontrarse
estos problemas:
• Variashistoriassobre el inicio de
sesióndesylaseguridad,todaslashistorias especificadas para que
pueda ver su valor.
• Incluirían lo que puede salir mal con el inicio de sesión,como los
usuarios malintencionados.
• Incluirían cómo crear un nuevo usuario, cómo enviar una
contraseña a alguien que haya olvidado una contraseña, etc.
• Se clasificarían, por lo que el PO puede decidircuáles de esas
características hacer ahora y cuáles hacer más adelante.
Comience su programa a la derecha 49
2. Askthetechnicalteamsforfeedbackonthevisionandrelease
Criterios. Hacerentienden esas piezasdela carta? ¿Son lo
suficientemente claras para que los equipos técnicos hagan
compensaciones? Los principios son: "Empoderar al equipo"y
"Ver el todo."
3. Comience con un altonivel,imagen generalde su hoja de ruta.
Sigue evolucionando esa imagen, para que la gente pueda ver a
dónde quieres que vaya el producto. El principio es: "Las
personas y los desarrolladores de Businesdeben trabajar juntos."
5. Utilice la planificación continua
Ustedha visto cómo crear su primera hoja de ruta y tal vez incluso el
primer par de atrasos de productos para cualquier equipo dado. Ahora,
considere cómo actualizará la hoja de ruta y los trabajos pendientes.
As que replante, considere lo pequeñas que puede hacer las
características y los productos mínimos viables. Su programa
aumentarásu
rendimiento como el tamaño del lote sigue siendo pequeño.
52
UsarPlanificación Continua 53
su cliente puede tomar una versión. Esta es la razón por la que necesita
versiones internas al menos tan a menudo como una vez al mes.
Puede liberar internamente más de una vez al mes. Haga que el tiempo
mínimo entre las versiones internas sea una vez al mes.
Cuanto menos a menudo se libera, más tienen que estimar los equipos
deentidades. Con más versiones internas, los propietarios de productos
pueden cambiar los trabajos pendientes.Se'saganar-ganar.
"NuestroProductoGrewDifferentlyAtiempo"
Si revisa los Doce Principios del Desarrollode Software Agile y Revisa los
Siete Principios Lean,puede ver que el
principios son acerca dela entregadesoftware de trabajo, asfastas
possible.
Las iteraciones más cortas le permiten hacer eso.
¿Qué pasa si la gente de sus equipospiensa que las aliteraciones cortas
encom
passoverheadforplanningandestimacióny,inclusoretrospectivas?
Hay varias razones para ello.
Iusedtouseamorewaterfallapproachtomyprograms.Traté de
planificar una vez y que sea "el plan de registro"para todoel
Programa.
No funcionótan bien. Siempre estaba replanificando. Entonces
yo
descubrió la planificación deondas, y me enteré del valor de
la planificación, donde discutimos lo que podíamos hacer
cuando, y dónde estaban los riesgos, frente a la plan real,
que siempre estaba desfasado al díasiguiente.
Ahora, utilizo nuestra planificación como una manera de
entender los problemas ylos riesgos.Yousarla
planificaciónaayudar a tomar decisionesmás deellas
próximas semanas. Nunca espero que el plan dure un par de
semanas.Pero yo'm inmejorformaporquedeeldiscusiones de
riesgo
Tuvimos.
—Un director de programa sénior
¿Alguna vezpreguntacómoelproductoownerotheprogramaproducto
propietario de conducto según decide qué hacer primero, segundo o
tercero? Como administrador de programas, es posible que pueda
ayudar al equipo propietario del producto a decidir
qué hacer cuando.
Lo que parece una buena idea al principio del programa podría no ser
útil en absolutopartalo a través del programa. Recommend que para
todas las características no iniciadas,e incluso las características
incompletas,el propietario delproducto pregunta: "¿Es esto todavía
valioso?"
Esta pregunta es similar a la pregunta cero en la gestión de carteras de
proyectos: "¿Deberíamos hacer este proyecto en
absoluto?"VerGestiona tu ProjectCartera:Aumente su
capacidadyTerminar más proyectos,ROT09.Cuandoquehacer esta
preguntasobreelproyectocartera,queoptimizarvalorparaeltodoorganiz
ación.Cuandoquehacer la pregunta de valorsobreel
programacaracterística-sets,queoptimizarelvalorpara
este programa. Tú decides qué trabajo no hacer, lo que evita los
desperdicios.
porque esas características son mucho más importantes que todas las
otras características en este momento.
Cada vez que evalúe el trabajo pendiente del producto, vuelva a asignar
el valor empresarial points. Una iteración, puede decidir que solo
necesita 10.000 puntos. Algunas iteraciones más tarde, es posible que
tenga cinco equipos másy necesite usar 50.000 puntos para decidir qué
partes de las cuales cuenta
son más importantes ahora. Siempre y cuando utilices un número único
de points, noimporta cuántos puntos uses.Seasuntos que cada
característica tiene un número únicodepuntos.
Usar planificación continua 65
5.9.4 Evaluar el costo del retraso
Teamsnewtoagilemaywellhavetest-automation-and-buildwaste.
Elantes descubresesto,elmejor,si usted esaproductopropietariooun
administrador de programas. Clasificar ese trabajo es tan importante
como
funcionesdel rey corrió.
A menudo meda que estos riesgos se afectan entre sí. El cliente quiere
algo de inmediato. Hacer esa característica pone al resto del programa
en riesgo de retraso. Parece que no hay una respuesta correcta.Siquever
estoensu programa,tratar deCostodeRetrasoparasu característica
ranking. Usted puede tener clientes que quierendifferentfeaturesnow, o
que necesita paraintercambiar alguna exploración arquitectónica antes
de que pueda decidir . El costo del retraso puede ayudar a su decisión.
y a TodoRecuerde, dentro
detiveztengasadiferencianuestro edificio """desplegando los
"deploysowecustomers."puede ver
70
Crear un entorno de entrega 71
algún otro hito. Claro, Beta significa algo para todos en el program.
Pero ¿cuáles son las tareas que todo el mundo necesita para cumplir
llegar a ese hito? La planificación basada en la entrega de productos
Hito. Mantenga las tareas pequeñas, algo que las personas pueden
lograr dentro de uno o dos días, para que puedan entregar su trabajo y
no sentir unasielprogramase ha apoderado desuvidas.
Me gustan las placas físicas siempre que sea posible, en lugar de las
placas electrónicas.Incluso si su equipo
principalysoftwareprogramaequipossonexperimentadoenágilymagra,q
uepodríaser nuevoenseranúcleoequipooun
softwareprogramaequipoparaeste producto.Midirectrizpara
nuevos equipos ágiles y magros es comenzar con aphysicalboard hasta
que su trabajo juntos se vuelve natural.
Por ejemplo, es posible que deseen agregar avatares altablero, como
en Kanban en acción, (HAM14).Que personalizes eljunta,y ayuda ala
gentesaberqueestá trabajando enqué.
no es a menudo liberadoapara
Puedes empezar evaluandotuversióntusuproducto podría tu
langostaomersproduct.nowThis.
Ifeveryteam,programteamorfeatureteam,worksonsmallchunks de
trabajo, pueden hacerlo rápidamente. Comprueba si tus equipos pueden
usar la integración continua.Siasí
que,comoqueintegraryconstruir,quepuede
liberarsutrabajopararetroalimentación. Cuanto antes los evaluadores
proporcionen retroalimentación a los desarrolladores, menos defectos
tendrá en generalenel programa. Cuanto antes todos integren su
trabajo,
más rápido los equipos pueden ver si tienen problemas.
Cuanto más rápida sea la retroalimentación en todo el programa,
menos deuda técnica inadvertida se acumulará en su programa.
Ifeveryonelibera algo cotidiano,youcancreateinter-nal libera cada mes
sin demasiado alboroto.Setoma Autonomía,Cotrabajo,y Exploración
enelparte de cada uno de losequipo.
Crear un entorno de entrega 77
cualquiera que vea. Esto permite a todos crear una cultura de entrega,
para que pueda obtener comentarios y asegurarse de que está en el
camino correcto.
Colaboración, y
Exploración
81
Fomentar la autonomía, la colaboración y la exploración 82
decisiones propias.Ellosnecesidadasercolaboración,
porquequevoluntadaprendercomoproceden.Algunosdethoseaprendizaj
esvoluntadcrearinterdependencias. Y, los equipos necesitan ser
capaces de explorar,no abrir
intentloop, de
wanderofflearningexplorationinto. en ninguna parte,
peroexploraciónconel
Los equipos podrían tener que mapear sus historias juntos, junto con sus
propietarios de productos para entender cuál es la épica.
Si desea velocidad, las prácticas de colaboración son pruebas e
integración.
significa Autónoma.
Esoes lo que
por
esperaría equipo es
Cada team cantodavía eso. Pero preguntas cada uno deotroreo-
teamorfunctioningteamagileteam,. Yo
Esa red tiene un nombre. Sellama una red de pequeño mundo. Si alguna
vez hasusado Wikipedia, has usado un producto creado por una
pequeñaredmundial.Cualquierapuedeeditar Wikipedia. Hay algunas
reglas, muyaplicadaspor la comunidad, acerca de cómo la gente edita.
no código, el Son
lenguaje,Wikipediatienela noción depero . Esnatural
ideascolectiva"lamisma propiedad.
Esta es una imagen de cómo podría ser una red de pequeño mundo para
nueve equipos. Supequeño-mundonetwork será diferente.
Tenga en cuenta que cada equipo está conectado con todos los demás
equipos, pero no de la misma manera.Algunosla gente está altamente
conectada; algunosla genteestán mucho menos conectados. Eso no
importa.Elprogramapuede
Fomentar la autonomía, la colaboración y la exploración 87
excepto por
velopers,thearchitectsanddevelopersmightoverlapDevelopercommunit
y. Because architectsare. Su programatambién de-
tendrán que decidir qué hacer: ¿todos los desarrolladores también son
arquitectos?O,sonarquitectos,quesonincrustadoenlos equipos, un
subconjuntodeeldesarrolladores?Deje que los equiposdecidir.Recuerde,
los arquitectos guían el valor empresarialdela arquitectura. No son los
únicos que se les permite diseñar.VerPastor de la arquitectura
ágilparamásideassobrearquitectos ycómoayudan a pastorearelvalor
empresarialdeelproducto.
Las comunidades de práctica ayudan a los equipos a conectarse y decidir
cuándo y si profundizar sus redes de pequeño mundo.
Esto es más fácil si todos están ubicados.Cuandola gentesongeografía
distribuidas de forma cídica, sus oportunidades deaprenderdecada
unootrosson virtuales y no
casicomosatisfactorio.Personasvoluntadtodavía aprenderfromcada uno
otros cuando se distribuyen.Peropueden descubrirquetoma más tiempo.
hacer esto ", pregunte qué lespermitiría ser capaz de hacer lo que usted
desea.Considerepreguntandoexperimentar para convertirse enmáságil
y magra.
Usted tiene opciones sobre cómo las personas llevan a cabo estas
reuniones.
95
Lleve a cabo reuniones útiles para su programa 96
Recomiendo usar kanban para cada equipo del programa, para que
cada equipo pueda visualizar su trabajo en curso.
También recomiendo que tenga reuniones semanales o quincenales,
depend ing en la duración de su programa. Las reuniones le
proporcionan una cadencia, un ritmo para su trabajo, sin tener que
comprometerse
a iteraciones reales.
El problema es que cada equipo del programa resuelve diferentes
problemas, especialmente si su programa es grande enough.
Las dos últimas preguntas son enfoques más tácticos a la pregunta del
equipocentral,"¿Cómo podemos ayudar al programa a
organización?"El programa de
softwareteamwilllimittheirtheirproblem-
resolviendo al programa de software. Siqueverproblemas en toda la
organización que pueden'tarreglar,queintensificar queproblemaael
equipo principal.
El equipo principalresuelve los problemas de valor empresarial.
Responden a estas preguntas:
la resolución de
problemas,
Aprogrammanageraformofservantleadershipfacilitatesanenvironmentf
or.It'sallaboutriskmanagement,ayudando
personas para ser más ágily y delgado.
Cuando usas café magro, everyone hace una lluvia de ideas sobre la lista
de problemas en stickies. Votas sobre los stickies. Tomas la clasificación
más alta
pegajoso, discutirqueforashorttimebox. Considere la posibilidad
deseleccionarun cuadro de tiempo de ocho minutos y ver si eso funciona
para usted.Túpuedesiempre
disminuir la duración del intervalo de tiempo a cinco minutos, si lo
desea.Hacerno
startwithatimeboxlongerthaneightminutes. La idea de café lean es que
discutas algo siempre y cuando la gente tenga energía a su alrededor.
Más deochominutos yeldiscusiónvoluntadhundirse.
Alfinal de lacaja detiempo, usted vota el pulgar para continuar (thumb-
up), nole importa (thumb-sideways), o cambiar el tema (thumb-down ).
Si
usted cronometra las reuniones de su equipo del programa a una hora,
puedesorprendersepor la cantidad de problemasque puede cubriren
una hora. Podría decidir resumirla lista de elementos de acción o
preparar un kanban de las acciones al final de la reunión.Siasí que,ya
seaañadir otro5-10minutos (timebox este
trabajo),oincluirqueenelreunión.
Lleve a cabo reuniones útiles para su programa 106
8.4.3 Cómo utilizar un Temperature Reading
108
Estimación del Programa o Costo 109
Cuando mis gerentes me han pedido una estimación del programa, les
pregunto si tienen una fecha objetivo en mente.Yorecordarellos
quequesontrabajandoincrementalmente,yquepuede cambiar. Les
recuerdo que soy un administrador de programas, y no tengo
capacidad de ver en el futuro.
Estimación del Programa o Costo 115
Espiral en una fecha funciona bastante bien para más pequeño, más
corto pro
Gramos. He utilizado este enfoque para programas de cuatro a ocho
meses. Ofrezco "Cuarto 2, el próximo año",como my primera
estimación. A medida que terminamosfea
Estimación del Programa o Costo 117
Nunca suministre una sola fecha con suestimación. Esa fecha invita a su
dirección a jugar juegos de estimación con
usted.Cuandoqueproporcionar una estimación de tres
fechas,queinvitarlos a más subsistoy sus riesgos.
Cuanto más largo sea el programa, más lejos deberían estar sus fechas
realistas y pees simísticas. Cuando he usado esto, he dicho,"Debemos
tener un producto general demostrableporJunio1,peroYodon'tcreo que
podemos liberar que uno a nuestra costumbrers. Deberíamos tener un
reasonabledeliverydateofAugust15.IfMurphycomestositonour
programa, no espere un producto liberable hasta el 30 de octubre.
Y,Deberíasercapaz deaactualizar esta estimaciónsiguientemes,
cuandoquepuedetodos
ver lo que los equipos entregan. "
Estimación del horario o costo de Program 118
Como director de programa, usted tiene dos roles cuando las personas
piden estimaciones: consulte con sus patrocinadores y solicite la
equipos entregan
frecuentemente. Pregunte a sus patrocinadoreslaslasaSestaspreguntas
antes de estimar.
propiovelocityorcycletime. Aslongastheycancreatefeatures de un
atraso, note importa lo que llaman su estimación relativa.
Parte de lo que podría necesitar haceren las reuniones del equipo del
programaes preparar el estado de su programapara el resto de la
organización. Es posible que tenga algún tipo de reunión de revisiónde
operaciones. Porque
la organizaciónesperaalgunos progresosensuprograma, es posible que
tenga que mostrar el progreso a las personas que hacen cartera de
proyectos
Decisiones.
123
Mediciones útiles en un programaágil y ajustado 124
el nivel del programa.
Uno de los errores que veo mucho es que los gerentes quieren tomar
varios equipos' velocidad y de alguna manera añadirlos juntos. Creen
que esto es una medida del programade velocity.
Nohagas eso. La velocidad es personal para un equipo. Essólo predictivo
para ese equipo y es predictivo para propósitos de
estimación.Se'snotpredictivoacualquierotro equipo. Puede ver lo que los
equipos están haciendo si
son equipos con características, yyouuse aproductbacklog burnup
chart.
Los programas tienen que ver con las características. Eso significa que
usted mide por fea
Ture. A veces, varios equipos trabajan en el mismo trabajo pendiente
compartido.Hacequemateriasiusted mide lo que un equipo¿Lo
hace?Seasuntosparael equipo.Sehacenomateriaparael progrlo soy.
Sin embargo, el director del programa se preocupa por elprogresodel
programa en las características de todos los equipos.Sieltodoprograma
tiene acechoprogreso,comoenequipos quesonnointegrando algo cada
día,
Mediciones útiles en un programaágil y ajustado 127
¿Atraso? "
tlo más maldito tan rápido como sea posible porque necesitamos el
dinero, maldita sea, por lo que tenemos que jugar con la hoja de ruta
yeltrabajo pendiente deobtenerel mayor valorhacia fueradelo
que'rehaciendo.(¿Tiene un tercero?)
¿Has notado el tema común aquí: tendremos que jugar conla hojade
ruta y el trabajo pendiente para obtener el máximo valorhacia fueradeel
programa? Tenga en cuenta que nodije ROI (retorno de la inversión).
No se puede calcular el ROI hasta después de la liberación, por loque no
tienesentido tratar de medir que en este momento.
SumanagementmightwantyoutomeasureEarnedValue.Earned Value es
el valor que obtiene de las características completadas. Conganado
valor, su gestión podría capitalizar la inversión que el programa ha
realizado. Puede mostrar el valor ganado con un gráfico de quemadode
acumulación de productos.
10.12 Principios
1. Medir a nivel de programa, no a nivel de proyecto.Elprincipio
es:"Construirintegridaden."
2. Mide lo que quieras ver.Desea funciones completadas. Quieres
código relegado. ¿Quéotra cosahacerque¿Quieres? Mide eso. No
mida los sustitutos.Elmásusted midee los sustitutos, cuanto
menosusted va aobtener lo que quieres. El principio es: "El
software de trabajo es la principal medida del progreso."
3. Los equipos de características también son responsables de sus
medidas.Ellosnecesidadpara medir lo
quequehacerasabersiquesonvafuerala raiLs
ysiquetienenriesgosensus proyectos. El principio es: "Construir
proyectos en torno a individuos motivados. Confía en ellos para
hacer el trabajo."
4. Pide manifestaciones. Recuerde en el manifiesto, en la página de
principios,hay una línea que dice: "Trabajar tanftware esla
medida primariadeprogreso."Creerque.Elmás funciona su
producto,elmenosmedidas
quenecesidad.Elprincipioes:"Trabajarsoftwareesla medida
primariadeprogreso."
11. Desarrolle a su sirviente
Liderazgo
140
Desarrolle su liderazgo de sirvientes 141
Se rió de
mí."Yo'llhacerquecuandoobteneralrededoraque."
Dije,"Don'ttentaciónyo.Dos días."
Los dos días iban y venían. Hice una cita con su jefe y le expliqué que ya
no estabaen mi programa.¿Lo hizoeljefequiero
paraasignar a alguien nuevo,opodríahavemypickofposiblespropietarios
de productos de programa?
Su jefe quería que le diera una segunda oportunidad. No, de ninguna
manera.
Desarrolle su liderazgo de sirvientes 142
Tengo el dueño del producto del nuevo programa. Teníamos una hoja
de ruta actualizada y un nuevo trabajo pendiente.
Podrías pensar que noestaba sirviendo en este caso. No grité ni juré.
Me amito ant-i rolling. Serví a las mayores necesidades de
el programa.
Ser un líder sirviente no significa que seas un intruso.Significa que usted
crea elmedio ambienteenquela gentepuede prosperar
y los equipos de características pueden trabajar con autonomía,
colaboración yeliminación de exp.Sila gentedon'tsaberlo
queahacer,ciertamente no pueden
Entregar.
Cuando pides a los equipos los resultados que deseas, cuando creas el
entorno en el que los equipos pueden entregar esos resultados, y cuando
te las arreglas por excepción, eres un líder de servant.
Asíes comopuede usar estas prácticas.
Nuestros gerentes nos piden que seamos gerentes de programas,
arquitectos de programas o propietarios de productos de programas
porque hemos demostrado nuestra experiencia
competenciaen el pasado.Cuandoquesonautoconsciente,quedon't
necesitaaserel"más inteligente"oelmejorpersona técnica. En cambio,
somos conscientes de nuestras fortalezas y de cómo podemos manejar
nuestras debilidades.
Cuando escuchamos y decidimos que nuestro trabajo es servira la gente
en el programa, lo que importa es cómo la gente puede terminar su
trabajo.Seasuntosque todo el mundo tiene lacapacidadahacer sus
trabajos—queque
escuchar y eliminar los impedimentos.
Podemos ser el líder técnico de alguna parte del programa. Los
arquitectos del programa a menudo descubren que son líderes técnicos.
Unodelas acciones más valiosasparaasirvientelíderesaayudar a otras
personas a usarnuestroexperiencia paramejorarelproductooel
programa. Cuando entrenamos a las personas en lugar de especificar su
trabajo, les ayudamos a aprender y crecer.
Cuando deliberamos sobre cómo crear un entorno en el que las personas
puedan tener más éxito, tenemos dos oportunidades. La primera es que
liberamos las capacidades de todos losdemás.
Puedenserinclusomáséxito.Elotrosesquequetienen la
oportunidadaverelprogramaen su conjunto yactuarantes
deriesgosconvertirse en problemas.
11.4 Algunas personas noquierensirvientes
Liderazgo
añadiendo más
tiempo."¿Cómorealistaesesto?Yo'vesidodiciendoqueparase
manas ahora,quepuedeañadirlo quequequiero,peroel
totaltiempotiene que cambiar. No somos magos. Puedes ver
nuestro progreso
es constante. Sus adiciones son exponenciales. Esoes una
locura."
Finalmente lo entendió por mis cartas.Elacordó que la
administraciónhabíaexpectativas irrazonables.
Yo era el único con el que hablaba, lo queme hacía feliz. Me
pagan para tratar con la gerencia, no para dejar que las
tonterías rodar
Cuesta abajo. Pude proteger el programa, que para mí, fue
un acto de ershipde sirviente."
—Un gestor de programas de software donde ágil sigue siendo
nuevo
Pida a las personas que definan cuánto tiempo trabajarán solas antes
de pedir ayuda, en sus equipos o en toda la
organización.Misugerenciaparaesta vezes30minutos. Eso puede
parecer tecorto. He encontrado que si la gente spend un sólido 30
minutos que se atascan, como en que no se puede pensar en
unexperimentototryosu búsquedaparauna respuestaesinfructuosas, se
detienentrabajandoenesteproblemay leer el correo
electrónicoonavegar por la web.Ellosgastarmucho más
que30minutosseratascado.
Sino le piden a alguien que empareje o pida al equipo que enrede un
problema una vez quehaya gastado 30 minutos atascados,las
posibilidades aumentan que pasarán un día completo
atascado.Ellosganó'tdecir
nada hasta el stand up,e incluso entonces, podrían ser reacios a decir
cualquier cosa en público.
En cambio, si las personas tienen una directriz sobre estar atascada,
pueden actuar antes de que el día se haya ido.
Desarrolle su liderazgo de sirvientes 150
151
Pastor de la arquitectura ágil 152
Cuanto más cerca esté su producto de SaaS, más tiempo podrá esperar
para tomar muchas decisiones arquitectónicas. Es posible que tenga
que hacer
orientación de decisiones arquitectónicas, pero a menudono tiene que
make muchos grandes hacia arriba-decisiones de diseñofrontal. Cuanto
más cercaesté su producto del lado derechodel continuo, con hardware,
más podría tienen que utilizar enfoques de diseño basadosen conjuntos,
o proporcionar más
orientación arquitectónica anteriormente.
Los arquitectos trabajan con todo el equipo del proyecto, no solos. Los
arquitectos trabajan en todas las partes del producto, no sólo en las
piezas desafiantes o intercaladas.Enhecho,sinosonrotepartesopartes
aburridas, tal vez
quees donde más se necesita al arquitecto para automatizar algo para
que los humanos notengan quehacerlo.
Inmyworkshopsandinmyexecutivebriefings,Itheirtalentedarchitects,tell
managerstheythingsshouldponera lamayoríade lagente,también
conocidocomoen
productos suministrados:
Hay varias opciones para este tipo de un producto potencial prob lem.La
solución queseleccionarpodría dependereneltipodeproducto
usted tiene,basadoensuproducto 'scomplexity. ConsulteComprenderla
complejidad del producto. Estas sonalgunas opciones que podrían
funcionar para usted:
• Integratearchitecturespikeswithfeaturedevelopment.Maybe su
programa todavía puede desarrollar el sistema operativo (la
plataforma), y puede responder a otras preguntas a medida que
avanza.
Cuanto más grande sea el programa, más querrá ver los problemas
arquitectónicos temprano. No puedeshacer eso si no puedesmostrar el
funcionamiento del producto.
¿Quéseríaquetomarparasuprogramaamostrar un esqueleto
andantedetrabajandoproducto? Esa es la pregunta que los propietarios
de productos y architects pueden responder.
concernsabout
• Utilice Comunidades de práctica para ayudara explorar
alternativas.
• Workwithafeature teamtospikeafeature con implicaciones
arquitectónicas.
• Pregunte y anime a las personas de todo el programa a analizar
las cualidades arquitectónicas a medida que crean
características.
• Evalúe los riesgos y la arquitectura a medida que los equipos de
entidadescrean características.
• Gestione esos riesgos para crear unproducto coherente.
Pastor de la arquitectura ágil 161
En cada caso, el arquitecto del programa trabaja con los equipos para
desarrollar las respuestas que el programa
necesita.Elprogramaarquitecto
podría liderar la exploración como un líder sirviente.
Cuando digo diseños "competidores"de diferentes equipos de
características, la idea es evaluar los pros y los contras de los diseños,
noentregables del equipo. Ciertamente, no compare los equipos.
Su programa podría decidir romper el architecture. Mientras entiendan
sus objetivos, las preguntas que quieren responder y su trabajo, esto
puede crear mejor arquitectura y diseño para su programa. Pida a los
equipos que gestionen los riesgos e informen a menudo sobre su
progreso.
166
Resolver problemasde gramoPro 167
Pero esos impedimentos might ser sólo la punta del iceberg para su
Equipos. Una vez que empiece a generar algunas opciones, puede
empezar a ver cuáles son los costos, y puede empezar a comparar el
valor de esas opciones.
1. era un problema.
multitareaMedidolos gerentes de
CostofDelaysomyentendidopor
"Considerar un Hackathon"
Once el propietario del producto del programa tiene la hoja de ruta ágil,
todos los propietarios de productos pueden trabajar con este
propietario del producto para generar el primer clasificado retraso para
todos los equipos. Ahora, al final de la primera iteración, el programa
tiene estos entregables:
• Todo el mundo sabe queaquí tienen deuda sin unidad es ni en
pruebas del sistema.
• Todo el mundo sabe si tienen herramientas adecuadas para
trabajar en el producto.
• Si están distribuidos geográficamente, saben si pueden
comunicarse entre sí.
• El propietario del producto del programa tiene unahoja deruta
gile.
• Los propietarios de productos han clasificado los atrasos para
sus equipos.
• Los equipos han practicado trabajar juntos, liberando algo.
• El equipo principal ha completado la carta del programa, por lo
que los equipos ahorasabenlo programvisionandreleasecriteria
Son.
Nohay mal tiempo durante dos semanas, ¿verdad?
175
Integración de hardware en su programa 176
podría parecer. (Mi experiencia robot es bastante antigua, así que esta
es una hoja de ruta inventada.)
La hoja de ruta hace que el valor sea visible. No wIII ser conjuntos de
característicasque nonecesita al inicio del
programa.Sielproductopropietarioy los
equipostrabajoporvalor,quevoluntadsermás fácilaver
cuandoque'stiempoainvertirenfísicaformularioycuandopuedes esperar.
podría pedirles que revisen los diseños cada semana o cada dos
semanas, sitrabajan en cajas de tiempo de dos semanas.
A medida que los engineers modifican sus diseños originales y
determinan lo que pueden hacer en laspartes mecánicas o de hardware
de el producto,
pueden explicar sus decisionesparaelsoftwarefeatureteamsand/o
arquitectos.
14.7 Integrar hardware con frecuencia
Una vez que el silicio real regresa, todavía hay más trabajo
de verificación— el tiempo en FPGA nunca es exactamente
el mismo que el silicio, y hay rendimiento analógico a
considerar también, pero en mi experiencia incluso el
abstracciones más simples pueden
reducir entre el 80y el90% de la dependencia del hardware
real durante el desarrollo y ahorrar meses o incluso años en
el proyecto
línea de tiempo. "
—Ian Brockbank, comunicación privada
¿Puedes desarrollarel software antes del hardware? ¿Esitaposibilidad
para su programa? ¿Qué tendría que ser verdad para quelo hicieras?
Integración de hardware en su programa 189
1. ¿Qué ha pasado?
2. ¿Los equipos de características experimentales fueron capaces
de lanzar la características?
3. ¿Qué pasó con los equipos que necesitaban expertos?
4. ¿Qué fue un reto de este experimento?
5. ¿Qué tuvo éxito con este experimento?
6. ¿Qué falló con este experimento?
7. ¿Qué aprendistede este experimento?
Solución de problemas de equipo ágil 193
8. ¿Quéharás en el futuro?
Hay muchos ejemplos de equipos que piensan que son ágiles. Algunos
tienensprints ardientes. Algunas organizaciones tienen equipos de
desarrollo y equipos de pruebas. Lo que veo a menudo es que los
desarrolladores trabajan en una característica, seguidos por los
evaluadores que trabajan en esa misma característica. Un sprint de
endurecimiento es un ejemplo de probadores y desarrolladores que
trabajan para finish el software, para obtener que hacer.
Ayude a los equipos a aprender cómohacer cada historia en uno o dos
días.
Haz que sea fácil para la gente traerte malas noticias. No seas
desagradable sobre este problema. Ayuda a que sequede nueces sobre
dónde seencuentran en su viaje ágil o magro.
El endurecimiento de sprints o la corrección de defectos en una
característica mucho después de que se creó son dos ejemplos de un
problema similar: no llegar a hacer
sobre historias. Puede haber muchas razones para esto: pruebas
insufficient, automatización de pruebas insuficiente, equipos parciales,
personas multitarea,para
nombre sólo unos pocos.
ver a los desarrolladores hacer eso, y no ser ciego a sus propios defectos.
Lo que le importa en su program es el rendimiento de las características
probadas en ejecución. No desea que los equipos parciales creen
trabajo en curso.QueDesperdicio.
Los equipos de características parciales son un artefacto de
pensamiento de cascada, optimizando para la eficiencia de los recursos
como en This is Lean: Resolving la Paradoja de LaEficienciaFiciency,
MOA13. Su dirección quiere lanzar a la gente al producto. Nolos dejes.
Si todo el mundo es ágil, es posible que no necesite tantas personas como su
la administración cree que sí. Tienes integración continua. Tienes
equipos de características. Noempiecesa tener más gente de la que
necesitas. Di, "Gracias. Elprogramadoesn'tnecesidadmás personas
quequepuedetienenencompletamenteequipos de características con
personal.A menos queusted puedepersonal cuentan con equipos
conprobadoresy los propietarios de productos, puedoNo use estos
desarrolladores.
Nos ralentizarán. Detodos modos, eso te ha fracasado. "
Haga hincapié en que deseafluefficiency,movingfeatures—entregables—a
través del programa.
Si esono los convence, estima el Coste del Retraso para los equipos
parciales, como en Buceo para Tesoros Ocultos: Encontrar el valor en su
proyecto Portfolio (RE14). "En algún momento, necesitaremos
probadores para esos desarrolladores",o cualquier rol te estás
perdiendo. "En ese momento, o tenemos un retraso mientras tratamos
de integrar aalguien en el equipo, o tendremos que pedir a la gente a
multitask. Ese retraso, que calculo queserá de algún número,
afectan a todo el programa."
Solución de problemas de equipo ágil 199
Características de Curlicue
Si es así, haga que sus características sean más pequeñas. Hacer que
las funciones sean más pequeñas ayudará a
el teamsee suprogreso. Las características más pequeñas también
proporcionan comentarios al propietario/cliente del producto. Esos
comentarios ayudarán al propietario del producto a hacer las historias
más pequeñas y ayudarán al equipo a completar su trabajo dentro de
la iteración.Siqueestán usando kanban,
esteessimilaraverajuntanocambioparasemanasmientras que las
mismas características siguen siendoeneljunta,nada en movimiento.
También es probable que esté haciendo
Integración.
Usted puede decir, "Aquí están los resultados que quiero como el
administrador de
program.Siquepuedetrabajoestemanera,quevoluntadobtener los
beneficios."
Si las ideas aquí nofuncionan, considere las ideas en ¿Qué pasaría si ágil
y Lean noson adecuadaspara tú. Se supone que la gestión ágil y magra
del programa hace su vida más fácil, no más difficult.
207
Integración de equipos ágiles y no ágiles en su programa 208
Tal vez necesites entrenaro o acoach para estos equipos. No espere que
people con una mentalidad de proyecto de control se ajuste
automáticamente a una mentalidad de proyecto adaptable.
Integración de equipos ágiles y no ágiles en su programa 210
Algunos prototipos pueden ser muy útiles. Por ejemplo, en un pico tural
architec, la salida podría ser una prueba de concepto o un prototipo. Sin
embargo, si un equipo sólo prototiposy nunca termina características,
que
es un problema.
Pida al equipo que cree un tablero kanban para que todos puedanver el
estado de las características.Pregunteelequipoadefiniry
gestionarsuWIP.
Pida al equipo que defina lo que significa hacer para ellos. Pida al
equipo que
llevar a cabo una retrospectiva para que entiendan lo que hicieron y
cómo lo hicieron.
Integración de equipos ágiles y no ágiles en su programa 211
Ustedha leído este libro, y usted piensa, "Bien, esto es great, pero
novaatrabajoparayo,nuestro programa,onuestroorganización."
Tal vez ustedha decidido que la culturano apoyará ágil y se inclina nado
ahora, o usted tiene muchos proyectos de cascada además a algunos
proyectos ágiles en su programa. Tal vezeres nuevo en agile, tus
iteraciones son más de dos semanas, y tu riesgo es demasiado alto.Tal
vezsus gerentesquieroaejercertambiénmuchocontrolenlos proyectos
sobrelo quela gentehacer(mover a la gente comopiezas de ajedrez),
ynogestionar elproyectocartera.
Tienes opciones. No tienes que ejecutar un programa en cascada.
acerca de alrededor de
envejecimiento,Usted puedetomar ventajadeliverableeverything-
basedplanning,ya sabes acerca decrossprojectman-funcional-
212
Qué hacer si Agile y Lean no son adecuados para usted
21
3
lo que podría funcionar para usted. Te animo a que
involucres el programa. Hagas lo que hagas, no los llames personas
"mejor en
Prácticas.
"
Eso matará a la gente porintentar algo. Si necesita un nombre para
estas ideas, llámelas "prácticas potencialmente útiles."
Invite a personas y equipos a experimentar, medir su progreso y
reflexionar.Sieldatos dice cosasson'ttrabajandoyque'vedado
elideasuficiente tiempo, pruebe otra cosa.
Lo peor que pasa es que vuelves a la cascada sin
replanificación.Comoquesaber, queesello peor que puede pasar.
Porque en un programa, Murphyestá esperando que suceda. Murphy te
hará replanificar.
Estas son algunas posibilidades, dependiendo de los riesgos de su
programa.
17.1 Pruebe un ciclo de vidaincremental
Si no está listo para ser ágil, puede usar trenes de liberación y ver crecer
su producto con cada versión.
Los equipos pueden trabajar en minicascadas enlugar de por
característica. El valor de un tren de lanzamiento es que tienes que
liberar algo cada
Tren.
En un programa, no es un clienteexterno—es
interno.Porquequesontrabajando conprojectequipos— equipos de
características—usted
no necesita garantía de marketing o capacitación para estar listo
internamente; sólo necesita que el software esté integrado y
posiblemente para ser
casado con el hardware. Eso es bastante difícil—quieres que el
Qué hacer si Agile y Lean no son adecuados para usted 219
1. Trabaje por función, siempre que sea posible. Haga que esas
características sean pequeñas, para que los equipos puedan
integrar elm continuamente. El principio es: "Entregar temprano
y a menudo para satisfacer al cliente."
2. Dile a los equipos que quieres quetrabajen en una red de
pequeño mundo
no ser ágil o no lo hace porque trabaja, que'reautónomo,
colaborativo, lean y exploratorio. Sólo
223
Bibliografía anotada 224
[BCD05] Rothman,JohannaandEstherDerby.BehindClosedDoors:
Secretos de la Gran Gestión. Pragmatic Bookshelf, Dallas, TX y
Raleigh,NC, 2005.Nosotrosdescribir la Regla deTresymuchosotros
enfoques de gestión y techniquesenaquí.
[ROT07] Rothman, Johanna. Administrar¡! Su guía para la modernidad,
Gestión de Proyectos Pragmáticos. Pragmatic Bookshelf, Dallas, TX
y Raleigh, Carolina del Norte, 2007. Si quieressaber más sobre
cómo estimar eltamaño de la tarea, establecer un ritmo de
proyectoo ver un tablero de control project, este es el libro para
usted.Yotienenreferencias sobrepor quémultitareaeslocoenaquí.
[ROT09] Rothman, Johanna. Gestione su cartera de proyectos: en
creaseYourCapacityandFinishMoreProjects.PragmaticBook-shelf,
Dallas, TX y Raleigh, NC, 2009.A veces, el programa
Bibliografía anotada 226
Sino está familiarizado con los términos quehe usado, aquí están las
definiciones.
MVP: Producto mínimo viable. ¿Cuál es el mínimo que puede hacer para
crear un producto aceptable?Esteesnoapenasbuenosuficiente
Calidad. Thisisshippableproduct.However,thisisminimalinterms of
features.
231
Más de Johanna 232