aplicaciÓn android para acceso a soluciÓn...

12
PROYECTO FIN DE CARRERA GUILLERMO GUERRERO GONZÁLEZ 1 APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRM 1. Introducción 1.1. Motivación y Objetivos En el presente proyecto se aborda el diseño de una aplicación para una plataforma móvil, que permita el acceso a un software alojado en un servidor externo con el propósito de introducir o recibir información. Esta información en origen se encuentra en una base de datos que es gestionada por un servidor externo, y como destino tiene ser utilizada con fines comerciales. Este paradigma se conoce como computación en la nube: un usuario accede a un servidor remoto (base de datos, servidor de aplicaciones, almacenamiento, etc…) sin tener contacto físico, a través de una conexión a internet. Estos servicios web generalmente son conocidos como SaaS (Software- as-a-Service) y su crecimiento en los últimos años esta incentivando a muchas compañías a pasar sus sistemas a este paradigma que, entre otras ventajas, ahorra costes. Cabe destacar, que todo el procesamiento de información se realiza en el servidor remoto mientras que la presentación de esta se realiza en el terminal móvil. La aplicación móvil que se pretende realizar, hace una petición al servidor a través de internet, este la solicita a su vez a la base de datos y la transforma o la manipula según la petición realizada devolviéndola posteriormente al móvil. Conseguir crear una herramienta de trabajo flexible que permita acceder a la información deseada desde cualquier punto a través de internet es la motivación del proyecto. El desarrollo se realizará para la plataforma Android. En la siguiente figura se puede ver gráficamente el funcionamiento teórico. El desarrollo de esta aplicación, que surge como complemento de una solución específica, se realiza utilizando como servidor externo un software CRM (Customer Relationship Management). CRM es un modelo de negocio Figura 1: Diagrama funcionamiento

Upload: others

Post on 21-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRMbibing.us.es/proyectos/abreproy/12085/descargar_fichero/1... · capítulo, se dedica el último punto a describir los tipos de computación

PROYECTO FIN DE CARRERA GUILLERMO GUERRERO GONZÁLEZ 1

APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRM

1. Introducción

1.1. Motivación y Objetivos

En el presente proyecto se aborda el diseño de una aplicación para una

plataforma móvil, que permita el acceso a un software alojado en un servidor

externo con el propósito de introducir o recibir información. Esta información

en origen se encuentra en una base de datos que es gestionada por un servidor

externo, y como destino tiene ser utilizada con fines comerciales. Este

paradigma se conoce como computación en la nube: un usuario accede a un

servidor remoto (base de datos, servidor de aplicaciones, almacenamiento,

etc…) sin tener contacto físico, a través de una conexión a internet.

Estos servicios web generalmente son conocidos como SaaS (Software-

as-a-Service) y su crecimiento en los últimos años esta incentivando a muchas

compañías a pasar sus sistemas a este paradigma que, entre otras ventajas,

ahorra costes. Cabe destacar, que todo el procesamiento de información se

realiza en el servidor remoto mientras que la presentación de esta se realiza en

el terminal móvil.

La aplicación móvil que se pretende realizar, hace una petición al servidor

a través de internet, este la solicita a su vez a la base de datos y la transforma o

la manipula según la petición realizada devolviéndola posteriormente al móvil.

Conseguir crear una herramienta de trabajo flexible que permita acceder a la

información deseada desde cualquier punto a través de internet es la

motivación del proyecto. El desarrollo se realizará para la plataforma Android.

En la siguiente figura se puede ver gráficamente el funcionamiento

teórico.

El desarrollo de esta aplicación, que surge como complemento de una

solución específica, se realiza utilizando como servidor externo un software

CRM (Customer Relationship Management). CRM es un modelo de negocio

Figura 1: Diagrama funcionamiento

Page 2: APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRMbibing.us.es/proyectos/abreproy/12085/descargar_fichero/1... · capítulo, se dedica el último punto a describir los tipos de computación

PROYECTO FIN DE CARRERA GUILLERMO GUERRERO GONZÁLEZ 2

APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRM

basado en el cliente que es muy utilizado por muchas empresas para mantener

y fidelizar a sus clientes.

El objetivo del proyecto es diseñar y programar una aplicación para la

plataforma Android para el acceso a una solución CRM en la nube.

Page 3: APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRMbibing.us.es/proyectos/abreproy/12085/descargar_fichero/1... · capítulo, se dedica el último punto a describir los tipos de computación

PROYECTO FIN DE CARRERA GUILLERMO GUERRERO GONZÁLEZ 3

APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRM

1.2. Material Y Métodos

El lenguaje de programación usado es Java y su uso es libre y gratuito. El

SDK (Software development Kit) de Android que permite usar las APIs

(Application Programming Interface) propias de Google también es de libre

acceso, por tanto el coste del desarrollo es mínimo.

Para la instalación del sistema CRM es necesario un servidor que para

evitar costes innecesarios, se instalará en un ordenador personal. A

continuación se detallan las herramientas usadas:

1.2.1. Hardware

Principalmente se ha utilizado para el desarrollo, diseño, programación y

depuración de la aplicación un ordenador portátil. Todo el software necesario

así como el servidor han sido instalados en un portátil ASUS modelo N53SV, con

procesador Intel(R) i3-2310M y dotado de 4GB de memoria RAM.

Para realizar pruebas reales se ha utilizado un Smartphone Samsung

modelo Galaxy S.

1.2.2. Software necesario para desarrollar en Android

El equipo portátil funciona bajo Windows 7 Home Edition con Service

Pack 1 instalado. El sistema operativo del Smartphone es la última versión de

Android, 4.1 conocida por el sobrenombre de Jelly Bean.

A continuación se detallan los programas utilizados:

1.2.2.1. Java Development Kit (JDK)

Para desarrollar cualquier aplicación en Android es necesario descargar e

instalar el Java Development Kit. La última versión disponible es la 7u7

disponible en la siguiente página:

Page 4: APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRMbibing.us.es/proyectos/abreproy/12085/descargar_fichero/1... · capítulo, se dedica el último punto a describir los tipos de computación

PROYECTO FIN DE CARRERA GUILLERMO GUERRERO GONZÁLEZ 4

APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRM

http://www.oracle.com/technetwork/java/javase/downloads/jdk7u7-

downloads-1836413.html

1.2.2.2. Android Software Development Kit (SDK)

Al igual que es necesario el JDK, el SDK de Android también es necesario

ya que incluye todas las librerías necesarias para usar las API de Google. Cada

versión de Android tiene su propia API, siendo compatibles las más modernas

con las anteriores. Desde el SDK Manager se pueden descargar las versione

anteriores para desarrollar para una versión antigua de Android en caso de

necesidad.

La última versión disponible es la 20.0.3, descargada en el siguiente

enlace:

http://dl.google.com/android/installer_r20.0.3-windows.exe

1.2.2.3. Eclipse

El entorno de desarrollo para desarrollar en Android es Eclipse,

desarrollado íntegramente en Java. Realmente es un entorno de código abierto

multiplataforma que es usado principalmente por los programadores en Java o

C/C++ aunque existen versiones para diferentes plataformas. La Eclipse

Foundation se encarga su desarrollo sin ánimo de lucro e incluso soporta el sitio

Eclipse Projects, sitio de enlace entre usuarios, desarrolladores y miembros del

equipo Eclipse. Es necesario el pack

Es necesario instalar el plugin Android Development Tools (ADT),

necesario para conectar el SDK al entorno de trabajo y poder testear en el

emulador integrado la aplicación desarrollada.

Se necesita el pack Eclipse IDE for Java Developers, cuya última versión es

la 4.2:

http://www.eclipse.org/downloads/

Page 5: APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRMbibing.us.es/proyectos/abreproy/12085/descargar_fichero/1... · capítulo, se dedica el último punto a describir los tipos de computación

PROYECTO FIN DE CARRERA GUILLERMO GUERRERO GONZÁLEZ 5

APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRM

1.2.2.4. Android Development Tools (ADT) para Eclipse

Para la interconexión de Eclipse y el SDK de Android es necesario el

plugin ADT, se trata de un IDE (Integrated Development Enviroment) que

extiende las capacidades de Eclipse para construir proyectos Android. Añade

funcionalidades como editor XML o un debugger específico basado en el

emulador que proporciona el SDK.

La última versión es la 20.0.3 y puede ser descargada aquí:

http://developer.android.com/tools/sdk/eclipse-adt.html

1.2.3. Software necesario para el Servidor

1.2.3.1. WampServer

El servidor necesita tener instalado el paquete que se conoce por LAMP

(Linux, Apache, MySQL y PHP) o WAMP (Windows, Apache, MySQL y PHP) según

la plataforma del equipo. En cualquier caso, las aplicaciones pueden ser

instaladas por separado o utilizar un paquete como WampServer. La última

versión disponible incluye lo siguiente:

Apache 2.2.22

Mysql 5.5.24

PHP 5.3.13

XDebug 2.1.2

XDC 1.5

PhpMyadmin 3.4.10.1

SQLBuddy 1.3.3

webGrind 1.0

Se instala sobre el equipo portátil, nombrado en la sección de Hardware,

que utiliza como S.O. Windows 7.

http://www.wampserver.com/en/

Page 6: APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRMbibing.us.es/proyectos/abreproy/12085/descargar_fichero/1... · capítulo, se dedica el último punto a describir los tipos de computación

PROYECTO FIN DE CARRERA GUILLERMO GUERRERO GONZÁLEZ 6

APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRM

1.2.4. Otro Software

1.2.4.1. GanttProject

Es una herramienta de código abierto para hacer diagramas de Gant

como el que aparece en esta memoria. Puede descargarse de la siguiente

dirección:

http://ganttproject.sourceforge.net/

1.2.4.2. Suite Ofimática Microsoft Office 2010

Este documento así como su correspondiente presentación ha sido

desarrollado con la suite ofimática de Microsoft en su versión 2010. En especial,

se han utilizado los programas Word 2010 y PowerPoint 2010.

Page 7: APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRMbibing.us.es/proyectos/abreproy/12085/descargar_fichero/1... · capítulo, se dedica el último punto a describir los tipos de computación

PROYECTO FIN DE CARRERA GUILLERMO GUERRERO GONZÁLEZ 7

APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRM

1.3. Etapas de desarrollo y tiempos

En este punto se detallan las distintas fases por las que ha pasado este

proyecto. Con ayuda del siguiente diagrama de Gantt, se pretende exponer la

extensión en el tiempo de estas fases.

Page 8: APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRMbibing.us.es/proyectos/abreproy/12085/descargar_fichero/1... · capítulo, se dedica el último punto a describir los tipos de computación

PROYECTO FIN DE CARRERA GUILLERMO GUERRERO GONZÁLEZ 8

APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRM

Figura 2: Diagrama Gant

Page 9: APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRMbibing.us.es/proyectos/abreproy/12085/descargar_fichero/1... · capítulo, se dedica el último punto a describir los tipos de computación

PROYECTO FIN DE CARRERA GUILLERMO GUERRERO GONZÁLEZ 9

APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRM

1.3.1. Estudio del Servicio Web CRM

La búsqueda del servicio web CRM se realizó durante aproximadamente

15 días en los cuales el objetivo fundamental fue recopilar información acerca

de todos los portales basados en CRM así como información teórica acerca del

CRM. Una vez con toda la información se tomó la elección de que solución

utilizar basándose en su coste.

1.3.2. Estudio del entorno de trabajo

Una vez elegido la solución CRM se procedió a elegir la plataforma móvil

y a estudiar de qué manera se podía realizar el proyecto. La solución requirió

encontrar un entorno de trabajo que fuese acorde: eclipse y el SDK Android.

Configuración y creación de este entorno de trabajo duró aproximadamente 10

días.

1.3.3. Aprendizaje de uso de las herramientas de trabajo

El aprendizaje no fue muy extenso debido a los conocimientos adquiridos

durante la carrera aunque no fue nulo. Al mismo tiempo que se creaba el

entorno, se aprendió a utilizarlo y a sacarle el mayor provecho con las

herramientas que proporciona (emulador, debugger, asistentes gráficos, etc.)

1.3.4. Desarrollo de la aplicación

La etapa más larga del proyecto fue el propio diseño de la aplicación. En

aproximadamente 3 meses fue desarrollada al completo aunque por motivos

académicos se alargó hasta 5 meses.

Esta etapa puede dividirse en varias subetapas:

Análisis y diseño de la aplicación.

Creación primer prototipo

Revisión errores

Page 10: APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRMbibing.us.es/proyectos/abreproy/12085/descargar_fichero/1... · capítulo, se dedica el último punto a describir los tipos de computación

PROYECTO FIN DE CARRERA GUILLERMO GUERRERO GONZÁLEZ 10

APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRM

Prototipo final

Depuración

1.3.5. Redacción de la memoria

Comprende la redacción del presente documento. Fue la última etapa en

empezar una vez la aplicación estuvo casi completa y se desarrolló en

aproximadamente 2 meses.

Page 11: APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRMbibing.us.es/proyectos/abreproy/12085/descargar_fichero/1... · capítulo, se dedica el último punto a describir los tipos de computación

PROYECTO FIN DE CARRERA GUILLERMO GUERRERO GONZÁLEZ 11

APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRM

1.4. Estructura del documento

Este documento esta estructurado en 7 capítulos y 2 anexos. En este

punto se describe la temática de cada capítulo y anexo así como el nombre de

cada uno de estos.

1) Introducción. Se explican las motivaciones y objetivos de este proyecto,

además de detallar el material empleado y las fases de desarrollo.

2) Customer Relationship Management. El segundo capítulo describe

ampliamente el concepto CRM, sus fundamentos y repercusiones, así

como sus funcionalidades, ventajas y riesgos. También se hace un repaso

al nacimiento y desarrollo de este tipo de aplicaciones. Para cerrar el

capítulo, se dedica el último punto a describir los tipos de computación

en la nube.

3) Estado del Arte. En el tercer capítulo se expone el estado del arte de

aquello que es relevante para este proyecto. Los puntos tratados son las

distintas soluciones CRM que existen en el mercado (gratuitas y de pago),

los servicios web y la plataforma Android.

4) Implementación. Aborda el diseño de la aplicación, desarrollando un

esquema y describiendo los principales objetivos y detalles. La interfaz de

usuario se mostrará mediante un diagrama de navegación simple

identificando los procesos involucrados.

5) Validación de la aplicación. Comprobación del funcionamiento de la

aplicación, con capturas de pantalla.

6) Conclusiones y líneas futuras. Por último, se exponen una serie de

conclusiones y las líneas de actuación futuras (ampliaciones) que

completen y mejoren la aplicación desarrollada. El hecho de que se haya

elegido una solución específica limita la expansión a otros proyectos

como se verá en la presente memoria.

7) Bibliografía. Se detallan los medios y recursos utilizados para la creación

de este proyecto.

Page 12: APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRMbibing.us.es/proyectos/abreproy/12085/descargar_fichero/1... · capítulo, se dedica el último punto a describir los tipos de computación

PROYECTO FIN DE CARRERA GUILLERMO GUERRERO GONZÁLEZ 12

APLICACIÓN ANDROID PARA ACCESO A SOLUCIÓN CRM

8) Anexo A. Instalación, configuración y preparación del entorno de trabajo

con el cual se ha desarrollado íntegramente este proyecto.

9) Anexo B. En este anexo se puede encontrar el código fuente de la

aplicación desarrollada, separada por paquetes y por tipo (XML y Java).