Sei sulla pagina 1di 85

Team Software Process

SM IntroductionTSPi Watts Humphrey

Introduccin

TSP fue creado en 1999 por Watts Humphrey con el fin de proporcionarle a los estudiantes de ingeniera de software una visin total del ciclo de vida del software.

Por qu los equipos de ingenieros necesitan un proceso?


Los equipos de trabajo que se conforman en la industria se enfrentan a tres problemas muy comunes:
Se enfrentan retos demasiado difciles de cumplir (cronogramas imposibles) El equipo se enfoca en el producto ms no en el proceso. Uno o ms miembros del equipo son obstculos para el proyecto.

Por qu los equipos de ingenieros necesitan un proceso? (2)

Dar a un grupo de ingenieros un proyecto no significa necesariamente que son un equipo. Construir un equipo no es una tarea obvia Nuevos equipos gastan una cantidad de tiempo substancial en problemas de manejo del equipo
Cmo repartirse el trabajo? Cmo coordinar las tareas? Cmo asignar responsabilidades? Cmo medir progreso? ...

Qu es TSP?

Framework que hace un balanceado nfasis entre procesos, productos y trabajo en equipo Presenta los conceptos para la conformacin eficiente de equipos de trabajo. Define un proceso de construccin de proyectos de mediana escala con un grupo de trabajo y capitaliza la experiencia en planeacin y control de proyectos

Qu es TSP?

El proceso puede ser adaptado para los diferentes grupos de trabajo.


PRODUCTO

PROCESO

EQUIPO

Marco de implantacin de TSP


TSP
Aprendizaje acerca del equipo Definicin del proceso del equipo

TSPi

Dedicacin a la calidad Definicin de roles Equilibrio de cargas Motivacin del equipo

PSP

Definicin para cada individuo

PSPi

Planeacin y estimacin Mtodos de calidad Uso de mtricas Recoleccin de datos

Qu se necesita para iniciarse en TSP?


Miembros del grupo entrenados en PSP. Conocimiento previo en diseo de software y manejo de requerimientos. Conocimiento en administracin de la configuracin, manejo de proyectos y pruebas de software.

Principios fundamentales de TSP


1. Se aprende del proceso ms rpidamente cuando est definido y se puede obtener retroalimentacin inmediata. 2. El trabajo productivo de los equipos requiere el cumplimiento de metas, un adecuado ambiente de trabajo con el liderazgo adecuado.

Principios fundamentales de TSP


3. Definir mtodos desde el inicio para evitar la construccin de prcticas, mtodos y roles en medio del proceso 4. El entrenamiento de un equipo de trabajo es ms efectivo si se basa en conocimientos previos.

Diseo del proceso para el equipo de trabajo


PSP Disciplina

Desarrollo cclico Medidas precisas

Medicin de calidad y desempeo TSP


Evaluacin de equipo y roles

Guas para solucionar problemas en el equipo

Ciclo de desarrollo en TSP

Por qu Fallan los Proyectos de Software?


Cuando un proyecto de software falla, se debe principalmente a problemas de trabajo en equipo y no a problemas tcnicos [De Marco]

Principalmente, problemas para manejar la presin generada por un cronograma imposible de cumplir Tpicamente,se responde a esta presin, tomando atajos, saltando etapas, apostandole a nuevas herramientas, ...

Por qu Fallan los Proyectos de Software? (2)


Liderazgo inefectivo Falta de compromiso o de cooperacin Falta de participacin Procrastinacin Problemas de Calidad Aumentar la funcionalidad

Qu es un equipo?

Al menos dos personas trabajando por una meta comn Cada uno tiene un rol especfico asignado Llevar a cabo una tarea tiene alguna clase de dependencia con otros miembros del grupo.

Cmo se construyen los equipos efectivos?

Cohesin

Es un grupo de gente tan fuertemente unida que el conjunto de personas es mucho ms que la suma de cada uno de los individuos [Peopleware]

Metas retadoras
Especficas y medibles Representan un reto significativo

Cmo se construyen los equipos efectivos?

Retroalimentacin
Medir el progreso Distinguir el desempeo personal del equipo como un todo

Ambiente de trabajo comn


Las tareas de cada uno de los miembros son claras y distintas. Cada miembro del equipo est claramente identificado. El equipo tiene el control sobre cada una de las tareas.

Construyendo un equipo efectivo


Equipo
eficiente

Cohesin Metas retadoras Retroalimentacin Camino claro para la obtencin del objetivo

TSP
Equipo
ideal Manejo de metas Planes y estrategias Definicin de roles Comunicacin externa e interna

Cmo TSPi construye equipos

Metas
Definir y aceptar un conjunto de metas comunes Definicin participativa Metas por roles

Roles

Definir responsabilidades entre todos los miembros del equipo

Cmo TSPi construye equipos

Planes
Definir una estrategia para lograr las metas Descomponer el trabajo total en partes (ciclos de desarrollo) Replanear de acuerdo con los resultados y la experiencia ganada

Comunicacin
Conocer el estado del trabajo de cada uno y de todo el equipo Seguimiento definido con base en lo planeado

Comunicacin externa

SM TSPi

Plan de Desarrollo

Necesidad de hacer planes

La complejidad de un plan depende de la complejidad del trabajo que se pretende realizar Realizar un plan demanda tiempo y un esfuerzo considerable !!!

Necesidad de hacer planes (2)

Justificacin:
Realizar el trabajo ms eficientemente Se sabr qu hacer y cundo hacerlo Organizacin de TODAS las tareas que deben hacerse Se establecen compromisos ms realistas Se facilita el cumplimiento de las metas Se puede hacer seguimiento del trabajo contra el plan y aprender !!!!

Tareas

sorpresa Mejorar la estimacin

Aspectos Esenciales

Planes balanceados Seguimiento del progreso del proyecto a travs del plan Planeacin detallada Tener en cuenta la posibilidad de tareas no planeadas Producir un plan en formatos conocidos, fcilmente manejables por el grupo

Proceso de Planeacin

Proceso de Planeacin (2)

Paso 1: Producir el diseo conceptual

Este diseo ser utilizado en el proceso de planeacin

Paso 2: Desarrollar la estrategia


Estimacin del tamao de las partes del diseo conceptual Decisin orden de desarrollo en los ciclos Registro de la estrategia

Proceso de Planeacin (3)

Paso 3: Registro en la forma de tamaos (SUMS)

Esta forma resume la informacin de estimacin de tamaos para el producto Listar las tareas requeridas para construir los productos identificados en le paso 3 Con base en los entregables Estimar el tiempo de cada tarea y completar la forma de tareas (TASK) Estimar cunto tiempo el equipo gastar cada semana en el proyecto e ingresar esta informacin en la forma del cronograma (SCHEDULE) Usar la herramienta para completar la informacin

Paso 4: Producir el plan del equipo (TASK, SCHEDULE)

Proceso de Planeacin (4)

Paso 5: Hacer el plan de calidad (SUMQ)

Usar la herramienta para registrar la informacin


Producir el plan personal en las formas TASK y SCHEDULE

Paso 6: Cada Ingeniero hace su plan personal

Paso 7: Producir los planes individuales

Utilizar la herramienta para esta tarea

Proceso de Planeacin (5)

Paso 8: Balancear el plan


De acuerdo al plan global y a las tareas individuales Buscar que no haya dependencias fuertes en el tiempo entre las tareas Maximizar el paralelismo

Paso 9: Producir los planes finales

Utilizar la herramienta para actualizar los planes individuales y del grupo

Herramienta de soporte

Contiene todas las formas para hacer la planeacin y el seguimiento del proyecto

Proceso de planeacin

Criterio de entrada
La estrategia de desarrollo se realiz El modelo conceptual se elabor

Proceso de planeacin (2)

Listar los productos que sern producidos en el ciclo y estimar su tamao


Cdigo LOC Documentos Pginas Diferenciar de acuerdo a la dificultad del documento

Registrar los productos y sus tamaos correspondientes al ciclo de desarrollo (Forma)

SUMS o una propia

Proceso de planeacin (3)

Producir la lista de tareas

De acuerdo a los entregables generar las tareas que hay que realizar para producirlos Siempre tener en cuenta un item de aspectos varios (miscelneos) Tener en cuenta tareas especficas del rol

Producir los estimados de tarea del equipo e individuales


Asignar las tareas a los miembros del equipo El tiempo debe ser balanceado

Proceso de planeacin (4)

Indicar las horas que se trabajarn por semana en el equipo de desarrollo Producir las formas donde se documentan las tareas a realizar por el equipo

Proceso de planeacin (5)

Producir el plan de calidad


Estimar los defectos por KLOC que se prev ingresar en cada fase Estimar el Yield del equipo para cada fase Estimar la tasa de defectos que comparan las tareas de inspecciones con fases

Diseo

de bajo nivel / pruebas unitarias Revisin de cdigo /Errores de compilacin

Estimar las proporciones de tiempo entre fases

Proceso de planeacin (6)

Producir el plan de calidad

Estimar las tasas de desempeo de inspecciones y revisiones


Pginas

de requerimientos por hora Pginas Diseo de alto nivel por hora ...

Estimar la proporcin de inyeccin de errores por fase Estimar la proporcin de remocin de errores por fase

Proceso de planeacin (7)

Producir el plan de calidad


Estimar los yield por fase Estimar los yield del proceso

Antes

de compilacin Antes de pruebas unitarias Antes de pruebas de integracin Antes de pruebas de sistema

Proceso de planeacin (8)

Balancear la carga de trabajo del equipo

El nmero de horas por semana del equipo debe estar balanceada entre las diferentes semanas

Producir y distribuir los planes

Proceso de planeacin (9)

Criterios de salida
Los planes individuales y de equipo fueron completados La distribucin de carga del equipo por semana se encuentra balanceada La distribucin de carga individual se encuentra balanceada Se tiene el documento con la estimacin de los tiempos de los entregables Se produjo el plan de calidad

Seguimiento de la planeacin

A partir de la planeacin se debe seguir las tareas e indicar el tiempo gastado efectivamente en ellas

La idea es saber:

Cules tareas se han realizado Cules se encuentran retrasadas Qu se ha hecho adicional (Tareas miscelneas)

Seguimiento de la planeacin (2)

El objetivo es:
Evaluar objetivamente mi avance en el proyecto Comparar mi planeacin contra mis resultados reales Mejorar mis estimaciones para el prximo ciclo Agregar/modificar/quitar actividades Simplemente !MEJORAR EL SIGUIENTE PLAN!

Seguimiento de la planeacin (3)

Tareas

Registrar el tiempo utilizado para cada tarea


Bitcora

de tiempo

Indicar las tareas que se han terminado y completarlas en el formato Generar la informacin de tareas y agenda reales Ingresar los errores en la bitcora de errores Indicar el tamao por entregable

Seguimiento de la planeacin (4)

Tareas
Actualizar la forma de planeacin global Generar la forma del plan de calidad Producir el estatus de avance consolidado del equipo

Trabajo en Equipo y Roles

Ser responsable

Cuando estamos enfrentados a un problema, generalmente tenemos tres opciones


Ser emotivos, gritar, blasfemar, .. Ignorar el problema y esperar que otro lo resuelva Aceptar el reto y buscar como podemos constructivamente hacer algo para resolverlo

Ser responsable significa escoger la 3 opcin

Esforzarse por alcanzar metas definidas


Metas proveen un objetivo y un foco Permite que se definan prioridades y que se ignoren los detalles no importantes

Vivir bajo principios slidos


La opinin de s mismo La opinin sobre los otros Su compromiso con la excelencia

Vivir bajo principios slidos (2)

La opinin de s mismo
Quin es usted? Tiene confianza y respeto por s mismo? Acepta sus talentos y habilidades? Conoce sus debilidades y defectos?

Vivir bajo principios slidos (3)

La opinin sobre los otros


El respeto por los otros es crtico La clave es esforzarse por el entendimiento y el soporte mutuo

Vivir bajo principios slidos (4)

Su compromiso con la excelencia


Conviccin, perseverancia, y un alto grado de compromiso personal La clave para hacer un trabajo de software excelente es conocer y aplicar consistentemente mtodos efectivos: trabajo profesional

Comunicacin

Visibilidad

Todos conocen los planes, el trabajo y compromisos de los otros ... Ignorar, pretender escuchar, escuchar selectivamente, escuchar atentamente, escuchar con la intensin de entender

Escuchar

Negociar

Evitar la polarizacin de las opiniones

Hacer y cumplir compromisos

Compromisos responsables deben estar basados en un plan para realizar el trabajo Los compromisos deben ser libremente asumidos Los compromisos son pblicos

Participacin

Discutir las opiniones, preguntar, debatir, escuchar Aceptar ayuda: ser auto suficiente es importante en algunas situaciones pero tratar de ser auto suficiente en una crisis puede ser muy peligroso

Aceptar y realizar un rol

Por qu definir roles?


La mayora de los proyectos incluyen actividades distintas a las de desarrollo. Si nadie se responsabiliza por estas tareas ellas no se harn ! Distribuir responsabilidades

Establecer y esforzarse por alcanzar las metas del equipo


Alcanzar acuerdo sobre las metas Planear el trabajo de acuerdo con las metas Obtener compromiso con las metas y el plan

Roles

Lder Lder de Desarrollo Lder de Planeacin Lder de Calidad Lder de Soporte

Lder

Objetivo Global

El lder conduce el grupo y se asegura de que todos los integrantes reportan sus datos del proceso y terminan su trabajo como se plane.

Caractersticas del Lder


1. Ud. disfruta siendo lder y es un rol que puede asumir de manera natural 2. Ud. Es capaz de identificar los problemas claves y tomar objetivamente decisiones 3. Ud. No se preocupa demasiado por hacer acciones poco populares, de vez en cuando, para presionar a la gente a realizar sus tareas 4. Ud. Respeta sus compaeros, est dispuesto a escuchar sus puntos de vista y a ayudarlos

Metas del Lder del Proyecto


M1: Construir y mantener un equipo efectivo M2: Motivar los miembros del equipo para que trabajen de manera entusiasta y dedicada en el proyecto M3: Resolver los conflictos del grupo M4: Mantener informado al instructor sobre el progreso en el proyecto M5: Ser un facilitador efectivo en las reuniones de grupo del proyecto

Actividades principales
1. Motivar a los miembros del grupo para que realicen sus tareas 2. Cada semana, antes de la primera clase de la semana, llevan a cabo la reunin semanal del equipo para:

Hacer seguimiento a las tareas que deban realizarse Verificar que todos suministraron su datos del proceso Verificar que todas las formas requeridas han sido completadas Identificar las tareas para la semana y sus responsables

Actividades principales (2)


3. Cada semana, reportar el estado del proyecto al instructor:

Mostrar el sitio del proyecto con los datos del grupo Buscar gua en el instructor sobre problemas con integrantes que sistemticamente no cumplen con sus tareas y compromisos Obtener gua del instructor para compartirla con el equipo

4. Ayudar al equipo en la asignacin de sus tareas

y en la solucin de problemas

Actividades principales (3)


5. Actuar como facilitador y de cronmetroen las reuniones del grupo 6. Mantener el sitio del proyecto 7. Liderar el grupo en la produccin del reporte final del proyecto 8. Actuar como ingeniero de desarrollo

Lder de Desarrollo

Objetivo Global

Liderar y guiar el grupo en la definicin, diseo, desarrollo y pruebas del producto

Caractersticas
1. Ud. disfruta construyendo cosas 2. Ud. Desea ser un ingeniero de software y quiere ganar experiencia en liderar un desarrollo 3. Ud. Es un diseador competente y siente que podra conducir un desarrollo 4. Ud. Est familiarizado con mtodos de diseo 5. Ud. Est dispuesto a escuchar las ideas de diseo de los otros y puede, objetiva y lgicamente, comparar las cualidades de sus ideas contra las suyas

Metas del Lder de Desarrollo


M1: Producir un producto de calidad superior M2: Usar totalmente las capacidades y habilidades de los miembros del grupo

Actividades principales
1. Conducir la construccin de la estrategia de desarrollo 2. Conducir la produccin del primer estimado de tamao y tiempo 3. Conducir el desarrollo de la especificacin de requerimientos 4. Conducir la produccin del diseo de alto nivel 5. Conducir la produccin de las especificaciones de diseo 6. Conducir la implementacin de producto

Actividades principales (2)


7. Conducir el desarrollo de los planes de pruebas 8. Conducir el desarrollo de los casos de pruebas y del proceso de pruebas 9. Conducir el desarrollo de la documentacin del producto 10. Liderar el grupo en la produccin del reporte final del proyecto 11. Actuar como un ingeniero de desarrollo

Lder de Planeacin

Objetivo Global

Dar soporte y gua al grupo en la tareas de planeacin y seguimiento del proyecto

Caractersticas
1. Ud. tiene una mente lgica y se siente muy cmodo cuando sigue un plan para hacer su trabajo 2. Aunque Ud. no siempre logra producir un plan, Ud. tiende a planear su trabajo cuando tiene la oportunidad 3. Ud. est interesado en procesar informacin 4. Ud. est dispuesto a presionar a la gente para que haga seguimiento y mida su trabajo

Metas

M1: Producir un plan completo, preciso y exacto del plan del equipo y de cada uno de sus miembros M2: Reportar con exactitud el estado del proyecto cada semana

Actividades principales
1. Conducir el grupo en la produccin del plan de las tareas a realizar en el prximo ciclo

Definir los productos que debern producirse y sus estimatido de tamao Especificar las tareas y las horas por cada una Documentar las tareas en el formato de Tareas

2. Conducir el grupo en la produccin del cronograma para el prximo ciclo


Determinar las horas semanales que cada ingeniero gastar en el proyecto Completar el formato del cronograma individual y del grupo

Actividades principales (2)


3. Conducir el grupo en la produccin de un plan balanceado
Obtener planes de cada uno de los ingenieros Identificar posibles desbalances en los planes Conducir el grupo para ajustar los desbalances Generar el plan consolidado Obtener planes personales detallados de cada ingeniero

Actividades principales (3)


4. Hacer seguimiento del trabajo utilizando el plan
Obtener la informacin semanal de cada uno Producir el reporte semanal del proyecto con respecto al valor ganado y al tiempo Generar el reporte de estado semanal Producir un reporte semanal de anlisis del desempeo real contra lo planeado Producir un reporte individual y de grupo para el instructor

Actividades principales (4)


5. Liderar el grupo en la produccin del reporte final del proyecto 6. Actuar como un ingeniero de desarrollo

Lder del Proceso y la Calidad

Objetivo Global

Dar soporte en definir las necesidades del proceso, en hacer el plan de calidad y en hacer seguimiento al proceso y a la calidad del producto

Caractersticas
1. Ud. tiene una alta preocupacin por la calidad del producto 2. Ud. est interesado en las mediciones acerca del proceso y del producto 3. Ud. tiene alguna experiencia con las tcnicas de inspecciones 4. Ud. est dispuesto y es capaz de revisar el trabajo de los otros y hacer comentarios sin antagonizar con ellos

Metas del Lder de Calidad

M1: Todos los miembros del equipo reportan adecuada y exactamente la informacin del proceso M2: El equipo sigue fielmente el proceso y obtiene un producto de calidad M3: Todas las inspecciones del equipo son adecuadamente moderadas y reportadas M4: Todas las reuniones del equipo son adecuadamente reportadas y los reportes son guardas en el sitio del proyecto

Actividades principales
1. Conducir el grupo en la produccin y en el seguimiento del plan de de calidad 2. Alertar el grupo, el lder y el instructor en caso de problemas de calidad 3. Conducir el grupo en la documentacin de sus procesos y en mantener un enfoque de mejoramiento continuo 4. Establecer y mantener los estndares del desarrollo del proyecto 5. Revisar y aprobar todos los productos antes de someterlo al control de versiones

Actividades principales (2)


6. Actuar como moderador en las reuniones de inspeccin 7. Actuar como secretario en las reuniones de grupo 8. Participar en la produccin del reporte final del proyecto 9. Actuar como un ingeniero de desarrollo

Lder de Soporte

Objetivo Global

Dar soporte al grupo en la determinacin, obtencin y administracin de las herramientas necesarias para desarrollar el producto

Caractersticas
1. Ud. est muy interesado en las herramientas y los mtodos 2. Ud. es un cacharrero competente y siente que puede ayudar a los del grupo 3. Ud. tiene experiencia con herramientas y sistemas 4. Ud. est familiarizado con las herramientas que sern usadas en este proyecto

Metas

M1: El grupo tiene las herramientas y los mtodos adecuados para realizar su trabajo M2: Ningn cambio no autorizado es realizado sobre productos congelados M3: Los riesgos y los problemas son registrados en el sistema de rastreo de riesgos y reportados cada semana M4: El grupo define sus objetivos de reutilizacin para el ciclo de desarrollo

Actividades principales
1. Conducir el grupo en la determinacin de sus necesidades de herramientas y logstica 2. Administrar el proceso de control de configuraciones
revisar los cambios a los productos evaluar el impacto y el beneficio de los cambios. Dirigir el comit de control de cambios recomendar al grupo si los cambios deben hacerse

Actividades principales (2)


3. Administrar el sistema de control de Configuraciones
Mantener un depsito con los productos controlados Manejar las versiones de los productos Mantener copia de los productos y sus versiones

4. Mantener el glosario del sistema 5. Mantener el sistema de rastreo de riesgos y problemas 6. Velar por la estrategia de reutilizacin

Actividades principales (3)


7. Participar en la produccin del reporte final del proyecto 8. Actuar como un ingeniero de desarrollo

Potrebbero piacerti anche