I. Tabla de contenido
I. Tabla de contenido........................................................................................................ 1
II. Introduccin .................................................................................................................. 4
III. Fundamento terico ...................................................................................................... 5
1. Servicios bsicos. ...................................................................................................... 5
2. Gas domiciliario. ....................................................................................................... 5
2.1. Familias beneficiadas. ....................................................................................... 6
2.2. Inversiones. ........................................................................................................ 6
2.3. Proyecto de gnl suma tres nuevas regiones. ...................................................... 6
3. Facturacin electrnica. ............................................................................................ 7
3.1. Normativa legal. ................................................................................................ 7
3.2. Tipos de facturas electrnicas............................................................................ 7
3.3. Ventajas de la factura electrnica. ..................................................................... 8
4. Geolocalizacin......................................................................................................... 9
4.1. Los GPS, la geolocalizacin al alcance de tus manos. ...................................... 9
4.2. Google Earth una alternativa en lnea................................................................ 9
4.3. Sistema de posicionamiento global (GPS). ..................................................... 10
5. Sistemas de pagos. .................................................................................................. 11
5.1. PayPal. ............................................................................................................. 11
5.2. Pagos con Bitcoin. ........................................................................................... 11
IV. Objetivos ................................................................................................................. 12
1. Objetivo general. ..................................................................................................... 12
2. Objetivos especficos. ............................................................................................. 12
V. Alcance ....................................................................................................................... 13
1. Cuentas de usuario. ................................................................................................. 13
2. Solicitud e instalacin. ............................................................................................ 13
3. Pagos de servicio..................................................................................................... 13
4. Reportes y seguimiento. .......................................................................................... 13
5. Atencin al cliente. ................................................................................................. 14
VI. Elementos del sistema basado en computadoras .................................................... 15
1. Hardware. ................................................................................................................ 15
4. Implementacin....................................................................................................... 57
4.1. Sistema operativo. ........................................................................................... 57
4.2. Lenguaje de programacin. ............................................................................. 58
4.3. Gestor de base de datos. .................................................................................. 59
4.4. Framework. ...................................................................................................... 60
VIII. Conclusin .............................................................................................................. 63
IX. Bibliografa ............................................................................................................. 64
II. Introduccin
Con la aparicin del computador, el internet y un sin nmero de tecnologas en el mbito de los
negocios, se ha ido forjando un mundo de posibilidades para brindar soluciones a todos aquellos
que hacen uso de estas tecnologas. Una de las grandes ventajas que conlleva el uso de las
tecnologas de la informacin es la aceleracin en muchos de los procesos de negocio llevados a
cabo en empresas, instituciones, comercios, etc.
A raz de los avances en las tecnologas de la informacin, fenmeno ocurrido en los ltimos
20 aos, el cual se inici con la aparicin de los sistemas computacionales, ha hecho que los
sistemas transaccionales aumenten en complejidad.
Actualmente es comn contar con servicios bsicos al alcance de la mayora de la poblacin
boliviana, dado que estos han ido evolucionando y creciendo con el tiempo, sin embargo, los
servicios bsicos, aunque cuentan con soluciones informticas para gestionar los procesos que
conlleva brindar este tipo de servicios a la poblacin, sigue siendo rustico comparado con el rpido
avance de tecnologas de las cuales podemos servirnos.
Uno de ellos es el uso de los telfonos inteligentes denominado por las masas como
Smartphone, estos dispositivos adems de servir como medio de comunicacin tienen un conjunto
de tecnologas como el GPS, navegacin Web, reproduccin y emisin de elementos multimedia
entre otros, que pueden ser muy tiles para el seguimiento del uso de los servicios bsicos, otro de
ellos es la internet, que sumado con el uso de las plataformas Web brindaran un servicio de mejor
calidad.
Tambin ser necesario descender a aspectos particulares, como el conocimiento de los
principales intermediarios y entidades involucradas en la prestacin de los servicios bsicos, pero
detenindose y prestando mejor atencin al servicio de gas domiciliario.
Para ello se aplicarn conocimientos tcnicos, as como tambin empricos, esto sumado al
uso de las ltimas tecnologas web, y uso de bases de datos relaciones correctamente estructuradas,
harn que el resultado de este proyecto satisfaga y cumpla con las expectativas del mercado.
2. Gas domiciliario.
Yacimientos Petrolferos Fiscales Bolivianos (YPFB) mediante la Gerencia Nacional de Redes de
Gas y Ductos, instala gas domiciliario para 7.175 familias de once zonas de la ciudad de La Paz,
con una inversin de Bs 5.319.181,61 millones.
En la carrera para dotar a ms familias de la comodidad de contar con gas domiciliario a
menor precio que el GLP, La Paz y Santa Cruz marcan la diferencia, mientras que Beni y Pando
dan sus primeros pasos.
De acuerdo con YPFB, entre 2010 y 2016 las instalaciones internas de gas domiciliario
fueron 584.595, mientras que entre 1994 y 2009 se realizaron 121.104. Entre ambos periodos
(1994-2016), las instalaciones de gas domiciliario en el pas suman 705.699.
Es en este escenario en el que La Paz (ms El Alto) toma la delantera, pues hasta el ao
pasado registr 294.226 instalaciones, siendo el 2014 el de ms conexiones, con 45.196, para luego
en 2015 y 2016 tener un promedio de 34.000 unidades.
Mientras que Santa Cruz, con 136.356 conexiones domiciliarias, ocupa el segundo lugar a
escala nacional.
Sobre las inversiones realizadas para poner en marcha el sistema ESR, la estatal petrolera
inform de que se invirtieron $us 260 millones en los tres niveles que permiten contar y desarrollar
el sistema de GNL.
3. Facturacin electrnica.
Una factura electrnica es, ante todo, una factura. Es decir, tiene los mismos efectos legales que
una factura en papel. Recordemos que una factura es un justificante de la entrega de bienes o la
prestacin de servicios.
Una factura electrnica es un documento que se expide y recibe en formato electrnico. Es
importante destacar que la expedicin de una factura electrnica est condicionada al
consentimiento de su destinatario. La factura electrnica, por tanto, es una alternativa legal a la
factura tradicional en papel.
Esta modalidad se utiliza principalmente en las operaciones de compra - venta por Internet,
el comprador del bien o servicio realiza la operacin, enviando los datos del comprador, as como
de la transaccin; el vendedor es el sistema.
3.1. Normativa legal.
En esta modalidad los sistemas informticos de los sujetos pasivos o terceros responsables,
debern interactuar directamente con los Sistemas informticos del SIN, a efectos de solicitar la
generacin de facturas o notas fiscales por las transacciones comerciales que realicen por medios
electrnicos, individualizadas con un Cdigo de control generado y asignado por la
Administracin Tributaria.
Los sujetos pasivos o terceros responsables que optaren por esta modalidad, debern
previamente tramitar la respectiva suscripcin ante el SIN y coordinar aspectos tcnicos, aplicando
lo dispuesto en los Artculos 32 y33 de la presente resolucin.
Esta modalidad de facturacin estar orientada para aquellos sujetos pasivos o terceros
responsables que efecten transacciones comerciales electrnicas y otras que se adapten a las
caractersticas de esta modalidad.
3.2. Tipos de facturas electrnicas.
Conviene distinguir dos tipos fundamentales de factura electrnica: la factura electrnica con
formato estructurado y la factura electrnica con formato no estructurado.
Ambas son documentos electrnicos susceptibles de ser transmitidos mediante redes de
comunicaciones electrnicas, como Internet. La diferencia estriba en que el formato estructurado
facilita su tratamiento automatizado mientras que el no estructurado no lo facilita.
Facturas en formato estructurado.
Las facturas en formato estructurado contienen datos y pueden ser generadas
automticamente por los sistemas informticos de facturacin del emisor y ser tramitadas de forma
igualmente automatizada por los sistemas informticos de pago y contabilidad del receptor.
Ejemplos de formatos estructurados son los que utilizan el lenguaje XML (como UBL o Facturae),
EDIFACT, etc.
Facturas en formato no estructurado.
Las facturas en formato no estructurado consisten esencialmente en una imagen, lo que
implica que su procesamiento para poder ser introducidas en los sistemas informticos del receptor
requiere una intervencin manual o un proceso costoso que no suele estar completamente
automatizado, como el reconocimiento ptico de caracteres (OCR). Entre estas tenemos las
facturas en papel escaneadas y los ficheros PDF.
3.3. Ventajas de la factura electrnica.
Beneficios especficos de la factura electrnica son:
acortar los ciclos de tramitacin, incluido el cobro;
reducir errores humanos;
eliminar costes de impresin y envo postal;
facilitar un acceso ms rpido, gil y fcil a las facturas almacenadas;
reducir drsticamente el espacio necesario para su almacenamiento;
mejorar el servicio al cliente; eliminar el consumo de papel y su transporte, con el
consiguiente efecto positivo sobre el medio ambiente;
facilitar la lucha contra el fraude;
subsumir la factura en los sistemas informticos empresariales, mejorando drsticamente
su gestin;
y, esto es lo ms importante, contribuir a la modernizacin de la economa y al desarrollo
de la Sociedad de la Informacin.
Los beneficios econmicos derivados de la automatizacin del proceso de la factura superan a los
ahorros en impresin y envo postal. Por eso, el mximo beneficio potencial se realiza mediante el
empleo de facturas electrnicas con formato estructurado, si bien hay escenarios donde no se
materializan estos beneficios, como el caso de facturas destinadas a personas fsicas.
Estos beneficios, sin embargo, no podrn materializarse si no se superan importantes retos. Cabe
destacar los siguientes:
su adopcin por la Pequea y Mediana Empresa (PYME), que constituye el segmento ms
importante del tejido empresarial espaol y europeo;
su aceptacin por los ciudadanos; su implantacin en las Administraciones pblicas; y
la interoperabilidad de los sistemas de facturacin electrnica que permita su uso en la
interrelacin comercial tanto dentro como a travs de nuestras fronteras.
4. Geolocalizacin.
Tambin denominada georreferenciacin, la geolocalizacin implica el posicionamiento que
define la localizacin de un objeto, de un dispositivo, en un sistema de coordenadas determinado
de nuestro planeta tierra. Este proceso es generalmente empleado por los sistemas de informacin
geogrfica, un conjunto organizado de hardware y software, ms datos geogrficos, que se
encuentra diseado especialmente para capturar, almacenar, manipular y analizar en todas sus
posibles formas la informacin geogrfica referenciada, con la clara misin de resolver problemas
de gestin y planificacin.
Existen varias alternativas para conocer esta ubicacin, aunque claro, son los dispositivos
mviles los que por su portabilidad con nosotros mismos nos permitirn ms fcilmente conocer
nuestra ubicacin y actualizarla a medida que nos vamos movilizando y, por tanto, cambiando de
ubicacin geogrfica.
4.1. Los GPS, la geolocalizacin al alcance de tus manos.
Este servicio es importantsimo a la hora de permitirle a una persona saber cmo llegar o ubicar
un lugar determinado en nuestro territorio, siendo el GPS una de las estrellas en este sentido, un
pionero que le abri paso luego a nuevas propuestas en este sentido.
Entre ese amplio abanico de opciones que nos permiten descubrir la geolocalizacin se
destacan los telfonos mviles de alta gama, que son aquellos que cuentan con funciones
especializadas, en este particular caso traen integrados receptores de GPS, los cuales y gracias a la
red de satlites que rodea al planeta podrn ubicarnos en cualquier parte del globo terrqueo en el
cual nos encontremos.
4.2. Google Earth una alternativa en lnea.
Otra alternativa ampliamente usada y a disposicin de aquellos que no poseen celulares como los
mencionados anteriormente, u otros equipos porttiles, es la del Google Earth, que consiste en un
programa informtico, similar al Sistema de Informacin Geogrfica, que permite obtener
imgenes del planeta en tecnologa 3D en combinacin con imgenes de satlite, mapas y el motor
de bsqueda de Google y as facilita la visualizacin de imgenes a escala del lugar del planeta
tierra que se pretenda descubrir o identificar.
Esta herramienta de la geolocalizacin fue pensada y desarrollada oportunamente con un fin
militar, siendo el Departamento de Defensa de los Estados Unidos el responsable de su invencin.
Con el tiempo su uso se traslad al comn de la gente que por supuesto sucumbi antes las
bondades y beneficios que este recurso reporta a sus usuarios.
Y claro, luego, los dispositivos mviles, como ser los celulares, incorporaron esta fabulosa
tecnologa en su diseo y as es que en la actualidad su empleo est absolutamente extendido en el
mundo entero, siendo una herramienta en muchos casos imprescindible para las personas que se
movilizan de un lado a otro gracias a l.
Obviamente, con el correr del tiempo esta invencin fue sumando mejoras que permitieron
que se incorpore mucha ms informacin.
Sin dudas, la geolocalizacin es una tecnologa que surgi para quedarse y para ir creciendo
cada da ms con las mejoras que se le van sumando a cada instante, porque como sabemos los
avances tecnolgicos no paran nunca.
4.3. Sistema de posicionamiento global (GPS).
El Sistema de Posicionamiento Global, ms conocido por sus siglas en ingls, GPS (siglas de
Global Positioning System), es un sistema que permite determinar en toda la Tierra la posicin de
un objeto (una persona, un vehculo) con una precisin de hasta centmetros (si se utiliza GPS
diferencial), aunque lo habitual son unos pocos metros de precisin. El sistema fue desarrollado,
instalado y empleado por el Departamento de Defensa de los Estados Unidos. Para determinar las
posiciones en el globo, el sistema GPS se sirve de 24 satlites y utiliza la trilateracin.
El GPS funciona mediante una red de 24 satlites en rbita sobre el planeta Tierra, a 20 200
km de altura, con trayectorias sincronizadas para cubrir toda la superficie de la Tierra. Cuando se
desea determinar la posicin, el receptor que se utiliza para ello localiza automticamente como
mnimo tres satlites de la red, de los que recibe unas seales indicando la identificacin y la hora
del reloj de cada uno de ellos. Con base en estas seales, el aparato sincroniza el reloj del GPS y
calcula el tiempo que tardan en llegar las seales al equipo, y de tal modo mide la distancia al
satlite mediante el mtodo de trilateracin inversa, el cual se basa en determinar la distancia de
cada satlite al punto de medicin. Conocidas las distancias, se determina fcilmente la propia
posicin relativa respecto a los satlites. Conociendo adems las coordenadas o posicin de cada
uno de ellos por la seal que emiten, se obtiene la posicin absoluta o coordenadas reales del punto
de medicin. Tambin se consigue una exactitud extrema en el reloj del GPS, similar a la de los
relojes atmicos que lleva a bordo cada uno de los satlites.
Actualmente dentro del mercado de la telefona mvil la tendencia es la de integrar, por parte
de los fabricantes, la tecnologa GPS dentro de sus dispositivos. El uso y masificacin del GPS
est particularmente extendido en los telfonos mviles Smartphone, lo que ha hecho surgir todo
un ecosistema de software para este tipo de dispositivos, as como nuevos modelos de negocios
que van desde el uso del terminal mvil para la navegacin tradicional punto-a-punto hasta la
prestacin de los llamados Servicios Basados en la Localizacin (LBS).
Un buen ejemplo del uso del GPS en la telefona mvil son las aplicaciones que permiten
conocer la posicin de amigos cercanos sobre un mapa base. Para ello basta con tener la aplicacin
respectiva para la plataforma deseada (Android, Bada, IOS, WP, Symbian) y permitir ser
localizado por otros.
5. Sistemas de pagos.
Funcionan operando sobre una cantidad de dinero previamente depositada en una "hucha", de
manera que la transaccin no se alimenta de la cuenta asociada a una tarjeta de crdito, sino de
otro pequeo almacn monetario. No se basan en el respaldo del crdito, sino en el saldo positivo.
5.1. PayPal.
Como ejemplo, veamos la plataforma PayPal: A diferencia de casos anteriores, no se trata de una
entidad bancaria; en Estados Unidos tiene un status similar al de las agencias de envo de dinero.
PayPal Europe est registrada como entidad monetaria electrnica y se rige por la normativa de la
Financial Services Authority (FSA). Es un sistema de uso muy extendido que facilita muchos tipos
de micro pagos y micro compras. En este sistema, igualmente tanto el comprador como el vendedor
han de abrir una cuenta PayPal propia.
5.2. Pagos con Bitcoin.
Pagos mviles de forma fcil. - Bitcoin le permite pagar con un dispositivo mvil en dos
sencillos pasos: escanear y pagar. No hay necesidad de pasar la tarjeta, teclear un PIN o firmar
nada. Todo lo que necesita para recibir pagos con Bitcoin es mostrar el cdigo QR en su aplicacin
de monedero y dejar que su amigo escanee su mvil o juntar los dos telfonos (usando la tecnologa
NFC).
Seguridad y control sobre su dinero. - Las transacciones de Bitcoin estn aseguradas
mediante criptografa militar. Nadie puede cobrarle dinero o hacer un pago en su nombre. Tan
pronto como tome los pasos requeridos para proteger su monedero, Bitcoin podr darle control
sobre su dinero y un fuerte nivel de proteccin contra muchos tipos de fraude.
Funciona en todas partes y en cualquier momento. - Al igual que con el correo electrnico,
no es necesario pedir a su familia que utilice el mismo software o los mismos proveedores de
servicio. Deje que usen sus favoritos. No hay problema; todos ellos son compatibles, ya que
utilizan la misma tecnologa. La red Bitcoin nunca duerme ni tiene vacaciones.
IV. Objetivos
1. Objetivo general.
Desarrollar un sistema de informacin para la gestin y seguimiento del servicio de gas
domiciliario.
2. Objetivos especficos.
Recabar informacin acerca de todas las empresas que ofrecen el servicio de instalacin de
equipos medidores para gas domiciliario en Santa Cruz de la Sierra.
Identificar los requisitos funcionales del sistema a travs de los requerimientos del usuario.
Utilizar la metodologa del Proceso Unificado de Desarrollo de Software (PUDS),
utilizando el Lenguaje Unificado de Modelado (UML) de la mano con la herramienta de
diseo Enterprise Architect 13.0.
Disear e implementar la Base de Datos utilizando el Sistema de Gestin de Bases de Datos
Relacional, Multihilo y Multiusuario SQL Server 2016 Enterprice.
Disear una Interfaz grfica amigable para el usuario tanto en el computador y el mvil.
Implementar el Sistema de Informacin basado en las especificaciones del Diseo,
utilizando como lenguajes de programacin PHP con los framework Laravel, Bootstrap y
JavaScript para el desarrollo web de contenido dinmico.
Realizar las pruebas necesarias para justificar el buen funcionamiento del sistema y/o
encontrar posibles fallas y luego eliminarlas.
V. Alcance
1. Cuentas de usuario.
Brindar toda la informacin sobre las cuentas que maneja el sistema:
Cuenta de Administrador. se registrar los siguientes datos: CI, nombre completo, sexo,
email, usuario (nick), contrasea, adems se le asignar un cdigo de administrador nico.
Cuenta de usuario de lecturador. - se registrar los siguientes datos: CI, nombre completo,
sexo, email, usuario (nick), contrasea, adems se le asignar un cdigo de lecturador
nico.
Cuenta de cliente. - se registrar los siguientes datos: CI, nombre completo, sexo, email,
usuario (nick), contrasea, adems de asignarle un cdigo de usuario nico, se registrar la
razn social, el NIT y un nmero de telfono referencial.
Cuenta de empresa tercera. - esta cuenta permitir ver a las empresas terceras las
instalaciones que realizaron, se registrar los siguientes datos: CI, nombre completo, sexo,
email, usuario (nick), contrasea, adems se registrar la razn social, el NIT, telfono y
pagina web de la empresa (si la tiene), as como el departamento en el que esta se encuentra.
2. Solicitud e instalacin.
Brindar de la informacin requerida para las nuevas solicitudes e instalacin del servicio de gas
domiciliario. Aqu se registrar en una proforma los siguientes datos: la fecha de la solicitud de
instalacin, el nombre del solicitante, y el costo total que tendr la instalacin.
Dependiendo de la situacin del cliente, la instalacin podra pagarse al contado o bajo un
plan de cuentas.
3. Pagos de servicio.
Los pagos de servicio incluyen la emisin de un aviso de cobranza, as como tambin la respectiva
factura una vez realizado el pago del aviso de cobranza.
Ambos procesos, tanto la entrega del aviso de cobranza como el pago del servicio generan
una notificacin en el sistema.
4. Reportes y seguimiento.
Proporcionan informes generales sobre el estado de las instalaciones, el nivel de consumo del
servicio y seguimiento de posibles fallas en el servicio.
Estos informes van desde datos ordenados en grillas hasta grficos estadsticos informativos,
que sern visibles en funcin del rol de la cuenta de usuario activa en el sistema.
5. Atencin al cliente.
Proporciona de atencin para consultas frecuentes, dudas, preguntas, reclamos y dems respecto
al uso y condiciones del servicio de gas domiciliario.
1.2. Cliente.
Elemento Versin Caracterstica
Procesador Intel Core i5-4200H 4thG 3M Cache - 2.3GHz
Memoria RAM Kingston valueram DDR3 4GB
Disco duro Western digital 500GB
Placa madre AsRock z77 extreme4-m Compatible con Windows 8
Estabilizador Atomlux modelo r1000 1000va 2 equipos
Caja Delux Combo case
Monitor Samsung 21 pulgadas
Impresora HP multifuncional Web HP OfficeJet 4630
2. Software.
La diversidad de software necesario para el funcionamiento ptimo del sistema en desarrollo est
descrita a continuacin:
2.1. Servidor.
Software Versin
Sistema operativo Windows Server 2016 Datacenter
Servidor Web Internet Information Services 10
SGBD SQL Server 2016 Enterprice
Antivirus Windows Defender
PHP 7.0 x64
Manejador de dependencias PHP Composer
Laravel 5.5
2.2. Cliente.
Software Versin
Sistema operativo Windows 7 Professional o superior
Navegador Web Chrome, Opera, Firefox en su ltima versin
Antivirus Windows Defender
3. Usuarios.
Son todas las personas que se involucran directa e indirectamente con el sistema, estos son los
siguientes:
3.1. Administrador.
Los usuarios con este tipo de privilegio tienen acceso a todas las funciones del sistema, ellos
pueden registrar nuevos clientes, nuevos lecturadores y nuevas empresas terceras, la nica
excepcin es que no pueden crear nuevos usuarios de tipo administrador.
3.2. Cliente.
Son las personas que ya tienen como mnimo una instalacin del servicio, estos usuarios solo
pueden acceder a ciertos reportes, su historial, solicitud de nueva instalacin, pagos de servicio, y
solicitud de soporte tcnico.
3.3. Lecturador.
Son las personas encargadas de tomar las medidas de consumo y elaborar el aviso de cobranza de
cada uno de los medidores que le fueron asignado, este usuario solo tiene acceso a las rutas con
informacin detallada de los medidores que deber lecturar, y tambin tiene acceso al generador
de avisos de cobranza.
3.4. Empresa tercera.
Son las empresas terceras que brindan el servicio de instalacin de medidores a domicilio, cada
empresa podr registrar a un representante el cual solo puede acceder a los reportes de consumo
de los medidores que instal.
4. Datos.
La tabla siguiente especifica cada uno de los datos que se requerirn para las entidades ms
importantes del sistema.
Entidad Descripcin
Los datos a manejarse de cada empresa sern
los siguientes:
- NIT.
Empresa Tercera - Razn Social.
- Telfono.
- Pgina Web.
- Departamento.
Por cada usuario cliente se registran los
siguientes datos:
- CI.
- Nombre,
- Apellido Paterno.
- Apellido Materno.
Usuario Cliente - Sexo.
- Email.
- Usuario (Nick).
- Contrasea.
- Razn Social.
- NIT.
- Telfono.
Por cada usuario administrador se registran los
siguientes datos:
- CI.
- Nombre,
- Apellido Paterno.
Usuario Administrador
- Apellido Materno.
- Sexo.
- Email.
- Usuario (Nick).
- Contrasea.
Por cada usuario lecturador se registran los
siguientes datos:
- CI.
- Nombre,
- Apellido Paterno.
Usuario Lecturador
- Apellido Materno.
- Sexo.
- Email.
- Usuario (Nick).
- Contrasea.
5. Procesos.
Proceso Descripcin
La empresa debe rellenar correcta y
minuciosamente cada uno de los campos del
o Registro de Nueva Empresa tercera
formulario de registro de empresa tercera para
ser habilitado en el sistema.
El cliente deber primero contratar el servicio
de instalacin del medidor a una de las
empresas terceras para que as se le asigne una
o Registro de Nuevo cliente
instalacin, luego de haber concluido con esto,
el administrador del sistema proceder a crear
la cuenta usuario del cliente.
El interesado deber presentar sus datos
personales en las oficinas de la Agencia
o Registro de nuevo lecturador
Nacional de Hidrocarburos (ANH) para ser
evaluado y registrado como usuario lecturador.
Una vez concluida la instalacin del fsica del
medidor la empresa tercera enva los datos de
la ubicacin de la instalacin, tambin las
o Registro de nuevo medidor
coordenadas respectivas de dicha ubicacin,
luego un admirador procede al registro en el
sistema del medido instalado.
Este proceso inicia con la asignacin de rutas a
los lecturadores, los cuales reciben la
respectiva notificacin en su app cliente con
los detalles de dichas rutas.
Luego el lecturador procede a realizar las
lecturas, obteniendo la lectura actual de
o Lecturacin consumo en el medidor, ajusta ciertos datos y
confirma la lectura en el medidor, en ese
instante se actualiza el estado del medidor a
lecturado, tambin se actualiza el historial del
medidor, luego debe llegarle al cliente o
propietario del medidor una notificacin de
entrega de aviso de cobranza.
El cliente procede a pagar el aviso de cobranza
para un periodo determinado, una vez
o Pago o facturacin del servicio
realizado el pago, se actualizan los datos del
historial.
El cliente rellena el formulario de soporte el
cual luego ser atendido por un representante,
o Solicitud de soporte o tambin, el cliente puede solicitar un chat
personal con un administrador para ms
detalles.
6. Documentacin.
El sistema est dividido en cuatro partes que son las siguientes:
6.1 Administrador.
El administrador es quien realiza el registro de las empresas terceras, registra nuevos lecturadores,
como tambin registra nuevos clientes. Para que un administrador realice estas tareas se le
proporciona una cuenta con su respectivo nombre de usuario y contrasea.
Todos los registros se realizan por medio del portal web al cual se puede acceder desde
cualquier lugar.
6.2 Empresa tercera.
Las empresas terceras son las encargadas de proporcionar el servicio de instalacin de los
medidores hasta el domicilio de los clientes, tambin son los encargados de hacer el seguimiento
a los aspectos de seguridad de cada uno de los medidores que instalaron dichas empresas.
Las empresas terceras pueden ver el estado y reportes detallados de cada uno de los
medidores que instalaron respectivamente, estos datos son, la ubicacin geogrfica del medidor
instalado, el propietario al cual pertenece el medidor, su historial de consumo y estado tcnico del
medidor. Estos usuarios solo tienen permitido iniciar y cerrar sesin en sus cuentas, adems de
poder entrar en contacto con los propietarios de los medidores de su auditoria.
6.3 Lecturador.
Los lecturadores son los encargados de realizar la emisin de los avisos de cobranza, lecturar los
consumos por periodo, y ver la ubicacin exacta geogrficamente de cada uno de los medidores,
estos solo tienen permitido el inicio y cierre de sesin de sus cuentas.
6.4 Cliente.
Los clientes solo pueden ver los datos detallados de su medidor, los historiales de consumo,
reportes de pagos, y solicitar nuevas instalaciones o servicio tcnico. El usuario puede ver el
consumo actual total de su medidor, las facturas y los avisos de cobranza ya cancelados, adems,
si el medidor fue adquirido por medio de un plan de pagos, el usuario puede ver la cantidad de
cuotas que le faltan pagar, las cuotas ya pagadas.
CU6. Modificar
Categora CU17. Pagar Servicio
Cliente
CU13. Modificar
Proforma
CU11. Modificar
CU8. Ver ubicacion Medidor
Usuario
2. Anlisis.
2.1. Anlisis de arquitectura.
pkg Paquetes
Usuarios
+ Administrador
+ CU1. Registrar Usuario
+ CU2. Ver Usuario
+ CU3. Modificar Usuario
+ CU4. Eliminar Usuario
+ Administrador + Administrador
Servicio y Atencion al Cliente
+ Cliente + Cliente
+ Empresa tercera + Cliente
+ Empresa tercera
+ Lecturador + CU14. Ver Plan de Pago
+ Lecturador
+ Usuario + CU15. Solicitar Soporte
+ Usuario
+ CU10. Ver medidor + CU17. Pagar Servicio
+ CU18. Ver Reporte
+ CU19. Iniciar Sesion + CU11. Modificar Medidor
+ CU20. Cerrar Sesion + CU12. Aadir Proforma
+ CU13. Modificar Proforma
+ CU16. Emitir Aviso de Cobranza
+ CU21. Aadir Ruta
+ CU22. Ver Ruta
+ CU23. Eliminar Ruta
+ CU24. Modificar Ruta
+ CU5. Aadir Categora
+ CU6. Modificar Categora
+ CU7. Aadir Ubicacin
+ CU8. Ver ubicacion
+ CU9. Registrar Medidor
VerUsuario() show(id)
Usuario::FindOrFail(id)
url: PayPal
Cliente
Administrador
Logout() validate(requet)
destroy(id) destroy(id)
EliminarRuta()
3. Diseo.
3.1. Diseo de arquitectura.
3.1.1. Diseo fsico.
deployment Modelo de Despliegue
device device
Servidor de Base de Servidor de la
Datos. MS SQL Aplicacin. Windows
Server 2016. Server 2016
(Amazon RDS) Datacenter.
(Amazon EC2)
Ruta Coordenada
1 1..* 1
Acepta
solicita Genera
1 1 0..1 Pertenece
1
EmpresaTercera PlanPago
Lecturador Cliente
Administrador
- NIT: int - Cdigo: int
- CodLecturador: int - CodCliente: int
- CodAdm: int - RazonSocial: string - Fecha: date
- RaznSocial: string
- Telefono: int - Cuota: double
- NIT: int
- Web: string - Saldo: double
- Telefono: int
- Departamento: string - Total: double
1 0..1 0..1
1 1 - PlazoPago: int
0..1
Emite Recibe Solicita 1 Tiene
Tiene
Istala
1..*
1..*
1..* 1..* 1..* 1 1
Medidor
Notificacin Soporte Ubicacin
Factura AvisoCobranza
Genera
- MesAnio: date
- NroFactura: int
0..1 - Cdigo: int 1..* 1 Categoria
- NroAutorizacin: int
- Categora: enum
- Lugar: string - Codigo: int
- Medidor: int
- Fecha: date 1..* - - Descripcin: string
FechaVcto: date
- NIT: string - Precio: double
Pertenece - CdigoUbicacin: int
- Propietario: string
- Corte: boolean
- Direccin: string 1 1 1..*
- Deuda Meses: int
- Localidad: string
- Nombre: string
- CodUbicacin: string
DetalleFactura - Direccin: string DetalleAviso
- CodUsuario: int
- FLAnterior: date
- Periodo: date
- Descripcin: string - LAnterior: int - Descripcin: string
- Vencimiento: date Historial
- Importe: double - FLActual: date - Importe: double
- Categora: enum
- LActual: int
- Serie: int - MesAnio: date
- Factor: double
- Importe: double - Consumo: double
- ConsumoMPC: double
- IVA: double - Importe: double
- Observacion: string
- Total: double - EstadoPago: date
- Total Deuda: double
- Total Factura: double
GO
/****** Object: Table [dbo].[historiales] Script Date: 02/10/2017 5:43:52 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[historiales](
[id] [int] IDENTITY(1,1) NOT NULL,
[mesanio] [date] NOT NULL,
[consumo] [float] NOT NULL,
[importe] [float] NOT NULL,
[estadopago] [date] NULL,
[medidor_id] [int] NOT NULL,
[avisocobranza_id] [int] NOT NULL,
PRIMARY KEY CLUSTERED
(
[id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object: Table [dbo].[lecturadores] Script Date: 02/10/2017 5:43:52 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[lecturadores](
[id] [int] IDENTITY(1,1) NOT NULL,
[codlecturador] [nvarchar](12) NOT NULL,
[usuario_id] [int] NOT NULL,
PRIMARY KEY CLUSTERED
(
[id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object: Table [dbo].[medidores] Script Date: 02/10/2017 5:43:52 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[medidores](
[id] [int] IDENTITY(1,1) NOT NULL,
[codigo] [nvarchar](12) NOT NULL,
[finstalacion] [date] NOT NULL,
[fulectura] [date] NOT NULL,
[ulectura] [float] NOT NULL,
[leido] [bit] NOT NULL,
[ubicacion_id] [int] NOT NULL,
[empresatercera_id] [int] NOT NULL,
[cliente_id] [int] NOT NULL,
[categoria_id] [int] NOT NULL,
PRIMARY KEY CLUSTERED
(
[id] ASC
GO
ALTER TABLE [dbo].[detalles_facturas] CHECK CONSTRAINT
[detalles_facturas_factura_id_foreign]
GO
ALTER TABLE [dbo].[detalles_proformas] WITH CHECK ADD CONSTRAINT
[detalles_proformas_proforma_id_foreign] FOREIGN KEY([proforma_id])
REFERENCES [dbo].[proformas] ([id])
ON UPDATE CASCADE
ON DELETE CASCADE
GO
ALTER TABLE [dbo].[detalles_proformas] CHECK CONSTRAINT
[detalles_proformas_proforma_id_foreign]
GO
ALTER TABLE [dbo].[empresas_terceras] WITH CHECK ADD CONSTRAINT
[empresas_terceras_usuario_id_foreign] FOREIGN KEY([usuario_id])
REFERENCES [dbo].[usuarios] ([id])
ON UPDATE CASCADE
ON DELETE CASCADE
GO
ALTER TABLE [dbo].[empresas_terceras] CHECK CONSTRAINT
[empresas_terceras_usuario_id_foreign]
GO
ALTER TABLE [dbo].[facturas] WITH CHECK ADD CONSTRAINT
[facturas_avisocobranza_id_foreign] FOREIGN KEY([avisocobranza_id])
REFERENCES [dbo].[avisos_cobranzas] ([id])
GO
ALTER TABLE [dbo].[facturas] CHECK CONSTRAINT [facturas_avisocobranza_id_foreign]
GO
ALTER TABLE [dbo].[historiales] WITH CHECK ADD CONSTRAINT
[historiales_avisocobranza_id_foreign] FOREIGN KEY([avisocobranza_id])
REFERENCES [dbo].[avisos_cobranzas] ([id])
GO
ALTER TABLE [dbo].[historiales] CHECK CONSTRAINT [historiales_avisocobranza_id_foreign]
GO
ALTER TABLE [dbo].[historiales] WITH CHECK ADD CONSTRAINT
[historiales_medidor_id_foreign] FOREIGN KEY([medidor_id])
REFERENCES [dbo].[medidores] ([id])
GO
ALTER TABLE [dbo].[historiales] CHECK CONSTRAINT [historiales_medidor_id_foreign]
GO
ALTER TABLE [dbo].[lecturadores] WITH CHECK ADD CONSTRAINT
[lecturadores_usuario_id_foreign] FOREIGN KEY([usuario_id])
REFERENCES [dbo].[usuarios] ([id])
ON UPDATE CASCADE
ON DELETE CASCADE
GO
ALTER TABLE [dbo].[lecturadores] CHECK CONSTRAINT [lecturadores_usuario_id_foreign]
GO
ALTER TABLE [dbo].[medidores] WITH CHECK ADD CONSTRAINT
[medidores_categoria_id_foreign] FOREIGN KEY([categoria_id])
REFERENCES [dbo].[categorias] ([id])
ON UPDATE CASCADE
ON DELETE CASCADE
GO
ALTER TABLE [dbo].[medidores] CHECK CONSTRAINT [medidores_categoria_id_foreign]
GO
4. Implementacin.
4.1. Sistema operativo.
Sin el software, una computadora no es ms que una masa metlica sin utilidad. Con el software,
una computadora puede almacenar, procesar y recuperar informacin, encontrar errores de
ortografa en manuscritos, tener aventuras e intervenir en muchas otras valiosas actividades para
ganar el sustento. El software para computadoras puede clasificarse en general en dos clases: los
programas de sistema, que controlan la operacin de la computadora en s y los programas de
aplicacin, los cuales resuelven problemas para sus usuarios. El programa fundamental de todos
los programas de sistema es el sistema operativo (SO), que controla todos los recursos de la
computadora y proporciona la base sobre la cual pueden escribirse los programas de aplicacin.
Un Sistema Operativo tiene las siguientes caractersticas:
Conveniencia. Un Sistema Operativo hace ms conveniente el uso de una computadora.
Eficiencia. Un Sistema Operativo permite que los recursos de la computadora se usen de
la manera ms eficiente posible.
Habilidad para evolucionar. Un Sistema Operativo deber construirse de manera que
permita el desarrollo, prueba o introduccin efectiva de nuevas funciones del sistema sin
interferir con el servicio.
Encargado de administrar el hardware. El Sistema Operativo se encarga de manejar de una
mejor manera los recursos de la computadora en cuanto a hardware se refiere, esto es,
asignar a cada proceso una parte del procesador para poder compartir los recursos.
plataforma. De esa manera Java logra ser un lenguaje que no depende de una arquitectura
computacional definida.
4.3. Gestor de base de datos.
Microsoft SQL Server es un sistema de manejo de bases de datos del modelo relacional,
desarrollado por la empresa Microsoft.
El lenguaje de desarrollo utilizado (por lnea de comandos o mediante la interfaz grfica de
Management Studio) es Transact-SQL (TSQL), una implementacin del estndar ANSI del
lenguaje SQL, utilizado para manipular y recuperar datos (DML), crear tablas y definir relaciones
entre ellas (DDL).
Caractersticas:
Soporte de transacciones.
Soporta procedimientos almacenados.
Incluye tambin un entorno grfico de administracin, que permite el uso de comandos
DDL y DML grficamente.
Permite trabajar en modo cliente-servidor, donde la informacin y datos se alojan en el
servidor y los terminales o clientes de la red slo acceden a la informacin.
Adems, permite administrar informacin de otros servidores de datos.
Este sistema incluye una versin reducida, llamada MSDE con el mismo motor de base de
datos, pero orientado a proyectos ms pequeos, que en sus versiones 2005 y 2008 pasa a
ser el SQL Express Edition, que se distribuye en forma gratuita.
Es comn desarrollar proyectos completos empleando Microsoft SQL Server y Microsoft
Access a travs de los llamados ADP (Access Data Project). De esta forma se completa la
base de datos (Microsoft SQL Server), con el entorno de desarrollo (VBA Access), a travs
de la implementacin de aplicaciones de dos capas mediante el uso de formularios
Windows.
En el manejo de SQL mediante lneas de comando se utiliza el SQLCMD, osql, o
PowerShell.
Para el desarrollo de aplicaciones ms complejas (tres o ms capas), Microsoft SQL Server
incluye interfaces de acceso para varias plataformas de desarrollo, entre ellas .NET, pero
el servidor slo est disponible para Sistemas Operativos.
El tipo NUMERIC fue mejorado para ser usado como identificador de columna a partir de
la versin 2008 R2.
Para esta aplicacin se recomienda utilizar la versin 2016 en su edicin Standar del motor de base
de datos MS SQL Server.
4.4. Framework.
Laravel es un framework de cdigo abierto para desarrollar aplicaciones y servicios web con PHP
5 y PHP 7. Su filosofa es desarrollar cdigo PHP de forma elegante y simple, evitando el "cdigo
espagueti". Fue creado en 2011 y tiene una gran influencia de frameworks como Ruby on Rails,
Sinatra y ASP.NET MVC.
Laravel tiene como objetivo ser un framework que permita el uso de una sintaxis elegante y
expresiva para crear cdigo de forma sencilla y permitiendo multitud de funcionalidades. Intenta
aprovechar lo mejor de otros frameworks y aprovechar las caractersticas de las ltimas versiones
de PHP.2
Gran parte de Laravel est formado por dependencias, especialmente de Symfony, esto
implica que el desarrollo de Laravel dependa tambin del desarrollo de sus dependencias.
Caractersticas:
Sistema de ruteo, tambin RESTful.
Blade, Motor de plantillas.
Peticiones Fluent.
Eloquent ORM.
Basado en Composer.
Soporte para el cach.
Soporte para MVC10
Usa componentes de Symfony.
Adopta las especificaciones PSR-212 y PSR-4.
Patrn MVC:
Laravel propone en el desarrollo usar 'Routes with Closures', en lugar de un MVC tradicional con
el objetivo de hacer el cdigo ms claro. Aun as, permite el uso de MVC tradicional.
1. <?php
2. Route::get('usuario/listar', function() {
3. //punto de entrada de la peticin HTTP
4. ...
5. })
Modelo:
Laravel incluye un sistema de mapeo de datos relacional llamado Eloquent ORM que facilita la
creacin de modelos. Este ORM se funda en patrn active record y su funcionamiento es muy
sencillo. Es opcional el uso de Eloquent, pues tambin dispone de otros recursos que nos facilitan
interactuar con los datos, o especficamente la creacin de modelos.
La forma de crear Modelos en Laravel usando Eloquent ORM, es tan simple como:
1. use Illuminate\Database\Eloquent\Model;
2.
3. class Libro extends Model {
4.
5. //defiendo el nombre de la tabla con la info de los libros
6. protected $table = 'tb_libros';
7. }
Incluso el cdigo del modelo puede ser ms simple an, en el caso que el nombre de la tabla
coincida con el nombre de la clase. Pues Laravel al igual que Ruby on Rails, usa el paradigma de
programacin donde se favorece "la convencin sobre la configuracin. Y si ahora necesitamos
disponer un listado, en la ruta: http://mi-aplicacion.com/libro/listar Entonces, slo bastara crear la
Ruta e interactuar con el modelo 'Libro' anteriormente creado, del modo siguiente:
1. Route::get('libro/listar', function () {
2. $libros = Libro::all();
3. return View::make('mi_vista', $libros); //Muestra los datos
4. });
Vista:
Laravel incluye de paquete un sistema de procesamiento de plantillas llamado Blade. Este sistema
de plantillas favorece un cdigo mucho ms limpio en las Vistas, adems de incluir un sistema de
Cach que lo hace mucho ms rpido. El sistema Blade de Laravel, permite una sintaxis mucho
ms reducida en su escritura.4 Por ejemplo, en vez pintar la vista usando el cdigo PHP:
En Blade se escribira:
1. {{$mi_nombre}}
Lo cual no es una gran ventaja sobre todo cuando siempre es posible usar una expresin resumida
en PHP. No obstante, lo que, si es una gran ventaja, es el modo en que Blade maneja las plantillas.
Plantillas:
Las plantillas en Blade son archivos de texto plano que contiene todo el HTML de la pgina con
etiquetas que representan elementos o zonas a incluir en la plantilla, o vistas parciales como se
conocen en otros frameworks PHP. Sin embargo, en Blade estos elementos incrustados se
organizan en un slo archivo. Esta es una idea muy interesante de Laravel que mejora la
organizacin de las vistas y su rendimiento. Sobre todo, cuando las vistas pueden llegar a ser muy
complejas incluso con elementos anidados. En el render de una Vista completa en Laravel se usan
dos archivos: la plantilla definiendo el HTML global y las zonas a incluir. Un slo archivo, la
Vista, con los elementos (partial views).
Un ejemplo tpico para una plantilla HTML5 de Blade:
1. <!DOCTYPE html>
2. <html lang="es">
3. <head>
4. <meta charset="UTF-8">
5. <title>@yield('titulo')</title>
6. </head>
7. <body>
8. @yield('navegacion')
9. </body>
10. </html>
En la plantilla presentada, el cdigo @yield() identifica al mtodo donde como parmetro se indica
el nombre de la zona desplegar. Por otro lado, el cdigo de la vista, donde se define la plantilla a
usar y la informacin de las distintas zonas a desplegar:
Controlador:
Los controladores contienen la lgica de la aplicacin y permiten organizar el cdigo en clases sin
tener que escribirlo todo en las rutas. Todos los controladores deben extenderse de la clase
BaseController adems de eso.
Un ejemplo de un controlador en Laravel:
Estos pueden ser llamados en las rutas de diferentes maneras, pero la ms comn usndo rutas es:
1. Route::get('user/{id}', 'UserController@mostrarPerfil');
VIII. Conclusin
El conjunto de herramientas tanto hardware como software elegidos para la implementacin y
puesta en marcha de este proyecto brindaron la funcionalidad requerida para el mismo.
Si bien, no todo al comienzo fue sencillo, se lograron resolver las siguientes dificultades:
Configuracin del servidor VPS de Amazon Cloud Services, tanto el servidor de la
aplicacin como tambin el servidor de la base de datos.
Incluir la forma de pago del servicio por medio de PayPal.
Generar los cdigos QR dinmicos.
La inclusin del chat bot para el soporte al cliente.
La inclusin del servicio de google maps en la aplicacin.
Al final se puede concluir que este proyecto ha sido de vital importancia para mi desarrollo
personal y profesional, dado el conjunto de tecnologas y herramientas que utilic ya que varias
las aprend gracias al desarrollo de este proyecto.
IX. Bibliografa
Arlow, J y Neustadt, I. (2005). Programacin UML 2. Madrid: Anaya Multimedia.
Rumbaugh, J. Jacobson, I. y Booch, G. (2007). El lenguaje unificado de modelado, manual de
referencia Segunda Edicin. Madrid: Pearson Educacin.
Rumbaugh, J. Jacobson, I. y Booch, G. (2000). El proceso unificado de desarrollo de software.
Madrid: Pearson Educacin.
Rumbaugh, J. Jacobson, I. y Booch, G. (2007). El lenguaje unificado de modelado, manual de
referencia Segunda Edicin. Madrid: Pearson Educacin.
Miles, R. y Hamilton, K. (2006). Learning UML 2.0. Sebastopol, California: OREILLY
Stauffer, Matt. (2017). Laravel: Up and Running: A Framework for Building Modern PHP Apps.
Sebastopol, California: OREILLY
Documentacin del framework Laravel (2017). Laravel Docs. 5.5: The PHP Framework For Web
Artisans. Recuperado el 1 de octubre del 2017, de https://laravel.com/docs/5.5