Está en la página 1de 109

DISEÑO DE UN SOFTWARE QUE ADMINISTRE Y ADVIERTA EL

VENCIMIENTO DE LOS DOMINIOS Y CERTIFICADOS DIGITALES DEL BANCO


CAJA SOCIAL

JOHN FAVER SUAREZ CASTRO

UNIVERSIDAD COOPERATIVA DE COLOMBIA

FACULTAD DE INGENIERIA

PROGRAMA DE INGENIERIA DE SISTEMAS

SECCIONAL BOGOTA

OCTUBRE, 2013
DISEÑO DE UN SOFTWARE QUE ADMINISTRE Y ADVIERTA EL
VENCIMIENTO DE LOS DOMINIOS Y CERTIFICADOS DIGITALES DEL BANCO
CAJA SOCIAL

JOHN FAVER SUAREZ CASTRO

Trabajo presentado para optar al título de Ingeniería de Sistemas

Director (a)

CARLOS MARTIN PAEZ

Ingeniero de Sistemas

UNIVERSIDAD COOPERATIVA DE COLOMBIA

FACULTAD DE INGENIERIA

PROGRAMA DE INGENIERIA DE SISTEMAS

SECCIONAL BOGOTA

OCTUBRE, 2013
NOTA DE ACEPTACION

______________________________

______________________________

______________________________

______________________________

______________________________

PRIMER JURADO

______________________________

SEGUNDO JURADO

OBSERVACIONES

______________________________

______________________________

______________________________

______________________________

Bogotá

Octubre, 2013
AGRADECIMIENTOS

Doy gracias a Dios por darme la fuerza suficiente para superar las adversidades

las cuáles sucedieron durante todo mi proceso, gracias señor por brindarme una

nueva vida y oportunidad de surgir, con el logro de este gran paso, gracias a mi

madre Teresa, mi padre Carlos Julio, mi hermano Juan Anderson y a mi pareja

Yeimy Carolina fueron parte fundamental para este gran logro esto también es

para ustedes gracias mil gracias por tanto apoyo amor y compresión.
GLOSARIO

ARGO UML: Es una aplicación de diagramado de UML escrita en Java y publicada bajo
la Licencia BSD. Dado que es una aplicación Java, está disponible en cualquier plataforma
soportada por Java.

CASOS DE USO: Un caso de uso es una descripción de los pasos o las


actividades que deberán realizarse para llevar a cabo algún proceso

CERTIFICADO DIGITAL: Un certificado digital o certificado electrónico es un


documento firmado electrónicamente por un prestador de servicios de certificación
que vincula unos datos de verificación de firma a un firmante y confirma su
identidad

CIFRADO: Criptografía tradicionalmente se ha definido como la parte de la


criptología que se ocupa de las técnicas, bien sea aplicada al arte o la ciencia.

DATA CENTER: Un Data Center es, tal y como su nombre indica, un “centro de
datos” o “Centro de Proceso de Datos” (CPD).

DOMINIO: Un dominio de Internet es una red de identificación asociada a un


grupo de dispositivos o equipos conectados a la red Internet.

ENCRIPTAR: Es un procedimiento que utilizando un algoritmo con cierta clave


transforma un mensaje, sin atender a su estructura lingüística o significado.

EXTENSIONES DE DOMINIO: Es una lista de opciones para matricular una


página web en la red de internet.

HACKER: Gente apasionada por la seguridad informática.

HTTPS: Protocolo de seguridad de las páginas de internet.

PROTOCOLO: Conjunto de reglas que adhieren a las redes.

PROXY: Un proxy, en una red informática, es un programa o dispositivo que


realiza una acción en representación de otro.
SERVIDORES: En informática, un servidor es un nodo que forma parte de una
red, provee servicios a otros nodos denominados clientes.

UML: Es un lenguaje para hacer modelos y es independiente de los métodos de


análisis y diseño.

URL: Un localizador de recursos uniforme, más comúnmente denominado URL, es


una secuencia de caracteres, de acuerdo a un formato modélico y estándar, que
se usa para nombrar recursos en Internet para su localización o identificación.

WEB: En informática, la World Wide Web o Red informática mundial comúnmente


conocida como la web, es un sistema de distribución de documentos de hipertexto
o hipermedias interconectados y accesibles vía Internet
RESUMEN

Este trabajo brinda, plantea, analiza y escoge entre los diferentes mecanismos de
diseño de software el modelo que más se ajusta a las necesidades propuestas por
el Banco Caja Social, quien por motivos de seguridad informática y amenazas
existentes hacia la información, ha decidido obtener un software que permita
administrar y advertir las fechas de vencimiento de los certificados digitales y
dominios del banco, mediante el modelo de UML y el lenguaje Visual Basic, al
desarrollar el software para mantener estos documentos de forma segura los cual
son de vital importancia para el Corp. del banco, se permite lograr minimizar la
perdida u olvido de estos documentos, con ello a los clientes del banco se brinda
garantía de los sitios de Internet de propiedad del banco para gestionar sus
actividades en los servicios ofrecidos los cuales son seguros, y de igual forma
garantizar que los sitios de Internet accedidos por los clientes y colaboradores son
del banco, adicional, el banco mantiene su estatus de entidad segura con la
información del sus clientes. A través del documento se realizan las
consideraciones técnicas, económicas, y operativas que hacen posible inclinarse
hacia la selección del modelo que permite desarrollar el software, ya que al
término del proyecto se trabaja sobre solo datos, quedando la posibilidad que a lo
largo se pueda dar el desarrollo e implementación de la solución sugerida.
TABLA DE CONTENIDOS

Pág.

RESUMEN

INTRODUCCION 2

1. FUNDAMENTACION TEORICA 6

1.1. RESEÑA HISTORICA 6

1.2. HISTORIA UML 6

1.2.1. Modelado Visual 8

1.2.2. Que es Uml 9

1.2.3. Elementos Estructurales 12

1.2.3.1. Clases 12

1.2.3.2. Interfaz 12

1.2.3.3. Colaboración 13

1.2.3.4. Casos de Uso 14

1.2.3.5. Clase Activa 14

1.2.3.6. Componentes 15

1.2.3.7. Nodos 15

1.2.3.8. Elementos de Comportamiento 16

1.2.3.8.1. Interacción 16

1.2.3.8.2. Máquinas de Estado 17

1.2.3.9. Elementos de Agrupación 17

i
1.2.3.10. Elementos de Anotación 18

1.2.3.11. Relaciones 18

1.2.3.11.1. Dependencia 18

1.2.3.11.2. Asociación 19

1.2.3.11.3. Generalización 19

1.2.3.11.4. Realización 20

1.2.4. Diagramas 20

1.2.4.1. Diagramas de Clases 21

1.2.4.2. Diagramas de Objetos 22

1.2.4.3. Diagramas de Casos de Uso 22

1.2.4.4. Diagrama de Secuencia y Colaboración 23

1.2.4.5. Diagramas de Estado 23

1.2.4.6. Diagramas de Actividades 24

1.2.4.7. Diagrama de componentes 24

1.2.4.8. Diagrama de Despliegue 25

1.3. TIPOS DE HERRAMIENTAS DE DISEÑO 28

1.3.1. Herramientas de Selección de la Organización Financiera 33

1.4. MARCO LEGAL Y JURIDICO 34

1.4.1. Introducción a la Norma Iso 12207 34

1.4.1.1. Organización 34

1.4.1.1.1. Procesos del ciclo de vida 34

1.4.1.1.2. Procesos Principales del ciclo de vida 34

ii
1.4.1.1.3. Proceso de adquisición 35

1.4.1.1.4. Proceso de Suministro 35

1.4.1.1.5. Proceso de Desarrollo 35

1.4.1.1.6. Proceso de Operación 35

1.4.1.1.7. Proceso de Mantenimiento 35

1.4.1.2.1. Procesos de Apoyo del Ciclo de Vida 36

1.4.1.2.2. Proceso de Documentación 36

1.4.1.2.3. Proceso de Gestión de la Configuración 36

1.4.1.2.4. Proceso de Aseguramiento de la Calidad 36

1.4.1.2.5. Proceso de Verificación 36

1.4.1.2.6. Proceso de Validación 37

1.4.1.2.7. Procesos de revisiones Conjuntas 37

1.4.1.2.8. Proceso de Auditoria 37

1.4.1.2.9. Proceso de Solución de Problemas 37

1.4.1.3.1. Procesos Organizativos del Ciclo de Vida 37

1.4.1.3.2. Proceso de Gestión 38

1.4.1.3.3. Proceso de Infraestructura 38

1.4.1.3.4. Proceso de Mejora 38

1.4.1.3.5. Proceso de Formación 38

1.4.2. Norma Iso 9000 38

1.4.2.1. Principios de Gestión de la Calidad 39

1.4.3. Norma Iso 15504 41

iii
1.4.3.1. Características 42

2. DESARROLLO INGENIERIL 43

2.1. SEGURIDAD INFORMATICA 45

2.2. PROPUESTA DE CONTENCION DE FALLOS 46

2.3. MODULO DE ADMINISTRACION 46

2.4. RECURSO PARA LA RECUPERACION DE LA INFORMACION 46

2.5. CERTIFICADOS DE SEGURIDAD 47

2.5.1. Que son los Certificados de Seguridad 47

2.6. PROTOCOLO HTTP Y HTTPS 49

2.6.1. Referente a la Relación entre Http y Https 49

2.6.2. Como Funciona Https 50

2.7. METODOS DE CIFRADO 50

2.7.1. Cifrado de Flujo 51

2.7.2. Cifrado por Bloques 52

2.7.3. Cifrado Simétrico 52

2.7.4. Cifrado Asimétrico 52

2.7.5. Criptografía de clave Asimétrica Firma Digital 54

2.7.5.1. Proceso 55

2.8. CERTIFICADOS DIGITALES 56

2.8.1. Empresas Emisoras de Certificados Digitales 57

2.8.1.1. Seguridad VeriSign 57

2.8.1.2. Certicámara 57

iv
2.8.1.3. Certificados SSL de Symantec 57

2.8.1.4. Qweb 58

2.8.1.5. W3c 58

2.8.1.6. Confianza Online 58

2.8.1.7. Certificados Cl 58

2.8.1.8. Optima 58

2.8.1.9. Security Guardian 59

2.9. DOMINIO DE INTERNET 59

2.9.1. Dns 59

2.9.2. Dominios de Nivel Superior 60

2.9.3. Dominio de Internet Genérico 60

2.9.4. Identificación de País 61

2.9.5. Organizaciones Relacionadas con los Dominios de Internet 61

2.9.5.1. Iana 61

2.9.5.2. Icann 61

2.9.5.3. Internic 62

2.9.5.4. Lacnic 62

2.9.5.5. Lacltd 62

2.9.5.6. Latinoamerican 63

2.9.6. Dominios en Internet más Utilizados 63

3. DISEÑO DE LA PROPUESTA 65

3.1. SOLUCION DEL SOFTWARE 65

v
3.2. DISEÑO DE LA SOLUCION DEL SOFTWARE 66

3.3. DISEÑO LOGICO Y DIRECCIONAMIENTO 68

3.4. DISEÑO DEL PROYECTO 68

3.4.1. Tablas del Proyecto 70

3.4.2. Diagrama Entidad Relación 72

3.4.3. Diseño Uml Casos de Uso 73

3.4.4. Distribución por Perfiles 74

3.5. EQUIPOS, SOFTWARE REQUERIDOS Y PROPUESTOS 76

3.6. ASPECTOS ECONOMICOS 77

CONCLUSIONES Y RECOMENDACIONES 78

BIBLIOGRAFIA 79

vi
LISTA DE FIGURAS

Pág.

Figura 1. Evolución de Uml. 9

Figura 2. Clase. 12

Figura 3. Interfaz. 13

Figura 4. Colaboración. 13

Figura 5. Casos de Uso. 14

Figura 6. Clase Activa. 15

Figura 7. Componentes. 15

Figura 8. Nodos. 16

Figura 9. Elementos de Comportamientos. 17

Figura 10. Paquetes. 18

Figura 11. Nota. 18

Figura 12. Dependencia. 19

Figura 13. Asociación. 19

Figura 14. Generalización. 20

Figura 15. Realización. 20

Figura 16. Diagramas de Clase. 21

Figura 17. Ejemplos de Diagramas de Clases. 21

Figura 18. Diagramas de Objetos. 22

Figura 19. Diagramas de Casos de Uso. 22

Figura 20. Diagramas de Secuencia y de Colaboración. 23

vii
Figura 21. Estados. 24

Figura 22. Actividades. 24

Figura 23. Diagramas de Componentes. 25

Figura 24. Diagramas de Despliegues. 26

Figura 25. Proceso 15504. 41

Figura 26. Concepto Https. 48

Figura 27. Método Cifrado. 51

Figura 28. Cifrado Asimétrico. 54

Figura 29. Creando y Verificando una Firma Digital. 55

Figura 30. Extensiones de Dominio. 64

Figura 31. Diseño. 68

Figura 32. Diagrama de Flujo. 69

Figura 33. Entidad Relación. 72

Figura 34. Administrador Casos de Uso. 73

Figura 35. Administrador Backup Casos de Uso. 73

Figura 36. Usuario Consulta Casos de Uso. 74

viii
LISTA DE TABLAS

Pág.

Tabla 1. Tipos de Herramientas de Diseño. 28

Tabla 2. Nombres de Empresas. 70

Tabla 3. Certificados Digitales. 70

Tabla 4. Dominios. 70

Tabla 5. Usuarios. 71

Tabla 6. Mensajes de Alerta. 71

Tabla 7. Perfiles. 71

Tabla 8. Administrador Master. 74

Tabla 9. Administrador. 75

Tabla 10. Administrador Backup. 75

Tabla 11. Usuario Consulta. 75

Tabla 12. Requerimientos Pc. 76

Tabla 13. Desarrollo. 76

Tabla 14. Económicos. 77

ix
LISTAS DE ANEXOS

Pág.

Anexo A. Diseño de Software. 81

Anexo B. Entrevista Coordinador. 90

x
INTRODUCCION

El Banco Caja Social que en adelante se identificara para este proyecto como
“BCSC”, cuenta con 7 diferentes empresas, estas son: Banco Caja Social,
Colmena Fiduciaria, Colmena Capitalizadora, Colmena Vida y Riesgos
Profesionales, Servir, Deco y promotora de inversiones y cobranzas S.A. El
BCSC cuenta con el área de seguridad informática y Continuidad de negocios
para el manejo, control, administración y seguridad de la información de las
empresas y clientes, con metodologías y contingencias que permitan mantener
el negocio ante cualquier eventualidad de sus funciones normales. Entre estas
funciones se destacan la administración de dominios y certificados digitales
que permiten mantener la seguridad de la información de empresa y clientes.

La Web es una herramienta para el BCSC que permite que sus empresas y
clientes naveguen a través de esta, para adquirir productos y servicios, para
ello el área seguridad informática y continuidad de negocios del BCSC
administra y controla los dominios de las empresas y los certificados digitales
en sus vencimientos, esta labor se realiza de forma manual que permiten tener
la seguridad necesaria al momento que sus empresas y clientes utilicen la Web
para su servicio, este control es muy estricto ya que si se llegara a vencer un
dominio se podrían robar el dominio perjudicando el negocio y hasta generando
la perdida de la marca o el desprestigio y si se llegara vencer un certificado
digital no se podría garantizar la seguridad adecuada al momento de ingresar a
la Web. Este control se realiza actualmente de forma manual lo cual no es de
plena seguridad al momento de un vencimiento, por tanto se requiere como
primera medida para mitigar esta vulnerabilidad de la información el análisis y
diseño de un software, por tanto ¿Cómo ayuda el Análisis y Diseño de un
software que administre y advierta el vencimiento de los dominios y certificados
digitales del BCSC y sus empresas en forma sistematizada?

Mediante la metodología de Uml, la herramienta de Argo Uml y el


levantamiento de información respectivo, se genera el diseño requerido por el

2
BCSC, y debido a las limitaciones de tiempo se llega hasta el diseño del
software en mención.

El Banco Caja Social perteneciente al sector financiero, cuenta con múltiples


alternativas para la utilización de los servicios que prestan para los clientes,
ellos tienen la posibilidad de realizar diversas labores mediante las páginas de
Internet para su servicio con las que cuenta el banco, y mediante el área de
seguridad informática y continuidad de negocios, a cargo de la coordinación,
estas páginas cuentan con medidas de seguridad en las que se encuentra dos
partes, primera el dominio Ej. (www.bancocajasocial.com.co) y sus diferentes
extensiones junto al restante de dominios pertenecientes a las 7 empresas de
la fundación social, administradas por el banco, y en segunda instancia el
certificado digital emitido por la empresa VeriSign, compañía proveedora de
certificados digitales para el banco y sus empresas. Estos mecanismos de
seguridad implementados por el banco como otras compañías en el mundo son
vitales para la seguridad informática.

Estos forman parte del cerrojo de seguridad que el banco da a sus clientes
para garantizar que la información, las transacciones y los diferentes servicios
ofrecidos por el banco, mediante estas páginas sean seguros para los clientes.

OBJETIVOS

Conseguir que el Análisis y Diseño de un software de seguridad, administre los


dominios y certificados digitales del BCSC y sus empresas. Y permita el control
de vencimientos de forma sistematizada.

 Diseñar el software que servirá para el manejo de las fechas de


vencimientos y sus avisos de alerta.
 Identificar las fechas de los vencimientos y la forma como se va mostrar,
al momento que se vaya a vencer, tanto un certificado como un dominio.
 Validar la información suministrada por el BCSC de la cantidad y el
manejo de dominios y certificados digitales para el software.
 Aplicar al análisis y diseño el trabajo ingenieril que permita ajustar los
requerimientos del BCSC.

3
JUSTIFICACIÓN

El BCSC es una entidad financiera que hace parte del grupo de empresas
de la fundación social, su historia se construye desde el año 1911 hasta la
fecha un banco creado y formado para los colombianos partiendo de la
determinación de las políticas del BCSC ofrece servicios para la población
en general, pero con la labor de favorecer en servicios financieros a la
población más necesitada.

El mundo de hoy utiliza muchas herramientas Web que ha logrado facilitar


las labores diarias de la sociedad que antes se hacían de forma presencial
en los diferentes puntos de atención para sus requerimientos. A medida que
el mundo avanza el BCSC ha tomado Parte de estas nuevas herramientas
Web que permite a sus clientes tener mayor facilidad para sus diligencias y
trámites ofreciendo sus servicios financieros a toda hora y en cualquier
instancia.

Bajo la gestión del BCSC como entidad financiera tiene la responsabilidad y


la obligación de brindar a sus clientes y empresas la seguridad informática
cuando utilizan estas herramientas de rápido acceso y fácil manejo entre los
mecanismos de seguridad se encuentran el control de los dominios de las
diferentes empresas a su cargo y los certificados digitales, en el control que
se realiza, se verifican que los dominios no sean HACKEADOS, que
siempre estén disponibles, que los datos de los clientes se mantengan
seguros en los servidores de la entidad y entre otras funciones se encuentra
el control y la administración de los vencimientos tanto de los certificados
digitales como de los dominios esta gestión se realiza manual en un archivo
de Excel lo cual genera tener una falencia en la seguridad brindada de la
información del banco por la labor manual que se realiza.

Por tal razón se establece el análisis y diseño del software propuesto ya que
debido a este proyecto se tendrán ventajas en el proceso realizado; con
este proyecto se consigue la seguridad que debe tener esta información de
gran importancia para el banco, no por tanto se convierte en una necesidad

4
requerida ya que en estos tiempos son más constantes las amenazas
informáticas. Al realizar el análisis y diseño se logra avanzar en el objetivo
principal del banco, el cual es el diseño del software propuesto en este
proyecto que justifica su desarrollo e implementación posterior.

En el análisis y diseño de este proyecto se benefician la sociedad los


estudiantes de la U Cooperativa y la U Cooperativa como ente educativo.

La sociedad se beneficia debido que al momento de tener que navegar


sobre los servicios prestados en la Web por El BCSC tenga garantías
mayores de gestionar sus trámites sin tener el riego de ser víctima del robo
plagio, suplantación y otros del cliente , empresas y su información.

La universidad por su parte se beneficiaría debido a que sus principios


cooperativa permitirán darse a conocer en la gestión educativa formando
profesionales con virtudes sociales y comerciales.

Los estudiantes de la U Cooperativa sabrán reconocer las labores hechas


por profesionales egresados con proyectos de alta calidad formación
adquirida por la U Cooperativa de Colombia sede Bogotá.

Estos beneficios del diseño del software no solo los obtienen la universidad
sus estudiantes y la comunidad, si no de igual forma el banco y los clientes
del banco con este proceso interno el cual permite garantizar de una
manera más eficiente y segura los servicios prestados por el BCSC.

5
1. FUNDAMENTACIÓN TEÓRICA

En el Capítulo 1 marco teórico se brinda al lector una perspectiva de la teoría


más relevante de la propuesta realizada, esto con el fin de establecer la
información pertinente del desarrollo del diseño del proyecto.

1.1. RESEÑA HISTÓRICA

“1Cualquier rama de ingeniería o arquitectura ha encontrado útil desde hace


mucho tiempo la representación de los diseños de forma gráfica. Desde los
inicios de la informática se han estado utilizando distintas formas de
representar los diseños de una forma más bien personal o con algún modelo
gráfico. La falta de estandarización en la manera de representar gráficamente
un modelo impedía que los diseños gráficos realizados se pudieran compartir
fácilmente entre distintos diseñadores. Se necesitaba por tanto un lenguaje no
sólo para comunicar las ideas a otros desarrolladores sino también para servir
de apoyo en los procesos de análisis de un problema. Con este objetivo se
creó el Lenguaje Unificado de Modelado (UML: Unified Modeling Language).
UML se ha convertido en ese estándar tan ansiado para representar y modelar
la información con la que se trabaja en las fases de análisis y, especialmente,
de diseño”.

1.2 HISTORIA DE UML

“El lenguaje UML comenzó a gestarse en octubre de 1994, cuando Rumbaugh


se unió a la compañía Rational fundada por Booch (dos reputados
investigadores en el área de metodología del software).
El objetivo de ambos era unificar dos métodos que habían desarrollado: el
método Booch y el OMT (Object Modelling Tool ). El primer borrador apareció
en octubre de 1995. En esa misma época otro reputado investigador,Jacobson,

1
http://www.disca.upv.es/enheror/pdf/ActaUML.PDF

6
se unió a Rational y se incluyeron ideas suyas. Estas tres personas son
conocidas como los “tres amigos”. Además, este lenguaje se abrió a la
colaboración de otras empresas para que aportaran sus ideas. Todas estas
colaboraciones condujeron a la definición de la primera versión de UML.
Es un lenguaje de modelado visual que se usa para especificar, visualizar,
construir y documentar artefactos de un sistema de software. Se usa para
entender, diseñar, configurar, mantener y controlar la información sobre los
sistemas a construir. UML capta la información sobre la estructura estática y el
comportamiento dinámico de un sistema. Un sistema se modela como una
colección de objetos discretos que interactúan para realizar un trabajo que
finalmente beneficia a un usuario externo. El lenguaje de modelado pretende
unificar la experiencia pasada sobre técnicas de modelado e incorporar las
mejores prácticas actuales en un acercamiento estándar. UML no es un
lenguaje de programación. Las herramientas pueden ofrecer generadores de
código de UML para una gran variedad de lenguaje de programación, así como
construir modelos por ingeniería inversa a partir de programas existentes.

La notación UML se deriva y unifica las tres metodologías de análisis y diseños


más extendidas. Metodología de Grady Booch para la descripción de conjuntos
de objetos y sus relaciones. Técnica de modelado orientada a objetos de
James Rumbaugh (OMT: Object - Modelling Technique). Aproximación de Ivar
Jacobson (OOSE: Object- Oriented Software Engineering) mediante la
metodología de casos de uso (use case). El desarrollo de UML comenzó a
finales de 1994 cuando Grady Booch y Jim Rumbaugh de Rational Software
Corporation empezaron a unificar sus métodos. A finales de 1995, Ivar Jacob
son y su compañía Objectory se incorporaron a Rational en su unificación,
aportando el método OOSE. De las tres metodologías de partida, las de Bco. y
Rumbaugh pueden ser descritas como centradas en objetos, ya que sus
aproximaciones se enfocan hacia el modelado de los objetos que componen el
sistema, su relación y colaboración. Por otro lado, la metodología de Jacobson
es más centrada a usuario, ya que todo en su método se deriva de los
escenarios de uso. UML se ha ido fomentando y aceptando como estándar

7
desde el OMG, que es también el origen de CORBA, el estándar líder en la
industria para la programación de objetos distribuidos. En 1997 UML 1.1 fue
aprobada por la OMG convirtiéndose en la notación estándar de facto para el
análisis y el diseño orientado a objetos. UML es el primer método en publicar
una meta-modelo en su propia notación, incluyendo la notación para la mayoría
de la información de requisitos, análisis y diseño. Se trata pues de una meta-
modelo auto-referencial (cualquier lenguaje de modelado de propósito general
debería ser capaz de modelarse a sí mismo)2”.

1.2.1 Modelado Visual

“Tal como indica su nombre, UML es un lenguaje de modelado. Un modelo es


una simplificación de la realidad. El objetivo del modelado de un sistema es
capturar las partes esenciales del sistema. Para facilitar este modelado, se
realiza una abstracción y se plasma en una notación gráfica. Esto se conoce
como modelado visual.
El modelado visual permite manejar la complejidad de los sistemas a analizar o
diseñar. De la misma forma que para construir una choza no hace falta un
modelo, cuando se intenta construir un sistema complejo como un rascacielos,
es necesario abstraer la complejidad en modelos que el ser humano pueda
entender. UML sirve para el modelado completo de sistemas complejos, tanto
en el diseño de los sistemas software como para la arquitectura hardware
donde se ejecuten.
Otro objetivo de este modelado visual es que sea independiente del lenguaje
de implementación, de tal forma que los diseños realizados usando UML se
puedan implementar en cualquier lenguaje que soporte las posibilidades de
UML (principalmente lenguajes orientados a objetos).
UML es además un método formal de modelado. Esto aporta las siguientes
ventajas:
 Mayor rigor en la especificación.

2
http://alvearjofre.galeon.com

8
 Permite realizar una verificación y validación del modelo realizado.
 Se pueden automatizar determinados procesos y permite generar código
a partir de los modelos y a la inversa (a partir del código fuente generar
los modelos). Esto permite que el modelo y el código estén actualizados,
con lo que siempre se puede mantener la visión en el diseño, de más
alto nivel, de la estructura de un proyecto3”.

Figura 1. Evolución de UML

Figura1. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

1.2.2 Qué es Uml

"UML es ante todo un lenguaje. Un lenguaje proporciona un vocabulario y una


regla para permitir una comunicación. En este caso, este lenguaje se centra en
la representación gráfica de un sistema.

3
http://www.disca.upv.es/enheror/pdf/ActaUML.PDF

9
Este lenguaje nos indica cómo crear y leer los modelos, pero no dice cómo
crearlos. Esto último es el objetivo de las metodologías de desarrollo.

Los objetivos de UML son muchos, pero se pueden sintetizar sus funciones:

• Visualizar: UML permite expresar de una forma gráfica un sistema de


forma que otro lo puede entender.

• Especificar: UML permite especificar cuáles son las características de un


sistema antes de su construcción.

• Construir: A partir de los modelos especifica.

• Documentar: Los propios elementos gráficos sirven como documentación


del sistema desarrollado que pueden servir para su futura revisión4”.

Los bloques de construcción se dividen en tres partes:


 Elementos, que son las abstracciones de primer nivel.
 Relaciones, que unen a los elementos entre sí.
 Diagramas, que son agrupaciones de elementos.

Existen cuatro tipos de elementos en UML, dependiendo del uso que se haga
de ellos:
 Elementos estructurales.
 Elementos de comportamiento.
 Elementos de agrupación
 Elementos de anotación.

Las relaciones, a su vez se dividen para abarcar las posibles interacciones


entre elementos que se nos pueden presentar a la hora de modelar usando
UML, estas son: relaciones de dependencia, relaciones de asociación,
relaciones de generalización y relaciones de realización.
Se utilizan diferentes diagramas dependiendo de qué, nos interese representar
en cada momento, para dar diferentes perspectivas de un mismo problema,
para ajustar el nivel de detalle, por esta razón UML soporta un gran número de
4
http://www.disca.upv.es/enheror/pdf/ActaUML.PDF

10
diagramas diferentes aunque, en la práctica, sólo se utilicen un pequeño
número de combinaciones.
UML proporciona un conjunto de reglas que dictan las pautas a la hora de
realizar asociaciones entre objetos para poder obtener modelos bien formados,
estas son reglas semánticas que afectan a los nombres, al alcance de dichos
nombres, a la visibilidad de estos nombres por otros, a la integridad de unos
elementos con otros y a la ejecución, o sea la vista dinámica del sistema.
UML proporciona una serie de mecanismos comunes que sirven para que
cada persona o entidad adapte el lenguaje a sus necesidades, pero dentro de
un marco ordenado y siguiendo unas ciertas reglas para que en el trasfondo de
la adaptación no se pierda la semántica propia de UML. Dentro de estos
mecanismos están las especificaciones, que proporcionan la explicación textual
de la sintaxis y semántica de los bloques de construcción.
Otro mecanismo es el de los adornos que sirven para conferir a los modelos de
más semántica, los adornos son elementos secundarios ya que proporcionan
más nivel de detalle, que quizá en un primer momento no sea conveniente
descubrir. Las divisiones comunes permiten que los modelos se dividan al
menos en un par de formas diferentes para facilitar la comprensión desde
distintos puntos de vista, en primer lugar tenemos la división entre clase y objeto
(clase es una abstracción y objeto es una manifestación de esa abstracción),
en segundo lugar tenemos la división interfaz / implementación donde la
interfaz presenta un contrato (algo que se va a cumplir de una determinada
manera) mientras que la implementación es la manera en que se cumple dicho
contrato.
Por último, los mecanismos de extensibilidad que UML proporciona sirven para
evitar posibles problemas que puedan surgir debido a la necesidad de poder
representar ciertos matices, por esta razón UML incluye los estereotipos, para
poder extender el vocabulario con nuevos bloques de construcción, los valores
etiquetados, para extender las propiedades un bloque, y las restricciones, para
extender la semántica. De esta manera UML es un lenguaje estándar "abierto-
cerrado" siendo posible extender el lenguaje de manera controlada.

11
1.2.3 Elementos Estructurales

“Los elementos estructurales en UML, es su mayoría, son las partes estáticas


del modelo y representan cosas que son conceptuales o materiales.

1.2.3.1 Clases

Una clase es una descripción de un conjunto de objetos que comparten los


mismos atributos, operaciones, relaciones y semántica. Una clase implementa
una o más interfaces. Gráficamente se representa como un rectángulo que
incluye su nombre, sus atributos y sus operaciones.

Figura 2. Clase

Clase Describe un conjunto de objetos


que comparten los mismos
atributos, métodos, relaciones y
semántica.
Figura 2. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

1.2.3.2 Interfaz

Una interfaz es una colección de operaciones que especifican un servicio de


una determinada clase o componente. Una interfaz describe el comportamiento
visible externamente de ese elemento, puede mostrar el comportamiento
completo o sólo una parte del mismo. Una interfaz describe un conjunto de
especificaciones de operaciones (o sea su signatura) pero nunca su
implementación. Se representa con un círculo, y rara vez se encuentra aislada
sino que más bien conectada a la clase o componente que realiza.

12
Figura 3. Interfaz

Interfaz Agrupación de métodos u


operaciones que especifican un
servicio de una clase o
componente, describiendo su
comportamiento, completo o
parcial, externamente visible.
UML permite emplear un círculo
para representar las interfaces,
aunque lo más normal es
emplear la clase con el nombre
en cursiva.
Figura 3. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

1.2.3.3 Colaboración

Define una interacción y es una sociedad de roles y otros elementos que


colaboran para proporcionar un comportamiento cooperativo mayor que la
suma de los comportamientos de sus elementos. Las colaboraciones tienen
una dimensión tanto estructural como de comportamiento. Una misma clase
puede participar en diferentes colaboraciones. Las colaboraciones representan
la implementación de patrones que forman un sistema. Se representa mediante
una elipse con borde discontinuo.

Figura 4. Colaboración.

Colaboración Define una interacción entre


elementos que cooperan para
proporcionar un comportamiento
mayor que la suma de los
comportamientos de sus

13
elementos.
Figura 4. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

1.2.3.4 Casos de Uso

Un caso de uso es la descripción de un conjunto de acciones que un sistema


ejecuta y que produce un determinado resultado que es de interés para un actor
particular. Un caso de uso se utiliza para organizar los aspectos del
comportamiento en un modelo. Un caso de uso es realizado por una
colaboración. Se representa como en la figura 6, una elipse con borde
continuo.

Figura 5. Casos de Uso.

Caso de uso Describe un conjunto de


secuencias de acciones que un
sistema ejecuta, para producir
un resultado observable de
interés. Se emplea para
estructurar los aspectos de
comportamiento de un modelo.
Figura 5. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

1.2.3.5 Clase Activa

Es una clase cuyos objetos tienen uno o más procesos o hilos de ejecución por
lo y tanto pueden dar lugar a actividades de control. Una clase activa es igual
que una clase, excepto que sus objetos representan elementos cuyo
comportamiento es concurrente con otros elementos. Se representa igual que
una clase, pero con líneas más gruesas.

14
Figura 6. Clase Activa.

Clase activa Se trata de una clase, en la que


existen procesos o hilos de
ejecución concurrentes con
otros elementos. Las líneas del
contorno son más gruesas que
en la clase "normal"
Figura 6. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

1.2.3.6 Componentes

Un componente es una parte física y reemplazable de un sistema que


conforma con un conjunto de interfaces y proporciona la implementación de
dicho conjunto. Un componente representa típicamente el empaquetamiento
físico de diferentes elementos lógicos, como clases, interfaces y
colaboraciones.

Figura 7. Componentes

Componente Parte física y por tanto


reemplazable de un modelo, que
agrupa un conjunto de
interfaces, archivos de código
fuente, clases, colaboraciones y
proporciona la implementación
de dichos elementos.
Figura 7. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml
1.2.3.7 Nodos

Un nodo es un elemento físico que existe en tiempo de ejecución y representa


un recurso computacional que, por lo general, dispone de algo de memoria y,

15
con frecuencia, de capacidad de procesamiento. Un conjunto de componentes
puede residir en un nodo.

Figura 8. Nodo.

Nodo Elemento físico que existe en


tiempo de ejecución y
representa un recurso
computacional con capacidad de
procesar.
Figura 8. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

Estos siete elementos vistos son los elementos estructurales básicos que se
pueden incluir en un modelo UML. Existen variaciones sobre estos elementos
básicos, tales como actores, señales, utilidades (tipos de clases), procesos e
hilos (tipos de clases activas) y aplicaciones, documentos, archivos, bibliotecas,
páginas y tablas (tipos de componentes).

1.2.3.8 Elementos de comportamiento

Los elementos de comportamiento son las partes dinámicas de un modelo. Se


podría decir que son los verbos de un modelo y representan el comportamiento
en el tiempo y en el espacio. Los principales elementos son los dos que siguen.

1.2.3.8.1 Interacción

Es un comportamiento que comprende un conjunto de mensajes


intercambiados entre un conjunto de objetos, dentro de un contexto particular
para conseguir un propósito específico. Una interacción involucra otros muchos
elementos, incluyendo mensajes, secuencias de acción (comportamiento
invocado por un objeto) y enlaces (conexiones entre objetos). La
representación de un mensaje es una flecha dirigida que normalmente con el
nombre de la operación.

16
1.2.3.8.2 Máquinas de estado

Es un comportamiento que especifica las secuencias de estados por las que


van pasando los objetos o las interacciones durante su vida en respuesta
a eventos, junto con las respuestas a esos eventos. Una máquina de estados
involucra otros elementos como son estados, transiciones (flujo de un estado a
otro), eventos (que disparan una transición) y actividades (respuesta de una
transición).

Figura 9. Elementos de Comportamientos.

Elementos Interacción Comprende un conjunto


de de mensajes que se
comportamiento intercambian entre un
conjunto de objetos,
para cumplir un objetivo
específico.

Máquinas Especifica la secuencia


de de estados por los que
estados pasa un objeto o una
interacción, en
respuesta a eventos.
Figura 9. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

1.2.3.9 Elementos de agrupación

Forman la parte organizativa de los modelos UML. El principal elemento de


agrupación es el paquete, que es un mecanismo de propósito general para
organizar elementos en grupos. Los elementos estructurales, los elementos de
comportamiento, incluso los propios elementos de agrupación se pueden incluir

17
en un paquete. Un paquete es puramente conceptual (sólo existe en tiempo de
desarrollo). Gráficamente se representa como una carpeta conteniendo
normalmente su nombre y, a veces, su contenido.
Figura 10. Paquete.

Elementos Paquete Se emplea para organizar


de otros elementos en
agrupación grupos.
Figura 10. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

1.2.3.10 Elementos de anotación

Los elementos de anotación son las partes explicativas de los modelos UML.
Son comentarios que se pueden aplicar para describir, clasificar y hacer
observaciones sobre cualquier elemento de un modelo. El tipo principal de
anotación es la nota que simplemente es un símbolo para mostrar restricciones
y comentarios junto a un elemento o un conjunto de elementos.

Figura 11. Nota.

Elementos Nota Partes explicativa de


de UML, que puede describir
notación textualmente cualquier
aspecto del modelo
Figura 11. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

1.2.3.11 Relaciones

Existen cuatro tipos de relaciones entre los elementos de un modelo


UML. Dependencia, asociación, generalización y realización,estas se describen
a continuación:

1.2.3.11.1 Dependencia

18
Es una relación semántica entre dos elementos en la cual un cambio a un
elemento (el elemento independiente) puede afectar a la semántica del otro
elemento (elemento dependiente). Se representa como una línea discontinua,
posiblemente dirigida, que a veces incluye una etiqueta.

Figura 12. Dependencia.

Dependencia Es una relación entre dos elementos, tal


que un cambio en uno puede afectar al
otro.
Figura 12. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

1.2.3.11.2 Asociación

Es una relación estructural que describe un conjunto de enlaces, los cuales son
conexiones entre objetos. La agregación es un tipo especial de asociación y
representa una relación estructural entre un todo y sus partes. La asociación se
representa con una línea continua, posiblemente dirigida, que a veces incluye
una etiqueta. A menudo se incluyen otros adornos para indicar la multiplicidad y
roles de los objetos involucrados.

Figura 13. Asociación.

Asociación Es una relación estructural que resume


un conjunto de enlaces que son
conexiones entre objetos.
Figura 13. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

1.2.3.11.3 Generalización

Es una relación de especialización / generalización en la cual los objetos del


elemento especializado (el hijo) pueden sustituir a los objetos del elemento
general (el padre). De esta forma, el hijo comparte la estructura y el

19
comportamiento del padre. Gráficamente, la generalización se representa con
una línea con punta de flecha vacía.

Figura 14. Generalización.

Generalización Es una relación en la que el elemento


generalizado puede ser substituido por
cualquiera de los elementos hijos, ya
que comparten su estructura y
comportamiento.
Figura 14. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

1.2.3.11.4 Realización

Es una relación semántica entre clasificadores, donde un clasificador especifica


un contrato que otro clasificador garantiza que cumplirá. Se pueden encontrar
relaciones de realización en dos sitios: entre interfaces y las clases y
componentes que las realizan, y entre los casos de uso y las colaboraciones
que los realizan. La realización se representa como una mezcla entre la
generalización y la dependencia, esto es, una línea discontinua con una punta
de flecha vacía.

Figura 15. Realización.

Realización Es una relación que implica que la


parte realizante cumple con una serie
de especificaciones propuestas por la
clase realizada (interfaces).
Figura 15. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

1.2.4 Diagramas

Los diagramas se utilizan para representar diferentes perspectivas de un


sistema de forma que un diagrama es una proyección del mismo. UML
proporciona un amplio conjunto de diagramas que normalmente se usan en

20
pequeños subconjuntos para poder representar las cinco vistas principales de
la arquitectura de un sistema.
1.2.4.1 Diagramas de Clases

Muestran un conjunto de clases, interfaces y colaboraciones, así como sus


relaciones. Estos diagramas son los más comunes en el modelado de sistemas
orientados a objetos y cubren la vista de diseño estática o la vista de procesos
estática (sí incluyen clases activas).

Figura 16. Diagrama de Clases.

Figura 16. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

Figura 17. Ejemplo de Diagrama de Clases

21
Figura 17. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

1.2.4.2 Diagramas de Objetos

Muestran un conjunto de objetos y sus relaciones, son como fotos instantáneas


de los diagramas de clases y cubren la vista de diseño estática o la vista de
procesos estática desde la perspectiva de casos reales o prototípicos.

Figura 18. Diagrama de Objetos.

Objetos Análogo al diagrama de clases,


muestra un conjunto de objetos
y sus relaciones, pero a modo
de vista instantánea de
instancias de una clase en el
tiempo.
Figura 18. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

1.2.4.3 Diagramas de Casos de Usos

Muestran un conjunto de casos de uso y actores (tipo especial de clases) y sus


relaciones. Cubren la vista estática de los casos de uso y son especialmente
importantes para el modelado y organización del comportamiento.

Figura 19. Diagramas de Casos de Usos

Casos de Muestra un conjunto de casos de


Uso uso, los actores implicados y sus
relaciones. Son diagramas
fundamentales en el modelado y
organización del sistema.
Figura 19. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

22
1.2.4.4 Diagramas de Secuencia y de Colaboración

Tanto los diagramas de secuencia como los diagramas de colaboración son un


tipo de diagramas de interacción. Constan de un conjunto de objetos y sus
relaciones, incluyendo los mensajes que se pueden enviar unos objetos a
otros. Cubren la vista dinámica del sistema. Los diagramas de secuencia
enfatizan el ordenamiento temporal de los mensajes mientras que los
diagramas de colaboración muestran la organización estructural de los objetos
que envían y reciben mensajes. Los diagramas de secuencia se pueden
convertir en diagramas de colaboración sin pérdida de información, lo mismo
ocurren en sentido opuesto.

Figura 20. Diagrama de secuencia y de colaboración.

Secuencia

Colaboración

Figura 20. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

1.2.4.5 Diagramas de Estados

Muestran una máquina de estados compuesta por estados, transiciones,


eventos y actividades. Estos diagramas cubren la vista dinámica de un sistema
y son muy importantes a la hora de modelar el comportamiento de una interfaz,
clase o colaboración.

23
Figura 21. Estados.

Estados Muestra una máquina de estados,


con sus estados, transiciones,
eventos y actividades. Cubren la
vista dinámica de un sistema.
Modelan comportamientos
reactivos en base a eventos.
Figura 21. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

1.2.4.6 Diagramas de Actividades

Son un tipo especial de diagramas de estados que se centra en mostrar el flujo


de actividades dentro de un sistema. Los diagramas de actividades cubren la
parte dinámica de un sistema y se utilizan para modelar el funcionamiento de
un sistema resaltando el flujo de control entre objetos.

Figura 22. Actividades.

Actividades Tipo especial de diagrama de


estados que muestra el flujo
de actividades dentro de un
sistema.

Figura 22. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

1.2.4.7 Diagramas de Componentes

Muestra la organización y las dependencias entre un conjunto de componentes.


Cubren la vista de la implementación estática y se relacionan con los

24
diagramas de clases ya que en un componente suele tener una o más clases,
interfaces o colaboraciones.

Figura 23. Diagrama de Componentes.

Figura 23. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

1.2.4.8 Diagramas de Despliegue

Representan la configuración de los nodos de procesamiento en tiempo de


ejecución y los componentes que residen en ellos. Muestran la vista de
despliegue estática de una arquitectura y se relacionan con los componentes
ya que, por lo común, los nodos contienen uno o más componentes.

25
Figura 24. Diagrama de Despliegue5”.

Figura 24. http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

5
http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml

26
27
1.3 TIPOS DE HERRAMIENTAS DE DISEÑO

Tabla 1. Tipos de Herramientas de Diseño.

Herramienta
RhapsodyMode
ArgoUML FUJABA mUML ObjecteeringUML
ler
Universidad de
Tigris MountField Computers I-Logix Modeler softeam
Paderborn
Compañía (Feb-1998
(Mayo-
(versión )www.uni-
(Oct-2000) 2001)www.mfcomputers. (Sept-2000) (Abril-2001)
evaluada) paderborn.de/Fuja
com
ba
www.Ilogix.co www.objecteering.c
argouml.tigris.org
m om
WINDOWS,
Plataforma JAVA JAVA JAVA WINDOWS, UNIX
LINUX
Versión Demo
Versión Base (3
Licencia Libre Libre Libre (con
meses)
restricciones)

28
De Clases, de Estado, de De Clases y de Todos los
Actividad, de Casos de Uso, Actividades diagramas
Diagramas de Colaboración, (Combinación de UML menos
Todos los diagramas
que se pueden Deployment (combinación diagramas Todos los diagramas UML los de
UML
realizar de diagramas de de Colaboración colaboración y
Objetos/Componentes/Depli con los de Actividad diagramas de
egue y Estado) despliegue

Generación de JAVA (para Clases JAVA, C++ (hay que


JAVA JAVA, CORBA, IDL C, C++, JAVA
código y Actividades) poseer estos módulos)
Generación de
documentació NO NO SI SI Word y HTML
n
Apoyo al Base de Datos mySQL
NO SI (JDBC) NO Es necesaria licencia
repositorio (JDBC)
Ingeniería JAVA (también desde
NO JAVA C, C++, JAVA SI (módulo)
inversa bases de datos)

Navegación SI (distintas perspectivas de SI (árbol SI (organización en


SI (árbol jerárquico) SI (árbol jerárquico)
por el modelo navegación) jerárquico) paquetes)

No podemos
Exportación GIF, PostScript, EPS, salvar los Gif, PostScript,, EPS,
PostScript JPEG, Página Web
de diagramas PGML, SVG diagramas EMF
(restricción)

29
Depuración y
Métricas SI SI (Versión Control) NO testeo del SI
modelo
XMI SI SI NO SI SI
Diagramas SDL, Diversas
Ingeniería inversa desde
Apoyo a OCL, control de edición de Importación de notaciones (plantillas
Otras Bases de Datos, Ingeniería
errores (checklist) constrains y modelos ), diferentes scripts de
características inversa de una o todas las
automático simulación de Rational Rose generación, analiza
clases
Objetos errores

Herramienta
UML Studio Dia DOME
Pragsoft
Dia Honeywell GentleWare
Corporation
Compañía (Agosto-
(versión (Dic-2000) 2000)www.lysator.liu.se/~alla/ (Marzo-2000) (May-2002)
evaluada) dia
www.pragsoft.co www.htc.honeywell.com/do
hans.breuer.org/dia www.gentleware.com
m me
Plataforma WINDOWS LINUX, WINDOWS SMALLTALK JAVA

30
Versión sin
Licencia Licencia (con Libre Libre Libre
restricciones)

De Clases, de Estado, de
Todos los
Actividad, de Casos de Uso, de
Diagramas que diagramas UML Todos los diagramas UML Todos los diagramas UML
Colaboración, Deployment
se pueden menos diagramas menos diagramas de actividades, menos los diagramas de
(combinación de diagramas de
realizar de objetos y de de despliegue y de objetos objetos y de componentes
Objetos/Componentes/Deplieg
despliegue
ue)

Generación de C++, JAVA, Lo tiene que implementar el


NO genera código JAVA, HTML
código CORBA, IDL usuario

Generación de
HTML y RTF NO RTF, MIF, IAF,TXT, SGML SI
documentación
Apoyo al
SI NO NO ---
repositorio
Ingeniería C++, JAVA, Lo tenemos que implementar
NO SI
inversa CORBA, IDL nosotros

Navegación por SI (árbol SI (distintas perspectivas de


NO SI (árbol jerárquico )
el modelo jerárquico) navegación)

31
Exportación de XWD bitmap, PostScript, GIF, PostScript, EPS, PGML,
bmp, jpg, png SVG, EPS, PostScript, etc.
diagramas RTF, MIF SVG

Métricas SI Testeo de Objetos SI (Plugging) SI

XMI NO NO NO SI
Scripts, uso de
plantillas para Diversas notaciones, mensajes
Otras Numerosas plantillas, creación Control de errores (checklist)
generar símbolos, de error, creación de
características de símbolos con XML automático
diferentes ventanas notaciones propias
de información
Tabla 1. http://www.diatel.upm.es/malvarez/UML/Comparativa.html

32
1.3.1 Herramienta de selección de la organización financiera

De acuerdo las anteriores herramientas que se encuentran en el mercado para


el análisis y diseño de un software, están enmarcadas en el cuadro anterior
donde se muestra la mayoría de las herramientas de diseño las cuales en su
gran mayoría son gratuitas y de libre utilización, la que más se ajusta a las
necesidades y políticas del banco caja social de ahorros es la herramienta
Argo UML; ya que por su entorno gráfico permite ser mucho más eficiente ya
que permite visualizar, realizar y verificar los elementos que intervienen en el
análisis y diseño de un proyecto, por tanto por requerimiento del banco se opta
esta herramienta de desarrollo, ya que el resto de aplicaciones desarrolladas
dentro de la organización se ha venido utilizando la herramienta Argo UML, por
tal motivo el Banco Caja Social está de acuerdo en la utilización de Argo UML.
Para el desarrollo del nombre del proyecto Análisis y Diseño de un software
que administre y advierta los vencimientos de los certificados digitales. De este
se parte para la gestión de inclusión del diseño del software requerido teniendo
en cuenta que otro grupo será quien realice el desarrollo de este diseño
propuesto.

33
1.4 MARCO LEGAL Y JURIDICO

1.4.1 Introducción a la norma ISO 12207

“La norma ISO 12207 establece un marco de referencia común para los procesos
del ciclo de vida del software, con una terminología bien definida a la que puede
hacer referencia la industria del software.
Contiene procesos, actividades y tareas para aplicar durante la adquisición de
Un sistema que contiene software, un producto software puro o un servicio
software, y durante el suministro, desarrollo, operación y mantenimiento de
productos software. Esta norma incluye también un proceso que puede emplearse
para definir, controlar y mejorar los Procesos* del ciclo de vida del software.

1.4.1.1 Organización

1.4.1.1.1 Procesos del ciclo de vida

Esta norma agrupa las actividades que pueden llevarse a acabo durante el ciclo
de vida del software en cinco procesos principales, ocho procesos de apoyo y
cuatro procesos organizativos. Cada proceso del ciclo de vida está dividido en un
conjunto de actividades; cada actividad se subdivide a su vez en un conjunto de
tareas. Calidad de Sistemas de Información 5º Curso Marco de Evaluación EFQM
7. Los procesos del ciclo de vida software son los siguientes:

1.4.1.1.2 Procesos principales del ciclo de vida

Los procesos principales del ciclo de vida son aquellos que son fundamentales a
la hora del desarrollo, explotación y mantenimiento durante el transcurso del ciclo
de vida del software. Los procesos principales son los siguientes:

34
1.4.1.1.3 Proceso de adquisición

En este proceso de define las tareas que tiene que realizar el comprador, cliente
cuando adquiere un producto o servicio software. Algunas de las tareas son:
preparación de ofertas, elección del distribuidor del software, gestión de la
adquisición.

1.4.1.1.4 Proceso de suministro

En este proceso de define las actividades que el suministrador realiza, desde que
prepara el presupuesto de una petición de compra hasta la entrega del software al
cliente.

1.4.1.1.5 Proceso de desarrollo

Este proceso engloba las actividades de análisis, diseño, codificación, integración,


pruebas e instalación y aceptación. Calidad de Sistemas de Información 5º Curso
Marco de Evaluación EFQM 8

1.4.1.1.6 Proceso de operación

En este proceso se incluyen la explotación del software y servicios de soporte para


los usuarios del sistema.

1.4.1.1.7 Proceso de mantenimiento

En este proceso aparecen reflejadas las actividades de modificación del software,


debido a errores a deficiencias, necesidades de mejora, etc. En este proceso se
incluye la migración y retirada del producto software.

35
1.4.1.2.1 Procesos de apoyo del ciclo de vida

Está formado por ocho procesos. Un proceso de apoyo es el que apoya a los
demás procesos y garantiza el éxito y la calidad del producto software
desarrollado.

1.4.1.2.2 Proceso de documentación

Define las actividades para el registro de la información producida por un proceso


o actividad del ciclo de vida.

1.4.1.2.3 Proceso de gestión de la configuración

Define las actividades para identificar y establecer las líneas bases fundamentales
para el desarrollo de elementos software, gestión de versiones, variante, en
general actividades para el control del cambio.

1.4.1.2.4 Proceso de aseguramiento de la calidad

Define las actividades para verificar que los productos software cumplen con los
requisitos especificados por el usuario y se ajustan a los planes establecidos. El
aseguramiento de la calidad puede realizarse utilizando el resultado obtenido en
otros procesos como el de apoyo, verificación, validación, revisiones conjuntas,
auditorias.

1.4.1.2.5 Proceso de verificación

Define las actividades de verificación de los requisitos en cuanto a que éstos sean
completos y correctos y además que cumplan con las condiciones establecidas en
fases previas.

36
1.4.1.2.6 Proceso de validación

En este proceso de definen las actividades para asegurar que el software final
contempla todos los requisitos previos para su uso.

1.4.1.2.7 Proceso de revisiones conjuntas

Define las actividades para evaluar el estado y productos de una actividad.


Calidad de Sistemas de Información 5º Curso Marco de Evaluación EFQM 9.

1.4.1.2.8 Proceso de auditoría

Define las actividades para determinar el cumplimiento de los requisitos, planes y


contrato. Este proceso puede ser empleado por dos partes cualesquiera, donde
una parte (la auditora) audita los productos software o actividades de otra parte (la
auditada).

1.4.1.2.9 Proceso de solución de problemas

Define un proceso para analizar y eliminar los problemas (incluyendo las no


conformidades) que sean descubiertos durante la ejecución del proceso de
desarrollo, operación, mantenimiento u otros procesos, de esta manera se
asegura que todos los problemas que surgen se solucionan.

1.4.1.3.1 Procesos organizativos del ciclo de vida

Los procesos organizativos del ciclo de vida, son cuatro. Se emplean por una
organización para establecer e implementar una infraestructura constituida por

37
procesos y personal asociados al ciclo de vida, ayudan a mejorar la efectividad de
la organización.

1.4.1.3.2 Proceso de gestión

Define las actividades básicas de gestión de los procesos durante el ciclo de vida.

1.4.1.3.3 Proceso de infraestructura

Define las actividades básicas para establecer la infraestructura necesaria para los
procesos: hardware, software, instalaciones, normas.

1.4.1.3.4 Proceso de mejora

Define las actividades básicas para controlar, medir los procesos del ciclo de vida.

1.4.1.3.5 Proceso de formación

Define las actividades para mantener al persona 6l”.

1.4.2 Norma Iso 9000

“La familia de Normas ISO 9000 citadas a continuación se ha elaborado para


asistir a las organizaciones, de todo tipo y tamaño, en la implementación y la
operación de sistemas de gestión de la calidad eficaces. La Norma ISO 9000:
describe los fundamentos de los sistemas de gestión de la calidad y especifica la

6
http://redescepalcala.org/inspector/DOCUMENTOS%20Y%20LIBROS/EVALUACION/EFQM/MAR
CO%20DE%20EVALUACION%20EFQM.pdf

38
terminología de los sistemas de gestión de la calidad.

La Norma ISO 9001: especifica los requisitos para los sistemas de gestión de la
calidad aplicables a toda organización que necesite demostrar su capacidad para
proporcionar productos que cumplan los requisitos de sus clientes y los
reglamentarios que le sean de aplicación y su objetivo es aumentar la satisfacción
del cliente.

La Norma ISO 9004: proporciona directrices que consideran tanto la eficacia como
la eficiencia del sistema de gestión de la calidad. El objetivo de esta norma es la
mejora del desempeño de la organización y la satisfacción de los clientes y de las
partes interesadas.

La Norma ISO 19011: proporciona orientación relativa a las auditorías de


sistemas de gestión de la calidad y de gestión ambiental.

Todas estas normas juntas forman un conjunto coherente de normas de sistemas


de gestión de la calidad que facilitan la mutua comprensión en el comercio
nacional e internacional.

1.4.2.1 Principios de Gestión de la Calidad

Para conducir y operar una organización en forma exitosa se requiere que ésta se
dirija y controle en forma sistemática y transparente. Se puede lograr el éxito
implementando y manteniendo un sistema de gestión que esté diseñado para
mejorar continuamente su desempeño mediante la consideración de las
necesidades de todas las partes interesadas. La gestión de una organización
comprende la gestión de la calidad entre otras disciplinas de gestión. Se han
identificado ocho principios de gestión de la calidad que pueden ser utilizados por
la alta dirección con el fin de conducir a la organización hacia una mejora en el
desempeño.

39
a) Enfoque al cliente: las organizaciones dependen de sus clientes y por lo tanto
deberían comprender las necesidades actuales y futuras de los clientes, satisfacer
los requisitos de los clientes y esforzarse en exceder las expectativas de los
clientes.

b) Liderazgo: los líderes establecen la unidad de propósito y la orientación de la


organización. Ellos deberían crear y mantener un ambiente interno, en el cual el
personal pueda llegar a involucrarse totalmente en el logro de los objetivos de la
organización.

c) Participación del personal: el personal, a todos los niveles, es la esencia de una


organización y su total compromiso posibilita que sus habilidades sean usadas
para el beneficio de la organización.

d) Enfoque basado en procesos: un resultado deseado se alcanza más


eficientemente cuando las actividades y los recursos relacionados se gestionan
como un proceso.

e) Enfoque de sistema para la gestión: identificar, entender y gestionar los


procesos interrelacionados como un sistema, contribuye a la eficacia y eficiencia
de una organización en el logro de sus objetivos.

f) Mejora continua: la mejora continua del desempeño global de la organización


debería ser un objetivo permanente de ésta.

g) Enfoque basado en hechos para la toma de decisión: las decisiones eficaces


se basan en el análisis de los datos y la información.

h) Relaciones mutuamente beneficiosas con el proveedor: una organización y sus


proveedores son interdependientes, y una relación mutuamente beneficiosa

40
aumenta la capacidad de ambos para crear valor7”.

1.4.3 Norma Iso 15504

Figura 25. Proceso 15504

Figura 25. http://www.ati.es/IMG/pdf/Garzas-2.pdf

“El ISO/IEC 15504, también conocido como Software Process Improvement


Capability Determinación, abreviado SPICE, en español, «Determinación de la
Capacidad de Mejora del Proceso de Software» es un modelo para la mejora y
evaluación de los procesos de desarrollo y mantenimiento de sistemas de

7
http://medicina.udea.edu.co/calfm/NORMATIVIDAD%20Y%20LEGISLACION/NTC-ISO9000.pdf

41
información y productos de software. La norma ISO 15504 SPICE es una norma
abierta e internacional para evaluar y mejorar la capacidad y madurez de los
procesos. Junto con la ISO 12207, la norma aplica a la evaluación y mejora de la
calidad del proceso de desarrollo y mantenimiento de software.

1.4.3.1. Características

Establece un marco y los requisitos para cualquier proceso de evaluación de


procesos Proporciona requisitos para los modelos de evaluación de los procesos y
para modelos de evaluación de organizaciones. Proporciona guías para la
definición de las competencias de un evaluador de procesos. Comprende:
evaluación de procesos, mejora de procesos, determinación de capacidad8”.

8
http://www.ati.es/IMG/pdf/Garzas-2.pdf

42
2. DESARROLLO INGENIERIL

El Banco Caja social inicia su historia en el año 1911 bajo el nombre de caja social
de ahorros del círculo de obreros. Fundada por el Padre José María Campoamor,
sacerdote Jesuita español, y por consiguiente la Fundación Social que hoy día
cuenta con 7 diferentes empresas como lo son (Banco Caja Social, Colmena
fiduciaria, Colmena capitalizadora, Colmena vida y riesgos profesionales,
promotora, servir, Deco) Para intervenir estructuralmente en la sociedad, ha
desarrollado, a lo largo de la historia, un modelo de actuación constituido por 3
instrumentos:

 Las empresas.
 Los Proyectos Sociales Directos.
 El Macroinflujo.1

El BCSC o Banco Caja Social fue creado en el 2005 como resultado de la fusión
del Banco Caja Social de ahorros y el banco Colmena, esta fusión se realizó con
el propósito de enfrentar las nuevas tendencias de las entidades financiera, esta
unión se ejerce para transformar y convertir un banco con experiencia, solidez,
fuerza comercial y mayor responsabilidad social ante las nuevas compañías
financieras del mercado actual, entre sus grandes logros como entidad financiera,
se encuentra en mantener su misión desde hace 100 años (Ayudar a convertir los
ahorros de sus clientes en proyecciones para cumplir metas y tener un futuro a las
familias colombianas más necesitadas de Colombia).

El banco caja social por ser un entidad financiera reconocida a nivel comercial con
una reputación y un prestigio que proteger y ligado a su misión de ayudar a la
población colombiana con pocas oportunidades de tener una vida digna,
brindándoles productos como créditos de vivienda, libre inversión entre otros,

43
dejando atrás el estrato social y con la firme convicción de brindar apoyo a
quienes más lo necesitan. El banco tiene una gran responsabilidad, con las
decisiones y acciones que toma como ente financiero, es por esto que cada una
de sus áreas responsables de procesos vitales para el Corp. del banco son
debidamente analizados para evitar riesgos que amenazan a la sostenibilidad del
banco, por tanto entre una de estas áreas existe una que brinda la seguridad en la
información y la continuidad de negocios del banco, con el apoyo de esta área, se
mantiene la información del banco como de los clientes segura. A través del área
de seguridad informática se vigilan los dominios y certificados digitales, los cuales
pertenecen al banco, estos dominios cuentan con el protocolo de seguridad
HTTPS y con este un certificado digital emitido por la empresa VERISIGN, la
administración de estos medios de seguridad de la información del banco y sus
clientes actualmente se realiza manualmente en un archivo de Excel custodiado y
ubicado en el equipo (portátil) del coordinador del área de seguridad informática y
continuidad de negocios.

Por la razón de tener esta administración en forma manual, se han tenido diversos
inconvenientes ya que se convierte en una labor muy tediosa que se presta a
errores humanos, ya que si un dominio o certificado digital se llegara a vencer y no
se hubiera actualizado o se hubiera comprado a tiempo, sería una amenaza
inminente para la reputación y la información confidencial del banco y sus clientes,
permitiendo que terceras persona o eventualidades tuvieran acceso a esta puerta
que amenazaría directamente al banco, debido a esto el banco y el área de
seguridad informática, decidieron optar por la administración de los certificados
digitales y los dominios de forma sistematizada.

Por tanto con el diseño de un software que administre y advierta sobre los
vencimientos de los certificados digitales y dominios del banco, se daría un paso
para la administración sistematizada esperada, para minimizar riesgos en la
información. Obteniendo el diseño como objetivo del proyecto, este diseño se
convierte en la base para que un estudiante nuevo que ingrese al área de

44
seguridad informática y continuidad de negocios del Banco Caja Social pueda
desarrollar e implementar el proyecto, dando cumplimiento a esta falencia
administrada de forma manual.

2.1 SEGURIDAD INFORMÁTICA

El banco caja social cuenta con diversos sistemas de seguridad para su


información, debido a su cantidad de acciones operativas relacionadas con
finanzas entre las que se encuentra la banca además de la información privada
de clientes y empleados de todas las empresas pertenecientes al grupo, por
tanto la responsabilidad de proteger de la mejor manera estos datos de primordial
importancia para sostenibilidad, del corp. del negocio, el banco cuenta con
centros de datos especializados en lo que se encuentran diferentes servidores
con labores específicas que permiten mantener el objetivo del cuidados de la
información, el DATACENTER principal se encuentra ubicado en la sede con
nombre ( Calle 59) ubicada en la dirección Calle 59 # 10-39 edificación con 16
pisos de los cuales el este se encuentra ubicado entre los pisos (10,11 y 12 ) de
la edificación con seguridad y protocolos de acceso al él, este solo tienen acceso
a 5 operadores de centro de datos previamente certificados por el banco, los
directivos del área de gerencia tecnológica y algunos funcionarios con previa
autorización la cual se realiza con 2 días de antelación, el ingreso de estos
funcionarios se realiza mediante la autorización solo y únicamente por parte de la
gerencia de tecnología de lo contrario no se dará acceso por ningún motivo a los
funcionarios, por tanto no es posible conseguir imágenes y datos exactos sobre la
seguridad del sitio mencionado solo lo indicado anteriormente.
Los funcionarios que cuentan con los permisos de autorización por ser quienes
custodian este centro de datos tiene ingreso con tarjeta de acceso huella dactilar
y verificación por la seguridad privada del DATACENTER, en su interior se
encuentra con temperatura ambiente y cámaras con sensores. El banco por
medidas de seguridad tiene 2 sitios más para el asegurar la información, uno

45
ubicado en la avenida 26 con 68 edificio Davivienda Bogotá y el otro en la
localidad de suba; estos sitios son el respaldo de esta información mencionada
cada vez que se realice algún proceso del banco todo está configurado para su
respaldo de información en estos diferentes puntos.

2.2. PROPUESTA DE CONTENCIÓN DE FALLOS

El diseño del software propuesto cuenta con un espacio en el servidor, generado


debido a previa autorización por la vicepresidencia de seguridad informática y
continuidad de negocios este espacio propuesto se ubica en el servidor
10.5.10.35// certificados digitales y 10.5.10.53// dominios, esto permite tener
información de los certificados y dominios segura en un servidor que es vigilado
por el banco.

2.3. MÓDULO DE ADMINISTRACIÓN

A través del módulo de administración el cual está formado por dos


administradores uno (administrador backup y el otro administrador) esto perfiles
que están en el diseño del software cuentan con los permisos de manipular el
software y la información de los certificados digitales y dominios. Por razones de
seguridad del banco esta información es almacenada en un servidor, sin embargo
esta información cuenta con un backup realizado por el área de redes, para su
aseguramiento, de igual forma el perfil administrador puede generar su propio
backup de seguridad mediante un base de datos local en el equipo que haya sido
instalado el software al ser realizado.

2.4. RECURSO PARA LA RECUPERACIÓN DE LA INFORMACIÓN

El diseño del software cuenta con una base de datos local para asegurar que la
información de los certificados digitales y dominios, para posibles opciones de

46
recuperación ante posibles eventos que generen alteraciones o perdidas en la
información.
Para tener múltiples opciones de recuperación de información se cuenta con el
almacenamiento realizado por el área de redes del banco.

2.5. CERTIFICADOS DE SEGURIDAD

2.5.1. Qué son los Certificados de Seguridad

“Los certificados de seguridad son una medida de confianza adicional para las
personas que visitan y hacen transacciones en su página Web, le permite cifrar los
datos entre el ordenador del cliente y el servidor que representa a la página. El
significado más preciso de un certificado de seguridad es que con él logramos que
los datos personales sean encriptados y así imposibilitar que sean interceptados
por otro usuario. Ahora es muy común ver en nuestros exploradores el protocolo
de seguridad HTTPS; mediante éste, básicamente nos dice que la información que
se envía a través de Internet, entre el navegador del cliente y el servidor donde
está alojada la página, esta información es encriptado, de forma que es casi
imposible que otra persona reciba, vea o modifique los datos confidenciales del
cliente. Las ventajas de este sistema las podemos ver fácilmente, ya que sí es
seguro, podemos medir la confianza de nuestro sitio en cuanto al volumen de
ventas en línea. Para los clientes es fundamental realizar compras de manera
segura y así identificar que la información llegará al servidor correcto.

Los certificados de seguridad brindan confianza en línea, al obtener un certificado,


su cliente podrá conocer la información sobre su empresa. Al ofrecer seguridad,
aumentará el número de clientes y usuarios, realizando más compras en su sitio
Web y así tener una experiencia en Internet más rentable y segura.

Los sitios Web que cuentan con certificados de seguridad nos permiten saber
quién es el dueño del mismo, saber a qué dominio pertenece, la procedencia real

47
del dueño del sitio, la validez del certificado, así como su fecha de caducidad, y
sobre todo, la empresa que ha emitido el certificado. Podemos decir que los sitios
Web que consideran necesario un certificado de seguridad logran garantizar
mayor seguridad a los usuarios.

Tiene que elegir el certificado de seguridad más completo y así estar


resguardando la seguridad del cliente, es lo más importante en la empresa. Para
identificar fácilmente que navegamos en una página Web segura, en nuestro
explorador de Internet se muestra un icono de candado, indicando que la
transferencia de datos entre su computadora y el servidor no puede ser
interceptado por nadie.

Si una organización desea tener un sitio Web seguro que use codificación como
establece más adelante, necesita obtener un certificado para el sitio de Internet o
para el servidor que lo va a almacenar. Algunas pautas que se deben tener en
cuenta para determinar si un sitio usa codificación por tanto segura, es mirar si el
candado está cerrado al pie de página de su navegador, y verificar que la URL en
la dirección del sitio es https: en vez de http. Ejemplo:

Figura 26. Concepto Https.

Figura 26. www.bancocajasocial.com

Al estar seguro de que un sitio codifica su información, y tiene un certificado


válido, esto ayuda a proteger los datos personales de ciertos sitios que pretenden
robar esta información personal. Si un sitio Web tiene un certificado válido y fecha
sin caducidad, significa que se ha tomado algunos pasos para verificar que la
dirección Web pertenece a la organización en el ejemplo anterior Banco Caja
Social. Cuando se digita una URL o sigue el vínculo hacia una página Web

48
segura, su navegador verifica que el certificado tenga las siguientes
características:

 la dirección del sitio Web, corresponde con la dirección del certificado.


 el certificado es firmado por una autoridad certificadora que el navegador
reconoce como una autoridad de confianza9”.

2.6. PROTOCOLO HTTP Y HTTPS

“Http (protocolo de transferencia de hipertexto) es el protocolo usado en cada


transacción de la World Wide Web. HTTP fue desarrollado por el World Wide Web
Consortium y la Internet Engineering Task Force, colaboración que culminó en
1999 con la publicación de una serie de RFC, el más importante de ellos es el
RFC 2616 que especifica la versión 1.1. HTTP define la sintaxis y la semántica
que utilizan los elementos de software de la arquitectura Web (clientes, servidores,
proxy) para comunicarse. Es un protocolo orientado a transacciones y sigue el
esquema petición-respuesta entre un cliente y un servidor. Al cliente que efectúa
la petición (un navegador Web o un spider) se lo conoce como "USER AGENT"
(agente del usuario). A la información transmitida se la llama recurso y se la
identifica mediante un localizador uniforme de recursos (URL). Los recursos
pueden ser archivos, el resultado de la ejecución de un programa, una consulta a
una base de datos, la traducción automática de un documento10”.

2.6.1. Referente a la relación entre http y Https es que Https

“Es un Protocolo Seguro de Transferencia de Hipertexto y está obviamente basado en


el antes mencionado HTTP pero con la particularidad de utilizar un cifrado basado

9
http://www.clcert.cl/show.php?xml=xml/consejos/doc_05-10.xml&xsl=xsl/consejos.xsl

10
http://es.wikipedia.org/wiki/Hypertext_Transfer_Protocol

49
en la Secure Socket Layers más conocidas como SSL y así crear un canal de
transferencia cifrado con el que obviamente aumenta la seguridad en el tráfico de
información en comparación al protocolo HTTP común.

Este protocolo HTTPS es usado por los entidades bancarias pues la información
que manejan es de suma confidencialidad e importancia y por ello se necesita
mantener cifrado el canal de transferencia.

2.6.2. Cómo Funciona el Https

El navegador que se utilice actúa como la entidad que señala si el sitio que está
visitando está correctamente cifrado y de ser así a nombre de quien está el
certificado SSL antes mencionado por lo que se confía en la información de
seguridad que da el navegador de Internet y por lo tanto se sabrá que no se trata
de algún sitio falsificado que podría tratar de robar datos o credenciales por lo que
entonces se concluye, que el protocolo HTTPS sirve para cifrar la transferencia de
hipertexto y por lo tanto mejora la seguridad cuando se navegue en la Internet 11”.

2.7. MÉTODOS DE CIFRADO

Los métodos de cifrado de la criptografía moderna se dividen, a gran escala, en


dos: cifrado de flujo y cifrado de bloques, y éste último a su vez se divide en
cifrado simétrico (con clave secreta) y cifrado asimétrico (con clave pública).

11
http://www.webadictos.com.mx/2011/04/13/que-es-el-protocolo-https-y-como-funciona/

50
Figura 27. Método Cifrado.

Figura27.http://portalae.sci.uma.es:8080/export/sites/default/uma/documentos/criptografia_c
ertificado_digital_firma_digital.pdf

2.7.1 Cifrado de Flujo

“Los algoritmos de cifrado de flujo pueden realizar el cifrado incrementalmente,


transformando el mensaje original en un mensaje cifrado bit a bit. Esto lo logra
construyendo un generador de flujo de clave, el cual es una secuencia de bits de
tamaño arbitrario que puede emplearse para oscurecer el contenido del flujo de
datos combinando el flujo de clave con el flujo de datos mediante la función XOR.
Si el flujo de clave es seguro, el flujo de datos cifrados también lo será.

Este método es utilizado en algunas aplicaciones como el cifrado de


conversaciones telefónicas, donde el cifrado en bloques es inapropiado porque los
flujos de datos se producen en tiempo real en pequeños fragmentos y las

51
muestras de datos pueden ser muy pequeñas (hasta de 1 bit), y sería un
desperdicio rellenar el resto de los bits antes de cifrar el mensaje y transmitirlo.

2.7.2. Cifrado por Bloques

En este tipo de cifrado el mensaje se agrupa en bloques, por lo general de 128 bits
o más, antes de aplicar el algoritmo de cifrado a cada parte de forma
independiente utilizando la misma clave.

2.7.3. Cifrado Simétrico

La criptografía simétrica es el método criptográfico que usa una misma clave para
cifrar y descifrar los mensajes. Las dos partes que se comunican deben ponerse
de acuerdo de antemano sobre la clave a utilizar y, una vez que ambas tienen
acceso a esta clave, el remitente cifra el mensaje utilizándola, lo envía al
destinatario, y éste lo descifra con la misma clave. Existen algunos algoritmos muy
conocidos, como el DES (Data Encryption Standard), el cual fue un diseño de
unidad de cifrado por bloques de gran influencia desarrollado por IBM y publicado
como estándar en 1977.

2.7.4. Cifrado Asimétrico

El cifrado asimétrico es el método criptográfico que usa un par de claves para el


envío de mensajes. Una de estas claves es pública y se puede entregar a
cualquier persona, la otra clave es privada y el propietario debe guardarla de modo
que nadie tenga acceso a ella. Los métodos criptográficos garantizan que ese par
de claves sólo se puede generar una vez, de modo que se puede asumir que no
es posible que dos personas hayan obtenido casualmente el mismo par de claves
.Si el remitente usa la clave pública del destinatario para cifrar el mensaje, una vez
cifrado, sólo la clave privada del destinatario podrá descifrar este mensaje, ya que
es el único que la posee. Por lo tanto se logra la confidencialidad del envío del
mensaje, nadie salvo el destinatario puede descifrarlo, ni siquiera la misma

52
persona que generó el mensaje. Si el propietario del par de claves utiliza su clave
privada para cifrar el mensaje, cualquiera que posea su clave pública podrá
descifrarlo. En este caso se consigue tanto la identificación como la autenticación
del remitente, ya que se sabe que sólo pudo haber sido él quien utilizó su clave
privada (salvo alguien se la hubiese podido robar). Esta idea es el fundamento de
la firma electrónica, de la cual hablamos más abajo. Los sistemas de cifrado de
clave pública o sistemas de cifrado asimétricos se crearon con el fin de evitar el
problema del intercambio de claves que posee el sistema de cifrado simétrico. Con
las claves públicas no es necesario que el remitente y el destinatario se pongan de
acuerdo en la clave a emplear. Todo lo que se requiere es que, antes de iniciar la
comunicación secreta, el remitente consiga una copia de la clave pública del
destinatario. Es más, esa misma clave pública puede ser usada por cualquiera que
desee comunicarse con su propietario. Cabe mencionar que aunque una persona
lograra obtener la clave pública, no podría descifrar el mensaje encriptado con
esta misma clave, sólo podría encriptar mensajes que podrían ser leídos por el
propietario de la clave privada.

53
Figura 28. Cifrado Asimétrico.

Figura28.http://portalae.sci.uma.es:8080/export/sites/default/uma/documentos/criptografia_c
ertificado_digital_firma_digital.pdf

2.7.5. Criptografía de Clave Asimétrica Firma digital.

Una de las principales ventajas de la criptografía de clave pública es que ofrece un


método para el desarrollo de firmas digitales. La firma digital permite al receptor de
un mensaje verificar la autenticidad del origen de la información así como verificar
que dicha información no ha sido modificada desde su generación. De este modo,
la firma digital ofrece el soporte para la autenticación e integridad de los datos.
Una firma digital está destinada al mismo propósito que una manuscrita. Sin
embargo, una firma manuscrita es sencilla de falsificar mientras que la digital es
imposible mientras no se descubra la clave privada del firmante. La firma digital se
basa en la propiedad ya comentada sobre que un mensaje cifrado utilizando la

54
clave privada de un usuario sólo puede ser descifrado utilizando la clave pública
asociada.

Figura 29. Creando y verificando una firma digital

Figura29.http://portalae.sci.uma.es:8080/export/sites/default/uma/documentos/criptografia_c
ertificado_digital_firma_digital.pdf

2.7.5.1. Proceso

Ana y Bernardo tienen sus pares de claves respectivas. Ana escribe un mensaje a
Bernardo. Es necesario que Bernardo pueda verificar que realmente es Ana quien
ha enviado el mensaje. Por lo tanto Ana debe enviarlo firmado:

55
Resume el mensaje mediante una función hash.2. Cifra el resultado de la función
hash con su clave privada. De esta forma obtiene su firma digital.3. Envía a
Bernardo el mensaje original junto con la firma 12”.

2.8. CERTIFICADOS DIGITALES.

Según puede interpretarse de los apartados anteriores, la eficacia de las


operaciones de cifrado y firma digital basadas en criptografía de clave pública sólo
está garantizada si se tiene la certeza de que la clave privada de los usuarios sólo
es conocida por dichos usuarios y que la pública puede ser dada a conocer a
todos los demás usuarios con la seguridad de que no exista confusión entre las
claves públicas de los distintos usuarios. Para garantizar la unicidad de las claves
privadas se suele recurrir a soportes físicos tales como tarjetas inteligentes o
tarjetas PCMCIA que garantizan la imposibilidad de la duplicación de las claves.
Además, las tarjetas criptográfica suelen estar protegidas por un número personal
sólo conocido por su propietario que garantiza que, aunque se extravíe la tarjeta,
nadie que no conozca dicho número podrá hacer uso de ella. Por otra parte, para
asegurar que una determinada clave pública pertenece a un usuario en concreto
se utilizan los certificados digitales. Un certificado digital es un documento
electrónico que asocia una clave pública con la identidad de su propietario.

Adicionalmente, además de la clave pública y la identidad de su propietario, un


certificado digital puede contener otros atributos para, por ejemplo, concretar el
ámbito de utilización de la clave pública, las fechas de inicio y fin de la validez del
certificado, etc. El usuario que haga uso del certificado podrá, gracias a los

12
http://portalae.sci.uma.es:8080/export/sites/default/uma/documentos/criptografia_certificado_digit
al_firma_digital.pdf

56
distintos atributos que posee, conocer más detalles sobre las características del
mismo13”.

2.8.1. Empresas Emisoras de Certificados Digitales

2.8.1.1. Seguridad VeriSign

Es la autoridad líder en certificación SSL (Secure Sockets Layer) que permite


realizar comunicaciones, comercio electrónico e interacciones de forma segura en
sitios Web, intranets y extranet. Seleccionada como la marca de mayor confianza
en Internet y activador del mejor cifrado SSL.

2.8.1.2. Certicámara

“El sistema Cameral Colombiano y en especial la Cámara de Comercio de Bogotá


han tenido siempre como objetivo prioritario la promoción y el desarrollo del
comercio electrónico y el uso de las tecnologías.

La tecnología que soporta los servicios de Certificación Digital de Certicámara es


una plataforma PKI Europea de última generación y reconocida mundialmente,
que la emisión de los certificados de firma digital y el estampado cronológico
certificado, dando cumplimiento con los exigentes requisitos y condiciones
señalados en la ley para esta actividad14”.

2.8.1.3. Certificados SSL de Symantec

“Symantec Website Security Solutions incluyen análisis en busca de programas


maliciosos, evaluación de vulnerabilidades y gestión de certificados SSL líderes

13
http://www.cert.fnmt.es/popup.php?o=faq
14
http://web.certicamara.com/acerca_historia.aspx

57
del mercado. El sello Norton™ Secured y Symantec Seal-in-Search garantizan a
los clientes que es seguro realizar búsquedas, navegar y comprar 15”.

2.8.1.4. Qweb

Acrónimo de Quality Web Enterprise Bureau, QWEB. Certifica a los visitantes de


un sitio web que éste cumple con todos los requerimientos de calidad de los
principales buscadores, algo fundamental para lograr un buen posicionamiento.

2.8.1.5. W3c

El servicio de validación de CSS del W3C. Es un software libre creado por el W3C
para ayudar a los diseñadores y desarrolladores Web a validar hojas de estilo en
cascada y documentos XHTML.

2.8.1.6. Confianza Online

Confianza Online es una asociación con el fin de aumentar la confianza de los


usuarios en el uso de Internet y los medios digitales.

2.8.1.7. Certificadas Cl

Directorio Web Certificadas, dedicado a la indexación de empresas que cumplen


los mejores protocolos de navegación y accesibilidad

2.8.1.8. Optima

Es un sello de calidad enfocado a los portales web de las empresas. Está


enmarcado dentro de los distintivos públicos de confianza en línea regulados por

15
http://www.symantec.com/es/es/verisign/ssl-certificates

58
la Dirección General de Consumo, a través del INC. Está basado en un código de
conducta al que se suscriben las empresas que obtienen el sello.

2.8.1.9. Security Guardian

“Security Guardian es un servicio online que identifica, registra, audita y certifica la


seguridad, privacidad y la confianza de las páginas Web con el objetivo de
fomentar la confianza online gracias al uso de los sellos de seguridad de Security
Guardian16”.

2.9. DOMINIO DE INTERNET

“Es un término empleado en el mundo de Internet para referirse al nombre que


sirve para identificar direcciones de computadoras conectadas a Internet, dándoles
identificaciones fáciles de recordar. Por ejemplo, no es lo mismo memorizar
207.126.123.20 que www.about.com.

El nombre de dominio de Internet es parte del URL, por ejemplo en el URL


http://aprenderinternet.about.com/, aprenderinternet.about.com es un nombre de
dominio de Internet.

2.9.1. Dns

DNS son las siglas en inglés del sistema de nombres de dominio (Domain Name
System). Es un sistema que se encarga de relacionar nombres identificables y
recordables por humanos, con direcciones representadas por un sistema
numérico. Usando, por ejemplo, about.com en lugar de 207.126.123.20, se tienen
al menos dos ventajas: la primera, que about.com es un nombre que es fácil de
relacionar y recordar; y la segunda, que si la dirección, por alguna razón, dejara de
ser 207.126.123.20, el nombre about.com no cambiaría, lo único que cambiaría
sería su asociación a la nueva dirección numérica.

16
http://es.wikipedia.org/wiki/Certificado_web

59
2.9.2. Dominios de Nivel Superior

Los dominios de nivel superior (TLD, de sus siglas en inglés Top Level Domain)
son el nivel más alto en la jerarquía de nombres en Internet, por ejemplo en
www.about.com el dominio de nivel superior es .com.

La administración de estos dominios de nivel superior se lleva a cabo por la


organización llamada ICANN que son las siglas de Internet Corporation for
Assigned Names and Numbers -Corporación de Internet para la asignación de
nombres y números, en español-.

2.9.3. Dominio De Internet Genérico

El dominio de Internet genérico (gLTD por sus siglas en inglés de generic top-level
domain) es una sub-categoría de dominio de nivel superior (TLD), y es
responsabilidad de la IANA, que son las siglas en inglés de Internet Assigned
Numbers Authority, que es a su vez un departamento de ICANN.

Los principales dominios de Internet genéricos son los conocidos .com, .net, .org y
.info. Otros dominios como .biz, .name y .pro son restringidos únicamente a
organizaciones que pueden probar que pertenecen al grupo correspondiente.

Existen tres clasificaciones básicas de dominios de Internet genéricos:

 No restringidos.- Son dominios disponibles para ser usados por cualquier


organización o persona, sin restricción en cuanto al uso que se le dará.
Aquí entran los conocidos dominios .com, .net, .org y .info.
 Patrocinados.- Estos dominios son propuestos por organizaciones privadas
que intentan establecer reglas en cuanto a quiénes pueden utilizarlos. Un
ejemplo de éstos es el dominio .xxx, que tiene la intención de ser utilizados
por la industria de contenido para adultos.

60
 Geográficos.- Sirven para identificar un territorio geográfico, geopolítico o
lingüístico. Los dominios de identificación de país están incluidos en esta
clasificación.

2.9.4. Identificación de País

El dominio de nivel superior (TLD) puede incluir dos letras de identificación de


territorio basadas en las abreviaciones de ISO-3166. Por ejemplo: .co para
Colombia, .mx para México, .es para España y .ar para Argentina.

Específicamente para identificación de países, se le conoce como dominio de nivel


superior de código de país (en inglés country code top level domain, abreviado
ccTLD)17”.

2.9.5. Organizaciones Relacionadas Con Los Dominios De Internet

2.9.5.1. Iana

“IANA es la Autoridad para la Asignación de Números de Internet (del


inglés: Internet Assigned Numbers Authority), responsable de la coordinación
global de los dominios Raíz de DNS y de los dominios .int y .arpa,
del direccionamiento IP y otros recursos del Protocolo de Internet.

2.9.5.2. Icann

La Corporación de Internet para la Asignación de nombres y números de


Dominios (del Inglés: Internet Corporation for Assigned Names and Numbers) es
una organización sin fines de lucro que opera a nivel de asignar espacio de
direcciones numéricas de protocolo de Internet (IP), identificadores de protocolo y
de las administración del sistema de servidores raíz. Aunque en un principio estos

17
http://aprenderinternet.about.com/od/Glosario/g/Que-Es-Un-Dominio-De-Internet.html

61
servicios los desempeñaba Internet Assigned Numbers Authority (IANA) y otras
entidades bajo contrato con el gobierno de EE.UU., actualmente son
responsabilidad de ICANN.

2.9.5.3. Internic

InterNIC es un servicio y marca registrada del Ministerio de Comercio de


los Estados Unidos de América y licenciado a IANA para la gestión de disputas
públicas relacionadas con el registro de nombres de dominios.

2.9.5.4. Lacnic

LACNIC es la organización para el Registro de Direcciones de Internet


para América Latina y el Caribe. Su objetivo es la construcción y articulación de
esfuerzos colaborativos para el desarrollo y estabilidad de Internet en América
Latina y el Caribe. [1]. Si bien no tiene relación directa con los dominios, sí es la
organización regional a cargo de los recursos de Internet como Direcciones IP y
ASNs.

2.9.5.5. Lacltd

Es una organización sin fines de lucro que busca agrupar a los administradores de
los ccTLDs de América Latina y el Caribe, con el objeto de Coordinar políticas en
conjunto, así como estrategias de desarrollo de los nombres de dominio a nivel
regional; representar los intereses conjuntos de sus miembros ante organismos
pertinentes; promover el desarrollo de los ccTLDs de la región; fomentar la
cooperación y el intercambio de experiencia entre sus miembros, en todos los
aspectos necesarios para el adecuado funcionamiento de los ccTLDs y establecer

62
lazos de colaboración con las organizaciones análogas de otras regiones del
mundo18”.

2.9.5.6. Latinoamericann

Es una organización para la difusión de información y diálogo en temas de


Nombres de Dominio, Números IP y Gobierno o Gobernanza de Internet
en América Latina y el Caribe. Su misión asimismo es la de colocar información en
español, portugués y francés de acceso para todos, considerando que la
información en los idiomas de la región resulta siendo un elemento para poder
comprender los fenómenos propios del Internet, desde una perspectiva regional en
el contexto global.

2.9.6. Dominios en Internet más Utilizados

“Un Dominio es un nombre alfanumérico único que se utiliza para identificar en


Internet a un sitio, un servidor web o un servidor de correo.

Los dominios permiten a los usuarios de la red escribir un nombre para identificar
una dirección electrónica totalmente formada por números. Mediante la utilización
de los dominios, los usuarios conectados a Internet pueden encontrar sitios web y
enviar e-mail sin necesidad de recordar las direcciones numéricas, que en realidad
son las que localizan las computadoras o servicios en Internet.

Desde la columna de la derecha se puede acceder a los organismos nacionales e


internacionales de registración y control especificados19”.

18
http://aprenderinternet.about.com/od/Glosario/g/Que-Es-Un-Dominio-De-Internet.html

19
http://www.monografias.com/trabajos93/dominios-internet/dominios-
internet.shtml#ixzz2dHGXYkjZ

63
Figura 30. Extensiones de dominio.

-.biz Sitios de Organizaciones de Negocios

-.com Sitios Comerciales

-.edu Sitios Educativos

-.gov Sitios de Organismos Gubernamentales

-.info Sitios de Apertura Libre de Dominios de Nivel Superior TLD

-.int Sitios de Organizaciones Internacionales

-.mil Sitios de Dependencias Militares Oficiales de los Estados

-.name Sitios Personales

-.net Sitios de Sistemas y Redes

-.org Sitios de Organizaciones


Figura30.http://www.monografias.com/trabajos93/dominios-internet/dominios-
internet.shtml#ixzz2dHGXYkjZ

64
3. DISEÑO DE LA PROPUESTA

El diseño parte de la premisa de que todos los usuarios, certificados y dominios


de las diferentes empresas del banco deben tener la plena seguridad que están
siempre protegidos y actualizados para que los servicios y transacciones sean
seguras para sus intereses personales.

Según el diagnóstico realizado anteriormente, se plantean la opción para ser


evaluada con la finalidad de escoger la viabilidad a nivel económico, técnico y
operativo que cumpla con las mejores características para el software el cual
quedaría diseñado con los datos que previamente se tiene de los certificados
digitales y dominios, información que se encuentra almacenada en un archivo
Excel; esta información que administra, resguarda y advierte el diseño del
software propuesto en este estudio para el banco caja social.

3.1. SOLUCIÓN DEL SOFTWARE

La solución propuesta es una variante para la efectividad al momento de


administrar y advertir sobre los certificados digitales y dominios incluyendo el
momento en que se vencen, actualizan o se necesite adquirir uno nuevo.

Variante de seguridad que se brinda a cada uno de los certificados y dominios


mediante el diseño del proyecto el cual permitirá obtener seguridad por medio de
la administración del software el cual genera protección para la información del
banco.

65
3.2. DISEÑO DE LA SOLUCIÓN DEL SOFTWARE

El software tendrá un ejecutable el cual estará a cargo de la vicepresidencia de


tecnología, el software será instalado en primera instancia en el equipo portátil HP
COMPAQ 1711 de disco duro de 120 Gb, memoria RAM 2 Gb, procesador Intel
core 2 Duo, este equipo en mención es de propiedad del banco a cargo del área
de vicepresidencia de seguridad informática y continuidad de negocios, pero quien
lo utiliza con funciones estrictamente labores es el coordinador del área de
seguridad informática el software será instalado únicamente en este equipo, pero
con la posibilidad de ser instalado en otros equipo los cuales se requiera, pero por
solicitudes exclusivas de la vicepresidencia será instalado en el equipo
mencionado.

El software cuenta con un login inicial, el cual para tener acceso se requiere
usuario y contraseña este login cuenta con cuatro tipos de usuarios que podrán
ingresar al software entre ellos se encuentran. (Administrador Master,
administrador, administrador Backup, usuario de consulta), las funciones de cada
usuario son las siguientes:

 Administrador Master: Quien tiene el control del pseudocódigo del software


control total pero no será visible
 Administrador: Control total del software, creación de usuario, privilegios de
usuarios.
 Administrador Backup: Procesos de modificación, eliminación, creación,
guardar e imprimir el total de los archivos de los certificados digitales y
dominios del banco.
 Usuarios consulta: Proceso únicamente de consulta sobre los certificados
digitales y dominios del banco.

66
Los datos de los certificados digitales y dominios son almacenados en los
servidores del banco, los cuales son protegidos por las áreas de soporte
tecnológico, redes WAN y LAN, estas áreas están encargadas de custodiar los
servidores del banco caja social ante cualquier amenaza, debido a las estas
posibles amenazas los servidores. Los datos de los certificados y dominios se
encuentran ligados a una base de datos de Access versión 2010, esta base de
datos se encuentra en el servidor 10.5.10.35// certificados digitales y 10.5.10.53//
dominios.
Las alertas que se envían después que el software haga un barrido sobre la base
de datos, identificara que registros están próximos a vencer dependiendo de las
fechas establecidas y de los tiempos establecidos para enviar la alerta de
vencimientos.
Estas alertas se dividen en dos tipos una que va dirigida de forma local al equipo
del cual el software haya sido instalado, esta alerta indica un mensaje en el equipo
con intervalos de 6 horas y lapso de tiempo de 30 minutos en la pantalla durante
cada intervalo mencionado, este mensaje aparece en la pantalla del equipo con la
siguiente información fecha del certificado o dominio a vencer serial o nombre
según corresponda, empresa quien lo tiene y fecha límite de renovación o
eliminación dependiendo el caso. Por otra parte se tiene las alertas que son
enviadas al correo institucional del banco, la cual lleva consigo el mensaje del
certificado o dominio a vencer y fecha para de renovación o eliminación
dependiendo el caso, esto permite tener el control seguro de los certificados y
dominios ingresados en la base de datos del software y administrar de forma
eficiente los vencimientos o renovaciones de cada uno estos, con el fin de
minimizar al máximo los riesgos de no hacer el proceso correspondiente en las
fechas acordes a cada proceso y tener de forma sistematizada esta información.

67
3.3. DISEÑO LÓGICO Y DIRECCIONAMIENTO

La cantidad de instalaciones es acorde a las necesidades de la vicepresidencia de


tecnología, por tanto el área es la encargada de suministrar la instalación a quien
lo requiera por decisión de la misma. Aunque se destaca que en primera instancia
y por solicitud explicita de la vicepresidencia de seguridad informática y
continuidad de negocios y la coordinación de la misma, este software será
instalado en el equipo del coordinador de seguridad informática y continuidad de
negocios, por razones de seguridad es lo establecido, por esta razón el software
cuenta con diversos usuarios que permiten establecer roles con labores y
características específicas dentro del diseño del software, la distribución del
software se realiza mediante los perfiles de usuario y las labores de cada uno se
identifican mediante diagramas de flujo, diagrama entidad relación y los casos de
uso de Argo Uml.

3.4. DISEÑO DE PROYECTO

A continuación se muestra el diseño que se tendrá en cuenta para el posterior


desarrollo del proyecto.

Figura 31.Diseño.

3 Certificados
2 Perfil
banco

4 Dominios
1 Usuarios Control
banco

5 Configuraciones
6 Alertas

68
Figura 32. Diagrama de Flujo.

69
3.4.1. Tablas del Proyecto

Estas son las tablas que están relacionadas con la administración de los
certificados y dominios.

Tabla 2. Nombres de empresas

Código Nombre empresa

10 campos 30 campos

Alfa Numérico Alfa Numérico

Tabla 3. Certificados digitales.

Código Serial Costo Fecha Fecha Que Versión Empresa


Inicio Final empresa quien lo
certificado tiene el emite
certificado

10 30 20 10 10 50 10 50
camp campos campo camp campos Campos campos Campos
os s os

Alfa Alfa Alfa Alfa Alfa String Alfa String


Num Numéric Numéri Num Numérico Numérico
érico o co érico

Tabla 4. Dominios.

Código Nombre Costo Fecha Fecha Final Fecha Empresa quien


dominio Inicio renovación vendió el dominio

10 30 20 10 10 campos 10 50 Campos
camp campos campo campo campos

70
os s s

Alfa Alfa Alfa Alfa Alfa Alfa String


Num Numérico Numéri Numéri Numérico Numérico
érico co co

Tabla 5. Usuarios.

Código Nombre Apellido Correo Cargo Area

10 30 30 Campos 30 Campos 50 Campos 50 Campos


campos Campos

Alfa String String Alfa String String


Numérico Numérico

Tabla 6. Mensajes de alerta.

Código Certificado Fecha de Fecha de Fecha de Empresa Mensaje


digital o vencimiento inicio renovación de la de alerta
dominio a fundación
vencer

10 30 10 10 10 30 50
campos campos campos campos campos Campos Campo
s

Alfa Alfa Alfa Alfa Alfa Alfa Alfa


Numéric Numérico Numérico Numérico Numérico Numéric Numéri
o o co

Tabla 7. Perfiles.

Código de Perfil Descripción de Perfil

10 Campos 20 Campos

Alfa Numérico String

71
3.4.2. Diagrama Entidad Relación

La representación gráfica de cómo se relacionan las tablas del proyecto.

Figura 33. Entidad Relación

72
3.4.3. Diseño Uml Casos de Uso

Se representa mediante la herramienta escogida por el Banco Caja Social,

la demostración gráfica de los perfiles y sus funciones adjuntas a sus labores.

Figura 34. Administrador Caso de Uso.

Figura 35. Administrador backup Caso de Uso.

73
Figura 36. Usuario consulta Caso de Uso.

3.4.4. Distribución por Perfiles

Distribución de los perfiles, se indica características y funciones por cada perfil. Se


determina por cada rol las funciones que puede realizar con el fin de establecer los
privilegios con lo que cada uno de estos contara.

Tabla 8. Administrador master.

ADMINISTRADOR MASTER

No
Función Características

1 Control total del código del software


Manejo bases de datos de los certificados digitales y
2 dominios
Manejo de los registros de los certificados digitales y
3 dominios (Modificar, agregar, consultar, eliminar)
Administración de perfiles (Crear, brindar permisos,
4 modificar)
Administración del sistema ( cambiar colores, imágenes,
5 contraseñas)

6 Impresión de documentos y descarga de los mismos.

74
Tabla 9. Administrador.

ADMINISTRADOR

No
Función Características
Manejo bases de datos de los certificados digitales y
1 dominios
Manejo de los registros de los certificados digitales y
2 dominios (Modificar, agregar, consultar, eliminar)
Administración de perfiles (Crear, brindar permisos,
3 modificar)
Administración del sistema ( cambiar colores, imágenes,
4 contraseñas)

5 Impresión de documentos y descarga de los mismos.

Tabla 10. Administrador Backup.

ADMINISTRADOR BACKUP

No
Función Características
Manejo bases de datos de los certificados digitales y
1 dominios
Manejo de los registros de los certificados digitales y
2 dominios (Modificar, agregar, consultar, eliminar)
Administración del sistema ( cambiar colores, imágenes,
3 contraseñas)

4 Impresión de documentos y descarga de los mismos.

Tabla 11. Usuario consulta.

USUARIO CONSULTA

No Función Características

1 Consulta de los certificados digitales y dominios

2 Administración del sistema ( cambiar colores, imágenes)

75
3.5. EQUIPOS, SOFTWARE REQUERIDOS Y PROPUESTOS

Para la instalación del software se requiere con las mínimas características las
siguientes.

Tabla 12. Requerimientos PC.

Mínimas requerimientos para la instalación en Pc

Procesador Intel AMD

Memoria RAM 128 Mb

Disco Duro 10 Gb

Tarjeta grafica No es requerida

Monitor Desde CRT en adelante


Board Asrock
Windows Xp, vista, win 7, win 8, Mac, Linux de 32 o
Sistema Operativo 64 Bits.
Paquete office Con el que se cuente no tiene restricción.

Tabla 13. Desarrollo.

Características para el desarrollo

Lenguaje de programación
propuesto Visual. Basic versión desde 2008

Base de datos Access 2007

76
3.6. ASPECTOS ECONOMICOS

En la tabla 20 se realiza un análisis de costos de los elementos requeridos para el

desarrollo del software del cual se tiene el diseño planteado, obteniendo el costo

total con un valor de $2.777.040.

Tabla 14. Económicos.

ITEM PARTE DESCRIPCION CANTIDAD COSTO US DÓLAR UTILIDAD


1 Procesador Intel AMD 1 10 1900 $ 19.000
Memoria
128 Mb
2 RAM 1 30 1900 $ 57.000
3 Disco Duro 10 Gb 1 20 1900 $ 38.000
4 Monitor Desde CRT en adelante 1 100 1900 $ 190.000
5 Board Asrock N68 1 120 1900 $ 228.000
Windows Xp en
Sistema
adelante, Mac, Linux de
Operativo
6 32 o 64 Bits. 1 130 1900 $ 247.000
Paquete Con el que se cuente
7 office no tiene restricción. 1 150 1900 $ 285.000
Lenguaje de
Visual. Basic versión
programació $
desde 2008
8 n 1 600 1900 1.140.000
Base de
Access 2007
9 datos 1 100 1900 $ 190.000
SUBTO $
TAL 2.394.000
IVA $ 383.040
$
TOTAL 2.777.040

77
CONCLUSIONES Y RECOMENDACIONES

Con el desarrollo del proyecto se diseñó el software, donde se permite a través de


este administrar los certificados digitales y dominios de forma sistematizada este
para uso del Banco Caja Social.

Se logró establecer la viabilidad del proyecto contando con los recursos


necesarios como lo son

Utilizar el entorno web servicie para notificar alertas que informan sobre los
registros próximos a vencer o de lo contrario alertas al equipo donde haya sido
instalado el software.

Utilizar como medidas de seguridad los servidores e infraestructura del Banco


para mantener la información custodiada.

En el estudio realizado se determina quien serán los responsables del manejo del
software como a quienes se les notifica estas alertas.

Se logra sistematizar esta información de vital importancia para el banco mediante


el diseño propuesto.

78
BIBLIOGRAFÍA

Joseph Schmuller, Aprendiendo UML, Prentice Hall, 2009.

INFOGRAFÍA

http://www.disca.upv.es/enheror/pdf/ActaUML.PDF

http://alvearjofre.galeon.com
http://www.disca.upv.es/enheror/pdf/ActaUML.PDF

http://www.monografias.com/trabajos28/proyecto-uml/proyecto-uml.shtml
http://www.diatel.upm.es/malvarez/UML/Comparativa.html

http://redes-
cepalcala.org/inspector/DOCUMENTOS%20Y%20LIBROS/EVALUACION/EFQM/
MARCO%20DE%20EVALUACION%20EFQM.pdf
http://medicina.udea.edu.co/calfm/NORMATIVIDAD%20Y%20LEGISLACION/NTC
-ISO9000.pdf

http://www.ati.es/IMG/pdf/Garzas-2.pdf

www.bancocajasocial.com

http://es.wikipedia.org/wiki/Hypertext_Transfer_Protocol

http://www.clcert.cl/show.php?xml=xml/consejos/doc_05-
10.xml&xsl=xsl/consejos.xsl

http://www.webadictos.com.mx/2011/04/13/que-es-el-protocolo-https-y-como-
funciona

http://portalae.sci.uma.es:8080/export/sites/default/uma/documentos/criptografia_c
ertificado_digital_firma_digital.pdf

79
http://www.cert.fnmt.es/popup.php?o=faq

http://web.certicamara.com/acerca_historia.aspx

http://www.symantec.com/es/es/verisign/ssl-certificates

http://es.wikipedia.org/wiki/Certificado_web

http://www.iana.org/domains/root/db/

http://aprenderinternet.about.com/od/Glosario/g/Que-Es-Un-Dominio-De-
Internet.html

http://www.monografias.com/trabajos93/dominios-internet/dominios-
internet.shtml#ixzz2dHGXYkjZ

http://www.monografias.com/trabajos93/dominios-internet/dominios-internet.shtml

80
ANEXO A.

81
Ingreso

Se identifica el ingreso al software el cual para acceder se necesita un usuario y


contraseña debida mente autenticados en software.

Botón Funcionalidad

Se entrega una breve introducción respectos al funcionamiento del software.

82
Botón perfiles

Para ingresar mediante le botón perfiles se requiere usuario y contraseña


debidamente autenticados.

Ingreso a perfiles

83
En el botón perfiles luego del ingreso se permite consultar mediante una lista los
perfiles creados en el momento con sus debidas caracterisiticas como lo son
nombre dependencia tipo de alerta, tipo de perfil además de poder modificar o
eliminar algna que se requiera.

Crear perfiles

En la pestaña de la lado crear perfiles, en este se puede agragar los diferentes


perfiles que se requieran.

Ingreso software perfil administrador

84
Luego de ingresar como administrador permite tener acceso a todo el manejo del
software y como primera medida la primer pestaña certificados, esta identifica toda
la administración de los certificados digitales de la empresa como lo son
(consultar, modificar crear o eliminar).

Perfil administrador pestaña dominios.

En la pestaña dominios de igual manera por ser administrador permite gestionar


todo lo necesario con el software respecto a los dominios como (consultar,
modificar, crear y eliminar) alguno de los registros.

85
Perfil administrador pestaña perfiles de usuario.

Perfiles de usuario permite administrador todo lo relacionado con los perfiels de


los usarios como (consultar, modificar. Crear y eliminar) los perfiles mencionados.

Perfil de administrador crear perfiles.

86
El acceso a este genera poder crear los perfiles necesario con el adicional de
identificar mediante un conbox las opciones en este como administrador backup o
usuario consulta los cuales forman un rol distinto en el software.

Perfil administrador pestaña sistema.

En la pestaña sistema se pueden generar que tipo de alertas y a quines se vana


enviar mediante las opciones que mencionan, se agrega el usuario al cual se
requiera que se envie el mensaje ya se amensal¿je al equipo el cual el software
haya sido instalado o al correo que se agregue en esta parte el mensaje indica
que se va vencer en que lapso de tiempo y cuanto tiempo tengo para proceder.

Perfil administrador pestaña configuraciones.

87
Configuraciones modifica la fuente, imágenes o color del software

Perfil administrador backup.

Con el perfil administrador backup se limita las funciones del perfil creado en
cuestión ya que este tiene ingreso a certificados digitales dominios y perfiles de
usuario con administración completa lo cual permite (crear, modificar, consultar y
eliminar) los registros que se encuentran en la pestañas mencionadas.

88
Perfil usuario consulta.

El usuario consulta limita sus funciones a unas pocas como certificados digitales y
dominios estos con la posibilidad de generar solo consultas en el software debido
al perfil y privilegios otorgados.

89
ANEXO B.

90
ENTREVISTA DEL PROYECTO

“DISEÑO DE UN SOFTWARE QUE ADVIERTA LOS VENCIMIENTOS DE


CERTIFICADOS DIGITALES Y DOMINIOS DEL BANCO CAJA SOCIAL”

Esta entrevista se realiza con el fin de determinar las necesidades requeridas por
el Ingeniero John Carlos Angarita Coordinador del área “seguridad informática y
continuidad de negocios” para el diseño del software solicitado.

1. ¿Cómo funciona actualmente la administración de los certificados digitales


y dominios y quien los administra?

En el momento se realiza manualmente en un archivo de Excel y cada vez


que se necesite gestionar alguno se realiza manualmente en el archivo que
se encuentra en mi equipo únicamente.

2. ¿Porque se necesita este tipo de software en el banco?

Porque estos archivos son de vital importancia para el banco no se puede


perder, alterar u olvidar algunos de estos sea totalmente perjudicial para el
banco ocasionando hasta pérdidas o cierres de la compañía.

3. ¿De qué manera se requiere que funcione el software?

De forma que pueda saber en qué momento se vence o necesita renovar


algún certificado o dominio de internet de manera que se me sea enviado el
aviso de lo sucedido con algún vencimiento como alertas, a mi correo o
equipo o tal vez los dos para mayor seguridad.

4. ¿Este software es exclusivo del área seguridad informática y continuidad de


negocios? ¿porque?

Es exclusivo ya que el área es de vital importancia aquí se manejan todo lo


referente al resguardo de cada archivo o dato de la compañía debido a esto
solo esta área será la encargada del software.

91
5. ¿Qué funcionarios van a tener acceso al software y que áreas?

Solo los usuarios de gerencia y solo las áreas de seguridad informática.

6. ¿Qué tipo de perfiles requieren para la manipulación del software?

Administrador, tal vez administrador backup por seguridad y uno de


consulta.

7. ¿En cuántos equipos va hacer instalado y quien o quienes van hacer


responsables de la información?

Solo en los requeridos por la vicepresidencia de seguridad informática y


continuidad de negocios y los responsables son el gerente y el coordinador
del área.

92
93

También podría gustarte