Pregunta

El proyecto está mal definido: debemos escribir software educativo para estudiantes de Programación de Computación CS 111 I que se centren en las funciones. Tenemos 6 desarrolladores de estudiantes con diversos antecedentes trabajando en Flex. El proyecto tiene una duración de aproximadamente 7 semanas. Tenemos un tiempo de cara muy limitado (30 min por semana) y un tiempo de trabajo muy limitado (& Lt; 8 horas por desarrollador por semana). Tenemos acceso limitado a los clientes (profesor de nuestro curso, profesor de CS 111, estudiantes de CS 111).

Nuestro conjunto de herramientas incluye Flex Builder, Subversion y TRAC.

¿Qué metodología es mejor para este proyecto y por qué? Alternativamente, ¿qué características deben recopilarse de varias metodologías para adaptarse mejor a esta situación?

¿Fue útil?

Solución

¿Qué te hace pensar que cualquier metodología sería exitosa en estas circunstancias: poca comunicación, más requisitos que tiempo y falta de acceso a los clientes?

Dicho esto, me centraría en la entrega incremental (cada iteración debería tener algunas características de trabajo), pruebas unitarias (todas las pruebas pasan antes del check in), etiquetado de versiones incrementales (la capacidad de volver a una versión funcional) y el emparejamiento de miembros del equipo fuertes con miembros del equipo más débiles para aumentar la productividad general del equipo. Considere dedicar un miembro fuerte del equipo a las pruebas de integración.

La entrega incremental es lo más importante. Mostrar una demostración funcional de menos de lo que se solicitó siempre es mejor que mostrar un prototipo que no funciona.

Otros consejos

Puede usar la metodología Agile aquí, pero obviamente tendrá que adoptarla para satisfacer sus necesidades.

Por ejemplo, si no tiene suficiente acceso a los clientes reales, alguien con la mejor comprensión de sus objetivos tendrá que actuar como representante del cliente. También sugeriría tratar de obtener más acceso a los clientes: casi todos intentan parecer más ocupados de lo que están y generalmente hay una forma de resolver ese obstáculo.

Asegúrese de tener el tiempo de trabajo limitado que tiene su equipo al mismo tiempo. No puede haber un enfoque ágil cuando no pueden trabajar juntos.

Definitivamente podría usar estimaciones basadas en historias, procesos de desarrollo iterativos, etc.

Lo que es realmente importante es también dar a cada miembro del equipo una comprensión clara e inequívoca de cómo funciona el proceso ágil y cuál es el papel de cada persona en el proyecto. Es muy fácil decir que usará SCRUM, pero desafortunadamente sin una comprensión y experiencia reales, eso realmente no significará mucho.

Algunos consejos:

  1. Eduque a los miembros de su equipo
  2. Obtenga una lista de lo que le gustaría entregar si no estuviera limitado por el tiempo / recursos.
  3. Descubra lo que es realista entregar debido a sus limitaciones. Eso probablemente no será mucho. No intentes ser demasiado optimista. Concéntrese en lo que realmente podría lograr.
  4. Asegúrese de que sus clientes reales estén a bordo para eso.
  5. Use iteraciones cortas (1 semana o menos). Asegúrese de poder entregar un producto completamente probado al final de cada iteración.
  6. Muestra tu trabajo temprano.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top