180
181
Sprint 2
Objetivos:
• Registro, inicio y cierre de sesión Capacidad: 120 horas/persona
Estimación esfuerzo total: -
Esfuerzo real total: 35 horas/persona
Estimación story points: -
Story points desarrollados: -
Riesgos:
• Crisis generalizada del ecosistema crypto o Especificación:
▪ Dado que el ecosistema cripto es muy volátil e inestable
▪ Cuando la plataforma que estamos desarrollando utiliza criptomonedas y contratos inteligentes
▪ Entonces la plataforma pierde todo su valor o Estrategia: Aceptar
o Acción preventiva: -
o Acción correctiva: Intentar modificar el proyecto para ver si hay una oportunidad de negocio utilizando tecnologías más tradicionales.
• Al menos uno de los integrantes del equipo decide abandonar la tesis.
o Especificación:
▪ Dado que uno de los integrantes del equipo desea abandonar la tesis
▪ Cuando es un trabajo muy complejo y cuyo alcance fue estimado para ser realizado por tres personas
▪ Entonces es muy probable que no se pueda llegar al alcance deseado y sea necesario revisar la planificación
o Estrategia: Mitigar
o Acción preventiva: Trabajar la motivación del equipo, generar un ambiente cómodo para dialogar y apoyarnos entre nosotros
Acción correctiva: Revisar la planificación y adaptarla junto con el tutor para elaborar un nuevo alcance y nuevos objetivos que puedan ser llevados a cabo por los miembros restantes
• Al menos uno de los integrantes del equipo comienza a trabajar 8 horas diarias o Especificación:
▪ Dado que uno de los integrantes del equipo desea comenzar a trabajar a tiempo completo
▪ Cuando no contamos con mucho tiempo entre semana para trabajar en la tesis
▪ Entonces el proyecto puede presentar retrasos o parecer atrasado o Estrategia: Aceptar
o Acción preventiva: -
o Acción correctiva: Revisar la planificación y adaptarla junto con el tutor para elaborar un nuevo alcance que pueda ser llevado a cabo dedicándole menos tiempo al proyecto
• No poder conectar nuestro frontend con MetaMask debido a la tecnología elegida o Especificación:
▪ Dado que es necesario integrar el frontend con una billetera (wallet) para que los usuarios puedan interactuar con el contrato inteligente
▪ Cuando no sea posible esta interacción debido a la tecnología que elegimos para desarrollar el frontend (NextJS - Typescript)
182
▪ Entonces los usuarios no podrán realizar transacciones en la Blockchain o Estrategia: Eliminar
o Acción preventiva: Se eligió el lenguaje de programación más usado para desarrollar frontends
o Acción correctiva: Cambiar de tecnología en el frontend a una que sí permita integrar billeteras (wallets) como MetaMask
• Nuestro modelo de negocios deja de ser viable debido a una nueva regulación del gobierno.
o Especificación:
▪ Dado que la tecnología en el que se basa nuestro proyecto es innovadora y se encuentra en pleno desarrollo
▪ Cuando el gobierno decida regularlo
▪ Entonces puede perder el valor agregado que le brindamos a nuestros usuarios y que lo diferencia de los préstamos tradicionales
o Estrategia: Aceptar
o Acción preventiva: Mantenernos actualizados respecto a la temática y presentar el proyecto más que como un negocio, como un caso de estudio para un futuro negocio o Acción correctiva: Evaluar la posibilidad de adaptarlo para que cumpla las
regulaciones impuestas y así volverse un negocio o en caso contrario dejarlo como caso de estudio
• El producto no resulta de utilidad para nuestro público objetivo o Especificación:
▪ Dado que no somos el público objetivo del producto que estamos diseñando
▪ Cuando lo liberemos al público para que lo use
▪ Entonces podría no serle útil a nuestros usuarios típicos o Estrategia: Evitar
o Acción preventiva: Obtener feedback constante de usuarios típicos a lo largo del proyecto
o Acción correctiva: Investigar las razones por las cuales nuestros usuarios no utilizan nuestra plataforma y en base a eso realizar modificaciones.
• Imposibilidad de transferir a nuestra plataforma un NFT creado por un contrato inteligente que no nos pertenece.
o Especificación:
▪ Dado que prácticamente todos los NFTs con los que la plataforma va a interactuar no van a ser creados por nosotros
▪ Cuando la plataforma se vea imposibilitada a operar con NFTs creados por terceros
▪ Entonces no vamos a poder utilizar casi ningún NFT como garantía en préstamos
o Estrategia: Evitar
o Acción preventiva: Investigar a fondo cómo interactúan plataformas como OpenSea con los NFTs y aplicar esos conocimientos en la nuestra.
o Acción correctiva: Cambiar el modelo de negocios ya que sin NFTs de terceros, nuestra plataforma pierde su valor agregado
• No llegar a la cantidad mínima de usuarios necesaria para que la plataforma sea atractiva para prestamistas y prestatarios.
o Especificación:
▪ Dado que para que la plataforma sea atractiva, ésta debería tener muchos usuarios
▪ Cuando por cualquier motivo la cantidad de usuarios activos es menor a 50
▪ Entonces los pocos usuarios activos podrían desmotivarse y dejar de usar la aplicación
o Estrategia: Transferir
o Acción preventiva: Ponernos en contacto con agencias de marketing que nos asesoren para pensar una campaña exitosa de lanzamiento
o Acción correctiva: Dar beneficios económicos a los primeros 100 usuarios de la plataforma para incentivar su uso. Entender las razones por las cuales los usuarios no querían usar nuestra plataforma
183
• Imposibilidad de acceder a las funciones de un contrato inteligente que no fue creado por nosotros.
o Especificación:
▪ Dado que la aplicación debe interactuar con contratos inteligentes que no fueron creados por nosotros para su correcto funcionamiento
▪ Cuando la plataforma se vea imposibilitada a operar con contratos inteligentes creados por terceros
▪ Entonces no vamos a poder cumplir con el RNF de interoperabilidad o Estrategia: Evitar
o Acción preventiva: Investigar a fondo cómo interactúan plataformas como OpenSea con otros contratos inteligentes y aplicar esos conocimientos en la nuestra.
o Acción correctiva: Actualizar los RNFs y pensar si el alcance que tenemos para nuestra plataforma es viable sin interactuar con otros contratos inteligentes
• Imposibilidad de realizar una aplicación totalmente descentralizada.
o Especificación:
▪ Dado que no somos expertos en la tecnología Blockchain
▪ Cuando se presente un caso de una funcionalidad que no pueda ser resuelta con las herramientas que brinda la misma
▪ Entonces puede que se requiera de un backend para ayudar a completar su desarrollo
o Estrategia: Aceptar
o Acción preventiva: Realizar una investigación sobre las funcionalidades y hablar con expertos para ver si se pueden resolver de forma descentralizada
o Acción correctiva: Aceptar que al igual que la mayoría de las Dapps, nuestro sistema será parcialmente descentralizado y recurriremos a un backend para terminar sus funcionalidades
• Perder mucho tiempo realizando tareas de gestión debido a la falta de experiencia del equipo en el área.
o Especificación:
▪ Dado que ninguno de los integrantes del equipo cuenta con mucha experiencia gestionando proyectos de software
▪ Cuando el proyecto requiere de una gran cantidad de tareas de gestión para su correcta realización
▪ Entonces el proyecto puede presentar retrasos o parecer atrasado o Estrategia: Mitigar
o Acción preventiva: Asesorarnos con personas que sí tengan experiencia gestionando proyectos de software para aprender cómo hacerlo eficientemente. Además, definir una metodología de trabajo e ir aplicándola y aprendiendo.
o Acción correctiva: Redefinir el alcance pensando que vamos a tener menos tiempo para desarrollar debido a que invertimos mucho tiempo en la gestión del proyecto.
• Retrasarnos debido a la falta de un ambiente local para desarrollar el contrato inteligente.
o Especificación:
▪ Dado que la tecnología Blockchain es muy nueva y no cuenta con ambientes locales estables y fáciles de usar
▪ Cuando intentamos probar las funcionalidades que requieren el uso de contratos inteligentes
▪ Entonces se enlentece el proceso de desarrollo o Estrategia: Eliminar
o Acción preventiva: Dedicar el tiempo que sea necesario para instalar uno de lo ambientes locales experimentales existentes
o Acción correctiva: Buscar una solución alternativa para poder probar las funcionalidades de los contratos inteligentes de la forma más rápida posible
• No poder implementar una funcionalidad clave del proyecto debido a nuestra falta de experiencia en el uso de las tecnologías elegidas.
o Especificación:
▪ Dado que el equipo no tiene mucha experiencia trabajando con contratos inteligentes y aplicaciones descentralizadas
184
▪ Cuando la plataforma que queremos desarrollar es una aplicación descentralizada
▪ Entonces al equipo se le podría dificultar e incluso imposibilitar la implementación de una funcionalidad clave
o Estrategia: Mitigar
o Acción preventiva: Dedicar el tiempo que sea necesario a investigar la tecnología Blockchain y realizar pruebas de concepto
o Acción correctiva: Modificar el alcance del proyecto reemplazando la funcionalidad compleja por una similar que el equipo sí pueda implementar
• Devaluación de las criptomonedas y/o tokens utilizados por la plataforma.
o Especificación:
▪ Dado que el valor de las criptomonedas es muy volátil y puede cambiar de manera muy brusca en un corto período de tiempo
▪ Cuando el valor en dólares americanos de la moneda que usamos para realizar los préstamos (ETH) baja sustancialmente
▪ Entonces muchos usuarios que posean esta moneda se verían desincentivados a operar con ella e intentarían venderla
o Estrategia: Mitigar
o Acción preventiva: Recordar a los usuarios que al aceptar un préstamo entienden y aceptan los riesgos que este conlleva.
o Acción correctiva: Permitir operar con más de una moneda en la plataforma para distribuir el riesgo.
Definition of Done:
• Escenarios escritos y considerados
• User stories y tareas finalizadas
• Los tests pasan
• Registro, inicio y cierre de sesión terminados
• Revisar riesgos
• Revisar métricas
Sprint 7
Objetivos:
• Implementar funcionalidad del pago de cuotas mensuales Capacidad: 120 horas/persona
Estimación esfuerzo total: 30 horas/persona
Esfuerzo real total: 39 horas/persona
Estimación story points: 13
Story points desarrollados: 0
Riesgos:
• Crisis generalizada del ecosistema crypto o Especificación:
▪ Dado que el ecosistema cripto es muy volátil e inestable
▪ Cuando la plataforma que estamos desarrollando utiliza criptomonedas y contratos inteligentes
185
▪ Entonces la plataforma pierde todo su valor o Estrategia: Aceptar
o Acción preventiva: -
o Acción correctiva: Intentar modificar el proyecto para ver si hay una oportunidad de negocio utilizando tecnologías más tradicionales.
• Al menos uno de los integrantes del equipo comienza a trabajar 8 horas diarias o Especificación:
▪ Dado que uno de los integrantes del equipo desea comenzar a trabajar a tiempo completo
▪ Cuando no contamos con mucho tiempo entre semana para trabajar en la tesis
▪ Entonces el proyecto puede presentar retrasos o parecer atrasado o Estrategia: Aceptar
o Acción preventiva: -
o Acción correctiva: Revisar la planificación y adaptarla junto con el tutor para elaborar un nuevo alcance que pueda ser llevado a cabo dedicándole menos tiempo al proyecto
• La librería de JavaScript que utilizamos para comunicarnos con el contrato inteligente de la plataforma (etherjs) deja de ser mantenida, se vuelve inestable y/o tiene problemas de seguridad.
o Especificación:
▪ Dado que estamos utilizando una librería externa para facilitar la comunicación con el contrato inteligente
▪ Cuando deje de ser mantenida por su creador y aparezcan bugs o vulnerabilidades
▪ Entonces se volverá inestable, pudiendo provocar fallas en la aplicación o Estrategia: Mitigar
o Acción preventiva: Depender lo menos posible de la librería en cuestión para el correcto funcionamiento de la plataforma
o Acción correctiva: Utilizar una librería sustituta
• No llegar a terminar el producto debido a errores en la estimación de su alcance.
o Especificación:
▪ Dado que el equipo tiene muy poca experiencia en gestión de proyectos y en la tecnología Blockchain
▪ Cuando falten menos de 4 meses para la entrega
▪ Entonces podríamos darnos cuenta que el trabajo necesario para llegar al alcance acordado requiere más tiempo del que tenemos disponible o Estrategia: Prevenir
o Acción preventiva: Iterar sobre la metodología de trabajo y mejorarla constantemente para que se adapte a las características del proyecto y podamos estimar de la manera más confiable posible
o Acción correctiva: Redefinir el alcance del proyecto a uno más viable ya que la fecha límite de entrega no es flexible.
• Nuestro modelo de negocios deja de ser viable debido a una nueva regulación del gobierno.
o Especificación:
▪ Dado que la tecnología en el que se basa nuestro proyecto es innovadora y se encuentra en pleno desarrollo
▪ Cuando el gobierno decida regularlo
▪ Entonces puede perder el valor agregado que le brindamos a nuestros usuarios y que lo diferencia de los préstamos tradicionales
o Estrategia: Aceptar
o Acción preventiva: Mantenernos actualizados respecto a la temática y presentar el proyecto más que como un negocio, como un caso de estudio para un futuro negocio o Acción correctiva: Evaluar la posibilidad de adaptarlo para que cumpla las
regulaciones impuestas y así volverse un negocio o en caso contrario dejarlo como caso de estudio
• El proyecto resulta económicamente inviable debido a los costos elevados de la Blockchain o Especificación:
▪ Dado que el precio de las transacciones en la blockchain hoy en día es elevado
▪ Cuando los usuarios quieran utilizar nuestra plataforma
▪ Entonces dejarían de hacerlo debido a los costos elevados de la misma
186
o Estrategia: Evitar
o Acción preventiva: Desarrollar nuestro contrato inteligente de forma tal que las funciones se ejecuten de la manera más económica posible.
o Acción correctiva: Utilizar una blockchain en la cual las transacciones sean más económicas que en Ethereum.
• El producto no resulta de utilidad para nuestro público objetivo o Especificación:
▪ Dado que no somos el público objetivo del producto que estamos diseñando
▪ Cuando lo liberemos al público para que lo use
▪ Entonces podría no serle útil a nuestros usuarios típicos o Estrategia: Evitar
o Acción preventiva: Obtener feedback constante de usuarios típicos a lo largo del proyecto
o Acción correctiva: Investigar las razones por las cuales nuestros usuarios no utilizan nuestra plataforma y en base a eso realizar modificaciones.
• Retrasarnos debido a la falta de un ambiente local para desarrollar el contrato inteligente.
o Especificación:
▪ Dado que la tecnología Blockchain es muy nueva y no cuenta con ambientes locales estables y fáciles de usar
▪ Cuando intentamos probar las funcionalidades que requieren el uso de contratos inteligentes
▪ Entonces se enlentece el proceso de desarrollo o Estrategia: Eliminar
o Acción preventiva: Dedicar el tiempo que sea necesario para instalar uno de lo ambientes locales experimentales existentes
o Acción correctiva: Buscar una solución alternativa para poder probar las funcionalidades de los contratos inteligentes de la forma más rápida posible
• No poder implementar una funcionalidad clave del proyecto debido a nuestra falta de experiencia en el uso de las tecnologías elegidas.
o Especificación:
▪ Dado que el equipo no tiene mucha experiencia trabajando con contratos inteligentes y aplicaciones descentralizadas
▪ Cuando la plataforma que queremos desarrollar es una aplicación descentralizada
▪ Entonces al equipo se le podría dificultar e incluso imposibilitar la implementación de una funcionalidad clave
o Estrategia: Mitigar
o Acción preventiva: Dedicar el tiempo que sea necesario a investigar la tecnología Blockchain y realizar pruebas de concepto
o Acción correctiva: Modificar el alcance del proyecto reemplazando la funcionalidad compleja por una similar que el equipo sí pueda implementar
• No poder garantizar que un NFT proviene de una fuente confiable.
o Especificación:
▪ Dado que personas con malas intenciones distribuyen NFTs con el objetivo de estafar a la gente
▪ Cuando uno de estos NFTs malintencionados se utiliza como garantía de un préstamo en nuestra plataforma
▪ Entonces la garantía podría desvalorizarse de un momento al otro y afectaría negativamente la reputación de DeFying Loans
o Estrategia: Prevenir / Transferir
o Acción preventiva: Crear una lista de colecciones homologadas de NFTs, validada por un grupo de terceros expertos en análisis de riesgo, y solo permitir a usuarios utilizar como garantía NFTs pertenecientes a esa lista. Recordar a los usuarios que al aceptar un préstamo entienden y aceptan los riesgos que este conlleva.
o Acción correctiva: Retirar la colección del NFT que resultó ser fraudulenta de la lista de colecciones homologadas.
• Devaluación de las criptomonedas y/o tokens utilizados por la plataforma.
o Especificación:
187
▪ Dado que el valor de las criptomonedas es muy volátil y puede cambiar de manera muy brusca en un corto período de tiempo
▪ Cuando el valor en dólares americanos de la moneda que usamos para realizar los préstamos (ETH) baja sustancialmente
▪ Entonces muchos usuarios que posean esta moneda se verían desincentivados a operar con ella e intentarían venderla
o Estrategia: Mitigar
o Acción preventiva: Recordar a los usuarios que al aceptar un préstamo entienden y aceptan los riesgos que este conlleva.
o Acción correctiva: Permitir operar con más de una moneda en la plataforma para distribuir el riesgo.
Definition of Done:
• Escenarios escritos y considerados
• User stories y tareas finalizadas
• Los tests pasan
• Funcionalidad de pago de cuotas mensuales implementada
• Revisar riesgos
• Revisar métricas
Sprint 17
Objetivos:
• Continuar la implementación de arreglos para mejorar la experiencia de usuario en el frontend
• Documentar
• Arreglos en producción Capacidad: 120 horas/persona
Estimación esfuerzo total: 100,5 horas/persona
Esfuerzo real total: 95,5 horas/persona
Estimación story points: 0
Story points desarrollados: 0
Riesgos:
• El proyecto resulta económicamente inviable debido a los costos elevados de la Blockchain o Especificación:
▪ Dado que el precio de las transacciones en la blockchain hoy en día es elevado
▪ Cuando los usuarios quieran utilizar nuestra plataforma
▪ Entonces dejarían de hacerlo debido a los costos elevados de la misma o Estrategia: Evitar
o Acción preventiva: Desarrollar nuestro contrato inteligente de forma tal que las funciones se ejecuten de la manera más económica posible.
o Acción correctiva: Utilizar una blockchain en la cual las transacciones sean más económicas que en Ethereum.
188
• Debido a problemas de seguridad, la plataforma recibe ataques que terminan en el robo de dinero y datos personales.
o Especificación:
▪ Dado que nuestra plataforma trabaja con dinero, la tecnología Blockchain es muy nueva y no tenemos mucha experiencia utilizándola
▪ Cuando la aplicación salga a producción y cualquiera tenga acceso
▪ Entonces cibercriminales podrían aprovecharse de una vulnerabilidad en el código del contrato inteligente para robar dinero o datos personales de los usuarios
o Estrategia: Transferir
o Acción preventiva: Tener al menos una reunión por mes con un experto en programación de contratos inteligentes para que audite nuestro código y nos confirme que no es vulnerable a problemas conocidos. Hacer una revisión más minuciosa antes de salir a producción.
o Acción correctiva: Informar a nuestros usuarios de lo sucedido con la mayor transparencia posible, disculparnos con ellos e iniciar trámites con autoridades pertinentes para intentar recuperar los fondos y la información robada en el incidente
Definition of Done:
• Revisar riesgos
• Revisar métricas
• Tareas finalizadas
• Incremento sensible en la usabilidad del frontend respecto al sprint anterior
• La plataforma funciona correctamente en el ambiente de producción
189