Вы находитесь на странице: 1из 75

DESARROLLO DE UN APLICATIVO PARA EL REGISTRO Y SEGUIMIENTO DE

LA INFORMACIÓN DE LOS PROCESOS JUDICIALES EN EL CONSORCIO AJ


ABOGADOS

JUAN MANUEL VELA GOMEZ


JHONNATAN CAMILO ORTIZ SORIANO

PROYECTO DE GRADO

CLAUDIA RODRIGUEZ

UNIVERSIDAD DE SAN BUENAVENTURA


FACULTAD DE TECNOLOGÍA
TECNOLOGÍA DE SISTEMAS
BOGOTA D. C.
2.008

1
DESARROLLO DE UN APLICATIVO PARA EL REGISTRO Y SEGUIMIENTO DE
LA INFORMACIÓN DE LOS PROCESOS JUDICIALES EN EL CONSORCIO AJ
ABOGADOS

JUAN MANUEL VELA GOMEZ


JHONNATAN CAMILO ORTIZ SORIANO

UNIVERSIDAD DE SAN BUENAVENTURA


FACULTAD DE TECNOLOGÍA
TECNOLOGÍA DE SISTEMAS
BOGOTA D. C.
2.008

2
Nota de Aceptación:

_________________________________
_________________________________
_________________________________
_________________________________
_________________________________
_________________________________

__________________________________
Firma del presidente del jurado

_________________________________
Firma del jurado

_________________________________
Firma del jurado

Bogotá D. C., 24/05/2008/

3
CONTENIDO

INTRODUCCIÓN ..................................................................................................... 1
1. PLANTEAMIENTO DEL PROBLEMA .............................................................. 2
1.1 ANTECEDENTES .............................................................................................. 2
1.2 DESCRIPCIÓN DEL PROBLEMA ..................................................................... 2
1.3 JUSTIFICACIÓN ................................................................................................ 3
1.4 OBJETIVOS ....................................................................................................... 3
1.4.1 OBJETIVO GENERAL .................................................................................... 3
1.4.2 OBJETIVOS ESPECÍFICOS ........................................................................... 4
1.5 ALCANCES Y LIMITACIONES .......................................................................... 4
1.5.1 ALCANCES..................................................................................................... 4
1.5.2 LIMITACIONES ............................................................................................... 4
2. MARCO DE REFERENCIA............................................................................... 5
2.1 MARCO TEÓRICO – CONCEPTUAL ............................................................... 5
2.1.1 Metodologías .................................................................................................. 5
a. Programación Extrema ........................................................................................ 5
b. Programación RUP .............................................................................................. 5
c. Métrica V3 ........................................................................................................... 6
d. Microsoft Solution Framework (MSF) .................................................................. 6
2.1.2. Lenguajes de programación......................................................................... 10
a. JSP ................................................................................................................... 10
b. PHP .................................................................................................................. 10
2.1.3 Motores de bases de datos ........................................................................... 12
a. PostgreSQL ....................................................................................................... 12
b. MySQL .............................................................................................................. 13
2.2 MARCO LEGAL ........................................................................................... 22
3. METODOLOGÍA ............................................................................................. 23
3.1 ENFOQUE DE LA INVESTIGACIÓN ........................................................... 23

4
3.2 LÍNEA DE INVESTIGACIÓN / SUB-LÍNEA DE FACULTAD/ CAMPO
TEMÁTICO DEL PROGRAMA............................................................................... 23
4. DESARROLLO DEL PROYECTO .................................................................. 24
4.1 FASE 1°- PREVISION ..................................................................................... 24
4.2 FASE 2° - PLANIFICACIÓN............................................................................. 25
4.3 FASE 3° - DESARROLLO ............................................................................... 34
4.4 FASE 4° - ESTABILIZACIÓN ........................................................................... 36
4.5 FASE 5° - IMPLEMENTACIÓN ........................................................................ 36
5. PRESUPUESTO ................................................................................................ 37
BIBLIOGRAFÍA ..................................................................................................... 39
ANEXOS ................................................................................................................ 40
GLOSARIO ............................................................................................................ 61

5
LISTA DE TABLAS

Tabla 1. Cuadro comparativo metodologías…..………………………………………9

Tabla 2. Cuadro lenguajes de programación…………………………………………11

Tabla 3. Cuadro comparativo motores bases de datos……………………………..15

1
LISTA DE FIGURAS

Figura 1. Representación distribuida…………………………………………...……..20

Figura 2. Representación remota……………………………………………...………20

Figura 3. Lógica distribuida…………………………………………………...………..20

Figura 4. Gestión remota de datos…………………………………………………….22

Figura 5. Bases de datos distribuidos……………………………………...………....22

Figura 6. Cliente servidor a tres niveles…………………………………...………….22

Figura 7. Caso de uso contextual…………………………………………...…………25

Figura 8. Caso de uso gerente nivel 1……………………………………...…………25

Figura 9. Caso de uso gerente nivel 2……………………………………...…………26

Figura 10. Caso de uso abogado nivel 1…………………………………...……...…28

Figura 11. Caso de uso abogado nivel 2…………………………………...………...28

Figura 12. Caso de uso administrador 1…………………………………..…………30

Figura 13. Caso de uso administrador 2…………………………………..…………30

Figura 14. Caso de uso secretaria nivel 1………………………………...………….32

Figura 15. Caso de uso secretaria nivel 2………………………………...………….32

2
INTRODUCCIÓN

El mundo de hoy se está globalizando y cada vez se hace más necesario que
todas las partes que conforman esta sociedad se actualicen y estén a la
vanguardia con las demás, por tal motivo las pequeñas empresas en Colombia y
en el mundo buscan sistematizarse para así estar a la altura de las grandes
empresas y poder progresar.

De lo anterior surge la oferta que hace la tecnología para la solución de aquellos


problemas de organización que no permite que una empresa se supere. Muchas
de las labores realizadas hoy en día pueden ser o son más productivas cuando se
utiliza la tecnología o un software, sea cual sea el ámbito en que se esté
trabajando. Lastimosamente el área jurídica en Colombia es uno de los campos
que menos hace uso de la tecnología.

Por tal razón es importante el desarrollo de este proyecto, para mejorar los
procesos en los que son desarrollados en una oficina normal de abogados, dentro
de este trabajo se mostrará una posible solución que se les puede brindar a los
servidores de la Justicia del país.

Con este proyecto se pretende brindar una solución económica y a la medida de


un problema que esta afectando el gremio de los abogados, debido a la falta de un
aplicativo que se encuentre a su alcance en el mercado permitiendo realizar un
buen registro y seguimiento de los procesos; en el país se han desarrollado
software de estas características pero con algunas complicaciones de tipo
económico, de ahí la importancia de su realización.

1
1. PLANTEAMIENTO DEL PROBLEMA

1.1 ANTECEDENTES

A nivel internacional se han encontrado varias páginas en Internet1 que tratan de


algunas aplicaciones o software que son comercializados en países como México
y España, en estos programas se tienen en cuenta varios aspectos como
Jurisprudencia, Leyes y el manejo de los mismos procesos, en realidad son muy
completos y ya son comercializados en estos países, al parecer han tenido un
gran éxito.

En Colombia, la Rama Judicial posee un sistema de información para la gestión


judicial el cual le permite mantener controlado el flujo de información de parte de
los Juzgados, Tribunales, Cortes entre otros. Hasta el momento este sistema ha
funcionado pero con algunos vacíos tanto en la parte jurídica como al nivel de
tecnología, de tal forma que algunas entidades privadas y estatales han generado
su propio sistema de gestión con bases de datos, pero estas se crean únicamente
para el uso exclusivo de estas entidades.

Existen compañías nacionales que también han desarrollado este tipo de software,
tales como Emprex web, Orión jurídica y SGP, estos son comercializados pero
todos están licenciados y los costos son altísimos ya que las empresas tendrían
que pagar por el costo de las licencias para el manejo de los motores de bases de
datos, esto limita a un gran número de usuarios que laboran en microempresas,
oficinas pequeñas, como en el Consorcio AJ Abogados.

1.2 DESCRIPCIÓN DEL PROBLEMA

En el Consorcio AJ abogados a diario se maneja un gran flujo de información del


cual se derivan las diferentes labores, dicha información no es debidamente
organizada por lo cual se pierde veracidad, aumentan los tiempos de respuesta y
se extravían documentos lo cual conlleva a la perdida de diligencias que se
programan en cada uno de los procesos judiciales y como última consecuencia la
perdida de dinero. La falta de un sistema de información eficiente hace que los
procesos se vuelvan más lentos, dispendiosos y se tenga que recurrir a métodos
manuales, como por ejemplo listados hechos a mano o en el mejor de los casos
recurren al uso de programas que no son los mas adecuados para el manejo de
información vital en esta oficina jurídica, ya que en estos aplicativos no manejan
términos jurídicos y se genera contrariedad entre una información y otra, es el
caso de Excel, en el que suelen usar varias tablas para almacenar la misma
información, es decir existe redundancia de información y muchas veces no es la
misma información entre un tabla y otra referente a un mismo caso.

1
Para más información consulte la siguiente dirección: http://sistemas.dgsca.unam.mx/publica/pdf/jur.PDF, 22 de febrero de 2007
8:30 p.m.

2
Por otro lado la información es manipulada por personas ajenas a este oficio y no
existe ningún tipo de seguridad con respecto a la documentación, dado que la
información es sensible y confidencial ya que esta tiene que ver con los datos
personales de cada cliente e información que se relaciona directamente con los
procesos judiciales, como son los datos del demandante, el demandado, el tipo de
proceso y lo que ocurre con cada proceso.

FORMULACIÓN DEL PROBLEMA

¿Cómo desarrollar un software que permita el manejo eficiente y seguro de la


información de los procesos en el Consorcio AJ Abogados?

1.3 JUSTIFICACIÓN

Se hace necesario realizar este proyecto para el área jurídica con el fin de agilizar
todo trámite ejecutado en el Consorcio AJ Abogados, la tecnología siempre ayuda
a mejorar los procesos y si se aplica al ámbito jurídico puede ser muy provechoso
para el mejoramiento de tiempos en cuanto a la resolución de casos y generaría
simplicidad para la secretaria o el mismo abogado al realizar procesos como por
ejemplo; al momento de requerir alguna información sobre algún caso que sea
necesario, además no solo se verían beneficiados los abogados sino también las
personas que acuden a ellos ya que habría una mayor productividad, con esto se
obtendrán mayores ingresos para la oficina ya que si existe una rápida respuesta
se podrá atender nuevos casos y además se reduciría en gastos de papelería
para las listas hechas a mano. Es un proyecto importante que merece ser
desarrollado, del cual se pueden obtener muchas retribuciones económicas ya que
los abogados encontrarían en este aplicativo una gran herramienta.

Además cabe destacar que las aplicaciones que se encuentran disponibles en el


mercado tiene licencias para su funcionamiento por lo cual son muy costosos, este
proyecto se desarrollará en software libre con esto permitirá que el software pueda
ser usado sin necesidad de pagar por una licencia para el motor de base de datos.

1.4 OBJETIVOS

1.4.1 OBJETIVO GENERAL

Desarrollar un aplicativo cliente/servidor para la sistematización de los procesos


judiciales en el consorcio AJ abogados.

3
1.4.2 OBJETIVOS ESPECÍFICOS

 Analizar los procesos de registro y seguimiento de la información jurídica


del consorcio de abogados.

 Determinar los requerimientos funcionales y no funcionales.

 Diseñar el modelo de la base de datos y la interfaz gráfica.

 Implementar el modelo de la base de datos y la interfaz gráfica.

1.5 ALCANCES Y LIMITACIONES

1.5.1 ALCANCES

El trabajo culmina con el desarrollo del aplicativo cliente/servidor para el Consorcio


AJ Abogados. Este aplicativo incluye registro y seguimiento de procesos judiciales
mediante una interfaz gráfica y una base de datos en la cual se almacenará toda
la información, permitiendo al usuario adquirir más confianza sobre la veracidad de
los datos almacenados y la reducción en tiempos en cuanto a la ejecución de los
casos judiciales.

Con el desarrollo de este aplicativo permitirá realizar seguimientos más detallados


de todo proceso realizado en el Consorcio AJ Abogados con toda seguridad,
confianza y respaldo que ofrece esta oficina.

1.5.2 LIMITACIONES

Este proyecto seguirá las normas y leyes vigentes, si en algún momento estas son
modificadas durante o después de la realización del proyecto no serán
contempladas tales modificaciones.

4
2. MARCO DE REFERENCIA

2.1 MARCO TEÓRICO – CONCEPTUAL

2.1.1 Metodologías

a. Programación Extrema

La programación extrema o eXtreme Programming (XP) es un enfoque de la


ingeniería de software formulado por Kent Beck, autor del primer libro sobre la
materia, Extreme Programming Explained: Embrace Change (1999). Es la más
destacada de los procesos ágiles de desarrollo de software. Al igual que éstos, la
programación extrema se diferencia de las metodologías tradicionales
principalmente en que pone más énfasis en la adaptabilidad que en la
previsibilidad. Los defensores de XP consideran que los cambios de requisitos
sobre la marcha son un aspecto natural, inevitable e incluso deseable del
desarrollo de proyectos. Creen que ser capaz de adaptarse a los cambios de
requisitos en cualquier punto de la vida del proyecto es una aproximación mejor y
más realista que intentar definir todos los requisitos al comienzo del proyecto e
invertir esfuerzos después en controlar los cambios en los requisitos. Se puede
considerar la programación extrema como la adopción de las mejores
metodologías de desarrollo de acuerdo a lo que se pretende llevar a cabo con el
proyecto, y aplicarlo de manera dinámica durante el ciclo de vida del software 2.

b. Programación RUP

El Proceso Unificado Racional (Rational Unified Process en inglés,


habitualmente resumido como RUP) es un proceso de desarrollo de software y
junto con el Lenguaje Unificado de Modelado UML, constituye la metodología
estándar más utilizada para el análisis, implementación y documentación de
sistemas orientados a objetos. El RUP no es un sistema con pasos firmemente
establecidos, sino un conjunto de metodologías adaptables al contexto y
necesidades de cada organización.

También se conoce por este nombre al software desarrollado por Rational, hoy
propiedad de IBM, el cual incluye información entrelazada de diversos artefactos y
descripciones de las diversas actividades. Está incluido en el Rational Method
Composer (RMC), que permite la personalización de acuerdo a necesidades.

2
http://es.wikipedia.org/wiki/Programaci%C3%B3n_Extrema, 13 de abril de 2008, hora: 3:10 p.m.

5
Originalmente se diseñó un proceso genérico y de dominio público, el Proceso
Unificado, y una especificación más detallada, el Rational Unified Process, que
se vendiera como producto independiente3

c. Métrica V3

Métrica tiene ya varios años de vida y su actual versión, la 3, se crea con la


finalidad de incorporar las nuevas técnicas derivadas de la programación y el
análisis orientado a objetos, al proceso de desarrollo de software que a través de
esta metodología las administraciones públicas españolas pretenden llevar a cabo.

Métrica debería ser obligatoria en cuantos contratos de desarrollo de software


realiza la administración pública, sin embargo su utilización aún no está
suficientemente universalizada. Todavía es frecuente ver concursos públicos
donde no se establece la obligatoriedad para el contratante de seguir las pautas
de métrica a la hora de llevar a cabo un proceso de construcción de software.

Todo proyecto Métrica 3 consta de un conjunto de fases que se desglosan en


múltiples puntos cuya cronología hay que seguir con claridad para ir avanzando en
el desarrollo del proyecto.4

d. Microsoft Solution Framework (MSF)

La metodología de Microsoft Solution Framework, ya que será muy útil en


proyectos que requieran un desarrollo ágil de primeras versiones funcionales que
luego serán sustituidas por versiones posteriores que las mejoren.
Esta metodología combina los principios de los modelos cascada y espiral,
proponiendo una secuencia generalizada de actividades para el desarrollo de
software. La planificación basada en punto de control y beneficios de la
retroalimentación del cliente constituye un proyecto bien planificado con lo cual
tenemos más posibilidades de éxito en nuestro proyecto. MSF es un proceso para
el manejo de proyecto, el acercamiento al desarrollo rápido con herramientas
CASE y la programación extrema se puede utilizar para poner un proyecto en
ejecución.

3
http://es.wikipedia.org/wiki/Proceso_Unificado_de_Rational, 13 de abril de 2008, 3:21pm
4
http://www.csi.map.es/csi/metrica3/introduccion.pdf, 13 de abril de 2008, 3:32 p.m.

6
Fase 1: Previsión
Fase 2: Planeación
Fase 3: Desarrollo
Fase 4: Estabilización
Fase 5: Implementación

Algunas características de esta metodología son:

 Combina la claridad que plantea el modelo en cascada y las ventajas de los


puntos de transición del modelo en espiral.
 Es un método interativo.
 Administración de riesgos y del proyecto.

Cada una de las fases comprende una parte de desarrollo del proyecto para lo
cual se explicara cada una de las mismas:

a. FASE 1° - PREVISIÓN

Descripción:

- Es la primera fase de modelo MSF


- Se pretende dar una visión general del proyecto.
- Identifica las tareas y los entregables que permiten al equipo a cumplir con los
requerimientos y objetivos del proyecto.
- Esta fase culmina con el punto de control Visión/Alcance.

7
b. FASE 2° - PLANIFICACIÓN

Descripción:

- En esta fase se realiza la preparación de la especificación funcional, diseño de la


solución, planes de trabajo, costes estimados y calendarios para los entregables.
- Implica la recogida y el análisis de los requerimientos de negocio, de usuario,
operacionales y de sistema.

c. FASE 3° - DESARROLLO

Descripción:

- La meta de la fase de desarrollo es la construcción de los elementos y


entregables de la solución, incluidos los códigos de los componentes,
infraestructura (software, hardware, red) y la documentación para el uso de las
operaciones.

d. FASE 4° - ESTABILIZACIÓN

Descripción:

- La solución se pasa un entorno real de exploración.


- Determinar que la solución cumple los criterios de calidad necesarios para pasar
a la fase de despliegue.
- Reproducción de condiciones reales y el equipo se concentra en detectar y
priorizar errores, reparando la solución para su despliegue.

e. FASE 5° - IMPLEMENTACIÓN

Descripción:

- Es la última fase de modelo, en la cual se instalan los componentes, se estabiliza


el proyecto y se obtiene la aprobación por parte del cliente.

Para cumplir con las fases que impone esta metodología se debe tener en cuenta
la elaboración de ciertos diagramas que ayudarán a mejorar el entendimiento de
los procesos que va a realizar el aplicativo.

8
CUADRO COMPARATIVO DE METODOLOGÍAS
MICROSOFT SOLUTION
CRITERIOS PROGRAMACIÓN EXTREMA PROGRAMACIÓN RUP FRAMEWORK (MSF) MÉTRICA V. 3
Tiempo de Adaptable a cualquier tipo de proyecto sin
desarrollo Desarrollo de software a corto plazo Desarrollo de software a largo plazo impedimento de duración Desarrollo de software a largo plazo
Intervención Intervención constante del cliente en cada una
cliente de las iteraciones Intervención indirecta del cliente en le desarrollo Participación directa del cliente El cliente solo interfiere al iniciar el proyecto
El grupo de trabajo se enfocaliza en una misma En equipos dependiendo de la cantidad de
Distribución del trabajo parte del proyecto Se dividen partes del proyecto en grupos personal La realiza un solo equipo de trabajo

9
Tabla 1. Cuadro comparativo metodologías

El equipo se compone de 5 personas por lo cual


Al ser un desarrollo rápido se requiere menos Al ser un desarrollo dispendioso con l eva a más el costo de desarrollo se incrementa
Costos personal inversión gastos Adaptable a la cantidad de personal disponible considerablemente
En cada una de las fases el usuario se ve
Constante, se añaden funcionalidades envuelto por el progreso del proyecto con la cual La retroalimentación solo incluye a los
solicitadas por el cliente a medida que se Por intervalos de tiempo amplios en los que no existen mas probabilidades de éxito en el integrantes del equipo de trabajo más no al
Retroalimentación desarrolla se tiene en cuenta el cliente proyecto cliente
Se obtiene en el momento en el que cliente Los requerimientos se definen al empezar el
Facilidad de Se permiten modificaciones en cualquier fase analíza los entregables en la terminación de Se permiten modificaciones en los puntos de proyecto por lo que la replantación incumbe la
replanteamiento del proyecto cada iteración del proyecto control de cada fase realización del mismo desde el principio
2.1.2. Lenguajes de programación

a. JSP

Con JSP se pueden crear aplicaciones web que se ejecuten en variados


servidores web, de múltiples plataformas, ya que Java es en esencia un lenguaje
multiplataforma. Las páginas JSP están compuestas de código HTML/XML
mezclado con etiquetas especiales para programar scripts de servidor en sintaxis
Java. Por tanto, las JSP podremos escribirlas con nuestro editor HTML/XML
habitual.

El motor de las páginas JSP está basado en los servlets de Java -programas en
Java destinados a ejecutarse en el servidor-, aunque el número de desarrolladores
que pueden afrontar la programación de JSP es mucho mayor, dado que resulta
mucho más sencillo aprender que los servlets.

En JSP creamos páginas de manera parecida a como se crean en ASP o PHP -


otras dos tecnologías de servidor-. Generamos archivos con extensión .jsp que
incluyen, dentro de la estructura de etiquetas HTML, las sentencias Java a
ejecutar en el servidor. Antes de que sean funcionales los archivos, el motor JSP
lleva a cabo una fase de traducción de esa página en un servlet, implementado en
un archivo class (Byte codes de Java). Esta fase de traducción se lleva a cabo
habitualmente cuando se recibe la primera solicitud de la página .jsp, aunque
existe la opción de precompilar en código para evitar ese tiempo de espera la
primera vez que un cliente solicita la página.5

b. PHP

PHP es un lenguaje de programación usado generalmente para la creación de


contenido para sitios Web. PHP es el (acrónimo recursivo de "PHP: Hypertext
Preprocessor", inicialmente PHP Tools, o Personal Home Page Tools) es un
lenguaje interpretado usado para la creación de aplicaciones para servidores, o
creación de contenido dinámico para sitios Web, y últimamente también para la
creación de otro tipo de programas incluyendo aplicaciones con interfaz gráfica
usando la librería GTK+.

Los principales usos del PHP son los siguientes:

 Programación de páginas web dinámicas, habitualmente en combinación


con el motor de base datos MySQL, aunque cuenta con soporte nativo para
otros motores, incluyendo el estándar ODBC, lo que amplía en gran medida
sus posibilidades de conexión.
 Programación en consola, al estilo de Perl o Shell scripting.
5
http://www.desarrolloweb.com/articulos/831.php, 13 de abril de 2008, 5:03 p.m.

10
 Creación de aplicaciones gráficas independientes del navegador, por medio
de la combinación de PHP y Qt/GTK+, lo que permite desarrollar
aplicaciones de escritorio en los sistemas operativos en los que está
soportado.

Características

 Es un lenguaje multiplataforma.
 Capacidad de conexión con la mayoría de los manejadores de base de
datos que se utilizan en la actualidad, destaca su conectividad con MySQL
 Capacidad de expandir su potencial utilizando la enorme cantidad de
módulos (llamados ext's o extensiones).
 Posee una amplia documentación en su página oficial, entre la cual se
destaca que todas las funciones del sistema están explicadas y
ejemplificadas en un único archivo de ayuda.
 Es libre, por lo que se presenta como una alternativa de fácil acceso para
todos.
 Permite las técnicas de Programación Orientada a Objetos.
 Biblioteca nativa de funciones sumamente amplia e incluida
 No requiere definición de tipos de variables.
 Tiene manejo de excepciones.6

Tabla 2. Cuadro comparativo de lenguajes de programación

CUADRO COMPARATIVO LENGUAJES DE PROGRAMACION


CRITERIOS JSP PHP
Se usa cuando son aplicaciones mas complejas Se debe utilizar si la aplicación es sencilla con
Complejidad y que requieren de mas lógica un grado menor de lógica
Requiere un servidor más potente para ejecutar No requiere un servidor de grandes
Tipo de servidor la página web características para ejecutar el proyecto
Tipo de programación Se usa la programación orientada a objetos Se usa programación estructurada
Soporta una cantidad de usuarios es superior a
Cantidad de usuarios 100 Diseñado para soportar pocos usuarios
Existen hosting gratuitos para publicar la página
Costos de hosting Son elevados para publicar la página en internet

6
http://es.wikipedia.org/wiki/.php, 13 de abril de 2008, 5:09 p.m.

11
2.1.3 Motores de bases de datos

a. PostgreSQL

Los sistemas de mantenimiento de Bases de Datos relacionales tradicionales


(DBMS, s) soportan un modelo de datos que consisten en una colección de
relaciones con nombre, que contienen atributos de un tipo específico. En los
sistemas comerciales actuales, los tipos posibles incluyen numéricos de punto
flotante, enteros, cadenas de caracteres, cantidades monetarias y fechas.
Esto generalmente reconocido que este modelo será inadecuado para las
aplicaciones futuras de procesado de datos. El modelo relacional sustituyó
modelos previos en parte por su "simplicidad espartana". Sin embargo, como se
ha mencionado, esta simplicidad también hace muy difícil la implementación de
ciertas aplicaciones. Postgres ofrece una potencia adicional sustancial al
incorporar los siguientes cuatro conceptos adicionales básicos en una vía en la
que los usuarios pueden extender fácilmente el sistema.

 Clases
 Herencia
 Tipos
 Funciones

Otras características aportan potencia y flexibilidad adicional:

 Restricciones (Constraints)
 Disparadores (triggers)
 Reglas (rules)
 Integridad transaccional

Estas características colocan a Postgres en la categoría de las Bases de Datos


identificadas como objeto-relacionales. Nótese que éstas son diferentes de las
referidas como orientadas a objetos, que en general no son bien aprovechables
para soportar lenguajes de Bases de Datos relacionales tradicionales. Postgres
tiene algunas características que son propias del mundo de las bases de datos
orientadas a objetos. De hecho, algunas Bases de Datos comerciales han
incorporado recientemente características en las que Postgres fue pionera.7

7
http://es.tldp.org/Postgresql-es/web/navegable/tutorial/intro.html, 13 de abril de 2008, 5:20 p.m.

12
b. MySQL

MySQL es un sistema de gestión de base de datos relacional, multihilo y


multiusuario con más de seis millones de instalaciones. MySQL AB desarrolla
MySQL como software libre en un esquema de licenciamiento dual. Por un lado lo
ofrece bajo la GNU GPL, pero, empresas que quieran incorporarlo en productos
privativos pueden comprar a la empresa una licencia que les permita ese uso.
Está desarrollado en su mayor parte en ANSI C. Al contrario de proyectos como el
Apache, donde el software es desarrollado por una comunidad pública, y el
copyright del código está en poder del autor individual, MySQL es propiedad y está
patrocinado por una empresa privada, que posee el copyright de la mayor parte
del código. Esto es lo que posibilita el esquema de licenciamiento anteriormente
mencionado. Además de la venta de licencias privativas, la compañía ofrece
soporte y servicios. Para sus operaciones contratan trabajadores alrededor del
mundo que colaboran vía Internet. MySQL AB fue fundado por David Axmark,
Allan Larsson, y Michael Widenius.

Aplicaciones

MySQL es muy utilizado en aplicaciones web como MediaWiki o Drupal, en


plataformas (Linux/Windows-Apache-MySQL-PHP/Perl/Python), y por
herramientas de seguimiento de errores como Bugzilla. Su popularidad como
aplicación web está muy ligada a PHP, que a menudo aparece en combinación
con MySQL. MySQL es una base de datos muy rápida en la lectura cuando utiliza
el motor no transaccional MyISAM, pero puede provocar problemas de integridad
en entornos de alta concurrencia en la modificación. En aplicaciones web hay baja
concurrencia en la modificación de datos y en cambio el entorno es intensivo en
lectura de datos, lo que hace a MySQL ideal para este tipo de aplicaciones.

MySQL funciona sobre múltiples plataformas, incluyendo AIX, BSD, FreeBSD, HP-
UX, GNU/Linux, Mac OS X, NetBSD, Novell NetWare, OpenBSD, OS/2 Warp,
QNX, SGI IRIX, Solaris, SunOS, SCO OpenServer, SCO UnixWare, Tru64,
Windows 95, Windows 98, Windows NT, Windows 2000, Windows XP, Windows
Vista y otras versiones de Windows.

MySQL es un sistema de administración de bases de datos. Una base de datos es


una colección estructurada de tablas que contienen datos. Esta puede ser desde
una simple lista de compras a una galería de pinturas o el vasto volumen de
información en una red corporativa. Para agregar, acceder y procesar datos
guardados en un computador, se necesita un administrador como MySQL Server.
Dado que los computadores son muy buenos manejando grandes cantidades de
información, los administradores de bases de datos juegan un papel central en
computación, como aplicaciones independientes o como parte de otras
aplicaciones.

13
MySQL es un sistema de administración relacional de bases de datos. Una base
de datos relacional archiva datos en tablas separadas en vez de colocar todos los
datos en un gran archivo. Esto permite velocidad y flexibilidad. Las tablas están
conectadas por relaciones definidas que hacen posible combinar datos de
diferentes tablas sobre pedido.

MySQL es software de fuente abierta. Fuente abierta significa que es posible para
cualquier persona usarlo y modificarlo. Cualquier persona puede bajar el código
fuente de MySQL y usarlo sin pagar. Cualquier interesado puede estudiar el
código fuente y ajustarlo a sus necesidades. MySQL usa el GPL (GNU General
Public License) para definir qué puede hacer y que no puede hacer con el software
en diferentes situaciones. Si no se ajusta al GLP o requiere introducir código
MySQL en aplicaciones comerciales, se puede comprar una versión comercial
licenciada.

Características Distintivas

Las siguientes características son implementadas únicamente por MySQL:

 Múltiples motores de almacenamiento (MyISAM, Merge, InnoDB, BDB,


Memory/heap, MySQL Cluster, Federated, Archive, CSV, Blackhole y
Example en 5.x), permitiendo al usuario escoger la que sea más adecuada
para cada tabla de la base de datos.
 Agrupación de transacciones, reuniendo múltiples transacciones de varias
conexiones para incrementar el número de transacciones por segundo.

Características Generales

 Un amplio subconjunto de ANSI SQL 99, y varias extensiones.


 Soporte a Multiplataforma.
 Procedimientos almacenados.
 Triggers
 Cursors
 Vistas Actualizables.
 Soporte a Varchar.
 Information Schema.
 Modo Strict.
 Motores de almacenamiento independientes (MyISAM para lecturas rápidas,
InnoDB para transacciones e integridad referencial).
 Transacciones con los motores de almacenamiento InnoDB, BDB Y Cluster;
puntos de recuperación (savepoints) con InnoDB.
 Soporte para SSL.
 Query caching.

14
 Sub-SELECTs (o SELECTs anidados).
 Indexing y buscando campos de texto completos usando el motor de
almacenamiento MyISAM.
 Soporte completo para Unicode.
 Conforme a las reglas ACID usando los motores InnoDB, BDB y Cluster.
 Uso de multihilos mediante hilos del kernel.
 Usa tablas en disco b-tree para búsquedas rápidas con compresión de índice.
 Completo soporte para cláusulas group by y order by, soporte de funciones de
agrupación.
 Completo soporte para operadores y funciones en cláusulas select y where.
 Soporta gran cantidad de datos. MySQL Server tiene bases de datos de hasta
50 millones de registros.
 Se permiten hasta 64 índices por tabla (32 antes de MySQL 4.1.2). Cada
índice puede consistir desde 1 hasta 16 columnas o partes de columnas. El
máximo ancho de límite son 1000 bytes (500 antes de MySQL 4.1.2).8

Tabla 3. Cuadro comparativo motores bases de datos

CUADRO COMPARATIVO MOTORES BASES DE DATOS


CRITERIOS MySQL PostgreSQL
Soporta bases de datos pequeñas con poca Garantiza un número ilimitado de bases de datos
Crecimiento cantidad de datos y tablas con tamaño de hasta 32 TB
Gran parte de la documentación se encuentra en
La documentación es amplia y de gran variedad inglés, además es escasa y en Colombia hasta
Soporte de autores, en varios idiomas ahora se esta masificando
Modelo Trabaja con modelo de datos relacional Trabaja con modelo de datos relacional
Consume pocos lo que lo hace muy adaptable a Consume gran cantidad de recursos de la
Recursos máquinas con pocos recursos máquina
Es dos o tres veces mas lento que MySQL en
Velocidad de transacción Al momento de hacer operaciones es muy ágil cuanto a la realización de operaciones

8
http://es.wikipedia.org/wiki/MySQL, 13 de abril de 2008, 5:23p.m.

15
2.1.4 Lenguaje Unificado Modelado

Lenguaje Unificado de Modelado (UML, por sus siglas en inglés, Unified


Modeling Language) es el lenguaje de modelado de sistemas de software más
conocido y utilizado en la actualidad; aún cuando todavía no es un estándar oficial,
está respaldado por el OMG (Object Management Group). Es un lenguaje gráfico
para visualizar, especificar, construir y documentar un sistema de software. UML
ofrece un estándar para describir un "plano" del sistema (modelo), incluyendo
aspectos conceptuales tales como procesos de negocios y funciones del sistema,
y aspectos concretos como expresiones de lenguajes de programación, esquemas
de bases de datos y componentes de software reutilizables.

Es importante resaltar que UML es un "lenguaje" para especificar y no para


describir métodos o procesos. Se utiliza para definir un sistema de software, para
detallar los artefactos en el sistema y para documentar y construir. En otras
palabras, es el lenguaje en el que está descrito el modelo. Se puede aplicar en
una gran variedad de formas para dar soporte a una metodología de desarrollo de
software (tal como el Proceso Unificado de Rational) pero no especifica en sí
mismo qué metodología o proceso usar.

UML cuenta con varios tipos de diagramas, los cuales muestran diferentes
aspectos de las entidades representadas. En UML 2.0 hay 13 tipos diferentes de
diagramas. Para comprenderlos de manera concreta, a veces es útil categorizarlos
jerárquicamente, como son:

Diagramas de estructura enfatizan en los elementos que deben existir en el


sistema modelado:

 Diagrama de Clases.
 Diagrama de Componentes.
 Diagrama de Objetos.
 Diagrama de Estructura Compuesta.
 Diagrama de Despliegue.
 Diagrama de Paquetes.

Diagramas de comportamiento enfatizan en lo que debe suceder en el sistema


modelado:

 Diagrama de Actividades.
 Diagrama de Casos de Uso.
 Diagrama de Estados.

16
Diagramas de Interacción, un subtipo de diagramas de comportamiento, que
enfatiza sobre el flujo de control y de datos entre los elementos del sistema
modelado:

 Diagrama de Secuencia.
 Diagrama de Colaboración.
 Diagrama de Tiempos.
 Diagrama de Vista de Interacción.

2.1.5 Sistemas Distribuidos

Sistemas cuyos componentes hardware y software, que están en ordenadores


conectados en red, se comunican y coordinan sus acciones mediante el paso de
mensajes, para el logro de un objetivo. Se establece la comunicación mediante un
protocolo prefijado por un esquema cliente-servidor.

Características:

 Concurrencia.- Esta característica de los sistemas distribuidos permite que


los recursos disponibles en la red puedan ser utilizados simultáneamente
por los usuarios y/o agentes que interactúan en la red.
 Carencia de reloj global.- Las coordinaciones para la transferencia de
mensajes entre los diferentes componentes para la realización de una
tarea, no tienen una temporización general, esta más bien distribuida a los
componentes.
 Fallos independientes de los componentes.- Cada componente del
sistema puede fallar independientemente, con lo cual los demás pueden
continuar ejecutando sus acciones. Esto permite el logro de las tareas con
mayor efectividad, pues el sistema en su conjunto continua trabajando.

a. Cliente-Servidor

Sistema donde el cliente es una máquina que solicita un determinado servicio y se


denomina servidor a la máquina que lo proporciona. Los servicios pueden ser:

 Ejecución de un determinado programa.


 Acceso a un determinado banco de información.
 Acceso a un dispositivo de hardware.

Es un elemento primordial, la presencia de un medio físico de comunicación entre


las máquinas, y dependerá de la naturaleza de este medio la viabilidad del
sistema.

17
Categorías de Servidores:

A continuación se presenta una lista de los servidores más comunes:

 Servidores de archivos.- Proporciona archivos para clientes. Si los


archivos no fueran tan grandes y los usuarios que comparten esos archivos
no fueran muchos, esto sería una gran opción de almacenamiento y
procesamiento de archivos. El cliente solicita los archivos y el servidor los
ubica y se los envía.

 Servidores de Base de Datos.- Son los que almacenan gran cantidad de


datos estructurados, se diferencian de los de archivos pues la información
que se envía está ya resumida en la base de datos. Ejemplo: El Cliente
hace una consulta, el servidor recibe esa consulta (SQL) y extrae solo la
información pertinente y envía esa respuesta al cliente.

 Servidores de Software de Grupo.- El software de grupo es aquel, que


permite organizar el trabajo de un grupo. El servidor gestiona los datos que
dan soporte a estas tareas. Por ejemplo: almacenar las listas de correo
electrónico. El Cliente puede indicarle, que se ha terminado una tarea y el
servidor se lo envía al resto del grupo.

 Servidores WEB.- Son los que guardan y proporcionan Páginas HTML. El


cliente desde un browser o link hace un llamado de la página y el servidor
recibe el mensaje y envía la página correspondiente.

 Servidores de correo.- Gestiona el envío y recepción de correo de un


grupo de usuarios (el servidor no necesita ser muy potente). El servidor solo
debe utilizar un protocolo de correo.

 Servidor de objetos.- Permite almacenar objetos que pueden ser


activados a distancia. Los clientes pueden ser capaces de activar los
objetos que se encuentran en el servidor.

 Servidores de impresión.- Gestionan las solicitudes de impresión de los


clientes. El cliente envía la solicitud de impresión, el servidor recibe la
solicitud y la ubica en la cola de impresión, ordena a la impresora que lleve
a cabo las operaciones y luego avisa a la computadora cliente que ya
acabo su respectiva impresión.

 Servidores de aplicación.- Se dedica a una única aplicación. Es


básicamente una aplicación a la que pueden acceder los clientes.

18
Arquitecturas Cliente / Servidor

A continuación mostramos las arquitecturas cliente-servidor más populares:

 Arquitectura Cliente-Servidor de Dos Capas.- Consiste en una capa de


presentación y lógica de la aplicación; y la otra de la base de datos.
Normalmente esta arquitectura se utiliza en las siguientes situaciones:

 Cuando se requiera poco procesamiento de datos en la


organización.
 Cuando se tiene una base de datos centralizada en un solo
servidor.
 Cuando la base de datos es relativamente estática.
 Cuando se requiere un mantenimiento mínimo.

 Arquitectura Cliente-Servidor de Tres Capas- Consiste en una capa de la


Presentación, otra capa de la lógica de la aplicación y otra capa de la base
de datos. Normalmente esta arquitectura se utiliza en las siguientes
situaciones:

 Cuando se requiera mucho procesamiento de datos en la


aplicación.
 En aplicaciones donde la funcionalidad este en constante
cambio.
 Cuando los procesos no están relativamente muy
relacionados con los datos.
 Cuando se requiera aislar la tecnología de la base de datos
para que sea fácil de cambiar.
 Cuando se requiera separar el código del cliente para que se
facilite el mantenimiento.
 Esta muy adecuada para utilizarla con la tecnología orientada
a objetos.

Clasificación de los sistemas cliente servidor:

A continuación mostramos la clasificación de de los sistemas cliente/servidor de


acuerdo al nivel de abstracción del servicio que ofrecen:

a. Representación distribuida.- La interacción con el usuario se realiza en el


servidor, el cliente hace de pasarela entre el usuario y el servidor.

19
Figura 1. Representación distribuida

b. Representación Remota.-La lógica de la aplicación y la base de datos se


encuentran en el servidor. El cliente recibe y formatea los datos para interactuar
con el usuario.

Figura 2. Representación remota

c. Lógica Distribuida.- El cliente se encarga de la interacción con el usuario y de


algunas funciones triviales de la aplicación. Por ejemplo controles de rango de
campos, campos obligatorios, etc. Mientras que el resto de la aplicación, junto con
la base de datos, están en el servidor.

Figura 3. Lógica distribuida

20
d. Gestión Remota de Datos.- El cliente realiza la interacción con el usuario y
ejecuta la aplicación y el servidor es quien maneja los datos.

Figura 4. Gestión remota de datos

e. Base de Datos Distribuidas.- El cliente realiza la interacción con el usuario,


ejecuta la aplicación, debe conocer la topología de la red, así como la disposición
y ubicación de los datos. Se delega parte de la gestión de la base de datos al
cliente.

Figura 5. Bases de datos distribuidos

f. Cliente servidor a tres niveles.- El cliente se encarga de la interacción con el


usuario, el servidor de la lógica de aplicación y la base de datos puede estar en
otro servidor.

Figura 6. Cliente servidor a tres niveles

21
2.2 MARCO LEGAL

Colombia es un Estado Social de Derecho, que garantiza la convivencia, la


participación, la justicia y los derechos de todos los ciudadanos a través de su
constitución política como norma suprema, presentando una serie de principios
generales protegen los derechos fundamentales de las personas, como también
normas básicas que permiten la organización del Estado tanto política,
administrativa, como territorialmente. Paralelamente a la Constitución Nacional
existen unas normas inferiores, pero no menos importantes, que nos regulan en
casos y situaciones especificas, que no permiten también ejercer nuestros
derechos como también nos dicta lo deberes que debemos cumplir como
ciudadanos de este país.

El derecho está dividido en ramas, y estas son las siguientes: CIVIL, PENAL,
COMERCIAL, ADMINISTRATIVO, LABORAL, POLICIVO, DE FAMILIA Y
AGRARIO, en lo que respecta a nuestro trabajo nos vamos a centrar únicamente
en el ramo civil, para dar una limitación al desarrollo del mismo.

Para el caso de este proyecto se aplica una de estas ramas, la CIVIL, que compila
sus normas en el Código Civil; el Código Civil tiene sus orígenes en chile
mediados del siglo XIX, gracias a dos Andrés Bello quien fue su creador.

El código civil rige las relaciones entre personas ya sea Naturales o Jurídicas,
como por ejemplo de las personas en cuanto a su nacionalidad y domicilio, en
cuanto al principio y fin de la existencia de las personas, del matrimonio en cuanto
a la nulidad, efectos y disolución, de las obligaciones y derechos entre cónyuges,
también de los bienes y de su dominio, uso y goce, de la sucesión por causa de
muerte y de las donaciones entre vivos y de las obligaciones en general y de los
contratos.

22
3. METODOLOGÍA

3.1 ENFOQUE DE LA INVESTIGACIÓN

Empírico-analítico: cuyo interés es el técnico, orientado a la interpretación y


transformación del mundo material.

3.2 LÍNEA DE INVESTIGACIÓN / SUB-LÍNEA DE FACULTAD/ CAMPO


TEMÁTICO DEL PROGRAMA

Tecnologías Actuales y Sociedad / Sistema de Información y Comunicación /


Desarrollo de Software.

23
4. DESARROLLO DEL PROYECTO

A partir del análisis de las metodologías ya mencionadas se define que la


metodología más adecuada para la realización de este proyecto es la Microsoft
Solution Framework ya que esta metodología ofrece una comunicación directa con
el cliente, una amplia documentación del proyecto y además se acomoda a los
tiempos de desarrollo.

Ya definida la metodología a utilizar se procede a desarrollar cada una de sus


fases de la siguiente manera.

4.1 FASE 1°- PREVISION

Esta fase que fue conceptualizada en el marco teórico comprende la definición del
problema, los antecedentes, los objetivos generales y específicos, los alcances y
limitaciones, por ende esta fase desarrollada en el capítulo 1 del presente
proyecto, lo único que no se encuentra definido dentro del capítulo nombrado son
los requerimientos definidos por el usuario, estos se nombraran a continuación:

REQUERIMIENTOS FUNCIONALES

 Registrar información completa de los clientes: Número de Cédula, Nombre,


Apellido, Dirección, Teléfono Fijo, Teléfono Móvil, Barrio, Localidad.
 Registrar información de los procesos judiciales con: Número de proceso,
Código de Juzgado, Código Tipo Proceso, Número de Documento de la
Contraparte, Nombre, Apellido, dirección, teléfono de la Contraparte.
 Vincular la información de los clientes almacenada a un formulario que
muestre los datos de la cedula, dirección, teléfono, etc.
 Vincular la información de los procesos almacenada a un formulario que
muestre los datos del número del proceso, el demandante, el historial de las
actuaciones, etc.
 La aplicación debe calcular los términos de las actuaciones e informar
cuando en un proceso se esté venciendo un término.
 Restringir el acceso a ciertas funciones, de acuerdo al perfil del usuario.
 La información de los barrios debe contener también la información de la
localidad a la que pertenece.
 Cada cliente debe estar ligado a un número de carpeta, el cual corresponde
a un número de proceso y cada proceso a un juzgado.
 Actualizar la información de los clientes

24
REQUERIMIENTOS NO FUNCIONALES

 El proyecto debe ser desarrollado en herramientas de software libre


 Los equipos deben poseer un mínimo de componentes físicos que
permitirán funcionamiento correcto del software
 El aplicativo debe ser desarrollado en ambiente web

4.2 FASE 2° - PLANIFICACIÓN

Esta fase comprende el diseño del aplicativo que ayudara a tener un punto base
para el desarrollo del mismo, para esto la metodología nos exige varios modelos
que deben implementarse para un mejor entendimiento del funcionamiento del
software.

Figura 7. Caso de Uso Contextual

ABOGADO

APLICATIVO PARA EL REGISTRO Y


SEGUIMIENTO DE LA INFORMACIÓN
DE LOS PROCESOS JUDICIALES EN
EL CONSORCIO AJ ABOGADOS
SECRETARIA GERENTE

ADMINISTRADOR

Descripción caso de uso contextual:

Este caso de uso demuestra los actores que intervienen en el aplicativo de una
manera muy general, sin tener un caso de uso concreto dentro del diagrama.

25
Figura 8. Caso de Uso Gerente Nivel 1

Registrar
Validar Usuario

«extends»

Consultar
«extends»

Autenticar Usuario
«extends»

Actualizar
«extends»

GERENTE

Validar Contraseña
Eliminar

Figura 9. Caso de Uso Gerente Nivel 2

«inherits» Registrar Usuarios

«inherits»
Registrar Registrar
Actuaciones
Validar Usuario «inherits»

«extends»

«extends»
Registrar Procesos

Consultar «inherits»
«extends»
Consultar Clientes
«inherits»
Autenticar Usuario
«extends»

Consulta Procesos
«extends» Actualizar
«inherits»
GERENTE «extends»

Actualizar Clientes
«inherits»
Validar Clave

Eliminar Actualizar
Actuaciones
«inherits»

Eliminar Usuarios

26
Descripción caso de uso Gerente:

El gerente posee dentro del sistema el permiso para realizar cualquier proceso:
registrar, consultar, actualizar y eliminar. Para ello se requiere validación de un
usuario y contraseña.

Flujo de Eventos

1. El actor introduce el usuario, la contraseña y luego pulsa el botón ingresar.

2. El sistema muestra los vínculos que lo llevará a las diferentes funciones que
maneja el sistema.

3. Dependiendo de la opción escogida por el actor este será llevado a una


interfaz diferente, cada una de estas cumple unas funciones específicas
dentro del sistema, como es registrar, consultar, actualizar o eliminar.

4. Dentro de la opción registrar se encuentran varias opciones que el actor


puede elegir como registrar usuarios, actuaciones y procesos, en cada una
de estas se registran datos en especifico tal y como su nombre lo indica.

5. Dentro de la opción consultar se encuentran opciones que permitirán una


búsqueda efectiva del contenido de la base de datos como son consultar
clientes y procesos.

6. Dentro de la opción actualizar se encuentran opciones que permitirán


modificar los datos de los clientes y de las actuaciones.

7. Dentro de la opción eliminar le permitirá al actor eliminar únicamente


usuarios.

Flujos Alternativos

 Cuando el usuario y contraseña son inválidos arrojará un mensaje de error.

 Si el actor desea consultar un usuario y este no existe arrojará un mensaje


de error.

 Si el actor desea eliminar un usuario y este no existe arrojará un mensaje


de error.

27
Precondiciones

 El usuario debe estar registrado en la base de datos para poder validar

 El usuario no podrá realizar ninguna acción que no esté autorizada por el


administrador.

 Los registros que se quieran consultar, eliminar deben estar previamente


registrados en la base de datos

Figura 10. Caso de Uso Abogado Nivel 1

Registrar
Validar Usuario

«extends»

«extends»
Autenticar Usuario Consultar

«extends»

ABOGADO

Validar Contraseña
Actualizar

Figura 11. Caso de Uso Abogado Nivel 2

«inherits» Registrar
Validar Usuario Registrar Actuaciones

«inherits»
«extends» «extends»
Registrar Procesos

«extends» «inherits»
Autenticar Usuario Consultar Consultar Clientes

«inherits»

«extends» «extends» Consulta Procesos


ABOGADO

«inherits»
Validar Clave Actualizar Actualizar
Actuaciones

28
Descripción caso de uso Abogado:

El abogado posee dentro del sistema el permiso para realizar ciertos procesos:
registrar, consultar y actualizar. Para ello se requiere validación de un usuario y
contraseña.

Flujo de Eventos

1. El actor introduce el usuario, la contraseña y luego pulsa el botón ingresar.

2. El sistema muestra los vínculos que lo llevará a las diferentes funciones que
maneja el sistema.

3. Dependiendo de la opción escogida por el actor este será llevado a una


interfaz diferente, cada una de estas cumple unas funciones específicas
dentro del sistema, como es registrar, consultar y actualizar.

4. Dentro de la opción registrar se encuentran varias opciones que el actor


puede elegir como registrar procesos y actuaciones, en cada una de estas
se registran datos en especifico tal y como su nombre lo indica.

5. Dentro de la opción consultar se encuentran opciones que permitirán una


búsqueda efectiva del contenido de la base de datos como son consultar
clientes y procesos.

6. Dentro de la opción actualizar la única opción que puede efectuar el actor


es modificar las actuaciones.

Flujos Alternativos

 Cuando el usuario y contraseña son inválidos arrojará un mensaje de error.

 Si el actor desea consultar un cliente y este no existe arrojará un mensaje


de error.

Precondiciones

 El usuario debe estar registrado en la base de datos para poder validar

 El usuario no podrá realizar ninguna acción que no esté autorizada por el


administrador.

 Los registros que se quieran consultar deben estar previamente registrados


en la base de datos

29
Figura 12. Caso de Uso Administrador Nivel 1

Registrar
Validar Usuario

«extends»

Consultar
«extends»

Autenticar Usuario
«extends»

Actualizar
«extends»

ADMINISTRADOR

Validar Contraseña
Eliminar

Figura13. Caso de Uso Administrador Nivel 2

«inherits» Registrar Usuarios

«inherits»
Registrar Registrar
Actuaciones
Validar Usuario «inherits»

«extends»

«extends»
Registrar Procesos

Consultar «inherits»
«extends»
Consultar Clientes
«inherits»
Autenticar Usuario
«extends»

Consulta Procesos
«extends» Actualizar
«inherits»
ADMINISTRADOR «extends»

Actualizar Clientes
«inherits»
Validar Clave

Eliminar Actualizar
Actuaciones
«inherits»

Eliminar Usuarios

30
Descripción caso de uso Administrador:

El administrador posee dentro del sistema el permiso para realizar cualquier


proceso: registrar, consultar, actualizar y eliminar. Para ello se requiere validación
de un usuario y contraseña.

Flujo de Eventos

1. El actor introduce el usuario, la contraseña y luego pulsa el botón ingresar.

2. El sistema muestra los vínculos que lo llevará a las diferentes funciones que
maneja el sistema.

3. Dependiendo de la opción escogida por el actor este será llevado a una


interfaz diferente, cada una de estas cumple unas funciones específicas
dentro del sistema, como es registrar, consultar, actualizar o eliminar.

4. Dentro de la opción registrar se encuentran varias opciones que el actor


puede elegir como registrar usuarios, actuaciones y procesos en cada una
de estas se registran datos en especifico tal y como su nombre lo indica.

5. Dentro de la opción consultar se encuentran opciones que permitirán una


búsqueda efectiva del contenido de la base de datos como son consultar
clientes y procesos.

6. Dentro de la opción actualizar se encuentran opciones que permitirán


modificar los datos de los clientes y de las actuaciones.

7. Dentro de la opción eliminar le permitirá al actor eliminar únicamente


usuarios.

Flujos Alternativos

 Cuando el usuario y contraseña son inválidos arrojará un mensaje de error.

 Si el actor desea consultar un usuario y este no existe arrojará un mensaje


de error.

 Si el actor desea eliminar un usuario y este no existe arrojará un mensaje


de error.

Precondiciones

 El usuario debe estar registrado en la base de datos para poder validar.

31
 Los registros que se quieran consultar, eliminar deben estar previamente
registrados en la base de datos

Figura 14. Caso de Uso Secretaria Nivel 1

Registrar
Validar Usuario

«extends»

«extends»
Autenticar Usuario Consultar

«extends»

SECRETARIA

Validar Contraseña
Actualizar

Figura 15. Caso de Uso Secretaria Nivel 2

«hereda» Registrar
Validar Usuario Registrar Actuaciones

«hereda»

«extends» «extends»
Registrar Procesos

«extends» «hereda»
Autenticar Usuario Consultar Consultar Clientes

«hereda»

«extends» «extends» Consulta Procesos


SECRETARIA

«hereda»
Validar Clave Actualizar Actualizar Clientes

32
Descripción caso de uso Secretaria:

La secretaria posee dentro del sistema el permiso para realizar ciertos procesos:
registrar, consultar y actualizar. Para ello se requiere validación de un usuario y
contraseña.

Flujo de Eventos

1. El actor introduce el usuario, la contraseña y luego pulsa el botón ingresar.

2. El sistema muestra los vínculos que lo llevará a las diferentes funciones que
maneja el sistema.

3. Dependiendo de la opción escogida por el actor este será llevado a una


interfaz diferente, cada una de estas cumple unas funciones específicas
dentro del sistema, como es registrar, consultar y actualizar.

4. Dentro de la opción registrar se encuentran varias opciones que el actor


puede elegir como registrar procesos y actuaciones, en cada una de estas
se registran datos en especifico tal y como su nombre lo indica.

5. Dentro de la opción consultar se encuentran opciones que permitirán una


búsqueda efectiva del contenido de la base de datos como son consultar
clientes y procesos.

6. Dentro de la opción actualizar la única opción que puede efectuar el actor


es modificar las actuaciones.

Flujos Alternativos

 Cuando el usuario y contraseña son inválidos arrojará un mensaje de error.

 Si el actor desea consultar un cliente y este no existe arrojará un mensaje


de error.

Precondiciones

 El usuario debe estar registrado en la base de datos para poder validar.

 Los registros que se quieran consultar deben estar previamente registrados


en la base de datos.

33
4.3 FASE 3° - DESARROLLO

Para este desarrollo se elaboraron cuadros comparativos que se muestran en el


marco teórico, cada uno de ellos se elaboró con el fin de facilitar la definición de la
mejor y más aplicable tecnología para el proyecto.

De acuerdo a la documentación relacionada con los servidores para el proyecto


aplican los sistemas distribuidos, el sistema cliente-servidor con el cual se podrá
implementar un tipo de servidor que permita ubicar la base de datos en un solo
equipo y que los demás se conecten y envíen al servidor las sentencias SQL para
que sean ejecutadas en el motor de base de datos; para esto se utilizará un
servidor de base datos que permitirá hacer lo anterior, por los elementos físicos
existentes en la oficina y además por qué no requieren dentro del proyecto se
puede decir que no aplica ningún otro tipo de servidor.

El cuadro comparativo sobre los lenguajes compara dos lenguajes de


programación libres JSP y PHP, del análisis de este cuadro se pudo definir que el
lenguaje más adecuado para el desarrollo de la aplicación web es PHP por la
lógica del mismo y porque PHP se ajusta más a las necesidades que este
requiere.

Por último un cuadro donde se comparan los motores de base de datos, MySQL y
PostgreSQL, aunque ambos son libres y similares se encontró que el más
adecuado es MySQL, por la rapidez al generar las transacciones, la amplia
documentación que facilita el desarrollo, consume pocos recursos de máquina y
además de esto el motor se adapta fácilmente al lenguaje de programación
seleccionado anteriormente.

Después de haber seleccionado, el lenguaje y el motor de base de datos se


procede a instalar un paquete llamado AppServ v. 2.5.9 que incluye:

 Apache Web Server v. 2.2.4


 PHP Script Language v. 5.2.3
 MySQL Database v. 5.0.45

Este paquete brinda las herramientas necesarias para el montaje de los diseños
elaborados previamente, estas herramientas son un servidor web, un soporte de
librerías PHP para desarrollar la interfaz y un motor de base de datos.

Para el desarrollo de la base de datos se usó la herramienta case llamada


DBDesigner 4, lo que permitió hacer más fácil y rápido la implementación de las
tablas.

34
Para el diseño de las interfaces y la programación se instala la aplicación Adobe
Dreamweaver CS3.

Dentro de la aplicación se utilizó una función que suma fechas, esta se uso para
determinar la fecha fin del termino para poder mostrarla en los mensajes que se
encuentran en todas las interfaces, esta función consiste en pasar la fecha a
segundos y luego suma los días que se determinen también en segundos,
después devuelve la fecha en el formato original ya con los días sumados:

function suma_fechas1($fecha, $ndias)

{
list($año, $mes, $dia) = split("-",$fecha);
$nueva = mktime(0,0,0, $mes,$dia,$año) + $ndias * 24 * 60 * 60;
$nuevafecha = date("Y-m-d",$nueva);

return ($nuevafecha);

En cuanto a las líneas especiales de código se encuentran las de conexión a la


base de datos, estas consisten en pasar un usuario y una clave al motor de base
de datos para que valide el acceso y se abra la conexión.

$link=mysql_connect ("localhost", "root", "root");

Después de crear el string de conexión se debe seleccionar la base de datos que


se va a trabajar en esta sentencia también exige el string de conexión como
parámetro

mysql_select_db ("consorcio", $link);

Por último se debe generar el query con lo que se ejecutara una acción sobre la
base de datos, estas acciones pueden ser de consulta, actualización, eliminación y
de inserción

$query = mysql_query("select nombre_act, n_dias from


tipo_actuacion where cod_tipo_act ='$cod'");

Por último se debe cerrar la conexión a la base de datos con la siguiente


sentencia que pide como parámetro el string de conexión:

mysql_close($link);

35
Esta función mysql_close() cierra el enlace con la base MySQL que está asociada
con el identificador de enlace especificado ($link). Si no se especifica el
identificador de enlace, se asume por defecto el último enlace. Normalmente no es
necesario cerrar el enlace ya que la aperturas no son persistentes, son cerradas
automáticamente al final de la ejecución del script.

Se usó un JavaScript para generar alertas de diferentes tipos ya que el lenguaje


PHP no permite hacer este tipo de avisos, como se muestra en la siguiente
sintaxis:

echo" <script language='JavaScript'>


alert('no se registro'); </script>";

Para facilitar el diseño de las interfaces se obtuvieron libremente plantillas que


fueron modificadas a solicitud del cliente, lo que permitió dar un aspecto agradable
y sencillo a la aplicación.

4.4 FASE 4° - ESTABILIZACIÓN

La fase estabilización no aplica por qué no está definido en el alcance del


proyecto.

4.5 FASE 5° - IMPLEMENTACIÓN

La fase implementación no aplica por qué no está definido en el alcance del


proyecto.

36
5. PRESUPUESTO

PRESUPUESTO
CONCEPTO VALOR UNIDAD CANTIDAD VALOR TOTAL
ASESOR $20.000/HORA 16 $ 320.000
LIBROS $60.000/C/U 2 $ 120.000
INTERNET $25.000/MES 5 $ 125.000
PAPELERIA $ 70.000 $ 70.000
TOTAL $ 635.000

37
6. CONCLUSIONES

 Entre las diferentes metodologías que se confrontaron a través de un


cuadro comparativo, se esclarecieron todas las características de cada una,
por lo cual se escogió la metodología a Microsoft Solution Framework
(MSF), lo que permitió un desarrollo ágil del aplicativo.

 Las herramientas case y los frameworks mejoran los tiempos de desarrollo


proporcionando código predefinido y funciones ejecutables de una manera
sencilla.

 El gremio de los abogados no cuenta con la tecnología para trabajar de una


manera eficiente generando problemas de tiempos y la complicación de los
casos judiciales.

38
BIBLIOGRAFÍA

BOOCH Grady, RUMBAUGH James, JACOBSON Ivar, El Lenguaje Unificado de


Modelado 2 edición, ED. Pearson, 527pgs.

GUTIERREZ Abraham, BRAVO Ginés, PHP5, Alfa omega Ra-Ma, 552pgs.

http://es.wikipedia.org/wiki/Portada, Enciclopedia Libre.

http://giga4.es/archivos/raiz/moviendoarchivos/2008/febrero/presentacion_tac.pdf

http://www.lablaa.org/, Biblioteca Virtual Luis Ángel Arango.

http://www.netpecos.org/docs/mysql_postgres/x108.html

JENKINS Neil, Redes de área local (LAN), México, Prentice Hall


Hispanoamericana, 1995, 309pgs.

PÉREZ LÓPEZ Cesar, MySQL: Para Windows y Linux, México, Alfa omega, 2004,
454p.

PRESSMAN, Roger S. Ingeniería de Software. Quinta Edición. McGraw-Hill


Interamericana. Madrid. 2002.

WEITZENFELD Alfredo, Ingeniería de Software Orientada a Objetos con UML java


e internet, México, International Thomson Editors, 2005, 678p.

39
ANEXOS

Anexo 1. Manual del Usuario

SISTEMA DE GESTIÓN CONSORCIO AJ ABOGADOS

MANUAL DEL USUARIO

40
INTRODUCCION

El aplicativo para el registro y seguimiento de la información de los procesos


judiciales en el Consorcio AJ Abogados es una aplicación Web sobre una base de
datos relacional en plataforma MySQL e interfaces con PHP, el cual permite
sistematizar y apoyar todos los procesos judiciales en el Consorcio AJ Abogados.

El presente manual hace referencia a la forma de navegación dentro de los menús


de la aplicación, describiendo paso a paso que deberá seguir el usuario final del
software (según el perfil) para registrar, actualizar, consultar y eliminar en el
sistema de información, los datos relacionados con los procesos judiciales como
son sus actuaciones, datos personales del cliente y contraparte.

41
TABLA DE CONTENIDO

ENTORNO GENERAL DEL APLICATIVO PARA EL REGISTRO Y


SEGUIMIENTO DE LOS PROCESOS JUDICIALES EN EL CONSORCIO AJ
ABOGADOS43
¿Cómo ingresar al aplicativo Consorcio AJ Abogados? 44

¿Cómo registrar un nuevo usuario en el aplicativo Consorcio AJ Abogados? 44

¿Cómo registrar un proceso en la base de datos del aplicativo Consorcio AJ


Abogados? 45

¿Cómo actualizo los datos de un cliente en el aplicativo Consorcio AJ Abogados?


48

¿Cómo registrar una actuación en un proceso en el aplicativo Consorcio AJ


Abogados? 49

¿Cómo modificar el registro de una actuación en el aplicativo? 50

¿Cómo eliminar usuarios de la aplicación? 52

42
ENTORNO GENERAL DEL APLICATIVO PARA EL REGISTRO Y
SEGUIMIENTO DE LOS PROCESOS JUDICIALES EN EL CONSORCIO AJ
ABOGADOS

El aplicativo está diseñado en ambiente web que posee una barra de menú,
alertas y vínculos de interés general estándar para todas las interfaces de registro,
consulta, actualización y eliminación de la información.

La barra de menú está compuesta por diferentes links que le permitirán al usuario
realizar registros, consultas, actualizaciones y eliminaciones, como se puede
apreciar en la siguiente figura:

43
¿Cómo ingresar al aplicativo Consorcio AJ Abogados?

Para ingresar al aplicativo solo basta con hacer “doble click” sobre el icono de
acceso directo que se encuentra en el escritorio

Después de hacer “doble click” se abrirá una ventana del navegador


predeterminado que se encuentre instalado en la máquina, donde será validado el
Usuario y contraseña.

En usuario debe digitar el nombre de usuario que le ha sido asignado.


En contraseña debe digitar la clave de acceso.

¿Cómo registrar un nuevo usuario en el aplicativo Consorcio AJ Abogados?

En el menú se encuentra un link , el cual lo llevará al formulario


que le permitirá registrarse:

44
Una vez se haya creado el nuevo usuario este lo devolverá nuevamente a la
página de inicio desde la cual usted podrá ingresar a las funciones de la aplicación
y cuando usted haya validado la clave y el usuario se presentará el siguiente
formulario que tiene habilitadas todas las funciones que pueden realizar cada uno
de los usuarios.

¿Cómo registrar un proceso en la base de datos del aplicativo Consorcio AJ


Abogados?

Lo primero que se debe hacer es registrar el proceso, llenando todos los campos
requeridos (*) en el formulario que aparecerá después de hacer click en el link,
en seguida podrá registrar al cliente junto con sus datos
personales y por último se registra la contraparte como se ve en la siguiente
figura:

45
N° Carpeta: Ingrese el número de la carpeta donde se va archivar.
N° Proceso: Ingrese el número del proceso.
Tipo de Proceso: Seleccione el tipo de proceso que corresponde.
Juzgado: Seleccione el Juzgado.

Frente al Tipo de Proceso y Juzgado se encuentra el vínculo nuevo!!!, lo que le


permitirá insertar nuevos Tipos de Procesos y Juzgados:

Para registrar un nuevo tipo de proceso, únicamente se necesita llenar el campo


Tipo Proceso y luego dar Click en el botón Guardar.

46
Para registrar un nuevo juzgado, se requiere llenar los siguientes campos;

No. Juzgado: Ingrese el número del juzgado.


Nombre: Ingrese el nombre del juzgado.
Contacto: Ingrese el nombre de una persona de contacto en ese juzgado.
Teléfono: Ingrese el número telefónico del contacto.

N° Cédula: Ingrese el número de identificación del cliente.


Nombre: Ingrese el nombre del cliente.
Apellido: Ingrese el apellido del cliente.
Dirección: Ingrese la dirección de residencia del cliente.
Teléfono Fijo: Ingrese el número telefónico fijo de contacto al cliente.
Teléfono Móvil: Ingrese el número telefónico del móvil del cliente si posee.
Barrio: Ingrese el barrio donde reside el cliente.
Localidad: Ingrese la localidad a la que pertenece el barrio.

N° Identificación: Ingrese el número de identificación de la contraparte.


Nombre: Ingrese el nombre de la contraparte.
Apellido: Ingrese apellido de la contraparte si posee.

47
Dirección: Ingrese la dirección de ubicación de la contraparte.
Teléfono Fijo: Ingrese el número telefónico fijo de contacto a la contraparte.

¿De qué manera puedo consultar un cliente en la base de datos del aplicativo?

Hay dos maneras de consultar un cliente, puede ser por su número de cédula ó
por su nombre:

La consulta permite visualizar todos los datos registrados:

¿Cómo actualizo los datos de un cliente en el aplicativo Consorcio AJ Abogados?

Se realiza primero la consulta del cliente que desea actualizar a través del link
, mediante de su número de identificación:

48
Después de realizada la consulta, permitirá hacer las modificaciones dentro de los
mismos campos de texto:

Dando un click en el botón “Actualizar”, este guardará las modificaciones hechas


arrojando este mensaje:

¿Cómo registrar una actuación en un proceso en el aplicativo Consorcio AJ


Abogados?

Este registro se realiza a través del link , el cual lo llevará al


siguiente formulario:

49
Fecha de actuación: Es la fecha del día esta se cargará automáticamente ya que
es tomada del sistema.
Carpeta: Ingrese el número de la carpeta a la cual le va a registrar la actuación
Observaciones: Ingrese las anotaciones que crea convenientes
Tipo de actuación: Seleccione el tipo de actuación

Llenando todos los campos se almacenarán en su carpeta correspondiente, según


el tipo de actuación se le asignará una fecha de término y el número de registro:

¿Cómo modificar el registro de una actuación en el aplicativo?

Esta operación se encuentra en el vínculo , al dar clic en este


se solicitará el número de registro de la actuación que le proporciona el sistema en
el momento de registrar la actuación. En caso de olvido puede ser consultado en
el historial del proceso:

50
Después de digitar el número del registro de la actuación que desea modificar, al
hacer clic en el botón enviar se mostrará la consulta realizada en el siguiente
formulario:

Este formulario presenta todos los campos con los datos actuales de la actuación,
los cuales pueden ser modificados desde ellos mismos. Y por último cuando le de
click al botón actualizar le aparecerá un mensaje como el siguiente indicándole
que la modificación fue almacenada en la base de datos:

51
¿Cómo eliminar usuarios de la aplicación?

Para la eliminación de usuarios que trabajan con la aplicación cabe recordar que
esta función solo podrá ser llevada a cabo por el administrador o el gerente, para
ello se debe hacer click sobre el vinculo , este vinculo lo llevará a un
nuevo formulario que le pedirá el nombre del usuario que desea eliminar como se
muestra en la siguiente figura:

A continuación para ejecutar la eliminación deberá dar click sobre el botón eliminar
y por último le aparecerá un mensaje confirmando si desea eliminar el usuario, si
da clic en aceptar el usuario ha sido eliminado de la base datos, por lo tanto esta
persona ya no tendrá acceso a la aplicación. Si da clic en cancelar la operación no
será realizada.

52
Anexo 2. Manual Técnico

SISTEMA DE GESTIÓN CONSORCIO AJ ABOGADOS

MANUAL TÉCNICO

53
DESCRIPCIÓN GENERAL DEL APLICATIVO

Descripción General

El aplicativo está basado en una base de datos relacional, en la cual se


almacenan toda la información de los procesos judiciales, clientes, contrapartes y
actuaciones en el Consorcio AJ Abogados.

El usuario mediante la interfaz grafica podrá insertar nuevos procesos, clientes,


contrapartes y actuaciones en la base de datos, además los datos que se
encuentran registrados podrán ser modificados.

El aplicativo cuenta con una función de sumar fechas que permite calcular la fecha
de término en una actuación procesal.

REQUERIMIENTOS Y ASPECTOS TÉCNICOS

Última Versión: 1.0 (Mayo de 2008)


Idioma en Pantalla: Español
Modo de Funcionamiento: Interactivo
Modo de Operación: Multiusuario
Plataforma Operativa: Windows 95/98/2000/ME/NT/XP/Vista
Herramientas de Diseño: Dreamweaver CS3

Requerimientos de Hardware

Disco Duro: 10 GB
Memoria RAM: 256 Mb
Procesador: AMD ó Pentium > 400Mhz

INSTALACION

Para la instalación del aplicativo se debe tener en cuenta que el servidor debe
contar con el motor de base de datos MySQL para poder gestionar la base de
datos, además de esto también debe contar con servidor web el más apropiado es
el apache 2.2.4, por último se debe aclarar que todos los formularios desarrollados
en la herramienta de diseño deben estar copiados en cada uno de los equipos
usuarios, dentro de la carpeta C: /AppServ/www.

54
CAMPOS CALCULADOS

Para el correcto desarrollo del aplicativo fue necesario agregar una función
desarrollada en PHP, como se muestra a continuación:

function suma_fechas($fecha,$ndias)

{
list($año, $mes, $dia) = split("-",$fecha);
$nueva = mktime(0,0,0, $mes, $dia, $año) + $ndias * 24 * 60 * 60;
$nuevafecha = date("Y-m-d",$nueva);

return ($nuevafecha);

Esta función nos permite sumar días a la fecha del sistema, los días a sumar
están almacenados en la base de datos.

DISEÑO LOGICO Y MODELO DE DATOS

Reglas del negocio

 Cada cliente debe estar relacionado a un número de carpeta, la que


corresponde a un número de proceso y cada proceso a un juzgado, este
número de carpeta es único e irrepetible.

 Cada proceso posee unas actuaciones que se muestran como un historial


del mismo.

 Al insertar una nueva actuación se deben contar los días de termino

55
MODELO DE DATOS

56
TABLA 1 - PROCESO
DESCRIPCIÓN

Esta tabla contiene la información sobre cada uno de los expedientes como el juzgado, el numero entre otros.
CAMPO TIPO DATO LONGITUD LLAVER PRIMARIA LLAVE FORANEA OBLIGATORIO DOMINIO DESCRIPCION
Cod_Proc texto 3 x SI 0 - 999 número único para cada expediente
N_Proc numérico 7 SI 0 - 9999999 número de proceso llevado en el juzgado
Cod_Juz numérico 12 x SI 0 - 999999999999 número único para cada juzgado
Cod_Tipo_Proc numérico 3 x SI 0 - 999 número para identificar el tipo de proceso
No_doc_deman numérico 13 x SI 0 - 999999999999 número para identificar los demandados

TABLA 2 - CLIENTE
DESCRIPCIÓN

Esta tabla contiene la información básica sobre cada uno de los clientes.
CAMPO TIPO DATO LONGITUD LLAVER PRIMARIA LLAVE FORANEA OBLIGATORIO DOMINIO DESCRIPCION
No_cedula texto 13 x SI 1 - 9999999999999 número de identificación del cliente
Nombre texto 50 SI nombre del cliente
Apellido texto 50 SI apellido cliente
Dirección texto 20 SI dirección residencia del cliente
Teléfono_fijo numérico 10 SI 2000000-8999999 número telefónico residencia cliente

57
Teléfono_mov numérico 10 NO 3002000000-3508999999 número celular del cliente
Cod barrio numérico 3 X SI 1 - 999 número para identificar del barrio

TABLA 3 - CLIENTE_PROCESO
DESCRIPCIÓN
DICCIONARIO DE DATOS

Tabla intermedia entre cliente y proceso.


CAMPO TIPO DATO LONGITUD LLAVER PRIMARIA LLAVE FORANEA OBLIGATORIO DOMINIO DESCRIPCION
No. Cedula texto 13 x SI 1 - 999999999999 número de identificación del cliente
Cod_Proc numérico 3 x SI 0 - 999 número único para cada expediente

TABLA 4 - JUZGADO
DESCRIPCIÓN
Tabla intermedia entre cliente y proceso.
CAMPO TIPO DATO LONGITUD LLAVER PRIMARIA LLAVE FORANEA OBLIGATORIO DOMINIO DESCRIPCION
Cod_Juz texto 12 x SI 0 - 999999999999 número de identificación de juzgado
No_Juzgado texto 50 SI nombre del juzgado
Contacto texto 50 NO nombre del contacto en el juzgado
Tel_contacto numérico 10 NO 0 - 9999999999 número de teléfono del contacto
TABLA 5 - BARRIO
DESCRIPCIÓN
Contiene información sobre el barrio donde reside el cliente.
CAMPO TIPO DATO LONGITUD LLAVER PRIMARIA LLAVE FORANEA OBLIGATORIO DOMINIO DESCRIPCION
Cod_Barrio texto 3 x SI 0 - 999 número de identificación del barrio
Nombre_bar texto 50 SI nombre del barrio
No_Localidad numérico 3 x SI 0 - 999 número de la localidad a la que pertenece el barrio

TABLA 6 - LOCALIDAD
DESCRIPCIÓN
Contiene información sobre la localidad donde se encuentra el barrio.
CAMPO TIPO DATO LONGITUD LLAVER PRIMARIA LLAVE FORANEA OBLIGATORIO DOMINIO DESCRIPCION
No_Localidad texto 3 x SI 0 - 999 número de la localidad a la que pertenece el barrio
Nombre texto 50 SI nombre de la localidad

TABLA 7 - TIPO_ACTUACION

58
DESCRIPCIÓN
Tabla informativa sobre las actuaciones que tiene un proceso.
CAMPO TIPO DATO LONGITUD LLAVER PRIMARIA LLAVE FORANEA OBLIGATORIO DOMINIO DESCRIPCION
Cod_Tipo_Act texto 3 x SI 0 - 999 número de identificación de la actuación
Nombre_Act texto 50 SI nombre de la actuación

TABLA 8 - PROC_TIPO_ACT
DESCRIPCIÓN
Tabla intermedia entre proceso y tipo de actuación.
CAMPO TIPO DATO LONGITUD LLAVER PRIMARIA LLAVE FORANEA OBLIGATORIO DOMINIO DESCRIPCION
Cod_Act autonumérico 3 x SI 0 - 999 número de identificación de la actuación
Cod_Proc numérico 3 x SI 0 - 999 número de identificación del proceso
Cod_Tipo_Act numérico 3 x SI número de identificación del tipo actuación
Fecha_Mov fecha SI 01/01/1900 fecha de la actuación
Observaciones texto 200 No observaciones acerca de la actuación
Fecha_Fin fecha SI 01/01/1900 fecha término de la actuación
TABLA 9 - TIPO_PROCESO
DESCRIPCIÓN
Tabla informativa sobre los tipo de procesos
CAMPO TIPO DATO LONGITUD LLAVER PRIMARIA LLAVE FORANEA OBLIGATORIO DOMINIO DESCRIPCION
Cod_Tipo_Proc texto 3 x SI 0 - 999 número de identificación del tipo de proceso
Nombre texto 50 SI nombre del tipo de proceso

TABLA 10 - DEMANDADO
DESCRIPCIÓN
Esta tabla contiene la información básica sobre cada uno de los demandados
CAMPO TIPO DATO LONGITUD LLAVER PRIMARIA LLAVE FORANEA OBLIGATORIO DOMINIO DESCRIPCION
No_documento texto 13 x SI 1 - 9999999999999 número de identificación del demando
Nombre texto 50 SI nombre del demandado
Apellido texto 50 SI apellido del demandado
Dirección texto 20 No dirección residencia del demandado
Teléfono numérico 10 No 2000000-8999999 número telefónico residencia demandado

59
TABLA 11 - PROC_DEMANDADO
DESCRIPCIÓN
Tabla intermedia entre proceso y demandado
CAMPO TIPO DATO LONGITUD LLAVER PRIMARIA LLAVE FORANEA OBLIGATORIO DOMINIO DESCRIPCION
Cod_Proc texto 3 x SI 0 - 999 número de identificación del proceso
No_doc_deman numérico 13 SI 1 - 9999999999999 nombre de identificación del demandado

TABLA 12 - USUARIOS
DESCRIPCIÓN
Tabla que contiene los datos que le permitirán al usuario acceder al programa
CAMPO TIPO DATO LONGITUD LLAVER PRIMARIA LLAVE FORANEA OBLIGATORIO DOMINIO DESCRIPCION
Cod_usuario texto 3 x SI 0 - 999 número de identificación del usuario
Usuario texto 50 SI nombre o login para identificación del usuario
Clave numérico 8 SI 1 - 99999999 número que será clave personal
ASPECTOS DE SEGURIDAD, MECANISMOS DE ACCESO DE LOS DATOS

El aplicativo posee un mecanismo de seguridad que consiste en el control de


acceso por medio de un Usuario y Contraseña, lo que permitirá evaluar el perfil de
la persona que va ingresar. Cada usuario tiene un perfil específico con ciertas
restricciones.

60
GLOSARIO

ABOGADO Persona que de conformidad con las exigencias académicas y


legales, han obtenido un título que las habilita para defender la justicia, los
derechos de la sociedad y de los particulares, asesorar, patrocinar y asistir a las
personas en la ordenación y desenvolvimiento de sus relaciones jurídicas.

ACCIÓN DE TUTELA Toda persona que ejerza reclamar la protección judicial


inmediata de los derechos fundamentales. Procede cuando un derecho
fundamental haya sido vulnerado o amenazado por la acción u omisión de
cualquier autoridad pública. Procede en los casos señalados en la ley contra
ciertos particulares.

ACTUACIONES Son todas las tramitaciones que constituyen las piezas de


asuntos redactas durante el desarrollo del juicio o proceso.

ADJUDICACIÓN Acción y efecto de conceder a uno la propiedad de alguna cosa.

APELACIÓN Recurso planteado ante una jurisdicción superior, para obtener la


revocación total o parcial de una decisión de la jurisdicción inferior.

APODERADO Persona que ha recibido mandato de otra para ejercer en su lugar


ciertos poderes.

ARANCEL Tarifas oficiales, tablas o catálogos en que se determinan las


cantidades que se han de pagar por la prestación de determinado servicio o para
la liquidación de alguna tasa o impuesto.

AUDIENCIA Acto por intermedio del cual una autoridad administrativa o judicial,
en función de juzgar, oye a las partes o recibe las pruebas.

AUTO En el lenguaje forense esta voz se utiliza en singular y plural, en ambos


modos hace referencia a una categoría de resoluciones judiciales.

CANCELACIÓN Liquidación o pago total de una deuda; eliminación de un saldo


deudor o acreedor de una cuenta, mediante un asiento practicado con esta
finalidad.

CAUCION Prevención, precaución o cautela. / Seguridad personal de que se


cumplirá lo pactado, prometido o mandado.

61
CITACIÓN Acto por el cual un juez o tribunal ordena la comparencia de una
persona, sea parte, testigo, perito o cualquier otro tercero, para realizar o
presenciar una diligencia que afecte a un proceso

CÓDIGO Cuerpo de leyes dispuestas según un plan metódico y sistemático. / Con


menos importancia jurídica, es también la recopilación de leyes o estatutos de un
país.

COMPETENCIA Autoridad y jurisdicción entre los funcionarios que ejercen una y


otra. Objetivamente, la competencia en el conjunto de negocios o actuaciones en
el que puede un funcionario ejercer legalmente sus atribuciones.

CONCILIACIÓN Acción de componer y ajustar los ánimos de los que estaban


opuestos entre si. / Acuerdo entre dos personas que se hallan en pleito obtenido
por intermedio de un juez.

CURADOR Persona encargada del cuidado de la persona o bienes del incapaz


sometido a curatela o de la administración de los bienes del menor, púber o
adulto.

DEFENSA Exposición de argumentos jurídicos que el defendido y su abogado


oponen a la acusación o demanda para demostrar que las razones alegadas no
están ajustadas a derecho.

DEFENSOR Abogado que en el proceso penal representa y asiste al procesado.

DEMANDA Petición prestada ante una autoridad jurisdiccional, con el fin de


obtener la administración de justicia en un caso concreto.

DEMANDADO Persona contra quien se actúa o a quien se le reclama algo en


juicio, exigiéndole alguna cosa o prestación determinada.

DEMANDANTE Persona que formula una demanda en juicio, en reclamación de


una cosa o reconocimiento de un derecho.

DERECHO Conjunto de normas previstas de sanciones que rigen las relaciones


de los hombres en la sociedad.

DESPACHO El mantenimiento y orden que hace un juez por escrito, determinado


que se dé, haga o no se haga alguna cosa; verbigracia, el oficio que un juez o
tribunal manda a otro de inferior categoría que él, para que practique alguna
diligencia.

62
EJECUTIVO Instrumento del sector público en cuyo vértice están situados el
Presidente de la República, jefe de estado y suprema autoridad administrativa y
los altos funcionarios, ministros y jefes de departamentos administrativos, que con
él integran el gobierno.

EMBARGO Deudor real a quien se embarga un bien. / Retención de bienes hecha


con mandamiento de juez competente con razón de deuda o delito.

EXPROPIACIÓN Privación de la propiedad, por causa de utilidad pública o interés


preferente y a cambio de una indemnización previa.

FALLO Resolución pronunciada por un juez, magistrado o árbitro. La sentencia es


una providencia judicial que decide sobre las pretensiones de la demanda o las
excepciones que no tienen el carácter de previas, cualquiera que sea la instancia
en que se pronuncie, o resuelve uno de los recursos extraordinarios. El laudo
arbitral es la decisión a través de la cual se decide por árbitros una controversia
susceptible de transacción, surgida entre personas capaces de transigir.

GNU (GFDL) la licencia de documentación libre, que cubre los artículos de la


Wikipedia, la Open Audio License, para trabajos musicales, etcétera, y otras
menos restrictivas, como la MGPL, o la LGPL (Lesser General Public License o
Library General Public License), que permiten el enlace dinámico de aplicaciones
libres a aplicaciones no libres.

GPL (Licencia Pública General) es una licencia creada por la Free Software
Foundation a mediados de los 80, y está orientada principalmente a proteger la
libre distribución, modificación y uso de software. Su propósito es declarar que el
software cubierto por esta licencia es software libre y protegerlo de intentos de
apropiación que restrinjan esas libertades a los usuarios.

INSTANCIA Cada una de las etapas o grados del proceso. Corrientemente, en la


tramitación de juicio se pueden dar dos instancias: una primera, que va desde su
iniciación hasta la primera sentencia que lo resuelve, y una segunda, desde la
interposición del recurso de y una segunda, desde la interposición del recurso de
apelación hasta la sentencia que en ella se pronuncie.

JUEZ En sentido amplio llamase así todo miembro integrante del Poder Judicial,
encargado de juzgar los asuntos sometidos a su jurisdicción. Tales magistrados
están obligados al cumplimiento de su función de acuerdo con la Constitución y las
leyes, con las responsabilidades que aquélla y éstas determinan.

JURISDICCIÓN Del latín iurisdictio, administración del derecho. Acción de


administrar el derecho, no de establecerlo. Es, pues, la función específica de los
jueces. También, la extensión y límites del poder de juzgar, ya sea por razón de la
materia, ya sea por razón del territorio, si se tiene en cuenta que cada tribunal no

63
puede ejercer su función juzgadora sino dentro de un espacio determinado y del
fuero que le está atribuido. En este último sentido se habla de jurisdicción
administrativa, civil, comercial, correccional, criminal, laboral, etc.

MAGISTRADO Funcionario judicial que, integrando una sala, forma parte de un


tribunal colegiado.

NULIDAD Ineficacia de un acto jurídico como consecuencia de la ilicitud de su


objeto o de su fin, de la carencia de los requisitos esenciales exigidos para su
realización o de la concurrencia de algún vicio de la voluntad en el momento de su
celebración. La nulidad puede ser absoluta (insubsanable) o relativa (subsanable).

PODER Documento que le confiere a una persona la autoridad para actuar por
cuenta de la otra.

PROCESO Conjunto de actos que se ejecutan por o ante una autoridad


jurisdiccional, con el fin de obtener la administración de justicia en un caso
concreto.

SECRETARIO JUDICIAL El funcionario público que en juzgados, audiencias y


tribunales, está encargado de dar fe de las actuaciones y diligencias, y auxiliar a
los jueces y magistrados en sus funciones características. Su antiguo nombre
español fue el de escribano.

SENTENCIA Dictamen, opinión, parecer propio. /Máxima, aforismo, dicho moral o


filosófico. /Decisión extrajudicial de la persona a quien se encomienda resolver
una controversia, duda o dificultad. /Resolución judicial por una causa. /El más
solemne de los mandatos de un juez, por oposición a auto o providencia. /Parecer
o decisión de un jurisconsulto romano. /

SUJETO Obligado. / Propenso. / Persona. / Titular de un derecho u obligación.

TÉRMINO Momento en que un acto jurídico debe comenzar a producir o dejar de


producir sus efectos característicos. Denominase también plazo.

TÉRMINO IMPRORROGABLE Es el que no puede ser objeto de prórroga.

TÉRMINO JUDICIAL Es aquél que determina y fija el juez.

TÉRMINO LEGAL La denominación de legal, corresponde al término que se


encuentra expresamente fijado por la ley.

64
TRASLADO Copia o testimonio de un documento original autorizada por
funcionario o notario competente al efecto. Conocimiento dado a una de las partes
de las pretensiones de la otra con objeto de que pueda alegar lo que estime
procedente en defensa de su derecho.

TRIBUNAL Órgano de jurisdicción destinado a la aplicación del derecho por la vía


del proceso.

65
FECHA 24 de mayo de
2008

NÚMERO RAE
PROGRAMA Tecnología en Sistemas

AUTOR (ES) VELA GÓMEZ, Juan Manuel; ORTIZ SORIANO, Jhonnatan Camilo
TÍTULO Desarrollo de un aplicativo para el registro y seguimiento de la
información de los procesos judiciales en el Consorcio AJ Abogados

PALABRAS CLAVES
Procesos judiciales, juzgados, actuación, PHP, desarrollo web, MySql, Microsoft Solution
Framework, software.

DESCRIPCIÓN

Este trabajo contiene el análisis que se realizó para el desarrollo de la aplicación del
Consorcio AJ Abogados, en términos generales el documento se compone, de un
marco teórico el cual contempla diferentes metodologías de desarrollo que
permitieron selección la metodología MSF (Microsoft Solution Framework), la cual
contempla las siguientes etapas. La aplicación permite registrar, consultar, insertar
todas las actuaciones sobre los procesos judiciales. La aplicación fue desarrollada
con las herramientas php y mysql.

FUENTES BIBLIOGRÁFICAS
BOOCH Grady, RUMBAUGH James, JACOBSON Ivar, El Lenguaje Unificado de
Modelado 2 edición, ED. Pearson, 527pgs.

GUTIERREZ Abraham, BRAVO Ginés; PHP5; Alfa Omega Ra-Ma; 552pgs.

JENKINS, Neil; Redes de área local (LAN); México: Prentice Hall Hispanoamericana,
1995.; 309pgs.

http://www.netpecos.org/docs/mysql_postgres/x108.html

http://giga4.es/archivos/raiz/moviendoarchivos/2008/febrero/presentacion_tac.pdf

66
CONTENIDOS

Los objetivos definidos para el trabajo son:

OBJETIVO GENERAL

Desarrollar un aplicativo cliente/servidor para la sistematización de los procesos judiciales en el


Consorcio AJ Abogados.

OBJETIVOS ESPECÍFICOS

 Analizar los procesos de registro y seguimiento de la información jurídica del Consorcio de


Abogados.

 Determinar los requerimientos funcionales y no funcionales.

 Diseñar el modelo de la base de datos y la interfaz gráfica.

 Implementar el modelo de la base de datos y la interfaz gráfica.

La investigación se resume en la parte donde se desarrolla la metodología ya que en este capitulo se


muestra paso a paso como fue la elaboración del proyecto.

Fase 1 Previsión

Esta fase comprende la definición del problema, los antecedentes, los objetivos generales y específicos,
los alcances, imitaciones y requerimientos

Fase 2 Planificación

Esta fase comprende el diseño del aplicativo que ayudara a tener un punto base para el desarrollo del
mismo, para esto la metodología nos exige la elaboración de casos de uso que deben implementarse para
un mejor entendimiento del funcionamiento del software.

Fase 3 Desarrollo

Esta fase trata sobre el desarrollo en sí de la aplicación, la definición del lenguaje usado para la
programación, el motor de base de datos utilizado para implementar el diseño, las funciones y líneas de
código especiales utilizadas para un mejor desarrollo de la aplicación

67
NÚMERO RAE
PROGRAMA Tecnología en Sistemas

METODOLOGÍA
ENFOQUE DE LA INVESTIGACIÓN

Empírico-analítico: cuyo interés es el técnico, orientado a la interpretación y


transformación del mundo material.

LÍNEA DE INVESTIGACIÓN / SUB-LÍNEA DE FACULTAD/ CAMPO TEMÁTICO DEL


PROGRAMA

Tecnologías Actuales y Sociedad / Sistema de Información y Comunicación /


Desarrollo de Software

CONCLUSIONES

 Entre las diferentes metodologías que se confrontaron a través de un cuadro


comparativo, se esclarecieron todas las características de cada una, por lo
cual se escogió la metodología a Microsoft Solution Framework (MSF), lo que
permitió un desarrollo ágil del aplicativo.

 Las herramientas case y los frameworks mejoran los tiempos de desarrollo


proporcionando código predefinido y funciones ejecutables de una manera
sencilla.

 El gremio de los abogados no cuenta con la tecnología para trabajar de una


manera eficiente generando problemas de tiempos y la complicación de los
casos judiciales.

68

Вам также может понравиться