UNIVERSIDAD JOSÉ ANTONIO PÁEZ
DESARROLLO DE UN SISTEMA DE INFORMACIÓN BAJO PLATAFORMA
WEB Y ANDROID PARA EL SOPORTE DE LA GESTIÓN DE CONDOMINIO .
Caso de estudio: Condominios Mérida C.A
Autor: Johan Navarro
Urb. Yuma II, calle Nº 3. Municipio San Diego Teléfono: (0241) 8714240 (master) – Fax: (0241) 8712394
REPÚBLICA BOLIVARIANA DE VENEZUELA UNIVERSIDAD JOSÉ ANTONIO PÁEZ
FACULTAD DE INGENIERÍA ESCUELA DE COMPUTACIÓN
CARRERA INGENIERÍA DE COMPUTACIÓN
DESARROLLO DE UN SISTEMA DE INFORMACIÓN BAJO PLATAFORMA WEB Y ANDROID PARA EL SOPORTE DE LA GEST IÓN
DE CONDOMINIO. Caso de estudio: Condominios Mérida C.A
Trabajo de Grado presentado como requisito parcial para optar al título de Ingeniero de Computación
Autor: Johan Navarro Tutora: María Teresa Dianes
San Diego, septiembre 2014
UNIVERSIDAD JOSÉ ANTONIO PÁEZ
FACULTAD DE INGENIERÍA ESCUELA DE COMPUTACIÓN
CARRERA INGENIERÍA DE COMPUTACIÓN
ACEPTACIÓN DEL TUTOR
Quien suscribe, María Teresa Dianes, portadora de la cédula de identidad Nº
16.152.662, en mi carácter de tutora del trabajo de grado presentado por el ciudadano
Johan José Navarro León, portador de la cédula de identidad Nº 18.411.613,
titulado DESARROLLO DE UN SISTEMA DE INFORMACIÓN BAJO
PLATAFORMA WEB Y ANDROID PARA EL SOPORTE DE LA GEST IÓN
DE CONDOMINIO. Caso de estudio: Condominios Mérida C.A, presentado
como requisito parcial para optar al título de Ingeniero de Computación, considero
que dicho trabajo reúne los requisitos y méritos suficientes para ser sometido a la
presentación pública y evaluación por parte del jurado examinador que se designe.
En San Diego, a los 15 días del mes de septiembre del año dos mil catorce.
____________________
Ing. María T. Dianes
C.I. 16.152.662
iv
ÍNDICE GENERAL
CONTENIDO Pág. LISTA DE CUADROS ................................................................................................ vi
LISTA DE FIGURAS ................................................................................................ viii
RESUMEN INFORMATIVO ...................................................................................... xi
INTRODUCCIÓN ...................................................................................................... 12
CAPITULO I
EL PROBLEMA ........................................................................................................... 3
1.1. Planteamiento del problema ....................................................................... 3
1.2. Formulación del problema ......................................................................... 5
1.3. Objetivos de la investigación ..................................................................... 5
1.3.1. Objetivo general ............................................................................... 5
1.3.2. Objetivos específicos........................................................................ 5
1.4. Justificación del Problema ......................................................................... 5
CAPITULO II
MARCO TEÓRICO ...................................................................................................... 8
2.1. Antecedentes de la investigación ............................................................... 8
2.2. Bases teóricas ............................................................................................. 9
2.2.1. Android............................................................................................. 9
2.2.2. Condominio .................................................................................... 10
2.2.3. MySQL ........................................................................................... 11
2.2.4. PHP................................................................................................. 13
2.2.5. Plataforma Web .............................................................................. 14
2.2.6. Programación Extrema XP (Extreme Programming)..................... 15
2.2.7. Servidor Apache ............................................................................. 18
2.2.8. UML ............................................................................................... 18
2.2.9. Sistema de información .................................................................. 20
v
2.3. Bases Legales ........................................................................................... 21
2.4. Definición de términos ............................................................................. 22
CAPITULO III
MARCO METODOLÓGICO ..................................................................................... 23
3.1. Tipo de Investigación. ............................................................................. 23
3.2. Diseño de la investigación. ...................................................................... 23
3.3. Instrumentos y Técnicas de recolección de datos. .................................. 23
3.4. Fases Metodológicas. .............................................................................. 23
CAPITULO IV
RESULTADOS ........................................................................................................... 27
4.1. Fase I Planificación .................................................................................. 27
4.2. Fase II Diseño ........................................................................................... 36
4.3. Fase III Desarrollo .................................................................................... 52
4.4. Fase IV Pruebas ........................................................................................ 83
CONCLUSIONES Y RECOMENDACIONES .......................................................... 71
REFERENCIAS .......................................................................................................... 85
Bibliográficas .................................................................................................. 85
Electrónicas ..................................................................................................... 85
vi
LISTA DE CUADROS
CUADRO Pág.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Historia de Usuario Nº 1.………..…………..........................................
Historia de Usuario Nº 2..………..………….........................................
Historia de Usuario Nº 3.………..…………..........................................
Historia de Usuario Nº 4……………………………………………….
Historia de Usuario Nº 5……………………………………………….
Historia de Usuario Nº 6……………………………………………….
Historia de Usuario Nº 7……………………………………………….
Historia de Usuario Nº 8……………………………………………….
Historia de Usuario Nº 9……………………………………………….
Historia de Usuario Nº 10………………………………………………
Historia de Usuario Nº 11……………………………………………….
Ficha de Tarea Nº 1…………………………..…………………………
Ficha de Tarea Nº 2………..……………………………………………
Ficha de Tarea Nº 3…………………………..…………………………
Ficha de Tarea Nº 4……………………………………………………..
Ficha de Tarea Nº 5……………………………………………………..
Ficha de Tarea Nº 6……………………………………………………..
Ficha de Tarea Nº 7……………………………………………………..
Ficha de Tarea Nº 8……………………………………………………..
Ficha de Tarea Nº 9……………………………………………………..
Iteración Nº 1...………………………………………………………….
Iteración Nº 2..…………………………………………………………..
Iteración Nº 3………………..…………………………………………..
Caso de uso Registrar Residencia……………………………………….
Caso de uso Registrar Evento……………………………………………
27
27
28
28
28
29
29
29
29
30
30
31
31
31
32
32
32
33
33
33
34
34
38
39
40
vii
26
27
28
29
30
31
32
33
34
35
36
Caso de uso Crear nuevo propietario…………………………………….
Caso de uso administrar usuario………………………………………..
Caso de uso registrar relación de gastos……………………………….
Caso de uso registrar pago……………………………………..............
Caso de uso registrar gastos……………………………………………
Caso de uso propietario a consultar……………………………………
Caso de prueba Nº 1……………………………………………………
Caso de prueba Nº 2……………………………………………………
Caso de prueba Nº 3……………………………………………………
Caso de prueba Nº 4……………………………………………………
Caso de prueba Nº 5……………………………………………………
41
42
43
44
45
68
69
70
71
72
72
viii
LISTA DE FIGURAS
FIGURA Pág.
ix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Modelo de Caso de Uso del Administrador...........................................
Modelo de Caso de Uso de Usuarios…….............................................
Vista Lógica Administrador del sistema...………….………………….
Vista Lógica Administrador del condominio...………………..............
Vista Lógica de propietario……………………….....…………………
Vista Lógica de la Junta de Condominio………………………………
Diagrama de Entidad Relación……….……………………………….
Diagrama Físico ……………………………………………………….
Pantalla Principal…………………………………...…………..............
Inicio de Sesión ……………...…………………………………………
Pantalla de selección de residencia…………………………………….
Pantalla registro de propietario…………………………………………
Pantalla de registro de residencia………………………………………
Asignar Inmueble ……………… ……………………………………..
Registro de Areas Comunes …………………………………………..
Registro de Movimiento ………………………………………………
Registrar Eventos ……………………………………………………..
Registrar Servicios.…………………………………….………………
Pantalla de relación de gastos…………………………………………..
Pantalla de Registro de Nota de Crédito……………………………….
Pantalla gastos extras individuales………………………………………
Alquiler de Áreas Comunes……………………………………………
Pantalla registro de pago (Propietario).…………………………………
Registro de pago (Condominio) ……………………………………….
Pantalla de consulta de propietario……………………………………..
Pantalla de consulta de morosos y solventes .…………………………
Pantalla de inicio de sesión Android……………………………………
Pantalla de recuperación de clave Android…………………………….
30
31
46
46
47
47
48
49
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
71
72
73
x
29
30
31
Pantalla de selección de residencia …………………………………….
Pantalla principal………………………………………………………..
Pantalla de relación de gastos…………………………………………..
74
75
76
xi
REPÚBLICA BOLIVARIANA DE VENEZUELA UNIVERSIDAD JOSÉ ANTONIO PÁEZ
FACULTAD DE INGENIERÍA ESCUELA DE COMPUTACIÓN
INGENIERÍA DE COMPUTACIÓN
DESARROLLO DE UN SISTEMA DE INFORMACIÓN BAJO
PLATAFORMA WEB Y ANDROID PARA EL SOPORTE DE LA GEST IÓN DE CONDOMINIO. CASO DE ESTUDIO: CONDOMINIOS MERIDA C.A.
Autor: Johan Navarro
Tutor: Ing. María Teresa Dianes
Fecha: Septiembre 2014
RESUMEN INFORMATIVO Condominios Mérida C.A. es una empresa encargada de la administración de condominios, donde no tenía un sistema de información para llevar el control de todos sus procesos. Es por ello que el presente trabajo de grado tiene como objetivo general desarrollar un Sistema de Información bajo Plataforma Web y Android para el soporte de la gestión de condominios, convirtiéndose en una herramienta que facilite la función del administrador, garantizando así una respuesta rápida y oportuna a sus clientes y usuarios (juntas de condominios y propietarios). Para ello se realizó el diagnóstico de la situación actual para determinar los requerimientos del sistema, se diseño las interfaces y base de datos, para su desarrollo en el lenguaje de programación preprocesador hipertexto, se utilizó MySql como gestor de bases de datos, asimismo se utilizó el servidor Apache, y se aplicó la metodología de desarrollo de software Programación Extrema (XP). Finalmente se realizaron las pruebas correspondientes dentro de los parámetros establecidos, logrando cumplir con el objetivo general.
Descriptores: Sistema de Información, Condominio, Aplicación WEB, Programación Extrema (XP).
xii
INTRODUCCIÓN
Las ventajas que hoy en día ofrece la tecnología para la administración de las
actividades han permitido mejorar paulatinamente el control automatizado de los
procesos sistemáticos que regularmente se llevan a cabo en las empresas, pues
algunas tareas todavía son realizadas de forma manual, y es aquí donde es necesario
aprovechar las nuevas herramientas de soporte tecnológico para administrar de
manera óptima estos procesos.
Desde el punto de vista de la gestión empresarial, el conocimiento del mundo es
cada vez más complejo, originando una necesidad cada vez más informativa para la
toma de decisiones, tanto para abordar nuevos mercados como para proteger a la
empresa de agentes externos que puedan vulnerar su estabilidad.
Es por ello que surge la necesidad de ir a la vanguardia en sistemas de
información y manejo de archivos digitales en la empresa Condominios Mérida C.A.
para mejorar el rendimiento de sus labores, minimizar la perdida de información y
gastos adicionales de horas hombres. El mismo consta de cuatro capítulos, los cuales
están conformados de la siguiente manera:
El Capítulo I, El Problema: consta del planteamiento, formulación y
justificación del problema, objetivo general y específicos de la investigación.
El Capítulo II, Marco Teórico: está conformado por los antecedentes y las bases
teóricas que sustentan el estudio de acuerdo a la revisión bibliográfica realizada sobre
el mismo, también incluye las bases legales las cuales son las relacionadas con las
leyes que rigen los condominios y todo lo relacionado a ellos, finalizando con la
definición de términos básicos.
En el Capítulo III, Marco Metodológico: se describe el tipo y diseño de la
investigación, técnicas e instrumentos de recolección de datos, describiendo la
metodología empleada para el desarrollo del sistema de información, detallando cada
una de las fases a seguir.
2
El Capítulo IV, contiene los resultados de cada una de las fases de la metodología
Programación Extrema (XP) las cuales fueron: planificación, diseño, desarrollo y
pruebas.
Y, por último se presentan las conclusiones y recomendaciones de la
investigación.
3
CAPÍTULO I
EL PROBLEMA
1.1. Planteamiento del problema
Hoy en día existen grandes edificaciones, entre las cuales se pueden resaltar los
conjuntos residenciales. Estos se encuentran conformados por uno o más edificios,
abarcando grandes extensiones de terreno y agrupando a numerosas viviendas. Por
ende, los propietarios se ven en la obligación de compartir áreas comunes, como:
estacionamientos, áreas recreativas, piscinas, ascensores, lobby, jardines, puertas de
acceso, vigilancia, entre otras, cuyo mantenimiento ocasiona los llamados gastos
comunes (artículo 5, Ley de Propiedad Horizontal (LPH), 1983).
Tal como lo establece el artículo 18 de la LPH (1983), “la administración
corresponderá a la Asamblea General de copropietarios, la junta de condominio y a
un administrador, el cual es designado por la asamblea que la conforman los
copropietarios”. De allí que, la administración de estos bienes comunes sea
responsabilidad directa del administrador y de la junta de condominio que “…
tendrán las atribuciones de vigilancia y control sobre la Administración…”
Conforme a lo expresado, se puede decir que las juntas de condominios,
depende de la información que reciben de los administradores, actualmente aún
existen condominios que hacen todo manualmente y no disponen de todas las
herramientas para realizar los informes que las juntas solicitan tales como: estatus de
los propietarios, relación de gastos generales, relación por servicio semestral, entre
otros, el cual el administrador de condominio tardaba días en realizar dichas
solicitudes.
De igual manera, el manejo de los recursos podían no contar con la
transparencia necesaria, ya que pueden existir administradores de dudosa reputación
que tengan la oportunidad de incurrir en el uso indebido de los fondos, a espaldas de
los propietarios, debido a que la junta de condominio en la mayoría de los casos no
4
disponen de tiempo para acudir a las instalaciones de la administración y hacer las
revisiones pertinentes, las cuales habitualmente se basa en la auditoría y observación
de documentos, reportes, recibos, chequeras, estado de cuenta, entre otros, que
generalmente se encuentran en físico.
Ahora bien, la empresa Condominios Mérida C.A. es uno de los tantos
condominios que presentan la problemática anteriormente descrita, es decir, se
llevaba manualmente toda la información y la mayoría de los procesos de la
administración de los conjuntos residenciales, ayudándose con una hoja de cálculo en
Excel para registrar los gastos, y desglosar luego la relación de estos a cada
propietario. El proceso de registro de esta relación era muy tedioso y desordenado, el
administrador no tenía un control explícito de cada entrada o salida, ni justificativo o
factura que lo respaldara, por tanto se hacía muy difícil controlar los ingresos y
egresos de cada conjunto residencial. Y se podían cometer errores en los cálculos
debido al mal manejo de la información.
Adicionalmente a los inconvenientes presentados, el condominio no tenia un
opción muy importante ya que las notas de créditos se encarga de llevar el dinero
restante o sobrante de los pagos realizados del propietarios, para luego abonarse a
otra relación de gasto.
Cabe señalar, que el historial de los pagos de cada condominio no tenía su
respectivo correlativo y no llevaba el registro de cuándo, dónde y cómo se realizaron
estos. Para hacer una solvencia, el administrador debía llenar un formato el cual
tardaba entre uno (1) y dos (2) días en revisar sí estaba solvente el solicitante y poder
emitirla.
Por otra parte, el administrador tenía que realizar manualmente reportes para la
junta de condominio de cada egreso realizado, haciendo balances de cada concepto,
pues al no poseer un sistema que manejara toda la información y le diera soporte para
dichos procesos, este tardaba más tiempo para cumplir con las solicitudes recibidas de
los propietarios o de la junta de condominio. Es aquí donde surge para Condominios
Mérida C.A, la necesidad de sistematizar sus procedimientos en función de mejorar el
5
servicio ofrecido, ya que al continuar manejando la información manual, la empresa
cada vez tendría más datos que procesar haciendo mucho más difícil las actividades
diarias, mensuales y anuales.
1.2. Formulación del problema
¿Cómo mejorar la gestión de los procesos administrativos de la empresa
Condominios Mérida C.A.?
1.3. Objetivos de la investigación
1.3.1. Objetivo general
Desarrollar un sistema de información bajo plataforma web y android para el
soporte de la gestión de condominio.
1.3.2. Objetivos específicos
• Diagnosticar la situación actual de los procesos administrativos a partir de la
técnica de recolección de datos, a fin de obtener la información necesaria de los
procesos para tener una comprensión amplia y exacta de las necesidades que existen y
de los problemas que presentan.
• Determinar los requerimientos del sistema realizando un modelado de casos
de uso de los procesos, para determinar las actividades que realizan los actores del
sistema.
• Diseñar la base de datos y las interfaces de los módulos de acuerdo a los
requerimientos del sistema.
• Codificar el sistema de información de condominio tomando en cuenta los
requerimientos, el diseño de la base de datos e interfaces.
• Evaluar la funcionalidad del sistema mediante casos de pruebas para detectar
posibles fallas y corregirlas.
1.4. Justificación del Problema
El presente trabajo de grado tiene la finalidad de desarrollar un sistema de
información bajo plataforma web y Android para el soporte de la gestión de
6
condominio para la empresa Condominios Mérida C.A. manejando con veracidad los
datos de los propietarios y de los procesos administrativos de seguimiento y control
llevados en cada conjunto residencial.
La empresa Condominios Mérida C.A. se beneficia con el sistema de
información desarrollado porque tiene la mayor cantidad de información disponible y
actualizada, tanto de los propietarios (clientes) como de los conjuntos residenciales
(edificios o quintas), llevando el control de los pagos realizados de todos los
condominios, manejando los ingresos y egresos de los mismos, en cualquier lugar y a
cualquier hora, lo que optimiza el tiempo en la relación de trabajo y mejora de la
calidad de servicio que presta.
Citando lo expresado en el artículo 20 de la LPH que corresponde al
administrador:
“a) Cuidar y vigilar las cosas comunes; b) Realizar o hacer realizar los actos urgentes de administración y conservación, así como las reparaciones menores de las cosas comunes; c) Cumplir y velar por el cumplimiento de las disposiciones del documento de condominio, de su reglamento y de los acuerdos de los propietarios; d) Recaudar de los propietarios lo que a cada uno corresponda en los gastos y expensas comunes y si hubiere apartamentos rentables propiedad de la comunidad recibir los cánones de arrendamiento y aplicarlos a los gastos comunes; en caso de que lo recaudado supere a los gastos comunes, los propietarios por mayoría, podrán darle un destino diferente u ordenar su distribución; e) Ejercer en juicio la representación de los propietarios en los asuntos concernientes a la administración de las cosas comunes, debidamente asistidos por abogados o bien otorgando el correspondiente poder. Para ejercer esta facultad deberá estar debidamente autorizado por la Junta de Condominio, de acuerdo con lo establecido en el respectivo documento. Esta autorización deberá constar en el Libro de Actas de la Junta de Condominio. f) Llevar la contabilidad de los ingresos y gastos afecten al inmueble y a su administración, en forma ordenada y con la especificación necesaria, así como conservar los comprobantes respectivos, los cuales deberán ponerse a la disposición de los propietarios para su examen durante días y horas fijadas con conocimiento de ellos; g) Llevar los libros de: a) Asamblea de Propietarios, b) Actas de la Junta de Condominio, c) Libro diario de la contabilidad. Estos libros deberán ser sellados por un Notario Público o un Juez de Distrito en cuya jurisdicción se encuentre el inmueble. h) Presentar el informe y cuenta anual de su gestión”. (p. 30)
7
Conforme con lo anterior, ahora los administradores, la junta de condominio y
los propietarios de los inmuebles tienen en todo momento la información real y
actualizada tanto de los ingresos y egresos, como el estatus de su condominio y
futuras modificaciones de áreas comunes o eventos a realizar dentro de su conjunto
residencial, a la palma de su mano ya que pueden visualizar y/o consultar a través de
teléfonos inteligente con sistema android o cualquier dispositivo con conexión a
Internet.
Por otro lado, los propietarios y los integrantes de la junta de condominio,
pueden visualizar el historial de pagos realizados y el detalle con mayor exactitud, de
los ingresos y verificar si de verdad están realizando lo que está reflejado en la
relación de gastos, ya que anteriormente solo se visualizaba un recibo donde se
mostraba la totalidad del gasto mensual.
Finalmente, la ganancia en tiempo para la empresa ha sido maximizada, pues
con un sistema que ha transformado las actividades diarias en tareas sencillas, sus
administradores ahora pueden invertir este tiempo en inspeccionar con más
frecuencia las estructuras físicas de los condominios, planificando nuevos proyectos
que beneficien a los usuarios e incluso dedicarse a captar nuevos clientes, pues su
capacidad de administración se ha incrementado en calidad y tiempo. Dando
relevancia y prestigio, convirtiéndola en un fuerte competidor en su mercado, capaz
de satisfacer las demandas y exigencias de sus clientes en el menor tiempo posible y
con la transparencia que el servicio amerita.
8
CAPÍTULO II
MARCO TEÓRICO
2.1. Antecedentes de la investigación
En Venezuela se ha estado desarrollando diversos sistemas administrativos de
gestión orientados a web. El aporte de estos proyectos ha sido demostrar que los
sistemas de información están en constante evolución, aprovechando las nuevas
tecnologías para compartir información a través de Internet. Para elaboración del
siguiente trabajo de grado se tomaron en cuenta varios informes de grado,
investigaciones, y opiniones referentes a las definiciones relacionadas con el tema.
Bordones Grismer (2010) en la Universidad José Antonio Páez (UJAP), para
obtener el título de Ingeniero de Computación, presentó un trabajo de grado titulado
Desarrollo de una Aplicación Web para el Apoyo de la Gestión Comercial y
Administrativa de una Pequeña Empresa. El objetivo general planteado fue
desarrollar una aplicación web para el apoyo de la gestión comercial y administrativa,
permitiendo reportes de procesamiento analítico en línea (OLAP, en ingles On-Line
Analytical Processing), utilizando bases de dato multidimensional. Este trabajo de
grado, trata sobre la automatización, y el control de la administración, ayudando a
detallar las áreas de una pequeña empresa y de cómo se utilizan en una aplicación
web, el cual es guía para la realización de la gestión administrativa del sistema
planteado.
Así mismo en la UJAP, Duran Reinaldo (2007) para titularse como Ingeniero
de Computación, presentó un trabajo de grado titulado Desarrollo de un sistema de
información para la Gestión de Condominio. El sistema se propuso como una
herramienta para facilitar a los administradores de condominios su gestión y
garantizar una respuesta rápida y oportuna a las juntas de condominio, a través de
herramientas computacionales. Fue desarrollado en el lenguaje de programación PHP,
9
utilizando MySql como gestor de base de datos y se montó en un servidor Apache,
utilizando la metodología de Ingeniería Web (Iweb).
Esta investigación está relacionada con el presente estudio contribuyendo a
visualizar como funciona un condominio, cuantos procesos debe tener el sistema y
como debe hacerse la base de datos, utilizando las distintas herramientas para la
construcción, gestión y mantenimiento del mismo.
Por otro lado, Peña María (2007), en la Universidad José Antonio Páez (UJAP),
para obtener el título de Ingeniero de Computación, presentó un trabajo de grado
titulado Sistema de Información para la Gestión Administrativa bajo Software
Libre. Con este sistema se propuso un desarrollo que proporcionaría una mejora en
los procesos de administración, con un enfoque hacia la tecnología Web. La
metodología de desarrollo de software fue XP (Extreme Programming). De este
desarrollo se observó con detalle cómo se debe utilizar y desarrollar cada fase de la
metodología, asimismo se tomó como modelo para la realización bajo plataforma
web.
Los trabajos antes mencionados, han demostrado la posibilidad de realizar
sistemas de información orientados a Web, bajo herramientas de código abierto, que
satisfacen las necesidades en el apoyo a gestión y en la administración en diferentes
áreas.
2.2. Bases teóricas
2.2.1. Android
Es un sistema operativo basado en Linux, diseñado principalmente para
dispositivos móviles con pantalla táctil como teléfonos inteligentes o tabletas
inicialmente desarrollados por Android, Inc., que Google respaldó económicamente y
más tarde compró en 2005, Android fue presentado en 2007 junto la fundación del
Open Handset Alliance: un consorcio de compañías de hardware, software y
telecomunicaciones para avanzar en los estándares abiertos de los dispositivos
móviles.
10
Características
• Framework de aplicaciones: permite reutilización y reemplazo de
componentes.
• Navegador integrado: basado en el motor WebKit de código abierto
• Gráficos optimizados por una colección de gráficos personalizados en 2D
y gráficos 3D basado en OpenGL ES 1.0
• SQLite: para almacenamiento de datos estructurados
• Soporte Multimedia: reproduce los formatos comunes de audio, vídeo e
imágenes (MPEG4, H.264, MP3, OGG, AAC, AMR, JPG, PNG, GIF)
• Telefonía GSM (dependiente del hardware)
Ventajas
• El código de Android es abierto: Google liberó Android bajo licencia Apache.
• Cualquier persona puede realizar una aplicación para Android.
• Hoy día hay más de 650.000 aplicaciones disponibles para teléfonos Android,
aproximadamente 2/3 son gratis. Además la libertad de código permite adaptar
Android a bastantes otros dispositivos además de teléfonos celulares. Está implantado
en Tablets, GPS, relojes, microondas incluso hay por internet una versión de Android
para PC.
• El sistema Android es capaz de hacer funcionar a la vez varias aplicaciones y
además se encarga de gestionarlas, dejarlas en modo suspensión si no se utilizan e
incluso cerrarlas si llevan un periodo determinado de inactividad. De esta manera se
evita un consumo excesivo de batería.
2.2.2. Condominio
Es el derecho de virtud del cual distintas partes de un inmueble con
independencia funcional y salida directa o indirecta a la vía pública, se establecen
como propiedad exclusiva de una o más personas, las que a su vez son copropietarias
11
indivisas sobre las partes comunes. Partiendo de esta base, el condominio
aparece como una especie dentro de la comunidad.
Según la Ley de Propiedad Horizontal (1983) se trata de “un grupo de
departamentos, viviendas, casa, locales o naves de un inmueble, construidos en forma
vertical, horizontal o mixta, para su uso habitacional, comercial o de servicios,
industrial o mixto”.
Los condominios forman parte de lo que el derecho civil conoce como
comunidad de bienes. Esta figura legal encuadra a aquellos casos en los que un
patrimonio es compartido por diversas personas jurídicas o físicas.
La noción de condominio suele aplicarse a los inmuebles de propiedad
horizontal. En estos casos, una persona es la propietaria de la unidad que compra (un
departamento o apartamento dentro de un edificio) y co-propietaria de los espacios
comunes (pasillos, ascensores, etc.). Los gastos que se producen en estos espacios
comunes se reparten entre todos los co-propietarios. Para facilitar la administración,
es frecuente que los co-propietarios del condominio contraten los servicios de alguien
externo que se encargue de liquidar los gastos.
En este caso, esa persona encargada de dichas tareas por los co-propietarios es
la que se denomina administrador. Entre las principales funciones que tendrá que
acometer se encuentran el fomentar la buena convivencia de todos aquellos, el
informarles de todo cuanto acontece, el atenderles en todas las consultas o
aportaciones que le quieran realizar o el medir el grado de satisfacción que tienen los
citados con respecto a su trabajo y al propio condominio.
2.2.3. MySQL
MySQL es un sistema de gestión de bases de datos (SGBD) multiusuario,
multiplataforma y de código abierto. MySQL pertenece a la compañía sueca MySQL
AB, a la que le pertenece casi todos los derechos del código fuente. La compañía
desarrolla y mantiene el sistema, vendiendo soporte y servicios, como también las
licencias para usar MySQL.
12
MySQL es muy popular en aplicaciones web, y es componente de
las plataformas LAMP, MAMP,WAMP, entre otras. MySQL suele combinarse con el
popular lenguaje PHP.
Características
• MySQL está escrito en C y C++.
• Emplea el lenguaje SQL para consultas a la base de datos.
• MySQL Server está disponible como freeware bajo licencia GPL.
• MySQL Enterprise es la versión por suscripción para empresas, con soporte
las 24 horas.
• Trabaja en las siguientes plataformas: AIX, BSDi, FreeBSD, HP-
UX, GNU/Linux, Mac OS X, NetBSD,Novell NetWare, OpenBSD, OS/2 Warp,
QNX, SGI IRIX, Solaris, SunOS, SCO OpenServer, SCO UnixWare,
Tru64, Microsoft Windows (todas las versiones).
Ventajas
• MySQL software es Open Source
• Velocidad al realizar las operaciones, lo que le hace uno de los gestores con
mejor rendimiento.
• Bajo costo en requerimientos para la elaboración de bases de datos, ya que
debido a su bajo consumo puede ser ejecutado en una máquina con escasos recursos
sin ningún problema.
• Facilidad de configuración e instalación.
• Soporta gran variedad de Sistemas Operativos
• Baja probabilidad de corromper datos, incluso si los errores no se producen en
el propio gestor, sino en el sistema en el que está.
• Su conectividad, velocidad, y seguridad hacen de MySQL Server altamente
apropiado para acceder bases de datos en Internet
• El software MySQL usa la licencia GPL
13
Desventajas
• Un gran porcentaje de las utilidades de MySQL no están documentadas.
• No es intuitivo, como otros programas (ACCESS).
2.2.4. PHP
PHP es un lenguaje de programación muy potente que, junto con html, permite
crear sitios web dinámicos. Php se instala en el servidor y funciona con versiones
de Apache, Microsoft IIs, Netscape Enterprise Server y otros.
La forma de usar php es insertando código php dentro del código html de un
sitio web. Cuando un cliente (cualquier persona en la web) visita la página web que
contiene éste código, el servidor lo ejecuta y el cliente sólo recibe el resultado. Su
ejecución, es por tanto en el servidor, a diferencia de otros lenguajes de programación
que se ejecutan en el navegador.
Php permite la conexión a numerosas bases de datos, incluyendo MySQL,
Oracle, ODBC, etc. Y puede ser ejecutado en la mayoría de los sistemas operativos
Windows, Mac OS, Linux, Unix.
Características
• Orientado al desarrollo de aplicaciones web dinámicas con acceso a
información almacenada en una base de datos.
• Es considerado un lenguaje fácil de aprender, ya que en su desarrollo se
simplificaron distintas especificaciones, como es el caso de la definición de las
variables primitivas, ejemplo que se hace evidente en el uso de php arrays.
• El código fuente escrito en PHP es invisible al navegador web y al cliente, ya
que es el servidor el que se encarga de ejecutar el código y enviar su resultado HTML
al navegador. Esto hace que la programación en PHP sea segura y confiable.
• Capacidad de conexión con la mayoría de los motores de base de datos que se
utilizan en la actualidad, destaca su conectividad con MySQL y PostgreSQL.
• Capacidad de expandir su potencial utilizando módulos (llamados ext's o
extensiones).
14
• Posee una amplia documentación en su sitio web oficial, entre la cual se
destaca que todas las funciones del sistema están explicadas y ejemplificadas en un
único archivo de ayuda.
Ventajas del lenguaje PHP:
• Multiplataforma
• Manejo de excepciones
• Biblioteca de funciones
• Permite técnicas de programación orientada a objetos.
• Amplia documentación en su página oficial PHP
• Destacada conectividad con MySQL.
• Es libre.
2.2.5. Plataforma Web
La plataforma web se puede definir como una aplicación en la cual un sistema
puede ser desarrollado, es decir donde se pueden crear una variedad de opciones para
los usuarios ya que son páginas de acceso, cuando se desarrolla un programa, se hace
de manera que funcione en una plataforma específica, como por ejemplo la
plataforma de una empresa que la crean para dar información de interés a los usuarios
pero esa información puede ser restringida ya que si alguien quiere saber cosas más
importantes o privadas tienen que tener una clave de acceso, debido a que no es
información para todos. Esto se refiere a que el programa va a funcionar en un
determinado sistema operativo.
Normalmente hay versiones para Windows, Macos, Linux, entre otros, pero
cuando nos estamos refiriendo a una plataforma web, estamos diciendo que el sistema
funcionara desde un navegador web independiente de Sistema Operativo que se esté
utilizando.
Una plataforma es por ejemplo, un sistema operativo, o un gran software que
sirve como base para ejecutar determinadas aplicaciones. También son plataformas
15
las arquitecturas del hardware, los lenguajes de programación y sus librerías en
tiempo de ejecución, como lo son las de video juegos.
Ventajas
Las aplicaciones web para Internet e Intranet presentan una serie de ventajas
con respecto al software de escritorio, con lo cual logrará aprovechar y acoplar los
recursos de su empresa de una forma mucho más práctica que el software tradicional.
Entre las ventajas que las aplicaciones desarrolladas para la web tienen respecto a las
aplicaciones de escritorio se encuentran:
• Compatibilidad multiplataforma
• Menos requerimientos de hardware
• Acceso inmediato
• Múltiples usuarios concurrentes
• Información en línea
• Información más segura
• Menos errores y fallas (bugs)
• Facilidad de actualización
2.2.6. Programación Extrema XP (Extreme Programming)
La programación extrema o Extreme Programming (XP) es un enfoque de la
ingeniería de software formulado por Kent Beck, autor del primer libro sobre la
materia, Extreme Programming Explained: Embrace Change (1999). Es el más
destacado de los procesos ágiles de desarrollo de software. Al igual que éstos, la
programación extrema se diferencia de las metodologías tradicionales principalmente
en que pone más énfasis en la adaptabilidad que en la previsibilidad. Los defensores
de XP consideran que los cambios de requisitos sobre la marcha son un aspecto
natural, inevitable e incluso deseable del desarrollo de proyectos. Creen que ser capaz
de adaptarse a los cambios de requisitos en cualquier punto de la vida del proyecto es
una aproximación mejor y más realista que intentar definir todos los requisitos al
16
comienzo del proyecto e invertir esfuerzos después en controlar los cambios en los
requisitos.
Los programadores de XP se comunican con sus clientes y coprogramadores,
manteniendo diseños simples y obtienen la retroalimentación probando los programas
desde el primer día de desarrollo. Al ajustar todas estas características, junto con la
capacidad de distribuir el sistema a los clientes e implementar los cambios sugeridos,
se convierten en una herramienta que puede responder con facilidad a los cambios y
requerimientos tecnológicos. XP es una herramienta adecuada para proyectos
imprecisos y cambiantes en los cuales existe un riesgo técnico. XP cuenta con fases
simples y prácticas, como lo son planificación, diseño, codificación, prueba.
En esta plataforma XP construye un proceso de diseño evolutivo que se basa en
refactorar un sistema simple en cada iteración. Todo el diseño se centra en la iteración
actual y no se hace nada anticipadamente para necesidades futuras. El resultado es un
proceso de diseño disciplinado, lo que es más, combina la disciplina con la
adaptabilidad de una manera que indiscutiblemente la hace la más desarrollada entre
todas las metodologías adaptables.
Características
• Desarrollo iterativo e incremental.
• Pruebas unitarias continuas.
• Programación en parejas.
• Corrección de todos los errores.
• Refactorización del código.
• Propiedad del código compartida.
• Simplicidad en el código.
Fases de la programación Extrema
• Fase I: Planificación del proyecto.
En esta primera fase se debe hacer una recopilación de todos los
requerimientos del proyecto, también debe existir una intersección con el usuario, y
17
se debe planificar bien entre los desarrolladores, que es lo que se quiere en el
proyecto para lograr los objetivos finales.
• Fase II: Diseño.
Se sugiere que hay que conseguir diseños simples y sencillos. Para hacerlo
fácil de manejar en los usuarios, utilizar un diseño manejable e impleméntable que a
largo plazo cueste menos tiempo y esfuerzo en desarrollarlo. En esta fase se logrará
crear la parte física (lo visual), la interfaz que tendrá el usuario o cliente con el
proyecto.
• Fase III: Codificación.
En esta fase de la codificación los clientes y los desarrolladores del proyecto
deben estar en comunicación para que los desarrolladores puedan codificar todo los
necesario para el proyecto que se requiere, en esta fase esta incluido todo lo de
codificación o programación por parte de los desarrolladores del proyecto.
• Fase IV: Pruebas.
Uno de los pilares de la metodología X.P es el uso de test para comprobar el
funcionamiento de los códigos que vayamos implementando. Para esta fase lo que se
implementa es el uso de test que son pruebas que se le hacen al proyecto o como ya
se dijo a los códigos que se vallan implementando.
Ventajas
• Programación organizada.
• Menor taza de errores.
• Satisfacción del programador.
• Solución de errores de programas
• Versiones nuevas
• Implementa una forma de trabajo donde se adapte fácilmente a las
circunstancias
18
2.2.7. Servidor Apache
El Servidor Apache HTTP es un servidor Web de tecnología Open Source
sólido y para uso comercial desarrollado por la Apache Software Foundation. Red
Hat Enterprise Linux incluye el Servidor Apache HTTP versión 2.0 así como también
una serie de módulos de servidor diseñados para mejorar su funcionalidad.
Características
• Los módulos Apache API: se utiliza un nuevo conjunto de interfaces de
programación de aplicaciones (APIs).
• Filtrado: Los módulos pueden actuar como filtros de contenido.
• Soporte a IPv6: Se soporta la próxima generación de formato de direcciones
IP.
• Directrices simplificadas: Se han eliminado una serie de directrices
complicadas y otras se han simplificado.
• Respuestas a errores en diversos idiomas: Cuando usa documentos Server
Side Include (SSI), las páginas de errores personalizables se pueden entregar en
diversos idiomas.
Ventajas
• Se desarrolla dentro del proyecto HTTP
• Es altamente configurable
• Tiene amplia aceptación en la red
• Es modular
• Posee código abierto
• Multi-plataforma
• Es fácil de conseguir ayuda / soporte
2.2.8. UML
Es un lenguaje gráfico para visualizar, especificar, construir y documentar un
sistema. UML ofrece un estándar para describir un plano del sistema (modelo),
incluyendo aspectos conceptuales tales como procesos de negocio, funciones del
19
sistema, y aspectos concretos como expresiones de lenguajes de programación,
esquemas de bases de datos y compuestos reciclados.
Objetivos
• Visualizar: Nos permite ver lo que queremos lograr con el sistema,
facilitándonos la comunicación y dándonos una representación gráfica del problema y
su solución.
• Especificar: Construir modelos con una estructura precisa, cubriendo las
decisiones de análisis, diseño e implementación.
• Construir: A pesar que UML no es un lenguaje de programación permite el
desarrollo de plantillas aplicables a diferentes lenguajes.
• Documentar: Cubre la documentación de la arquitectura y todos los detalles de
un sistema. Expresando requisitos y pruebas, modelando las actividades y
gestionando las versiones del proyecto
Características
• Un estándar para modelado de sistemas.
• No es un estándar para procesos de software.
• Debe aplicarse en el contexto de un proceso de software.
• Es una notación, no es un proceso.
• Establecido como estándar para documentar el proceso de ingeniería de
software.
• Combina lo mejor del modelado de procesos, objetos, datos y componentes.
Ventajas
20
• Estar apoyado por la OMG (Object Management Group) como la notación
estándar para el desarrollo de proyectos informáticos.
• Es útil para el desarrollo de modelaje visual de cualquier proyecto no solo
informático y más aun es estándar.
• Promueve la reutilización
2.2.9. Sistema de información
Un sistema de información es un conjunto de elementos que interactúan entre sí
con el fin de apoyar las actividades de una empresa o negocio; es decir; es el conjunto
total de procedimientos, operaciones, funciones y difusión de datos o información en
una organización.
Las tres partes fundamentales de un sistema de procesamiento electrónico de
datos son el sistema de computación, el sistema de numeración y el sistema
Operativo.
Objetivos
• Proporcionar datos oportunos y exactos que permitan tomas decisiones
acertadas y mejorar la relación entre los recursos de la empresa.
• Garantizar información exacta y confiable, así como su almacenamiento de tal
forma que este disponible cuando se necesite.
• Servir como herramienta para que los gerentes realicen planeación, control y
toma de decisiones en sus empresas.
Características
• Forman parte de las actividades de la organización; un sistema de información
gerencial bien proyectado, se vuelve parte integrante de las actividades de la
organización, en todos sus niveles.
• Estar basado en tecnología de computación; un sistema de información es,
ciertamente, mucho más que un conjunto de procesos computarizados, por lo tanto,
un sistema de información que no esté basado en parte por tecnología informática, o
es relativamente simple o fue proyectado precariamente.
21
• Ser un sistema hombre - máquina; un sistema de información bien proyectado
que interrelaciona tareas entre hombres y máquinas en forma eficiente.
• Ser una colección de subsistemas; un sistema de información está compuesto
por una colección de subsistemas; y el grado de conexión entre esos subsistemas es
variado (puede ser más fuerte o más débil), según sea, el nivel de integración, técnica
y económica, más adecuado. Un sistema integrado de datos electrónicos (EDI) es útil
para cualquier situación.
• Ser adaptable a necesidades de cambios; un sistema de información bien
diseñado debe responder continuamente a las necesidades de cambios y avances
tecnológicos.
Ventajas
• Control efectivo de las actividades de la organización.
• Integración de nuevas tecnologías y herramientas de vanguardia.
• Ayuda a incrementar la efectividad en la operación de las empresas.
• Proporciona ventajas competitivas y valor agregado.
• Disponibilidad de mayor y mejor información para los usuarios en tiempo
real.
• Elimina la barrera de la distancia trabajando con un mismo sistema en puntos
distantes.
• Disminuye errores, tiempo y recursos superfluos.
2.3. Bases Legales
Ley De Propiedad Horizontal
Título Preliminar, Disposiciones Generales
Artículo 1: Los diversos apartamentos y locales de un inmueble podrán
pertenecer a distintos propietarios de acuerdo con las disposiciones de la presente
Ley, en cuanto no se opongan a éstas las del Código Civil.
A los efectos de esta Ley, sólo se considerará como apartamento o local a la
parte de un edificio susceptible de aprovechamiento Independiente, que tenga salida a
22
la vía pública directamente o a través de un determinado espacio común, sea que
ocupe todo, o una fracción de un piso o más de uno.
Título Primero, De los Apartamentos y de las Cosas Comunes
Artículo 2: Los apartamentos y locales a que se refiere el artículo anterior
podrán enajenarse, gravarse o ser objeto de toda clase de actos entre vivos o por causa
de muerte. En caso de enajenación de un apartamento o local, los dueños de los
demás, por este solo título, no tendrán derecho de preferencia.
2.4. Definición de términos
Co-propietarios: Es una figura utilizada en el Derecho civil para contemplar
los casos en los que la propiedad de una cosa, derecho o masa patrimonial pertenece a
varias personas, ya sean físicas o jurídicas.
Base de datos: Una base o banco de datos no es más que un conjunto de datos
que pertenecen a un mismo contexto almacenado sistemáticamente para su uso
posterior.
Propiedad Horizontal: Es la institución jurídica que hace alusión al conjunto
de normas que regulan la división y organización de diversos inmuebles, como
resultado de la segregación de un edificio o de un terreno común.
Sistema de información: Un sistema de información (SI) es un conjunto de
elementos orientados al tratamiento y administración de datos e información,
organizados y listos para su posterior uso, generados para cubrir una necesidad, con el
fin de apoyar las actividades de una empresa o negocio.
23
CAPÍTULO III
MARCO METODOLÓGICO
3.1. Tipo de Investigación.
La metodología de la presente investigación se enmarca dentro de la modalidad
de proyecto factible, definida por el Manual de Trabajos de Grado de Especialización
y Maestría y Tesis Doctorales de la Universidad Pedagógica Experimental Libertador
(UPEL, 2003) como sigue:
“El proyecto factible consiste en la investigación, elaboración y desarrollo de una propuesta, de un modelo operativo viable para solucionar problemas, requerimientos o necesidades de organizaciones o grupo; puede referirse a la formulación de políticas, programas, tecnologías, métodos o procesos. El proyecto debe tener apoyo en una investigación tipo documental de campo o un diseño que incluya ambas modalidades” (p. 20).
3.2. Diseño de la investigación.
El diseño de este trabajo se enmarca en un proyecto factible basado en una
investigación de campo. De acuerdo con Cazares, Chisten, Jaramillo, Villaseñor,
Zamudio (2000):
“la investigación de campo es aquella en que el mismo objeto de estudio sirve como fuente de información para el investigador. Consiste en la observación, directa y en vivo, de cosas, comportamiento de personas, circunstancias en que ocurren ciertos hechos, por este motivo la naturaleza de las fuentes determinan la manera de obtener los datos” (p.18). Por su parte, la Universidad Pedagógica Experimental Libertador (2005), señala
que los estudios de campo son:
“el análisis sistemáticos del problema en la realidad, con el propósito bien se de describirlos, interpretarlos, entender su naturaleza y factores contribuyentes, explicar sus causas y efectos, o predecir su ocurrencia, haciendo uso de métodos característicos de cualquiera de los paradigmas
23
o enfoques de investigación conocidos en el desarrollo. Los datos de interés son recogidos en formas directas de la realidad en este sentido se trata de investigaciones a partir de datos originales o primarios. Sin embargo, se aceptan también estudios sobre datos censales o muéstrales no recogidos por el estudiante, siempre y cuando se utilicen los registros originales con los datos no agregados, o cuando se trate de estudios que impliquen la construcción o uso de series históricas, y en general la recolección y organización de datos publicados para su análisis mediante procedimientos estadísticos modelos matemáticos, econométricos o de otro tipo” (p.7).
3.3. Instrumentos y Técnicas de recolección de datos.
Fidias (1999) indica que “las técnicas de recolección de datos son distintas
formas o maneras de obtener la información” (p. 53). De la misma manera Sabino
(1995) menciona que “un instrumento de recolección de datos es, en principio
cualquier recurso de que se vale el investigador para acercarse a los fenómenos y
extraer de ellos información”. (p. 143)
Particularmente en la presente investigación, se utilizó la técnica de
observación directa y entrevista. Y, como instrumentos los registros visuales y
auditivos. Méndez (1998) menciona que “la observación directa es ejecutada cuando
el investigador interactúa como los sujetos observados” (p. 143).
Tamayo y Tamayo (1995), señala que la “entrevista” al igual que la
observación, es de uso bastante común en la investigación. Es decir, la entrevista es la
relación directa establecida entre el investigador y la de su objetivo de estudio a
través de individuos o grupos con el fin de obtener testimonios orales (p. 100).
3.4. Fases Metodológicas.
Las fases metodológicas consisten en la definición de un conjunto de
especificaciones que constituyen el enfoque inicial para la construcción del sistema,
en el transcurso del desarrollo de las actividades definidas en cada fase, se tomó en
consideración los recursos y el entorno tecnológico que se tenía para desarrollar el
mismo.
Como metodología de diseño de software se empleó la metodología de
Programación Extrema (Extrame Programing, XP) seleccionada porque es una
25
metodología diseñada para desarrollar aplicaciones en corto periodo de tiempo. La
comunicación es una parte importante y debe realizarse entre el programador y los
clientes.
• Fase I: Planificación del proyecto.
Se realizó una visita programada a la empresa en estudio, efectuando una
entrevista al administrador, se diagnosticó la situación actual de los procesos de su
gestión, a través de las técnicas de obtención de datos y entrevistas, determinando sus
necesidades al respecto, estableciéndose los requerimientos del usuario, recursos
disponibles y las entidades que interactúan para el desarrollo del sistema Web 2.0 y
Android.
Las tareas que se desarrollaron en esta fase fueron: la historia del usuario, el
plan de entregas e iteraciones.
• Fase II: Diseño.
Se plantearon diferentes modalidades de desarrollo del sistema Web, así como
se estudiaron diferentes modelos de estructuras, se diseñaron los módulos
funcionales, las interfaces gráficas que la componen, los enlaces entre un módulo y
otro, el mapa de navegación y los diagramas de casos de uso.
Es importante mencionar que para elaborar el diseño del mismo, se contó con
los datos obtenidos en la fase anterior, interpretando y adaptando los resultados,
tomándolos como base para cumplir con los requerimientos señalados por la empresa,
y a su vez para establecer diferentes diagramas tales como los casos de usos con sus
especificaciones, mapa de navegación, modelo lógico y relacional de la base de datos
y un esquema del sistema terminado.
• Fase III: Codificación.
Esta fase corresponde a la codificación del sistema, tomando en cuenta los
requerimientos, diseños y modelos planteados en las fases anteriores. El desarrollo
del código se realiza bajo estándares ya establecidos, lo que permite darle
consistencia y escalabilidad al mismo.
26
Se describirán los códigos mas importantes utilizados en el sistema y más
complejos que ayudaron a realizar las conexiones a la base de datos e interacción con
el usuario. Y para dar énfasis en los resultados obtenidos en esta fase, se presentan las
pantallas utilizadas en el sistema y una breve explicación de las mismas, tanto en la
plataforma web como en Android.
• Fase IV: Pruebas.
En la fase de pruebas, se evaluó la funcionalidad de los códigos mientras se
ejecutaba el sistema, de tal forma que a medida que se avanzaba en el desarrollo, cada
sección se ha probado para ver si se puede considerar confiable, estable y óptima,
atendiendo a los requerimientos del usuario.
Las pruebas que se realizaron fueron de caja blanca y caja negra, por medio de
escenarios de prueba basados en los siguientes aspectos:
• Los escenarios de prueba correspondieron a un formato estándar creado por el
grupo de trabajo.
• Los escenarios de prueba fueron realizadas por el desarrollador y por el
usuario.
• Un punto de importancia es crear los distintos escenarios de prueba que el
usuario pueda crear inconscientemente, para determinar si el sistema evalúa
correctamente cada caso que se pueda presentar en el futuro.
27
CAPÍTULO IV
RESULTADOS
4.1. Fase I Planificación
4.1.1 Historias de Usuarios
Las historias de usuarios es una técnica que permite a la metodología XP
(Programación Extrema) conocer los requerimientos del sistema, se realizaron
entrevistas no estructuradas al administrador de condominio, para realizar dichas
historias. A continuación se presentará las historias de usuario correspondientes a las
entrevistas realizadas:
Cuadro Nº1: Historia de Usuario Nº 01
Identificador 01 Nombre Registrar residencia
Cliente Administrador del condominio Prioridad Alta
Prioridad Alta
Programador Johan Navarro
Descripción El administrador se encargará de crear las residencias
introduciendo todos los datos como: nombre, RIF, cantidad de
inmuebles, pisos, y torres, y todo lo referente al condominio.
Fuente: Johan Navarro (2014)
Cuadro Nº 2: Historia de Usuario Nº 02
Identificador 02 Nombre Registrar propietarios
Cliente Administrador del condominio Prioridad Alta
Programador Johan Navarro
Descripción El administrador registrará los datos de cada propietario
correspondiente a cada residencia.
Fuente: Johan Navarro (2014)
28
Cuadro Nº 3: Historia de Usuario Nº 03
Identificador 03 Nombre Registrar Relación de gastos
Cliente Administrador del condominio Prioridad Alta
Programador Johan Navarro
Descripción El administrador registrará cada gasto realizado por el
condominio en la relación gastos con los datos de las facturas o
recibos generados a nombre del condominio. Después que los
datos son guardados el sistema automáticamente genera la
relación individual correspondiente a cada inmueble con su
respectiva alícuota.
Fuente: Johan Navarro (2014)
Cuadro Nº 4: Historia de Usuario Nº 04
Identificador 04 Nombre Registrar pagos
Cliente Administrador del condominio Prioridad Alta
Programador Johan Navarro
Descripción El administrador registrará los pagos que cada propietario
realiza, con los datos de la transacción ya sea con transferencia,
depósito o cheque.
Fuente: Johan Navarro (2014)
Cuadro Nº 5: Historia de Usuario Nº 05
Identificador 05 Nombre Registrar Egresos
Cliente Administrador del condominio Prioridad Alta
Programador Johan Navarro
Descripción El administrador registrará los egresos realizados, como los
gastos de luz, agua, limpieza, de las áreas comunes al
condominio, relacionándolos con las facturas registradas en las
relaciones de gastos.
Fuente: Johan Navarro (2014)
29
Cuadro Nº 6: Historia de Usuario Nº 06
Identificador 06 Nombre Administrar usuario
Cliente Administrador del condominio Prioridad Alta
Programador Johan Navarro
Descripción El administrador al registrar un propietario se crea
automáticamente un usuario del sistema, también podrá
modificar, y desbloquear los usuarios.
Fuente: Johan Navarro (2014)
Cuadro Nº 7: Historia de Usuario Nº 07
Identificador 07 Nombre Envío de notificaciones
Cliente Administrador del condominio Prioridad Alta
Programador Johan Navarro
Descripción Después de crear una relación de gasto individual el sistema
enviara un mensaje a cada propietario de ese condominio,
notificándole la fecha de la relación, y el monto de la deuda que
corresponde a ese mes.
Fuente: Johan Navarro (2014)
Cuadro Nº 8: Historia de Usuario Nº 08
Identificador 08 Nombre Registrar Eventos
Cliente Administrador del condominio Prioridad Alta
Programador Johan Navarro
Descripción El administrador registrara los eventos que tenga previstos el
condominio para mantener informados a todos los propietarios
de ese condominio.
Fuente: Johan Navarro (2014)
30
Cuadro Nº 9: Historia de Usuario Nº 09
Identificador 09 Nombre Realizar Backup
Cliente Administrador del condominio Prioridad Alta
Programador Johan Navarro
Descripción El administrador puede realizar respaldos cada vez que sea
necesario, mediante el módulo de backup del sistema.
Fuente: Johan Navarro (2014)
Cuadro Nº 10: Historia de Usuario Nº 10
Identificador 10 Nombre Consultas
Cliente Usuario Interno Prioridad Alta
Programador Johan Navarro
Descripción El usuario puede consultar la información correspondiente a
solvencias, carta de residencia, relación de gastos generales,
relación de gastos individuales, pagos realizados y deudas.
Fuente: Johan Navarro (2014)
Cuadro Nº 11: Historia de Usuario Nº 11
Identificador 11 Nombre Cambio de Clave
Cliente Usuario Interno Prioridad Alta
Programador Johan Navarro
Descripción El usuario puede modificar su clave desde su sesión. Si no
recuerda la clave también puede recuperarla desde la página de
inicio de sesión, en la opción recuperar clave, e introduciendo la
pregunta de seguridad.
Fuente: Johan Navarro (2014)
31
4.1.2 Planificación de Entrega
Con el objetivo de identificar el tiempo de implementación y el número de
iteraciones de las historias de usuarios se utilizará las fichas de tarea.
Cuadro Nº 12: Ficha de Tarea N° 1
Ficha de Tarea N° 1
Nombre de la tarea: Levantamiento de Información
Historias a Implementar: Todas
Fecha de inicio:10/12/13 Fecha de fin:25/12/13 Tiempo Estimado: 15 Días
Desarrolladores: Johan Navarro
Descripción: Buscar información del condominio para conocer sus necesidades.
Fuente: Johan Navarro (2014).
Cuadro Nº 13: Ficha de Tarea N° 2 Ficha de Tarea N° 2
Nombre de la tarea: Diseño de la Interfaz con el Usuario Web
Historias a Implementar: Todas
Fecha de inicio: 25/12/13 Fecha de fin:10/01/14 Tiempo Estimado: 15 días
Desarrolladores: Johan Navarro
Descripción: Diseño de las interfaces de la aplicación web
Fuente: Johan Navarro (2014).
Cuadro Nº 14: Ficha de Tarea N° 3
Ficha de Tarea N° 3
Nombre de la tarea: Diseño de la Interfaz con el Usuario Android
Historias a Implementar: Todas
Fecha de inicio: 25/12/13 Fecha de fin:10/01/14 Tiempo Estimado: 15 días
Desarrolladores: Johan Navarro
Descripción: Diseño de las interfaces de la aplicación Android
Fuente: Johan Navarro (2014).
32
Cuadro Nº 15: Ficha de Tarea N° 4
Ficha de Tarea N° 4
Nombre de la tarea: Diseño de la base de datos
Historias a Implementar: Todas
Fecha de inicio: 10/01/14 Fecha de fin:13/01/14 Tiempo Estimado: 3 días
Desarrolladores: Johan Navarro
Descripción: Modelación e implementación de la base de datos.
Fuente: Johan Navarro (2014).
Cuadro Nº 16: Ficha de Tarea N° 5 Ficha de Tarea N° 5
Nombre de la tarea: Desarrollo del módulo de propietario.
Historias a Implementar: Administrador, Propietario
Fecha de inicio: 13/01/14 Fecha de fin:15/01/14 Tiempo Estimado: 2días
Desarrollador: Johan Navarro
Descripción: Diseño, desarrollo del módulo de propietario y sus validaciones
Fuente: Johan Navarro (2014).
Cuadro Nº 17: Ficha de Tarea N° 6
Ficha de Tarea N° 6
Nombre de la tarea: Desarrollo del módulo de residencia
Historias a Implementar: Administrador
Fecha de inicio: 15/01/14 Fecha de fin:17/01/14 Tiempo Estimado: 2días
Desarrollador: Johan Navarro
Descripción: Diseño, desarrollo del módulo de residencia y sus validaciones
Fuente: Johan Navarro (2014).
33
Cuadro Nº 18: Ficha de Tarea N° 7
Ficha de Tarea N° 7
Nombre de la tarea: Desarrollo del módulo de relación de gastos
Historias a Implementar: Administrador
Fecha de inicio: 17/01/14 Fecha de fin:21/01/14 Tiempo Estimado: 4días
Desarrollador: Johan Navarro
Descripción: Desarrollo del módulo de relación de gastos y sus validaciones
Fuente: Johan Navarro (2014).
Cuadro Nº 19: Ficha de Tarea N° 8
Ficha de Tarea N° 8
Nombre de la tarea: Desarrollo del módulo de pago
Historias a Implementar: Administrador
Fecha de inicio: 21/01/14 Fecha de fin:23/01/14 Tiempo Estimado: 2días
Desarrollador: Johan Navarro
Descripción: Diseño, desarrollo del módulo de pago y sus validaciones
Fuente: Johan Navarro (2014).
Cuadro Nº 20: Ficha de Tarea N° 9
Ficha de Tarea N° 9
Nombre de la tarea: Desarrollo del módulo de administración de usuario
Historias a Implementar: Todas
Fecha de inicio: 23/01/14 Fecha de fin:25/01/14 Tiempo Estimado: 2días
Desarrollador: Johan Navarro
Descripción: Diseño, desarrollo del módulo de usuario y sus validaciones
Fuente: Johan Navarro (2014).
34
Cuadro Nº 21: Ficha de Tarea N° 10
Ficha de Tarea N° 10
Nombre de la tarea: Desarrollo del módulo de consultas
Historias a Implementar: Administrador, Junta de condominio
Fecha de inicio: 25/01/14 Fecha de fin:30/01/14 Tiempo Estimado: 5días
Desarrollador: Johan Navarro
Descripción: Diseño, desarrollo del módulo de consultas y sus validaciones
Fuente: Johan Navarro (2014).
4.1.3. Iteraciones
Basado en las historias de usuarios y en las fichas de tareas se planifico tres
iteraciones las cuales se realizaron en un tiempo total de 4 semanas, esto con la
finalidad de definir las fechas de entregas de los requerimientos acordados. A
continuación se muestra las iteraciones que se realizaron.
Cuadro Nº 22: Iteración N° 1
Iteración N° 1
Desarrollador: Johan Navarro
Actividades: Levantamiento de la Información
Historias de Usuarios: Todas
Fecha de inicio: 10/12/13 Fecha de Fin: 25/12/13
Fuente: Johan Navarro (2014).
35
Cuadro Nº 23: Iteración N° 2
Iteración N° 2
Desarrolladores: Johan Navarro
Actividades: • Creación de las interfaces con el
usuario del sistema.
• Diseño y modelación de la base de
datos.
Historias de Usuarios: Todas
Fecha de inicio: 25/12/13 Fecha de Fin: 10/01/14
Fuente: Johan Navarro (2014).
Cuadro Nº 24: Iteración N° 3 Iteración N° 3
Desarrolladores: Johan Navarro
Actividades: Desarrollar módulo de:
• Propietario
• Relación de gastos
• Usuario
• Pagos
• Consultas
Historias de Usuarios: Todas
Fecha de inicio:10/01/14 Fecha de Fin: 30/01/14
Fuente: Johan Navarro (2014).
36
4.2. Fase II Diseño
En la siguiente fase de la metodología utilizada en la presente investigación, se
aplicaron las herramientas necesarias para la realización del sistema, una de estas
herramientas es el uso de Lenguaje Unificado de Modelado (UML) en el cual se
plantea:
• Diagrama de caso de uso
• Especificación de casos de uso
• Mapa de navegación
4.2.1 Diagramas de caso de uso
Para modelar el sistema se utilizaron los casos de usos los cuales son de gran
importancia para identificar lo que hace el usuario en el sistema. Una de las ventajas
de los casos de usos es que ayuda a visualizar de forma clara y precisa las
dependencias que existen entre el negocio y el sistema que se está desarrollando.
El sistema interactúa con varios actores tales como administrador de
condominio, propietarios y junta de condominio.
Los modelos de casos de usos del sistema son los siguientes:
37
Figura Nº 1: Modelo de Casos de Usos del Administrador Fuente: Johan Navarro (2014)
38
Figura Nº 2: Modelo de Casos de Usos del Usuario
Fuente: Johan Navarro (2014)
39
4.2.2 Especificaciones de Casos de Usos
Cuadro Nº 25: Registrar Residencia
Registrar Residencia
Esquema de Caso de Uso
Definición de Caso de Uso Nombre de Caso de Uso: Administrador a Crear Nuevo Residencia Precondiciones: Iniciar sesión Descripción: El Administrador puede crear una nueva residencia,
especificando los datos necesarios para su registro Condición de Término: La nueva residencia es creado con éxito Condición de termino Fallida: La residencia ya se encuentra registrado o se
encuentran datos obligatorios en blanco Actores Primarios: Administrador Actores Secundarios:
Flujos de Eventos FLUJO BÁSICO PASO ACCIÓN
1 Ingresar al sitio Web 2 Iniciar sesión 3 Registrar residencia 4 Llenado del formulario correspondiente 5 Confirmar los datos del nuevo propietario
Fuente: Johan Navarro (2014)
40
Cuadro Nº 26: Registrar Evento
Registrar Evento
Esquema de Caso de Uso
Definición de Caso de Uso Nombre de Caso de Uso: Administrador a Crear Nuevo Evento Precondiciones: Iniciar sesión, seleccionar la residencias a visualizar Descripción: El Administrador puede crear un nuevo Evento,
especificando los datos necesarios para su registro Condición de Término: El nuevo evento es creado con éxito, y se actualiza la
página web Condición de termino Fallida: El evento tiene fechas vencidas o se encuentran datos
obligatorios en blanco Actores Primarios: Administrador
Flujos de Eventos FLUJO BÁSICO PASO ACCIÓN
1 Ingresar al sitio Web 2 Iniciar sesión 3 Registrar evento 4 Llenado del formulario correspondiente 5 Confirmar los datos del nuevo evento
Fuente: Johan Navarro (2014)
41
Cuadro Nº 27: Registrar Propietario
Registrar Propietario
Esquema de Caso de Uso
Definición de Caso de Uso Nombre de Caso de Uso: Administrador a Crear Nuevo Propietario Precondiciones: Iniciar sesión, seleccionar residencia Descripción: El Administrador puede crear un nuevo Propietario,
especificando los datos necesarios para su registro Condición de Término: El nuevo propietario es creado con éxito Condición de termino Fallida: El propietario ya se encuentra registrado o se
encuentran datos obligatorios en blanco Actores Primarios: Administrador Actores Secundarios: Propietario
Flujos de Eventos FLUJO BÁSICO PASO ACCIÓN
1 Ingresar al sitio Web 2 Iniciar sesión 3 Registrar propietario 4 Llenado del formulario correspondiente 5 Confirmar los datos del nuevo propietario
Fuente: Johan Navarro (2014)
42
Cuadro Nº 28: Administrar Usuarios
Administrar Usuario
Esquema de Caso de Uso
Definición de Caso de Uso Nombre de Caso de Uso: Administrador a Administrar Usuario Precondiciones: Iniciar sesión, Debe existir el propietario del usuario
para poder modificar el usuario Descripción: El Administrador puede crear y modificar un Usuario,
especificando los datos necesarios para su registro Condición de Término: El usuario fue creado o modificado con éxito Condición de termino Fallida: El usuario ya se encuentra registrado o se encuentran
datos obligatorios en blanco Actores Primarios: Administrador Actores Secundarios: Propietario, junta de condominio
Flujos de Eventos FLUJO BÁSICO PASO ACCIÓN
1 Ingresar al sitio Web 2 Iniciar sesión 3 Administrar usuario 4 Modificar datos del usuario 5 Confirmar los datos del usuario
Fuente: Johan Navarro (2014)
43
Cuadro Nº 29: Registrar Relación de Gastos
Registrar Relación de Gastos
Esquema de Caso de Uso
Definición de Caso de Uso Nombre de Caso de Uso: Administrador a Registrar Relación de Gastos Precondiciones: Iniciar sesión, Debe existir la residencia Descripción: El Administrador puede realizar una nueva relación de
gastos, especificando los datos necesarios para su registro
Condición de Término: El nueva relación de gastos es creado con éxito Condición de termino Fallida: El relación de gastos no puede ser registrada o se
encuentran datos obligatorios en blanco Actores Primarios: Administrador Actores Secundarios: Propietarios
Flujos de Eventos FLUJO BÁSICO PASO ACCIÓN
1 Ingresar al sitio Web 2 Iniciar sesión 3 Registrar relación de gastos 4 Registrar cada ítem de la relación de gastos 5 Llenado del formulario correspondiente 6 Confirmar los datos del nuevo propietario 7 Crea automáticamente la relación individual
Fuente: Johan Navarro (2014)
44
Cuadro Nº 30: Registrar Pago
Registrar Pagos
Esquema de Caso de Uso
Definición de Caso de Uso Nombre de Caso de Uso: Administrador a Registrar Pagos Precondiciones: Iniciar sesión, Debe existir una relación individual y
una relación general Descripción: El Administrador puede realizar pagos, especificando
los datos necesarios para su registro Condición de Término: El nueva pago ha sido registrada con éxito Condición de termino Fallida: El pago no puede ser registrada o se encuentran datos
obligatorios en blanco Actores Primarios: Administrador Actores Secundarios: Propietarios
Flujos de Eventos FLUJO BÁSICO PASO ACCIÓN
1 Ingresar al sitio Web 2 Iniciar sesión 3 Registrar Pagos 4 Llenado del formulario correspondiente 5 Confirmar los datos del pago
Fuente: Johan Navarro (2014)
45
Cuadro Nº 31: Registrar Gastos
Registrar Gastos
Esquema de Caso de Uso
Definición de Caso de Uso Nombre de Caso de Uso: Administrador a Registrar Gastos Precondiciones: Iniciar sesión, Debe existir una relación de gastos para
asociar sus pagos de servicios Descripción: El Administrador puede registrar los gastos,
especificando los datos necesarios para su registro Condición de Término: El nueva pago ha sido registrada con éxito Condición de termino Fallida: El pago no puede ser registrada o se encuentran datos
obligatorios en blanco Actores Primarios: Administrador Actores Secundarios:
Flujos de Eventos FLUJO BÁSICO PASO ACCIÓN
1 Ingresar al sitio Web 2 Iniciar sesión 3 Registrar Gastos 4 Llenado del formulario correspondiente 5 Confirmar los datos del Gastos
Fuente: Johan Navarro (2014)
46
Cuadro Nº 32: Consultas
Consultas
Esquema de Caso de Uso
Definición de Caso de Uso Nombre de Caso de Uso: Consultas Precondiciones: Iniciar sesión, Debe existir una relación de gastos
cargada Descripción: El propietario puede consultar la relación de gastos,
relación individual, los pagos realizados, en imprimirlos
Condición de Término: El propietario puede imprimir los recibo Condición de termino Fallida: No se introdujeron los datos necesario para la consulta Actores Primarios: Propietario Actores Secundarios: sistema
Flujos de Eventos FLUJO BÁSICO PASO ACCIÓN
1 Ingresar al sitio Web 2 Iniciar sesión 3 Selecciona la pestaña de consulta 4 Selecciona que tipo de consulta quiere visualizar 5 Llenado del formulario correspondiente 6 Puede visualizar la consulta
Fuente: Johan Navarro (2014)
47
4.2.3. Mapa de navegación
Se presentó el mapa de navegación del sistema por usuarios a través de vistas
lógicas principal y la forma como los componentes interactúa entre si para llevar a
cabo el objetivo del sistema.
Figura Nº 3: Vista Lógica del Administrador del Sistema
Fuente: Johan Navarro (2014)
48
Figura Nº 4: Vista Lógica del Administrador del Condominio
Fuente: Johan Navarro (2014)
Figura Nº 5: Vista Lógica de los Propietarios
Fuente: Johan Navarro (2014)
49
Figura Nº 6: Vista Lógica de la Junta de Condominio
Fuente: Johan Navarro (2014)
50
4.2.4 Base de Datos
4.2.4.1. Modelo Entidad-Relación
Figura Nº 7: Diagrama Entidad-Relación
Fuente: Johan Navarro (2014)
51
4.2.4.2. Modelo físico
Figura Nº 8: Modelo físico
Fuente: Johan Navarro (2014)
52
4.3. Fase III Desarrollo 4.3.1. Sistema web
Para el desarrollo de la aplicación web hubo muchos procesos relevantes el cual
será mencionado a continuación:
Seguridad el sistema: consta de un código de encriptación de última generación
ya que los métodos como MD5 son vulnerables y fáciles de des-encriptar, a
continuación el código utilizado:
$password=substr(cedula, 1);
$digito = 7;
$set_salt = './johan';
$salt = sprintf('$2a$%02d$', $digito);
for($i = 0; $i < 22; $i++){
$salt .= $set_salt[mt_rand(0, 5)];
}
$password1= crypt($password, $salt);
Acceso a la base de datos: contiene la dirección del servidor, el nombre de la
base de datos a la cual se debe conectar y el usuario con el que se conecta el sistema:
'db'=>array(
'connectionString' => 'mysql:host=localhost;dbname=condominio',
'emulatePrepare' => true,
'username' => 'root',
'password' => '',
'charset' => 'utf8',
),
53
A continuación se presentaran las pantallas del sistema con una breve
descripción de las operaciones que puede realizar cada una.
4.3.1.1. Principal
El usuario al ingresar al sitio Web puede visualizar una breve descripción
acerca de la empresa. Acceder a la página de inicio de sesión, y posee un enlace de
descarga del instalador del sistema Android.
Figura Nº 9: Pantalla Nº 1
Fuente: Johan Navarro (2014)
54
4.3.1.2. Inicio de sesión
El usuario inicia sesión con su cuenta para ingresar al sistema, tiene una opción
que puede guardar la contraseña para no ingresarla a cada momento, también posee
un link de recordar contraseña, el cual el usuario puede recuperar su contraseña si
responde su pregunta secreta correctamente.
Figura Nº 10: Pantalla Nº 2
Fuente: Johan Navarro (2014)
55
4.3.1.3. Selección de residencia
Es la primera pantalla dentro del sistema, donde el usuario podrá navegar entre
las diferentes residencias al cual está asignado. Adicionalmente, en cada residencia
aparece un mensaje de alerta para identificar que no se ha realizado la relación de
gasto de esa residencia del mes anterior.
Figura Nº 11: Pantalla Nº 3
56
Fuente: Johan Navarro (2014)
57
4.3.1.4. Registro de Propietario
El administrador introduce los datos de los propietarios como muestra la pantalla,
tales como el nombre, apellido, la cedula el cual esta limitada a 10 caracteres, fecha
de nacimiento el cual debe ser mayor de edad para poder registrarse, debe ingresar 2
números de teléfonos y un correo, una pregunta de seguridad para poder recuperar los
datos de inicio de sesión, y además una foto para identificar al propietario.
Figura Nº 12: Pantalla Nº 4
Fuente: Johan Navarro (2014)
58
4.3.1.5. Registro de Residencia
El administrador ingresara los datos de la residencia, en ella puede seleccionar
townhouse o apartamento, y dependiendo de la selección se desplegaran campos
correspondientes, donde debe colocar el nombre de las manzanas/torres, con un
prefijo y la cantidad de inmuebles que están en la misma zona, adicionalmente hay
una opción de comercio que se agrega como un inmueble adicional, como también se
le agrega distintas áreas comunes si posee, por último se puede asignar una foto de la
fachada de la residencia para identificarla con rapidez.
Figura Nº 13: Pantalla Nº 5
Fuente: Johan Navarro (2014)
59
60
4.3.1.6. Asignar Inmueble
El administrador podrá asignar las alícuotas respectivas a cada inmueble de la
residencia y después que sea validada no podrá modificar ese valor pero si podrá
cambiar el propietario de cada inmueble a la hora de que cambie de dueño.
Figura Nº 14: Pantalla Nº 6
Fuente: Johan Navarro (2014)
61
4.3.1.7. Registro de Áreas comunes
El usuario podrá agregar nuevas áreas comunes y asignarle un precio del
alquiler si esa área puede ser alquilada a los propietarios de la residencia.
Figura Nº 15: Pantalla Nº 7
Fuente: Johan Navarro (2014)
62
4.3.1.8. Registro de movimiento
Los movimientos son todos aquellos ítems que van en la relación de gastos,
como servicios o gastos que tiene la residencia.
Figura Nº 16: Pantalla Nº 8
Fuente: Johan Navarro (2014)
63
4.3.1.9. Registrar Eventos
El administrador puede tener un registro de las actividades que el condominio
va a realizar, así los propietarios estarán siempre informados de las actividades que se
llevaran a cabo en el condominio o residencia, por ejemplo, se pueden registrar las
suspensiones de servicios básicos para que se tomen previsiones.
Figura Nº 17: Pantalla Nº 9
Fuente: Johan Navarro (2014)
64
4.3.1.10. Registrar Servicio
El administrador registra los servicios de outsourcing de confianza que utiliza la
residencia, ingresando nombre, cedula, y número de teléfono para su localización, y
seleccionando de la lista desplegable tipo se servicio, por ejemplo los pintores,
albañiles, plomeros, herreros, entre otros.
Figura Nº 18: Pantalla Nº 10
Fuente: Johan Navarro (2014)
65
4.3.1.11. Registrar Relación de Gastos
La relación de gastos se encuentra en el menú de procesos, en donde se
registran todos los gastos que tiene la residencia, según los movimientos, y los
cálculos del mes anterior, también si tiene gastos adicionales el cual puedes ser solo
para una torre, manzana, o inmueble particular.
Figura Nº 19: Pantalla Nº 11
Fuente: Johan Navarro (2014)
66
67
4.3.1.12. Registrar Nota de crédito
Las notas de créditos son utilizadas para llevar el control de los pagos sobrantes o abonos que son realizados por los propietarios para luego cancelar las deudas de la relación de gasto.
Figura Nº 20: Pantalla Nº 12
Fuente: Johan Navarro (2014)
68
4.3.1.13. Registrar Gastos Adicionales a inmuebles
Estos gastos son específicamente para aquellos inmuebles que presenten algún
gasto adicional a parte de los gastos comunes, se debe agregar la descripción, monto,
cuotas, fecha, entre otros. Y van relacionados en su relación de gasto general.
Figura Nº 21: Pantalla Nº 13
Fuente: Johan Navarro (2014)
69
4.3.1.14. Alquiler de Áreas Comunes
El administrador puede asignar un área común a un propietario para ser
alquilado marcando el área y su fecha.
Figura Nº 22: Pantalla Nº 14
Fuente: Johan Navarro (2014)
70
4.3.1.15. Realizar Pago (Propietarios)
En este módulo se busca el propietario y aparecen todas las deudas que tiene
pendiente por cancelar, además solo pueden seleccionarse las más antiguas,
pangándola por completo o abonando una cantidad a la deuda indicada, además si el
propietario paga en exceso, queda abonado para pagos futuros.
Figura Nº 23: Pantalla Nº 15
71
Fuente: Johan Navarro (2014)
4.3.1.16. Realizar Pagos (Condominio)
El administrador registra los pagos de los servicios del condominio, colocando
la fecha, referencia, y el responsable. Este control es para verificar la cancelación de
las deudas de todos los servicios del condominio. Por otra parte, si el servicio no se
ha cancelado, aparece un mensaje de alerta cuando se intenta generar una relación de
gasto nueva con ese mismo servicio, impidiendo que sea generada, y obligando que
se pague antes de que sea creada dicha relación.
Figura Nº 24: Pantalla Nº 16
Fuente: Johan Navarro (2014)
72
73
4.3.1.17. Consulta de Propietarios
Este módulo se encuentra en la pestaña consultas, además aparecen los
propietarios solo de la residencia que se está manejando en ese momento,
adicionalmente aparece el monto del crédito que posee el propietario del inmueble.
Figura Nº 25: Pantalla Nº 17
Fuente: Johan Navarro (2014)
4.3.1.18. Consulta de solventes y morosos
74
En este módulo se pueden visualizar los propietarios que están al día con las
cuotas del condominio y los quienes no, mostrando la cantidad de la deuda, además si
el propietario esta solvente, aparece la solvencia del condominio y la opción de
imprimir.
Figura Nº 26: Pantalla Nº 18
Fuente: Johan Navarro (2014)
75
4.3.2. Aplicación Android
En el sistema Android se utilizaron varios elementos para poder realizar la
conexión con el servidor y poder obtener los datos solicitados se utilizaron dos (2)
funciones, una la cual envía el servidor la petición de la información y otra la que
interpreta esa información, a continuación se demostraran los códigos utilizados para
dichas funciones.
La función que envía la petición a la clase:
String connect="http://"+IP_Server+"/tesis_android/acces.php";
post=new Httppostaux(); ArrayList<NameValue> postparameter= new ArrayList<NameValue>();
postparameter.add(new BasicNameValue("usuario",username));
JSONArray jdata=post.getserverdata(postparameter, connect);
if (jdata!=null && jdata.length() > 0){
JSONObject json_data = null ;
try {
for(int i=0; i<jdata.length();i++){
json_data = jdata.getJSONObject(i);
if (jdata.length()>0){
logstatus=json_data.getInt("Valor");
}
}
}
}
76
La función que interpreta la petición y regresa el valor obtenido del archivo php
ubicado en el servidor:
private void httppostconnect(ArrayList<NameValue> parametro, String url){
try {
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost(urlwebserver);
Httppost.setEntity(new UrlEncodedFormEntity(parametros));
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
is = entity.getContent();
}catch(Exception e){
Log.e("log_tag", "Error in http"+e.toString());
}
}
Después de todo el código se obtiene la información que fue solicitada a través
de la función mediante un archivo PHP alojado en el servidor, el cual después de ser
procesado el archivo PHP transforma la información en un arreglo JSON para poder
ser analizado por el sistema Android, a continuación se demuestra como se realizó
dicho proceso:
$result=mysql_query("SELECT COUNT(*) FROM usuarios WHERE
usuario='$user' AND clave='$codigo'");
$count = mysql_fetch_row($result);
if ($count[0]==0){
return false;
}else {
77
$result=mysql_query("SELECT a.usuario, a.clave, b.id, b.nombre FROM usuarios
a, clientes b WHERE (a.usuario='$user' AND a.clave='$codigo' ) AND
a.id_cliente=b.id");
while($row=mysql_fetch_assoc($result)){
$output[]=$row;
}
$output[]=array("logstatus"=>"1");
echo json_encode($output);
78
A continuación se mostraran las pantallas del sistema Android, explicando
como funciona cada una de ellas, y lo que puede realizar el usuario.
4.3.2.1. Inicio de sesión Android
En el módulo el usuario (propietario) iniciar sesión
Figura Nº 27: Pantalla Nº 19
Fuente: Johan Navarro (2014)
79
4.3.2.2. Recuperación de clave
En este módulo el usuario que haya olvidado su clave puede recuperarla
indicando los valores correctos, primero debe colocar su usuario y validarlo, luego
aparecerá la pregunta secreta que el usuario selecciono anterior mente, y si es correcta
la respuesta podrá cambiar su clave.
Figura Nº 28: Pantalla Nº 20
Fuente: Johan Navarro (2014)
80
4.3.2.3. Seleccionar Residencia
En esta pantalla después de iniciar sesión, el usuario puede seleccionar las residencias en la cual está relacionado y el inmueble que le pertenece.
Figura Nº 289: Pantalla Nº 21
Fuente: Johan Navarro (2014)
81
4.3.2.4. Pantalla principal
En este módulo el usuario tiene una selección entre estatus en donde visualiza
todas las deudas que tiene pendiente por cancelar, y servicio que le muestra todas las
personas de confianza que realizan trabajos en las residencias, adicionalmente puede
visualizar las noticias que tengan ese condominio.
Figura Nº 30: Pantalla Nº 22
Fuente: Johan Navarro (2014)
82
4.3.2.5. Relación de gastos
En este módulo el usuario visualiza todas las deudas pendientes, al tocar una
de las relaciones de gasto se despliega un menú donde puede seleccionar entre la
relación que desea ver en pantalla, como relación general o relación individual.
Figura Nº 31: Pantalla Nº 23
Fuente: Johan Navarro (2014)
83
4.4. Fase IV Pruebas
Esta es la última fase contemplada en la metodología XP, llevándose a cabo las
pruebas pertinentes para garantizar la efectividad del sistema, estas pruebas se
aplicaron a los diferentes módulos y acciones del sistema.
Cuadro Nº 32: Caso de Prueba Nº 1
Programa: Administración de Condominio
Estrategia de Prueba:
Caja Negra Caja Blanca
Tipo de Prueba:
Unidad Integración
Sistema Validación
Técnica de Prueba:
Conectividad con la base de datos y el servidor Apache
Resultados: Error al iniciar el servidor Apache. Múltiples instancias ejecutando a la
vez
Decisión: Remover una de las instancias del servidor que generaba conflicto
Fuente: Johan Navarro (2014)
84
Cuadro Nº 33: Caso de Prueba Nº 2
Programa: Sesión de Administrador
Estrategia de Prueba:
Caja Negra Caja Blanca
Tipo de Prueba:
Unidad Integración
Sistema Validación
Técnica de Prueba:
Iniciar sesión como Administrador
Resultados: Se ha iniciado sesión correctamente, pero para cerrar sesión es además
necesario cerrar el navegador
Decisión: Corregir el código de la acción de cierre de sesión, y redirigir a la página
de inicio de sesión al hacerlo
Fuente: Johan Navarro (2014)
85
Cuadro Nº 34: Caso de Prueba Nº 3
Programa: Registro de usuario
Estrategia de Prueba:
Caja Negra Caja Blanca
Tipo de Prueba:
Unidad Integración
Sistema Validación
Técnica de Prueba:
Prueba para la creación de un usuario nuevo
Resultados: Registro de usuarios cuyos nombres consisten en espacios en blanco
Decisión: Corregir el código que evalúa los campos del formulario antes de
ingresarlos a la base de datos
Fuente: Johan Navarro (2014)
86
Cuadro Nº 35: Caso de Prueba Nº 4
Programa: Conexión del sistema android
Estrategia de Prueba:
Caja Negra Caja Blanca
Tipo de Prueba:
Unidad Integración
Sistema Validación
Técnica de Prueba:
Ingreso de datos de usuario
Resultados: la conexión al servidor no conecta al usuario al iniciar sesión
Decisión: se reinicia la aplicación e inicia correctamente
Fuente: Johan Navarro (2014)
87
Cuadro Nº 36: Caso de Prueba Nº 5
Programa: Sistema Android
Estrategia de Prueba:
Caja Negra Caja Blanca
Tipo de Prueba:
Unidad Integración
Sistema Validación
Técnica de Prueba:
Pruebas del sistema en dispositivos android
Resultados: no en todos los dispositivos Android se ejecutaban todas las
herramientas del sistema.
Decisión: se utilizó las versión compatible para todos los dispositivos android
Fuente: Johan Navarro (2014)
88
CONCLUSIONES Y RECOMENDACIONES
Conclusión
Actualmente es necesario con el auge de las Tecnologías de Información y
Comunicación que las empresas emergentes y en crecimiento, hagan uso de los
recursos Web para darse a conocer y para facilitar la gestión de números crecientes de
clientes, empleados y eventualmente sucursales de éstas. Dicha gestión a través de
recursos Web viene mayormente orientada hacia los procesos de mercadotecnia,
compra-venta, publicidad y feedback con los clientes, para incrementar la
productividad, y a la vez disminuir el tiempo de respuesta.
En el presente trabajo de grado, se desarrolló un sistema de información bajo
plataforma web y android para el soporte de la gestión de administración de la
empresa Condominios Mérida C.A, el consta de módulos para la administración de
propietario, registro y consulta de propietario, visualización de relación de gastos
general e individual, realización de pagos, y un módulo donde el cliente puede
conectarse desde su dispositivo móvil con sistema android.
El sistema realizado facilita al administrador y al propietario, la visualización
de los gastos que tiene el condominio en el mes, sin necesidad de trasladarse a la
ubicación física de la empresa, los propietarios pueden ver sus cuotas directamente en
la web o en su dispositivo inteligente con un sistema Android, agilizando los procesos
que antes eran registrados y llevados a cabo manualmente utilizando planillas y
formatos en papel.
Adicionalmente la empresa Condóminos Merida C.A. tenía problemas con los
cálculos de las relaciones generales e individuales. Ahora las facturas que debe pagar
el condominio están relacionadas debidamente con su relación general y sus pagos
están relacionados con sus propietarios, asi mejorando la respuesta en cada proceso.
84
Recomendaciones
Para desarrollos futuros en el área de aplicaciones Web y sistema Android es
importante tomar en cuenta lo siguiente:
• Que los propietarios puedan ellos mismos realizar sus pagos a través de la web
o desde su dispositivo Android, con la pasarela de pago respectiva a cada
banco.
• Que los propietarios puedan reservar el alquiler de las áreas comunes desde la
web o su dispositivo Android.
• Llevar la nómina de las personas que trabajan en el condominio
• Llevar facturas de pagos.
85
REFERENCIAS
Bibliográficas
Bordones Grismer (2010): Desarrollo de una Aplicación Web para el Apoyo de la
Gestión Comercial y Administrativa de una Pequeña Empresa, Universidad
José Antonio Páez, trabajo especial de grado.
Duran Rodriguez Reinaldo (2007): Desarrollo de un sistema de información para la Gestión de Condominio, Universidad José Antonio Páez (UJAP), trabajo especial de grado.
Fidias, A (1999). “El Proyecto de Investigación”. 3era edición. Caracas: Editorial Episteme.
Mendez, Javier (1998), “Complejidad y Diversidad en los Estudios Descriptivos de la Investigación”.
Peña María Laura (2007): Sistema de Información para la Gestión Administrativa bajo Software Libre. Universidad José Antonio Páez (UJAP), trabajo especial de grado.
Tamayo, Mario (1995). “El Proceso de la Investigación Científica”. 3era Edición.
Editorial Limusa S.A. de C.V., Distrito Federal, Mexico.
Electrónicas
Cazares, Christen, Jaramillo, Villaseñor y Zamudio (2000),
http://www.slideshare.net/svetlanamaribel/tipos-de-investigacion-metodologia-
de-la-investigacion [Consulta 2013 Agosto 01]
Ley de Propiedad Horizontal, Disponible en: http://www.admibiza.com/lph.htm
[Consulta 2013 Agosto 01].
Que significa Android. Disponible en: http://www.xatakandroid.com/sistema-operativo/que-es-android [Consulta 2013 Agosto 05]
86
Que es PHP. Disponible en: http://www.php.net/manual/es/intro-whatis.php [Consulta 2013 Agosto 06].
Sistema de información. Disponible en: http://fccea.unicauca.edu.co/old/siconceptosbasicos.htm [Consulta 2014 Febrero 12]
Sistema de información. Disponible en: http://www.eumed.net/libros-gratis/2011b/973/caracteristicas%20y%20definiciones%20de%20sistemas%20de%20informacion.html [Consulta 2014 Febrero 12]
Servidor Apache. Disponible en: http://web.mit.edu/rhel-doc/4/RH-DOCS/rhel-rg-es-4/ch-httpd.html [Consulta 2014 Febrero 12]
Plataforma Web. Disponible en: http://www.maestrosdelweb.com/editorial/web2/ [Consulta 2014 Febrero 12]
Programación Extrema Disponible en: http://www.uv.mx/universo/486/infgral/infgral_15.html [Consulta 2014 Febrero 12]
Top Related