herramienta de gestión inmobiliaria - IIT

Anuncio
Autorizada la entrega del proyecto del alumno:
José Javier Bayo Vázquez
………………………………………………….
EL DIRECTOR DEL PROYECTO
Luis Reina Juliá
Fdo.: …………………… Fecha: ……/……/……
Vº Bº del Coordinador de Proyectos
David Contreras Bárcena
Fdo.: …………………… Fecha: ……/……/……
UNIVERSIDAD PONTIFICIA COMILLAS
ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO EN INFORMÁTICA
PROYECTO FIN DE CARRERA
HERRAMIENTA DE GESTIÓN
INMOBILIARIA
AUTOR:
José Javier Bayo Vázquez
MADRID, septiembre de 2008
Herramienta para gestión inmobiliaria
Agradecimientos
A mi familia, por la el apoyo y la confianza depositada a lo largo de toda la carrera.
A mis compañeros de universidad, que mucho me han ayudado a lo largo de la
carrera.
A la universidad y a sus profesores, por la ilusión y ganas que demuestran en la
formación profesional y humana de los alumnos.
A los encargados de supervisar el proyecto, coordinadores y director, por su apoyo
y ánimo para afrontar dicha tarea.
A todos vosotros, gracias.
I
Herramienta para gestión inmobiliaria
Resumen
El proyecto consiste en el diseño, desarrollo e implantación de un sistema que
sirva de apoyo a las agencias inmobiliarias en la tarea de gestión de los inmuebles y de
los empleados.
El proyecto consiste en tres módulos muy bien diferenciados, el primer módulo es
el módulo de inmuebles, en este apartado se encuentran recogidas todas la operaciones
relacionadas con los inmuebles, como son el alta, baja y modificación de los distintos
inmuebles. El segundo módulo es el módulo de empleados, en el que se encuentran
agrupadas las operaciones sobre los empleados, con las que poder realizar el alta, baja y
modificación de los empleados. Por último, el tercer módulo es el modulo de informes, en
el que se podrán obtener una serie de informes sobre inmuebles y empleados.
Se trata de un sistema cliente-servidor donde en un servidor instalado en la
agencia inmobiliaria atiende a múltiples clientes instalados en los puestos de escritorio o
en dispositivos móviles.
En general, y debido a la mayor facilidad de integración en los sistemas a
implantar, las aplicaciones se han desarrollado con Herramientas de Microsoft. Así pues,
se ha trabajado con el Framework de .NET bajo la herramienta Visual Studio 2005 para
construir las siguientes aplicaciones:

GestInmob: Se trata de la aplicación implementada para los puestos de
escritorio.

GestInmobMobile: Se trata de la aplicación implementada para los
dispositivos móviles.
Por último, se ha utilizado y profundizado en las técnicas y metodologías de
ingeniería del software, especialmente en la orientación a objetos así como en otros
conocimientos que se han visto a lo largo de la carrera como Estructuras de datos,
II
Herramienta para gestión inmobiliaria
Transmisión y Tecnologías de Bases de Datos, Sistemas Operativos, Redes, Métodos
algorítmicos, Seguridad Informática y Gestión de Proyectos Informáticos.
III
Herramienta para gestión inmobiliaria
Abstract
The project involves the design, development and deployment of a system to
support real estate agencies in the task of managing the buildings and employees.
The project consists of three modules very distinct, the first module is the form of
buildings in this section are listed all the operations related to buildings, such as high, low
and modification of individual buildings. The second module is the form of employees,
which are grouped operations on employees, which can make the high, low and
modification of employees. The third module is the module reports, which may obtain a
series of reports on buildings and employees.
This is a client-server system where a server installed in the real estate agency
serves multiple clients installed in positions of desktop or on mobile devices. In general,
and because of the ease of integration into systems to implement, applications have been
developed with Microsoft tools. Thus, it has worked with the Framework. NET tool under
the Visual Studio 2005 to build the following applications:
GestInmob: This is the application implemented for posts desktop.
GestInmobMobile: This is the application implemented for mobile devices.
Lastly, has been used and deepened in techniques and methodologies for software
engineering, especially in the object oriented as well as other skills that have been seen
along the career structures as data transmission and Technology Bases Data operating
systems, networks, algorithmic methods, Information Security and Project Management
Information.
IV
Herramienta para gestión inmobiliaria
Índice
1.- Introducción ................................................................................................................ 1
1.1.- Motivación ............................................................................................................ 1
1.2.- Objetivos ............................................................................................................... 2
1.3.- Descripción del sistema a desarrollar ................................................................ 3
1.3.1.- Aplicación de escritorio ................................................................................ 3
1.3.2.- Aplicación para dispositivos móviles .......................................................... 5
2.- Herramientas y tecnología ......................................................................................... 5
2.1.- Introducción ......................................................................................................... 5
2.2.- Tecnología .NET ................................................................................................... 6
2.3.- Internet Information Services (IIS) ...................................................................... 7
2.4.- Servicios web (WebServices) ............................................................................ 10
2.5 Microsoft SQL Server ........................................................................................... 12
3.- Metodología de trabajo............................................................................................. 12
3.1.- Análisis de requerimientos ................................................................................ 12
3.2.- Diseño externo del sistema ............................................................................... 13
3.3.- Diseño interno del sistema ................................................................................ 13
3.4.- Implementación, pruebas e Implantación ........................................................ 14
4.- Análisis de requerimientos ...................................................................................... 15
4.1.- Modelo de dominio............................................................................................. 16
4.1.1.- Diagrama del modelo de dominio ............................................................... 16
4.1.2.- Glosario de clases y relaciones .................................................................. 17
4.2.- Modelo de casos de uso .................................................................................... 20
4.2.1.- Diagrama de casos de uso .......................................................................... 22
4.2.2.- Descripción detallada de los casos de uso ............................................... 26
V
Herramienta para gestión inmobiliaria
4.2.3.- Descripción de datos................................................................................... 41
5.- Diseño Externo del sistema ..................................................................................... 43
5.1.- Arquitectura del sistema .................................................................................... 43
5.2 Diagrama de paquetes ......................................................................................... 45
5.2.1 Diagrama de paquetes externo ..................................................................... 45
5.2.2 Diagrama de paquetes – primer nivel ........................................................... 45
5.2.3 Subsistemas ................................................................................................... 47
6.- Diseño interno del sistema ...................................................................................... 49
6.1.- Diseño de la interfaz de usuario ........................................................................ 49
6.2.- Diseño subsistema GestInmob y GestInmobMobile ....................................... 50
6.2.1.- Autenticación ............................................................................................... 50
6.2.2 Menú principal................................................................................................ 51
6.2.3 Módulo Inmuebles ......................................................................................... 52
6.2.4 Módulo Empleados ........................................................................................ 62
6.2.5 Módulo informes ............................................................................................ 69
6.3.- Modelo de datos ................................................................................................. 69
6.3.1.- Modelo conceptual de datos ....................................................................... 70
6.3.2 Acceso a datos............................................................................................... 73
6.4.- Diagrama de clases ............................................................................................ 74
6.5.- Diagrama del servicioWeb ................................................................................. 76
7. Implementación y pruebas ....................................................................................... 77
7.1 Implementación .................................................................................................... 77
7.2 Pruebas ................................................................................................................. 83
8. Planificación y presupuesto...................................................................................... 83
8.1 Planificación ......................................................................................................... 83
8.2 Presupuesto.......................................................................................................... 85
VI
Herramienta para gestión inmobiliaria
9. Conclusiones y evolución del sistema ..................................................................... 90
9.1 Conclusiones ........................................................................................................ 90
9.2 Evolución del sistema .......................................................................................... 90
Bibliografía ..................................................................................................................... 92
Anexo I: Manual de Usuario de la aplicación de escritorio ......................................... 93
Anexo II: Manual de Usuario de la aplicación para dispositivos móviles ................ 116
VII
Automatización de la gestión de la toma de
medidas para una inmobiliaria
1.- Introducción
1.1.- Motivación
Una de las principales razones por las que se ha escogido este proyecto es el
interés personal por el mundo de las nuevas tecnologías. Si bien las PDA ya llevan
unos años en el mercado, no cabe la menor duda de que ha sido durante este último
cuando por fin se ha popularizado y extendido su uso. El hecho de que los precios de
estos dispositivos sigan bajando hace presagiar que dentro de muy poco tiempo el uso
de una PDA será tan común como lo es ahora el del teléfono móvil.
Cada vez un mayor número de PDA que salen al mercado incorporan la tecnología
inalámbrica 802.11. Esta tecnología permite conectarse a otros dispositivos, e incluso
a Internet, sin necesidad de cables y desde cualquier lugar. Si a esto se le une la
enorme movilidad que proporcionan las PDA gracias a su pequeño tamaño y escaso
peso, se tiene una perfecta herramienta de trabajo que puede llevarse en el bolsillo en
todo momento.
Uno de los principales problemas que se encuentra a la hora de desarrollar
aplicaciones para PDA es la escasa cantidad de memoria y reducida capacidad de
procesamiento de que disponen debido a su reducido tamaño. Por ello se hace
necesaria la utilización de aplicaciones y entornos de desarrollo especialmente
diseñados para este tipo de dispositivos. Así, por ejemplo, prácticamente cualquier
aplicación necesita acceder a una base de datos. Sin embargo las limitaciones antes
mencionadas de estos dispositivos hacen imposible alojar en ellos un Sistema Gestor
de Bases de Datos completo. Por esta razón existen soluciones orientadas a este tipo
de dispositivos móviles y que proporciona casi toda la potencia de los gestores de
bases de datos completos.
La elección de una inmobiliaria para implantar este proyecto se debe a que este
modelo de negocio se presta en gran medida a obtener los beneficios que proporciona
la movilidad de las PDA. Los empleados de las inmobiliarias que van a los pisos a
tomar las sustituirán sus papeles por una PDA y las medidas y características de los
1
Automatización de la gestión de la toma de
medidas para una inmobiliaria
inmuebles
llegarán inmediatamente a la cocina haciendo uso de la tecnología
UMTS/GPRS, utilizando para ello las redes GSM.
1.2.- Objetivos
El principal objetivo del proyecto consiste en crear un sistema que agilice la gestión
de una inmobiliaria.
La aplicación que se instalará en las PDA será sencilla e intuitiva, de manera que
los empleados no necesiten apenas tiempo para aprender a manejarla con soltura.
Por otro lado se quiere dotar a la aplicación de la posibilidad de gestionar la
introducción y gestión de los distintos tipos de inmuebles por los empleados mediante
el uso de dispositivos móviles y puestos de escritorio.
Otro objetivo es conseguir dotar a la aplicación de un servicio de gestor de
empleados, mediante el cual se pueda gestionar todas las operaciones de altas, bajas
y modificaciones de empleados.
También se deberá dotar a la aplicación de un módulo que permita a los
empleados obtener informes sobre los inmuebles.
Será necesario realizar una gestión de los clientes que anuncien o hayan
anunciado alguna vez un inmueble en la agencia.
Como objetivos secundarios se citan los siguientes:
Con este proyecto también se quiere conseguir conocer a fondo la tecnología
empleada por las PDA. Una parte importante de este objetivo consiste en investigar
las posibilidades que ofrece el estándar UMTS, dentro del mundo de los dispositivos
móviles. Esta será la tecnología empleada para mantener la comunicación entre las
PDA y el servidor con las bases de datos.
2
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Durante el desarrollo del proyecto se mejorarán los conocimientos personales en la
programación orientada a objetos, concretamente en el lenguaje C#.
Puesto que va a seguirse una metodología de desarrollo de software orientado a
objetos, también se profundizará en la utilización de las técnicas que son empleadas
en este tipo de metodología y que han sido aprendidas durante la carrera (casos de
uso, diagramas de clase, etc.).
1.3.- Descripción del sistema a desarrollar
El sistema que va a desarrollarse a lo largo de este proyecto consiste en un
sistema para la gestión de una inmobiliaria que ayude a mejorar la toma de medidas
optimizando el tiempo y esfuerzo de sus empleados. Al lograr una optimización en el
tiempo que se tarda en tomar las medidas y características del inmueble antes se
puede exponer la información en las oficinas y antes puede llegar un comprador
interesado en el inmueble.
El sistema consiste en dos aplicaciones diferentes pero complementarias:
- Aplicación de escritorio.
- Aplicación para dispositivos móviles.
1.3.1.- Aplicación de escritorio
Mediante esta aplicación los usuarios con perfil de administrador podrán acceder a
toda la información para la gestión de la inmobiliaria y modificarla según sus
necesidades. Más concretamente podrán realizar altas, bajas y modificaciones de los
empleados de la inmobiliaria, así como sobre los inmuebles.
El resto de usuarios que no tienen perfil de administrador podrán acceder a toda la
información de los inmuebles, pudiendo éstos realizar el alta, baja y modificación de
los distintos inmuebles, así como la obtención de informes en temas concernientes a
los inmuebles.
3
Automatización de la gestión de la toma de
medidas para una inmobiliaria
De los empleados interesa saber su código de identificación, nombre, apellidos,
domicilio, teléfono de contacto, dirección de email, DNI, salario y categoría
(administrador, empleador de oficina, empleado que realiza el informe sobre los
distintos inmuebles). La categoría del empleado determina a qué funcionalidades del
sistema puede acceder. Además cada empleado tendrá un nombre de usuario y
contraseña para registrarse en el sistema.
La información que se quiere mantener de los distintos inmuebles es: un código de
identificación, finalidad, tipo de inmueble, dirección, planta, tipo, dormitorio, baños, m2,
extras, precio.
Los administradores tendrán acceso a una serie de informes que serán su
herramienta para valorar la marcha del negocio. Estos informes son de tres tipos:
1. Informe acerca de los empleados: proporciona una idea de la productividad de
cada empleado de la inmobiliaria mostrando el número total de inmuebles visitados
para la toma de medidas. Se considera una visita por cada inmueble visitado con
diferente dirección, es decir, si un empleado a de visitar varias veces el mismo
inmueble se le considera como una única visita.
2. Informe sobre los distintos inmuebles: muestra por cada inmueble sus
características de forma que desde la oficina se pueda llevar una relación de todos los
inmuebles dados de alta en la inmobiliaria. En este informe también se presenta un
cálculo de la duración media desde que el inmueble se anuncia en la oficina hasta que
se vende, pudiendo obtener evidencia sobre la valía de los empleados que visitan los
inmuebles con los posibles compradores.
3. Informe acerca de los ingresos de la inmobiliaria: se detallan los ingresos
obtenidos por la inmobiliaria durante los últimos doce meses. Además se calcula los
ingresos totales desde que se implantó el sistema, los ingresos medios mensuales y
los ingresos medios por inmueble.
4. Informe individual de cada inmueble: Según se reciba la información
correspondiente a un nuevo inmueble se creará un informe en el que se muestre la
información maquetada de forma que pueda ser expuesta inmediatamente en el
4
Automatización de la gestión de la toma de
medidas para una inmobiliaria
escaparate de la oficina, o si la oficina tiene monitores en los que se muestra la
información pues la información se mostrará en ellos.
1.3.2.- Aplicación para dispositivos móviles
Esta es la aplicación que manejarán los empleados que visitan los distintos
inmuebles para tomar las medidas y enviarlas a la oficia. Permitirá crear una ficha del
inmueble y asignar valores a las distintas características del inmueble.
De los inmuebles hay que almacenar: un código de identificación, finalidad, tipo de
inmueble, dirección, planta, tipo, dormitorio, baños, m2, extras, precio.
Esta aplicación se conectará mediante un servicio web a la dirección dónde se
encuentra el servidor y le enviará la información del inmueble.
El código de identificación estará formado por el identificador del empleado que ha
realizado las mediciones más un número de 5 cifras que irá variando en uno más su
valor según el empleado vaya visitando más inmuebles. Por ejemplo, el código del
empleado que realiza la visita al inmueble es: 3543 y el empleado ha visitado 113
inmuebles, el número de creación de la ficha del siguiente inmueble será:
CodInm=354300114, el siguiente que visite será: CodInm=354300115.
Se entiende por finalidad como el fin que tiene el cliente sobre la vivienda, es decir,
si éste tiene interés en el alquiler o la compra del inmueble.
2.- Herramientas y tecnología
2.1.- Introducción
Para el desarrollo de este proyecto se van ha utilizar las últimas herramientas,
estándares y protocolos disponibles en desarrollo de aplicaciones Web distribuídas
proporcionadas por Microsoft y por la industria de desarrollo de software.
5
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Se ha elegido la tecnología de desarrollo de aplicaciones de Microsoft por ser la
tecnología con la que, por parte de la empresa, se está más familiarizado, que ya
utiliza esta tecnología en sus sistemas.
Se distinguirá entre plataformas de desarrollo y producción existiendo diferentes
versiones de las herramientas de software utilizadas en dichas plataformas.
En desarrollo se trabajará con una máquina con sistema operativo Windows XP o
Windows Vista, con versión de Internet Information Server 5.1 o 7.0 respectivamente y
con la versión gratuita del gestor de base de datos SQL Server, Sql Server Express
Edition que dispone de una capacidad de 2 GB.
En Producción se utilizará un servidor con Windows 2003 Server, que lleva
instalada la versión 6.0 del Internet Information Server y la versión completa del SQL
Server.
Para el diseño de la aplicación se utilizará Lenguaje Unificado de Modelado (UML)
y para el desarrollo se utilizará el entorno proporcionado por Visual Studio 2005 con el
lenguaje de programación C#.
Se realiza a continuación una introducción a todas estas herramientas.
2.2.- Tecnología .NET
.NET es un proyecto de Microsoft para crear una nueva plataforma de desarrollo
de software con énfasis en transparencia de redes, con independencia de plataforma y
que permita un rápido desarrollo de aplicaciones. Basado en esta plataforma,
Microsoft intenta desarrollar una estrategia horizontal que integre todos sus productos,
desde el Sistema Operativo hasta las herramientas de mercado.
.NET podría considerarse una respuesta de Microsoft al creciente mercado de los
negocios en entornos Web, como competencia a la plataforma Java de Sun
Microsistems.
A largo plazo Micorsoft pretende reemplazar el API Win32 o Windows API con la
plataforma .NET. Esto es debido a que el API Win32 fue desarrollada sobre la marcha,
careciendo de documentación detallada, uniformidad y cohesión entre sus distintos
componentes, provocando múltiples problemas en el desarrollo de aplicaciones para el
sistema operativo Windows. La plataforma .NET pretende solventar la mayoría de
estos problemas proveyendo un conjunto único y expandible con facilidad, de bloques
6
Automatización de la gestión de la toma de
medidas para una inmobiliaria
interconectados, diseñados de forma uniforme y bien documentados, que permitan a
los desarrolladores tener a mano todo lo que necesitan para producir aplicaciones
sólidas.
Con esta plataforma Microsoft incursiona de lleno en el campo de los Servicios
Web y establece el XML como norma en el transporte de información en sus productos
y lo promociona como tal en los sistemas desarrollados utilizando sus herramientas.
.NET intenta ofrecer una manera rápida y económica pero a la vez segura y
robusta de desarrollar aplicaciones - o como la misma plataforma las denomina,
soluciones - permitiendo a su vez una integración más rápida y ágil entre empresas y
un acceso más simple y universal a todo tipo de información desde cualquier tipo de
dispositivo.
2.3.- Internet Information Services (IIS)
Para la construcción del sistema se requiere de un servidor de Internet que de
servicio a los subsistemas del presente proyecto, concretamente, a las aplicaciones
instaladas en las dispositivos móviles y como a las aplicaciones instaladas en los
puestos de escritorio instalados en la agencia. El servidor habilitado a tal efecto es el
Internet Information Server, con lo cual será necesario adaptarse a sus posibilidades.
Se deberá de configurar un sitio web que contenga los servicios web que den soporte
a los subsistemas y, asimismo, establecer el sistema de autenticación para controlar el
acceso a los mismos.
IIS, es una serie de servicios para los ordenadores que funcionan con Windows.
Originalmente era parte del Option Pack para Windows NT. Luego fue integrado en
otros sistemas operativos de Microsoft destinados a ofrecer servicios, como Windows
2000 o Windows Server 2003. Windows XP Profesional incluye una versión limitada de
IIS. Los servicios que ofrece son: FTP, SMTP, NNTP y HTTP/HTTPS.
Este servicio convierte a un ordenador en un servidor de Internet o Intranet es
decir que en las computadoras que tienen este servicio instalado se pueden publicar
páginas Web tanto local como remotamente (servidor Web).
7
Automatización de la gestión de la toma de
medidas para una inmobiliaria
El servidor Web se basa en varios módulos que le dan capacidad para procesar
distintos tipos de páginas, por ejemplo Microsoft incluye los de Active Server Pages
(ASP) y ASP.NET. También pueden ser incluidos los de otros fabricantes, como PHP
o Perl.
La versión actual de IIS es la 6.0 para Windows Server 2003 e IIS 5.1 para
Windows XP Profesional. IIS 5.1 para Windows XP es una versión compacta del IIS
que soporta solo 10 conexiones simultaneas y solo un sitio Web, aunque puede ser
extensible mediante el manejo de AdminScripts instaladas en la ruta del servidor. En el
presente proyecto se trabajará con las versiones actuales mencionadas, IIS 5.1 para el
entorno de desarrollo e IIS 6.0 para el entorno de producción.
IIS gestiona sitios Web. Un sitio Web (en inglés: Website) es un conjunto de
páginas Web, típicamente comunes a un dominio en Internet o subdominio en la World
Wide Web en Internet.
Una página Web es un documento HTML/XHTML accesible generalmente
mediante el protocolo HTTP de Internet.
A las páginas de un sitio Web se accede desde una URL raíz común llamada
portada, que normalmente reside en el mismo servidor físico. Las URLs organizan las
páginas en una jerarquía, aunque los hiperenlaces entre ellas controlan cómo el lector
percibe la estructura general y cómo el tráfico Web fluye entre las diferentes partes de
los sitios.
Los sitios Web están escritos en HTML (Hyper Text Markup Language), o
dinámicamente convertidos a éste y se acceden usando un cliente http, navegador
Web o cualquier otro. Los sitios Web pueden ser visualizados o accedidos desde un
abanico de dispositivos con disponibilidad de Internet como computadoras personales,
computadores portátiles, PDAs y teléfonos móviles.
En IIS se pueden configurar los sitios Web para que se acceda a ellos a través de
un puerto TCP diferente al puerto TCP por defecto para los servidores Web, los tipos
MIME que son reconocidos, la versión del ASP.NET que se utiliza así como una serie
de parámetros propios de un sitio Web: (Control de acceso, seguridad, configuración
ssl…).
Al configurar los sitios Web debe indicar los directorios que contienen los
documentos que desea publicar. El servidor Web no puede publicar documentos que
no están en los directorios especificados.
8
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Cada sitio Web o FTP debe tener un directorio particular. El directorio particular es
la ubicación central de las páginas publicadas. En este caso, por seguridad del sitio
Web, conviene crear un directorio particular diferente al que viene por defecto.
Uno de los parámetros configurables corresponde a la seguridad de acceso a un
sitio web o a un directorio particular del mismo. Se accede (IIS 7.0) desde las
propiedades del sitio web o directorio y ofrece varias posibilidades:
Autenticación anónima: cuando se activa el acceso anónimo, no se
requieren credenciales de usuario autenticado para tener acceso al sitio. El
uso más adecuado de esta opción es para conceder acceso público a la
información que no requiere seguridad. Cuando un usuario intenta
conectarse al sitio Web, IIS asigna la conexión a la cuenta IUSER_
nombreDeEquipo, donde nombreDeEquipo es el nombre del servidor en el
que se está ejecutando IIS. De forma predeterminada, la cuenta IUSER_
nombreDeEquipo es miembro del grupo Invitados. Este grupo tiene
restricciones de seguridad, impuestas por los permisos del sistema de
archivos NTFS, que indican el nivel de acceso y el tipo de contenido que
está disponible para los usuarios públicos. Se puede configurar la cuenta
de Windows que se utiliza para el acceso anónimo.
Autenticación básica: la autenticación básica requiere un Id. de usuario y
una contraseña, y proporciona un nivel bajo de seguridad. Las credenciales
del usuario se envían en texto sin cifrar a través de la red. Este formato
proporciona un nivel bajo de seguridad, porque casi todos los analizadores
de protocolo pueden leer la contraseña. Sin embargo, es compatible con el
número más amplio de clientes Web. El uso más adecuado de esta opción
es para conceder acceso a información con poca o ninguna necesidad de
privacidad.
Autenticación de Windows: anteriormente se denominaba NTLM o
autenticación por desafío/respuesta de Windows NT. Este método envía la
información de autenticación del usuario por la red en forma de vale de
Kerberos y proporciona un alto nivel de seguridad. La autenticación de
Windows integrada utiliza la versión 5 de Kerberos y la autenticación NTLM.
9
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Para emplear este método, los clientes deben utilizar Microsoft Internet
Explorer 2.0 o posterior. Adicionalmente, la autenticación de Windows
integrada no se admite sobre conexiones de proxy HTTP. El uso más
adecuado de esta opción es para una intranet, donde el usuario y el
servidor Web están en el mismo dominio, y los administradores pueden
asegurarse de que todos los usuarios utilizan Internet Explorer 2.0 o
posterior.
Autenticación mediante formularios: La autenticación de formularios
hace referencia a un sistema en el que la solicitudes no autenticadas se
redirigen a un formulario de Lenguaje de marcado de hipertexto (HTML) en
el que los usuarios escriben sus credenciales. Una vez que el usuario
proporciona las credenciales y envía el formulario, la aplicación autentica la
solicitud y el sistema emite un vale de autorización en el formulario de una
cookie. Esta cookie contiene las credenciales o una clave para readquirir la
identidad. Las solicitudes subsiguientes del explorador automáticamente
incluyen la cookie.
Suplantación de ASP.NET: Corresponde más que a un método alternativo
de autenticación o un añadido en el proceso de autenticación de
aplicaciones web. El escenario de suplantación se basa en la autenticación
de Servicios de Microsoft Internet Information Server (IIS) y en la seguridad
de acceso a archivos de Microsoft Windows para minimizar la programación
de la seguridad en la propia aplicación ASP.NET. El flujo de datos se
muestra en la ilustración siguiente.
2.4.- Servicios web (WebServices)
Los Web services son componentes software que permiten a los usuarios usar
aplicaciones de negocio que comparten datos con otros programas modulares, vía
Internet. Son aplicaciones independientes de la plataforma que pueden ser fácilmente
publicadas, localizadas e invocadas mediante protocolos Web estándar, como XML,
SOAP, UDDI o WSDL. El objetivo final es la creación de un directorio online de Web
10
Automatización de la gestión de la toma de
medidas para una inmobiliaria
services, que pueda ser localizado de un modo sencillo y que tenga una alta
fiabilidad.
La posibilidad de modularidad y la interconexión de aplicaciones hace que sean los
servicios web la solución a las comunicaciones entre el servidor y los subsistemas del
presente proyecto.
La funcionalidad de los protocolos empleados es la siguiente:
XML( eXtensible Markup Language): Un servicio Web es una aplicación
Web creada en XML.
WSDL (Web Services Definition Service): Este protocolo se encarga de
describir el Web service cuando es publicado. Es el lenguaje XML que los
proveedores emplean para describir sus Web services.
SOAP (Simple Object Access Protocol): Permite que programas que corren
en diferentes sistemas operativos se comuniquen. La comunicación entre
las diferentes entidades se realiza mediante mensajes que son rutados en
un sobre SOAP.
UDDI (Universal Description Discovery and Integration): Este protocolo
permite la publicación y localización de los servicios. Los directorios UDDI
actúan como una guía telefónica de Web services.
Aunque la idea de la programación modular no es nueva, el éxito de esta
tecnología reside en que se basa en estándares conocidos en los que ya se tiene una
gran confianza, como el XML. Además, el uso de los Web services aporta ventajas
significativas a las empresas.
El principal objetivo que se logra, es la interoperabilidad y la integración. Mediante
los Web services, las empresas pueden compartir servicios software con sus clientes y
sus socios de negocio. Esto ayudará a las compañías a escalar sus negocios,
reduciendo el coste en desarrollo y mantenimiento de software, y sacando los
productos al mercado con mayor rapidez.
La integración de aplicaciones hará posible obtener la información demandada en
tiempo real, acelerando el proceso de toma de decisiones.
11
Automatización de la gestión de la toma de
medidas para una inmobiliaria
2.5 Microsoft SQL Server
Gestor de base de datos relacional. El lenguaje que utiliza es Transact – SQL, que
es el derivado del estándar SQL. Se suele aplicar en bases de datos de PYMES,
aunque de cinco años a ahora se ha incrementado su uso en grandes bases de datos
empresariales. El uso de T – SQL añade principalmente sintaxis para poder hacer uso
de procedimientos almacenados.
Cumple con los requerimientos ACID transaccionales (Atómico, Consistente,
Aislado y Durable).
La comunicación la ejerce en el nivel de aplicación con un
protocolo llamado TDS (Tabular Data Stream) aunque también soporta ODBC (Open
Database Conectivity), JDBC para Java y protocolos de servicios Web (SOAP). En el
nivel de transporte es necesario habilitar el protocolo TCP/IP mediante la herramienta
de configuración de SQL.
3.- Metodología de trabajo
Para la realización del proyecto se va a seguir la metodología de desarrollo de
software orientada a objetos, esta consta de las siguientes fases:
3.1.- Análisis de requerimientos
El objetivo de esta fase o etapa es alcanzar un conocimiento suficiente del
sistema, definiendo las necesidades, problemas y requisitos del usuario. A lo largo de
esta etapa se llevarán a cabo las siguientes actividades:
1. Desarrollar el modelo de dominio
El modelo de dominio es una herramienta de comunicación fundamental que obliga
a los desarrolladores y usuarios a pensar formalmente sobre el problema, les permite
validar su comprensión y establece el vocabulario del espacio del problema. Junto con
los requerimientos, constituye la entrada más importante para el diseño.
Para representar el modelo de dominio se utilizará los diagramas de clase UML y
posteriormente se describirá las clases y relaciones que aparecen en ellos.
12
Automatización de la gestión de la toma de
medidas para una inmobiliaria
2. Desarrollar el modelo de casos de uso del sistema
Se debe realizar un diagrama de Casos de Uso y posteriormente describir cada
caso de uso.
Un Diagrama de Casos de Uso muestra la relación entre los actores y los casos de
uso del sistema. Representa la funcionalidad que ofrece el sistema en lo que se refiere
a su interacción externa.
3.2.- Diseño externo del sistema
En esta etapa se definen los componentes del sistema (aplicaciones del sistema,
módulos…) y la comunicación entre ellos y con los sistemas externos. Las actividades
que tendrán lugar durante esta etapa son:
1. Identificar la arquitectura del sistema
En esta actividad se define la arquitectura general del sistema de información,
especificando las distintas particiones físicas del mismo, la descomposición lógica en
subsistemas de diseño y la ubicación de cada subsistema en cada partición, así como
la especificación detallada de la infraestructura tecnológica necesaria para dar soporte
al sistema de información.
2. Elaborar el diagrama de paquetes
Los paquetes se utilizan para agrupar las clases del sistema que de alguna
manera guardan cierta relación. De esta forma se consigue estructurar grandes
sistemas con un número elevado de clases.
Cualquier sistema grande se debe dividir en unidades más pequeñas, de modo
que las personas puedan trabajar con una cantidad de información limitada, a la vez y
de modo que los equipos de trabajo no interfieran con el trabajo de los otros.
3.3.- Diseño interno del sistema
En esta etapa se adecua el análisis a las características específicas del ambiente
de implementación y se completan las distintas aplicaciones del sistema realizando las
siguientes actividades:
13
Automatización de la gestión de la toma de
medidas para una inmobiliaria
1. Desarrollar el modelo de interfaz
La interfaz de usuario tiene las tareas de recoger funciones y procesos y de
representar información clara. El diseño de una pantalla es una interpretación de las
cualidades definidas en el diseño y concepción de procesos. El diseño GUI con su alta
calidad estética da al producto un carácter atractivo influyendo en la calidad final de la
aplicación.
2. Elaborar los diagramas de secuencia con el detalle de las
operaciones más importantes
La vista de interacción describe secuencias de intercambios de mensajes entre los
roles que implementan el comportamiento de un sistema. Esta visión proporciona una
vista integral del comportamiento del sistema, es decir, muestra el flujo de control a
través de muchos objetos. Los objetos interactúan para realizar colectivamente los
servicios ofrecidos por las aplicaciones. Los diagramas de interacción muestran cómo
se comunican los objetos en una interacción.
3. Agregar detalles de implementación al modelo de dominio.
Diagrama de Clases.
Se trata de construir un modelo de diseño basándose en el modelo de análisis,
pero incorporando detalles de implementación. El diseño de objetos se centra en las
estructuras de datos y algoritmos que son necesarios para implementar cada clase en
el lenguaje de programación que se vaya a utilizar (orientados y no orientados a
objetos, bases de datos, etc.).
Para diseñar las clases se especificarán los métodos y atributos que cada clase va
a necesitar para que el sistema pueda alcanzar toda la funcionalidad requerida.
3.4.- Implementación, pruebas e Implantación
Se desarrollará el código de la aplicación y se realizarán las pruebas de software
necesarias que certifiquen que la aplicación funciona de manera correcta. El objetivo
de estas pruebas es garantizar que el sistema ha sido desarrollado correctamente, sin
errores de diseño ni programación y que se corresponde con los requerimientos.
Así, se podrían definir varias etapas en este apartado:
14
Automatización de la gestión de la toma de
medidas para una inmobiliaria
1. Implementación de la base de datos
Para poder comenzar con el desarrollo se hace necesario tener un modelo de
datos ya construido con el que poder trabajar. Es, por tanto, la primera tarea a abordar
en esta etapa, desarrollar la base de datos y los métodos para acceder a la misma.
2. Desarrollo del código
Etapa de programación de los componentes de la aplicación. En esta etapa se
cumplimentarán las clases que se han descrito en el diseño interno junto con los
algoritmos necesarios para cumplir con el cometido de cada una así como la
implementación de la interfaz de usuario cuando fuese necesario. Todo ello
condicionado por la plataforma de desarrollo escogida así como por la metodología de
comunicación entre módulos a implementar.
3. Pruebas unitarias
Una vez se haya desarrollado el código de los subsistemas se podrán realizar las
pruebas de dichos subsistemas y sus módulos por separado. El objetivo de las
pruebas unitarias es aislar, cada parte del programa y mostrar que las partes
individuales son correctas.
4. Pruebas de Integración
El objetivo de las pruebas de verificación es comprobar que los módulos o
componentes que conforman un sistema funcionan correctamente en conjunto o
integrados. Así mismo se comprueba que el sistema desarrollado cumple con los
requisitos definidos.
4.- Análisis de requerimientos
Los requerimientos son una descripción de las necesidades o deseos de un
producto. La meta primaria de esta fase es identificar y documentar lo que en realidad
se necesita, de una forma que claramente se pueda comunicar al cliente y a los
miembros del equipo de desarrollo. El reto consiste en definirlos de manera
inequívoca, de modo que se detecten los riesgos y no se presenten sorpresas al
momento de entregar el producto [LARM00].
15
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Con esta etapa se va a conseguir una visión clara del problema que se trata de
resolver y se detallará claramente la funcionalidad completa del sistema que va a
desarrollarse, describiendo que es lo que podrá hacer el usuario con el sistema.
Durante esta etapa se realizará el modelo de dominio y el modelo de casos de uso
del sistema.
El modelo de dominio consiste en uno o más diagramas de clase UML que
muestran los conceptos básicos del dominio del problema, sus propiedades más
importantes y las relaciones entre dichos conceptos.
El modelo de casos de uso permite recoger y documentar los requerimientos
funcionales de un sistema. Se compone de un diagrama de casos de uso y de la
descripción detallada de cada uno de ellos.
4.1.- Modelo de dominio
El modelo de dominio es una herramienta de comunicación fundamental que obliga
a los desarrolladores y usuarios a pensar formalmente sobre el problema, les permite
validar su comprensión y establece el vocabulario del espacio del problema. Junto con
los requerimientos, constituye la entrada más importante para el diseño.
4.1.1.- Diagrama del modelo de dominio
A continuación se presenta el diagrama de clases que representa el modelo de
dominio del sistema que se va a desarrollar.
16
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 4.1.1.1 Modelo de dominio
4.1.2.- Glosario de clases y relaciones
En este apartado se describirán las distintas clases y relaciones que se han
representado en el diagrama anterior.
OficinaInmobiliaria:
Esta clase representa la oficina de la inmobiliaria como negocio y como lugar
físico. De esta manera en la oficina de la inmobiliaria es donde se muestran los
anuncios de los distintos inmuebles, y en él trabajan los empleados de la oficina.
Empleado:
Esta clase contiene la información de cada uno de los trabajadores de la oficina
inmobiliaria, para empleado se recoge: código, nombre, apellidos, domicilio, teléfono,
17
Automatización de la gestión de la toma de
medidas para una inmobiliaria
salario, email y DNI. Los empleados disponen además de un nombre de usuario y una
contraseña para poder acceder al sistema. De esta clase heredan Administrador,
EmpOficina, EmpInmuebles y EmpVisita.
Administrador:
Es quien se encarga de la gestión de empleados (altas, bajas y
modificaciones). Además el administrador tiene acceso a una serie de informes tanto
estadísticos como de los distintos inmuebles.
EmpOficina:
Es el empleado que se encuentra en la oficina de la inmobiliaria, se encarga de
poner los anuncios que se reciben de los distintos empleados que están fuera de la
oficina, también es el encargado de prestar información acerca de los inmuebles a los
clientes que se personen en la oficina. Tienen acceso a información sobre los
inmuebles.
EmpInmuebles:
Es aquel empleado que dedica su vida laboral a visitar pisos que están en
venta para conseguir clientes que quieran vender o alquilar sus pisos a través de
nuestra oficina inmobiliaria, y una vez conseguido esto es el encargado de tomar las
medidas y características del inmueble mediante la PDA y mandar la información lo
antes posible a la oficina de la inmobiliaria.
EmpVisita:
Es el empleado que se dedica a enseñar las viviendas una vez un cliente se ha
mostrado interesado en la compra o alquiler de algún inmueble anunciado en la
oficina, tiene acceso a la información de la vivienda a través de su PDA. Puede enviar
un aviso a la oficina indicando que la vivienda ha sido adquirida y por lo tanto que el
18
Automatización de la gestión de la toma de
medidas para una inmobiliaria
anuncio deje de estar visible, o en caso contrario para indicar que la vivienda aún esta
disponible.
Informe:
Hace referencia a los distintos informes que pueden ser solicitados por el
administrador.
TipoV:
Hace referencia a si el inmueble esta situado en una planta del edificio o si por
el contrario se trata de un ático.
Inmueble:
Hace referencia a toda la información necesaria de cada uno de los inmuebles
que están dados de alta en la oficina de la inmobiliaria. De cada inmueble nos
interesa: un código de identificación, finalidad, tipo de inmueble, dirección, planta, tipo,
dormitorio, baños, m2, extras, precio.
Vivienda:
Hace referencia a un inmueble que es una vivienda.
ObraNueva:
Hace referencia a un inmueble que es una obra nueva.
Oficina:
Hace referencia a un inmueble que es una oficina.
19
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Local:
Hace referencia a un inmueble que es un local.
Nave:
Hace referencia a un inmueble que es una nave.
Garaje:
Hace referencia a un inmueble que es un garaje.
4.2.- Modelo de casos de uso
El modelo de casos de uso representa la funcionalidad que ofrece el sistema en lo
que se refiere a su interacción externa. De esta manera se puede llegar a determinar
la manera en que se quiere que los usuarios interactúen con el sistema y todo aquello
que podrán hacer con él.
El modelo de casos de uso se compone de un diagrama y de una descripción
detallada de cada uno de ellos.
Diagrama de casos de uso
Muestra gráficamente los casos de uso del sistema, las relaciones entre ellos y los
actores que participan.
Un actor es cualquier persona, organización o sistema que es externo al sistema
que se desarrolla e interactúa con él. Se puede ver como un rol abstracto que
representa cierta forma de interactuar con el sistema.
Los casos de uso responden a objetivos de los actores con respecto al sistema.
20
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Descripción detallada de casos de uso
Para describirlos se utilizará una plantilla con los siguientes campos:
Nombre:
Debe reflejar el objetivo del actor primario. Normalmente consistirá en una frase
activa en infinitivo.
Actor primario:
Aquél cuyo objetivo da nombre al caso de uso. Normalmente será también
quien lo inicie.
Actor secundario:
Cualquier otro actor que intervenga en el caso de uso y que ayude al sistema a
conseguir el objetivo del actor primario.
Precondiciones:
Son condiciones que se han de dar en el sistema para que pueda iniciarse el
caso de uso. Puesto que se han de cumplir antes, no se vuelven a comprobar una vez
iniciado.
Trigger:
Es el evento que inicia el caso de uso. A menudo será algo del tipo: Iniciado
por el “actor primario”.
Escenario primario:
21
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Se describirá mediante una serie de pasos numerados. Cada uno de los pasos
será de uno de los siguientes tipos:
1. interacción entre el sistema y un actor
2. validación de la información o regla de negocio
3. cambio lógico del sistema
Extensiones:
Describen formas alternativas de conseguir el objetivo o fallos que se producen
mientras se intenta conseguir.
4.2.1.- Diagrama de casos de uso
Los actores que se van a tener en cuenta en este proyecto son: el administrador, el
empleado de oficina, el empleado de inmuebles, el empleado de visitas y el sistema.
Como se ha explicado anteriormente los actores no representan personas físicas, sino
más bien distintas maneras de interactuar con el sistema.
El administrador representa el rol de aquella persona encargada de gestionar los
empleados, es decir, de realizar altas, bajas y modificaciones. También será el
encargado de solicitar informes estadísticos para conocer la marcha de la oficina
inmobiliaria.
El empleado de oficina representa el rol de aquella persona que se encarga de
imprimir y sacar por pantalla las fichas de los nuevos inmuebles enviados por los
empleados de inmuebles y ocasionalmente por los empleados de visitas. También es
el encargado de atender a los clientes que acudan a la oficina teniendo posibilidad de
obtener acerca de los inmuebles anunciados en la inmobiliaria.
22
Automatización de la gestión de la toma de
medidas para una inmobiliaria
El empleado de inmuebles representa el rol de aquella persona que se encarga de
crear la ficha del inmueble en cuestión, mediante el uso de una PDA, tomando las
medidas y características. También es el encargado de confirmar el envío de dicha
información a la oficina inmobiliaria.
El empleado de visitas representa el rol de aquella persona que se encarga de
llevar a los clientes interesados en el inmueble para que lo vean, y en el caso de que
estén interesados en adquirirlo es el encargo de enviar, mediante el uso de una PDA,
una orden de reserva a la oficina. Puede realizar una llamada a la base de datos de la
oficina de forma que pueda tener la ficha del inmueble que está enseñando a los
clientes para poder especificarles las características del inmueble de forma correcta y
concreta.
Estos cuatro actores o roles son tipos específicos de un actor más general. A este
actor se le llamará simplemente usuario, y una de sus funciones es la de poder
cambiar su contraseña de acceso al sistema.
Por último el actor sistema representa aquellas interacciones que se dan de
manera automática o periódica cada cierto tiempo.
Figura 4.2.1.1 Actores del sistema
23
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Cada uno de estos actores tiene su propio diagrama de casos de uso:
Usuario:
Figura 4.2.1.2 Actor Usuario
Administrador:
Figura 4.2.1.3 Actor Administrador
Empleado de oficina:
24
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 4.2.1.4 Actor Empleado oficina
Empleado de inmuebles:
Figura 4.2.1.4 Actor Empleado inmuebles
Empleado de visitas:
25
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 4.2.1.5 Actor Empleado visitas
Sistema:
Figura 4.2.1.5 Actor Sistema
4.2.2.- Descripción detallada de los casos de uso
Cambiar contraseña
Actor primario: Usuario
Actores secundarios: ---
26
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Trigger: Iniciado por el usuario
Precondiciones: --Escenario primario:
1. El usuario selecciona la opción de modificar su contraseña (RN01).
2. El usuario introduce la contraseña antigua y la nueva.
3. El sistema actualiza la contraseña.
Extensiones:
2a. El usuario introduce mal la contraseña antigua
1. El sistema informa de que la contraseña no es correcta
2. Volver al paso 2
Pedir informe1
Actor primario: Administrador
Actores secundarios: --Trigger: Iniciado por el administrador
Precondiciones: --Escenario primario:
1. El administrador selecciona el tipo de informe que desea.
2. El sistema calcula los datos necesarios para el informe y los muestra.
Pedir informe2
27
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Actor primario: Empleado de oficina
Actores secundarios: --Trigger: Iniciado por el empleado de oficina
Precondiciones: --Escenario primario:
1. El empleado de oficina selecciona el tipo de informe que desea.
2. El sistema calcula los datos necesarios para el informe y los muestra.
Añadir empleado
Actor primario: Administrador
Actores secundarios: --Trigger: Iniciado por el administrador
Precondiciones: --Escenario primario:
1. El administrador introduce los datos del empleado que desea añadir.
2. El sistema da de alta el nuevo empleado y vuelve al menú principal.
Extensiones:
1a . El administrador cancela el alta del nuevo empleado
1. El sistema cancela la operación y vuelve a la pantalla anterior
28
Automatización de la gestión de la toma de
medidas para una inmobiliaria
1b . El administrador no ha rellenado todos los campos
1. El sistema informa de que no ha rellenado todos los campo
2. Volver al paso 1.
2a . El nombre de usuario que ha elegido el administrador ya existe
1. El sistema informa de que el nombre de usuario no es válido
2b. Alguno de los datos introducidos no tiene el formato correcto
1. El sistema informa del error
2. Volver al paso 1
Buscar empleado
Actor primario: Administrador
Actores secundarios: --Trigger: Iniciado por el administrador
Precondiciones: --Escenario primario:
1. El administrador introduce los datos de búsqueda del empleado
2. El sistema muestra los empleados cuyos datos coincidan con los de búsqueda
3. El administrador selecciona el empleado
4. El sistema muestra los datos del empleado
Extensiones:
29
Automatización de la gestión de la toma de
medidas para una inmobiliaria
2a . El sistema no encuentra ningún empleado cuyos datos coincidan con los de
búsqueda
1. El sistema informa de la situación
2. Volver al paso 1.
Modificar empleado
Actor primario: Administrador
Actores secundarios: --Trigger: Iniciado por el administrador
Precondiciones: El administrador debe haber buscado y seleccionado un empleado
Escenario primario:
1. El administrador selecciona la opción de modificar el empleado
2. El administrador introduce los nuevos datos del empleado
3. El sistema actualiza los datos del empleado y vuelve a la pantalla previa al
inicio del caso de uso.
Extensiones:
2a . El administrador cancela la modificación del empleado
1. El sistema cancela la operación y vuelve a la pantalla anterior
3a . El administrador no ha rellenado todos los campos
30
Automatización de la gestión de la toma de
medidas para una inmobiliaria
1. El sistema informa de que no ha rellenado todos los campo
2. Volver al paso 1.
3b . El nombre de usuario que ha elegido el administrador ya existe
1. El sistema informa de que el nombre de usuario no es válido
3c. Alguno de los datos introducidos no tiene el formato correcto
1. El sistema informa del error
2. Volver al paso 2
Eliminar empleado
Actor primario: Administrador
Actores secundarios: --Trigger: Iniciado por el administrador
Precondiciones: El administrador debe haber buscado y seleccionado un empleado
Escenario primario:
1. El administrador selecciona la opción de eliminar empleado.
2. El sistema elimina el empleado seleccionado y vuelve a la pantalla previa a
iniciar el caso de uso
Extensiones:
1a . El administrador cancela la modificación del empleado
31
Automatización de la gestión de la toma de
medidas para una inmobiliaria
1. El sistema cancela la operación y vuelve a la pantalla anterior
Crear Ficha
Actor primario: Empleado de inmuebles
Actores secundarios: --Trigger: Iniciado por el empleado de inmuebles
Precondiciones: --Escenario primario:
1. El empleado de inmuebles introduce los datos del inmueble que quiere
añadir
2. El sistema da de alta el nuevo inmueble y vuelve a la pantalla anterior.
Extensiones:
1a. El empleado de inmuebles cancela el alta del nuevo inmueble
1. El sistema cancela la operación y vuelve a la pantalla anterior.
2a. Algunos de los datos introducidos son incorrectos o faltan datos.
1. El sistema informa del error.
2. Volver al paso 1.
Buscar Inmueble1
32
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Actor primario: Empleado de oficina
Actores secundarios: --Trigger: Iniciado por el empleado de oficina
Precondiciones: --Escenario primario:
1. El empleado de oficina introduce los datos de búsqueda del inmueble
2. El sistema muestra los inmueble cuyos datos coincidan con los de
búsqueda
3. El empleado de oficina selecciona el inmueble
4. El sistema muestra los datos del inmueble
Extensiones:
2a . El sistema no encuentra ningún inmueble cuyos datos coincidan con los de
búsqueda
1. El sistema informa de la situación
2. Volver al paso 1.
Buscar Inmueble2
Actor primario: Empleado de inmuebles
Actores secundarios: --Trigger: Iniciado por el empleado de inmuebles
Precondiciones: ---
33
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Escenario primario:
5. El empleado de inmuebles introduce los datos de búsqueda del inmueble
6. El sistema muestra los inmueble cuyos datos coincidan con los de
búsqueda
7. El empleado de inmuebles selecciona el inmueble
8. El sistema muestra los datos del inmueble
Extensiones:
2a . El sistema no encuentra ningún inmueble cuyos datos coincidan con los de
búsqueda
3. El sistema informa de la situación
4. Volver al paso 1.
Buscar Inmueble3
Actor primario: Empleado de visitas
Actores secundarios: --Trigger: Iniciado por el empleado de visitas
Precondiciones: --Escenario primario:
9. El empleado de visitas introduce los datos de búsqueda del inmueble
10. El sistema muestra los inmuebles cuyos datos coincidan con los de
búsqueda
34
Automatización de la gestión de la toma de
medidas para una inmobiliaria
11. El empleado de visitas selecciona el inmueble
12. El sistema muestra los datos del inmueble
Extensiones:
2a . El sistema no encuentra ningún inmueble cuyos datos coincidan con los de
búsqueda
5. El sistema informa de la situación
6. Volver al paso 1.
Modificar Inmueble
Actor primario: Empleado de oficina
Actores secundarios: --Trigger: Iniciado por el empleado de oficina
Precondiciones: el empleado de oficina debe haber buscado y seleccionado un
inmueble.
Escenario primario:
1. El empleado de oficina selecciona la opción de modificar el inmueble
2. El empleado de oficina introduce los nuevos datos del inmueble
3. El sistema actualiza los datos del inmueble y vuelve a la pantalla previa a iniciar
el caso de uso.
Extensiones:
35
Automatización de la gestión de la toma de
medidas para una inmobiliaria
2a . El empleado de oficina cancela la modificación del inmueble
1. El sistema cancela la operación y vuelve a la pantalla anterior
3a . El empleado de oficina no ha rellenado todos los campos
1. El sistema informa de que no ha rellenado todos los campo
2. Volver al paso 1.
3b . El código de inmueble que ha elegido el empleado de oficina ya existe
1. El sistema informa de que el código de inmueble no es válido
3c. Alguno de los datos introducidos no tiene el formato correcto
1. El sistema informa del error
2. Volver al paso 2
Eliminar Inmueble:
Actor primario: empleado de oficina
Actor secundario: --Trigger: Iniciado por el empleado de oficina
Precondiciones: El empleado de oficina debe haber buscado y seleccionado un
inmueble
Escenario primario:
1. El empleado de oficina selecciona la opción de eliminar inmueble.
36
Automatización de la gestión de la toma de
medidas para una inmobiliaria
2. El sistema elimina el inmueble seleccionado y vuelve a la pantalla previa a
iniciar el caso de uso
Extensiones:
1a . El empleado de oficina cancela la modificación del inmueble
1. El sistema cancela la operación y vuelve a la pantalla anterior
Pedir Ficha
Actor primario: Empleado de visitas
Actores secundarios: --Trigger: Iniciado por el empleado de visitas
Precondiciones: el empleado de visitas debe haber buscado y seleccionado un
inmueble.
Escenario primario:
1. El empleado de visitas selecciona la opción de solicitar ficha del inmueble
2. El sistema envía la ficha del inmueble solicitado
Extensiones:
2a . El empleado de visitas cancela la solicitud
1. El sistema cancela la operación y vuelve a la pantalla anterior
37
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Modificar Estado Inmueble
Actor primario: Empleado de visitas
Actores secundarios: --Trigger: Iniciado por el empleado de visitas
Precondiciones: el empleado de visitas debe haber buscado y seleccionado un
inmueble.
Escenario primario:
1. El empleado de visitas selecciona la opción de modificar estado del inmueble
2. El empleado de visitas introduce los nuevos datos del inmueble
3. El sistema actualiza los datos del inmueble y vuelve a la pantalla previa a iniciar
el caso de uso.
Extensiones:
2a . El empleado de visitas cancela la modificación del estado inmueble
1. El sistema cancela la operación y vuelve a la pantalla anterior
3a . El empleado de oficina no ha rellenado todos los campos
1. El sistema informa de que no ha rellenado todos los campo
2. Volver al paso 1.
3b. Alguno de los datos introducidos no tiene el formato correcto
1. El sistema informa del error
2. Volver al paso 2
38
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Modificar Ficha
Actor primario: Empleado de inmuebles
Actores secundarios: --Trigger: Iniciado por el empleado de inmuebles
Precondiciones: el empleado de inmuebles debe haber buscado y seleccionado un
inmueble.
Escenario primario:
4. El empleado de inmuebles selecciona la opción de modificar el inmueble
5. El empleado de inmuebles introduce los nuevos datos del inmueble
6. El sistema actualiza los datos del inmueble y vuelve a la pantalla previa a iniciar
el caso de uso.
Extensiones:
2a . El empleado de inmuebles cancela la modificación del inmueble
2. El sistema cancela la operación y vuelve a la pantalla anterior
3a . El empleado de inmuebles no ha rellenado todos los campos
3. El sistema informa de que no ha rellenado todos los campo
4. Volver al paso 1.
3b . El código de inmueble que ha elegido el empleado de inmuebles ya existe
39
Automatización de la gestión de la toma de
medidas para una inmobiliaria
2. El sistema informa de que el código de inmueble no es válido
3c. Alguno de los datos introducidos no tiene el formato correcto
3. El sistema informa del error
4. Volver al paso 2
Crear Anuncio:
Actor primario: Empleado de oficina
Actores secundarios: --Trigger: Iniciado por el empleado de oficina
Precondiciones: el empleado de oficina debe haber buscado previamente el inmueble
del que
quiere crear el anuncio.
Escenario primario:
1. El empleado de oficina solicita crear un nuevo anuncio.
2. El sistema crea el nuevo anuncio.
Extensiones: no hay.
Sincronizar
Actor primario: Empleado de inmuebles
Actores secundarios: ---
Trigger: Iniciado por el empleado de inmuebles
Precondiciones: ---
Escenario primario:
40
Automatización de la gestión de la toma de
medidas para una inmobiliaria
1. El empleado de inmuebles selecciona la opción de sincronizar los datos
2. El sistema sincroniza de manera bidireccional las tablas de datos de la PDA
con las del servidor central
Extensiones:
2b. Sucede un error durante la sincronización manual
1. El sistema muestra información del error ocurrido
2. El caso de uso finaliza
4.2.3.- Descripción de datos
Tipo de informe
El administrador puede pedir distintos tipos de informes, que le muestran una
serie de información de pendiendo del tipo de informe, existen tres tipo:
Informe acerca de los empleados: proporciona una idea de la
productividad de cada empleado de la inmobiliaria mostrando el número
total de inmuebles visitados para la toma de medidas. Se considera una
visita por cada inmueble visitado con diferente dirección, es decir, si un
empleado a de visitar varias veces el mismo inmueble se le considera
como una única visita.
Informe sobre los distintos inmuebles: muestra por cada inmueble sus
características de forma que desde la oficina se pueda llevar una relación
de todos los inmuebles dados de alta en la inmobiliaria. En este informe
también se presenta un cálculo de la duración media desde que el
inmueble se anuncia en la oficina hasta que se vende, pudiendo obtener
evidencia sobre la valía de los empleados que visitan los inmuebles con los
posibles compradores.
41
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Informe acerca de los ingresos de la inmobiliaria: se detallan los
ingresos obtenidos por la inmobiliaria durante los últimos doce meses.
Además se calcula los ingresos totales desde que se implantó el sistema,
los ingresos medios mensuales y los ingresos medios por inmueble.
Informe individual de cada inmueble: Según se reciba la información
correspondiente a un nuevo inmueble se creará un informe en el que se
muestre la información maquetada de forma que pueda ser expuesta
inmediatamente en el escaparate de la oficina, o si la oficina tiene
monitores en los que se muestra la
información pues la información se
mostrará en ellos.
Datos del empleado
Los datos del empleado son el nombre, los apellidos, el domicilio, el DNI, el
teléfono, el email, el salario, la categoría a la que pertenece (administrador, empleado
de oficina, empleado de inmuebles y empleado de visitas), el nombre de usuario y el
password para acceder al sistema.
Datos de búsqueda
Consiste en una serie de datos introducidos por el usuario de forma que el
sistema coja estos datos y pueda realizar una búsqueda de todos los empleados o
inmuebles cuyas características coincidan con todas las características introducidas en
los datos de búsqueda.
Características del inmueble
Hace referencia a toda la información necesaria de cada uno de los inmuebles
que están dados de alta en la oficina de la inmobiliaria. De cada inmueble nos
interesa: un código de identificación, finalidad, tipo de inmueble, dirección, planta, tipo,
dormitorio, baños, m2, extras, precio.
42
Automatización de la gestión de la toma de
medidas para una inmobiliaria
RN01
La contraseña constará de cómo mínimo 4 caracteres.
5.- Diseño Externo del sistema
5.1.- Arquitectura del sistema
La solución propuesta consiste en instalar
la aplicación en puestos de
escritorio o dispositivos móviles y utilizar la arquitectura que se muestra a
continuación.
En este apartado se estudia la solución propuesta para la arquitectura del
sistema. En el siguiente gráfico queda reflejada la arquitectura general del sistema y
las tecnologías usadas en cada parte.
Figura 5.1.1 Arquitectura del Sistema
La arquitectura del sistema está formada por los siguientes elementos:
Servidor Web
43
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Servidor de BBDD
Cliente de escritorio
Cliente móvil
Servidor Web:
Contenedor de los distintos Servicios Web y otras funcionalidades de que se
compone la aplicación GestInmob. El servidor de aplicaciones (Internet Information
Server) dispone de la lógica de autenticación de usuarios y de acceso a los Servicios
Web.
En el presente proyecto se creará un sitio Web específico con un directorio
particular con el mismo nombre, InmobServer.
El sitio web InmobServer contiene el Servicio Web con el que se comunica las
aplicaciones cliente. El nivel de seguridad de este directorio debe permitir el acceso de
todas las máquinas, acceso anónimo en el directorio del sitio Web dentro del Internet
Information Server, con lo que la función de autenticación de dichas máquinas pasaría
a la propia aplicación.
Servidor de BBDD:
Permite el acceso a la bases de datos que utiliza el Sistema:

InmobBD: Base de datos de la aplicación. Contiene todos los datos que
maneja el sistema.
Cliente de Escritorio:
Aplicación cliente instalada en un ordenador de sobremesa que se encuentra
localizado en las distintas oficinas de la agencia, se comunica con el Servidor Web
para realizar todas las operaciones que sean necesarias para proporcionar los
servicios.
Realiza el servicio de autenticación de los empleados mediante un proceso de
autenticación utilizando para ello los servicios web que le permiten acceder a la base
de datos de empleados situada en el Servidor de BBDD. Una vez se ha realizado esta
autenticación y el usuario es autenticado de forma satisfactoria, al usuario se le
otorgan unos permisos y u otros en función de su perfil
44
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Cliente móvil:
Aplicación cliente instalada en un dispositivo móvil, que es portado por los
distintos empleados de la agencia y, que se comunica con el Servidor Web para
realizar todas las operaciones que sean necesarias para proporcionar los servicios.
Realiza el servicio de autenticación de los empleados mediante un proceso de
autenticación utilizando para ello los servicios web que le permiten acceder a la base
de datos de empleados situada en el Servidor de BBDD. Una vez se ha realizado esta
autenticación y el usuario es autenticado de forma satisfactoria, al usuario se le
otorgan unos permisos y u otros en función de su perfil
5.2 Diagrama de paquetes
Se va a proceder a la representación del diagrama de paquetes este se hará primero
de forma general y luego se irá descendiendo hasta el detalle.
5.2.1 Diagrama de paquetes externo
A continuación se muestra el paquete principal de la aplicación y las relaciones que
existen con elementos externos al sistema, en este caso no hay relaciones externas
por lo tanto resulta el siguiente diagrama:
Figura 5.2.1.1 Diagrama externo de paquetes
5.2.2 Diagrama de paquetes – primer nivel
45
Automatización de la gestión de la toma de
medidas para una inmobiliaria
A continuación se muestra el diagrama de paquetes de primer nivel para la
aplicación de escritorio, en el que se muestra la relación entre los distintos paquetes
que componen la aplicación principal, obteniendo la siguiente representación:
Figura 5.2.2.1 Diagrama de paquetes principal
Notas:
InmobBD se corresponde con el reflejo de los datos tal y como están en la
base de datos.
A continuación se muestra el diagrama de paquetes de primer nivel para la
aplicación para dispositivos móviles, en el que se muestra la relación entre los distintos
paquetes que componen la aplicación principal, obteniendo la siguiente
representación:
46
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 5.2.2.2 Diagrama de paquetes principal
5.2.3 Subsistemas
InmobServer es la aplicación servidor. Contiene toda la lógica de acceso a
datos en el paquete dao y parte de la lógica de negocio del sistema en el
paquete services. Como se ha visto en el modelo de arquitectura en su
mayoría se compone de servicios Web con los que da servicio a los otros dos
subsistemas. Utiliza muchas de las clases definidas en el dominio y el acceso a
datos. Todo ello a través de InmobLib.
GestInmob es la aplicación de gestión para los puestos de escritorio, posee la
lógica de presentación en el paquete iu con las clases que se utilizaran. Utiliza
las clases pertenecientes al dominio del sistema, el acceso a datos a través de
InmobLib.
47
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 5.2.3.1 Subsistema de paquetes
GestInmobMobile es la aplicación de gestión para los dispositivos móviles,
posee la lógica de presentación en el paquete iu con las clases que se
utilizaran. Utiliza las clases pertenecientes al dominio del sistema, el acceso a
datos a través de InmobLib.
Figura 5.2.3.2 Subsistema InmobLib
InmobLib es la librería del sistema. En ella se encuentra el paquete dominio
con las clases del dominio del sistema y el paquete DAO con la capa de
acceso a datos.
48
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 5.2.3.3 Subsistema InmobLib
6.- Diseño interno del sistema
6.1.- Diseño de la interfaz de usuario
El diseño de toda la aplicación se hará de forma sencilla e intuitiva de forma
que el tiempo de aprendizaje por parte de los usuarios sea mínimo, se seguirá el
manual de buenas prácticas en el desarrollo de interfaces gráficos.
Para construir este modelo de interfaz de la aplicación de escritorio se ha
acudido a componentes para aplicaciones Windows desarrollados y publicados como
software libre bajo un proyecto con el nombre de Ascend.net Windows Forms Controls.
Como se puede observar en la página web: http://www.codeplex.com/ASCENDNET
los controles de Ascend.NET son una colección de controles Windows Forms escritos
en lenguaje C# para Visual Studio 2005 y .NET 2.0. Se pueden descargar desde el
link:
http://www.codeplex.com/ASCENDNET/Release/ProjectReleases.aspx?ReleaseId=317
Una vez descargado el paquete, es necesario instalarlo y, posteriormente,
agregar referencias desde el proyecto de Visual Studio donde se desarrollará la
interfaz
a
las
librerías
Ascend,
Ascend.Resources,
Ascend.Design
y
Ascend.Windows.Forms.
Una vez referenciadas, se puede agregar los componentes o controles en la
barra de herramientas del Visual Studio. En este caso, se utiliza el control
49
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Ascend.Windows.Forms.NavigationPane y los controles NavigationPanePage y
NavigationButton para construir el menú de la ventana principal.
El modelo de interfaz de la aplicación para dispositivos móviles, será mucho
más sencilla que para la aplicación de escritorio y por tanto no utilizará los
componentes ASCEND indicados anteriormente.
6.2.- Diseño subsistema GestInmob y GestInmobMobile
6.2.1.- Autenticación
Antes de que el usuario pueda utilizar la aplicación es necesario que el usuario
se autentique para ello se le muestra la siguiente ventana:
Figura 6.2.1 Ventana de autenticación
La validación interna del usuario se realizará siguiente el siguiente diagrama de
secuencia:
50
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 6.2.2 Diagrama secuencia autenticación
Si la autenticación no tuviera éxito se mostrará un mensaje de error y se
volverá a la ventana anterior.
6.2.2 Menú principal
Siguiendo con la ejecución correcta de la aplicación el usuario se encontrará
con el menú principal de la aplicación:
51
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 6.2.2.1 Ventana del menú principal
Como se puede observar en la figura desde el menú principal se puede
acceder a 3 módulos entre los que se reparte toda la funcionalidad (Parte inferior del
menú). Estos módulos son:
Inmuebles: Permite gestionar el módulo de inmuebles en el que como
veremos más adelante se podrán gestionar todas las altas, bajas y
modificaciones de los inmuebles.
Empleados: Permite gestionar el módulo de empleados, gestionando así las
altas, bajas y modificaciones de empleados en la plantilla.
Informes: Módulo en el que se puede obtener una serie de informes sobre la
situación de la agencia, de los inmuebles y de los clientes dados de alta.
6.2.3 Módulo Inmuebles
El módulo Inmuebles comprende las siguientes funcionalidades:
52
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Alta de inmueble.
Baja de inmueble.
Modificación de inmueble.
6.2.3.1 Alta de inmueble
Esta funcionalidad realiza la operación de dar de alta un inmueble, para ello
primero se obtienen los datos del cliente y se comprueban si el cliente ya está dado de
alta en la base de datos.
Figura 6.2.3.1.1a Ventana TipoCliente
Para realizar esta operación se sigue el siguiente diagrama de secuencia:
53
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 6.2.3.1.1b Diagrama de secuencia TipoCliente
En caso de que el usuario no esté dado de alta en la base de datos, se muestra
la siguiente ventana:
Figura 6.2.3.1.2a Ventana NuevoCliente
Una vez esta sea rellenada y se produzca el evento insertarCliente se
producirá el siguiente diagrama de secuencia:
54
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 6.2.3.1.2b Ventana NuevoCliente
Tras esto se procederá a llamar a la ventana resumenCliente que mostrará un
resumen de los datos del cliente que se quiere introducir y al pulsar sobre el botón
aceptar se llamará al servicioWeb para que este realice la inserción del nuevo cliente
en la base de datos, para ello se sigue el siguiente diagrama de secuencia:
Figura 6.2.3.1.2c Ventana NuevoCliente
Una vez que el usuario ya está dado de alta en la base de datos de clientes, el
usuario procede a seleccionar el tipo de inmueble que quiere dar de alta.
55
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 6.2.3.1.3a Ventana TipoInmueble
Con el siguiente diagrama de secuencia:
56
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 6.2.3.1.3b Ventana TipoInmueble
Una vez seleccionado el usuario debe rellenar los campos de los que disponga
información siendo imprescindible el campo “precio”.
Figura 6.2.3.1.4a Ventana Chalet
Una vez se ha rellenado todo y se produce el evento de dar de alta el inmueble
se realiza la siguiente secuencia de operaciones:
57
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 6.2.3.1.4b Ventana Chalet
6.2.3.2 Baja de inmueble
Esta funcionalidad realiza la operación de baja de un inmueble, se podrá
realizar un filtrado por tipo de inmueble de forma que encontremos antes el inmueble
que queremos retirar de la lista de disponibles. También se podrá filtrar por
disponibles. La ventana que realiza la operación de dar de baja una operación es la
siguiente:
58
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 6.2.3.2.1a Ventana BajaInmueble
En el evento de carga de la ventana se producen la siguiente serie de
operaciones:
Figura 6.2.3.2.1b Ventana BajaInmueble
Una vez se ha seleccionado el inmueble que se quiere pasar al estado
“retirado” y tras pulsar el botón retirar se procede a realizar la siguiente secuencia de
operaciones:
Figura 6.2.3.2.1c Ventana BajaInmueble
Tras esto, el inmueble seleccionado pasará al estado “retirado” y la aplicación
volverá al menú principal.
6.2.3.3 Modificación de inmueble
Esta funcionalidad realiza la operación de modificar la información disponible
sobre un inmueble, en primer lugar se carga la ventana:
59
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 6.2.3.2.1a Ventana SeleccionarInmueble
Nota: Es posible realizar un filtrado por tipo de inmueble y por estado del
inmueble.
Durante la carga de la ventana se producen las siguientes operaciones que
hacen que la tabla muestre los inmuebles disponibles:
Figura 6.2.3.2.1b Ventana SeleccionarInmueble
Una vez se ha seleccionado el inmueble que se desea modificar se realizan
una serie de operaciones, representadas en el siguiente diagrama:
60
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 6.2.3.2.1c Ventana SeleccionarInmueble
Se muestra la ventana con la información del inmueble seleccionado:
Figura 6.2.3.2.2a Ventana ModificarChalet
Una vez se ha modificado la información del chalet, y se produce el evento
modificar al pulsar el “botonModificar” se producen una serie de operaciones
representadas en el siguiente diagrama de secuencia:
61
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 6.2.3.2.2b Ventana ModificarChalet
Tras realizarse la operación se recargará la ventana de selección de inmueble
y se podrá observar la nueva información del inmueble.
6.2.4 Módulo Empleados
El módulo Empleados comprende las siguientes funcionalidades:
Alta de empleados.
Baja de empleados.
Modificación de empleados.
6.2.4.1 Alta de empleados
Esta funcionalidad realiza la operación de dar de alta un usuario, el proceso
comienza con la carga de la siguiente ventana:
62
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 6.2.4.1.1a Ventana altaEmpleado
En la ventana anterior se rellenan los datos del nuevo empleado y una vez
estos datos han sido cumplimentados y se ha pulsado el botón “Aceptar” se producen
una serie de operaciones resumidas en el siguiente diagrama de secuencia:
63
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 6.2.4.1.1b Ventana altaEmpleado
Tanto si la operación se ha realizado de forma correcta, como si la ejecución no
ha sido satisfactoria se mostrar un mensaje indicando el estado de la finalización de la
operación.
Una vez terminada la ejecución de la operación, la aplicación volverá al menú
principal.
6.2.4.2 Baja de empleados
Esta funcionalidad realiza la operación de dar de baja un empleado, y por tanto
retirarlo de la base de datos, visualmente se utiliza la siguiente ventana para la
selección del mismo:
64
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 6.2.4.2.1a Ventana bajaEmpleado
Previamente, durante la carga de la ventana se han producido la siguiente serie
de operaciones, encargadas de rellenar la tabla con los empleados dados de alta:
Figura 6.2.4.2.1b Ventana bajaEmpleado
Una vez el empleado que se quiere dar de baja a sido seleccionado y se pulsa
el botón “Borrar” se produce la siguiente serie de operaciones encargadas de dar de
baja al empleado seleccionado:
65
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 6.2.4.2.1c Ventana bajaEmpleado
Tras esto, se recarga la tabla de empleados y se puede observar que el
empleado dado de baja ya no se encuentra en la lista de empleados.
6.2.4.3Modificación de empleados
Esta funcionalidad realiza la operación de modificar la información disponible
sobre un empleado, en primer lugar se carga la ventana:
Figura 6.2.4.3.1a Ventana SeleccionarEmpleado
66
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Durante la carga de la ventana se producen las siguientes operaciones que
hacen que la tabla muestre los empleados dados de alta actualmente en la base de
datos:
Figura 6.2.4.3.1b Ventana SeleccionarEmpleado
Una vez se ha seleccionado el empleado que se desea modificar y después de
pulsar el botón “Modificar…” se realizan una serie de operaciones, representadas en el
siguiente diagrama:
Figura 6.2.4.3.1c Ventana SeleccionarEmpleado
Se muestra la ventana con la información del empleado seleccionado:
67
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 6.2.4.3.1a Ventana ModificarEmpleado
Una vez se ha modificado la información del empleado, y se produce el evento
modificar al pulsar el “botonModificar” se producen una serie de operaciones
representadas en el siguiente diagrama de secuencia:
68
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 6.2.4.3.1b Ventana ModificarEmpleado
Tras realizarse la operación se recargará la ventana de selección de empleado
y se podrá observar la nueva información del empleado.
6.2.5 Módulo informes
La funcionalidad ofrecida por este módulo consiste en la obtención de una serie
de informes para los empleados de la oficina, estos informes serán:
Obtener un listado de todos los inmuebles.
Obtener un listado de todos los empleados.
Obtener un listado de todos los clientes.
Obtener un informe de estadísticas.
6.3.- Modelo de datos
69
Automatización de la gestión de la toma de
medidas para una inmobiliaria
6.3.1.- Modelo conceptual de datos
El diseño conceptual de datos se realiza a partir del modelo de dominio, que
uniéndolo a un mejor conocimiento de los objetos del sistema tras el diseño externo e
interno del mismo, se obtiene el modelo Entidad-Relación:
Figura 6.3.1.1 Modelo conceptual de datos
A continuación se muestra la declaración de las tablas utilizadas para el
desarrollo de la aplicación:
Figura 6.3.1.2 Tabla autenticación
70
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Esta tabla es utilizada para la autenticación del usuario al principio de la
aplicación su clave principal es el numero de usuario.
Figura 6.3.1.3 Tabla empleados
La tabla mostrada en la parte superior se corresponde con la tabla de
empleados cuya clave principal es el código de empleado y como clave extranjera
tiene el campo “Usuario” que es a su vez clave principal como ya hemos visto antes de
la tabla de autenticación.
A continuación se muestra la tabla de inmuebles, como se puede observar la
clave principal es el código de inmueble, y posee una clave extranjera que es el dueño
del inmueble, que como veremos más adelante es la clave principal de la clave
clientes.
71
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 6.3.1.4 Tabla autenticación
Para terminar se muestra la tabla clientes que almacena toda la información
referente a los clientes, cuya clave principal es el DNI del cliente.
Figura 6.3.1.5 Tabla clientes
72
Automatización de la gestión de la toma de
medidas para una inmobiliaria
6.3.2 Acceso a datos
El acceso a los datos de las tablas indicadas en el apartado anterior se
realizará utilizando componentes proporcionados por Microsoft Visual Studio 2005,
para ello se utilizaran el componente System.Data.DataSet y el componente adaptador
de tablas.
El diagrama de clase del objeto DataSet es la siguiente:
Figura 6.3.2.1 Objeto DataSet
Pudiendo observar en los campos las referencia a los adaptadores de las
tablas de la BBDD.
En la siguiente imagen se pueden observar el diagrama de clase de los 4
objetos adaptadores de tablas, que utilizan los métodos de acceso a las tablas de la
BBDD:
73
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 6.3.2.2 Adaptadores de tabla
Mediante la utilización del objeto DataSet y los distintos adapatadores es
posible realizar todas las operaciones necesarias por la aplicación sobre el acceso a
los datos contenidos en las tablas de la base de datos.
6.4.- Diagrama de clases
En este apartado se mostrará el contenido de las clases utilizadas para el
desarrollo de la aplicación, analizando el modelo de datos se llega a la conclusión de
que son necesarias las siguientes clases, estas clases estarán contenidas en la
librería que utiliza la aplicación (InmobLib).
74
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Clase Inmueble:
Figura 6.4.1 Clase Inmueble
Clase Empleados:
Figura 6.4.2 Clase empleados
75
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Clase Clientes:
Cliente
Class
Campos
_correo
_direccion
_disponibilidad
_dni
_nombre
_primAp
_segAp
_telefono
Propiedades
correo
direccion
disponibilidad
dni
nombre
primAp
segAp
telefono
Métodos
Cliente (+ 1 sobr
…
Figura 6.4.3 Clase clientes
6.5.- Diagrama del servicioWeb
A continuación se muestra el diagrama del servicio web en el que se pueden
observar tanto los atributos del servicio como los métodos existentes:
76
Automatización de la gestión de la toma de
medidas para una inmobiliaria
MiServicio
Class
WebService
Campos
da
dt
fila
idInm
Métodos
asignarDatosEmpleado
Autenticacion
BuscarDni
ConectarBaseDatos
dameEmpleados
darAltaEmpleado
getEmpleados
GetIdUltEmpleado
GetIdUltInmueble
HelloWorld
HolaMundo
insertaChalet
insertaCliente
InsertarElemento
InsertNuevoEmpleado
InsertNuevoEmpleado1
MiServicio
modificarInmueble
obtenerCodigosInmueble
obtenerIdInmueble
Figura 6.5.1 Diagrama servicio web
Estos métodos son llamados por la aplicación obteniendo así, de la BBDD, la
información necesaria para su correcto funcionamiento y aislando a su vez ésta del
acceso a los datos, siendo el servicio el que únicamente tiene relación con los datos.
7. Implementación y pruebas
7.1 Implementación
En este apartado se procede a desarrollar el código de las aplicaciones que
conforman el sistema.
77
Automatización de la gestión de la toma de
medidas para una inmobiliaria
La codificación se realizará siguiendo los modelos obtenidos en las etapas de
diseño anteriores, e implementarán fielmente las clases con los métodos y atributos
descritos en ellos.
El entorno de desarrollo es Visual Studio como ya se ha comentado
anteriormente. Se crearán 2 soluciones que recogen toda la funcionalidad de las
aplicaciones del sistema. Una solución estará orientada al desarrollo de la aplicación
de escritorio y otra orientada al desarrollo de la aplicación para dispositivos móviles.
En la siguiente figura se muestra el diagrama con todos lo formularios utilizados
en el desarrollo de la aplicación de escritorio:
Figura 7.1 Diagrama de GestInmob
Cabe destacar el subdirectorio “Web References”, que contiene la referencia al
servicio web “InmobService” que contiene toda la lógica de la aplicación.
78
Automatización de la gestión de la toma de
medidas para una inmobiliaria
El archivo “program.cs” es el primer archivo que se ejecuta cuando comienza la
ejecución de la aplicación e indica el formulario que se debe mostrar al arrancar, en
este caso se mostrará el formulario “Autenticacion.cs”.
El archivo “app.config” es el archivo de configuración de la aplicación en ella se
indica, entre otras cosas, el tipo de dato que intercambiará con el servicio, en este
caso, el tipo de dato intercambiado será de tipo String.
El subdirectorio “References” contiene las referencias a los distintos paquetes
proporcionados por Visual Studio 2005 para el correcto funcionamiento de la
aplicación:
Figura 7.2 Subdirectorio References
De la figura mostrada anteriormente, cabe destacar el paquete de
componentes Ascend, utilizado para el formulario “Menu.cs” y encargado de que la
interfaz sea más vistosa incorporando elementos que aportan sencillez a la aplicación.
Como también se puede observar, en este subdirectorio también se encuentra
la referencia a la biblioteca que utiliza la aplicación y desarrollada expresamente para
ella. El siguiente diagrama muestra el contenido de la biblioteca “InmobLib”:
79
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 7.3 Diagrama de InmobLib
Como se puede observar tiene varios archivos también contenidos en el
paquete “GestInmob” mostrado anteriormente, en este caso, el archivo “app.config”
además de poseer, el tipo de dato intercambiado en el servicio, también posee los
parámetros de conexión con la base de datos.
Se puede observar el directorio “Dominio”, que contiene las clases utilizadas
por la aplicación, así como un directorio “Utilidades” que contiene las utilidades
necesarias para serializar los objetos que se pasarán al servicio, dado que el tipo de
dato intercambiado es de tipo String.
Por último comentar el componente MiDataSet encargado de recibir la
información obtenida de la base de datos y de abstraer al programador de todo el
proceso.
Siguiendo con la explicación de los proyectos que componen la aplicación en la
siguiente figura se muestra el contenido del proyecto que contiene el ServicioWeb
“InmobService”.
80
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura 7.4 Diagrama del Servicio
En este diagrama se puede observar el archivo “MiServicio.cs” que contiene
toda la implementación de los métodos que utiliza el servicio web. También se puede
ver que contiene la librería, creada en el proyecto InmobLib, con extensión .dll pues se
trata de una aplicación Windows.
Por último se muestra un diagrama del proyecto que contiene el instalador de la
aplicación:
Figura 7.5 Diagrama del Instalador de GestInmob
Esto sólo se utiliza en la instalación de la aplicación de escritorio, es una
funcionalidad aportada por Visual Studio 2005, en la que añades un nuevo proyecto de
tipo instalador indicándole la solución de la que quieres crear el instalador y él ya lo
hace todo.
En cuanto a la solución que recoge toda la funcionalidad de la aplicación para
distintos móviles, se puede comentar que en su implementación tiene como partes
comunes con la aplicación de escritorio, la librería InmobLib y el servicio
InmobService, diferenciándose de ésta únicamente en el proyecto que implementa la
presentación de los formularios, dado que la potencia de la que disponen los
dispositivos móviles es mucho menor que la dispone una aplicación para un ordenador
81
Automatización de la gestión de la toma de
medidas para una inmobiliaria
de escritorio, por ello en la siguiente imagen se muestra el árbol de archivos de este
proyecto “GestInmobMobile”:
Figura 7.6 Diagrama de GestInmobMobile
Como se puede observar es muy similar al proyecto GestInmob, la diferencia
esta en el diseño de los formularios.
Por último se muestra un diagrama del proyecto que contiene el instalador de la
aplicación:
Figura 7.7 Diagrama del Instalador de GestInmobMobile
Esto sólo se utiliza en la instalación de la aplicación en los dispositivos móviles,
es una funcionalidad aportada por Visual Studio 2005, en la que añades un nuevo
82
Automatización de la gestión de la toma de
medidas para una inmobiliaria
proyecto de tipo instalador indicándole la solución de la que quieres crear el instalador
y él ya lo hace todo.
7.2 Pruebas
Las pruebas pretenden garantizar que el producto desarrollado cumple con los
requerimientos inicialmente registrados, es decir, que se trata de un desarrollo de
calidad. Por otro lado debe garantizarse el correcto funcionamiento del sistema.
A la par que se ha ido construyendo el sistema se han podido ir realizando las
pruebas unitarias para poder comprobar que las partes del sistema son correctas.
Una vez construido se puede traspasar el sistema a un entorno de prueba
donde puedan realizarse las pruebas de. Así, queda validado el desempeño, por parte
del sistema, de los requerimientos (Look & Feel), la autenticación única de y la
administración de los mismos.
También se valida la operación en ambiente integrado y la integración
funcional, identificando los procesos de interacción entre las aplicaciones.
8. Planificación y presupuesto
8.1 Planificación
La planificación de un proyecto es un aspecto fundamental que puede reducir
considerablemente el tiempo y el esfuerzo dedicado al mismo por parte de sus
integrantes. La planificación debe ser coherente y para ello se debe tener un
conocimiento previo de la complejidad del proyecto y de su alcance. En cualquier
caso, las fases o tareas que deben planificarse se corresponderán con el modelo de
metodología de desarrollo escogido.
Las tareas que comprende el proyecto son las siguientes:
83
Automatización de la gestión de la toma de
medidas para una inmobiliaria
1. Estudio de las tecnologías y herramientas a utilizar, tanto las Aplicaciones software
Libre como tecnologías como los Servicio de Windows, las comunicaciones, el
Servidor Web y los Servicios Web así como el sistema gestor Sql Server y los
accesos a datos.
2.
Análisis de requerimientos mediante el Modelo de dominio y los Casos de uso.
3.
Diseño Externo con el Modelo de Arquitectura y el Modelo de Paquetes.
4. Diseño Interno con el Modelo de Interfaz, los Diagramas de Interacción, los
Diagramas de Clases y el Modelo de datos.
5. Implementación y Pruebas que comprende las tareas:
1. Programación.
2. Pruebas unitarias.
3. Pruebas de integración.
6. Instalación y Puesta en Marcha.
7. Documentación
La siguiente tabla muestra cada uno de los hitos indicados anteriormente con
su fecha de inicio, su fecha de finalización y el número de días comprendidos entre
estas fechas:
Hito
Días
Estudio de tecnologías
Análisis de requerimientos
Diseño Externo
Diseño Interno
Estudios de técnicas de diseño y programación
Programación
Pruebas unitarias
Pruebas de integración
Documentación
10 days
13 days
22 days
44 days
53 days
65 days
13 days
10 days
229 days
Fecha
inicio
01/10/07
15/10/07
01/11/07
03/12/07
01/02/08
16/04/08
16/07/08
04/08/08
15/10/07
Fecha Fin
14/10/07
31/10/07
30/11/07
31/01/08
15/04/08
15/07/08
01/08/08
15/08/08
28/08/08
Figura 8.1.1 Planificación
84
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Su representación en un diagrama de Gantt queda de la siguiente manera:
Figura 8.1.2 Diagrama de Gantt
Como se muestra en la tabla superior se puede observar que el proyecto
comenzó el día 1/10/08 y la finalización del proyecto será el día 28/08/08.
8.2 Presupuesto
Se debe tener en cuenta dos aspectos para obtener el presupuesto del
proyecto: Por un lado la valoración económica del esfuerzo de los integrantes del
proyecto y por otro lado, el coste de las herramientas, ya sea software o hardware, que
se necesitan a la hora de desarrollar y de implementar el proyecto.
El presupuesto calculado en este punto sería aplicable a una empresa de
servicios informáticos que quisiera desarrollar e implantar el proyecto de cero
incluyendo las herramientas necesarias para ello.
Para obtener una valoración económica realista de los esfuerzos dedicados por
los integrantes atendiendo también a las diferencias en cuanto a la retribución que
recibe cada uno de ellos se debe tener en cuenta tres roles diferentes, jefe de
proyecto, analista-diseñador, y programador.
La retribución monetaria estimada por rol desempeñado es la siguiente:
Jefe de proyecto: 85 €/hora.
85
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Analista-Diseñador: 55 €/hora.
Programador: 40 €/hora.
En función de la planificación se puede decir que el tiempo estimado para la
realización del proyecto desglosado por puesto es:
Horas Totales
Estudio de tecnologías
Análisis de requerimientos
Diseño Externo
Diseño Interno
Estudios de técnicas de diseño y programación
Programación
Pruebas unitarias
Pruebas de integración
Documentación
40
52
88
176
212
260
52
40
114,5
Jefe de
Proy
2
2,6
4,4
8,8
10,6
13
2,6
2
5,725
Analista
Programador
12
15,6
26,4
52,8
63,6
78
15,6
12
34,35
26
33,8
57,2
114,4
137,8
169
33,8
26
74,425
Figura 8.2.1 Tabla horas por rol
Atendiendo a los roles, en función de la retribución establecida para cada rol,
se obtiene la siguiente tabla que indica la valoración económica de cada rol integrante
en el proyecto y de las tareas realizadas:
Horas Totales
Estudio de tecnologías
Análisis de requerimientos
Diseño Externo
Diseño Interno
Estudios de técnicas de diseño y programación
Programación
Pruebas unitarias
Pruebas de integración
Documentación
40
52
88
176
212
260
52
40
114,5
Total por rol
Jefe de
Proyecto
85
221
374
748
225,25
1105
221
170
121,65625
Analista
Programador
330
858
1452
5808
874,5
2145
858
660
472,3125
520
1352
2288
4576
1378
6760
1352
1040
744,25
3270,90625 13457,8125
Total
proyecto
20010,25
36738,9688
Figura 8.2.2 Tabla costes por rol
86
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Coste de las Herramientas:
Aquí se refleja las herramientas que serían necesarias para llevar a cabo el
proyecto y para implantarlo en un entorno de producción y se añade el coste que
supondría dichas herramientas.
En el entorno de desarrollo se requeriría las siguientes herramientas:
1. Software:

Visual Studio 2005: Se requeriría de una licencia del programa Visual
Studio. Visual Studio 2005 Professional Edition con suscripción MSDN
Professional: 1019 €

Sql Server: Como la versión gratuita, SQL Express, dispone de 2 GB de
memoria, se considera suficiente para poder utilizarla en el entorno de
desarrollo el coste es 0 €.

Sql Server Management Studio Express: Programa interfaz de gestor de
base de datos gratuito. 0 €.

Sistema Operativo: Windows XP. Incluído con el hardware.

Servicios de Internet Information Server: Viene incluído dentro del sistema
operativo. El coste es de 0 €

Active Sync. Incluído con el hardware. El coste es de 0 €

Sistema Operativo Windows Mobile 6.0. Incluído con el hardware. E
Total Software: 1019 €
2. Hardware:

Servidor Dell PowerEdge 2900
El servidor Dell PowerEdge 2900 está especialmente recomendado para
aplicaciones de bases de datos e infraestructura de red, por lo que se
ajusta perfectamente a las necesidades del sistema. Va a ser utilizado
87
Automatización de la gestión de la toma de
medidas para una inmobiliaria
para alojar las bases de datos y el servidor de aplicaciones. Las
características de este servidor son:
• Dos procesadores Dual Core Intel Xeon 5060 a 3.2GHz con 2x2MB
Cache y 667MHZ FSB
• 8GB DDR2 FB de Memoria
• Tarjeta Controladora RAID 1 Integrada PERC 5/i
• 4 discos duros de 250GB, SATA Universal, 3.5inch, 7.200 rpm
• Backup de cinta PowerVault 100T, DAT72,
36/72GB
• Microsoft Windows Server 2003 R2, Standard
Edition
• Precio: 7.983 € (IVA incluido)
Figura 8.2.3 Servidor Dell
PowerEdge

PDA Dell Axim X51v
Este modelo de PDA se ajusta perfectamente a las necesidades del
sistema ya que cuenta con tecnología WIFI y una pantalla VGA de alta
resolución. Las características completas de esta PDA son:
• Procesador Intel XScaleTM PXA270 624 MHz
• Sistema operativo Microsoft Windows MobileTM 5.0 con Windows Media
Player 10 Mobile
• Memoria

RAM: SDRAM de 64 MB

ROM: Memoria Flash de 256 MB
• Pantalla LCD táctil TFT a color de 3,7 pulgadas con una resolución de
480 x 640 a 65.536 colores (VGA)
• Tecnología inalámbrica integrada Bluetooth (v1.2)
• Tecnología inalámbrica 802.11b integrada
• Precio: 416 € (IVA incluido)

HP Pavilion Slimline s3500
88
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Se requiere de un PC de sobremesa. Existe gran variedad de
posibilidades. Se ha escogido el que se ha utilizado en el puesto de
trabajo para el desarrollo:
Figura 8.2.4 Ordenador HP Pavilion
• Precio: 599 € (IVA incluido)
Total Hardware= 8998€
Siendo el coste total de las Herramientas,
Total Herramientas = 10017€
Sumando a esta cantidad el coste del desarrollo nos queda un total de:
Cte. Desarrollo
36739 €
Cte. Herramientas
10017 €
Total
46756 €
89
Automatización de la gestión de la toma de
medidas para una inmobiliaria
9. Conclusiones y evolución del sistema
9.1 Conclusiones
La elaboración de este proyecto ha servido para afianzar y poner en práctica
muchos de los conocimientos aprendidos a lo largo de toda la carrera.
Principalmente se han tratado aspectos de ingeniería del software en todas sus
fases así como tratamiento de bases de datos, programación orientada a objetos en
C# y aplicación de Algoritmia en muchos de los métodos. También se ha podido
afianzar y desarrollar los conocimientos adquiridos en cuanto a planificación y gestión
de proyectos.
Por otro lado, se puede considerar que se han cumplido los objetivos
propuestos antes de comenzarlo, desarrollando un sistema de calidad que cumple con
todos los requisitos y, adquiriendo un gran conocimiento y familiarización no sólo con
las últimas tecnologías en cuanto a desarrollo de software sino también con técnicas
adecuadas de diseño y programación.
9.2 Evolución del sistema
La evolución del sistema, principalmente tratará temas visuales, que hagan que
la interfaz del sistema vaya evolucionando con las nuevas tecnologías visuales que
vayan saliendo al mercado, renovando la apariencia del sistema haciendo que éste no
parezca anticuado, pues la rama de negocio hacia la que está enfocada la aplicación
no sufrirá demasiados cambios en la forma de realizar las operaciones.
Otra posible evolución, será la implantación del sistema en la web, de forma
que no exista diferenciación entre la aplicación para dispositivos móviles y puestos de
escritorio, pues ambos cliente se conectarán a una página web de la inmobiliaria.
Por último, se realizará una ampliación en la funcionalidad de la aplicación de
forma que ésta pueda realizar una comunicación con dispositivos de medidas digitales,
90
Automatización de la gestión de la toma de
medidas para una inmobiliaria
de forma que la aplicación realice mediciones reales de los distintos habitáculos de la
vivienda ampliando así la información disponible de los inmuebles.
91
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Bibliografía
[BARR01]
Barranco de Areba, Jesús, “Metodología del análisis
estructurado de sistemas”, Publicaciones de la Universidad
Pontificia Comillas, Madrid 2001.
[ESQU05]
Esquivel, Juan Carlos, “Apuntes Ingeniería del Software II”,
Universidad Pontificia Comillas, Madrid 2005.
[CHAR02]
Francisco Charte Ojeda, “Visual C# .NET”, Anaya
Multimedia, 2002.
[RIVE02]
Rivero Cornelio, Enrique, Luis Martínez, Luis Reina, Juan
Benavides, Juan Mª Olaizola, “Introducción al SQL para
Usuarios y Programadores”, Thomson, Madrid 2002.
Principales páginas web visitadas:
http://msdn2.microsoft.com/en-us/library/default.aspx (“MSDN Framework .NET
Development Library”)
http://es.wikipedia.org/wiki/Portada (“Wikipedia”).
http://www.todopocketpc.com (Página con amplia información sobre PDA´s)
http://www.pdaexpertos.com (Página con amplia información sobre PDA´s)
http://www.lawebdelprogramador.com
92
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Anexo I: Manual de Usuario de la aplicación de escritorio
En este apartado se va a explicar el manejo y uso de la aplicación GestInmob.
La aplicación comienza con una ventana de autenticación, figura A.1.1, en ella los
usuarios deberán introducir su usuario y contraseña. Una vez realizado esto se deberá
pulsar el botón “Aceptar”.
Figura A.1.1 Ventana de Autenticación
En caso de que el usuario o contraseña no sean correctos se mostrará un
mensaje indicando el error, el mensaje mostrado será el siguiente
Figura A.1.2 Error en la autenticación
Si la autenticación es correcta se mostrará la ventana con el menú principal,
que presentará todos los módulos de los que se compone la aplicación.
93
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura A1.3 Menú Principal
En esta ventana se encuentran diferenciadas 3 zonas:
Zona 1: En esta parte de la ventana es donde se cargarán las ventanas que
realizan las distintas funcionalidades que ofrece la aplicación, las ventanas
cargadas en esta zona se podrán maximizar hasta el tamaño máximo de esta
zona.
Zona 2: En esta parte de la ventana se podrá seleccionar cada una de las
opciones disponibles para cada uno de los módulos de los que se compone la
aplicación, siendo éstos seleccionados en la zona 3.
Zona 3: En esta parte de la ventana se muestran los distintos módulos de los
que se compone la aplicación, estos 3 módulos son:
94
Automatización de la gestión de la toma de
medidas para una inmobiliaria
o
Módulo inmuebles: que contiene todas acciones relacionadas con los
inmuebles.
o
Módulo empleados: que contiene todas las acciones relacionadas con
los empleados.
o
Módulo de informes, en los que se muestra información acerca de los
inmuebles y de los empleados.
Por ello el modo de seleccionar una determinada opción consiste en
seleccionar el módulo correspondiente en la zona 3 y una vez se desplieguen las
opciones de este módulo seleccionar una de éstas en la zona 2.
A1.1 Módulo de inmuebles:
En este módulo se muestran las operaciones que se pueden realizar sobre los
inmuebles, cuando seleccionamos este módulo observamos las siguientes acciones
disponibles:
Figura A.1.4 Módulo inmuebles
Como se puede observar las opciones disponibles son las siguientes:
Dar de alta un inmueble
Dar de baja un inmueble
95
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Modificar los datos de un inmueble
A1.1.1 Alta de inmueble
Antes de empezar a ver paso a paso la forma de realizar esta operación se
muestran todos los pasos necesarios:
1.- Seleccionar el módulo inmuebles situado en la zona 3
2.- Elegir la operación de “Dar de alta inmueble”
3.- Introducir el DNI del cliente que quiere dar de alta un inmueble en la agencia
3.1.- En el caso de que el cliente no tenga anunciado o no halla tenido
dado de alta ningún otro inmueble rellenar los datos del cliente.
4.- Pulsar aceptar cuando se muestre el resumen de los datos del cliente si
éstos son correctos.
5.- Seleccionar el tipo de inmueble que se desea añadir y pulsar el botón
“Aceptar”.
Una vez se ha seleccionado la operación dar de alta inmueble se nos muestra
la siguiente ventana:
96
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura A1.5 Ventana TipoCliente
En esta ventana el empleado de la oficina debe introducir el DNI del cliente que
desea dar de alta el inmueble y pulsar el botón “Aceptar”, en caso de que el cliente sea
la primera vez que da de alta un inmueble de su propiedad en la oficina se mostrará la
siguiente ventana:
Figura A1.6 Ventana NuevoCliente
97
Automatización de la gestión de la toma de
medidas para una inmobiliaria
En esta ventana el usuario de la aplicación deberá introducir los datos del
cliente solicitados, en este caso son los siguientes:

Nombre

Primer Apellido

Segundo Apellido

DNI

Dirección

Teléfono de contacto

Dirección de correo electrónico

Disponibilidad
horaria,
seleccionando
una
de
las
opciones
disponibles en la lista desplegable
Tras introducir los datos del cliente se pulsará el botón “Aceptar”.
Si el cliente que quiere dar de alta el nuevo inmueble en la oficina ya tenga o
halla tenido algún inmueble anunciado en la oficina la anterior ventana no será
mostrada y directamente se mostrará una ventana con el resumen de los datos del
cliente que va a dar de alta el nuevo inmueble, la ventana mostrada será la siguiente:
98
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura A1.7 Ventana Resumen del Cliente
El usuario deberá pulsar el botón “Aceptar” si los datos mostrados son los
correctos en caso contrario, pulsará el botón cancelar que hará que se muestre la
ventana de la figura A1.6 en la que podrá actualizar los datos.
Tras aceptar los datos mostrados en la ventana de resumen, al usuario se le
mostrará la siguiente ventana, en la que deberá seleccionar el tipo de inmueble que
desea introducir:
99
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura A1.8 Ventana Seleccionar Tipo de inmueble
Una vez seleccionado el tipo de inmueble se mostrará la ventana propia del
inmueble donde se deberá introducir la información referente al inmueble:
Figura A1.9 Datos Inmueble I
100
Automatización de la gestión de la toma de
medidas para una inmobiliaria
En esta ventana se deberán introducir los datos conocidos en función los
siguientes aspectos:

Tipo de chalet

Dirección

Número

Urbanización

Metros construidos

Metros útiles

Metros de parcela

Finalidad
Tras introducir los datos conocidos referentes a los aspectos nombrados arriba
pulsaremos sobre la pestaña “Distribución” que nos mostrará la siguiente ventana:
Figura A1.10 Datos inmueble II
De la que deberemos rellenar los siguientes campos si éstos son conocidos:

Número de plantas

Número de habitaciones
101
Automatización de la gestión de la toma de
medidas para una inmobiliaria

Número de baños

Metros cuadrados de salón
Tras introducir los datos conocidos referentes a los aspectos nombrados arriba
pulsaremos sobre la pestaña “Extras” que nos mostrará la siguiente ventana:
Figura A1.11 Datos Inmueble III
De la que deberemos rellenar los siguientes datos si éstos son conocidos:

Estado del inmueble (Buen estado o A reformar)

Numero de armarios empotrados

Tipo de suelo

Aire Acondicionado

Antena parabólica

Tipo de fachada

Antigüedad del edificio

Calefacción

Ascensor

Puerta de seguridad

Alarma

Trastero
102
Automatización de la gestión de la toma de
medidas para una inmobiliaria

Circuito cerrado de seguridad

Conserje
Tras introducir los datos conocidos referentes a los aspectos nombrados arriba
pulsaremos sobre la pestaña “Instalaciones” que nos mostrará la siguiente ventana:
Figura A1.12 Datos Inmueble IV
De la que deberemos rellenar los siguientes datos si éstos son conocidos:

Piscina

Gimnasio

Paddle

Tenis

Futbol

Baloncesto

Golf

Parque infantil
Tras introducir los datos conocidos referentes a los aspectos nombrados arriba
pulsaremos sobre la pestaña “razón” que nos mostrará la siguiente ventana:
103
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura A1.13 Datos Inmueble V
De la que deberemos rellenar los siguientes datos si éstos son conocidos:

Razón
Por último y común a todas las pestañas deberemos rellenar el campo “Precio”,
siendo éste un campo indispensable, y sin él no es posible realizar el alta del
inmueble. Tras esto y una vez que pulsemos el botón “Siguiente” obtendremos un
mensaje indicando el resultado de la operación.
En caso de éxito el mensaje mostrado es el siguiente:
Figura A1.14 Éxito en la introducción del inmueble
104
Automatización de la gestión de la toma de
medidas para una inmobiliaria
A1.1.2 Baja de inmueble
Otra de las funcionalidades que aporta el módulo de inmuebles es la de dar de
baja o retirar un inmueble, el procedimiento que se ha de realizar es muy sencillo,
consiste en seleccionar en la ventana que se nos muestra el inmueble que queremos
dar de baja, y una vez lo tenemos seleccionado pulsamos sobre el botón “Retirar” tras
realizar esta operación podremos comprobar que el inmueble ya no aparece en la lista
de inmuebles disponibles.
La ventana que se nos muestra al pulsar sobre el módulo de inmuebles y
luego sobre la operación de dar de baja un inmueble es la siguiente:
Figura A1.15 Ventana Baja Inmueble
A1.1.3 Modificar Inmueble
Para seleccionar esta operación es necesario seleccionar el módulo de
inmuebles situado en la zona 2 y tras esto seleccionar la operación “Modificar
Inmueble”.
105
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Los pasos que son necesarios para realizar la operación de modificar un
inmueble son:
1.- Seleccionar el inmueble que se desea modificar, para ello se muestra la
siguiente ventana:
Figura A1.16 Seleccionar Inmueble
En esta ventana debemos seleccionar el inmueble que queremos modificar,
una vez seleccionado se nos mostrará una ventana similar a la de inserción del
inmueble rellena con la información que se posee hasta la fecha, en ella deberemos
modificar la información que sea necesaria, la ventana mostrada es la que sigue a
continuación:
106
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura A1.17 Modificar Inmueble
Una vez la información ha sido introducida pulsaremos sobre el botón modificar
y la información disponible sobre el inmueble seleccionado habrá sido modificada.
A1.2 Módulo Empleados
En este módulo se muestran las operaciones que se pueden realizar sobre los
empleados, cuando seleccionamos este módulo observamos las siguientes acciones
disponibles:
Figura A1.18 Módulo empleados
107
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Como se ha podido observar en la figura anterior las operaciones que se
pueden realizar en este módulo son las siguientes:
Dar de alta un nuevo empleado.
Dar de baja un empleado.
Modificar los datos de un empleado.
A1.2.1 Alta nuevo empleado:
La operación de dar de alta un nuevo empleado es muy sencilla e intuitiva, para
realizar esta operación es necesario seleccionar el módulo de empleados de la zona 3,
y dentro de él seleccionar la operación “Dar de alta empleado”, al seleccionar esta
opción se nos mostrará la siguiente ventana:
Figura A1.19 Alta de nuevo empleado
108
Automatización de la gestión de la toma de
medidas para una inmobiliaria
En esta ventana se introducirán los datos correspondientes al nuevo empleado
que se quiere dar de alta, estos datos son:

Nombre

Apellidos

DNI

Fecha de nacimiento

Número de la seguridad social

Dirección

País

Provincia

Teléfono

Email

Código postal

Número de cuenta bancaria
Una vez hemos rellenado todos los datos, pulsamos sobre el botón “Aceptar”, y
se nos informará mediante un mensaje sobre la ejecución satisfactoria o no de la
operación.
A1.2.2 Baja de empleado
La operación de baja de empleados también se encuentra dentro del módulo
de empleados, el modo de operar para realizar esta operación es muy similar al de la
operación de dar de baja un inmueble, los pasos a seguir para realizar esta operación
son los siguientes:
1.- Seleccionar el empleado que se quiere dar de baja
2.- Pulsar el botón “Borrar”
La siguiente ventana muestra la ventana para realizar la operación de dar de
baja a un empleado:
109
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura A1.20 Ventana BajaEmpleado
La aplicación mostrará un mensaje indicando la finalización de la operación,
mostrando un mensaje de error en caso de que se produzca un error o un mensaje de
éxito si la operación se ha realizado de forma correcta.
A1.2.3 Modificar empleado
La operación de modificar un empleado se encuentra localizada dentro del
módulo de empleados, los pasos necesarios para realizar esta operación son los
siguientes:
1.- Se seleccionará el empleado del cual se quieren modificar los datos
2.- Se pulsará el botón “Modificar”
3.- Se modificaran la información que sea necesaria
4.- Se pulsará el botón “Aceptar”
La primera ventana que se muestra al pulsar la operación “Modificar Empleado”
es la que sigue a continuación:
110
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura A1.21 Seleccionar Empleado
En esta ventana seleccionaremos el empleado que deseamos modificar y
pulsaremos el botón “Modificar…”, a continuación se nos mostrará la siguiente
ventana:
111
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura A1.22 Modificar empleado
Modificaremos los datos y pulsaremos el botón “Aceptar”.
La aplicación mostrará un mensaje indicando la finalización de la operación,
mostrando un mensaje de error en caso de que se produzca un error o un mensaje de
éxito si la operación se ha realizado de forma correcta.
A1.3 Módulo Informes
En este módulo se encuentran contenidas las operaciones obtener información
sobre los inmuebles y sobre los empleados, este módulo esta localizado en la zona 3
de la ventana del menú principal mostrando anteriormente en la figura A1.3
Las distintas operaciones que se pueden realizar son las mostradas en la
siguiente figura:
112
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura A1.23 Módulo Informes
Como se ha podido observar en la figura anterior las operaciones que se
pueden realizar en este módulo son las siguientes:
Obtener informe sobre todos los inmuebles.
Obtener informe sobre todos los empleados.
Obtener estadísticas sobre inmueble y empleados.
A1.3.1 Obtener informe sobre todos los inmuebles:
Mediante esta operación, localizada en el módulo de informes, podremos
obtener información a cerca de los inmuebles, la ventana que se mostrará al ejecutar
la operación será la siguiente:
113
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura A1.24 Informe inmuebles
Como se puede observar en la ventana mostrada anteriormente podemos
encontrar información detallada de todos los inmuebles, tanto aquellos cuya finalidad
sea Venta o Alquiler de los disponibles actualmente o número total de inmuebles de
ese tipo que ha habido desde la puesta en marcha de la aplicación.
Además ofrece información a cerca del inmueble más caro actualmente para
venta y alquiler.
A1.3.2 Obtener informe sobre todos los empleados:
Mediante esta operación, localizada en el módulo de informes, podremos
obtener información a cerca de los empleados, la ventana que se mostrará al ejecutar
la operación será la siguiente:
114
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura A1.24 Informe empleados
Como se puede ver en la ventana anterior podemos encontrar información a
cerca del número total de empleados, así como el empleado que más altas y bajas de
inmuebles lleva producidas hasta la fecha.
A1.3.3 Obtener informe sobre estadísticas:
Mediante esta operación, localizada en el módulo de informes, podremos
obtener información a cerca de los empleados/inmuebles, la ventana que se mostrará
al ejecutar la operación será la siguiente:
115
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura A1.24 Informe empleados
Como se puede ver en la ventana anterior podemos encontrar información a
cerca del número total de empleados, el número total de inmuebles y la relación entre
Inmuebles/Empleados.
Anexo II: Manual de Usuario de la aplicación para dispositivos
móviles
En este apartado se va a explicar el manejo y uso de la aplicación
GestInmobMobile. La aplicación comienza con una ventana de autenticación, figura
A.2.1, en ella los usuarios deberán introducir su usuario y contraseña. Una vez
realizado esto se deberá pulsar el botón “Aceptar”.
116
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura A2.1 Ventana de Autenticación
Si la autenticación es correcta se mostrará la ventana con el menú principal,
que presentará todos los módulos de los que se compone la aplicación.
Figura A2.2 Menú Principal
Los dos módulos de los que se compone la aplicación son los siguientes:
Módulo de inmuebles: que contiene todas acciones relacionadas con los
inmuebles.
Módulo de informes, en los que se muestra información acerca de los
inmuebles y de los empleados.
117
Automatización de la gestión de la toma de
medidas para una inmobiliaria
A2.1 Módulo de inmuebles:
En este módulo se muestran las operaciones que se pueden realizar sobre los
inmuebles, cuando seleccionamos este módulo observamos las siguientes acciones
disponibles:
Figura A2.3 Módulo inmuebles
Como se puede observar las opciones disponibles son las siguientes:
Dar de alta un inmueble
Dar de baja un inmueble
Modificar los datos de un inmueble
A2.1.1 Alta de inmueble
Antes de empezar a ver paso a paso la forma de realizar esta operación se
muestran todos los pasos necesarios:
1.- Seleccionar el módulo inmuebles.
2.- Elegir la operación de “Dar de alta inmueble”
3.- Introducir el DNI del cliente que quiere dar de alta un inmueble en la agencia
3.1.- En el caso de que el cliente no tenga anunciado o no halla tenido
118
Automatización de la gestión de la toma de
medidas para una inmobiliaria
dado de alta ningún otro inmueble rellenar los datos del cliente.
4.- Pulsar aceptar cuando se muestre el resumen de los datos del cliente si
éstos son correctos.
5.- Seleccionar el tipo de inmueble que se desea añadir y pulsar el botón
“Aceptar”.
Una vez se ha seleccionado la operación dar de alta inmueble se nos muestra
la siguiente ventana:
Figura A2.4 Ventana TipoCliente
En esta ventana el empleado de la oficina debe introducir el DNI del cliente que
desea dar de alta el inmueble y pulsar el botón “Aceptar”, en caso de que el cliente sea
la primera vez que da de alta un inmueble de su propiedad en la oficina se mostrará la
siguiente ventana:
119
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura A2.5 Ventana NuevoCliente
En esta ventana el usuario de la aplicación deberá introducir los datos del
cliente solicitados, en este caso son los siguientes:

Nombre

Primer Apellido

Segundo Apellido

DNI

Dirección

Teléfono de contacto

Dirección de correo electrónico

Disponibilidad
horaria,
seleccionando
una
de
las
opciones
disponibles en la lista desplegable
Tras introducir los datos del cliente se pulsará el botón “Aceptar”.
120
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Si el cliente que quiere dar de alta el nuevo inmueble en la oficina ya tenga o
halla tenido algún inmueble anunciado en la oficina la anterior ventana no será
mostrada y directamente se mostrará una ventana con el resumen de los datos del
cliente que va a dar de alta el nuevo inmueble, la ventana mostrada será la siguiente:
Figura A2.6 Ventana Resumen del Cliente
El usuario deberá pulsar el botón “Aceptar” si los datos mostrados son los
correctos en caso contrario, pulsará el botón cancelar que hará que se muestre la
ventana de la figura A1.6 en la que podrá actualizar los datos.
Tras aceptar los datos mostrados en la ventana de resumen, al usuario se le
mostrará la siguiente ventana, en la que deberá seleccionar el tipo de inmueble que
desea introducir:
121
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura A2.7 Ventana Seleccionar Tipo de inmueble
Una vez seleccionado el tipo de inmueble se mostrará la ventana propia del
inmueble donde se deberá introducir la información referente al inmueble:
Figura A2.8 Datos Inmueble I
122
Automatización de la gestión de la toma de
medidas para una inmobiliaria
En esta ventana se deberán introducir los datos conocidos en función los
siguientes aspectos:

Tipo de chalet

Dirección

Número

Urbanización

Metros construidos

Metros útiles

Metros de parcela

Finalidad
Tras introducir los datos conocidos referentes a los aspectos nombrados arriba
pulsaremos sobre el botón “Siguiente” que nos mostrará la siguiente ventana:
Figura A2.9 Datos inmueble II
De la que deberemos rellenar los siguientes campos si éstos son conocidos:

Número de plantas

Número de habitaciones

Número de baños

Metros cuadrados de salón
123
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Tras introducir los datos conocidos referentes a los aspectos nombrados arriba
pulsaremos sobre el botón “Siguiente” que nos mostrará la siguiente ventana:
Figura A2.10 Datos Inmueble III
De la que deberemos rellenar los siguientes datos si éstos son conocidos:

Estado del inmueble (Buen estado o A reformar)

Numero de armarios empotrados

Tipo de suelo

Aire Acondicionado

Antena parabólica

Tipo de fachada

Antigüedad del edificio

Calefacción
Tras introducir los datos conocidos referentes a los aspectos nombrados arriba
pulsaremos sobre el botón “Siguiente” que nos mostrará la siguiente ventana:
124
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura A2.11 Datos Inmueble IV
De la que deberemos rellenar los siguientes datos si éstos son conocidos:

Ascensor

Puerta de seguridad

Alarma

Trastero

Circuito cerrado de seguridad

Conserje

Piscina

Gimnasio

Paddle

Tenis

Futbol

Baloncesto

Golf

Parque infantil
Tras introducir los datos conocidos referentes a los aspectos nombrados arriba
pulsaremos sobre el botón “Siguiente” que nos mostrará la siguiente ventana:
125
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura A2.12 Datos Inmueble V
De la que deberemos rellenar los siguientes datos si éstos son conocidos:

Razón
Por último deberemos rellenar el campo “Precio”, siendo éste un campo
indispensable, y sin él no es posible realizar el alta del inmueble. Tras esto y una vez
que pulsemos el botón “Siguiente” obtendremos un mensaje indicando el resultado de
la operación.
A1.1.2 Baja de inmueble
Otra de las funcionalidades que aporta el módulo de inmuebles es la de dar de
baja o retirar un inmueble, el procedimiento que se ha de realizar es muy sencillo,
consiste en seleccionar en la ventana que se nos muestra el inmueble que queremos
dar de baja, y una vez lo tenemos seleccionado pulsamos sobre el botón “Retirar”.
La ventana que se nos muestra al pulsar sobre el módulo de inmuebles y
luego sobre la operación de dar de baja un inmueble es la siguiente:
126
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura A2.13 Ventana Baja Inmueble
A1.1.3 Modificar Inmueble
Para seleccionar esta operación es necesario seleccionar el módulo de
inmuebles y tras esto seleccionar la operación “Modificar Inmueble”.
Los pasos que son necesarios para realizar la operación de modificar un
inmueble son:
1.- Seleccionar el inmueble que se desea modificar, para ello se muestra la
siguiente ventana:
127
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Figura A2.14 Seleccionar Inmueble
En esta ventana debemos seleccionar el inmueble que queremos modificar,
una vez seleccionado se nos mostrará una ventana similar a la de inserción del
inmueble rellena con la información que se posee hasta la fecha, en ella deberemos
modificar la información que sea necesaria, la ventana mostrada es la que sigue a
continuación:
Figura A2.14 Modificar Inmueble I
Figura A2.15 Modificar Inmueble V
128
Automatización de la gestión de la toma de
medidas para una inmobiliaria
Una vez la información ha sido introducida pulsaremos sobre el botón
“Siguiente” y la información disponible sobre el inmueble seleccionado habrá sido
modificada.
A2.2 Módulo Informes
En este módulo se encuentran contenidas las operaciones obtener información
sobre los inmuebles y sobre los empleados.
Las distintas operaciones que se pueden realizar son las mostradas en la
siguiente figura:
Figura A2.16 Módulo Informes
Como se ha podido observar este módulo nos ofrece estadísticas al empleado
sobre el número de inmuebles que ha dado de alta el empleado en el mes, así como la
media de inmuebles dados de alta por el empleado de media durante el año.
129
Descargar