He estado trabajando en un proyecto durante los últimos seis meses en el sitio de un cliente, ya que requieren la confidencialidad de los datos y no quería que trabajáramos en nuestra propia oficina.
Cuando me presenté solo en este sitio cliente, me dijeron que tenía que terminar el proyecto en dos meses.
Dado que el cliente no es una compañía de software, y debido a varias políticas, me tomó alrededor de 20-25 días darme derechos en mi máquina para instalar cosas como Eclipse, Tomcat, etc. Incluso después del retraso en la configuración del entorno, todavía esperaban que completara el proyecto en el mismo período de dos meses.
No me dieron ningún documento de requisitos, pero como estoy trabajando en el sitio del cliente, solíamos reunirnos regularmente para discutir los requisitos.
Después de seis meses, la aplicación aún no está terminada y todos me culpan, pero no se dan cuenta de que hemos agregado muchas más funciones que las que se discutieron en las primeras reuniones.
He tenido que rehacer muchas cosas durante este período, por ejemplo, separar un formulario en dos secciones; Unas semanas más tarde, me pidieron que fusionara las dos formas nuevamente, ya que es confuso, y así sucesivamente.
El alcance de la aplicación aumenta cada día, pero todavía piensan que es un proyecto de dos meses que se retrasó. Cuando les dije que el alcance había aumentado, me preguntaron por qué no pedí requisitos al principio.
Ya trabajo de 11 a 12 horas todos los días y viajo de 3 a 4 horas, y ahora esperan que venga los sábados también.
Tengo que hacer todo aquí: tomar requisitos, diseño, código y prueba.
Por favor, avíseme qué hacer en tal caso?
Detalles adicionales: teníamos una lista de entregables, pero luego agregaron algunas cosas más diciendo que también son importantes. También cambiaron algunos entregables. Ni siquiera tienen su servidor UAT, prueban en mi máquina de desarrollo a través de su dirección IP.
fuente
Respuestas:
Este es un fracaso de su gerente . Usted, como contratista, no debería haber sido puesto en una situación con un plazo tan ajustado por su empresa sin un conjunto firme de requisitos por adelantado, por escrito. Nada de esto 'agregaron características' después de tonterías: cada vez que sucedió, deberían haber firmado en un horario actualizado que usted les dio .
Su gerente, ya que está planeando reunirse con él, necesita obtener del cliente un conjunto específico de requisitos: el proyecto debe cumplir con A, B, C, D y E. Y después de que lo haga, estará completo. La firma del cliente debe estar en ese documento de acuerdo con esa lista. Deberías haber tenido eso desde el principio.
Si su gerente no lo respalda y lo apoya en esto, y no lo digo muy a menudo, comience a buscar otro trabajo. Porque probablemente terminarás siendo el chivo expiatorio de todo el desastre. Y si está dispuesto a trabajar 11 horas al día y 3 horas de viaje, es evidente que es una persona muy dedicada que merece algo mejor.
fuente
Lo importante en tales situaciones es construir un rastro de papel CYA. No se debe hacer nada sin tenerlo escrito, especialmente en una relación comercial complicada. Cumplir con el cronograma inicial, aunque necesitaban 20 días para incluso dejarlo trabajar, es una gran señal de alerta que se volverá complicado.
¿Celebra una reunión donde se requieren características adicionales? Anótelo después, etiquete "+ X días para el horario actual" en cada elemento y envíelo por correo a todos los involucrados. Si solo usa el sistema de correo interno del cliente, imprímalo adicionalmente, incluyendo la lista de destinatarios para :, cc: y bcc: y archívelo cuidadosamente. Además de eso, como dijo GrandmasterB, el cliente debe firmar dichos cambios a los requisitos originales.
Si no se puede mantener el horario requerido, escríbalo. Si se produce algún cambio, escríbalos, incluidas las consecuencias. Y así.
Esto no es para "te lo dije". cuando el desastre finalmente llegue a la pared, de todos modos no lo escucharán. Este es su seguro cuando el cliente lo demanda porque piensa que usted no cumplió el contrato, o cuando su empresa demanda al cliente porque niega el pago.
fuente
Por lo que describe, parece que está participando en un proyecto clásico de la Marcha de la Muerte :
El fenómeno es bien conocido y hay mucha literatura sobre cómo proceder, incluido, por supuesto, el libro seminal de Edward Yourdon, Death March: The Complete Software Developer Guide to Surviving 'Mission Impossible' Project .
El artículo de Wikipedia citado anteriormente es un buen punto de partida para buscar más información, investigación y recomendaciones para aquellos involucrados / interesados en proyectos de marcha de la muerte .
Caminar en su lugar, lo primero que consideraría sería pasarle una referencia al artículo anterior a mi gerente.
De esa manera les haría saber que estoy al tanto de lo que está sucediendo, y posiblemente incluso les ayudará a guiarme en términos del marco provisto para esta noción, como "Mira, nuestro estado actual es cercano al descrito en el capítulo
X
de Yourdon. Compruébalo fuera, junto con el capítulo estrechamente relacionado,Y
etc ... "En el caso (no muy probable) de que el gerente no esté al tanto de este campo de estudio, la referencia podría darles suficiente alimento para pensar y ayudar a identificar la situación y decidir cómo manejarla.
fuente
Honestamente, si es posible hacer esto, la mejor solución es dejar de fumar. Situaciones como esta son tóxicas para usted y rara vez mejoran con el tiempo, sin importar cuánto lo intente.
Lo mejor es reducir tus pérdidas y encontrar un concierto diferente. Pero, reflexione sobre su experiencia y tome el consejo de otras respuestas en este hilo.
fuente
quit++;
Es un serio
issue in project management
. Parece queProject Manager
debería trabajar en una lista de entrega y priorizarlos con el cliente.Lo más importante , su PM
should discuss
y acordar con el Cliente el marco de tiempo (incluido el diseño y el análisis del problema / solución) en sus estimaciones.Tener
clear estimation of your work load
y entregar elementos del proyecto lo aliviará del estrés, además de agregar tranquilidad y confianza en su trabajo.Intente utilizar el enfoque ágil entregando sus artículos en sprint (2-3 semanas) y haciendo UAT (prueba de aceptación del usuario) con el cliente. Recuerde, siempre haga su planificación de sprint antes de comenzar el sprint.
Editar: De los comentarios, está claro que esto es realmente una falla de su gerente de proyecto . No tener un entorno de prueba y / o desarrollo adecuado para un proyecto serio como el suyo es un gran agujero para el
project
proceso SDLC.fuente
Si bien estoy de acuerdo en que se trata de una falla administrativa, también es una falla de su parte. En esta etapa será muy difícil de solucionar, por lo que parte de lo que necesita para salir de esto es cómo manejar proyectos futuros.
Primero, debe insistir en un documento de referencia de requisitos al comienzo del proyecto. No tiene que ser elegante o formal, pero no puede construir con éxito nada hasta que el cliente especifique lo que se espera. Si no tiene esto por escrito, las posibilidades de que el cliente esté satisfecho con el resultado final son aproximadamente 0%. Entonces esto es críticamente importante. También es su trabajo buscar las ambigüedades en este documento y aclararlas lo antes posible. Cuando encuentre uno de estos y no esté seguro de cómo interpretarlo, no adivine lo que cree que significa, asegúrese de que usted y el cliente estén en la misma página sobre lo que significa. Sí, esto significa más hablar con la gente y más reuniones y menos codificación. Pero lleva mucho menos tiempo aclarar un requisito poco claro que codificarlo mal y luego tener que volver a codificarlo. Además, a menudo tiene que darles la nueva codificación de forma gratuita y eso no es bueno para la empresa para la que trabaja.
Luego, les dices cuánto tiempo lleva hacer el trabajo y eso establece la fecha límite. Nunca acepta una fecha límite que se base en otra cosa que no sea la cantidad de horas que tomará hacer el trabajo para cumplir con los requisitos. Si lo haces, volverás a estar en una marcha de la muerte. Muéstreles cómo no es posible cumplir con el plazo mediante una explicación detallada de las horas que llevará. No puede ajustar 200 horas de tiempo de desarrollo en una semana con solo 1 desarrollador, sin importar cuánto lo desee el cliente. En ese momento, cuando la fecha límite es inamovible, pregunta qué elementos deben moverse a la siguiente iteración.
No olvide que el tiempo de despliegue es solo una pequeña porción del tiempo del proyecto al hacer estimaciones del tiempo del proyecto. También debe tener en cuenta las reuniones y las comunicaciones por correo electrónico / teléfono, pruebas, implementación, documentación, configuración física de servidores, estaciones de trabajo, software. Además, al planificar la fecha límite, solo puede suponer que tiene 6 horas diarias disponibles, no 8. Esto es para tener en cuenta la licencia, el duelo, el tiempo de enfermedad, el retraso inevitable (como cuando tuvo que esperar a que obtuviera los permisos). en la red, etc.), capacitación, trabajo no relacionado con el proyecto (hojas de tiempo, reuniones de recursos humanos, etc.). Una de las principales razones por las cuales las personas no cumplen con sus plazos es que asumen que solo estarán desarrollando y trabajando 8 horas sólidas todos los días. Esto simplemente no es una suposición realista.
Y cada vez que agregan otra pieza, usted les dice cuánto tiempo más llevará y cuánto moverá el trabajo adicional la fecha límite. No solicita mover la fecha límite, les dice que se está moviendo debido al nuevo requisito. Ahora debe consultar a su gerente para esto, pero primero es su responsabilidad asegurarse de que su gerente sepa cada vez que se modifique el requisito y cuánto se agregará al proyecto. Asegúrese de que todo esto esté escrito, para que pueda defenderse si es necesario.
A continuación, no permita que lo maltraten para trabajar 11 horas al día y fines de semana. Esto está bien en períodos cortos (de menos de 1 semana cada seis meses más o menos), pero a largo plazo esto simplemente no es aceptable. Las personas cansadas codifican más lentamente y cometen más errores. Puede hacer más con una mayor calidad trabajando regularmente 8 horas que regularmente 11 horas. y fines de semana
fuente
you need to insist ona a requirements baseline document at the start of the project
,Next, you tell them how long it takes to do the work and that sets the deadline.
,And every time they add another piece on, you tell them how much longer it will take and how much the additional work will move the deadline.
Gran consejo pero estar en una situación tal vez me despidieron en menos de un mes por ser imposible trabajar con lo visto. La situación real es como lo expresan otros, este tipo de empresas quieren chivos expiatorios y excusas, no desarrolladores de software realistas y productivos.He descubierto que los gráficos de Gantt pueden ser muy buenos en este tipo de situaciones. Pueden ilustrar a los clientes la programación actual y pueden ser útiles para ilustrar el efecto de agregar nuevas características / cambios. A veces, decirle a un cliente que la función x afectará la entrega por y días no se registra con ellos. Al tenerlo claramente en un gráfico, pueden comprenderlo mejor.
Idealmente, esto debería hacerse desde el inicio del proyecto. Puede que no sea tan útil explicar los " retrasos " hasta este punto, pero podría ayudar con el proyecto en el futuro.
De Wiki :
fuente