Download Trabajo Especial

Document related concepts
no text concepts found
Transcript
Trabajo Especial
Licenciatura en Ciencias de la Computación
Sistema de Análisis y Búsqueda de
Sábanas Telefónicas
Autores: Alurralde Ramiro - Bigatti Julián
Directora: Laura Alonso Alemany
Córdoba, 6 de Diciembre de 2013
Clasificación:

D.1.5 Object-oriented Programming.

D.1.7 Visual Programming.

D.2.1 Requirements/Specifications.

D.2.6 Programming Environments.

D.2.12 Interoperability.
Palabras Claves: “sábanas telefónicas”, “astrea”, “ontología”, “búsqueda sabanas
telefónicas”
Resumen
En la actualidad el constante uso de la telefonía celular le da a la policía una
herramienta más a la hora de afrontar una investigación criminal. Suponiendo la
existencia de una comunicación durante la ejecución de un ilícito, el investigador
logra obtener, a través de las empresas de telefonía, una determinada cantidad de
información que sirve como prueba para demostrar la culpabilidad del criminal.
El trabajo de análisis y procesamiento de la información entregada por las
empresas se realiza de forma manual consumiendo grandes cantidades de
horas/hombre y arrastrando errores humanos propios de agotamiento intelectual
que el análisis produce.
Astrea es un software para la unificación, búsqueda y análisis de datos en
sábanas telefónicas de manera automatizada y sistemática. Proveyendo al
investigador de una herramienta que maximiza el rendimiento y reduce los errores
de búsqueda y análisis.
El software presenta una interfaz de usuario fácil e intuitiva, permitiendo que
usuarios no expertos en informática y/o en el uso de sábanas telefónicas, se
adapten a él pudiendo obtener los mismos resultados que un usuario experto.
1
2
Contenidos
3
4
1. Introducción y motivación
En este trabajo presentamos un sistema para facilitar la exploración de datos
sobre comunicaciones telefónicas en investigaciones policiales.
Actualmente, estos datos se trabajan de forma muy manual y poco sistemática,
mediante hojas de cálculo o incluso hojas de papel. Cada empresa proporciona los
datos en un formato propio e incompatible con el resto de las empresas, con lo
cual la integración de datos resulta prácticamente inviable. Por estas razones, el
investigador debe prestar mucha atención a detalles de forma, lo cual le resta
capacidad de concentración y tiempo para focalizarse en los conceptos a
investigar.
Hemos desarrollado Astrea, un software para facilitar la exploración de los datos
de comunicaciones telefónicas. En resumen, el sistema permite la carga de
numerosas sábanas de diferentes empresas y realizar búsquedas complejas,
personalizadas e intuitivas sobre las mismas. Al mismo tiempo ofrece variadas
opciones para los resultados obtenidos en función de facilitar aún más la
investigación.
En particular, el sistema puede:

Integrar los datos proporcionados por las diferentes empresas en un
formato
común
que
representa
los
conceptos
cruciales
de
las
comunicaciones telefónicas.

Ofrece una interfaz gráfica para la exploración de los datos, con opciones
de búsqueda y filtros organizados de forma intuitiva y bien documentados.

Facilita la integración de los datos con otras aplicaciones, mediante una
representación de los datos basada en una ontología según los estándares
de la web semántica.
Para aproximarnos a la solución concertamos varias reuniones con el cliente de
las que pudimos obtener la información necesaria para la elaboración de un
prototipo de la interfaz gráfica y el funcionamiento principal.
El prototipo tenía como objetivo verificar que Astrea era intuitivo y amigable, una
de las principales características en las que se puso énfasis para el desarrollo del
mismo.
5
A partir del análisis de sábanas telefónicas entregadas por el cliente se desarrolló
la ontología subyacente que modela una comunicación telefónica en la que
intervienen dos teléfonos celulares a través de una antena. También se diseñó la
base de datos que utiliza el sistema. A su vez el cliente expresó la necesidad de
exportar los resultados de la búsqueda en un formato estándar.
Con esta aplicación esperamos poder acercar a la gran mayoría de investigadores
los métodos sistemáticos de exploración de los datos de comunicaciones
telefónicas.
Estos
métodos
han
ofrecido
muy
buenos
resultados
en
investigaciones policiales recientes, lo cual nos hace pensar que su masificación
puede tener un impacto muy positivo en los resultados de las investigaciones. Al
mismo tiempo, esta aplicación reduce significativamente el tiempo necesario para
la exploración de los datos, lo cual también facilita su masificación, ya que en
muchas ocasiones el tiempo / hombre es un recurso escaso en las investigaciones
policiales.
Otro posible campo de aplicación es la minería de datos de comunicaciones
telefónicas privadas, por ejemplo, para optimizar los patrones de uso y gasto en
comunicaciones empresariales.
Este tipo de aproximación ha resultado muy útil en otras áreas de trabajo en las
que también se manejan grandes cantidades de datos con orígenes diversos,
como por ejemplo los estudios de mercado o la detección de fraude en tarjetas de
crédito.
La estructura de esta tesis es como sigue. En el próximo capítulo presentamos las
funcionalidades básicas y la arquitectura de Astrea. Desarrollamos la descripción
de las partes más prominentes del sistema, como son la interfaz de usuario y la
ontología subyacente. Finalmente, terminamos presentando algunas conclusiones
y líneas de trabajo futuro.
6
7
2. Trabajo relevante
2.1.Software similar existente
Existe una gran variedad de sistemas informáticos que se desarrollan de
manera exitosa en el mismo campo de aplicación que Astrea. Son
sistemas utilizados por las instituciones dedicadas a investigaciones
complejas, dichas instituciones procuran que no sea de público
conocimiento el funcionamiento, por este mismo motivo es muy dificultoso
encontrar información al respecto.
2.1.1. Sitel[3]: Sistema Integrado de Interceptación Telefónica
El sistema, en la actualidad, aporta la siguiente información relativa a
la intervención telefónica:
1 - Fecha, hora y duración de las llamadas.
2 - identificador de IMEI y nº de móvil afectado por la intervención.
3 - Distribución de llamadas por día.
4 - Tipo de información contenida (SMS, carpeta audio, etc.).
En referencia al contenido de la intervención de la comunicación, y
ámbito de información aportada por el sistema, se verifica los
siguientes puntos:
1 - Repetidor activado y mapa de situación del mismo.
2 - Número de teléfono que efectúa y emite la llamada o contenido de
la información.
3 - Contenido de las carpetas de audio (llamadas) y de los mensajes
de texto (SMS).
2.1.1.1.
Sistema de trabajo
Solicitada la intervención de la comunicación y autorizada esta por
la Autoridad Judicial el empleo del Programa SITEL[3], la
operadora afectada inicia el envío de información al Servidor
Central donde se almacena a disposición de la Unidad encargada
y solicitante de la investigación de los hechos, responsable de la
intervención de la comunicación.
8
El acceso por parte del personal de esta Unidad se realiza
mediante código identificador de usuario y clave personal.
Realizada la supervisión del contenido, se actúa igual que en el
modo tradicional, confeccionando las diligencias de informe
correspondientes para la Autoridad Judicial. La evidencia legal del
contenido de la intervención es aportada por el Servidor Central,
responsable del volcado de todos los datos a formato DVD para
entrega a la Autoridad Judicial pertinente, constituyéndose como
la única versión original.
2.1.2. Excalibur[1]
Este sistema trabaja con un concepto llamado tecnología Adaptive
Pattern Recognition Processing (APRP), y con un motor de búsqueda
del tipo Fuzzy Searching (búsqueda difusa). Está pensado de la misma
forma en que el sistema nervioso humano utiliza la red neuronal para
procesar información. En otros términos: los datos están compuestos
por determinados bits, el sistema crea una memoria basada en esos
patrones y, cuando hace una búsqueda, toma en consideración ese
conjunto de bits que forman la palabra, frase o lo que sea que se
necesita encontrar.
2.2.Diseño de interfaces
“The design of effective human-computer interfaces has been, and continues to
be, a significant challenge that demands an appreciation of the entire human
perceptual-motor system.”
(Sears & Jacko 2007)
Hemos puesto especial énfasis en el diseño de las diferentes interfaces de
Astrea, buscando la mayor simpleza posible pero sin perder nada de
funcionalidad. La capacitación informática del usuario es baja, casi nula. Es
por esto que tratamos de mantener un diseño prototípico, es decir, que
todo lo que el usuario ve en este software, lo vea también cuando usa sus
programas preferidos, o cuando navega por sus páginas cotidianas de
internet.
9
Las tareas principales se encuentran en lugares centrales de la aplicación,
como un botón para la carga de archivos y una lista de los archivos a
cargar, de esta forma siempre esta visible la información para el usuario,
así mismo se decidió deshabilitar botones cuando no pueda realizarse la
acción para guiar mejor al usuario. Para la búsqueda se utilizaron las
clásicas líneas de edición y combo box para completar la información a
buscar, presentando las opciones básicas y más usadas, y ocultando las
avanzadas. De esta forma la interfaz se mantiene limpia y es más fácil para
el usuario visualizar las herramientas y opciones. Además se mantienen
las barras de menús que son estándar en cualquier aplicación.
Se utilizaron diseños clásicos para los botones, tanto en su tamaño como
en su forma. Los mismos se ubicaron en cercanía a los objetos sobre los
que actúa la semántica. Dicha semántica viene determinada no solamente
por lo inherente al proceso de exploración de sábanas telefónicas (cargar
datos, búsqueda) sino también por los procesos más frecuentes en el
manejo de programas informáticos actuales (p.ej., ayuda, refinar búsqueda,
etc.).
Lo que motiva la secuencialidad de la interfaz en todos los pasos es la
misma secuencialidad relevada del product owner para llevar a cabo el
análisis de sábanas telefónicas. Esto permite que el usuario mantenga su
modalidad de trabajo habitual, en la cual ya está familiarizado con los
pasos a seguir.
2.3.Diseño de la ontología
Las ontologías proporcionan un vocabulario común de un área y definen,
con diferentes niveles de formalidad, el significado de los términos y las
relaciones entre ellos. Durante la última década, el aumento de la atención
se ha centrado en ontologías. Las ontologías son ampliamente utilizados
en la ingeniería del conocimiento, la inteligencia artificial y la informática, y
en aplicaciones relacionadas con áreas tales como la gestión del
conocimiento, el procesamiento del lenguaje natural, el comercio
electrónico, la integración inteligente de información, bio-informática, la
10
educación, y en los nuevos campos emergentes como la web semántica.
Ingeniería Ontológica es un nuevo campo de estudio sobre el proceso de
desarrollo de la ontología, los métodos y metodologías para la construcción
de ontologías, y las suites de herramientas y lenguajes que los apoyan.
OWL[6] es un lenguaje para hacer afirmaciones ontológicas, desarrollado
como una continuación de RDF y RDFS, así como anteriores proyectos de
lenguaje de ontologías como OIL, DAML y DAML + OIL. OWL[6] está
destinado a ser utilizado en la World Wide Web, y todos sus elementos
(clases, propiedades e individuos) se definen como recursos RDF, e
identificado por URI.
Protégé[7] es un editor de ontologías de código abierto y un sistema de
adquisición de conocimientos. Al igual que Eclipse[2], Protégé[7] es un
framework para el cual otros proyectos sugieren plugins. La aplicación
está escrita en Java y usa fuertemente Swing para crear su compleja
interfaz.
Protégé[7] fue desarrollado en la Universidad de Stanford, en colaboración
con la Universidad de Manchester y está disponible bajo la licencia pública
de Mozilla 1.1.
11
12
3. Arquitectura del sistema
3.1.Interacción con el product owner
El primer paso para poder desarrollar Astrea fue conocer a fondo el
problema a resolver y la situación actual del cliente respecto a este
problema.
Aplicamos un marco de trabajo para el desarrollo de software basado en
desarrollo ágil. En este marco de trabajo, la relación con el experto del
dominio, que también juega el rol de usuario final, fue muy importante. Este
sería nuestro product owner. El product owner representa la voz del cliente,
describe historias de usuario y las prioriza.
Se realizaron varias reuniones con el product owner para elicitar estas
historias de usuario, basándose principalmente en experiencias en su
trabajo de investigación. Estas experiencias se trasladaron a user stories,
se identificaron los elementos básicos del análisis de sábanas telefónicas,
tanto conceptos como flujos de trabajo.
En una primera instancia el problema planteado por el cliente se reducía a
la falta de automatización de búsqueda en sábanas telefónicas y la escasa
preparación de los investigadores para usar las pocas herramientas
existentes. Este fue el eje central del proyecto, ofrecer un software que
automatice la búsqueda y que sea lo más accesible posible para cualquier
usuario.
Uno de los focos de interés fue la carga de datos, la homogeneización de
los datos provenientes de las diferentes empresas telefónicas, dándole
cierta libertad al usuario para decidir casos de ambigüedad existente en los
conceptos. También se hizo énfasis en las búsquedas más comunes o
información que los investigadores infieren y que no está explicitada en las
sábanas telefónicas. Esto se hizo mediante el análisis de las sábanas
telefónicas, no solamente con la interacción con el product owner.
Los conceptos que se elicitaron fueron principalmente:

numeroOrigen: es el número que comienza la comunicación.
13

numeroDestino: es el número que recibe la llamada.

fecha: fecha en que se realiza la comunicación.

hora: hora en que se realiza la comunicación.

duracion: duración de la llamada.

numeroImei: número de IMEI del número de origen.

numeroSim: número de SIM del número de origen.

celda: identificador de la celda de la antena usada en la
comunicación.

direccionOrigen: dirección del titular de la línea que comenzó la
comunciacion.

direccionDestino: dirección del titular de la línea que recibió la
comunicación.

localidadOrigen: localidad

localidadDestino: localidad

tipoComunicacion: indica que tipo de comunicación se realizo,
puede ser mensaje de texto o llamada telefónica.

estado:

antenaDireccion: dirección donde se encuentra la antena usada por
el número de origen.

antenaProvincia: provincia donde se encuentra la antena usada por
el número de origen.

antenaLocalidad: localidad donde se encuentra la antena usada por
el número de origen.

titularOrigen: nombre del titular del teléfono de origen.

titularDestino: nombre del titular del teléfono de destino.

empresaOrigen: nombre de la empresa titular del teléfono de origen.

empresaDestino: nombre de la empresa titular del teléfono de
destino.

provinciaOrigen: provincia del titular del teléfono de origen.

provinciaDestino: provincia del titular del teléfono de destino.

contenidoMensaje: contenido de los mensajes de texto.
14
Los principales flujos de trabajo elicitados fueron:

Búsquedas en sábanas telefónicas (una o más de una, integradas en
una misma base de conocimiento) involucrando los conceptos
mencionados arriba.

Refinamiento de búsquedas.

Integración de información adicional en la interfaz, como localización
de códigos de área, asociación entre números y nombres del titular,
interpretación del número de identificación del teléfono (IMEI),
proporcionando información como el fabricante del teléfono.

Disponibilidad de búsquedas tipo pre-armadas.
3.2.Objetivos de diseño
El principal objetivo de Astrea es la interacción con usuario, es un requisito
que el sistema sea versátil, intuitivo, con secciones bien definidas y que se
adapte a la forma de trabajo del investigador. Para ello se pensó en una
esquema guiado, con tres secciones bien diferenciadas en la que el
usuario puede concentrarse en una sola tarea a la vez. La carga de
archivos que se van a usar, la búsqueda, y por último el procesamiento de
los resultados.
Otro aspecto importante a la hora de diseñar el sistema fue la
modularización, de esta forma el mantenimiento del software a futuro es
mucho más simple y sencillo. Teniendo en cuenta este aspecto se decidió
separar el sistema en módulos encargados de realizar diferentes
funciones, el conjunto de sábanas que manejan las diferentes sábanas
dentro del sistema, los parsers que procesan las sábanas telefónicas para
llenar la base de datos, el manejador de la base de datos que se encarga
de llenarla y armar las diferentes consultas a esta.
Una de las principales características de Astrea es la integración de
sábanas telefónicas de diferentes compañías telefónicas, para hacerlo
ofrecemos unas cuantas opciones que facilitan el trabajo. Decidimos crear
un sistema de conceptos en una comunicación que se mapean con los
15
diferentes datos que trae cada sábana telefónica, para ello usamos un
archivo de texto para especificar ese mapeo, de esta forma se pueden
agregar o quitar conceptos o nombres de columnas de las sabanas. En
casos especiales donde el mapeo genere conflictos, el sistema consulta al
usuario como resolver el problema (por ejemplo columnas que tengan
nombres iguales pero que mapeen con diferentes conceptos).Así mismo
Astrea no almacena datos de la sábanas telefónicas de forma permanente,
asegurando la confidencialidad de la investigación.
3.3.Arquitectura general
Astrea es un software libre implementado en Python con Qt, independiente
de plataforma. Permite procesar datos de comunicaciones telefónicas en
formato Excel, csv o texto plano, las llamadas sábanas telefónicas.
Podemos ver algunos ejemplos de sábanas telefónicas en el Anexo A.
Estos datos se integran a una representación abstracta común para todas
las empresas telefónicas, que se describe en la siguiente sección.
Después, los usuarios pueden hacer búsquedas sobre los datos
representados de esta forma, y los resultados de su búsqueda se ofrecen
en diferentes formatos.
La arquitectura general del sistema puede verse en la Figura 1. Podemos
observar que el usuario interactúa en el ingreso de datos, especificando los
archivos con los datos y su origen, y también en la búsqueda.
La interfaz con el usuario se describe en detalle en el siguiente capítulo, y
la ontología en el capítulo 5. En lo que resta de este capítulo pasamos a
describir el resto de módulos.
Durante la etapa de carga de archivos el usuario especifica qué sábanas
telefónicas desea usar, el sistema acepta cinco sabanas diferente según la
empresa que la provee, estas pueden ser Movistar, Personal, Claro y
Nextel, además acepta un formato propio que es el que permite exportar
Astrea. Los formatos aceptados son: texto plano (.txt), texto plano
separado por comas (.csv) y planillas de Microsoft Excel (.xls).
16
En esta etapa el usuario debe elegir a qué empresa pertenece cada
archivo, en caso de que el archivo no pertenezca a dicha empresa el
sistema alertará al usuario y deberá corregir su elección. Además en caso
de presentarse una ambigüedad entre las sabanas y los conceptos del
sistema o algún dato no corresponda con un concepto, el usuario deberá
solucionar esa ambigüedad y validar la acción.
Luego de que el archivo se valida por el usuario el sistema parsea cada
archivo e inserta los datos en la base de datos.
La sección de consulta y refinamiento permite al usuario ingresar al
sistema los datos que desea buscar, mediante una serie de opciones
puede decidir qué filtros aplicar en la búsqueda y cuál es la información
que desea observar en pantalla, de esta forma el sistema realiza una
consulta a la base de datos y le presenta los resultados al usuario
mediante una tabla en pantalla. Para esto es esencial la interfaz gráfica ya
que es el medio por el cual el usuario interactúa con el sistema.
Además de presentar los resultados en pantalla, Astrea le ofrece al usuario
otro tipo de interacción con los resultados dependiendo el tipo de dato.
17
Figura 1
18
3.4.Análisis de sábanas telefónicas
El principal desafío de este trabajo fue organizar la información de proveen
las empresas telefónicas de una forma más homogénea, de esta manera el
usuario no debe preocuparse por la empresa a la que pertenece la sabana
que está investigando. Para ello se analizaron las sabanas de las cuatro
empresas de telefonía que operan actualmente en el territorio nacional
para buscar la semántica de cada dato que operan, de esta forma
ofrecemos un esquema más abstracto de la información.
Este trabajo se realiza en dos etapas, una etapa de mapeo mediante un
archivo de configuración, que mapea cada columna de la sábana telefónica
con un concepto del sistema. De esta forma si las empresas llaman de
forma diferente a un mismo objeto de estudio, tenemos un nombre común
dentro del sistema que lo identifica, por ejemplo si el número de origen en
la llamada se identifica como “linea” en la sabana de Movistar y como
“número” en la sabana de Claro, el sistema va a tomar a ambas como “Nro.
de Origen”. Esto sirve para que si en un futuro las empresas deciden
cambiar de nombre a un tipo de dato con solo actualizar el archivo
“conceptos.txt” el sistema puede adaptarse a este cambio. Este diseño sin
embargo tiene un conflicto, puede pasar que las empresas usen la misma
identificación para diferentes conceptos, en este caso queda en manos del
usuario decidir cuál es el concepto que corresponde con esa identificación.
El procedimiento utilizado recibe el nombre de Record Linkage[10] Este
método básicamente permite unificar bajo una misma etiqueta, la
información que se encuentra identificada de diferentes maneras.
La segunda etapa es la de parseo donde el sistema determina la
semántica de cada dato, el problema surge porque no necesariamente el
concepto con el que mapea el dato es 100% ese concepto sino que
depende de la forma en que la empresa representa la comunicación en su
sábana. A modo de ejemplo, mientras Claro representa en su sábana un
número de origen y un número de destino en la comunicación en dos
19
columnas diferentes, la sabana de personal representa el número
investigado en una columna y los números con los que se comunicó en
otra columna, usando una tercer columna para definir la dirección en la que
se realizó la comunicación. A partir de este tipo de problemas se
desarrollaron cuatro módulos que se encargan de parsear y solucionar
estos inconvenientes, de esta forma la salida resulta en datos
homogéneos. Cada módulo corresponde a una empresa diferente
haciendo más fácil una actualización y mantenimiento del sistema en caso
de que una empresa decida cambiar el formato de sus sábanas.
Con esto se provee bastante versatilidad al sistema, pudiendo adaptarse a
cambios de nombre columnas o aumento de información (conceptos) y
permitiendo que ante cambios más profundos en la semántica sea más
fácil actualizar el sistema.
3.5.Base de datos
Para diseñar la base de datos se decidió usar los conceptos utilizados en
la ontología descrita en el capítulo 5. Se mapeo cada dato de las sábanas
telefónicas a esos conceptos. En la base de datos cada columna es un
concepto, de esta forma cada línea contenida en la tabla representa una
comunicación con todos sus atributos. Si bien existe una pérdida de
expresión de la información presente en la ontología, por ejemplo,
relaciones recíprocas, se tomó la decisión de usar una base de datos
relacional porque es más eficiente, más estándar y por lo tanto más fácil de
mantener por terceros. Además, la información que dejó de expresarse no
resultaba imprescindible para los usos tipo del sistema que se definieron
con el product owner.
La base de datos se crea cada vez que Astrea se ejecuta, usando los
conceptos adquiridos del archivo de conceptos que utiliza el sistema, de
esta forma si se agregan o eliminan conceptos la base de datos siempre
estará actualizada.
Por otro lado se diseñó un módulo específico para el manejo de la base de
datos, este módulo se encarga de la comunicación del sistema con la base
20
de datos. Se encarga esencialmente de crear la tabla, llenarla y armar las
consultas de búsqueda, además de ofrecer un método que se encarga de
eliminar la tabla cuando el programa se cierra.
3.6.Generación de salida
Para el caso en que el usuario desee conservar los resultados de la
búsqueda, Astrea permite exportar los resultados en formato Excel (.xls) y
texto plano separado por comas (.csv). Además permite la impresión de la
búsqueda realizada.
Para uso avanzado se permite exportar la base de datos completa en
formato relación-atributo (.arff), dicho formato permite interoperabilidad con
Weka[9], un software para aprendizaje automático y minería de datos.
21
22
4. Interfaces de usuario
En la interfaz de usuario hemos tratado de mantener la mayor simplicidad de
diseño posible, pero al mismo tiempo proporcionando información de ayuda
sobre las diferentes funcionalidades de forma accesible, mediante mouse over,
menús contextuales que se pueden acceder de diferentes formas. De esta
manera, se garantiza que el usuario encuentre la información necesaria en
todo momento. Estas decisiones de diseño han venido determinadas por la
necesidad de interactuar con usuarios no expertos en informática, como es el
caso de buena parte de los investigadores policiales.
La interfaz está compuesta de tres partes que se usan de forma secuencial:

Carga de datos: se integran uno o más archivos de entrada a una
representación común interna.

Búsqueda: se seleccionan los filtros de búsqueda a aplicar sobre los
datos cargados.

Visualización de resultados: se le presentan los resultados al usuario de
forma amigable para que pueda realizar diferentes acciones sobre los
distintos tipos de datos.
Es importante destacar que cuando el usuario comienza a utilizar el sistema se
eliminan las funcionalidades que no pueden ser utilizadas en esta etapa. Este
es el caso de la verificación de archivos, la misma no se puede realizar hasta
tanto no se haya indicado previamente la finalización de la carga. Se optó por
impedirle al usuario cometer errores. Esta decisión se basó en la falta de
experiencia del usuario en sistemas informáticos, por lo cual utilizar mensajes
de aviso no es una forma conveniente de comunicarse con el usuario.
4.1.Carga de datos
El objetivo principal de la carga de datos es homogeneizar la información
de diferentes empresas, que pueden tener distintos formatos y etiquetas
identificatorias de los datos. Una vez homogeneizados los datos, resulta
más sencillo realizar búsquedas, ya que el usuario se puede abstraer de
las particularidades de cada documento. En la imagen que se puede ver en
23
la Figura 2, se observan los principales componentes: el listado de
archivos cargados, en los que se especifica el origen de los mismos y la
empresa telefónica a la que pertenece. El usuario tiene la posibilidad de
cargar múltiples archivos de diferentes empresas y hasta resultados
anteriores generados por el propio sistema.
Como podemos observar en el Anexo A la inexistencia de un formato
estandarizado entre empresas telefónicas presenta dos problemas
claramente identificados, que exista alguna ambigüedad con las etiquetas
de los datos, o que el archivo no se corresponda con la empresa indicada
anteriormente.
Para resolver la ambigüedad entre los datos, fue necesario utilizar un
método que homogenice las etiquetas identificatorias como se menciona
en el capítulo 3 (sección 3.4).
La asignación de un nombre canónico requiere la intervención del usuario
para indicarle al sistema que dato se identifica bajo esa etiqueta. De esta
forma, identificadores como Fecha I., Fecha y Hora y Fecha serán
unificados a un mismo nombre, Fecha, lo cual permite al usuario hacer
búsquedas focalizándose en el concepto, sin tener que recordar los
nombres y formatos específicos que usa cada empresa.
Cabe destacar que una vez ingresadas nuevas etiquetas, el sistema no
volverá a preguntar por ellas a menos que presenten algún tipo de
ambigüedad con otras existentes.
Como resultado de una evaluación previa de los archivos puede surgir que
el archivo no corresponde a la empresa indicada al momento de la carga
del mismo, es por esto que se le da la posibilidad de modificar dicha
identificación. Este reconocimiento previo del archivo se basa en el estudio
de las sábanas entregadas por el cliente como se desarrolló en el capítulo
3 (sección 3.4).
La columna “Control” representa el estado del archivo, es decir, este puede
estar controlado y listo para ser procesado o contener algún error, el cual
se indica en el campo “Error”.
24
Una vez finalizada la carga de los archivos y corregidos todos los posibles
errores, el usuario haciendo clic en “Finalizar Carga”, podrá visualizar las
opciones de búsqueda como se detalla en la próxima sección.
4.1.1. Pasos a seguir para la carga de archivos
1. Hacer clic en “Cargar Archivo”, se desplegará la ventana de búsqueda de
archivos como se puede observar en la Figura 2.1. En dicha ventana,
seleccionar el archivo a cargar. Repetir por cada archivo deseado.
2. Seleccionar la empresa a la que corresponde cada archivo previamente
cargado
3. Hacer clic en “Finalizar Carga”.
4. De existir errores con las etiquetas idenficatorias se podrán resolver como
se explicó en la sección 4.1 haciendo clic en el botón “Verificar Archivos”
(Figura 2.2).
5. Hacer clic en el botón “Finalizar” (Figura 2.3) para pasar a las opciones de
búsqueda.
Figura 2
25
Figura 2. 1
Figura 2. 2
26
Figura 2. 3
4.2.Búsqueda
Cuando el usuario finaliza la carga de archivos Astrea comienza un
proceso de parseo completo de los archivos para adaptar los datos
contenidos en los mismos a la estructura de la base de datos, la cual se
detalla en el capítulo 3 (sección 3.5).
En la Figura 3 se presentan las diferentes opciones de búsqueda sobre los
datos previamente cargados. Se ofrecen las opciones más usadas de
manera más accesible y rápida para realizar aquellas búsquedas más
comunes. Es importante para el usuario no sobrecargar la interfaz con
campos de búsqueda, es por este motivo que se mantienen siempre
visibles las opciones más importantes y ocultas aquellas que pueden
permitir una búsqueda más específica. Para esto se provee una búsqueda
avanzada como se muestra en la Figura 3.1.
Astrea provee al usuario con texto predictivo en todos los campos de texto
(Figura 3.2), con esta herramienta no se necesita memorizar por completo
los números telefónicos de las diferentes sábanas cargadas.
27
Los campos de tipo “Combo box” son completados solo con datos
existentes en los archivos fuente para facilitarle al usuario la utilización de
los mismos, a su vez evita que se ingrese de manera incorrecta algún tipo
de dato, provocando una búsqueda con resultados vacíos de información.
Los filtros de búsqueda fueron diseñados con aquellos datos de interés y
utilidad para el cliente, existe cierta información desechable e innecesaria
para llevar a cabo un análisis de sábanas telefónicas en busca de alguna
comunicación de utilidad para el investigador.
Cuando el usuario finaliza la selección de filtros a aplicar, puede decidir
qué datos visualizar en la tabla de resultados una vez realizada la
búsqueda. Es decir, podrá ver la información que crea conveniente y de
esta forma tener una visual más “limpia” de los datos. Las opciones
seleccionadas representarán a las etiquetas identificatorias de las
columnas en la grilla de resultados.
En la figura 3 podemos observar la presencia de un botón llamado “Limpiar
Búsqueda”, como su nombre lo indica, la acción que realiza este objeto es
devolver a los campos de opciones de búsqueda, sus estados iníciales.
Cuando el usuario haga clic en dicho botón, deberá confirmar esta acción
en un diálogo emergente. Es importante la presencia de esta opción ya que
son numerosos los campos de búsqueda y volverlos a un estado inicial
manualmente, sería tedioso para el usuario.
4.2.1. Pasos a seguir para realizar una búsqueda
1. Rellenar los campos deseados para la búsqueda, de ser necesario
hacer clic en “Búsqueda avanzada” para obtener mayor cantidad de
opciones.
2. Seleccionar las opciones de salida para ver en la grilla de resultados.
Las opciones representan las etiquetas de las columnas de la grilla.
3. Hacer clic en “Buscar”.
28
Figura 3
29
Figura 3. 1
Figura 3. 2
30
4.3.Visualización de resultados
Es importante destacar el hecho de la redundancia de información, es
decir, otorgarle al usuario la posibilidad de acceder a las opciones y
herramientas a través de diferentes caminos posibles. Esto es importante
para que el usuario tenga constante acceso a la información de la forma
más intuitiva posible. Podemos poner como ejemplo el caso de la
herramienta de códigos de área. Esta herramienta se encuentra accesible
siempre desde la barra de tareas, pero también se hace visible cuando
hacemos clic en un número de teléfono de la grilla de resultados como lo
explicaremos más adelante. La Figura 4 muestra los resultados de la
aplicación de los filtros seleccionados anteriormente por el usuario. Se
presentan en forma de tabla donde las etiquetas de las columnas son las
elegidas como opciones de salida en la pantalla descrita en sección 4.2.
Las distintas opciones que se ofrecen se dividen en dos clases principales:
 Acciones sobre los resultados: son acciones que se aplican a la
grilla de resultados en su totalidad.
 Acciones sobre el tipo de datos de los resultados: acciones que se
aplican sobre un objeto determinado, por ejemplo un número de
teléfono.
 Acciones generales: acciones que no afectan un objeto en
particular.
En el primer grupo de acciones podemos incluir a:
Ampliar Búsqueda (figura 4.4): permite incorporar (concatenar) nuevos
resultados a los ya existentes
Refinar Búsqueda (figura 4.4): aplica una nueva configuración de
búsqueda a los resultados expuestos en la tabla. Cabe aclarar que por una
limitación de MySQL, solo se puede refinar búsqueda trece veces.
En el segundo grupo podemos encontrar subgrupos como:
31
Opciones para un número telefónico (figura 4.2):
Alias: herramienta interesante que permite asignar un seudónimo a un
número de teléfono de la grilla, esto facilita ver que “Juan” se comunicó con
“Pepe” y no que +5493510000000 se comunicó con 35430000000.
Pedir Intervención: genera un documento en formato pdf solicitando la
intervención de un número telefónico para ser enviado a las autoridades
correspondientes.
Código de Área: permite obtener dado un código, las localidades que él
mismo abarca.
Opciones para un titular (figura 4.3): actualmente solo cuenta con “Pedir
Arresto”, al igual que Pedir Intervención, se genera un documento en
formato pdf para solicitar a las autoridades competentes el arresto de una
persona, de esta manera se reducen notablemente los tiempos que el
investigador invierte en los protocolos establecidos.
Opciones para una dirección: aquí podemos contar con la opción ”Ver
Mapa” (figura 4.1) una atractiva herramienta que incorpora Astrea, dada
una dirección (de una antena, un titular o una empresa), se la muestra (si
se dispone de una conexión a internet) en Google Maps[5]. Esta
herramienta tiene mucho potencial de desarrollo como mencionamos en la
sección de Trabajo futuro (sección 6.1).
Como acciones generales podemos clasificar a:
Imprimir: Imprimir presenta una vista previa para luego poder imprimir en
papel si se dispone de una impresora.
Guardar: El software ofrece la posibilidad de guardar los resultados en tres
formatos, hoja de cálculos (xls), coma separated values (csv) y AttributeRelation File Format (arff). Los dos primeros son los más utilizados por el
cliente, en el capítulo anterior, sección 3.6 se dan más detalles acerca de
32
esta opción. El tercero de ellos es para facilitar la interoperabilidad, por
ejemplo, con weka[9].
Nueva Búsqueda: nos devuelve a la segunda pantalla, detallada en las
secciones anteriores.
Volver al Inicio: nos devuelve a la primera pantalla, detallada en las
secciones anteriores.
Estas dos últimas opciones nos permiten obtener nuevos resultados a
partir de nuevos archivos o de los agregados inicialmente.
4.3.1. Pasos a seguir para la visualización de resultados
Luego de aplicar los filtros de búsqueda, los resultados se muestran
como ilustra la figura 4. Esta pantalla no respeta una secuencia de
pasos a seguir como en las 2 anteriores, es por este motivo que
pasamos a describir las diferentes opciones y herramientas que ofrece
Astrea.

Para asignar o eliminar un alias:
1. Hacer clic en un número de teléfono para que se pueda
visualizar el botón.
2. Hacer clic en el botón “Alias” para desplegar el cuadro como
muestra la figura 4.2.
3. Seleccionar la opción deseada, ya sea asignar o eliminar un
alias existente.
4. Incorporar la información según la opción seleccionada
(ingresar el alias deseado, o seleccionar de la lista de alias
existentes).
5. Hacer clic en el botón ok para visualizar los cambios en la
grilla.

Para ver una dirección en un mapa:
1. Hacer clic en un domicilio.
33
2. Hacer clic en ver mapa. Mientras más información exista en la
grilla de resultados acerca de este domicilio, más precisión
tendrá la herramienta.

Para solicitar una nota de arresto:
1. Hacer clic en alguno de los campos de titulares.
2. Hacer clic en pedir arresto.

Para solicitar una nota de Intervención:
1. Hacer clic en alguno de los campos de números telefónicos.
2. Hacer clic en pedir intervención.

Para consultar un código de área:
1. Hacer clic en alguno de los campos de números telefónicos.
2. Hacer clic en pedir intervención.

Para realizar una ampliación de búsqueda:
1. Hacer clic en “Ampliar Búsqueda” para que despliegue el
diálogo correspondiente.
2. Completar los filtros de la misma manera que se hizo en la
pantalla detallada en la sección 4.2
Cabe destacar que no se podrán modificar las columnas de salida
elegidas en la primera búsqueda realizada.
Es posible realizar todas las ampliaciones deseadas, pero el usuario
debe tener en cuenta que esto puede duplicar información.

Para guardar resultados:
1. Hacer clic en “Guardar...” para elegir donde se guardarán los
resultados y con qué extensión.
2. Hacer clic en guardar para cerrar el diálogo.

Para imprimir resultados:
1. Hacer clic en “Imprimir...”.
2. Elegir las configuraciones deseadas como la hoja a utilizar y la
orientación de la misma.
34
3. Hacer clic en el icono de la impresora que se encuentra en la
barra de tareas para abrir el cuadro de impresión del sistema
operativo.

Para realizar una nueva búsqueda:
1. Hacer clic en “Nueva Búsqueda” para ser redirigidos a la
pantalla descrita en la sección 4.2

Para cargar nuevos archivos:
1. Hacer clic en “Volver al Inicio” para ser redirigidos a la pantalla
inicial. Al realizar esta acción los archivos cargados con
anterioridad serán completamente eliminados de la base de
datos.
Figura 4
35
Figura 4. 1
36
Figura 4. 2
Figura 4. 3
37
Figura 4. 4
38
39
5. Ontología subyacente
Para facilitar la interoperabilidad de los resultados obtenidos con otras bases
de datos o aplicaciones, creamos una ontología subyacente para representar
los datos de las sábanas telefónicas. Esta ontología modela los conceptos
involucrados en la comunicación telefónica, de forma que resulte intuitivo
trabajar con ellos y se puedan exportar para su fácil integración con diferentes
herramientas. Esta ontología ha jugado un rol fundamental en el diseño de la
solución en su totalidad.
La ontología se ha implementado siguiendo los estándares propuestos en web
semántica. Se ha implementado en OWL[6], mediante la herramienta
Protégé[7], que facilita la visualización gráfica de la ontología y la
comprobación de propiedades.
5.1.Rol de la ontología en la arquitectura del sistema
La ontología no es la base de datos del sistema, y tampoco se usa para
generar esta base de datos. Esta decisión se tomó por dos razones
principales, ya mencionadas en 3.5.
En primer lugar, las bases de datos relacionales son más eficientes y más
fáciles de mantener por terceros, ya que son más estándares. Las
ontologías en OWL[6] se pueden usar como bases de datos, realizando
consultas mediante SPARQL[8]. Sin embargo, las consultas SPARQL[8]
son mucho más lentas que en SQL, tienen menos soporte técnico a través
de plataformas y son menos conocidas.
En segundo lugar, observamos que no existía ninguna información
necesaria para el uso descrito por el product owner que no se pudiera
expresar en una base de datos relacional. Las relaciones que no se
pueden expresar elegantemente en una base de datos relacional pero sí
en OWL[6] pueden ser funcional o inversa funcional por ejemplo. Las
consultas descritas por el product owner son del tipo “todos los números
que se comunicaron con...”, “todas las llamadas en un rango de hora”,
40
“todos los números que usaron X antena”, con lo cual las relaciones
funcional o inversa funcional (entre otras) no resultan necesarias.
Sin embargo, consideramos que estas relaciones deben estar en la
ontología porque efectivamente describen de forma adecuada el dominio, y
pueden ser explotadas por otras aplicaciones relacionadas.
5.2.Interoperabilidad
En la versión actual se han implementado métodos de comunicación con
google maps[5] y se ha diseñado la interacción con weka[9]. En versiones
posteriores se desarrollarán los métodos para interactuar con google
analytics[4] y servicios en la nube, así como con herramientas de rastreo y
surveillance.
5.3.Contenido de la ontología
El diseño de la ontología representa una comunicación entre dos teléfonos
celulares, excluyendo a la central telefónica. Esto se dá porque si bien
interfiere de manera directa en una comunicación, no aporta ningún
atributo relevante.
Un resumen de la ontología se puede ver en la Figura 5. Consta de 12
clases, con 13 relaciones entre ellas (Figura 5.1). Las clases principales
son:
 Celda: Representa las celdas que se encuentran en las antenas.
 Teléfono: Representa al artefacto teléfono, dicho aparato, puede
tener solo 1 chip (si bien en la actualidad existen aparatos que
soportan hasta 2 (dos) chips, recordemos que solo modelamos
una comunicación)
 Dirección: representa la dirección domiciliaria de determinadas
clases como una antena, un titular. Tiene como atributos la
provincia, localidad, código postal
 Antena: representa a las antenas físicas, que poseen en ellas
una gran cantidad de celdas.
 Chip: representa al sim entregado por las empresas de
telefonía, éste sólo puede tener a lo sumo 2 titulares, en cuyo
41
caso uno de ellos es el usuario y el otro el titular propiamente
dicho.
 Titular: representa a la persona que se supone adquirió el chip.
Las relaciones que se establecen entre las clases antes mencionadas
modelan los eventos y relaciones propios de la comunicación
telefónica.
Las clases se relacionan entre si con uno o más de los siguientes tipos
de relaciones:
 Funcional: Si A está relacionado con B y C por la misma
propiedad, entonces B y C son el mismo objeto.
 Inversa funcional: Si A y B estan relacionados con B por la
misma propiedad, entonces A y B son el mismo objeto.
 Asimetrica: Si A está relacionado con B, entonces B no puede
estar relacionado con A por la misma propiedad.
 Irreflexiva: Si A está relacionado con B, entonces A y B no
pueden ser el mismo objeto.
A continuación detallamos como son cada una de las relaciones de
la ontología:
 EstaEn: es asimétrica, funcional e irreflexiva. Relaciona a las
celdas con las antenas. Una celda esta solo en una antena.
 tieneCelda: es inversa funcional. Relaciona a las antenas con
las celdas. Las antenas tienen enorme cantidad de celdas.
 Usa: es asimétrica e irreflexiva. Relaciona a los teléfonos con
las antenas, es decir, indica que antena está usando un
teléfono determinado. Un teléfono usa solo una celda.
 Hospeda: es asimétrica e irreflexiva. Relaciona a las antenas
con los teléfonos, es decir, indica que teléfonos esta
42
“hospedando” una antena determinada. Una antena hospeda
gran cantidad de teléfonos.
 Recibe: es asimétrica e irreflexiva. Relaciona un teléfono con
otro indicando cuál de ellos es el receptor de la comunicación.
Un teléfono recibe solo una llamada.
 Llama: es asimétrica e irreflexiva. Relaciona un teléfono con
otro indicando cuál de ellos es el que inicia la comunicación.
un teléfono solo llama a un teléfono.
 tieneTelefono: es asimétrica e irreflexiva. Relaciona un chip
con un teléfono indicando que aparato está utilizando al
momento de la comunicación. Un chip solo tiene un teléfono.
 tieneChip: es asimétrica e irreflexiva. Relaciona un teléfono
con un chip indicando que chip se utilizó para la
comunicación. Un teléfono tiene solo un chip.
 esTitularDe: es asimétrica e irreflexiva. Relaciona un usuario
con un chip. Un usuario puede tener diferentes chips.
 tieneTitular: es asimétrica e irreflexiva. Relaciona un chip con
un usuario. Un chip puede tener a lo sumo 2 (dos) titulares.
 tieneDireccion: es asimétrica, inversa funcional e irreflexiva.
Relaciona un usuario o antena con una dirección domiciliaria.
Solo se puede tener una dirección.
 direccionDe: es asimétrica, funcional e irreflexiva. Relaciona
una dirección domiciliaria con un usuario o antena. Una
dirección solo puede tener un usuario o antena.
 Pedir_Nota: es asimétrica e irreflexiva. Relaciona una entidad
“investigable” con la nota oficial correspondiente a la entidad.
43
Figura 5
44
Figura 5. 1
45
46
6. Conclusión
Es notorio que en la actualidad las fuerzas policiales cuentan con pocas
herramientas informáticas para la lucha contra el crimen, la tecnología avanza
a pasos agigantados y las entidades gubernamentales no poseen los
protocolos necesarios para adaptarse a la misma velocidad del crecimiento
tecnológico.
La situación actual tiene a una policía que sufre una falta importante de
inversión económica en el sector, lo cual releva a uno de los últimos lugares a
la incorporación de nuevas tecnologías.
Estas situaciones se ven incrementadas de manera notoria en las localidades
más pequeñas de la provincia, donde los presupuestos son más reducidos
aún.
Las condiciones anteriores se contradicen con la situación del crimen
organizado, una “entidad” que constantemente adquiere nuevas tecnologías de
manera constante, entre otras razones porque tienen una mejor situación
presupuestaria. A su vez, la tecnología adquirida produce más y más registros
de las acciones realizadas a través de ella, permitiendo que personal idóneo
organice dicha información.
El cruzamiento de llamadas telefónicas ha aportado ayuda en una infinidad de
casos relevantes y de público conocimiento. Las herramientas necesarias para
realizar estas acciones no se encuentran accesibles para la investigación de
casos llamados “triviales” o “poco importantes”.
Es por eso que hemos desarrollado una herramienta de libre disponibilidad y
aplicación inmediata en el campo de acción, con la cual es factible maximizar
el rendimiento de las horas/hombre que un investigador invierte en la línea
investigativa de las comunicaciones telefónicas.
Partiendo de la existencia de una comunicación entre dos teléfonos celulares,
es posible detectar una enorme cantidad de datos que acerquen a un detective
a un hecho perpetrado. Una tarea sistemática de búsqueda de información en
sábanas telefónicas podía llegar a requerir días de trabajo, con Astrea es
47
posible realizarlo en horas, logrando así un mejor uso de los recursos
humanos.
A partir de una interfaz sencilla y amigable, es posible que personal que no
cuenta con un gran conocimiento de informática pueda hacer uso del sistema y
obtener los beneficios que éste brinda para el desarrollo de su investigación.
Por otra parte, la totalidad del proyecto está realizada con software de código
abierto que permite que, con los conocimientos necesarios, sea posible realizar
modificaciones en el código tanto para la extensión de sus funcionalidades
como para mejorar las existentes.
6.1.Trabajo futuro

Incorporación de trazados: La incorporación de aparatos de geoposicionamiento en los teléfonos celulares permitiría poder seguir un
trazado realizado por el dispositivo. Acoplar esta herramienta en
Astrea sería de gran importancia, ya que permitiría establecer la
posición exacta de un aparato en un periodo de tiempo determinado.

Búsqueda de patrones: con la integración del sistema en un flujo de
minería de datos, por ejemplo, a través de su interoperabilidad con
entornos
como
weka[9],
es
posible
detectar
patrones
de
comunicaciones y establecer hipótesis que vuelquen importantes
datos a la investigación.

Incorporación de datos conocidos: una posibilidad es incorporar
bases de datos existentes como pueden ser las antenas de todo el
territorio nacional, titulares de líneas telefónicas, códigos de área
internacionales. Anexando estos datos, es posible obtener mejores
resultados ya que estaría disponible gran cantidad de información
que en ocasiones está ausente en las sábanas telefónicas.

Mejoras en la performance: con el uso intensivo del sistema
consideramos también que puede ser necesario analizar y mejorar
el uso de memoria para aumentar el rendimiento y performance de
Astrea ya que puede manejar un gran volumen de información en su
base de datos.
48
49
7. Referencias
Franz Baader, Diego Calvanese, Deborah McGuinness, Daniele Nardi, Peter
Patel-Schneider (editors). 2003. The Description Logic Handbook: Theory,
Implementation and Applications. Cambridge University Press.
Miguel Distéfano, Año I Nº 11 Sel 10/6 al 16/6 de mana de1998, Clarin
Informática,
http://edant.clarin.com/suplementos/informatica/1998/06/10/excalibur.htm[1]
Eclipse, http://www.eclipse.org/[2]
Miguel Ángel Gallardo Ortiz, Cooperación Internacional en Tecnologías
Avanzadas (C.I.T.A.) SLU, www.cita.es/sitel/[3]
Joseph C. Giarratano, and Riley, Gary (2005). Expert Systems, Principles and
Programming. Course Technology Ptr
Google Analytics, http://www.google.com.ar/intl/es/analytics/[4]
Google Maps, www.maps.google.com.ar[5]
Owl, http://www.w3.org/TR/owl-features/[6]
Protégé, http://protege.stanford.edu/[7]
Andrew Sears, Julie A. Jacko (Eds.). (2007). Human-Computer Interaction
Handbook (2nd Edition). CRC Press.
SPARQL, http://www.w3.org/2009/sparql/wiki/Main_Page[8]
Weka, http://www.cs.waikato.ac.nz/ml/weka/[9]
50
Wikipedia, última modificación 1 de Mayo de 2013 a las 16:29,
http://en.wikipedia.org/wiki/Ontology_engineering.
Wikipedia, última modificación 9 de Marzo de 2013 a las 03:12,
http://es.wikipedia.org/wiki/Prot%C3%A9g%C3%A9_(software).
Wikipedia, última modificación 24 de Mayo de 2013 a las 20:32,
http://en.wikipedia.org/wiki/Record_linkage[10
51
52
8. Anexos
A.1 Ejemplos de sábanas telefónicas
A.1.1 Personal
Ejemplo: Detalles de llamadas de un número en particular.
Linea
Fecha
Hora
Tipo
Otro
Durac
Serie
Celda Id
Celda
direccion
Celda
Celda
localidad provincia
3515330000
20100415
00:05:16
S
3516000000
320
66125522
XCSANA6
San Luis 3007
Cordoba
Cordoba
3515330000
20100415
11:01:23
S
3513000000
12
66125522
XCSANA6
San Luis 3007
Cordoba
Cordoba
3515330000
20100415
11:04:41
S
3513000000
32
66125522
XCSANA6
San Luis 3007
Cordoba
Cordoba
3515330000
20100415
11:05:35
S
3516000000
1881
66125522
XCSANA6
San Luis 3007
Cordoba
Cordoba
Linea: Número telefónico del cual se pidió el detalle.
Fecha: Fecha de la comunicación
Hora: Hora de inicio de la comunicación
Tipo: Dirección de la comunicación. “E” significa entrante, “S” saliente.
Otro: Número con el cual se estableció la comunicación, ya sea
entrante o saliente.
Durac: Duración en tiempo de aire.
Serie: sin informacion
Celda Id: Celda utilizada para la comunicación.
Celda direccion: Dirección de la antena donde está ubicada la celda
utilizada para la comunicación.
Celda localidad: Localidad donde se encuentra la antena.
Celda provincia: Provincia donde se encuentra la antena.
A.1.2 Movistar
Ejemplo: Detalle de llamadas de un número en particular.
53
Fecha y Hora: Fecha y hora del inicio de la comunicación
Nro. Pagador: Número del cual se pidió el detalle.
Dir.: Sentido de la comunicación, es decir, si fue entrante o saliente
para el Nro. Pagador.
Nro. Destino: Segundo número que interviene en la comunicación.
Duración: Tiempo de llamada.
Esn/Imei: Número de Imei del número investigado.
A.1.3 Nextel
Ejemplo: Detalle de llamadas de un número en particular.
Tel. Orig.: Número telefónico que inicia la comunicación.
Tel.Dest: Número que recibe la llamada.
54
Fecha I.: Fecha de inicio de la comunicación.
Fecha F.: Fecha de la finalización de la comunicación.
Dur.: Duración de la comunicación.
Celda
(NOMBRE[ORIENTACION]<>UBICACIÓN<>DIRECCION).:
Celda y dirección de la antena utilizadas.
Sec.: Sentido de la celda utilizada.
Emp. Orig.: Empresa titular del número telefónico que origina la
comunicación (en este caso vacio porque el numero investigado no es
el que origino la comunicación).
Contac. Orig.: Persona que está utilizando el número que tiene como
titular una empresa (en este caso vacio porque el numero investigado
no es el que origino la comunicación).
Dir. Orig.: Dirección de la empresa titular.
Loc. Orig.: Localidad de la empresa titular.
Prov. Orig.: Provincia de la empresa titular.
Emp. Dest.: Empresa titular del número telefónico que recibe la
llamada.
Contac. Dest.: Persona que está utilizando el número que tiene como
titular una empresa.
Dir. Dest.: Dirección de la empresa titular del numero llamado.
Loc. Dest.: Localidad de la empresa titular del número llamado.
Prov. Dest.: Provincia de la empresa titular del numero llamado.
A.1.4 Claro
Ejemplo: Detalle de un número particular.
55
Nro. Llamante: Número telefónico que inicia la comunicación.
Tel.Llamado: Número que recibe la llamada.
Fecha y Hora: Fecha y hora de inicio de la comunicación.
Duración (Seg.): Duración de la comunicación.
id. Celda: Celda utilizada en la comunicación.
Descripc. Celda:Descripción de la celda utilizada.
A.1.3 Propio
Este formato de sábana telefónica es propio del sistema. Es el formato
de salida para los resultados que se desean guardar. Esta posibilidad
que ofrece el sistema se detalla con mayor precisión en la sección 3.6
56
A.2 Manual de usuario
A.3 Ontología en OWL
<?xml version="1.0"?>
<!DOCTYPE Ontology [
<!ENTITY xsd "http://www.w3.org/2001/XMLSchema#" >
<!ENTITY xml "http://www.w3.org/XML/1998/namespace" >
<!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema#" >
<!ENTITY rdf "http://www.w3.org/1999/02/22-rdf-syntax-ns#" >
]>
<Ontology xmlns="http://www.w3.org/2002/07/owl#"
xml:base="http://www.semanticweb.org/ramo/ontologies/2012/10/untit
led-ontology-15"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:xml="http://www.w3.org/XML/1998/namespace"
ontologyIRI="http://www.semanticweb.org/ramo/ontologies/2012/10/u
ntitled-ontology-15">
<Prefix name="" IRI="http://www.w3.org/2002/07/owl#"/>
<Prefix name="owl" IRI="http://www.w3.org/2002/07/owl#"/>
<Prefix name="rdf" IRI="http://www.w3.org/1999/02/22-rdf-syntaxns#"/>
57
<Prefix name="xsd" IRI="http://www.w3.org/2001/XMLSchema#"/>
<Prefix name="rdfs" IRI="http://www.w3.org/2000/01/rdf-schema#"/>
<Declaration>
<Class IRI="#Antena"/>
</Declaration>
<Declaration>
<Class IRI="#Celda"/>
</Declaration>
<Declaration>
<Class IRI="#Chip"/>
</Declaration>
<Declaration>
<Class IRI="#Direccion"/>
</Declaration>
<Declaration>
<Class IRI="#Empresa"/>
</Declaration>
<Declaration>
<Class IRI="#Investigables"/>
</Declaration>
<Declaration>
<Class IRI="#Lugares_Fisicos"/>
</Declaration>
<Declaration>
<Class IRI="#Notas"/>
</Declaration>
<Declaration>
<Class IRI="#Particular"/>
</Declaration>
<Declaration>
<Class IRI="#Telefono"/>
58
</Declaration>
<Declaration>
<Class IRI="#Titular"/>
</Declaration>
<Declaration>
<ObjectProperty IRI="#Esta_en"/>
</Declaration>
<Declaration>
<ObjectProperty IRI="#Llama"/>
</Declaration>
<Declaration>
<ObjectProperty IRI="#Pedir_Nota"/>
</Declaration>
<Declaration>
<ObjectProperty IRI="#Recibe"/>
</Declaration>
<Declaration>
<ObjectProperty IRI="#Usa"/>
</Declaration>
<Declaration>
<ObjectProperty IRI="#direccionDe"/>
</Declaration>
<Declaration>
<ObjectProperty IRI="#esTitularDe"/>
</Declaration>
<Declaration>
<ObjectProperty IRI="#hospeda"/>
</Declaration>
<Declaration>
<ObjectProperty IRI="#tieneCelda"/>
</Declaration>
59
<Declaration>
<ObjectProperty IRI="#tieneChip"/>
</Declaration>
<Declaration>
<ObjectProperty IRI="#tieneDireccion"/>
</Declaration>
<Declaration>
<ObjectProperty IRI="#tieneTelefono"/>
</Declaration>
<Declaration>
<ObjectProperty IRI="#tieneTitular"/>
</Declaration>
<Declaration>
<NamedIndividual IRI="#12314353"/>
</Declaration>
<Declaration>
<NamedIndividual IRI="#12485732954"/>
</Declaration>
<Declaration>
<NamedIndividual IRI="#23523467324"/>
</Declaration>
<Declaration>
<NamedIndividual IRI="#34056943"/>
</Declaration>
<Declaration>
<NamedIndividual IRI="#Antena1"/>
</Declaration>
<Declaration>
<NamedIndividual IRI="#Celda1"/>
</Declaration>
<Declaration>
60
<NamedIndividual IRI="#Direccion_falsa_123"/>
</Declaration>
<Declaration>
<NamedIndividual IRI="#Direccion_falsa_231"/>
</Declaration>
<Declaration>
<NamedIndividual IRI="#Direccion_falsa_321"/>
</Declaration>
<Declaration>
<NamedIndividual IRI="#Ramo"/>
</Declaration>
<Declaration>
<NamedIndividual IRI="#Ramote"/>
</Declaration>
<Declaration>
<NamedIndividual IRI="#nota_antena"/>
</Declaration>
<SubClassOf>
<Class IRI="#Antena"/>
<Class IRI="#Lugares_Fisicos"/>
</SubClassOf>
<SubClassOf>
<Class IRI="#Chip"/>
<Class IRI="#Investigables"/>
</SubClassOf>
<SubClassOf>
<Class IRI="#Empresa"/>
<Class IRI="#Chip"/>
</SubClassOf>
<SubClassOf>
<Class IRI="#Lugares_Fisicos"/>
61
<Class IRI="#Investigables"/>
</SubClassOf>
<SubClassOf>
<Class IRI="#Particular"/>
<Class IRI="#Chip"/>
</SubClassOf>
<SubClassOf>
<Class IRI="#Titular"/>
<Class IRI="#Lugares_Fisicos"/>
</SubClassOf>
<ClassAssertion>
<Class IRI="#Telefono"/>
<NamedIndividual IRI="#12314353"/>
</ClassAssertion>
<ClassAssertion>
<Class IRI="#Particular"/>
<NamedIndividual IRI="#12485732954"/>
</ClassAssertion>
<ClassAssertion>
<Class IRI="#Chip"/>
<NamedIndividual IRI="#23523467324"/>
</ClassAssertion>
<ClassAssertion>
<Class IRI="#Particular"/>
<NamedIndividual IRI="#23523467324"/>
</ClassAssertion>
<ClassAssertion>
<Class IRI="#Telefono"/>
<NamedIndividual IRI="#34056943"/>
</ClassAssertion>
<ClassAssertion>
62
<Class IRI="#Antena"/>
<NamedIndividual IRI="#Antena1"/>
</ClassAssertion>
<ClassAssertion>
<Class IRI="#Celda"/>
<NamedIndividual IRI="#Celda1"/>
</ClassAssertion>
<ClassAssertion>
<Class IRI="#Direccion"/>
<NamedIndividual IRI="#Direccion_falsa_123"/>
</ClassAssertion>
<ClassAssertion>
<Class IRI="#Direccion"/>
<NamedIndividual IRI="#Direccion_falsa_231"/>
</ClassAssertion>
<ClassAssertion>
<Class IRI="#Direccion"/>
<NamedIndividual IRI="#Direccion_falsa_321"/>
</ClassAssertion>
<ClassAssertion>
<Class IRI="#Titular"/>
<NamedIndividual IRI="#Ramo"/>
</ClassAssertion>
<ClassAssertion>
<Class IRI="#Titular"/>
<NamedIndividual IRI="#Ramote"/>
</ClassAssertion>
<ClassAssertion>
<Class IRI="#Notas"/>
<NamedIndividual IRI="#nota_antena"/>
</ClassAssertion>
63
<DifferentIndividuals>
<NamedIndividual IRI="#Antena1"/>
<NamedIndividual IRI="#Ramo"/>
<NamedIndividual IRI="#Ramote"/>
</DifferentIndividuals>
<ObjectPropertyAssertion>
<ObjectProperty IRI="#Llama"/>
<NamedIndividual IRI="#12314353"/>
<NamedIndividual IRI="#34056943"/>
</ObjectPropertyAssertion>
<ObjectPropertyAssertion>
<ObjectProperty IRI="#tieneTelefono"/>
<NamedIndividual IRI="#12485732954"/>
<NamedIndividual IRI="#34056943"/>
</ObjectPropertyAssertion>
<ObjectPropertyAssertion>
<ObjectProperty IRI="#tieneTitular"/>
<NamedIndividual IRI="#12485732954"/>
<NamedIndividual IRI="#Ramo"/>
</ObjectPropertyAssertion>
<ObjectPropertyAssertion>
<ObjectProperty IRI="#tieneTelefono"/>
<NamedIndividual IRI="#23523467324"/>
<NamedIndividual IRI="#12314353"/>
</ObjectPropertyAssertion>
<ObjectPropertyAssertion>
<ObjectProperty IRI="#tieneTitular"/>
<NamedIndividual IRI="#23523467324"/>
<NamedIndividual IRI="#Ramote"/>
</ObjectPropertyAssertion>
<ObjectPropertyAssertion>
64
<ObjectProperty IRI="#Esta_en"/>
<NamedIndividual IRI="#Celda1"/>
<NamedIndividual IRI="#Antena1"/>
</ObjectPropertyAssertion>
<ObjectPropertyAssertion>
<ObjectProperty IRI="#direccionDe"/>
<NamedIndividual IRI="#Direccion_falsa_123"/>
<NamedIndividual IRI="#Ramo"/>
</ObjectPropertyAssertion>
<ObjectPropertyAssertion>
<ObjectProperty IRI="#direccionDe"/>
<NamedIndividual IRI="#Direccion_falsa_231"/>
<NamedIndividual IRI="#Ramote"/>
</ObjectPropertyAssertion>
<ObjectPropertyAssertion>
<ObjectProperty IRI="#direccionDe"/>
<NamedIndividual IRI="#Direccion_falsa_321"/>
<NamedIndividual IRI="#Antena1"/>
</ObjectPropertyAssertion>
<ObjectPropertyAssertion>
<ObjectProperty IRI="#Pedir_Nota"/>
<NamedIndividual IRI="#nota_antena"/>
<NamedIndividual IRI="#Antena1"/>
</ObjectPropertyAssertion>
<InverseObjectProperties>
<ObjectProperty IRI="#tieneCelda"/>
<ObjectProperty IRI="#Esta_en"/>
</InverseObjectProperties>
<InverseObjectProperties>
<ObjectProperty IRI="#Recibe"/>
<ObjectProperty IRI="#Llama"/>
65
</InverseObjectProperties>
<InverseObjectProperties>
<ObjectProperty IRI="#hospeda"/>
<ObjectProperty IRI="#Usa"/>
</InverseObjectProperties>
<InverseObjectProperties>
<ObjectProperty IRI="#tieneDireccion"/>
<ObjectProperty IRI="#direccionDe"/>
</InverseObjectProperties>
<InverseObjectProperties>
<ObjectProperty IRI="#tieneChip"/>
<ObjectProperty IRI="#tieneTelefono"/>
</InverseObjectProperties>
<FunctionalObjectProperty>
<ObjectProperty IRI="#Esta_en"/>
</FunctionalObjectProperty>
<FunctionalObjectProperty>
<ObjectProperty IRI="#direccionDe"/>
</FunctionalObjectProperty>
<InverseFunctionalObjectProperty>
<ObjectProperty IRI="#tieneCelda"/>
</InverseFunctionalObjectProperty>
<InverseFunctionalObjectProperty>
<ObjectProperty IRI="#tieneDireccion"/>
</InverseFunctionalObjectProperty>
<AsymmetricObjectProperty>
<ObjectProperty IRI="#Esta_en"/>
</AsymmetricObjectProperty>
<AsymmetricObjectProperty>
<ObjectProperty IRI="#Llama"/>
</AsymmetricObjectProperty>
66
<AsymmetricObjectProperty>
<ObjectProperty IRI="#Pedir_Nota"/>
</AsymmetricObjectProperty>
<AsymmetricObjectProperty>
<ObjectProperty IRI="#Recibe"/>
</AsymmetricObjectProperty>
<AsymmetricObjectProperty>
<ObjectProperty IRI="#Usa"/>
</AsymmetricObjectProperty>
<AsymmetricObjectProperty>
<ObjectProperty IRI="#direccionDe"/>
</AsymmetricObjectProperty>
<AsymmetricObjectProperty>
<ObjectProperty IRI="#esTitularDe"/>
</AsymmetricObjectProperty>
<AsymmetricObjectProperty>
<ObjectProperty IRI="#hospeda"/>
</AsymmetricObjectProperty>
<AsymmetricObjectProperty>
<ObjectProperty IRI="#tieneChip"/>
</AsymmetricObjectProperty>
<AsymmetricObjectProperty>
<ObjectProperty IRI="#tieneDireccion"/>
</AsymmetricObjectProperty>
<AsymmetricObjectProperty>
<ObjectProperty IRI="#tieneTelefono"/>
</AsymmetricObjectProperty>
<AsymmetricObjectProperty>
<ObjectProperty IRI="#tieneTitular"/>
</AsymmetricObjectProperty>
<IrreflexiveObjectProperty>
67
<ObjectProperty IRI="#Esta_en"/>
</IrreflexiveObjectProperty>
<IrreflexiveObjectProperty>
<ObjectProperty IRI="#Llama"/>
</IrreflexiveObjectProperty>
<IrreflexiveObjectProperty>
<ObjectProperty IRI="#Pedir_Nota"/>
</IrreflexiveObjectProperty>
<IrreflexiveObjectProperty>
<ObjectProperty IRI="#Recibe"/>
</IrreflexiveObjectProperty>
<IrreflexiveObjectProperty>
<ObjectProperty IRI="#Usa"/>
</IrreflexiveObjectProperty>
<IrreflexiveObjectProperty>
<ObjectProperty IRI="#direccionDe"/>
</IrreflexiveObjectProperty>
<IrreflexiveObjectProperty>
<ObjectProperty IRI="#esTitularDe"/>
</IrreflexiveObjectProperty>
<IrreflexiveObjectProperty>
<ObjectProperty IRI="#hospeda"/>
</IrreflexiveObjectProperty>
<IrreflexiveObjectProperty>
<ObjectProperty IRI="#tieneChip"/>
</IrreflexiveObjectProperty>
<IrreflexiveObjectProperty>
<ObjectProperty IRI="#tieneDireccion"/>
</IrreflexiveObjectProperty>
<IrreflexiveObjectProperty>
<ObjectProperty IRI="#tieneTelefono"/>
68
</IrreflexiveObjectProperty>
<IrreflexiveObjectProperty>
<ObjectProperty IRI="#tieneTitular"/>
</IrreflexiveObjectProperty>
<ObjectPropertyDomain>
<ObjectProperty IRI="#Esta_en"/>
<Class IRI="#Celda"/>
</ObjectPropertyDomain>
<ObjectPropertyDomain>
<ObjectProperty IRI="#Llama"/>
<Class IRI="#Telefono"/>
</ObjectPropertyDomain>
<ObjectPropertyDomain>
<ObjectProperty IRI="#Pedir_Nota"/>
<Class IRI="#Investigables"/>
</ObjectPropertyDomain>
<ObjectPropertyDomain>
<ObjectProperty IRI="#Recibe"/>
<Class IRI="#Telefono"/>
</ObjectPropertyDomain>
<ObjectPropertyDomain>
<ObjectProperty IRI="#Usa"/>
<Class IRI="#Telefono"/>
</ObjectPropertyDomain>
<ObjectPropertyDomain>
<ObjectProperty IRI="#direccionDe"/>
<Class IRI="#Direccion"/>
</ObjectPropertyDomain>
<ObjectPropertyDomain>
<ObjectProperty IRI="#esTitularDe"/>
<Class IRI="#Titular"/>
69
</ObjectPropertyDomain>
<ObjectPropertyDomain>
<ObjectProperty IRI="#hospeda"/>
<Class IRI="#Antena"/>
</ObjectPropertyDomain>
<ObjectPropertyDomain>
<ObjectProperty IRI="#tieneCelda"/>
<Class IRI="#Antena"/>
</ObjectPropertyDomain>
<ObjectPropertyDomain>
<ObjectProperty IRI="#tieneChip"/>
<Class IRI="#Telefono"/>
</ObjectPropertyDomain>
<ObjectPropertyDomain>
<ObjectProperty IRI="#tieneDireccion"/>
<Class IRI="#Lugares_Fisicos"/>
</ObjectPropertyDomain>
<ObjectPropertyDomain>
<ObjectProperty IRI="#tieneTelefono"/>
<Class IRI="#Chip"/>
</ObjectPropertyDomain>
<ObjectPropertyDomain>
<ObjectProperty IRI="#tieneTitular"/>
<Class IRI="#Chip"/>
</ObjectPropertyDomain>
<ObjectPropertyRange>
<ObjectProperty IRI="#Esta_en"/>
<Class IRI="#Antena"/>
</ObjectPropertyRange>
<ObjectPropertyRange>
<ObjectProperty IRI="#Llama"/>
70
<Class IRI="#Telefono"/>
</ObjectPropertyRange>
<ObjectPropertyRange>
<ObjectProperty IRI="#Pedir_Nota"/>
<Class IRI="#Notas"/>
</ObjectPropertyRange>
<ObjectPropertyRange>
<ObjectProperty IRI="#Recibe"/>
<Class IRI="#Telefono"/>
</ObjectPropertyRange>
<ObjectPropertyRange>
<ObjectProperty IRI="#Usa"/>
<Class IRI="#Antena"/>
</ObjectPropertyRange>
<ObjectPropertyRange>
<ObjectProperty IRI="#direccionDe"/>
<Class IRI="#Lugares_Fisicos"/>
</ObjectPropertyRange>
<ObjectPropertyRange>
<ObjectProperty IRI="#esTitularDe"/>
<Class IRI="#Chip"/>
</ObjectPropertyRange>
<ObjectPropertyRange>
<ObjectProperty IRI="#hospeda"/>
<Class IRI="#Telefono"/>
</ObjectPropertyRange>
<ObjectPropertyRange>
<ObjectProperty IRI="#tieneCelda"/>
<Class IRI="#Celda"/>
</ObjectPropertyRange>
<ObjectPropertyRange>
71
<ObjectProperty IRI="#tieneChip"/>
<Class IRI="#Chip"/>
</ObjectPropertyRange>
<ObjectPropertyRange>
<ObjectProperty IRI="#tieneDireccion"/>
<Class IRI="#Direccion"/>
</ObjectPropertyRange>
<ObjectPropertyRange>
<ObjectProperty IRI="#tieneTelefono"/>
<Class IRI="#Telefono"/>
</ObjectPropertyRange>
<ObjectPropertyRange>
<ObjectProperty IRI="#tieneTitular"/>
<Class IRI="#Titular"/>
</ObjectPropertyRange>
</Ontology>
<!-- Generated by the OWL API (version 3.3.1957)
http://owlapi.sourceforge.net -->
72