UNID Sede Morelia Desarrollo e Implementación de Proyectos C. a Dr. José Luis Cendejas Valdez Desarrollo e Implementación del Proyecto:
- aplicación móvil José Juan Herrera García Luis Angel Feregrino Lemus Abril 2014
Acerca de los autores Luis Angel Feregrino Lemus
Nacido el 16 de octubre de 1988 en la Ciudad de Morelia, Michoacán. Obtuvo el grado de Ingeniero en Computación por parte de la Universidad Michoacana de San Nicolás de Hidalgo, el 22 de octubre de 2012 bajo la modalidad de Tesis presentando el trabajo titulado: “Administración de recursos de cómputo utilizando Xgrid”. Ha trabajado en proyectos relacionados con el área de redes computacionales, debido que está especializado en dicha área, no obstante tiene interés en distintas áreas como lo son: Criptografía, Análisis de algoritmos, lógica y computabilidad, bases de datos y cómputo paralelo
José Juan Herrera García Es originario de la Heroica ciudad de Tacámbaro Michoacán, México. Es Ingeniero en Computación egresado de la Facultad de Ingeniería Eléctrica de la Universidad Michoacana de San Nicolás de Hidalgo, actualmente estudia la Maestría en Tecnologías de la Información y Comunicaciones en la Universidad Interamericana para el Desarrollo sede Morelia. Realizó una estancia técnica en las plantas automotrices: Audi, Mercedes Benz, Porsche y BMW en Alemania como parte de su formación en sistemas empotrados. Participó como representante de los ingenieros jóvenes mexicanos en el Student Branch Congress 2012 en la ciudad de Madrid España. Actualmente se desempeña como Programador Junior en el Departamento de Sistemas de la Facultad de Arquitectura de la UMSNH, Técnico Académico en el Laboratorio de Física de la Facultad de Ingeniería Eléctrica de la UMSNH y profesor de asignatura en las facultades mencionadas.
1 Introducci贸n
Desarrollo e Implementación de Proyectos
Introducción El desarrollo de aplicaciones para dispositivos móviles es un área de la programación Web con una creciente demanda. Diseñar e implementar aplicaciones no son tareas fáciles, especialmente si no has trabajado antes con ellas o si vienes del mundo web, un contexto radicalmente diferente al que ahora nos enfrentamos. Aunque parecen un fenómeno reciente, la realidad es que las aplicaciones hace tiempo que están entre nosotros. Últimamente, no solo se han vuelto más populares y atractivas para los usuarios, sino también para los diseñadores y desarrolladores que están sacando provecho de las posibilidades que ofrecen las nuevas pantallas de teléfono de mayor calidad. En una app este avance tecnológico se traduce en mejores experiencias, apoyadas en el diseño visual que ahora tiene más importancia y responsabilidad. El trabajo de un mesero consiste en atender al cliente desde que este entra al establecimiento. Una de las funciones principales del mesero es tomar la orden del cliente, en la mayoría de los casos el mesero olvida hacer anotaciones importantes en las comandas que serán entregadas a la cocina y caja como son: algún platillo, guarnición deseada, bebidas, ingrediente extra, etc., lo que implica un descontrol y falta de comunicación del área de servicio hacía la cocina y caja del cual traerá como consecuencia disgustos del cliente hacía el establecimiento, perdida del restaurante al no ser anotada la orden correctamente u omitida. Contar con una app que automatice la tarea de la comanda representa una seria de beneficios entre ellos la optimización de tiempos en la relación mesero – comensal, control de platillos y bebidas solicitados por el cliente y mejor comunicación meseros – cocineros/chef
2 ¿Qué son las aplicaciones? Las aplicaciones —también llamadas apps— están presentes en los teléfonos desde hace tiempo; de hecho, ya estaban incluidas en los sistemas operativos de Nokia o Blackberry años atrás. Los móviles de esa época, contaban con pantallas reducidas y muchas veces no táctiles, y son los que ahora llamamos feature phones, en contraposición a los smartphones, más actuales. En esencia, una aplicación no deja de ser un software, podemos decir que las aplicaciones son para los móviles lo que los programas son para los ordenadores de escritorio.
Actualmente encontramos aplicaciones de todo tipo, forma y color, pero en los primeros teléfonos, estaban enfocadas en mejorar la productividad personal: se trataba de alarmas, calendarios, calculadoras y clientes de correo. Hubo un cambio grande con el ingreso de iPhone al mercado, ya que con él se generaron nuevos modelos de negocio que hicieron de las aplicaciones algo rentable, tanto para desarrolladores como para los mercados de aplicaciones, como App Store, Google Play y Windows Phone Store. Al mismo tiempo, también mejoraron las herramientas de las que disponían diseñadores y programadores para desarrollar apps, facilitando la tarea de producir una aplicación y lanzarla al mercado, incluso por cuenta propia.
3 Objetivo
Desarrollo e Implementación de Proyectos
Objetivo General Crear un aplicación móvil, la cual ayude a los meseros en las anotaciones correctas de las comandas dictadas por el cliente, para un funcionamiento mejor del área de servicio del restaurante.
Específicos • Crear un diseño atractivo, llamativo e interesante para el usuario en cuanto a su contenido y calidad, y además cumplir con las actividades programadas • Llevar una cuenta en tiempo real • Crear una aplicación de fácil funcionamiento. • Obtener un producto que cumpla con las expectativas de creación que tenga un buen funcionamiento y desempeño en los dispositivos móviles con los que cuenta el restaurante • Obtener satisfactoriamente el producto para ser ejecutado y presentado ante el restaurante con una previa verificación y evaluación de su funcionamiento • Ayudar al desempeño de los meseros • Desarrollar diferentes vistas, en las cuales se pueda mover el mesero para realizar varias actividades que le demande su trabajo
4 Desarrollo
Desarrollo e Implementación de Proyectos
Desarrollo Definición de la aplicación La comanda 1 electrónica es potente un ordenador que cabe en la palma de la mano. Desde esta comanda "electrónica" podemos gestionar el pedido de los comensales en tiempo real. Podemos seleccionar la mesa, añadir, modificar o eliminar platillos y/o bebidas a nuestra comanda, podemos solicitar la cuenta, etc. Todo esto sin tener que que abandonar el comedor. La comanda "electrónica" mejora el rendimiento de metre, pues este no necesita ir a la barra ni al la cocina para entregar lacomanda: La comanda se envía vía internet a la interfaz web consultada desde la cocina. Una sola persona con la comanda "electrónica" rinde más. Solo se sirve lo que se pide con la comanda "electrónica", así se evita perder dinero cuando nos piden algo y olvidamos apuntarlo.
1
La definición habitual de comanda es: platos o especialidades culinarias que solicita el cliente y que el camarero reflejan en un block por triplicado y una de cuyas copias va a cocina.
Desarrollo e Implementación de Proyectos
El cliente Se contacto a personal (Lic. en gastronomía Ana Torres Torres) encargado del área de cocina en la cafetería del Colegio México Nuevo, esta área ofrece además de desayunos escolares el servicio de cafetería, la propuesta fue implementar la comanda electrónica en dicho establecimiento, realizar las pruebas necesaria y proceder a su lanzamiento. La secretaria académica del establecimiento estuvo de acuerdo con la implementación y espera que una vez en funcionamiento poder escalar la aplicación.
Alcances: Los beneficios alcanzados en esta aplicación móvil no son solo para una persona (mesero), sino para todo el restaurante como son: • Mayor y mejor comunicación en las áreas del establecimiento, comensal + mesero + cocina + caja= satisfacción para todos • Atención personalizada al cliente por medio del mesero al seguir pasó a paso lo deseado por el comensal • Satisfacción del cliente y pronto regreso gracias a la buena atención. • Cero omisiones de los detalles requeridos por el cliente al ordenar platillo. • Cuenta exacta de acuerdo a lo consumido por el cliente. • Mayor seguridad del cliente a la hora de hacer el pago. • Evitar repetirle su orden al cliente en caso de olvidar anotar un platillo. • Agilidad a la hora de tomar la orden del cliente o pérdida de tiempo al escribir (manualmente) toda la orden de los comensales.
Desarrollo e Implementación de Proyectos
Etapas • Definir el problema a resolver o Se encontraran las distintas dificultades que tiene un mesero al tomar el pedido del cliente en su comanda. • Diseño de aplicación o Crear un diseño atractivo, llamativo e interesante para el usuario en cuanto a su contenido y calidad • Creación de prototipos o Se crearan distintos diseños para elegir el que más se adecuen a las necesidades del restaurant • Implementación y desarrollo o Ya con el diseño aprobado se empezara a desarrollar las distintas vistas que se necesitaran para la aplicación • Pruebas y modificaciones o Con la aplicación ya funcional, se realizarán distintas pruebas en diferentes dispositivos para así encontrar defectos de programación para corregirlos
Tiempos Para realizar un buen proyecto necesitamos hacer una planeación de cada uno de nuestras actividades para ello le pondremos un plazo a cada una de ellas, este plazo se muestra en la tabla siguiente: Nombre Definición del problema a resolver Diseño de la aplicación Creación de prototipos Implementación y desarrollo Pruebas y modificación
Duración 8 días
Inicio 24/02/14
Final 5/03/14
6 días 6 días 19 días
6/03/14 14/03/14 17/03/14
13/03/14 21/03/14 10/04/14
10 días
5/04/14
18/04/14
Desarrollo e Implementación de Proyectos Con ayuda de nuestro software de administración de proyectos (Open Project) podremos realizar un diagrama de Gantt, el cual graficara nuestras actividades a lo largo de un tiempo total determinado.
Costos Estimaremos los costos de los recursos necesarios (humanos y materiales) para completar las actividades del proyecto. Trataremos de hacer una aproximación de costos considerando las posibles variaciones del estimado final con propósito de mejorar la administración del presupuesto del proyecto. Existen 4 recursos básicos en el proyecto, los cuales son: • • • •
José Juan Herrera Luis Angel Feregrino Diseñador Servicios
Los recursos humanos recibirán una salario por hora y los servicios contemplan energía eléctrica agua e internet. En la tabla siguiente se mostraran los distintos costes de los recursos
Desarrollo e Implementación de Proyectos Recurso José Juan Herrera Luis Angel Feregrino Diseñador Servicios
Costo $55/h $55/h $10/h $15.5/día
Con ayuda de nuestro software y sabiendo los costos de nuestros recursos podremos saber cuánto se gastara en cada una de las etapas.
Y también podremos observar cuanto se invertirá en cada uno de los recursos.
Haciendo una suma de los gastos que se realizaran en las distintas actividades el costo total del proyecto será de $ 41,103.50 .
Desarrollo e Implementación de Proyectos
Precio de venta Ya conociendo los costos que se invertirán para realizar el proyecto tendremos que decidir cuál será el precio final de venta de nuestra aplicación sabiendo que se venderá a un solo restaurante por el momento, pero teniendo en cuenta que se tiene la estructura ya hecha para ofrecerse a un sinfín de restaurantes. En un principio se pretende sacrificar un poco el salario de los desarrolladores con un precio inicial de $12,000.00 pesos este debido que la aplicación está desarrollada especialmente para cada restaurante. Cuando se recupere lo invertido la aplicación ira bajando de precio para que sea más accesible.
Desarrollo e Implementación de Proyectos
Entregables • Definir el problema a resolver o Planos de la cafeteria proporcionandos por la Lic. gastronomía Ana Torres o Requerimientos e infraestructura con la que cuenta establecimiento
Ubicación de las mesas (6) y el ara de cocina
en en
Desarrollo e Implementación de Proyectos
Reporte de la entrevista y requerimientos: - Apliación movil dinamica - Interfaz web para actualizar y agregar platillos al menú - Se cuenta con un celular con S.O. Android - Se cuenta con un equipo de computo de escritoria - Hay una red inalambrica disponible en la cafeteria
• Diseño de aplicación o Logotopipo de la apliacion o Diseño de las pantallas y diagrama de flujo de datos o Diseño de la interfaz web
Diseño de logotipo
Desarrollo e Implementación de Proyectos
Diagrama de flujo de datos
• Creación de prototipos No es necesario hacer un prototipo que contenga todas las pantallas posibles de una aplicación. Los prototipos están destinados a pruebas, por lo tanto, deben desarrollarse solo aquellas pantallas necesarias para completar de principio a fin la tarea que se quiere probar. Por ejemplo, si se quiere sondear un registro de usuario, el prototipo debería contemplar las pantallas necesarias desde el ingreso de datos hasta el mensaje de éxito final.
Desarrollo e Implementaci贸n de Proyectos
Prototipos para la aplicaci贸n movil
Prototipos para la interfaz web
Desarrollo e Implementación de Proyectos • Implementación y desarrollo o Diagrama del funcionamiento de la aplicación movil / interfaz web o Reporte de tecnologias utilizasdas o Diagrama de casos de uso o Diagrama de secuencias o Diagrama de actividades o Pantallazos de aplicación en funcionamiento
Diagrama de funcionamiento Reporte de tecnologías utilizadas El entorno de dasarrollo utilizado es Corona SDK. Una herramienta para desarrollar aplicaciones y ejecutarlas en iOS, Android, Amazon Kindle Fire y Burnes&Noble Nook. El tipo de aplicaciones al que va destinado principalmente es a juegos, aunque también permite otras funcionalidades que podrían emplearse en otros ámbitos. El lenguaje que utiliza es Lua, Lua es un lenguaje de programación imperativo, estructurado y bastante ligero que fue diseñado como un lenguaje interpretado con una semántica extendible.
Desarrollo e Implementación de Proyectos
El sistema operativo para el que se desarrolla la aplicación es Android debido a que es con la infraestructura que se cuenta. Android es un sistema operativo basado en el kernel de Linux diseñado principalmente para dispositivos móviles con pantalla táctil, como teléfonos inteligentes o tabletas. Para la interfaz web se utilizo PHP + HTML5 + JavaScript + CSS3 (Bootstrap) para explotar la base de datos en MySQL alojada en un servidor Apache. Diagrama de casos de uso
Desarrollo e Implementaci贸n de Proyectos
Diagrama de secuencias
Desarrollo e Implementaci贸n de Proyectos Diagrama de actividades
Desarrollo e Implementaci贸n de Proyectos Patallazos de la aplicaci贸n en funcionamiento
Desarrollo e Implementaci贸n de Proyectos Patallazos de la interfaz web en funcionamiento
Desarrollo e Implementaci贸n de Proyectos
Desarrollo e Implementación de Proyectos
Análisis de riesgos Con ayuda del análisis de riesgos podemos observar que si no se tiene la infraestructura correcta no se podrá hacer un uso apropiado de la aplicación. Así mismo si falla la conexión hacia internet la aplicación quedara fuera de línea esto con lleva a que el mesero no pueda hacer el pedido correctamente, por lo tanto ni el cocinero ni el gerente podrán observar las cosas que se han pedido en cada mesa. Esto mismo pasa si la base de datos tiene algún fallo.
Desarrollo e Implementación de Proyectos
Reporte Postmortem
Antecedentes La aplicación de Comandapp se comenzó a desarrollar debido a que se esta cursando una materia llamada Aplicaciones móviles en la Maestría en Tecnologias de la Información de la Universidad Interamericana para el Desarrollo, la idea de la Comandapp surgió debido que en distintas ocasiones que se habían ido a algun restaurant y se le había dictado el pedido al mesero muchas veces se le había olvidado hacer algunas notaciones. Por lo tanto se dispuso a realizar esta aplicación.
Materiales La aplicación móvil Comandapp fue diseñada pretendiendo satisfacer las exigencias del restaurante con el que tuvimos contacto, por lo que se utilizo el programa Gimp2 para el diseño de la aplicación, la plataforma de desarrollo fue Corona Labs por medio del procesador notepad++ mediante el lenguaje de programación Lua. Cabe aclarar que solo se desarrollo la aplicación para el sistema operativo Android debido que se cuenta con más libertad para este sistema operativo.
Desarrollo e Implementación de Proyectos
Proceso La aplicación consto de 5 etapas: Nombre Definición del problema a resolver
Diseño de la aplicación
Creación de prototipos
Implementación y desarrollo
Pruebas y modificación
Se encontraran las distintas dificultades que tiene un mesero al tomar el pedido del cliente en su comanda. Crear un diseño atractivo, llamativo e interesante para el usuario en cuanto a su contenido y calidad Se crearan distintos diseños para elegir el que más se adecuen a las necesidades del restaurant Ya con el diseño aprobado se empezara a desarrollar las distintas vistas que se necesitaran para la aplicación Con la aplicación ya funcional, se realizarán distintas pruebas en diferentes dispositivos para así encontrar defectos de programación para corregirlos
Con ayuda de estas etapas se tuvo como resultado final la aplicación móvil llamada Comandapp, dicha aplicación está desarrollada para un restaurant en especifico, pero debemos de mencionar que al momento de querer cambiarlo a otro restaurant lo único que se debe de hacer es cambiar el diseño de acuerdo al restaurant debido que el funcionamiento va ser el mismo.
Desarrollo e Implementación de Proyectos Mejorías Como se menciono anteriormente la aplicación se ha desarrollado únicamente para el sistema operativo android debido a la facilidad de instalación en cualquier dispositivo con este sistema. Podría pretenderse desarrollarse para dispositivos con IOS, pero sería un gasto innecesario debido que se debe de contar primero con computadoras de la marca de Apple para compilar nuestra aplicación, sumándole a esto debemos de contar con una membrecía para poder subir dicha aplicación a la Apple store, después de subirla, un equipo verifica si dicha aplicación cumple con las condiciones necesarias para publicarla, por todo esto no cree necesario desarrollar la aplicación para dispositivos con IOS. Otra de las mejoras que se podrían hacer seria
5 Conclusiones Es normal sentirse más identificado, o incluso apegado, con determinados roles en un proyecto. Ejecutar el mismo papel de forma continua, con el tiempo, nos convierte en especialistas; pero, lo que realmente nos hace mejores profesionales, es tener un conocimiento que trascienda las fronteras de nuestro campo de acción, en este caso, saber cómo se idean y ejecutan otras etapas del diseño y desarrollo de una app. De esta forma, la relación e integración con otros miembros del equipo puede ser más fructífera, al generar sinergia que resulte en aplicaciones de mayor calidad. Planear es muy importante, si queremos lograr nuestros objetivos de la forma más organizada posible y en el tiempo que lo necesitamos, la planeación es un factor clave. Tenemos que tener en claro que la planeación sin acción sólo conduce a sueños e ilusiones, si en verdad queremos que nuestras iniciativas salgan adelante, la planeación debe ir a la par con la acción. De nuestras acciones dependerán nuestros resultados y por lo tanto la consecución de nuestros objetivos. Cuando la acción está unida a un buen plan, esta se vuelve mucho más sencilla de realizar. Además a medida que se actúa de acuerdo al plan, vemos que se puede mejorar en este y en el proceso aprender de nuestros errores y nuestros aciertos.
Así que la acción es la forma experimental de implementar nuestros planes y así verificamos en la realidad que tan adecuados son estos. Un error que cometemos muchos es idealizar nuestros planes. Muchas veces estos parecen tan bien hechos y se ven tan completos que nos da miedo empezar actuar porque no queremos encontrar que tiene errores, o no queremos cambiarlos. En vez de tomar esta actitud es mejor ser flexibles en nuestros planes y buscar la forma de completarlos con la acción, nunca existirá el plan perfecto, siempre habrá una oportunidad de mejorarlo. Nuestros planes afectan nuestras acciones y nuestras acciones afectan nuestros planes, por eso es importante mantener un equilibrio donde ambos se complementen; de esta forma podremos ser más efectivos alcanzando nuestros objetivos y metas.
6 Bibliografía • Preparación Y Evaluación De Proyectos Nassir Sapag Chain/Reinaldo Sapag Chain Edición 1999. Edit. Iberoamericana • Análisis Y Evaluación De Proyectos De Inversión Raúl Cos Bu 2ª Edición. Edit. Noriega-Limusa • Metodología De Investigación Roberto Hernández Sampieri 2a.. Edición. Edit. Mcgraw-Hill • coronalabs. (23 de Marzo de 2014). www.coronalabs.com. Obtenido de http://coronalabs.com/ • lanacion. (05 de abril de 2014). www.lanacion.com.ar. Obtenido de http://www.lanacion.com.ar/1365035-que-son-y-para-que-sirven-lasapps • lua. (23 de Marzo de 2014). www.lua.org. Obtenido de www.lua.org • Sommerville, I. (2002). Ingeniería del Software. En I. Sommerville, Ingeniería del Software. Pearson Educación