when you see if { ... } else { ... } you see code, i see my fucking life ...
No te has registrado
Saludos a todos los miembros de este foro, tengo una pequeña duda que espero despierte el interes de algunos.
Cuando tenemos una lista de Reglas de Negocio (RN), digamos de unas 500 RN, es necesario codificarlas. Luego de un tiempo, vemos que realmente no vamos a utilizar algunas de estas RN y procedemos a borrarlas.
RN479 Regla A
RN480 Regla B
RN481 <-- Regla no utilizada que debe ser eliminada
RN482 Regla X
RN483 Regla Y
Mi pregunta es: Deberiamos volver a codificar, de tal manera que no queden vacios en la secuencia de codigos debidos a las reglas que hemos retirado? Deberiamos dejar vacios en la codificacion?
Volviendo a codificar:
RN479 Regla A
RN480 Regla B
RN481 Regla X
RN482 Regla Y
Dejando "huecos":
RN479 Regla A
RN480 Regla B
:
RN482 Regla X
RN483 Regla Y
Si dejamos vacios, posiblemente nuestro cliente nos pregunte: "Por que no existe una regla #481?"
Si recodificamos para llenar los vacios, posiblemente la pregunta cambie a: "Por que ha cambiado la regla #481?"
Cual es la mejor solucion en opinion de ustedes?
Desconectado
Personalmente pienso que es mejor dejar reglas vacias, por que eso de estar volviendo a escribir en orden las reglas que si se van a utilizar quita tiempo ademas como lo mencionas de "Por que ha cambiado la regla #481"
Simplemente se le dice al cliente que se tenian otras reglas previstas que no se van a usar y si surgen nuevas reglas pues puedes usar esos huecos.
Saludos
Desconectado
Existen muchos programas para hacer el tracking de los requerimientos. Estos simplemente llevan una matriz de los requerimientos contra las reglas de negocio del proyecto y de esta forma no se pierden. Yo he leido acerca de ellas pero en lo personal nunca las he utilizado. Casi siempre si utilizas RUP el programa de facto es el Rational Requisite Pro. Existen otras herramientas donde haces el tracking vÃa web y asà los usuarios están viendo el estatus de las reglas de negocios y ven si están implementadas, dadas de baja o por implementar. Vale la pena realizar una pequeña búsqueda por Google para checar ese punto. De todas formas serÃa bueno que nos dijeras como resolviste tu problema. Saludos!!!
Desconectado
a poco el post era en serio?? la gente realmente hace eso???
que locos!![]()
Desconectado
Nose si la gente use lo de las reglas de negocio, yo aplico lo que dice el tao de la programacion: http://www.cs.mtu.edu/~havillam/tao/libro4.html (lectura 4.4)
Cuando al principio empecé a programar yo podÃa ver al programa completo en una masa. Después de tres años ya nunca más vi esa masa. En vez de eso, usé subrutinas. Pero ahora no veo nada. Todo mi ser existe en un vacÃo sin forma. Mi sentidos estan ociosos. Mi espÃritu, libre para trabajar sin un plan, sigue su propio instinto. En resúmen, mi programa se escribe asà mismo. Es verdad, a veces hay problemas y dificultades. Las veo venir, me freno, observo silenciosamente. Entonces cambio una sola linea de código y las dificultades se desvanecen como nubes de humo
Saludos
Desconectado
Albertux dijo:
Nose si la gente use lo de las reglas de negocio, yo aplico lo que dice el tao de la programacion: http://www.cs.mtu.edu/~havillam/tao/libro4.html (lectura 4.4)
Cuando al principio empecé a programar yo podÃa ver al programa completo en una masa. Después de tres años ya nunca más vi esa masa. En vez de eso, usé subrutinas. Pero ahora no veo nada. Todo mi ser existe en un vacÃo sin forma. Mi sentidos estan ociosos. Mi espÃritu, libre para trabajar sin un plan, sigue su propio instinto. En resúmen, mi programa se escribe asà mismo. Es verdad, a veces hay problemas y dificultades. Las veo venir, me freno, observo silenciosamente. Entonces cambio una sola linea de código y las dificultades se desvanecen como nubes de humo
Saludos
Chale!! de cual fumaste carnal?
que locos!
Desconectado
Gracias a todos por sus respuestas.
Albertux:
Personalmente pienso que es mejor dejar reglas vacias, por que eso de estar volviendo a escribir en orden las reglas que si se van a utilizar quita tiempo ademas como lo mencionas de "Por que ha cambiado la regla #481"
Simplemente se le dice al cliente que se tenian otras reglas previstas que no se van a usar y si surgen nuevas reglas pues puedes usar esos huecos.
Concuerdo totalmente. Pues es mas facil explicar que una regla ya no se necesita (y por lo tanto hay un vacio en la numeracion) que decirle al cliente que su regla favorita cambio de sitio. Aunque en la practica se tenga que recurrir a cualquiera de las dos soluciones, segun el proyecto.
Cuando al principio empecé a programar yo podÃa ver al programa completo en una masa. Después de tres años ya nunca más vi esa masa. En vez de eso, usé subrutinas. Pero ahora no veo nada. Todo mi ser existe en un vacÃo sin forma. Mi sentidos estan ociosos. Mi espÃritu, libre para trabajar sin un plan, sigue su propio instinto. En resúmen, mi programa se escribe asà mismo. Es verdad, a veces hay problemas y dificultades. Las veo venir, me freno, observo silenciosamente. Entonces cambio una sola linea de código y las dificultades se desvanecen como nubes de humo
Jajaja. Entiendo en parte lo que dices. Los mejores programadores tienen un talento natural, dificil de conjugar con muchas metodologias. Pero estoy seguro que pueden encontrar alguna manera metódica de proceder y todas sus habilidades como programador se veran potenciadas de tal manera que su productividad va a ser mucho mayor.
wiseman:
Existen muchos programas para hacer el tracking de los requerimientos. Estos simplemente llevan una matriz de los requerimientos contra las reglas de negocio del proyecto y de esta forma no se pierden. Yo he leido acerca de ellas pero en lo personal nunca las he utilizado. Casi siempre si utilizas RUP el programa de facto es el Rational Requisite Pro. Existen otras herramientas donde haces el tracking vÃa web y asà los usuarios están viendo el estatus de las reglas de negocios y ven si están implementadas, dadas de baja o por implementar. Vale la pena realizar una pequeña búsqueda por Google para checar ese punto. De todas formas serÃa bueno que nos dijeras como resolviste tu problema. Saludos!!!
Aunque utilizo Requisite Pro, no me siento todavia del todo suelto con esa herramienta. De todas maneras ayudaria a tapar los vacios en la codificacion en el caso que quisieramos hacerlo. Toda la documentacion involucrada se ve actualizada, pero no podemos evitar que el cliente siga conservando una copia antigua a la cual ha estudiado con tezon (algo muy raro por cierto). Por este motivo debemos ver cada caso por separado. Con respecto al proyecto que fue motivo de mi consulta, decidimos dejar los huecos en la codificacion, lo cual ha sido entendido por el cliente. La clave ha sido conversarlo con el.
Jarg:
Jajaja. Es en serio!
A veces las metodologias parecen exagerar, pero en este caso, las reglas de negocio ayudan a que nuestro proyecto "no olvide" lo que debemos considerar desde un inicio. Es muy probable que mas adelante esas reglas se vean traducidas en formulas de calculo: "en esta empresa el stock se calcula asi" o en sentencias de desicion "si han pasado mas de 40 dias, anular el pedido". Asi garantizamos en parte que estamos alineados con lo que nuestro objeto de estudio realiza.
Gracias a todos, hasta pronto
Desconectado
Jajajajajaja, shit man!!!!!!!!. Se supone que todas esas herramientas existen para FACILITAR el trabajo, no para hacer una ciencia del desastre. Me refiero, en las eras y epocas en que ha existido el humano, solo nosotros somos capaces de escribir un libro para "la metodologÃa del como cagar" o "la metodologÃa de.......no se escribir en teclado" o "la metodologia para ver la tele", i mean COME......ON Shely!!!!!!!!!!. Solo son pautas que algun gringo escribió, pero como vivimos en el exceptisismo y la brujerÃa y vemos la palabra "methodology" (y me consta de a madre), desde allà empezamos no. Bueno, pues no se ustedes, pero mas de 3 proyectos en menos de 6 meses, y terminaditos por completo, me dice que puedo estar mas o menos de acuerdo con migo mismo.
Desconectado
La verdad yo creo que todas esas metodologÃas suckean, solo sirven para tres cosas:
1) Fastidiar a los developers
2) Darle chamba a code monkeys que terminan siendo lideres de proyecto y cuidando que se haga esa doc.
3) Hacerle sentir a tu cliente que si estas haciendo algo.
Pero algo en que Edubezter1 tiene razon es que aun los que no las usamos hemos desarrollado una manera metódica de proceder y para ser sinceros creo que todas esas metodologÃas tienen algunas buenas ideas que se pueden adoptar y hacernos mas productivos.
Por ejemplo hace tiempo empece a leer sobre RUP y que weba eso de hacer un glosario de términos, pero si me ha servido hacer un documento de vision para siempre tener de una manera clara de que se trata el proyecto e incluso establecer el alcance del mismo con el cliente; también que weba describir cada caso de uso, pero si me ha servido al menos identificarlos, bosquejarlos y apuntar por ahà las consideraciones que se deban hacer.
Aun asi creo que amarrarte a una metodologÃa hace que termines preocupándote mas por seguirla que por que tu softwaresito funcione bien. Y no creo que una cosa te lleve a la otra. Y a fin de cuentas esta demostrado que para desarrollar software exitoso no es necesario aplicar ninguna de esas metodologÃas, la prueba esta en todo el software libre de calidad que existe.
Desconectado
Muy interesante lo que dicen. Muchos buenos programadores sienten rechazo por las metodologias. Y hay sobradas pruebas de que se manejan muy bien sin ellas. Es que siguen su propia forma de trabajo, perfeccionada con la experiencia acumulada.
Durante años fui enemigo de las metodologias por razones muy similares a las que dice jarg. Era un programador que solo deseaba seguir mis instintos e inspiracion. Eso vino a cambiar un poco cuando encontre un grupo de personas con las que de verdad deseaba trabajar y ellos aplicaban RUP. Asi, me integre a su grupo de trabajo y poco a poco fui adaptandome.
Una de las razones argumentadas para usar una metodologia es que las personas no deben ser imprescindibles dentro de un proyecto y la metodologia hace que sea mas facil que el trabajo pase de una persona a otra. Pero claro, eso le importara a la empresa que nos contrata, no a nosotros mismos. Yo prefiero ser imprescindible ;P
Y lo cierto es que cuando alguien es imprescindible, lo sera con o sin metodologia.
Hay muchos mas argumentos y cada uno de ellos puede tener a su vez un "pero". Bueno, ya lo conversaremos mas adelante. Un gusto.
Desconectado
Yo en lo particular he trabajado sin metodologÃas (sobre todo al principio de mi carrera). Algunos proyectos desarrollados se completaron y otros definitivamente se extendieron, ya sea por no manejar los requerimientos correctos del cliente, entender mal los requerimientos o trabajar en las partes [divertidas de desarrollar-poco uso del negocio].
En lo particular veo a las metodologÃas sólo como una receta. Algunas veces la receta te dice como hacer la suculenta comida pero si eres sólo un ayudante del chef y no sabes nada acerca de comidas y salsas aunque uses la receta acabarás con un espantoso platillo. El otro lado de la moneda es cuando eres el chef de la cocina. Usas la receta pero sabes que siempre puedes precindir de ella. Sabes que sólo es una guÃa y que tu puedes saltarte pasos o agregarle más de acuerdo a tus necesidades especÃficas.
Ultimamente he trabajado bajo la metodologÃa RUP. En particular mis clientes se sienten muy satisfechos en ver que se está haciendo el software que ellos necesitan. Cuando les muestro algunas pantallas prototipos o les muestro el documento de Visión sienten que son entendidos y que se está trabajando en el mismo canal que ellos. En la parte de nuestro lado actualmente sólo somos dos personas (aquà en PedrazaSoftware), y tener una especificación de requerimientos de software es de mucha ayuda. Además de tener un calendario para evaluar el avance.
Yo digo que las metodologÃas sirven cuando hay muchas personas involuradas en el proyecto. Si solamente en el equipo de desarrollo hay 3 personas y el proyecto se presenta a un sólo stakeholder no veo la necesidad de crear todos los artefactos que se utilizan en RUP. Sin embargo, cuando estamos hablando de software empresarial, cuando hay mucha gente involucrada en el proyecto, cuando hay outsourcing, o las reglas de negocio cambian constantemente para hacerle frente al mercado AHà Sà CREO que DEBE utilizarse una metodologÃa sólida. Si no se sigue la receta simplemente se terminará en un mar de caos y el proyecto fracasará eventualmente.
Espero su retroalimentación y su punto de vista y sobre todo sus experiencias en proyecto pasados. Un saludo a todos!!!
Desconectado
wiseman dijo:
Sin embargo, cuando estamos hablando de software empresarial, cuando hay mucha gente involucrada en el proyecto, cuando hay outsourcing, o las reglas de negocio cambian constantemente para hacerle frente al mercado AHà Sà CREO que DEBE utilizarse una metodologÃa sólida. Si no se sigue la receta simplemente se terminará en un mar de caos y el proyecto fracasará eventualmente.
Yo no creo que eso sea una regla, el proyecto sea de 20 o 2 gentes fracasara si estos no saben hacer su chamba, con o sin metodologÃa. Recurro de nuevo al ejemplo de todo el software libre de calidad que existe (ojo que digo el de calidad, porque también hay software libre de mala calidad).
Ahora. si me preguntaras si yo en un puesto en el que tenga a mi cargo proyectos usarÃa alguna metodologÃa, pues si, si lo harÃa pero la única razón es que no hay suficiente gente con talento como para poder prescindir de ella, en este mundo hay mucho code monkey y las metodologÃas sirven para controlarlos, o al menos eso pareciera, aunque tengo mis dudas.
Saludos.
Desconectado
Pues el jarg tiene razón en eso de control sobre los "tecleadores de código" que son controlados por la aplicacion de metodologÃas como rup, o en cualquier otra donde existe un project manager no. Porque generalmente el project manager es el que dice que hacer, aunque el ambiente de trabajo haga alucinar al de la mera chinga que tiene cierta libertad. Pero bueno, eso solo en las metodologÃas que se rigen por algo asà como la centralización.
Desconectado