
Es imprescindible iniciar a desarrollar el proyecto sin ates comenzar con los pasos principales o mejor dicho el ciclo de vida del proyecto
Inicio
Se define el propósito o la necesidad del proyecto.
Se identifican los objetivos de alto nivel y los entregables principales.
Se determina la viabilidad del proyecto (¿es factible y beneficioso?).
Se identifican los interesados clave (personas o grupos afectados por el proyecto).
Se elabora un acta de constitución del proyecto o documento similar que autoriza formalmente el inicio del proyecto y designa al director del proyecto.
Planificación
Se desarrolla un plan de gestión del proyecto detallado.
Se define el alcance del proyecto (qué se incluye y qué no).
Se desglosan las actividades del proyecto en tareas más pequeñas y manejables (creación de la estructura de desglose del trabajo - EDT o WBS).
Se secuencian las actividades y se estima su duración.
Se asignan recursos (humanos, materiales, financieros).
Ejecución
1-Se lleva a cabo el trabajo definido en el plan del proyecto.
2-Se dirige y gestiona el equipo del proyecto.
3-Se gestionan los recursos según lo planificado.
4-Se implementan los entregables del proyecto.
5-Se gestionan las comunicaciones con los interesados
Monitoreo y Control
1-Se supervisa y mide el progreso del proyecto en relación con el plan.
2-Se analiza el rendimiento para identificar cualquier desviación.
3-Se gestionan los cambios al plan.
4-Se controlan los riesgos y se implementan las respuestas planificadas.
5-Se asegura que los entregables cumplan con los estándares de calidad.
Cierre
1-Se finalizan formalmente todas las actividades del proyecto.
2-Se obtienen las aceptaciones finales de los entregables por parte del cliente o patrocinador.
3-Se disuelven los equipos del proyecto y se liberan los recursos.
4-Se realiza una revisión post-proyecto o lecciones aprendidas para identificar.
Desarrollo del proyecto
Desarrollo de aplicaciones para dispositivos móviles.
Introducción
El mercado de segunda mano está en pleno crecimiento, empujado entre otras
cosas por una crisis económica a nivel mundial y un cambio de mentalidad en los consumidores. En nuestro país este proceso ha sido algo más lento, siempre ha existido una cultura de mercadillo, más asociado al típico rastro de compra-venta. pero gracias a las nuevas tecnologías se han abierto otras posibilidades, si a esto le añadimos que república dominicana es uno de los mayores consumidores de dispositivos electrónicos (el segundo en penetración de smartphones), es una combinación perfecta para este proyecto.
Además de lo indicado, en los últimos años se ha visto el despegue y asentamiento de las aplicaciones móviles gracias a su integración en los dispositivos portátiles, su facilidad de acceso y uso.
DEFINICIÓN DEL PROYECTO
Como he comentado muy por encima en el punto anterior, el proyecto consiste en la creación de una app de compraventa y subasta online entre particulares de lo que llamamos TODO EN DISPOSITIVO MOVILES ( Smartphones, Tablet, Relojes inteligentes, Portátiles, Cámaras,
En la actualidad disponemos en internet de diferentes páginas web tipo eBay y de aplicaciones móviles estilo Wallapop, en ambos casos cubren una variedad considerable de productos (desde vehículos, moda, tecnología. servicios profesionales), pero todas ellas en distintos formatos y funcionalidades.
Muchas de estas aplicaciones ofrecen los productos en venta directa con precio fijo y otras en modo subasta, en el caso de las primeras además facilitan la mensajería instantánea para la comunicación entre usuarios y búsqueda de artículos por localización geográfica.
En el caso de la app a desarrollar, se basará exclusivamente en los aparatos electrónicos ya citados, en donde se facilitará información detallada de los dispositivos mediante enlaces a la web de fabricante, y así analizar y comparar entre distintas marcas y modelos.
El usuario tendrá la posibilidad de visualizar los artículos que han incluido otras personas y ponerse en contacto con ellas mediante un chat y si llegan a un acuerdo realizar el pago por la plataforma o utilizar la opción de localización para
OBJETIVOS
El objetivo principal es afianzar los conocimientos adquiridos en el grado y aprovechar y poner en práctica otros que no he tratado hasta ahora, con ello avanzar en el desarrollo de aplicaciones en la plataforma ANDROID y conseguir realizar una con complejidad media-alta.
En cuanto a la finalidad de la herramienta es lograr una app de fácil acceso a usuarios móviles, que les ayude a la compra de nuevos aparatos electrónicos y a la venta de los que ya no utilicen o quieran desprenderse.
En ese sentido cualquier persona que se descargue la aplicación en pocos pasos podrá publicar su anuncio.
Y en cuanto al objetivo posterior es: Provocar la descarga y utilización de los usuarios con dispositivos ANDROID de este aplicativo. Repositorio de información de productos.
Alimentar la BBDD con descripciones de artículos publicados por los usuarios. Realizar compras y ventas online. Preservar la seguridad del usuario mediante el acceso por contraseña.
En cuanto a las fases con las que cuenta el proyecto, son principalmente tres. La inicial que es el diseño y arquitectura, donde se realizan los primeros
bocetos y la relación entre los diferentes componentes y pantallas, lo que dará lugar al prototipo, también se mostrarán los casos de uso.
FUNCIONALIDADES
El proyecto, como ya se ha indicado, consiste en una plataforma de información y compraventa de productos electrónicos de pequeñas proporcionados llamados comúnmente TODO EN DISPOSITIVO MOVILES.
La aplicación que se va a desarrollar tendrá las siguientes funcionalidades:
Registro y login de usuario a través de correo electrónico y contraseña.
Consulta de diferentes productos por marca y modelo.
Consulta de todos los artículos dados de alta por los usuarios.
Consulta por identificador de un artículo.
Insertar nuevos artículos con los siguientes datos: Articulo, Categoría,
Modo, Precio, Provincia y Contacto.
Actualizar un artículo ya incluido con los datos indicados en el anterior punto.
Borrar un artículo ya insertado.
Pago de un anuncio a un usuario registrado.
Chat online con usuarios de la aplicación.
Localizar y calcular distancia entre usuarios.
DISEÑO Y ARQUITECTURA
El objetivo principal de esta es saber aplicar el Diseño Centrado en el Usuario en el análisis, diseño, desarrollo y evaluación de sistemas móviles. Este objetivo se concreta en los siguientes:
Investigar usuarios y recoger requisitos, tanto cuantitativos como
cualitativos, que ayudarán a conocer los usuarios y definir perfiles.
Examinar y analizar las condiciones en que se utilizará el sistema para definir su contexto de uso.
Elaborar un análisis de tareas.
Elaborar escenarios de uso.
Definición de los flujos de interacción en el sistema.
Diseñar y construir un prototipo de alto nivel del sistema teniendo en
cuenta los conceptos de las evaluaciones heurísticas y de las
particularidades del diseño para dispositivos móviles.
IMPLEMENTACIÓN
Los objetivos concretos de esta son:
Poner en práctica los conocimientos adquiridos a lo largo de toda la titulación.
Conocer el proceso de desarrollo de una app desde su concepción hasta
su distribución.
Saber implementar funcionalidades concretas en una aplicación móvil
utilizando los lenguajes de programación y las herramientas disponibles
según la plataforma o plataformas escogidas. Saber testear el correcto funcionamiento de una aplicación móvil y
depurar los posibles errores. Ser capaz de documentar y justificar las decisiones tomadas en el
desarrollo y los resultados logrados. Adquirir experiencia al afrontar los retos que supone sacar adelante un proyecto completo.
ENTREGA FINAL
Los objetivos concretos de esta son:
Poner en práctica los conocimientos adquiridos a lo largo de toda la
titulación.
Adquirir experiencia en afrontar los retos que supone llevar a cabo un proyecto completo Saber completar el desarrollo de una aplicación móvil y preparar su distribución para un usuario final. Ser capaz de documentar y justificar las decisiones tomadas en el desarrollo y los resultados obtenidos.
Ser capaz de presentar el trabajo realizado a un público no especializado.
ELEMENTOS HARDWARE
En este sentido a lo largo del proyecto se han utilizado diferentes componentes, desde un ordenador portátil hasta dispositivos móviles. A continuación, se describen cada uno de ellos:
5. LENGUAJES INCLUIDOS
En este caso el lenguaje utilizado es Java, orientado a objetos y uno de los más populares en uso, particularmente para aplicaciones de cliente-servidor de web.
Esta será la base del aplicativo, se usarán librerías propias del lenguaje como las que suministra Android.
XML es otro lenguaje a emplear en el proyecto, muy similar a HTML pero su función principal es describir datos, es un formato que posibilita la lectura de
datos a través de diferentes aplicaciones, para este proyecto servirá de interfaz gráfica para la configuración de las actividades.
POSIBLES RIESGOS
En cualquier proyecto pueden surgir eventualidades, por ello hay que prever y adelantarse a un problema que origine un parón y no nos deje llegar a la finalización de nuestro cometido. Estos riesgos pueden ser por factores internos, relacionados con el desarrollo de la propia aplicación y su dificultad, o pueden ser externos, como situaciones procedentes del entorno familiar, labórale ..
DOCUMENTACIÓN
En este punto se facilitará con detalle un análisis del proyecto, se empezará con la arquitectura del sistema base, los requerimientos funcionales y no funcionales, con los casos de uso, diseño técnico y por último, con el prototipo.
SISTEMA OPERATIVO: ANDROID
Android es un grupo de herramientas y aplicaciones ligadas a una distribución Linux para dispositivos móviles, es de código abierto, gratuito y no requiere pago de licencias, se trata de un conjunto de software para dispositivos móviles que incorpora un sistema operativo, middleware y aplicaciones de base
Aplicaciones
Se incluyen distintos tipos de aplicativos, desde gestores de correo hasta navegadores, calendarios, mapas, etc. Todas ellas son escritas en el lenguaje de programación Java.
Framework de Aplicaciones
Los desarrolladores tienen acceso completo a los APIS del framework que se usan por las aplicaciones base. La arquitectura está diseñada para ayudar y sintetizar la reutilización de componentes; todas las aplicaciones pueden difundir sus capacidades y gracias a esto favorecer a otros programadores.
Android Runtime
Android incorpora una serie de librerías que proporciona una gran parte de las funcionalidades que hay disponibles en las librerías base del lenguaje de programación Java. Cada aplicación Android lanza su proceso, con su instancia de la máquina virtual.
Librerías
Android tiene un montón de librerías C/C++ utilizadas por diversos componentes del sistema Android. Algunas son: implementación librería C estándar, librerías de medios, librerías de gráficos, 3d, SQLite, entre muchas otras.
REQUERIMIENTOS FUNCIONALES
El proyecto que se va a realizar, tiene la intención de albergar en un site, una plataforma con multitud de anuncios relacionados con dispositivos electrónicos portátiles. En una primera fase, solo en castellano y en ámbito nacional, aunque se espera que más adelante se haga extensivo a toda Europa.
DESCRIPCIÓN BÁSICA
La aplicación dispondrá de varias funcionalidades que se describen a continuación:
Consultar información por dispositivo, marca o modelo: Se facilitara
a través de una sección propia un listado de marcas y modelos por
categoría. Cada uno de ellos con un enlace directo al fabricante para que
se pueda asesorar de las características y funcionalidades del terminal.
Visualizar los artículos disponibles en la APP: Se dará acceso a un
listado de anuncios que ya han incluido con anterioridad los usuarios
registrados en la aplicación. En esta pestaña se podrá ver el artículo con
su descripción, categoría a la que pertenece (Smartphone, Tablet, etc.),
modo de venta (subasta o precio fijo), precio (cantidad en pesos), provincia
(solo nacional), contacto(mail o teléfono móvil).
Buscar un artículo por ID: Se permitirá localizar un artículo por un
identificador asignado por la aplicación.
Insertar un anuncio en la aplicación: Se podrá dar de alta desde esta
pestaña un nuevo artículo con la descripción del estado del producto,
categoría, modo, precio, provincia y contacto.
Actualizar un artículo en la aplicación: Se dará la posibilidad de
modificar un artículo ya dado de alta, se podrá cambiar los datos del
artículo, categoría, modo, precio, provincia y contacto.
Borrar anuncio de la plataforma por ID: Se facilitara la eliminación de
un artículo que se encuentra en la aplicación por identificador.
Realizar el pago de un artículo: Se podrá realizar el pago vía Paypal de
un artículo de un usuario.
Seguridad
En cualquier proyecto de la actualidad se debe prestar mucha atención en la seguridad, para ello se tiene que disponer de acceso como mínimo con usuario y contraseña. En este caso, se habilitará autenticación mediante correo electrónico y contraseña.
Se utilizará el sistema de autenticación que nos ofrece Google llamado Firebase
Autenticación. Una vez que el usuario inicie sesión por primera vez, se creará una cuenta de usuario nueva y se la vincula con las credenciales, es decir, el nombre y la contraseña del usuario con los que el usuario inició sesión.
REQUERIMIENTOS NO FUNCIONALES
A continuación, se describen los requerimientos que no son funcionales del
proyecto, es decir, todos los requisitos que no detallan la información a guardar,
ni tampoco funciones a realizar, sino las características de funcionamiento.
DISPONIBILIDAD
En relación a la disponibilidad indicar que la aplicación como tal tiene varias dependencias, la primera y más importante, que es el registro y login va ligado a
Firebase Autenticación, si este servicio sufre algún tipo de caída, el usuario no podrá logarse con sus claves en la plataforma. El segundo y no menos importante, es el artículos, si el hosting contratado padece una caída no se podía acceder a los anuncios publicados.

INTERFAZ GRÁFICA
El diseño de la interfaz se intentará adaptar al mayor número de dispositivos, sean del tipo que sean, es decir, smartphone, tablet, smartwatch, etc. aunque Nuestro principal foco de atención serán los smartphones.
DISEÑO TÉCNICO
En este caso la arquitectura del proyecto es un modelo cliente-servidor, donde la parte cliente será el dispositivo móvil con la aplicación instalada, y la parte servidora será el servicio de Google Firebase que se encarga de procesar las peticiones de registro y login de cliente, además del hosting que facilitará Hostinger.
IMPLEMENTACIÓN
A continuación, se indican las acciones tomadas durante la fase de implementación y las técnicas que se han utilizado.
PREMISAS Y JUSTIFICACIÓN
En relación a este punto hay que tener en cuenta varios supuestos cuando se desarrollo un proyecto, y en este caso de manera particular al tratarse de dispositivos móviles.
En este sentido, las características del perfil de usuario tienen la única limitación de la edad y país de residencia, se recomienda que solo se registren mayores de 16 años y con domicilio en territorio nacional, aunque ambos puntos no lo vamos a tener en cuenta en la entrega del proyecto.
ENCRIPTACIÓN DE DATOS
En este caso los datos a transmitir entre el dispositivo móvil y el servicio web son un poco delicados, se facilita información como el correo electrónico y teléfono. Para ello se usará el protocolo SSL para encriptar todas las comunicaciones entre origen y destino, ya que este último dispone de un certificado SSL que hace posible utilizar el protocolo HTTPS para gestionar las peticiones, en lugar de HTTP.
OPTIMIZACIÓN DE PANTALLA
En esta aplicación se ha optimizado la interfaz gráfica para adaptarla a principalmente a dispositivos como los smartphones, en este caso se han realizado varias mejoras y pruebas a lo largo de la vida del proyecto. Para ello se ha reducido la carga de imágenes y formularios demasiado recargados evitando una paginación excesiva. En ese sentido he definido un criterio de un único punto de densidad de píxeles por pulgada.
CONCLUSIONES Y MEJORAS
El desarrollo de esta aplicación ha sido una tarea laboriosa pero muy gratificante.
La verdad es que le tenía mucho respeto aunque llevaba tiempo queriendo realizarla. hice una idea de la aplicación a un nivel demasiado avanzado y complejo que poco a poco he ido dividiendo en pequeñas áreas y simplificando en distintas tareas.
En líneas generales creo que he conseguido completar prácticamente todos los objetivos propuestos en la planificación salvo pequeños desvíos, incluso he podido incluir algún punto extra que no estaba previsto, por ejemplo la conexión con redes sociales.
En cuanto a las mejoras, en ese sentido la aplicación tiene recorrido, por el entorno que se mueve requiere ciertas evoluciones y hay aspectos a pulir, como por ejemplo el interfaz gráfico en el listado de artículos y en su seguimiento. De todas maneras debido a los tiempos comprometidos por las distintas entregas se tuvo que estar muy pendiente de la planificación para no sufrir parones y retrasos en ciertas actividades.
Write a comment ...