Está en la página 1de 5

1148 IEEE LATIN AMERICA TRANSACTIONS, VOL. 13, NO.

4, APRIL 2015

INMO: A Web Architecture For Real Estate


Search Systems
L. Martnez, J. Contreras, Member, IEEE, R. Mendoza and P. Torres

Abstract This paper describes the development of a real igual que incluir servicios de ayuda para los clientes y recibir
estate electronic marketplace based on platform J2EE. A novel alertas personalizadas segn las preferencias del usuario.
real estate search method based on Google Maps APIs is
included. We explain the approach we propose on a prototypical II. MARCO TERICO
implementation exhibiting the described functionality.
A. Arquitectura J2EE
Keywords software architecture, information systems, J2EE,
real estate, geo localization, marketplace, Google Maps. J2EE es una plataforma abierta de desarrollo empresarial
que define un estndar para el desarrollo y despliegue de
I. INTRODUCCIN aplicaciones empresariales multicapa con n-niveles, basadas
en servidor, distribuidas y en componentes. La plataforma
E L SECTOR inmobiliario, es un excelente escenario en el
desarrollo de soluciones informticas que apunten a una
innovacin en los procesos inmobiliarios a travs de
J2EE conforma un conjunto de especificaciones que proveen
de servicios y componentes en todos los niveles de una
arquitectura para la creacin de aplicaciones clientes y para
plataformas y aplicaciones dinmicas que generen crecimiento
desarrollar grandes aplicaciones distribuidas de servidor [9]-
al sector y promocin de sus servicios. Se ha comprobado, que
[12].
las operaciones inmobiliarias de alguna manera se originan
por medio de Internet, facilitando al cliente, una comunicacin
Una aplicacin J2EE est formada por un conjunto de
directa con el vendedor. Para conseguirlo, el diseo
componentes que se ensamblan y despliegan en contenedores
estructural, arquitectura e implementacin de la aplicacin
o piezas de software que ofrecen acceso a los servicios de los
debe estar bien pensado y ejecutado [1]-[4].
componentes desplegados dentro del contenedor. A su vez los
contenedores forman parte de los servidores de aplicaciones,
INMO es una propuesta arquitectnica para el
que implementan los servicios que ofrecen los contenedores a
modelamiento de aplicaciones del sector inmobiliario, bajo
los componentes.
una arquitectura cliente servidor, desarrollada en plataforma
Java Enterprise Edition, bajo las tecnologas: JSF (Java Server
Faces), JPA (Java Persistence API), ORM (Object-Relational B. API Google Map y Street View
Mapping Hibernate), y Spring Framework integrado al CMS Google Maps es un servicio de mapas al que se accede
Content Management System Drupal. desde un navegador web y dependiendo de la ubicacin
geogrfica, se pueden ver mapas bsicos o personalizados e
INMO como aplicacin web es un Marketplace informacin sobre negocios locales, como ubicacin, datos de
Inmobiliario que integra un sin nmero de agencias contacto, indicaciones sobre cmo llegar hasta ellos, etc. En
inmobiliarias en un mismo sitio. Estos entornos virtuales estos mapas se pueden ver al instante las reas adyacentes sin
facilitan procesos de negocio entre empresas y la relacin tener que esperar a que se carguen Imgenes por satlite con
entre compradores y vendedores [5], [6]. Tambin, es un datos de mapa superpuestos [13], [14].
CRM (Customer Relationship Management) que ayuda a las
relaciones entre agentes de ventas y clientes creando una Por su parte, Street View, es un complemento de los mapas
relacin directa de mercadeo, adems de las diferentes de Google, que permite hacer recorridos virtuales de 360
estadsticas que ayuda a los gestores de venta [7],[8]. grados por las calles de una ciudad. La aplicacin de
georeferenciacin, fue lanzada en 2007 con el propsito de
La arquitectura tambin integra herramientas para la complementar las plataformas Google Maps y Google Earth y
bsqueda de inmuebles como el API Street View y Google permitirles a los navegadores ver y recorrer las panormicas
Maps con el fin de disponer de una vista en 3D de la zona, al de espacios pblicos y atractivos tursticos. Street View, como
parte de Google Maps, permite ver durante un
L. Martnez, Corporacin Universitaria Rafael Nez, Cartagena, desplazamiento, las indicaciones de sentido de las vas, giros,
Colombia, laura.martinez@curnvirtual.edu.co. nombres y nmeros de las calles para ir de un lugar a otro de
J. Contreras, Corporacin Universitaria Rafael Nez, Cartagena,
Colombia, epcontrerasj@ieee.org. manera guiada [15].
R. Mendoza, Fundacin Universitaria Tecnolgico Comfenalco,
Cartagena, Colombia, rmendoza@tecnologicocomfenalco.edu.co. III. DESCRIPCIN DE LA ARQUITECTURA
P. Torres, Fundacin Universitaria Tecnolgico Comfenalco, Cartagena,
Colombia, ptorres@tecnologicocomfenalco.edu.co. Arquitectura es un concepto indispensable entre las
aplicaciones hoy en da y se refiere a la combinacin e
MARTNEZ et al.: INMO: A WEB ARCHITECTURE FOR 1149

integracin de mltiples ambientes y plataformas. Los


sistemas de informacin pueden moldearse segn el estilo de
arquitectura de niveles de abstraccin o capas.

INMO es una aplicacin web desarrollada en lenguaje Java


en una arquitectura N - Capas, donde los clientes se conectan
a la aplicacin a travs de una conexin HTTP o HTTPS. Para
la comunicacin entre objetos se utiliza el Framework Spring
en su versin 3.0 para la inyeccin de dependencia, lo cual
permite desacoplar las clases, componentes u objetos.

La comunicacin de la aplicacin se desarrolla por medio


de mensajes entre objetos, y como su arquitectura es N-Capas,
su comunicacin al nivel ms bajo es de tipo RMI (Java
Remote Method Invocation), el cual forma parte del entorno
estndar de ejecucin de Java y proporciona un mecanismo
simple para la comunicacin de servidores en aplicaciones Figura 1. Arquitectura INMO.
distribuidas.
En el modelo de negocio encontramos el componente de
INMO presenta un modelo de capas separadas, lo que la bsqueda inmobiliaria que muestra el estado de cada uno de
hace extensible y fcil de mantener. Cada capa tiene una los inmuebles y localizacin geogrfica, de acuerdo a distintos
funcin muy especfica y a travs de APIs existir una tipos de bsqueda: mapas, nombre de inmuebles, rango,
comunicacin entre la presentacin, la lgica de negocio y el inmobiliarias, cdigo, zona, tipo de negocio, etc.
acceso a datos. Este estilo se organiza de forma jerrquica,
donde cada capa ofrece servicios a la capa superior y la capa
inferior a los usuarios finales. El modelo bsico de la Consultar Por tipo de
Consultar Por rango
precio
Consultar Por
inmobiliaria

arquitectura propuesta se puede observar en la Fig. 1, en inmueble


Consultar Por tipo de

donde la comunicacin entre la parte cliente y servidor en este negocio

caso se puede considerar como contenedores de servicios.


Consultar Por
cantidad de

La Capa de presentacin representa la interfaz de usuario habitaciones

que maneja el cliente a travs de un navegador web, donde un


archivo JSP (Java Server Pages) muestra la informacin en el Consultar Por zona

navegador del cliente. En esta capa se utilizan Prime Faces


para controlar que componentes de la pgina actual se Usuario (Clientes )
Consultar Por ciudad
actualizarn y cules no; JSF con el fin de simplificar el
desarrollo de las interfaces de usuario en la aplicacin y
Managed Beans para manejar los datos y su instanciacin y Consultar Por cdigo

hacerlo disponible en las pginas JSP, adems de removerlo


cuando su scope haya salido de contexto. Bsqueda por mapa
Consultar Por
departamento
Cionsultar por mapa

Por su parte, la Capa de Negocio, contiene los


componentes de negocio reutilizables y rene todos los Figura 2. Caso de Uso de componente de Bsqueda.
aspectos del software que automatizan o apoyan los procesos
que llevan a cabo los usuarios y est compuesta por un Este componente de bsqueda se conecta con el API de
conjunto de servicios web y objetos de negocio utilizando el Google a travs de un Web Service consumiendo los recursos
Framework de aplicaciones Spring 3.0. El framework separa de la aplicacin y mostrando detalles del inmueble,
el acceso a datos de los aspectos relacionados con las principalmente informacin del entorno en el que est
transacciones, con el fin de permitir objetos en la capa de ubicado, informacin sobre qu hay y qu se ve alrededor,
negocio reutilizables que no dependan de ninguna estrategia paisaje y vistas de la calle, volumen de trfico, tiendas que hay
de acceso a datos. alrededor, estado del barrio, informacin sobre cmo se ve la
vivienda desde la calle, el estado de la fachada y de las aceras,
la altura del edificio y vista de la entrada desde la calle.
1150 IEEE LATIN AMERICA TRANSACTIONS, VOL. 13, NO. 4, APRIL 2015

Arquitectura. Dentro de las capas servidor y cliente se


realizaron pruebas unitarias a las clases generadas. Para esto
se utiliz la herramienta que automatiza este tipo de pruebas
para el lenguaje de programacin Java denominada JUnit.

Con el framework JUnit se realizaron las pruebas unitarias


al cdigo a travs de la ejecucin de clases Java para verificar
si el funcionamiento de cada una de los mtodos de las clases
que componen el proyecto se comporta como se espera. Se
Figura 3. Informacin general del inmueble solicitado en la bsqueda. definieron los casos de prueba principalmente para la
bsqueda de inmuebles y se compararon los resultados.
Despus de realizarles las pruebas, se observa que se
cumplieron con las especificaciones, por lo tanto JUnit
devuelve el mtodo de la clase lo que indica que el
procedimiento fue exitoso. A su vez, se hicieron pruebas de
integracin de los distintos componentes. Esta prueba fue
fundamental para un despliegue de la aplicacin exitoso, como
se muestra en la Fig. 5 y 6.

Figura 4. Ubicacin geogrfica utilizando la API de Google maps.

En la Capa de Acceso a Datos se utiliza tanto JPA como


DAO. Aqu los datos compartidos entre los componentes web
y las invocaciones de persistencia de la aplicacin se
mantienen en una base de datos MySQL, utilizando JPA para
accederla. Con DAO (Objetos de Acceso a Datos) se busca
aislar a la aplicacin de la tecnologa de persistencia Java
Figura 5. Modulo administrativo Ingreso de Inmuebles.
subyacente (API de Persistencia Java), la cual podra ser
JDBC, JDO, Enterprise JavaBeans, Hibernate, o cualquier otra
tecnologa de persistencia. Usando Objetos de Acceso de
Datos significa que la tecnologa subyacente puede ser
actualizada o cambiada sin cambiar otras partes de la
aplicacin.

Por ltimo, la capa de integracin est enfocada en permitir


la integracin entre una implementacin del aplicativo y
cualquier otro sistema de la organizacin. Esta incluye el
servicio de mensajera como mecanismo de comunicacin
utilizando Java Message Service (JMS) y Simple Object
Access Protocol (SOAP).

La aplicacin, se despliega bajo un servidor de aplicaciones Figura 6. Simulador de credito inmobiliario.


Glasfish, en el cual se configura un pool de conexiones para el
manejo de concurrencia. Este servidor de aplicaciones tiene Por ltimo, se hicieron pruebas de integracin alfa y beta
una manera peculiar de tratar los recursos JDBC: Tiene un realizadas por los usuarios expertos, con el fin de comprobar
pool de conexiones, y despus un JDBC Resources. Lo si el producto est listo para ser implantado para el uso
anterior, debido a que un pool de conexiones puede tener operativo en el entorno del usuario.
varios JDBC Resources.
V. CONCLUSIONES
IV. RESULTADOS El sector inmobiliario depende en gran medida que posibles
Para validar la arquitectura propuesta, se procedi a la clientes reciban la informacin que necesitan en el momento
implementacin de un software, que utiliza las herramientas, indicado y de la forma ms adecuada para captar su atencin.
tecnologas e infraestructura descrita en III, Descripcin de la
MARTNEZ et al.: INMO: A WEB ARCHITECTURE FOR 1151

J2EE puede ser la mejor opcin al escoger una tecnologa TABLA I. COMPARACIN CON OTROS SOFTWARE DEL SECTOR INMOBILIARIO.
sobre la cual desarrollar aplicaciones empresariales ya que
posee un alto grado de estructuracin adems de ofrecer CRITERIO INMO ZILLOW TRULIA
aplicaciones robustas, escalables, flexibles y portables. Con Bsqueda Si Si Si
este conjunto de tecnologas se construy el portal Mapas
inmobiliario, sistema que cuenta con un componente de Vista de la Si Si Si
bsqueda de inmuebles, con la capacidad de generar y mostrar Calle
resultados precisos y contextualizados de la informacin CRM Si Si Si
contenida en el sitio. Multimedia Imagen y Imagen Imagen
video
La principal ventaja del aplicativo INMO en comparacin Modelo de Realtor Publicidad Publicidad
con una pgina web de bsqueda de inmuebles, es que es un negocio Business
CRM en el cual el agente tiene una comunicacin directa con Solutions
los clientes de manera integrada. Adems permite guardar los Simuladores de Si No Si
resultados de las bsquedas de los clientes, con el fin de que crdito
las inmobiliarias y los agentes organicen sus bases datos de Informacin Si Si Si
posibles clientes potenciales tomando como referencia los demogrfica
intereses de estos. Responsive Si Si Si
Design
Por otra parte, permite posicionamiento de inmuebles
basados en algoritmos de puntuacin, cuenta con conexin Si analizamos la tabla anterior, podemos concluir que la
con Google Street View, de igual manera se debe tener en plataforma INMO se encuentra en un buen nivel
cuenta que en el aplicativo pueden existir diferentes arquitectnico teniendo en cuenta los sitios web inmobiliarios
inmobiliaria en un solo esquema y siempre se respeta la con los cuales fue comparado.
integridad de cada una, complementando todo lo anterior, la
carga de imgenes mediante comprensin lo cual permite Como trabajo futuro, se plantea el desarrollo en entorno
rapidez a la hora de subirlas, sumndole a todas estas la mvil nativo, dado que por ser una arquitectura n-capas y
ventaja de un simulador de crdito, que permite a los clientes adems de estar su capa de presentacin en JSF
tener como referencias cuales seran los diferentes valores de implementando el framework Primefaces es de fcil
las cuotas para crditos hipotecarios. escalabilidad al ambiente mvil, ya que Prime Faces permite
el desarrollo tanto en ambientes mviles como web.
Por su parte, el portal administrativo fue implementado a Actualmente ofrece una plantilla en Drupal basada en HTML5
travs de plataforma Java, el cual integra herramientas como Responsive Design.
Street View y Google Maps con el fin de disponer de una vista
en 3D de la zona, al igual que incluir servicios de ayuda para VI. AGRADECIMIENTOS
los clientes y recibir alertas personalizadas segn las
El grupo de investigadores agradece al Departamento
preferencias del usuario.
Administrativo de Ciencia, Tecnologa e Innovacin de
Colombia, COLCIENCIAS, por la financiacin de este
Este portal administrativo tambin cuenta con un completo
proyecto mediante el contrato No. 0099 2012.
mdulo de administracin de inmuebles, inmobiliarias,
clientes, agentes, entre otros datos que pueden ser gestionados
REFERENCIAS
de forma dinmica.
[1] V. Urbanaviien. A. Kaklauskas, E. K. Zavadskas, and M. Seniut, The
WebBased Real Estate Multiple Criteria Negotiation Decision Support
A continuacin se muestra una comparacin entre el System: A New Generation of Decision Support Systems, International
sistema INMO y dos de los sistemas de software para el sector Journal of Strategic Property Management, vol. 13, pp. 267-286. 2009.
[2] V. Urbanaviien. A. Kaklauskas, E. K. Zavadskas, and M. Seniut, The
inmobiliario ms importantes del mundo: Zillow
WebBased Real Estate Multiple Criteria Negotiation Decision Support
(http://www.zillow.com/) y Trulia (http://www.trulia.com/). System: A New Generation of Decision Support Systems, International
Journal of Strategic Property Management, vol. 13, pp. 267-286. 2009.
[3] B. Resch and B. Zimmer, User Experience Design in Professional Map-
Based Geo-Portals. International Journal of Geo-Information, vol. 2, pp.
1015-1037. 2013.
[4] M. Wang and A. Xu. Architecture and Implement for the Real Estate
Surveying Business System. Advances in information Sciences and
Service Sciences(AISS), vol 5, no. 2, pp. 678-684. 2013.
[5] J. Guo, L. Xu, Z. Gong, Ch-P. Che and S. Chaudhry, Semantic
Inference on Heterogeneous E-Marketplace Activities. IEEE Trans. on
Systems, Man, and Cybernetics. vol. 42, no. 2, pp. 316-330. 2012.
1152 IEEE LATIN AMERICA TRANSACTIONS, VOL. 13, NO. 4, APRIL 2015

[6] S.Hariharaputhiran, Challenges and Opportunities of E-Commerce,


International Journal of Marketing, Financial Services & Management
Research, vol. 1, no. 3, pp. 98-1o8, 2012.
[7] F. Maroofi, B. M. Aliabadi, H. Fakhri and Hadikolivand. Effective
Factors on CRM Development. Asian Journal of Business Management,
vol. 5, no. 1, pp. 52-59. 2013
[8] D. Das and P. Kundu. Applications of Dynamic Program Analysis in a
CRM Process: A Futuristic Concept. International Journal of Scientific
and Research Publications, vol. 2, no. 4, pp. 1-13. 2012.
[9] R. Udayakumar, .K.P. Thooyamani and V. Khanaa. A Comparison of
J2EE and .NET as Platforms for Developing E-Government
Applications. International Journal of Engineering Research and
Development, vol 7, no. 1, pp. 116-121. 2013.
[10] H. Li-Xia, Z. Feng-Qing, J. Shu-Hong and M. Chao-Hua, Design and
Analysis of the Third-party Logisitics Management System Based on
J2EE, Advanced Engineering Forum, vol. 6, pp. 491-495. 2012.
[11] O. Morariu, C. Morariu and T. Borangiu, Transparent Real Time
Monitoring for Multi-tenant J2EE Applications, Journal of Control
Engineering and Applied Informatics, vol.15, no.4 pp. 37-46, 2013.
[12] D. Krafzig, K. Banke, D. Slama, Enterprise SOA Service-Oriented
Architecture Best Practices. Prentice Hall. April 2005.
[13] Sh. Hu, and T. Dai. Online Map Application Development Using Google
Maps API, SQL Database, and ASP.NET. International Journal of
Information and Communication Technology Research, vol. 3, no. 3, pp.
102-110, 2013.
[14] Z. Yu-lin and F. Zhong-liang, Release of spatial information based on
Google Maps API, Journal of Computer Applications, vol. 5, pp. 1450-
1452, 2011.
[15] V. Ganesh and L.G.Malik. Text Extraction From Big Data Images.
International Journal of Advanced Research, vol 2, no. 5, pp. 844-854.
2014.

Laura Martnez es Ingeniera de Sistemas de la universidad


de San Buenaventura y Magister en Ingeniera de Sistemas de
la Universidad Tecnolgica de Bolvar. Entre sus reas de
inters se encuentran la ingeniera de software, Computacin
mvil, metodologas agiles en el desarrollo de software e
ingeniera ontolgica.

Juan Contreras. Se gradu de Ingeniero Electricista en 1987


en la Universidad Tecnolgica de Bolvar y como especialista
en Automatizacin Industrial en 1998 en la misma
universidad. En el ao 2008 obtuvo el ttulo de PhD en el
Instituto Superior Politcnico Jos Antonio Echeverra, en La
Habana, Cuba. Su campo de inters incluye la Identificacin
de Sistemas, Control Inteligente y el desarrollo de mtodos de modelacin y
control difusos.

Raynel Mendoza es Ingeniero de Sistemas de la Fundacin


Universitaria Tecnolgico Comfenalco, de Cartagena,
Colombia, y Magister en Software Libre de la Universidad
Politcnica de Catalua, Espaa, y actualmente adelanta
estudios de Doctorado en Tecnologa en la Universidad de
Girona, Espaa. Entre sus reas de inters se encuentran la
ingeniera de software, software educativo, ingeniera ontolgica y las
tecnologas para la gestin de procesos de negocios.

Pedro Torres. Se gradu de Ingeniero de Sistemas en la


Fundacin Universitaria Tecnolgico Comfenalco en el ao
2012. Su campo de inters ha sido el desarrollo de software.

También podría gustarte