[[TOC(heading=This section pages, WikiStart, metodologia2017/metodologia, noheading, metodologia2017/AnalisisDominio, metodologia2017/PropuestaDesarrollo, metodologia2017/PlanProyecto, metodologia2017/EstandaresDesarrollo, metodologia2017/EspecificacionRequerimiento, metodologia2017/Codificacion, metodologia2017/AnalisisyDiseno, metodologia2017/Pruebas, metodologia2017/Liberacion, heading=Tabla de Contenido)]] = Plan del Proyecto = En esta plantilla se especifican el conjunto de funcionalidades ordenadas en función de una prioridad calculada. == 1. Priorización de funcionalidades del software según las necesidades de los usuarios == * '''Tabla 1'''. Priorización de funcionalidades por parte de los usuarios. || '''Funcionalidad''' || '''Prioridad de la funcionalidad para los usuarios''' || || (F,,1,,) Establecer la ubicación de la firma visible en un archivo PDF || 1 || || (F,,2,,) Validar archivos BDOC con listas TSL || 0.5 || || (F,,3,,) Preparar taller de firma electrónica con el servicio murachi || 1 || || (F,,4,,) Chequear firma electrónica de archivos PDF para otros sistemas || 0.75 || || (F,,5,,) Cargar archivos a firmar de distintas fuentes (por ejemplo nuble dropbox, drive, etc) || 0.5 || * '''Tabla 2'''.Dependencia entre funcionalidades del software. || '''Funcionalidad''' || '''Dependencia entre funcionalidades''' || || (F,,1,,) Establecer la ubicación de la firma visible en un archivo PDF || - || || (F,,2,,) Validar archivos BDOC con listas TSL || - || || (F,,3,,) Preparar taller de firma electrónica con el servicio murachi || - || || (F,,4,,) Chequear firma electrónica de archivos PDF para otros sistemas || - || || (F,,5,,) Cargar archivos a firmar de distintas fuentes (por ejemplo nuble dropbox, drive, etc) || - || * '''Tabla 3'''.Estudio de riesgos de desarrollo. || '''Definición del riesgo''' || '''Impacto''' || '''Prioridad para abordar el riesgo''' || '''Funcionalidades asociadas al riesgo''' || || 1. API de cliente para servicios en la nube (dropbox, drive, etc) no está disponible || No se puede desarrollar la funcionalidad || 0.25 || (F,,5,,) || || 2. API de cliente para servicios en la nube (dropbox, drive, etc) tiene una documentación deficiente || Retardo en el desarrollo de la funcionalidad por necesidad de entender el uso del API y probarla || 0.25 || (F,,5,,) || || 3. Bibliotecas de desarrollo web y backend limiten la ubicación gráfica de datos en firma visible de archivo PDF || No es posible brindarle al usuario la flexibilidad de escoger cualquier ubicación en el archivo PDF || 0.5 || (F,,1,,) || || 4. Biblioteca de manejo de archivos PDF no permite serializar archivos en el proceso de firma en dos partes || La funcionalidad de firma PDF para otros sistemas que consuman el recurso no estará disponible || 0.5 || (F,,4,,) || || 5. Biblioteca de verificación de archivos BDOC no valida correctamente con las listas TSL || La funcionalidad de verificación de archivos BDOC no estará disponible || 0.5 || (F,,2,,) || * '''Tabla 4'''.Acciones preventivas para los riesgos || '''Riesgo''' || '''Acciones preventivas''' || || 1. API de cliente para servicios en la nube (dropbox, drive, etc) no está disponible o documentación deficiente || Seleccionar otros servicios de almacenamiento en la nube alternativos || || 2. API de cliente para servicios en la nube (dropbox, drive, etc) tiene una documentación deficiente || Realizar búsqueda de talleres o tutoriales en línea sobre la documentación y uso de APIs || || 3. Bibliotecas de desarrollo web y backend limiten la ubicación gráfica de datos en firma visible de archivo PDF || Se notificará al usuario de las ubicaciones restringidas para la firma visible || || 4. Biblioteca de manejo de archivos PDF no permite serializar archivos en el proceso de firma en dos partes || Realizar investigación sobre posibles alternativas de bibliotecas de firma electrónica de PDF y utilizarla || || 5. Biblioteca de verificación de archivos BDOC no valida correctamente con las listas TSL || Cambiar a la nueva versión de la biblioteca jdigidoc || * '''Tabla 5'''.Cálculo de priorización de desarrollo por funcionalidad || '''Funcionalidad (Fi)''' || '''Prioridad de desarrollo (PDFj)''' || || 1. || 0.775 || || 2. || 0.425 || || 3. || 0.85 || || 4. || 0.675 || || 5. || 0.5 || En la Tabla 5 se indica el cálculo de priorización de desarrollo para cada funcionalidad del software propuesto. Para realizar este cálculo se utilizan las siguientes formulas: '''IFj= ( ∑i=1,...nVRi asociados a Fj ) * PR + VFj * PF''' donde IFj representa la importancia de la funcionalidad “j” según la prioridad que le da el usuario y según la prioridad de los riesgos asociados a dicha funcionalidad; VRi representa el valor de prioridad para abordar el riego “i” asociado a la funcionalidad “j”; PR representa el peso asociado al factor riesgo; VFj representa el valor de prioridad asignado por los usuarios a la funcionalidad “j”; PF representa el peso asociado al factor funcionalidad. El PR y el PF son factores utilizados para realizar el cálculo ponderado de priorización de desarrollo. A cada uno de estos factores se les debe asignar valores comprendidos entre 0 y 1. El valor asignado a cada factor dependerá de la importancia que adquieran estos para el desarrollo de la aplicación. La suma de ambos factores debe ser 1. '''PDFj= IFj + ∑ IF correspondientes a las funcionalidades que se construyen a partir de Fj''' donde PDFj representa la prioridad de desarrollo de la funcionalidad “j” ; IF representa la importancia de una funcionalidad que se construye a partir de la funcionalidad “j”. El cálculo de la Prioridad de Desarrollo de las Funcionalidades (PDF) permite crear un orden de prioridad para la construcción de las funcionalidades del software. Las funcionalidades para las cuales se obtengan los valores más altos de PDF deben ser construidas en las primeras iteraciones del proyecto, dado que éstas corresponden a las funcionalidades de mayor prioridad para los usuarios, que tienen asociados riesgos de mayor prioridad para ser abordados, y a partir de las cuales se pueden construir otras funcionalidades del software. En este sentido, tales funcionalidades pueden ser consideradas como el núcleo de la aplicación a desarrollar. * '''Tabla 6'''.Cronograma de desarrollo del proyecto || '''Nº de iteración''' || '''Funcionalidad''' || '''Fecha de inicio''' || '''Fecha de finalización''' || || 1. || (F,,3,,) || || || || 1. || (F,,1,,) || || || || 2. || (F,,4,,) || || || || 2. || (F,,5,,) || || || || 2. || (F,,2,,) || || ||