4. INGENIERÍA del proyecto
4.2. Diagramas Funcionales
4.2.4. Ficha técnica
A continuación, se describirá de cada uno de los elementos de la parte técnica en el que se puede identificar detalles y características que conforman el desarrollo de las aplicaciones Android:
Ilustración 27. Ficha técnica de las tecnologías de desarrollo del APP. (Fuente: Propia).
4.2.4.1. ANDROID STUDIO
Es un entorno IDE de desarrollo integrado para el desarrollo de aplicaciones para Android. Cuenta con características que mejoran la productividad de los desarrolladores.
Un sistema de compilación flexible.
Un emulador rápido y cargado de funciones.
Un entorno unificado en donde se puede desarrollar para todos los dispositivos
Android.
4.2.4.2. JAVA
La compatibilidad de este lenguaje de programación con Android es fuerte debido a que la comunicación directa a Android se hace a través de JAVA, genera desarrollos independientes de la marca y el modelo del dispositivo, ya que algunas funcionalidades solo pueden ser desarrolladas por Java, a su vez brinda flexibilidad y solidez como lenguaje de programación (Miró, 2015).
Hardware y herramientas de desarrollo Caracteristicas especifícas
Software de edición y programación Android Studio Otros lenguajes Java, JavaScript Formato de empaquetamiento .APK
Almacenamiento del APP Cloud AWS - Amazon Relational Database Service (RDS) Software desarrollo de BD MySQL
Servidor de Aplicaciones
Para desplegar el backend de la APP , la lógica del negocio. Se requiere un Servidor Linux (Servicio EC2 de AWS) con un servidor de aplicaciones instalado (Glasfish, tomcat).
4.2.4.3. APK
Android Aplication Package, Es un paquete de instalación de una aplicación Android, y contiene todos los archivos necesarios para que la aplicación se ejecute en Android y no tenga inconvenientes cuando se desea instalar en la tienda de Google, en palabras textuales un ejecutable para Android. Sin embargo, por defecto siempre se debe habilitar la opción de Orígenes desconocidos en Android. (Samsung, 2018).
4.2.4.4. AWS - Amazon Relational Database Service (RDS)
Es almacenamiento en la nube de Amazon Web Services, es una plataforma que brinda servicios en la nube de almacenamiento de datos; facilitando el uso, la configuración y el escalamiento de las bases de datos relacionales, permitiendo que el propietario dedique tiempo al mantenimiento de la aplicación y así mejorar el rendimiento para que sea rápido, con alta disponibilidad, con seguridad y la compatibilidad que se requiere con los distintos Smartphone. RDS se encuentra disponible para Oracle. (Amazon, 2019).
4.3.
CRONOGRAMA
La planeación del Cronograma se realizó con MS PROJECT, en el diagrama se plasma los recursos utilizados en el ciclo de vida del proyecto, los horarios y la participación activa en cada una de las actividades propuestas, se incluyeron recursos como los ingenieros de desarrollo, el diseñador de interfaces de usuario, el arquitecto y las actividades de gerencia de proyectos. A continuación, se encuentra el diagrama de Gantt con todas las actividades:
Ilustración 29. Diagrama de Gantt. (Fuente: Propia).
Como se muestra en el diagrama de Gantt, el proyecto se debe iniciar el día 3 de febrero de 2020 y finaliza el 10 de noviembre el 2020, lo que equivale a 37 semanas de trabajo. En el desarrollo del cronograma se tuvo en cuenta los días festivos, con horarios diarios de trabajo de 8 horas.
Levantamiento de requerimientos: Con esto se pretende obtener todos los atributos requeridos para que el proyecto cumpla con el objetivo del mismo, además de tener en cuenta las necesidades de usuarios y patrocinadores como también requisitos tecnológicos para el desarrollo de la aplicación.
Planeación y definición del alcance del proyecto: En esta fase el director de proyecto analizará y planeará la manera en que se ejecutará el proyecto.
Diseñar la arquitectura del proyecto: En esta fase se realiza un análisis del sistema propuesto, se documenta la arquitectura de la aplicación.
Diseño de la interfaz gráfica de la aplicación: En esta fase el diseñador realizará el análisis y el diseño de las interfaces de la aplicación que se deben desarrollar bajo la premura de que debe ser centrada en el usuario.
Desarrollo de la aplicación móvil: Esta fase se pasa a la etapa de desarrollo, que es la construcción del sistema según la arquitectura ya diseñada, se obtiene una versión beta al finalizar, muy importante para la ejecución de la siguiente fase.
Pruebas de Desarrollo: En esta fase se realizarán los casos de prueba y las pruebas funcionales, hito muy importante ya que la aceptación de varias funcionalidades depende de esta fase, con base a las pruebas se realiza un manual de usuario.
Corrección de defectos: En esta fase se corrigen todos los defectos encontrados en la fase de pruebas.
Integración y lanzamiento a producción la aplicación: Esta fase se realiza el despliegue de la aplicación o también llamada la puesta en producción, además se provee asistencia y capacitación a los usuarios para el uso de la herramienta.
Soporte y control de la aplicación : Esta fase se da solo después de la puesta en producción el proyecto, y solo aparecerá cuando se presenten actividades de emergencias.
Gestión de proyectos: Esta fase comprende todo el proceso de gestión de proyectos, desde la iniciación del proyecto hasta el cierre del mismo.
Entregables del proyecto
Para complementar el desarrollo de la aplicación en cada fase se debe entregar una documentación que ayudará a mantener una base de datos del desarrollo que se está realizando y cada participante o dueño de una actividad es el encargado de entregar el documento o la información correspondiente a cada fase o tarea:
Levantamiento de requerimientos :
o Historias de usuario
o Encuestas
o Juicio de expertos
Planeación y definición del alcance del proyecto:
o Plan del proyecto
o Cronograma del proyecto
Diseñar la arquitectura del proyecto:
o Modelo de datos
o Documento de arquitectura de software
o Plan de desarrollo de software
Diseño de la interfaz gráfica de la aplicación:
o Modelo de diseño
o Mockups
o Storyboards
o Documento de diseño
Desarrollo de la aplicación móvil:
o Versión útil Beta del sistema
Pruebas de funcionales:
o Casos de pruebas
o Reportes de pruebas funcionales
o Documentar defectos encontrados
o Checklist de verificación de funcionalidad del sistema.
Corrección de defectos:
o Corregir Checklist del reporte de defectos
Integración y lanzamiento a producción la aplicación:
o Reporte de despliegue del sistema
o Manual del despliegue
o Reportes de capacitación a los usuarios.
Gestión de proyectos:
o Plan de Gestión del Proyecto
o Solicitudes de Cambio
o Lista de riesgos
o Plan de control de cambios
Soporte y control de la aplicación :
o Orden de control de cambios
o Documentar el defecto encontrado
5. ESTUDIO ADMINISTRATIVO
Este estudio muestra los elementos administrativos tales como la visión y la misión que define el rumbo y las acciones a realizar para alcanzar los objetivos de la empresa, por otra parte, se hará mención del organigrama y la distribución de los recursos humanos que conformarán el equipo de desarrollo de la aplicación. Finalmente se expone la parte legal y ambiental que el proyecto debe tener en cuenta funcionar de acuerdo a la normatividad vigente.
5.1.
VISIÓN
Brindar una solución móvil que transforme experiencias con el poder de la tecnología, generando una ventaja competitiva con una solución innovadora para gestionar torneos de fútbol con funcionalidades que satisfagan las necesidades de los usuarios en precio, localización y rendimiento.
5.2.
MISIÓN
En el 2020 se lanzará la aplicación para torneos de futbol más completa en la ciudad de Bogotá y en el 2021 se convertirá en una aplicación reconocida y usada por organizadores y jugadores de torneos de futbol, como la aplicación para acceder a los mejores torneos de Futbol de la ciudad de Bogotá.
5.3.
ESTRATEGIA DE MARKETING
Para la realización de la estrategia de marketing, se tuvo en cuenta las 5 P, las 5 variables en conjunto son necesarias para conseguir posicionar el servicio/producto en una marca:
Ilustración 37. 5 P'S de Marketing. (Fuente: Propia).
5.3.1. PRODUCTO
Cosiste en dar a conocer una aplicación eficiente, amigable, fácil de usar y buen rendimiento, que permita crear torneos de fútbol, si se tiene información de posibles participantes, se inscriben números de teléfono o correos electrónicos, cuando se finalice la creación del torneo de futbol, la aplicación enviará un mensaje con un link de descarga de la aplicación con el que se podrá inscribir el participante, una vez inscrito todos los equipos posibles, el administrador u organizador del torneo podrá realizar un sorteo de los partidos de futbol, cuando finaliza el torneo enviará todos los participantes como quedaron programados los partidos, el lugar y hora en la que se jugara el partido, entre otras funcionalidades que permitirán de la aplicación posicionarse como unas de las aplicaciones de torneos de futbol más completas.
La aplicación se mantendrá actualizada con versiones que mejoren las interacciones
usuario aplicación.
Se realizará un seguimiento activo de los bug encontrados y reportados, para
MARCA
VIVEFUTBOL es un nombre que evoca la emoción que se siente al poder competir, el poder disfrutar del toque del balón, de pasar el balón a un compañero para que anote un gol, competir inyecta en la sangre del jugador adrenalina, deseos de ganar y de porque no!!! Ser el campeón del torneo. Vivefutbol será reconocida porque facilita a los organizadores de torneos y jugadores de futbol el seguimiento del torneo.
LOGO
El logo representa los sentimientos, la pasión y los objetivos que tiene un equipo de fútbol cuando juega un torneo, Ganar, ser campeón, divertirse, sentir paz y tranquilidad, y porque no compartir con la familia y los amigos este maravilloso momento:
Ilustración 30. Logo de ViveFútbol. (Fuente: Propia).
En una cancha de futbol las expectativas no solo son el premio del primer puesto, es también una oportunidad de poder competir con alegría y divertirse.
SLOGAN
Teniendo en cuenta la marca y el logotipo, se diseña el siguiente slogan:
“Cuando se vive con pasión y se disfruta con amor, se ViveFútbol
con el corazón”.
5.3.2. PRECIO
El precio se definió de acuerdo a la encuesta realizada, si tenemos en promedio del valor de una inscripción a un torneo de fútbol de $330.000 y si se realiza un cobro del 3% del valor de la inscripción se tiene que por inscripción se recaudaría alrededor de $ 9.900, si un campeonato tiene cantidad de 20 equipos por torneo $198.000.
5.3.3. PLAZA
El primer año cuando se está promoviendo el torneo de futbol se pretende llegar a las localidades de Suba, Fontibón y Kennedy, en años posteriores y gradualmente, se estarán incluyendo otras localidades como Ciudad Bolívar, Los Mártires entre otras, hasta poder cubrir la totalidad de localidades de la ciudad de Bogotá en un rango de 5 años.
5.3.4. PROMOCIÓN
Para dar a conocer la aplicación se tienen en cuenta la importancia de la voz a voz y promociones que se puedan ofrecer en la aplicación en conjunto con los organizadores de los torneos de fútbol.
Plataformas y Apps: La aplicación móvil estará expuesta para su descarga gratuita
a través de Play Store de Android.
Social Commerce o redes sociales se han convertido en herramientas de
cotidianamente, la principal idea es promover la aplicación de forma positiva, teniendo los comentarios adecuados la información a través de la Red se puede divulgar velozmente a través no solo en la ciudad de Bogotá, si no que a otras partes del mundo.
Flash sales, consiste en hacer ofertas a los usuarios a través de mensajes de texto
mensajes de alerta de la aplicación a los usuarios registrados en la base de datos, esto promoverá el uso de la aplicación masivamente o con más frecuencia.
Publicidad exterior: Para la promoción de la aplicación se realizará una campaña
agresiva en sitio de aquellos torneos de futbol independientes, para ofrecer a los organizadores el uso de la aplicación para gestionar un torneo o varios torneos de futbol, e inmediatamente enseñarles a los jugadores la facilidad de inscribirse al torneo a través de la aplicación al torneo de su elección según su posición geográfica.
5.3.5. PERSONAS
El público objetivo son aquellos amantes de fútbol sin distinción de raza, color, sexo ni edad en la ciudad de Bogotá.
5.4.
ORGANIGRAMA
En el organigrama del proyecto es sencillo y corresponde a un inversor o gerente general, y dos áreas principales, que conforman un organigrama piramidal y se conforma de la siguiente manera:
Gerencia General: Es el encargado de invertir en el proyecto, aprobar el presupuesto y
actividades que se van a desarrollar en el proyecto.
Gerencia de desarrollo y tecnología: es el área más importante en el proyecto, y cuenta
con el porcentaje más alto de los colaboradores, son los encargados de desarrollar, analizar los requerimientos, diseñar la aplicación, realizar pruebas y vigilar y controlar la planeación y el alcance del proyecto, finalizando con soporte a la aplicación posterior a la puesta en producción.
Gerencia de calidad y versiones: Es la encargada de cuidar la rama de producción adicionando los cambios y los componentes creados en cada Sprint.
Ilustración 31. Organigrama institucional de ViveFútbol. (Fuente: Propia).
El Diseñador UI se encuentra al mismo nivel del ingeniero o Arquitecto de Software ya que aparecen en la misma etapa de desarrollo del proyecto, al igual que el analista de pruebas y el Desarrollador, los dos trabajan o desarrollan sus actividades paralelamente. Estos perfiles paralelos permiten agilizar los tiempos de entrega del proyecto.
Como se observa en la figura la rama relevante se observa reflejada en la rama de tecnología, ya que se observa gran variedad de perfiles. Al finalizar la rama se observa el ingeniero de Soporte, por ser el último no quiere decir que es menos importante, por el contrario, se considera uno de los perfiles más importantes ya que es el que dará continuidad y estabilidad al proyecto.
5.5.
RECURSO HUMANO
El recurso humano es el recurso más importante en el desarrollo de aplicaciones ya que ellos aportan el recurso intelectual y analítico, para el desarrollo del presente proyecto se tendrá en cuenta las personas que están implicadas directamente con el proyecto. A continuación, se lista los recursos necesarios para el desarrollo de la aplicación móvil:
Para el desarrollo o ejecución del proyecto se requiere de 2 ingenieros de desarrollo de aplicaciones móviles con conocimientos en Java, JavaScript y manejos de bases de datos.
5.5.1. PERFILES REQUERIDOS Y SUS FUNCIONES
Los perfiles son una manera de identificar y clasificar las funciones y actividades que cada role debe realizar dentro de la compañía, en primer lugar, enunciaremos el perfil del gerente del proyecto, es un rol muy importante para el proyecto ya que permite planificar y dar seguimiento al ciclo de vida del proyecto, con el fin de lograr entregar un proyecto acorde a las necesidades requeridas:
GERENTE DE PROYECTOS:
El gerente de proyectos debe contar con conocimientos para la planeación de un proyecto, tener conocimientos de herramientas para la gestión de proyectos como Scrum, PMBok o
Recurso requerido Tiempo requerido días Tiempos en Horas
Director de proyecto 32 256
Analista de requerimientos 15 120
Arquitecto de Software 10 80
Diseñador UX/UI 5 40
Desarrollador APP Móvil (2) (MEDIO) 260 2080
Tester de software 30 240
Ingeniero desarrollador y Soporte 30 240
Integrador final de la aplicación con AWS 5 40
Total días del proyecto 355 3096
Prince2. Adicionalmente, contar con experiencia certificada para que pueda enfrentas las diferentes inconvenientes que el proyecto presente:
Ilustración 32. Funciones del gerente de proyecto. (Fuente: Propia).
Gestión de Proyectos según el PMBOK. Scrum Master MS Project. Liderazgo. Comunicación. Negociación. Solución de Conflictos. Motivación. Gestión de Proyectos.
Procesos de desarrollo de productos. Aplicaciones ERP.
No aplica.
Experiencia:
Otros:
○ Equipo técnico Requisitos del Rol: Niveles de Autoridad:
Conocimientos:
Habilidades:
○ Solucionar problemas y superar los obstáculos del proyecto.
○ Decide sobre la programación detallada de los recursos humanos y materiales asignados al proyecto.
○ Decide sobre la información y los entregables del proyecto. Reporta a: Gerente General Supervisa a: ○ Planificar el proyecto. ○ Ejecutar el proyecto. ○ Controlar el proyecto. ○ Cerrar el proyecto.
○ Ayudar a Gestionar el Control de Cambios del proyecto.
○ Gestionar los recursos del proyecto.
○ Elaborar el Registro de Stakeholders.
○ Elaborar el Plan de Proyecto y el acta de Constitución del proyecto.
○ Elaborar el Informe de Performance del Proyecto, Realizar la Reunión y generar las actas.
○ Elaborar el Informe de Cierre de componentes y Elaborar el Informe de Cierre del proyecto. Funciones:
○ Ayudar al Sponsor a iniciar el proyecto. Nombre del Rol
GERENTE DE PROYECTO
Objetivos del Rol:
Es la persona que gestiona el proyecto y controla que se cumpla la planeación del proyecto, es el principal responsable del éxito del proyecto, y por tanto la persona que asume el liderazgo y la administración de los recursos del proyecto para lograr los objetivos fijados por el Gerente General.
Responsabilidades:
El gerente de proyecto es el encargado de supervisar el proyecto, de definir en conjunto con el equipo técnico los tiempos requeridos para el desarrollo de cada Spring y asegurarse de que se cumpla el cronograma, el costo y el alcance del proyecto.
DESARROLLADOR DE APLICACIONES MÓVILES E INGENIERO DE SOPORTE
El ingeniero desarrollador es parte esencial del proyecto, es el que aporta su intelecto y conocimiento para el desarrollo de la aplicación es el creador del código fuente, sus conocimientos deben ser sólidos ya que la viabilidad y éxito del proyecto depende de la calidad de código implementado.
Ilustración 33. Funcionalidades del ingeniero desarrollador de aplicaciones e Ingeniero de Soporte. (Fuente: Propia).
El desarrollador de aplicaciones debe ser una persona autosuficiente, de pensamiento claro, curioso y auto gestionable, que este en busca de nuevo retos que le permita
ANDROID
Herramientas de Consulta a Base de datos JAVASCRIPT
Comunicación Proactividad Confiabilidad Trabajo bajo presión Programador (3 años) Trabajo en equipo (2 años)
Conocimientos: Habilidades:
Otros: No aplica.
○ Decide sobre la información y los entregables asignados.
Reporta a:
Gerente de Proyecto
Supervisa a:
Ninguno
Requisitos del Rol:
○ Depurar el sistema.
Funciones:
○ Elaboración de la versión Beta de APP
Niveles de Autoridad:
○ Decide sobre la estructura del código fuente del sistema.
○ Determina los recursos o requisitos necesarios para la preparación del software.
Nombre del Rol
Desarrollador de aplicaciones e Ingeniero de Soporte
Objetivos del Rol:
Es la persona que se encargará escribir, depurar y mantener el código fuente de lo desarrollado en Android
Responsabilidades:
estructurar el código de una forma eficiente, recursiva y entendible para futuros desarrolladores. Debe proporcionar los tiempos en la ejecución del Sprint.
ANALISTA DE PRUEBAS
La persona encargada de realizar las pruebas funcionales, debe contar con habilidades de escrutinio, investigativo y de lógica para encontrar vulnerabilidades en el componente desarrollado, esto permitirá entregar un producto de calidad con especificaciones técnicas que entreguen valor:
Ilustración 34. Funciones del Analista de pruebas. ( Fuente: Propia).
Metodologías de pruebas
Herramientas para el desarrollo de pruebas Pruebas automatizadas Comunicación Proactividad Confiabilidad Ojo crítico Investigación Trabajo bajo presión
EXPERIENCIA Analista de pruebas (3 años)
Conocimientos: Habilidades: Otros: No aplica. Reporta a: Gerente de Proyecto Supervisa a: Ninguno
Requisitos del Rol:
○ Dar visto Ok de las pruebas
Funciones:
○ Ejecutar las pruebas funcionales
Niveles de Autoridad:
○ Decide si el desarrollo paso las pruebas funcionales.
○ Verificar que se cumplan los criterios de aceptación de la historia de Usuario
Nombre del Rol
Analista de pruebas
Objetivos del Rol:
Es la persona de realizar las pruebas funcionales y dar pruebas OK!
Responsabilidades:
Para entregar un componente desarrollado al usuario, este debió haber pasado por pruebas exhaustivas, por lo que, al finalizar este periodo de pruebas, el analista de pruebas debe dar el visto bueno del desarrollo.
ARQUITECTO DE SOFTWARE
Como se defina la arquitectura software para una aplicación permite que mejore el rendimiento de una aplicación, disminución de costos al no generar código duplicado. Es