Entradas

Mostrando entradas de marzo, 2017

Poker Planning como herramienta

Imagen
Una de las etapas mas delicada de un proyecto, es la estimación de esfuerzo de trabajo, donde determinamos cuanto tiempo llevara completar una tarea dada, generalmente en mi caso, una funcionalidad en un programa. Cuando por ejemplo, como Scrum Master, me reúno con mi equipo, y pregunto: "La funcionalidad X que consulta base de datos y devuelve el informe M, ¿cuanto tiempo nos tomara tenerla lista para demostración?" El tiempo estimado dependerá en gran medida de a quien le pregunte primero, si le pregunto al programador mas experimentado, dirá por ejemplo 3 días, y los demás usaran ese numero como pivote, si le pregunto a los mas inexpertos dirán 8 días,los demás dirán números aproximados a este. Para evitar esto, podemos utilizar una herramienta conocida como Poker Planning , Básicamente cada participante recibe un mazo de cartas, con valores de esfuerzo estimado, estos valores no son consecutivos, se emplea generalmente la serie de fibonacci, pues es difícil dife

Función "siguienteMasGrande" en PHP

Imagen
No hace mucho tiempo, durante una búsqueda de empleo, se me presento la siguiente prueba técnica: El desafío es escribir una función "siguienteMasGrande" que toma un entero positivo y devuelve el siguiente entero positivo más grande formado por los dígitos del número original. En caso que no exista un número más grande debe devolver -1. Ejemplos: next_bigger(12)==21 next_bigger(513)==531 next_bigger(2017)==2071 next_bigger(9)==-1 next_bigger(111)==-1 next_bigger(531)==-1 next_bigger(1234)==1243 El tiempo limite eran 3 horas... Mi enfoque para abordarlo fue el siguiente: El numero es pasado a la función por el método POST, esta crea un array con el mismo y obtiene todas las permutaciones posibles con las cifras que lo componen. Esta permutaciones son guardadas en otro array. Este nuevo array es examinado y se le extraen todas las combinaciones que son mayores al numero original. A este array con los números mayores, se le extrae el numero mas bajo, que