2010-07-01 8 views
5

Esto no es una pregunta de programación per se, pero aquí va. Soy estudiante universitario de primer año de CS, y comencé una pasantía este verano para una empresa de software de tamaño medio. He hecho algunos trabajos freelance antes, pero es la primera vez que soy oficialmente (más o menos) empleado como desarrollador de software.Sugerencias para la planificación de proyectos?

Me han pedido para codificar un sitio web interno desde cero para ser utilizado por equipos separados en la empresa, y se me ha dado una gran flexibilidad en el diseño de la misma. Y ahí radica el problema: hemos tenido varias reuniones y revisiones de diseño y todos parecen tener una idea sobre una nueva característica, e incluso ideas contradictorias sobre cómo deberían funcionar las cosas.

Hasta ahora mi prototipo inicial ha sobrevivido a todo esto, que es algo que me dijeron que no esperen - pero yo sabía que tenía un diseño sólido. Si bien no estoy retrasado, el trabajo está progresando significativamente más lento de lo que había predicho. Mucho de esto tiene que ver con especificaciones sueltas y solicitudes y cambios de características constantes.

estoy para desplegar un alfa en un par de semanas, por lo que pensé que no sería un problema, pero la forma de las cosas no estoy seguro de cómo va a funcionar.

¿Alguien tiene alguna idea? Gracias de antemano

Respuesta

6

Hace una pregunta interminable sobre la administración de proyectos (de software). Hay carreras hechas escribiendo libros sobre el tema.

Estoy de acuerdo en general con rockinthesixstring en esto.

Si usted no tiene un jefe de proyecto eficaz que puede filtrar las solicitudes de los customters' y gestionar sus expectativas, y decir 'no', entonces eso tendrá que ser parte de su trabajo.

A veces es un arte no decir "no". A veces puede decir más como "Como ve en el cronograma, la versión 1.1 va a ser alfa la próxima semana. La lista de características para la versión 1.2 ya está configurada. Agregaré su nueva característica al principio de la lista para 1.3. si lo desea, puedo convocar una reunión con los otros equipos para ver si podemos volver a priorizar las características 1.2 ".

cuanto a ideas en conflicto, si no hay otra "decisivo", que se convierte en parte de su trabajo también.

Comprenda que no todos se saldrán con la suya.

Sin un enfoque que aborde este tipo de problemas, simplemente no tendrá éxito por ninguna medida.

4

me gustaría empezar por el bloqueo en las características que han sido acordados y lugar todas las peticiones de características en algún tipo de software de planificación (OnTime Tal vez). Luego despliega la versión Alpha con las especificaciones acordadas antes de pasar al "nos gustaría" y las "campanas y silbatos".

2

es necesario dar prioridad y peticiones de triaje, posiblemente, incluso algunos de los que ya ha aceptado también.

2

Parece que la propiedad del producto no está clara (como se puede esperar con proyectos internos con varios equipos). Probablemente deberías ejecutar alguna forma de juego de planificación. Si tiene múltiples partes interesadas, puede darles 50 puntos cada uno para votar sobre todas las características en una iteración. Usted, como desarrollador, decide qué tan grande es cada característica. Las características con más puntos/tamaño entran en la iteración. Si algunos equipos son más importantes, dales más puntos. También deberías gastar algunos puntos tú mismo.

1

Me gustaría expresar mi aprobación de James McLeod's post. La única justificación que alguien necesita para querer una característica es "el usuario x podría intentar ...". La dificultad está en resolver las contradicciones entre sus opiniones y las de los demás. La característica con una mayor "prioridad" según lo asignado por su proceso de gestión de proyectos es la que se implementa, a expensas de sus competidores si es necesario. Pida a las personas que sugieren funciones que se vayan y pongan algo sobre el papel explicando el razonamiento detrás de la función y las circunstancias que creen que pueden impedir su inclusión. Permitir que todos los demás vean las limitaciones que piensan que su enfoque puede ayudar a romper un punto muerto de decisión. La característica cuyo caso se declara más a fondo 'gana'.

Cuestiones relacionadas