SlideShare una empresa de Scribd logo
1 de 138
Descargar para leer sin conexión
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
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria
Gestión inmobiliaria

Más contenido relacionado

La actualidad más candente

Modelado basados en escenarios
Modelado basados en escenariosModelado basados en escenarios
Modelado basados en escenariosUCATEBA
 
Agentes reactivos basados en modelos
Agentes reactivos basados en modelosAgentes reactivos basados en modelos
Agentes reactivos basados en modelosSaúl Hulse
 
Normalizacion boyce codd_4_fn
Normalizacion boyce codd_4_fnNormalizacion boyce codd_4_fn
Normalizacion boyce codd_4_fnLuis Jherry
 
esto es de transformacion del modelo relacional
esto es  de transformacion del modelo relacionalesto es  de transformacion del modelo relacional
esto es de transformacion del modelo relacionalBrahyan Marquez
 
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...Hugo Alberto Rivera Diaz
 
POO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y PolimorfismoPOO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y PolimorfismoActimel
 
Problemas de diseño de base de datos
Problemas de diseño de base de datosProblemas de diseño de base de datos
Problemas de diseño de base de datosgonzalopomboza
 
4 1 personalizacion de metodologias
4 1 personalizacion de metodologias4 1 personalizacion de metodologias
4 1 personalizacion de metodologiaslandeta_p
 
Cuadro comparativo de enfoque estructurado y enfoque orientado
Cuadro comparativo de enfoque estructurado y enfoque orientadoCuadro comparativo de enfoque estructurado y enfoque orientado
Cuadro comparativo de enfoque estructurado y enfoque orientadoFreddySantiago32
 
Convertir Diagrama Entidad-Relacion a Modelo Relacional.
Convertir Diagrama Entidad-Relacion a Modelo Relacional.Convertir Diagrama Entidad-Relacion a Modelo Relacional.
Convertir Diagrama Entidad-Relacion a Modelo Relacional.Erivan Martinez Ovando
 

La actualidad más candente (20)

Modelado basados en escenarios
Modelado basados en escenariosModelado basados en escenarios
Modelado basados en escenarios
 
Clase 11 uml_casos_de_uso
Clase 11 uml_casos_de_usoClase 11 uml_casos_de_uso
Clase 11 uml_casos_de_uso
 
Agentes reactivos basados en modelos
Agentes reactivos basados en modelosAgentes reactivos basados en modelos
Agentes reactivos basados en modelos
 
Bases de Datos de Tercera Generacion
Bases de Datos de Tercera GeneracionBases de Datos de Tercera Generacion
Bases de Datos de Tercera Generacion
 
Clase math.java
Clase math.javaClase math.java
Clase math.java
 
3.4. Logica de predicados
3.4. Logica de predicados3.4. Logica de predicados
3.4. Logica de predicados
 
Pt7seccion2
Pt7seccion2Pt7seccion2
Pt7seccion2
 
Normalizacion boyce codd_4_fn
Normalizacion boyce codd_4_fnNormalizacion boyce codd_4_fn
Normalizacion boyce codd_4_fn
 
esto es de transformacion del modelo relacional
esto es  de transformacion del modelo relacionalesto es  de transformacion del modelo relacional
esto es de transformacion del modelo relacional
 
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
 
Tarjetas crc
Tarjetas crcTarjetas crc
Tarjetas crc
 
POO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y PolimorfismoPOO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y Polimorfismo
 
Problemas de diseño de base de datos
Problemas de diseño de base de datosProblemas de diseño de base de datos
Problemas de diseño de base de datos
 
Abstracción de datos
Abstracción de datosAbstracción de datos
Abstracción de datos
 
Pilas, colas, y listas estructura de datos
Pilas, colas, y listas estructura de datosPilas, colas, y listas estructura de datos
Pilas, colas, y listas estructura de datos
 
4 1 personalizacion de metodologias
4 1 personalizacion de metodologias4 1 personalizacion de metodologias
4 1 personalizacion de metodologias
 
Cuadro comparativo de enfoque estructurado y enfoque orientado
Cuadro comparativo de enfoque estructurado y enfoque orientadoCuadro comparativo de enfoque estructurado y enfoque orientado
Cuadro comparativo de enfoque estructurado y enfoque orientado
 
Programación 3: listas enlazadas
Programación 3: listas enlazadasProgramación 3: listas enlazadas
Programación 3: listas enlazadas
 
Tipos de datos abstractos
Tipos de datos abstractosTipos de datos abstractos
Tipos de datos abstractos
 
Convertir Diagrama Entidad-Relacion a Modelo Relacional.
Convertir Diagrama Entidad-Relacion a Modelo Relacional.Convertir Diagrama Entidad-Relacion a Modelo Relacional.
Convertir Diagrama Entidad-Relacion a Modelo Relacional.
 

Destacado

Manual del Panel de gestion Red de asociaciones
Manual del Panel de gestion Red de asociacionesManual del Panel de gestion Red de asociaciones
Manual del Panel de gestion Red de asociacionescesar villasante
 
Diagramas De Casos De Uso
Diagramas De Casos De UsoDiagramas De Casos De Uso
Diagramas De Casos De Usonahun1385
 
Creando un servicio SOAP en Java con NetBeans
Creando un servicio SOAP en Java con NetBeansCreando un servicio SOAP en Java con NetBeans
Creando un servicio SOAP en Java con NetBeansDavid Fernández Puentes
 
Attention Deficit Hyperactivity Disorder (NIMH)
Attention Deficit Hyperactivity Disorder (NIMH)Attention Deficit Hyperactivity Disorder (NIMH)
Attention Deficit Hyperactivity Disorder (NIMH)FortMyersDrugRehab
 
Ecopower : Domestic Riello UPS Reseller And Distributor
Ecopower : Domestic Riello UPS Reseller And DistributorEcopower : Domestic Riello UPS Reseller And Distributor
Ecopower : Domestic Riello UPS Reseller And Distributorecopowersupplies
 
COMPARTAMOS VIDA
COMPARTAMOS VIDACOMPARTAMOS VIDA
COMPARTAMOS VIDAJAVIMAX
 
Blue Perfection
Blue PerfectionBlue Perfection
Blue Perfection23dreams
 
Chat, Social, Email....Getting Engagement Right in the Contact Centre
Chat, Social, Email....Getting Engagement Right in the Contact CentreChat, Social, Email....Getting Engagement Right in the Contact Centre
Chat, Social, Email....Getting Engagement Right in the Contact Centremplsystems
 
Merkel u ring-tm-23
Merkel u ring-tm-23Merkel u ring-tm-23
Merkel u ring-tm-23walleseals
 
Presentación iii sem 2013 1
Presentación iii sem 2013 1Presentación iii sem 2013 1
Presentación iii sem 2013 1SandraCerezo
 
Investigación para el desarrollo de la Agricultura CIRAD
Investigación para el desarrollo de la Agricultura CIRADInvestigación para el desarrollo de la Agricultura CIRAD
Investigación para el desarrollo de la Agricultura CIRADPTMacaronesia
 
Welcome to the Worm Factory: Instruction Manual
Welcome to the Worm Factory: Instruction ManualWelcome to the Worm Factory: Instruction Manual
Welcome to the Worm Factory: Instruction Manualx3G9
 
Debating in the Curriculum - Jessica Dix
Debating in the Curriculum - Jessica DixDebating in the Curriculum - Jessica Dix
Debating in the Curriculum - Jessica DixChallenge Partners
 

Destacado (20)

Diagrama de casos de uso
Diagrama de casos de usoDiagrama de casos de uso
Diagrama de casos de uso
 
Manual del Panel de gestion Red de asociaciones
Manual del Panel de gestion Red de asociacionesManual del Panel de gestion Red de asociaciones
Manual del Panel de gestion Red de asociaciones
 
Diagramas De Casos De Uso
Diagramas De Casos De UsoDiagramas De Casos De Uso
Diagramas De Casos De Uso
 
Creando un servicio SOAP en Java con NetBeans
Creando un servicio SOAP en Java con NetBeansCreando un servicio SOAP en Java con NetBeans
Creando un servicio SOAP en Java con NetBeans
 
Attention Deficit Hyperactivity Disorder (NIMH)
Attention Deficit Hyperactivity Disorder (NIMH)Attention Deficit Hyperactivity Disorder (NIMH)
Attention Deficit Hyperactivity Disorder (NIMH)
 
Ecopower : Domestic Riello UPS Reseller And Distributor
Ecopower : Domestic Riello UPS Reseller And DistributorEcopower : Domestic Riello UPS Reseller And Distributor
Ecopower : Domestic Riello UPS Reseller And Distributor
 
COMPARTAMOS VIDA
COMPARTAMOS VIDACOMPARTAMOS VIDA
COMPARTAMOS VIDA
 
Blue Perfection
Blue PerfectionBlue Perfection
Blue Perfection
 
David leonardo briceño moreno 03
David leonardo briceño moreno  03David leonardo briceño moreno  03
David leonardo briceño moreno 03
 
Chat, Social, Email....Getting Engagement Right in the Contact Centre
Chat, Social, Email....Getting Engagement Right in the Contact CentreChat, Social, Email....Getting Engagement Right in the Contact Centre
Chat, Social, Email....Getting Engagement Right in the Contact Centre
 
Boletín Comunitario La Unión - 3ra edición Octubre Noviembre - 2012
Boletín Comunitario La Unión - 3ra edición Octubre Noviembre - 2012Boletín Comunitario La Unión - 3ra edición Octubre Noviembre - 2012
Boletín Comunitario La Unión - 3ra edición Octubre Noviembre - 2012
 
Merkel u ring-tm-23
Merkel u ring-tm-23Merkel u ring-tm-23
Merkel u ring-tm-23
 
You speak-greek-you-just-don-t-know-it
You speak-greek-you-just-don-t-know-itYou speak-greek-you-just-don-t-know-it
You speak-greek-you-just-don-t-know-it
 
Presentación iii sem 2013 1
Presentación iii sem 2013 1Presentación iii sem 2013 1
Presentación iii sem 2013 1
 
Investigación para el desarrollo de la Agricultura CIRAD
Investigación para el desarrollo de la Agricultura CIRADInvestigación para el desarrollo de la Agricultura CIRAD
Investigación para el desarrollo de la Agricultura CIRAD
 
01 el arte de meditar maestro eleuzis www.gftaognosticaespiritual.org meditan...
01 el arte de meditar maestro eleuzis www.gftaognosticaespiritual.org meditan...01 el arte de meditar maestro eleuzis www.gftaognosticaespiritual.org meditan...
01 el arte de meditar maestro eleuzis www.gftaognosticaespiritual.org meditan...
 
Welcome to the Worm Factory: Instruction Manual
Welcome to the Worm Factory: Instruction ManualWelcome to the Worm Factory: Instruction Manual
Welcome to the Worm Factory: Instruction Manual
 
Ingresos residuales
Ingresos residualesIngresos residuales
Ingresos residuales
 
Debating in the Curriculum - Jessica Dix
Debating in the Curriculum - Jessica DixDebating in the Curriculum - Jessica Dix
Debating in the Curriculum - Jessica Dix
 
Geneva Hackerspace
Geneva HackerspaceGeneva Hackerspace
Geneva Hackerspace
 

Similar a Gestión inmobiliaria

Proyecto softpyme informe analisis
Proyecto softpyme informe analisisProyecto softpyme informe analisis
Proyecto softpyme informe analisisYeison Smith
 
Mcvs ad-06 plan general del proyecto
Mcvs ad-06 plan general del proyecto Mcvs ad-06 plan general del proyecto
Mcvs ad-06 plan general del proyecto lnavarros
 
tutorial de informatica
tutorial  de informaticatutorial  de informatica
tutorial de informatica11steven11
 
Reporte Técnico de Prácticas de Observación Guiadas
Reporte Técnico de Prácticas de Observación GuiadasReporte Técnico de Prácticas de Observación Guiadas
Reporte Técnico de Prácticas de Observación Guiadasunl
 
Practicas de Observacion
Practicas de ObservacionPracticas de Observacion
Practicas de ObservacionGabyNarvaez
 
Estructura organizacional
Estructura organizacionalEstructura organizacional
Estructura organizacionalyoltsi
 
ingenieria de software
 ingenieria de software ingenieria de software
ingenieria de softwareEmanuelAmador
 
Alfredo garcia ing.pdf
Alfredo garcia ing.pdfAlfredo garcia ing.pdf
Alfredo garcia ing.pdfAlfredo Garcia
 
Proyecto de XP06/M2121/02158 dirección de sistemas de información
Proyecto de XP06/M2121/02158 dirección de sistemas de informaciónProyecto de XP06/M2121/02158 dirección de sistemas de información
Proyecto de XP06/M2121/02158 dirección de sistemas de informaciónAlberto Otero
 
Diplomado En Diseno Y Administracion De Redes Empresariales 2009 2010
Diplomado En Diseno Y Administracion De Redes Empresariales 2009 2010Diplomado En Diseno Y Administracion De Redes Empresariales 2009 2010
Diplomado En Diseno Y Administracion De Redes Empresariales 2009 2010Erom1986
 
TUTORIALES DE INFORMATICA
TUTORIALES DE INFORMATICA TUTORIALES DE INFORMATICA
TUTORIALES DE INFORMATICA Barbechowilma123
 
IIA_AA_4_2_GeJoAl.docx
IIA_AA_4_2_GeJoAl.docxIIA_AA_4_2_GeJoAl.docx
IIA_AA_4_2_GeJoAl.docxKyokoSInay
 
Elionor Herrera (Cumaná Estado Sucre)
Elionor Herrera (Cumaná Estado Sucre)Elionor Herrera (Cumaná Estado Sucre)
Elionor Herrera (Cumaná Estado Sucre)gtnuevastecnologias
 

Similar a Gestión inmobiliaria (20)

Mariannysbermudez ing
Mariannysbermudez ingMariannysbermudez ing
Mariannysbermudez ing
 
Tesis de Magister
Tesis de MagisterTesis de Magister
Tesis de Magister
 
Proyecto softpyme informe analisis
Proyecto softpyme informe analisisProyecto softpyme informe analisis
Proyecto softpyme informe analisis
 
Mcvs ad-06 plan general del proyecto
Mcvs ad-06 plan general del proyecto Mcvs ad-06 plan general del proyecto
Mcvs ad-06 plan general del proyecto
 
Cesar prado ing
Cesar prado ingCesar prado ing
Cesar prado ing
 
tutorial de informatica
tutorial  de informaticatutorial  de informatica
tutorial de informatica
 
Reporte Técnico de Prácticas de Observación Guiadas
Reporte Técnico de Prácticas de Observación GuiadasReporte Técnico de Prácticas de Observación Guiadas
Reporte Técnico de Prácticas de Observación Guiadas
 
Practicas de Observacion
Practicas de ObservacionPracticas de Observacion
Practicas de Observacion
 
Plantilla para administracion de proyectos FichitasSoft
Plantilla para administracion de proyectos FichitasSoftPlantilla para administracion de proyectos FichitasSoft
Plantilla para administracion de proyectos FichitasSoft
 
Estructura organizacional
Estructura organizacionalEstructura organizacional
Estructura organizacional
 
ingenieria de software
 ingenieria de software ingenieria de software
ingenieria de software
 
Gestion de contenido multimedia
Gestion de contenido multimediaGestion de contenido multimedia
Gestion de contenido multimedia
 
Alfredo garcia ing.pdf
Alfredo garcia ing.pdfAlfredo garcia ing.pdf
Alfredo garcia ing.pdf
 
Proyecto de XP06/M2121/02158 dirección de sistemas de información
Proyecto de XP06/M2121/02158 dirección de sistemas de informaciónProyecto de XP06/M2121/02158 dirección de sistemas de información
Proyecto de XP06/M2121/02158 dirección de sistemas de información
 
Diplomado En Diseno Y Administracion De Redes Empresariales 2009 2010
Diplomado En Diseno Y Administracion De Redes Empresariales 2009 2010Diplomado En Diseno Y Administracion De Redes Empresariales 2009 2010
Diplomado En Diseno Y Administracion De Redes Empresariales 2009 2010
 
TUTORIAL DE INFORMATICA
TUTORIAL DE INFORMATICATUTORIAL DE INFORMATICA
TUTORIAL DE INFORMATICA
 
TUTORIALES DE INFORMATICA
TUTORIALES DE INFORMATICA TUTORIALES DE INFORMATICA
TUTORIALES DE INFORMATICA
 
IIA_AA_4_2_GeJoAl.docx
IIA_AA_4_2_GeJoAl.docxIIA_AA_4_2_GeJoAl.docx
IIA_AA_4_2_GeJoAl.docx
 
Elionor Herrera (Cumaná Estado Sucre)
Elionor Herrera (Cumaná Estado Sucre)Elionor Herrera (Cumaná Estado Sucre)
Elionor Herrera (Cumaná Estado Sucre)
 
Presentacion.
Presentacion.Presentacion.
Presentacion.
 

Último

Tarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.pdf
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.pdfTarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.pdf
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.pdfAnaPaulaSilvaViamagu
 
Fases del Proceso de Planeamiento Estratégico Institucional.pdf
Fases del Proceso de Planeamiento Estratégico Institucional.pdfFases del Proceso de Planeamiento Estratégico Institucional.pdf
Fases del Proceso de Planeamiento Estratégico Institucional.pdfretvarg
 
GENERALIDADES DE LAS FINANZAS Y CLASIFICACIÓN .pdf
GENERALIDADES DE LAS FINANZAS Y CLASIFICACIÓN .pdfGENERALIDADES DE LAS FINANZAS Y CLASIFICACIÓN .pdf
GENERALIDADES DE LAS FINANZAS Y CLASIFICACIÓN .pdfJordanaMaza
 
Tema 4. El ciclo contable.pptx en contabilidad
Tema 4. El ciclo contable.pptx en contabilidadTema 4. El ciclo contable.pptx en contabilidad
Tema 4. El ciclo contable.pptx en contabilidadMuniFutsala
 
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.pdf
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.pdfTarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.pdf
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.pdfJoseDavidPullaguariP
 
Normas Contabilidad NIC 20 Y NIC 21 2024.pptx
Normas Contabilidad NIC 20 Y NIC 21 2024.pptxNormas Contabilidad NIC 20 Y NIC 21 2024.pptx
Normas Contabilidad NIC 20 Y NIC 21 2024.pptxMafeBaez
 
PPT EJECUCION INGRESOS Y GASTOS 20102022.pdf
PPT EJECUCION INGRESOS  Y  GASTOS 20102022.pdfPPT EJECUCION INGRESOS  Y  GASTOS 20102022.pdf
PPT EJECUCION INGRESOS Y GASTOS 20102022.pdfGustavoDonayre
 
ex final repaso macmillan pdtos pasivo2.pdf
ex final repaso macmillan pdtos pasivo2.pdfex final repaso macmillan pdtos pasivo2.pdf
ex final repaso macmillan pdtos pasivo2.pdfr4nhpkgcvc
 
PRESENTACIÓN DE FINANZAS Y SU CLASIFICACIÓN.pdf
PRESENTACIÓN DE FINANZAS Y SU CLASIFICACIÓN.pdfPRESENTACIÓN DE FINANZAS Y SU CLASIFICACIÓN.pdf
PRESENTACIÓN DE FINANZAS Y SU CLASIFICACIÓN.pdfCarmenLisethAlulimaC
 
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA.pptx
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA.pptxTarea APE Nro. 1 INFORME GRUPAL CONSULTA.pptx
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA.pptxdayannaarmijos4
 
NIC 36 Deterioro del valor de los activos^.pptx
NIC 36 Deterioro del valor de los activos^.pptxNIC 36 Deterioro del valor de los activos^.pptx
NIC 36 Deterioro del valor de los activos^.pptxFrancisco Sanchez
 
ACTIVIDAD DE COMPRENSIÓN Y PRODUCCIÓN DE TEXTOS II
ACTIVIDAD DE COMPRENSIÓN Y PRODUCCIÓN DE TEXTOS IIACTIVIDAD DE COMPRENSIÓN Y PRODUCCIÓN DE TEXTOS II
ACTIVIDAD DE COMPRENSIÓN Y PRODUCCIÓN DE TEXTOS IIpamelasandridcorrear
 
FORMULARIOS Y DOCUMENTOS Hoteleros en bolivia
FORMULARIOS Y DOCUMENTOS Hoteleros en boliviaFORMULARIOS Y DOCUMENTOS Hoteleros en bolivia
FORMULARIOS Y DOCUMENTOS Hoteleros en boliviaadrylu339
 
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.docx (1).pdf
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.docx (1).pdfTarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.docx (1).pdf
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.docx (1).pdfAnaPaulaSilvaViamagu
 
Proyecto didáctico higiene en alumnos de preescolar
Proyecto didáctico higiene en alumnos de preescolarProyecto didáctico higiene en alumnos de preescolar
Proyecto didáctico higiene en alumnos de preescolargabrielacarmona718
 
MANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdf
MANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdfMANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdf
MANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdflupismdo
 
EL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdf
EL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdfEL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdf
EL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdfssuser2887fd1
 
Contabilidad_financiera y estados financieros
Contabilidad_financiera y estados financierosContabilidad_financiera y estados financieros
Contabilidad_financiera y estados financierosdeptocontablemh
 
El Arte De La Contabilidad Explorando La Contabilidad De Costos
El Arte De La Contabilidad Explorando La Contabilidad De CostosEl Arte De La Contabilidad Explorando La Contabilidad De Costos
El Arte De La Contabilidad Explorando La Contabilidad De Costosocantotete
 
Contratos bancarios en Colombia y sus carcteristicas
Contratos bancarios en Colombia y sus carcteristicasContratos bancarios en Colombia y sus carcteristicas
Contratos bancarios en Colombia y sus carcteristicasssuser17dd85
 

Último (20)

Tarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.pdf
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.pdfTarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.pdf
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.pdf
 
Fases del Proceso de Planeamiento Estratégico Institucional.pdf
Fases del Proceso de Planeamiento Estratégico Institucional.pdfFases del Proceso de Planeamiento Estratégico Institucional.pdf
Fases del Proceso de Planeamiento Estratégico Institucional.pdf
 
GENERALIDADES DE LAS FINANZAS Y CLASIFICACIÓN .pdf
GENERALIDADES DE LAS FINANZAS Y CLASIFICACIÓN .pdfGENERALIDADES DE LAS FINANZAS Y CLASIFICACIÓN .pdf
GENERALIDADES DE LAS FINANZAS Y CLASIFICACIÓN .pdf
 
Tema 4. El ciclo contable.pptx en contabilidad
Tema 4. El ciclo contable.pptx en contabilidadTema 4. El ciclo contable.pptx en contabilidad
Tema 4. El ciclo contable.pptx en contabilidad
 
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.pdf
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.pdfTarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.pdf
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.pdf
 
Normas Contabilidad NIC 20 Y NIC 21 2024.pptx
Normas Contabilidad NIC 20 Y NIC 21 2024.pptxNormas Contabilidad NIC 20 Y NIC 21 2024.pptx
Normas Contabilidad NIC 20 Y NIC 21 2024.pptx
 
PPT EJECUCION INGRESOS Y GASTOS 20102022.pdf
PPT EJECUCION INGRESOS  Y  GASTOS 20102022.pdfPPT EJECUCION INGRESOS  Y  GASTOS 20102022.pdf
PPT EJECUCION INGRESOS Y GASTOS 20102022.pdf
 
ex final repaso macmillan pdtos pasivo2.pdf
ex final repaso macmillan pdtos pasivo2.pdfex final repaso macmillan pdtos pasivo2.pdf
ex final repaso macmillan pdtos pasivo2.pdf
 
PRESENTACIÓN DE FINANZAS Y SU CLASIFICACIÓN.pdf
PRESENTACIÓN DE FINANZAS Y SU CLASIFICACIÓN.pdfPRESENTACIÓN DE FINANZAS Y SU CLASIFICACIÓN.pdf
PRESENTACIÓN DE FINANZAS Y SU CLASIFICACIÓN.pdf
 
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA.pptx
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA.pptxTarea APE Nro. 1 INFORME GRUPAL CONSULTA.pptx
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA.pptx
 
NIC 36 Deterioro del valor de los activos^.pptx
NIC 36 Deterioro del valor de los activos^.pptxNIC 36 Deterioro del valor de los activos^.pptx
NIC 36 Deterioro del valor de los activos^.pptx
 
ACTIVIDAD DE COMPRENSIÓN Y PRODUCCIÓN DE TEXTOS II
ACTIVIDAD DE COMPRENSIÓN Y PRODUCCIÓN DE TEXTOS IIACTIVIDAD DE COMPRENSIÓN Y PRODUCCIÓN DE TEXTOS II
ACTIVIDAD DE COMPRENSIÓN Y PRODUCCIÓN DE TEXTOS II
 
FORMULARIOS Y DOCUMENTOS Hoteleros en bolivia
FORMULARIOS Y DOCUMENTOS Hoteleros en boliviaFORMULARIOS Y DOCUMENTOS Hoteleros en bolivia
FORMULARIOS Y DOCUMENTOS Hoteleros en bolivia
 
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.docx (1).pdf
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.docx (1).pdfTarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.docx (1).pdf
Tarea APE Nro. 1 INFORME GRUPAL CONSULTA Y PRESENTACIÓN FINANZAS.docx (1).pdf
 
Proyecto didáctico higiene en alumnos de preescolar
Proyecto didáctico higiene en alumnos de preescolarProyecto didáctico higiene en alumnos de preescolar
Proyecto didáctico higiene en alumnos de preescolar
 
MANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdf
MANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdfMANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdf
MANUAL PARA OBTENER MI PENSIÓN O RETIRAR MIS RECURSOS.pdf
 
EL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdf
EL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdfEL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdf
EL ESTADO Y LOS ORGANISMOS AUTONOMOS.pdf
 
Contabilidad_financiera y estados financieros
Contabilidad_financiera y estados financierosContabilidad_financiera y estados financieros
Contabilidad_financiera y estados financieros
 
El Arte De La Contabilidad Explorando La Contabilidad De Costos
El Arte De La Contabilidad Explorando La Contabilidad De CostosEl Arte De La Contabilidad Explorando La Contabilidad De Costos
El Arte De La Contabilidad Explorando La Contabilidad De Costos
 
Contratos bancarios en Colombia y sus carcteristicas
Contratos bancarios en Colombia y sus carcteristicasContratos bancarios en Colombia y sus carcteristicas
Contratos bancarios en Colombia y sus carcteristicas
 

Gestión inmobiliaria

  • 1. 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: ……/……/……
  • 2. 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
  • 3. 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
  • 4. 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
  • 5. 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
  • 6. 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
  • 7. 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
  • 8. 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
  • 9. 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
  • 10. 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
  • 11. 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
  • 12. 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
  • 13. 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
  • 14. 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
  • 15. 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
  • 16. 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
  • 17. 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
  • 18. 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
  • 19. 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
  • 20. 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
  • 21. 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
  • 22. 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
  • 23. 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
  • 24. 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
  • 25. 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
  • 26. 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
  • 27. 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
  • 28. 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
  • 29. 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
  • 30. 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
  • 31. 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
  • 32. 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
  • 33. 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
  • 34. 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
  • 35. 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
  • 36. 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
  • 37. 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
  • 38. 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
  • 39. 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
  • 40. 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
  • 41. 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
  • 42. 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
  • 43. 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
  • 44. 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
  • 45. 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
  • 46. 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
  • 47. 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
  • 48. 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
  • 49. 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
  • 50. 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
  • 51. 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
  • 52. 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
  • 53. 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
  • 54. 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
  • 55. 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
  • 56. 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
  • 57. 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
  • 58. 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
  • 59. 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
  • 60. 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
  • 61. 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
  • 62. 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
  • 63. 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
  • 64. 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
  • 65. 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
  • 66. 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
  • 67. 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
  • 68. 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
  • 69. 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
  • 70. 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
  • 71. 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
  • 72. 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