Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Materia:
DISENO Y EVA. DE PROYEC.
Estudiante:
Axel Nauel Novas Trinidad
Matricula:
2-18-4777
Profesor:
MARIO ORTIZ
Sección:
001
Trabajo de:
Primera evaluación
Acta de constitución de proyecto tecnológico
Nombre del proyecto: Desarrollo de software
Fecha: octubre 26 del 2023
Patrocinador de proyecto: Solvex dominicana
Gerente del proyecto: Ing. Axel Nauel Novas Trinidad
Propósito o justificación de del proyecto
El propósito del desarrollo de software en la República Dominicana es similar al de cualquier otro
lugar, y se centra en la creación, mejora y mantenimiento de aplicaciones y sistemas de software
para satisfacer las necesidades de las empresas y la sociedad en general. Algunos de los propósitos
clave incluyen:
Objetivos del proyecto
Automatización de Procesos: Desarrollar un software que automatice tareas repetitivas o
manuales para aumentar la eficiencia.
Mejora de la Productividad: Crear una aplicación que ayude a los usuarios a realizar
tareas de manera más rápida y efectiva.
Optimización de Recursos: Desarrollar un software que permita un uso más eficiente de
los recursos, como tiempo, dinero o energía.
Mejora de la Experiencia del Usuario (UX): Diseñar una interfaz de usuario intuitiva y
atractiva para que los usuarios se sientan cómodos al utilizar el software.
Seguridad de Datos: Garantizar la seguridad de los datos sensibles a través de una robusta
infraestructura de seguridad y cifrado.
Escalabilidad: Diseñar el software de manera que pueda crecer y adaptarse a medida que
cambien las necesidades y la demanda.
Interoperabilidad: Asegurarse de que el software pueda integrarse con otros sistemas o
aplicaciones de manera efectiva.
Eficiencia Energética: Desarrollar software que reduzca el consumo de energía en
dispositivos o sistemas.
Mejora en la Calidad de los Datos: Implementar controles de calidad de datos para
garantizar la precisión y confiabilidad de la información.
Accesibilidad: Hacer que el software sea accesible para personas con discapacidades,
cumpliendo con estándares de accesibilidad.
Personalización: Permitir a los usuarios personalizar la configuración y la apariencia del
software según sus preferencias.
Rendimiento: Optimizar el rendimiento del software para que funcione de manera rápida y
eficaz, incluso en sistemas más antiguos.
Minimizar Errores: Desarrollar software con pruebas sólidas y detección de errores para
reducir al mínimo los fallos.
Cumplimiento Normativo: Asegurarse de que el software cumple con las regulaciones y
normativas aplicables.
Análisis de Datos: Facilitar la recopilación y el análisis de datos para la toma de decisiones
informadas.
Experiencia Multidispositivo: Asegurar que el software sea compatible con una variedad
de dispositivos, como computadoras, tabletas y teléfonos móviles.
Sostenibilidad: Desarrollar software con un enfoque en la sostenibilidad ambiental y
social.
Reducción de Costos: Crear software que ayude a reducir los gastos operativos o de
mantenimiento.
Fidelización de Clientes: Desarrollar características que fomenten la retención y la lealtad
de los usuarios.
Innovación: Fomentar la innovación tecnológica mediante nuevas características o la
adopción de tecnologías emergentes.
Alcance del proyecto.
Límites:
Recursos Financieros: Definir un límite claro en cuanto a los recursos financieros
disponibles para el proyecto, lo que incluye el presupuesto para desarrollo y
mantenimiento.
Plazo de Tiempo: Establecer un plazo límite para la finalización del proyecto, lo que puede
incluir fechas de entrega específicas para hitos clave.
Funcionalidad: Determinar qué características y funcionalidades están dentro del alcance
del proyecto y cuáles están fuera de él.
Integración de Sistemas: Definir si el software se integrará con otros sistemas o
aplicaciones y establecer límites en cuanto a la complejidad de estas integraciones.
Plataformas y Dispositivos: Especificar las plataformas (por ejemplo, sistemas operativos)
y dispositivos (por ejemplo, tipos de hardware) compatibles y no compatibles.
Alcance:
Requisitos Funcionales: Definir claramente las funciones y características que el software
debe tener para cumplir con los objetivos del proyecto.
Requisitos No Funcionales: Incluir requisitos no funcionales como rendimiento, seguridad,
escalabilidad y usabilidad que el software debe cumplir.
Arquitectura y Tecnología: Establecer la arquitectura tecnológica que se utilizará y las
tecnologías específicas que serán parte del alcance del proyecto.
Documentación: Definir qué tipo de documentación se creará como parte del proyecto,
como manuales de usuario, documentación técnica, etc.
Pruebas y Garantía de Calidad: Especificar las pruebas que se realizarán para asegurar la
calidad del software, incluyendo pruebas unitarias, de integración y de aceptación.
Soporte Post-Lanzamiento: Determinar si el alcance del proyecto incluye el soporte y el
mantenimiento del software después de su lanzamiento.
Capacitación: Incluir la capacitación de usuarios o personal involucrado en la operación y
mantenimiento del software.
Entregables: Identificar los entregables específicos que se esperan al finalizar el proyecto,
como versiones del software, informes de pruebas, etc.
Escalabilidad y Futuras Mejoras: Considerar si el proyecto incluirá la planificación para
futuras mejoras y escalabilidad.
Entregables de proyecto:
Cuando se completa el desarrollo de un software, se entregan varios productos, servicios o
resultados que son fundamentales para su implementación, uso y mantenimiento; aquí algunos de
ellos:
Productos:
Código Fuente: El código fuente del software, que es esencial para realizar modificaciones
y personalizaciones en el futuro.
Software Compilado/Interpretado: La versión ejecutable del software que se puede
instalar y utilizar.
Documentación Técnica: Manuales técnicos que explican la arquitectura del software,
diagramas de flujo y otros aspectos técnicos.
Documentación de Usuario: Manuales de usuario que guían a los usuarios finales en cómo
utilizar el software.
Base de Datos: Si el software utiliza una base de datos, se entrega el diseño de la base de
datos y datos de muestra.
Recursos Gráficos: Archivos de recursos gráficos, como imágenes, iconos y logotipos
utilizados en la interfaz de usuario.
Servicios:
Capacitación: Servicios de capacitación para usuarios y personal de soporte que deben
aprender a utilizar el software.
Soporte Técnico Inicial: Soporte técnico para resolver problemas iniciales o preguntas de
los usuarios después del lanzamiento.
Migración de Datos: Servicios para migrar datos existentes desde sistemas antiguos al
nuevo software.
Integración de Sistemas: Si se requiere, servicios para integrar el software con otros
sistemas existentes.
Resultados:
Software Funcionando: El resultado principal es el software en sí, que debería funcionar
según lo especificado en los requisitos.
Cumplimiento de Requisitos: Los resultados de pruebas y revisiones que demuestran que
el software cumple con los requisitos establecidos.
Evaluación de Calidad: Informes de calidad que detallan los resultados de pruebas y
evaluaciones, incluyendo informes de pruebas de rendimiento y seguridad.
Revisión de Documentación: Documentación técnica y de usuario revisada y aprobada.
Conformidad Legal: Resultados que demuestran que el software cumple con las
regulaciones y normativas aplicables.
Plan de Mantenimiento: Si se ha creado un plan de mantenimiento, es un resultado
importante que guiará el mantenimiento continuo del software.
Supuestos y premisas:
Supuestos:
Requisitos Claros: Se asume que los requisitos iniciales proporcionados son completos y
precisos, aunque es común que evolucionen con el tiempo.
Disponibilidad de Recursos: Se supone que los recursos necesarios, como personal,
hardware y software, estarán disponibles según lo programado.
Cronograma Realista: Se asume que el cronograma propuesto es realista y factible,
aunque pueden surgir retrasos imprevistos.
Cooperación del Cliente/Usuario: Se parte del supuesto de que el cliente o usuario final
colaborará activamente en el proceso de desarrollo y proporcionará retroalimentación
oportuna.
Conformidad Normativa: Se asume que el software cumplirá con todas las regulaciones y
normativas aplicables.
Premisas:
Tecnologías Conocidas: Se parte de la premisa de que las tecnologías y herramientas
utilizadas son conocidas y apropiadas para el proyecto.
Competencia Técnica del Equipo: Se asume que el equipo de desarrollo tiene la
competencia técnica necesaria para llevar a cabo el proyecto.
Cambio de Requisitos: Se parte de la premisa de que los requisitos pueden cambiar a lo
largo del proyecto, y se debe estar preparado para gestionar estos cambios.
Dinámica de Comunicación: Se asume que la comunicación efectiva entre los miembros
del equipo y con el cliente será una parte clave del proyecto.
Testing y Depuración: Se presupone que habrá errores en el software y que se requerirán
pruebas y depuración.
Mantenimiento Post-Lanzamiento: Se asume que el software requerirá mantenimiento
continuo después del lanzamiento para correcciones y mejoras.
Cronogramas y hitos
Un cronograma de desarrollo de software puede variar considerablemente según la complejidad del
proyecto, el tamaño del equipo y otros factores. Sin embargo, aquí presento una estimación
generalizada de un cronograma de desarrollo de software:
1. Definición de Requisitos (2-4 semanas)
Reuniones con el cliente para entender las necesidades.
Documentación de requisitos y especificaciones.
2. Diseño (4-8 semanas)
Diseño de la arquitectura del software.
Diseño de la interfaz de usuario.
Creación de diagramas y prototipos.
3. Desarrollo (8-16 semanas)
Codificación del software.
Pruebas unitarias y de integración.
4. Pruebas (4-8 semanas)
Pruebas de funcionamiento.
Pruebas de rendimiento y seguridad.
5. Correcciones y Optimización (2-4 semanas)
Corrección de errores y problemas identificados.
Optimización de rendimiento.
6. Implementación (2-4 semanas)
Despliegue del software en el entorno de producción.
7. Capacitación y Documentación (2-4 semanas)
Capacitación para usuarios y personal de soporte.
Creación de documentación para usuarios y desarrolladores.
8. Mantenimiento Continuo (a partir de la implementación)
Actualizaciones, mejoras y correcciones de errores a lo largo del tiempo.
Presupuesto inicial
El presupuesto inicial será de (3,000,000) Tres millones de pesos $RD; y estará dividido en:
1. Costos de Personal:
Salarios y beneficios del equipo de desarrollo.
Gestión de proyectos.
2. Hardware y Software:
Adquisición de equipos de desarrollo.
Licencias de software y herramientas de desarrollo.
3. Requisitos y Diseño:
Costos relacionados con la definición de requisitos y el diseño inicial.
4. Desarrollo:
Costos asociados con la codificación y la implementación.
5. Pruebas:
Recursos para la ejecución de pruebas, incluyendo hardware y software de prueba.
6. Gastos Generales:
Costos de oficina, servicios públicos, alquiler, etc.
7. Marketing y Publicidad (si es necesario):
Promoción del software.
8. Capacitación y Documentación:
Costos relacionados con la capacitación de usuarios y la creación de documentación.
9. Licencias y Regulaciones:
Costos de cumplimiento legal y licencias de terceros (si es aplicable).
Comunicaciones y reportes
La comunicación efectiva es esencial en el desarrollo de software. Aquí descripciones generales de
los canales de comunicación y la frecuencia de los informes de progreso típicos en un proyecto de
desarrollo de software:
1. Reuniones de Equipo:
Canal: Reuniones regulares del equipo, ya sea en persona o a través de
herramientas de videoconferencia.
Frecuencia: Por lo general, se realizan semanal o quincenalmente, dependiendo
de la duración y la complejidad del proyecto.
2. Correo Electrónico:
Canal: Comunicación por correo electrónico para intercambio de información y
actualizaciones.
Frecuencia: Diaria o según sea necesario para compartir documentos, informes
y discutir problemas.
3. Herramientas de Gestión de Proyectos:
Canal: Uso de herramientas como Jira, Trello o Asana para el seguimiento de
tareas y proyectos.
Frecuencia: Actualización constante a medida que se completan las tareas y se
logran hitos.
4. Herramientas de Comunicación Instantánea:
Canal: Utilización de herramientas como Slack, Microsoft Teams o WhatsApp
para conversaciones rápidas.
Frecuencia: Continua para discutir problemas urgentes o solicitudes.
5. Informes de Progreso:
Canal: Documentos o presentaciones formales que resumen el progreso del
proyecto.
Frecuencia: Pueden ser mensuales, trimestrales o en fechas clave del proyecto
para presentar actualizaciones más detalladas a los stakeholders.
6. Reuniones con Stakeholders:
Canal: Reuniones programadas con los stakeholders para revisar el progreso y
discutir requisitos y expectativas.
Frecuencia: Dependiendo de la fase del proyecto, pueden ser mensuales o
trimestrales.
7. Tablones de Progreso Visual:
Canal: Tableros visuales en la oficina o en línea para mostrar el progreso del
proyecto de manera clara.
Frecuencia: Actualización constante para que todos puedan ver el estado del
proyecto.
8. Foros o Grupos de Discusión Interna:
Canal: Plataformas internas para discutir problemas técnicos y compartir
conocimientos.
Frecuencia: Según sea necesario para abordar problemas técnicos específicos.
Riesgos y mitigaciones preliminares
1. Cambio en los Requisitos del Cliente:
Riesgo: Los requisitos pueden cambiar durante el proyecto.
Estrategia de Mitigación: Establecer un proceso de gestión de cambios, definir
claramente los requisitos iniciales y negociar cambios de manera controlada.
2. Retrasos en el Cronograma:
Riesgo: Factores como problemas técnicos o falta de recursos pueden llevar a
retrasos.
Estrategia de Mitigación: Establecer un cronograma realista, asignar recursos
adecuadamente y realizar un seguimiento constante del progreso.
3. Falta de Recursos:
Riesgo: Puede haber escasez de personal, hardware o software necesarios.
Estrategia de Mitigación: Asignar recursos adecuadamente, considerar la
subcontratación si es necesario y contar con un plan de contingencia.
4. Problemas Técnicos Inesperados:
Riesgo: Surgen problemas técnicos imprevistos durante el desarrollo.
Estrategia de Mitigación: Realizar pruebas rigurosas y contar con un equipo
técnico competente para abordar problemas.
5. Seguridad y Privacidad:
Riesgo: Vulnerabilidades de seguridad o problemas de privacidad pueden
exponer datos sensibles.
Estrategia de Mitigación: Realizar pruebas de seguridad, seguir buenas
prácticas de seguridad y cumplir con regulaciones de privacidad.
6. Problemas de Comunicación:
Riesgo: Fallas en la comunicación entre el equipo y los stakeholders.
Estrategia de Mitigación: Establecer canales de comunicación claros y
fomentar la comunicación regular con el equipo y los interesados.
7. Desviación del Presupuesto:
Riesgo: Superar el presupuesto previsto para el proyecto.
Estrategia de Mitigación: Realizar un seguimiento constante de los gastos,
establecer una reserva de contingencia y gestionar eficazmente el presupuesto.
8. Riesgo Legal y Cumplimiento:
Riesgo: No cumplir con regulaciones y leyes específicas relacionadas con el
software.
Estrategia de Mitigación: Consultar con expertos legales, realizar auditorías de
cumplimiento y mantenerse al tanto de la legislación aplicable.
9. Abandono de Proyecto por Miembro Clave del Equipo:
Riesgo: La partida de un miembro clave puede afectar el progreso.
Estrategia de Mitigación: Documentar adecuadamente el trabajo, asegurar una
distribución equitativa del conocimiento y contar con un plan de sucesión.
Aprobación
Firmas de aprobación del Acta de Constitución