Si tienes experiencia con integracion a alguna de las plataformas de base de datos y aplicaciones open source descritas en las habilidades necesarias genial bien sea via io, android, Windows phone 8, y mejor aun si quieres aceptar el desafio y aprender mas haciendo un codigo base para las 3 plataformas moviles, este proyecto es para ti.
Requisitos:
1.Metodologia: agil puede ser un poco de scrum, kanban etc, es decir tienes bastante flexibilidad para desarrollarlo como tu mejor lo creas conveniente, en base a objectivos planteados de antemano. Saber leer UML y mantener una comunicacion activa a travez del proyecto.
2.Ambiente de desarrollo: PHP, Mysql, SQLite, Tienda en linea o aplicacion opensource instalada en Windows, Linux o mac, Xamarin studio 5 o Visual studio 2013 update 2
3.Propuestas: Podemos considerar el hecho de que no todos tienen acceso a la version de xamarin forms y que su prouesta solo se base solo en android o solo ios o solo Windows 8 app. Pero nos atenemos de darles mas rango de aceptacion a su propuesta en base a la capacidad de proponer como resolver el proyecto con una sola fuente de un codigo comun para las 3 plataformas.
4.Entrega: Incluira codigo fuente con archivos de proyecto y codigo usados, con todos la documentacion y manual de uso sera entregado al finalizar el proyecto.
Los aspectos que debe cubrir el prototipo de la aplicacion movil son:
Instalacion
1. El usuario podra bajar la aplicacion escaneando un smartcode, instalar y tener solo acceso a leer los productos agrupados por categoria de la tienda o aplicacion primero. En este caso el usuario "testeador" recibira por correo electronico el smartcode que apuntara al ambiente de desarrollo,de donde podra bajar la app.
Registro
2.Antes de que el usuario "testeador" pueda agregar productos o articulos a la tienda o aplicacion tendra que registrarse como usuario "editor" escribiendo su nombre, numero de celular, correo electronico y un campo extra añadido a la tabla de usuario llamado "cupon" el cual tendra valor de "probando" en unos campos y mandarlos con el click de un boton ser añadido al grupo de editores por un administrador (tu/ustedes). Luego despues de este registro del usuario como editor solo basta añadir una o mas categorias a su profil, si no se hace este paso el no podra editar. Es necesario limitar su nivel de edicion de acuerdo a las siguientes propuestas:
A.Solo podra editar en las categorias que ha registrado el mismo y puede agregar mas.
B.Otro ha registrado las categorias en su profil.
Control de contenidos
3.Todos estos datos nuevos añadidos a la base de la tienda o aplicacion en linea por el usuario del app, solo se veran en la base local mas no en en el sitio web hasta que el administrador las acepte una por una como "visible" .
Manejo
4.Es muy importante que la interaccion de las paginas sea de facil navegacion y manejo, proponiendo un uso inteligente de persistencia de datos de pagina a pagina y no olvidar que los usuarios son gente normal sin conocimientos tecnicos y que no precisan de administrar ni configurar otros aspectos de la aplicacion desde su movil.
Almacenamiento de datos y sincronizacion
5. La applicacion debe ser rapida con repositorio local SQLLite y que la estructura de datos local apoye tanto la administracion de las tablas , usuario, productos y categorias para almacenar offline los datos y con facilidad de sincronizar con las tablas de la tienda o aplicacion respectiva via rest services. Esto se hara atravez de json y WCF.
Para esto es necesario implementar en la aplicacion movil los nodos de servicios tanto de subscripcion como de consumo especificos a la tienda o aplicacion que se proponga usar.
Referencias como ejemplo:
Uso de web services en Prestashop:
http://doc.prestashop.com/display/PS14/Web-service+reference
Uso de Proyectos comunes para multiplataforma (Shared Projects)
http://developer.xamarin.com/guides/cross-platform/application_fundamentals/shared_projects/
Interesados no duden en consultar cualquier duda que tengan.
Duración del proyecto 1 a 3 meses