Академический Документы
Профессиональный Документы
Культура Документы
EVOLUCIN TECNOLGICA E
INGENIERA DE SOFTWARE
(Una visin desde la perspectiva de la empresa)
Tesis Doctoral
Doctorando:
Sebastin Bamonde Rodrguez
Directora:
Nieves Rodrguez Brisaboa
A Corua, 2013
ii
iii
a mi familia,
muy especialmente a Soco
Agradecimientos
Este trabajo de tesis lo debo al apoyo y empuje de la Doctora Nieves Rodrguez
Brisaboa, a quien he tenido la satisfaccin de tener como alumna y ver despus
como elega para su desarrollo como docente el mbito de las Bases de Datos. Sin
su direccin, asesoramiento y ayuda no me habra sido posible desarrollarlo y sobre
todo darle sentido como tesis doctoral.
Tambin quiero mencionar a Enrique Seoane y Alida Alvaredo quienes heredaron el sistema que constituye la segunda parte de este trabajo y vivieron en primera
persona su adaptacin a los cambios tecnolgicos y funcionales que el tiempo ha ido
demandando. Su ayuda ha sido fundamental para recordar ese camino de evolucin.
Agradezco la colaboracin prestada por otras personas con las que pude
compartir mi experiencia profesional y especialmente a aquellas que me han ayudado
a recordar hechos y fechas a los que la memoria no alcanzaba, citarlos a todos sera
muy largo y siempre correra el riesgo de olvidarme de alguno.
vii
Resumen
Despus de ms de 35 aos de dedicacin simultnea a la docencia y a la profesin
informtica, sta en el mbito de la empresa privada, al cerrar esta ltima actividad
se me presenta la oportunidad de terminar mi tesis doctoral, antes negada por la
dicultad de encontrar continuidad en el tiempo necesario para poder hacerlo. El
largo camino recorrido en la empresa ha hecho posible que participase en una gran
cantidad de proyectos, ejerciendo distintos roles: programador, analista o jefe de
proyecto, administrador de base de datos y teleproceso, director de un departamento
importante de desarrollo de proyectos y director de arquitectura de aplicaciones
y metodologa. Estos proyectos y actividades me han permitido disfrutar de la
experiencia de usar mltiples tecnologas y plataformas, tanto de ejecucin como
de desarrollo, realizando, orientando o dirigiendo el desarrollo de aplicaciones y la
seleccin de tecnologas, soluciones y plataformas en distintos mbitos y en diferentes
momentos del estado del arte. Las tecnologas empleadas han tenido mayor o menor
difusin y distinto grado de permanencia en el mercado. La naturaleza de los
proyectos ha sido muy variada, en la misma medida que lo han sido los contextos
para los que se planteaban las aplicaciones. Las tecnologas y plataformas fueron
evolucionando y con ello obligaron a actualizar y adaptar los sistemas, al mismo
tiempo que se desarrollaban otros nuevos.
ix
Resumo
Despois de mis de 35 anos de dedicacin simultnea docencia e profesin
informtica, sta no mbito da empresa privada, ao pechar esta ltima actividade
presntaseme a oportunidade de terminar a mia tese doutoral, antes negada pola
dicultade de encontrar continuidade no tempo necesario para poder abordala.
O longo camio percorrido na empresa xo posible que participase nunha gran
cantidade de proxectos, exercendo distintos roles: programador, analista ou xefe
de proxecto, administrador de base de datos e teleproceso, director dun departamento importante de desenvolvemento de proxectos e director de arquitectura
de aplicacins e metodoloxa. Estes proxectos e actividades permitronme gozar
da experiencia de usar mltiples tecnoloxas e plataformas, tanto de execucin
coma de desenvolvemento, realizando, orientando ou dirixindo o desenvolvemento de
aplicacins e a seleccin de tecnoloxas, solucins e plataformas en distintos mbitos
e en diferentes momentos do estado da arte. As tecnoloxas empregadas tiveron
maior ou menor difusin e distinto grao de permanencia no mercado. A natureza
dos proxectos foi moi variada, na mesma medida que o foron os contextos para os
que se formulaban as aplicacins. As tecnoloxas e plataformas foron evolucionando
e con iso obrigaron a actualizar e adaptar os sistemas, ao mesmo tempo que se
desenvolvan outros novos.
xi
Abstract
After over 35 years of dedication to teaching and simultaneously to the
computing profession, this in the private enterprise, closing this last activity I
got the opportunity to nish my PhD, previously denied by the diculty of
nding continuity in the time needed to address it. The long journey in the
private enterprise brought me the opportunity to participate in a lot of projects in
dierent roles: programmer, analyst or project manager, database and teleprocessing
administrator, director of a major development department and architecture and
methodology director . These projects and activities have allowed me to enjoy
the experience of using multiple technologies and platforms, both in execution
and development, performing, directing or managing application development and
selection of technologies, solutions and platforms in dierent areas and at dierent
times state of the art. The technologies had varying diusion and dierent degree
of permanence in the market. The nature of the projects has been varied, to the
same extent that they have been the contexts for which applications were raised.
The technologies and platforms have evolved and thus forced to update and adapt
the systems, while developing new ones.
This PhD work aims to analyze the evolution of information technology in the
enterprise. It is based on the professional history lived, drawing conclusions from
that experience that can serve as inputs applicable to similar work environments
to that proposed here. A key objective is to endorse the role of some practices
of software engineering and some architecture solutions that have been crucial in
this experience, practices and solutions that the time has given value. It is also
considered essential the analysis performed on the decisions that have been taken
in the development of systems in order to introduce technological changes.
xiii
El tiempo
Al ser el foco de esta tesis doctoral la evolucin informtica en la empresa, si
tuviese un personaje lo sera el tiempo . El discurrir de la profesin informtica
enfrentada a continuos cambios obliga a tenerlo siempre presente. El pasado es
el legado que debemos respetar y aprender de l, lo que exige su conocimiento y
anlisis, evitando aquello que ha demostrado ser contraproducente para, nalmente,
construir sobre l. Los sistemas que diseamos difcilmente sern completamente
nuevos, necesitan heredar, convivir y construirse sobre los que les precedieron. Si
el pasado es importante el presente no lo es menos, es el espacio para la toma de
decisiones donde se denen y construyen los sistemas de ese futuro que est llegando
a cada instante, convirtiendo el presente en pasado.
.........................
Pues si vemos lo presente
cmo en un punto ses ido
e acabado,
si juzgamos sabiamente,
daremos lo non venido
por passado.
Non se engae nadi, no,
pensando que ha de durar
lo que espera
ms que dur lo que vio,
pues que todo ha de passar,
por tal manera.
.........................
xv
La historia
Esta tesis doctoral est sustentada sobre la actividad profesional realizada en
una entidad nanciera de mbito nacional durante los ltimos 25 aos. Corresponde
a la ltima etapa de mi trayectoria profesional, la ms larga y la de mayor riqueza,
tanto por su duracin como por la amplitud del campo de utilizacin de la tecnologa
y los medios disponibles.
1 [67]
cuando cita que en los Estados Unidos, durante el perodo 1929-1982, la tercera parte
1 Robert Solow (1924) fue Premio Nobel de Economa en 1978 por sus trabajos sobre el
crecimiento econmico.
xvii
xviii
Trayectoria profesional y
docente
Teniendo en cuenta la componente histrica que tiene este trabajo, dedicar
este captulo del prembulo a hacer una breve resea de la trayectoria profesional
y acadmica seguida, que en cierto modo tambin es historia, ya que la trayectoria
que se describe ha sido similar a la de muchos profesionales que se incorporaron a la
empresa en los aos 70 y principios de los 80, antes de que las Facultades y Escuelas
de Informtica tuviesen la presencia en los estudios universitarios que hoy tienen.
En el caso particular de Galicia los estudios de Informtica no se implantaron hasta
el ao 1986 en el que naci la Escuela Universitaria de Informtica de La Corua,
prcticamente coincidiendo con el inicio del perodo que vamos a analizar.
Me licenci en Ciencias (Seccin de Matemticas) en la Universidad de Santiago
en el ao 1974. En aquel momento los estudios de Matemticas no ofrecan la
posibilidad de una especializacin ms all de lo que puede representar la eleccin
de alguna asignatura optativa. El Plan de Estudios era de naturaleza muy terica,
orientado fundamentalmente a la formacin de docentes en las enseanzas medias o
superiores. En este contexto, al realizar el tercer curso, tuve la posibilidad de asistir
a unas clases optativas del lenguaje Fortran IV donde vi abrirse una horizonte
diferente al docente anteriormente reseado. En 1972, coincidiendo con el cuarto
curso de los estudios de Matemticas, se plante una oferta de becas de la Fundacin
Barri de la Maza para trabajar en el Centro de Clculo de la Universidad de
Santiago, nanciado por la citada Fundacin, y que en aqul momento estaba
ubicado en la propia Facultad de Ciencias y dirigido por el profesor Jos M
a Busta2 .
Facultad de Econmicas .
2 Jos Ma Busta (Lugo 1946-2008). Fue director del Centro de Clculo de la Universidad de
Santiago desde el ao 1970.
3 Colegio Universitario de La Corua dependiente de la Universidad de Santiago de Compostela.
xix
xx
5
denominado SADAT , al que fui asignado. La singularidad de este proyecto y la
tecnologa utilizada me ha llevado a incorporar una resea del mismo al nal de
esta tesis (apndice A. pg. 157) por considerar que tambin esta experiencia tiene
un importante inters histrico. El inicio del trabajo se realiz desde el Centro
de Clculo de la Universidad, simultaneando el mismo con la nalizacin de los
estudios de Matemticas. Al concluir ese mismo ao la Licenciatura se prorrog
la beca, trabajando a partir de entonces en el propio astillero. Finalmente, un ao
despus, me incorpor a la plantilla de ASTANO en el Departamento Tcnico,
dentro del denominado Grupo de Programas Tcnicos responsable en el astillero
del desarrollo de la informtica tcnica. El mbito de trabajo continu siendo el
mismo, muy cercano al anlisis numrico y ahora tambin a la geometra, pero lejos
de los sistemas de gestin empresarial que constituyen el foco de anlisis de esta
tesis. En esta misma etapa es cuando inicio mi carrera docente en la Universidad
de Santiago (1975) como profesor, primero contratado y posteriormente asociado,
en el citado Colegio Universitario de La Corua.
de la Universidad de Glasgow
xxi
las
bases
de
datos
los
entonces
denominados
monitores
de
Jos Luis Freire Nistal , del que haba sido alumno en la Facultad de Matemticas,
colaborando en la denicin del primer Plan de Estudios y convirtindome desde su
inicio en profesor de la misma, impartiendo al principio asignaturas de Programacin
y Arquitectura de la Informacin, para pasar posteriormente a la denicin y puesta
en marcha de las asignaturas de Base de Datos en los distintos cursos en la medida
en la que la carrera iba creciendo.
Al nal del ao 1985 se produjo un nuevo cambio profesional cuando se me ofreci
la posibilidad de incorporacin a una entidad nanciera de mbito nacional, a la que
en lo sucesivo me referir como la Entidad Financiera, que en aquel momento haba
iniciado una profunda transformacin de sus sistemas, abandonando la plataforma
anterior, basada en ordenadores Bull, en favor de sistemas IBM. Este es el entorno
profesional en el que se va a centrar esta tesis y se explica en mayor detalle en la
primera parte de esta tesis. En los 27 aos de trabajo en esta empresa hubo una
primera etapa en la que la funcin principal fue la de Analista/Jefe de Proyecto. Fue
la etapa del desarrollo del sistema que constituye la segunda parte de esta tesis, en la
que adems tuve la responsabilidad de formar, en bases de datos relacionales y en el
gestor transaccional, a los distintos equipos de trabajo que realizaban la migracin
de la plataforma, actuando tambin como soporte tcnico para esos equipos y como
analista en aplicaciones como Prstamos o Tarjetas de Dbito. En una segunda fase,
que comenz en 1989, me hice cargo de la direccin del departamento de desarrollo
informtico que integraba en aqul momento la plataforma central, la plataforma
de ocinas y el incipiente desarrollo departamental. El desarrollo departamental
pas ms adelante a otro departamento pero se incorpor a ste el desarrollo en
Internet. En esta etapa que dur hasta el ao 2007 el trabajo fundamental fue el de
direccin de equipos de proyecto, colaborando con otras unidades en la seleccin de
tecnologas y soluciones de negocio. El nmero de personas de los equipos superaba
el centenar entre personal de la propia entidad y personal externo. A partir del ao
2007, ya hasta el nal de mi actividad en la empresa, pas a dirigir una unidad ms
reducida, alrededor de 12 personas, cuya misin era la de seleccin de tecnologas,
realizacin de prototipos, desarrollo de proyectos con nuevas tecnologas y soporte
tcnico y metodolgico al departamento de desarrollo.
7 J.L.
Freire fue Director comisionado para la puesta en marcha de la Escuela y primer Decano
de la Facultad de Informtica (1991).
xxii
Universidad
Lic.
Matemticas
Coleg. Univ.
1975
1980
1985
1990
Analista
Jefe Proyecto
Astano
Empresa
Agropecuaria
TEU
(TC) Tesis
1995
2000
Director
Desarrollo
2005
Entidad
Financiera
Empresa Privada
2010
Director
Arquitectura
Fin Actividad
Empresa
ndice general
1. Introduccin
1.1.
Motivacin
1.2.
Objetivos
1.3.
1
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2. Introduccin
7
9
15
3.1.
Objetivos
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
3.2.
15
3.3.
Arquitectura de aplicaciones . . . . . . . . . . . . . . . . . . . . . . .
16
3.4.
Metodologa de desarrollo
18
. . . . . . . . . . . . . . . . . . . . . . . .
3.4.1.
Administracin de Datos . . . . . . . . . . . . . . . . . . . . .
19
3.4.2.
Gestin de proyectos . . . . . . . . . . . . . . . . . . . . . . .
20
3.4.3.
Gestin de la calidad . . . . . . . . . . . . . . . . . . . . . . .
21
23
4.1.
Objetivos
4.2.
Condicionantes tcnicos
. . . . . . . . . . . . . . . . . . . . . . . . .
23
4.3.
Fases de la migracin . . . . . . . . . . . . . . . . . . . . . . . . . . .
25
4.4.
. . . . . . . . . . . . . . . . . .
26
4.5.
Conclusiones
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
xxiii
23
xxiv
29
5.1.
Objetivos
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
29
5.2.
Situacin general . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
29
5.3.
Cronologa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
30
5.4.
31
5.5.
Conclusiones
32
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
6.1.
Objetivos
6.2.
Historia inicial
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
6.3.
36
6.3.1.
El terminal OS/2 . . . . . . . . . . . . . . . . . . . . . . . . .
36
6.3.2.
El terminal Windows . . . . . . . . . . . . . . . . . . . . . . .
40
6.3.3.
El terminal Eclipse-RCP . . . . . . . . . . . . . . . . . . . . .
40
6.4.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Conclusiones
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
44
Objetivos
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2.
Contexto general
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
45
7.3.
Planteamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
46
7.4.
La Banca Electrnica . . . . . . . . . . . . . . . . . . . . . . . . . . .
47
7.5.
Conclusiones
51
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8. Gestin documental
45
53
8.1.
Objetivos
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
53
8.2.
53
8.3.
Planteamiento y evolucin . . . . . . . . . . . . . . . . . . . . . . . .
54
8.4.
. . . . . . . . . . . . . . . . .
57
8.5.
Conclusiones
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
58
Objetivos
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.2.
Planteamiento general
9.3.
9.4.
Conclusiones
. . . . . . . . . . . . . . . . . . . . . . . . . .
59
59
59
. . . . . . . . . . . . . . . .
61
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
62
xxv
65
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
65
65
. . . . . . . . . . . . . . . .
66
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
69
11.Lecciones aprendidas
71
II
75
12.Introduccin
77
13.Antecedentes
81
81
83
87
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
87
91
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
93
14.4. Operaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
94
95
97
. . . . . . . . . . . . . . . . . .
98
. . . . . . . . . . . . . . . . . . . . . . . . .
98
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
100
102
. . . . . . . . . . . . . . . . . . 103
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
103
. . . . . . . . . . . . . . . . . .
105
. . . . . . . . . . . . . . . . . . . . . . . .
105
105
. . . . . . . . . . . . .
106
106
xxvi
16.Arranque y recuperacin
16.1. Juego de estados
109
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
. . . . . . . . . . . . . . . . . . . . . . . . 112
17.Operacin y monitorizacin
115
117
119
20.Lecciones aprendidas
123
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
III
. . . . . . . . . . . . . . . . .
123
126
. . . . . . . . . . . . . . . . . . 127
La Administracin de Datos
129
21.Introduccin
131
22.Administracin de Datos
133
. . . . . . . . . . . . . . . 133
23.Diccionario de Datos
23.1. Concepto
136
139
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
23.2. El entorno . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
140
142
24.Lecciones aprendidas
IV
Resumen nal
25.Conclusiones
143
147
149
151
xxvii
157
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
161
161
. . . . . . . . . . . . . . . . . . . . . . .
161
. . . . . . . . . . . . . . . . . . . . . . . .
162
B.2. Cuerpo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
163
165
169
E. Siglas y acrnimos
177
Bibliografa
183
ndice de guras
1.
2.1.
Hitos ms relevantes
. . . . . . . . . . . . . . . . . . . . . . . . . . .
13
2.2.
Potencia instalada
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
14
3.1.
16
4.1.
25
5.1.
Evolucin a BD relacionales . . . . . . . . . . . . . . . . . . . . . . .
31
6.1.
. . . . . . . . . . . . . . . . . . .
37
7.1.
Arquitectura de 4 niveles
. . . . . . . . . . . . . . . . . . . . . . . .
48
7.2.
50
8.1.
57
67
82
83
84
85
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
88
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
89
90
93
95
xxix
xxx
98
99
. . . . . . . . . . . . . . . . . . . . . . 100
101
102
. . . . . . . . . . . . . . . . . . . . . . . .
104
. . . . . . . . . . . . . . . . . . . . . . . . .
110
. . . . . . . . . . . . . . . . . . . . . . . . . . 111
. . . . . . . . . . . . . . . . . . . . . . . . . . 118
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
120
121
. . . . . . . . . .
135
136
144
144
. . . . . . . . . . . . . . . . . . . . 145
. . . . . . . . . . . . . . . . . . .
145
146
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
161
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
162
. . . . . . .
166
166
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
170
171
. . . . . . . . . . . . . . . . . . . . . . . . .
173
xxxi
175
176
. . . . . . . . . . . . . . . . . . . . . . . .
Captulo 1
Introduccin
1.1.
Motivacin
1.2.
Objetivos
2
un nexo de unin en el papel fundamental que tuvo la Administracin de Datos en
esta evolucin, que se expone como tercera parte de este trabajo.
1.3.
4
Parte IV. Resumen nal.
Apndices.
5
E. Siglas y acrnimos.
Parte I
Evolucin de la tecnologa
informtica en la empresa
Captulo 2
Introduccin
El objetivo de esta primera parte de la tesis es analizar la evolucin de la
tecnologa informtica desde dentro de la empresa, utilizando como referencia una
entidad nanciera de mbito nacional. Tambin se presentan aquellos aspectos de
la Ingeniera del Software que presentan un rasgo diferenciador en esta experiencia
concreta, demostrando su importancia en cualquier tipo de instalacin pero en
particular en aquellas de caractersticas similares a la que nos ocupa, que son:
Equipos
de
desarrollo
numerosos
con
presencia
importante
de
recursos
externos y subcontratacin.
10
Los hechos que se van a tratar en esta tesis se han estructurado en los captulos
siguientes:
La informtica de la empresa estaba soportada por ordenadores HoneywellBull que en el ao 1984 se haba decido sustituir por ordenadores de la
marca IBM. El proyecto de migracin estableci el entorno sobre el que se
incorporaron las tecnologas que son objeto de anlisis en esta tesis.
El Terminal Financiero pas por tres grandes etapas: Terminal en modo Carcter (1985-1992), Terminal Grco (1992-2007), Terminal Grco Integrado
(2007-2013).
11
Proyecto Ao 2000.
El proyecto del Ao 2000 fue comn a todas las empresas. Supuso una revisin
profunda de todos los formatos de fechas, su tratamiento y su presentacin.
Fue un proyecto que se pudo anticipar en el tiempo pero el trabajo ms
importante tuvo lugar en los dos aos anteriores. Tiene caractersticas propias
por tratarse de un problema horizontal que afect a todas las aplicaciones.
Proyecto Euro.
Gestin documental.
12
1
13
Terminal
Grfico
Terminal
Carcter
BE. Empresas
1985
1990
1995
Terminal
Integrado
BE. Particulares
2000
2005
Euro
EAI
2010
BPM
Ao 2000
Migracin
Batch
Migracin
Teleproceso
BD. G. Documental
Migracin
BD. Relacionales
la misma en el ao 2011.
4 MIPS:
14
1400
MIPS
1200
1000
800
600
400
200
0
1980
1985
1990
1995
2000
2005
2010
2015
Captulo 3
Situacin tecnolgica en 1985
3.1.
Objetivos
3.2.
[39].
gestor transaccional de
propsito general.
3 IMS: Information Management System. Base de Datos Jerrquica de IBM.
15
16
con el ordenador central mediante el envo de mensajes. Se trataba de una
arquitectura cliente/servidor en la que la presentacin y la lgica de presentacin
residan en el terminal de la ocina, que denominaremos en adelante Terminal
Financiero de acuerdo con el nombre con el que se conocen habitualmente este tipo
de entornos. Las pantallas que se utilizaban eran las llamadas de fsforo verde,
trabajaban en modo carcter y los equipos que las soportaban se programaban en
ensamblador y en Cobol.
Terminal Financiero
Terminal Financiero
Servidor Financiero
Oficina
Oficina
Terminal Financiero
Oficina
3.3.
Arquitectura de aplicaciones
17
en aquella poca en la que el concepto de sistema integrado estaba muy poco
desarrollado, limitndose a una integracin contable. Para paliar los problemas de
redundancia e inconsistencia de informacin, se plante en el ao 1985, todava en
el entorno Bull, un diseo muy ambicioso, pionero en el sector, que consista en
una base de datos central de personas y contratos relacionados (Fichero Central de
Clientes) que integrase a todas las aplicaciones que utilizaban algn concepto de
persona o contrato.
Aunque el primer diseo del Fichero Central de Clientes se hizo sobre base de
datos en red, una caracterstica importante fue que en esta base de datos se opt por
la identicacin de las personas mediante un subrogado, en la lnea de lo propuesto
por Codd para su modelo RM/T [14] [21], aunque limitado a la propia empresa,
evitando el problema de identicacin mediante documentos ociales, como el DNI,
de diferentes formatos en los diferentes pases o el caso singular de los menores que
podan no tener documento.
Un aspecto tambin singular del diseo de esta base de datos fue la forma en la
que se resolvi el diseo de la parte correspondiente a los domicilios de las personas,
estableciendo un concepto de Callejero. En l se identicaba cada una de las
calles de una poblacin mediante un subrogado y se estableca para cada rango de
numeracin de una calle el distrito postal de pertenencia, de forma que una persona
-que poda tener ms de un domicilio- se ubicaba en un nmero de portal, de un
nmero de calle, de un nmero de poblacin, de una provincia. El diseo fue muy
ambicioso, con un coste de carga y mantenimiento muy importante, permitiendo
una gran exibilidad en los procesos comerciales pues este tipo de planteamiento
permita una aproximacin de tipo geogrca al cliente. El taln de Aquiles de este
18
diseo fue el crecimiento de las poblaciones y la expansin de las ocinas bancarias,
que convirti en muy costoso el mantenimiento de este callejero por la necesidad
de actualizaciones constantes, que provocaban demora en los procesos de alta de
clientes al efectuarse el mantenimiento del callejero de modo centralizado.
3.4.
Metodologa de desarrollo
En concreto la metodologa seleccionada haba sido PDM-80 [18]. Esta metodologa se caracterizaba por hacer fuerte nfasis en el modelado de datos, utilizando una
ujo de interaccin.
19
6. Control de rendimiento y calidad.
Administracin de Datos
Gestin de Proyectos
Gestin de la Calidad
3.4.1.
Administracin de Datos
Las estructuras de datos y los propios datos se convirtieron desde ese momento en
un activo ms de la organizacin que era necesario planicar, coordinar y gestionar,
con nfasis en la integracin global.
20
3.4.2.
Gestin de proyectos
21
El Plan de Proyectos, administrado con exibilidad, demostr ser una herramienta fundamental para gestionar la actividad en un centro de las caractersticas
del descrito.
3.4.3.
Gestin de la calidad
22
Metodologas ms modernas han refrendado este posicionamiento a la vista del
papel fundamental que hoy se le da a los Casos de Uso [46] en metodologas como
el Proceso Unicado de Desarrollo de Software [47]. La importancia del diseo
temprano de la interfaz de usuario, realizada por los analistas con la cooperacin de
los propios usuarios, fue uno de los elementos ms importantes para poder garantizar
el tiempo de desarrollo de una aplicacin. Una forma de conseguir cerrar el diseo
de esta interfaz era el tratar de conseguir lo antes posible el diseo del manual del
usuario.
Captulo 4
El proyecto de migracin de
plataforma
4.1.
Objetivos
4.2.
Condicionantes tcnicos
24
Bull consista en una base de datos con modelo lgico en red y en el caso de la
plataforma IBM era una base de datos de tipo jerrquico soportada por el producto
IMS.
clsicas
de
Clientes,
Prstamos,
Cuentas
Corrientes,
Cuentas
de
1 SNA:
2 3270:
25
4.3.
Fases de la migracin
La tecnologa de base de datos a la que se migr fue IMS, que trabajaba con
modelo lgico de tipo jerrquico. Solamente aplicaciones de pequea entidad, sobre
todo las nuevas que se iban incorporando, se desarrollaron sobre base de datos
relacional. El motivo de esta decisin no fue otro que el mejor rendimiento de las
bases de datos jerrquicas en aquel momento. No se puede olvidar que en 1987 la
potencia del ordenador central era de poco ms que 10 Mips (g. 2.2 pg. 14).
Arranque
Inicio Teleproceso
1985
Arranque
Batch
1990
1995
2000
2005
2010
26
4.4.
El proyecto de migracin fue tambin muy importante para sentar las bases de
un entorno de explotacin robusto evitando, en lo posible, intervenciones de tipo
manual en favor de una automatizacin. En las entidades nancieras el volumen de
proceso que se realiza fuera de lo que es el entorno en lnea es muy elevado. El perodo
de tiempo que transcurre entre el cierre del teleproceso de un da y el arranque del
da siguiente se conoce con el nombre de ventana batch. En este perodo de ejecutan
todos los procesos que generalmente suponen descargas y actualizaciones masivas
de bases de datos, as como el tratamiento de un gran nmero de cheros. Sin una
planicacin adecuada de los trabajos a realizar en esta ventana, se produciran
solapamientos que podran provocar inconsistencias en la informacin y, en caso de
haber problemas, llegar a la no disponibilidad del sistema en las ocinas a la hora
de su apertura.
Las herramientas bsicas de un planicador son los calendarios y las dependencias. Los calendarios denen que das hay que realizar un proceso, mientras que las
dependencias son las que establecen el ujo de ejecucin. Sobre los calendarios se
montan los conjuntos de procesos, mallas o grupos, en dependencia de otros procesos
con los cuales estn relacionados. De esta forma se consigue optimizar el uso de los
recursos del procesador, en base al paralelismo en la ejecucin de procesos, sin que
existan problemas que puedan generar inconsistencias.
27
4.5.
Conclusiones
Una correcta planicacin debera ejecutar primero los procesos ncleo (ej.
liquidaciones, actualizaciones), despus las interfases con otras aplicaciones y
por ltimo todo aquello que sea informativo y la alimentacin de bases de
datos orientadas a las consultas como puede ser el caso del Data Warehouse.
28
Procesos crticos.
La periodicidad.
Es otro factor a tener en cuenta, ya que no todos los procesos tienen que
ejecutarse todos los das, puede haber procesos semanales o mensuales, siempre
deben ejecutarse antes los procesos diarios y a continuacin los de periodicidad
mayor: semanales, mensuales, trimestrales o anuales. De esta forma, en caso
de fallo, el tiempo destinado a solucionar los problemas no se convertira en
algo tan crtico.
Captulo 5
Migracin a bases de datos
relacionales
5.1.
Objetivos
5.2.
La
Situacin general
migracin
tecnologa
relacional
de
las
bases
de
datos
desarrolladas
30
todava muy limitada. Las bases de datos relacionales, en el tipo de entornos como
el que se trata en esta tesis, comenzaron su andadura de la mano de los entonces
llamados Centros de Informacin, predecesores de los actuales Data Warehouse o
Almacenes de Datos, o tambin de aplicaciones de gestin interna que no tenan la
criticidad de las aplicaciones operativas.
5.3.
Cronologa
En algn momento del tiempo alguna aplicacin, como por ejemplo Cuentas
Vista, poda tener parte de su estructura de datos en base de datos relacional y
otra parte en base de datos jerrquica, haciendo imprescindible la utilizacin de un
gestor transaccional no solamente en sus funciones de interaccin con terminales
31
o gestin de ejecucin de procesos, sino tambin en lo relativo a su papel en la
coordinacin de la conrmacin o recuperacin de las transacciones.
Costes
Operativos
1985
Fichero
Central
Clientes
Cuentas
Vista I
Contabilidad
1990
Nuevas
Aplicaciones
Ej. Cheques
1995
Cuentas
Vista II
2000
Prstamos
2005
2010
Activos
Dudosos
5.4.
32
5.5.
Conclusiones
Actualizacin tecnolgica.
Unicacin tecnolgica.
Formacin de equipos.
Captulo 6
Evolucin del Terminal
Financiero
6.1.
Objetivos
33
34
6.2.
Historia inicial
Con este primer paso se consegua no tener que hacer laboriosas liquidaciones
en las ocinas, que en aquel momento se hacan semestralmente, en el caso de las
cuentas corrientes y las libretas de ahorro, y mensualmente, para las imposiciones
a plazo que vencan el mes siguiente. A pesar de estos avances, segua siendo una
tarea pesada, pues las liquidaciones por ordenador obtenan unos listados con los
resultados que era necesario enviar a las ocinas, para all actualizar las posiciones
en las cuentas de cada cliente. Otra tarea an sin resolver era la actualizacin
de libretas pues se hacia manualmente, en maquina de escribir o con pequeos
equipos registradores con introduccin manual de los movimientos. Estas carencias
demandaban a los fabricantes de ordenadores y de mquinas contables continuar
con la investigacin y desarrollo de nuevos equipos.
35
de los aos 70, en colaboracin con alguno de los bancos en aquel momento ms
importantes, abord un proyecto para desarrollar la Red Especial de Transmisin
de Datos (RETD) que contaba con una serie de Concentradores de Comunicaciones
1 CCR:Centros
de Comunicacin y Retransmisin.
36
Con estos nuevos equipos las ocinas ya casi tenan una automatizacin total
y se continuaron incorporando aplicaciones a las iniciales de Cuentas, Valores,
Cartera, Titulares de Contratos. Un hito importante fue la creacin de la Cmara
de Compensacin nica, centralizada en el Banco de Espaa, desapareciendo las
cmaras provinciales que haban sido iniciadas en el Consejo Superior Bancario
y una vez desaparecido ste continuadas por la AEB . Los comits tcnicos
3
establecidos llevaron a cabo el truncamiento de efectos comerciales y de cheques de
cuenta corriente as como intercambios de transferencias, recibos, etc. hasta llegar
al nivel de desarrollo que hoy conocemos.
En toda esta poca, que dur hasta principios de los 90, los sistemas de
comunicacin mejoraron de forma exponencial con la aparicin de nuevos sistemas
operativos y de un nuevo protocolo de comunicaciones orientado a paquetes, el
protocolo X.25, que ya permita el envo de cualquier tipo de informacin: grcos,
tablas, etc.
6.3.
6.3.1.
Para el diseo del nuevo terminal se seleccion el sistema operativo OS/2 por
su interfaz grca, capacidad multitarea y facilidades de comunicacin. Fue en el
ao 1992 cuando se decidi hacer el cambio, planteando un diseo hacia un nuevo
concepto de terminal con caractersticas interesantes como las que se describen a
continuacin:
tomados.
37
Producto
Terminal
Grfico
Terminal
Carcter
SS.CC
Terminal
Integrado
Oficinas
Planteamiento
Pruebas de Concepto
Maquetas
Instalaciones Piloto
....
1985
Nixdorf
Olivetti
1990
1995
OS/2
2000
Citrix
2005
Windows
2010
Eclipse/RCP
Tecnologa Utilizada
En lnea con la eleccin del sistema operativo OS/2 se decidi utilizar para
el desarrollo de la nueva interfaz grca el modelo propuesto por IBM como
"The IBM Common User Access"[41] [40]. Este modelo es el que haba sido
usado por IBM para la denicin de la interfaz del propio sistema operativo
OS/2; de esta forma la nueva interfaz del Terminal Financiero presentaba las
aplicaciones como objetos y mens contextuales que ofrecan acciones sobre
esos objetos. Un ejemplo podra ser el objeto Prstamo y una posible accin
sera amortizar anticipadamente, sta dara lugar a un objeto Amortizacin
con sus propias acciones como pueden ser anular o 'imprimir.
La idea era que los objetos que el usuario necesitase para realizar sus tareas se
integrasen y pudieran cooperar con los objetos que provea el entorno de forma
integrada. La interfaz utilizaba tres tipos de objetos: contenedores, objetos de
datos y dispositivos. Los contenedores agrupan otros objetos, los objetos de
datos son realmente los objetos de negocio, como los explicados anteriormente,
y los dispositivos son representaciones de elementos fsicos como por ejemplo
38
una impresora, un lector de barras, un reciclador, un dispensador etc. La
accin de imprimir podra realizarse directamente desde el men contextual
del objeto correspondiente o mediante la interfaz de usuario arrastrando el
objeto a la impresora.
El resultado de este diseo fue una interfaz de usuario, muy avanzada en aquel
momento, que permita un espacio de trabajo o escritorio compartido por las
aplicaciones y una interfaz de usuario uniforme e intuitiva, que haca sencilla
la incorporacin de nuevas aplicaciones al entorno por compartir todas ellas
1. El ncleo
4 Modelo mental consistente en el conjunto de relaciones que una persona percibe que existen
entre los elementos de una determinada situacin, en este caso interfaz.
39
2. Las transacciones de negocio
Roles y perles
Conseguir reducir el tamao del equipo necesario para los terminales de ocinas
supuso una reduccin de coste muy importante en la explotacin del Terminal
Financiero si tenemos en cuenta que el nmero de equipos superaba los 3.000 entre
los servicios centrales y las ocinas.
Architecture.
40
6.3.2.
El terminal Windows
Otro cambio importante que se realiz en esta conversin fue la migracin del
protocolo de transporte que pas de ser X.25 a TCP/IP, para ello se construy un
componente de emulacin Telnet 3270E que encapsulaba el trco SNA para que la
integracin con el servidor transaccional del ordenador central no se viese afectada.
6.3.3.
El terminal Eclipse-RCP
Integracin de informacin.
El terminal tendra que ser capaz de integrase con otras plataformas como
7 Notes:
41
Microsoft Oce, el entorno informacional, con acceso directo a modelos en
bases de datos relacionales, o la informacin de intranet, as como por supuesto
a todo el Servidor Financiero ya integrado con la plataforma Windows.
Orientacin a procesos.
Reutilizacin de dispositivos.
Identicacin nica.
8 AJAX:
42
utilizacin de un navegador sin ms tambin era un riesgo importante para el
xito del proyecto pues el usuario percibira una prdida de usabilidad.
Integracin
Reutilizacin
9 de Eclipse,
9 RCP:
43
Capacidad de la plataforma Java.
Distribucin limitada.
Capacidad a futuro de optar en cada caso por el tipo de cliente que fuera ms
conveniente: ligero, pesado.
10 BIRT:
44
6.4.
Conclusiones
Es importante sealar que las entidades que optaron por un terminal basado en
navegador, tuvieron dos opciones: hacerlo en un slo paso (big-bang), asumiendo los
plazos de una migracin extremadamente voluminosa, o mantener una convivencia
larga entre el sistema anterior, generalmente de tipo carcter, y el sistema nuevo,
duplicando en muchos casos los puestos de trabajo de la ocina y complicando
enormemente la operativa en las mismas.
Captulo 7
Incorporacin a Internet: Webs
y soluciones de Banca
Electrnica
7.1.
Objetivos
7.2.
Contexto general
1
46
El concepto genrico de Comercio Electrnico, a pesar de los ejemplos conocidos
de xito como Amazon (1995) o algunos intermediarios nancieros virtuales como
E-Trade o Charles Schwaab, no tena en aqul momento el desarrollo que hoy tiene.
La primera banca electrnica en Espaa habra que situarla en 1997.
7.3.
Planteamiento
1. Acceso a Internet.
2. Correo Electrnico.
47
4. Banca Electrnica.
Dentro de esta categora se sitan las aplicaciones que las entidades nancieras
distribuyen a sus clientes con propsito variado. Se trata tanto de soluciones de
contabilidad domstica, que se comunican con la entidad fundamentalmente
para actualizar posiciones y movimientos de cuentas, como de aplicaciones
para empresas para trabajar con recibos, efectos comerciales o transferencias.
En algunos casos no se distribua la aplicacin sino que simplemente se habilitaba el envo de informacin por medio de una transmisin de cheros. Un
ejemplo importante fue un acuerdo entre cerca de 30 entidades para desarrollar
un paquete propio, denominado Efectivo 98, que recoga informacin de las
posiciones del cliente en las entidades participantes y gestionaba localmente
la informacin de cuentas y recibos en un formato de contabilidad domstica.
7.4.
La Banca Electrnica
cajeros, integrndose con sus protocolos . La situacin que se plante con la Banca
3 La
48
Electrnica fue similar, se trataba de dar servicio a los clientes pero ahora utilizando
tecnologa diferente ya que aparecieron nuevos elementos tcnicos como Servidores
de Pginas y detrs de ellos Servidores de Aplicaciones, congurando tpicamente
arquitecturas cliente-servidor de tres niveles que en este caso, por existir adems
el Servidor Financiero de tipo transaccional que resolva la lgica funcional de las
aplicaciones y el acceso a las bases de datos, habra que hablar de al menos cuatro
niveles [27].
Aplicaciones
Cliente
Ligero/Pesado
Servidor Web
(Servidor http)
(Servidor de aplicaciones)
Servidor
Transaccional
Corporativo
Gestores
de Recursos
(BD, Colas, ..)
1. Gestin de autorizaciones
49
2. Operaciones masivas
50
Integracin
Web/BE
Planteamiento
BE de
Global
Particulares
Evolucin
y
Nuevas Funcionalidades
1985
1990
1995
2000
BE de
Empresas
I
2005
2010
BE de
Empresas
II
51
7.5.
Conclusiones
Captulo 8
Gestin documental
8.1.
Objetivos
8.2.
54
La segunda es la informacin destinada a los clientes tal como informacin sobre
saldos, movimientos, informacin para renta o patrimonio, o la informacin que se
produce en el mbito de la propia ocina, en forma de justicantes o contratos,
como consecuencia de las operaciones que stas realizan.
En el segundo grupo est la informacin que se captura de clientes, fundamentalmente en las ocinas. Dentro de este tipo de informacin aparecen los documentos de
identicacin, rmas, documentos de f de vida, balances de empresas, documentos
de constitucin etc.
8.3.
Planteamiento y evolucin
55
de forma inmediata; un ejemplo puede ser el listado de los descubiertos en cuenta.
La diferencia entre ambos sistemas es que el primero es de tipo reactivo, mientras
que el segundo es proactivo tratando de mover a la revisin inmediata.
56
consultas sobre la informacin tipo informe, permitiendo a los usuarios internos
acceder a la misma de forma ms exible, seleccionando datos o eliminando
columnas de la presentacin, o tambin localizar informacin por algn criterio
relevante. A pesar de que el nuevo planteamiento prioriz el almacenamiento de
la informacin histrica sobre bases de datos relacionales, continu existiendo
informacin en listados que no precisaba ser almacenada como informacin histrica
y que continu siendo almacenada como listados.
57
Almac. y
distribucin
1985
1990
1995
Listados
en lnea I
2000
Repositorio
Internet
BD de
G. Documental
2005
2010
Listados
en lnea II
8.4.
58
sus caractersticas, su clasicacin -necesaria para su indexacin - y su forma de
uso, as como caractersticas de versionado, seguridad, ciclo de vida, formato de
almacenamiento, formatos de presentacin etc.
8.5.
Conclusiones
Es importante resaltar la importancia de los metadatos al abordar un proyecto documental. En los sistemas documentales, de la misma forma que en los
operacionales o que en los orientados a la informacin, las deniciones precisas,
la estandarizacin y la estructuracin correcta son las claves para el xito. Es
fundamental la existencia de un catlogo documental, en el mismo sentido en el
que se puede hablar del modelo conceptual de datos al denir una base de datos
convencional. Realmente en un proyecto de base de datos documental existen dos
niveles de metadatos, el primero es el que dene el esquema de la propia base de
datos documental, en cierto modo lo que es su modelo lgico, denido por medio
de clases y sus relaciones; el segundo es el catlogo documental mencionado, que
resuelve aspectos de negocio y que podra ser nico o existir catlogos diferentes
para distintos propsitos.
Tambin es fundamental el planteamiento de independencia entre las aplicaciones y el gestor documental. La capa de servicios documentales, apoyados en el
catlogo documental, asla de la tecnologa concreta de cada gestor documental que
se utilice y abre de esta forma el camino de evolucin hacia otras tecnologas que
pudieran presentarse en el futuro.
Captulo 9
Arquitectura de integracin de
aplicaciones y BPM
9.1.
Objetivos
BPM .
9.2.
Planteamiento general
1 BPM:
60
La situacin en el tiempo se complic en dos direcciones:
1. Sistemas distribuidos.
Los sistemas distribuidos aparecieron de dos formas. Por un lado los usuarios
comenzaron a tener ordenadores de tipo PC que necesitaban informacin de
los sistemas centrales para realizar sus simulaciones y anlisis. De otra parte la
distribucin de las aplicaciones, en plataformas diferentes al ordenador central,
hizo aparecer la necesidad de intercambio de informacin entre los sistemas.
El intercambio de informacin con el exterior es un aspecto de la mxima importancia en la informtica de las entidades nancieras, se pueden mencionar
desde los intercambios con la Administracin del Estado, realizados con un sin
n de organismos de mbito local o nacional, hasta los intercambios, cada vez
ms frecuentes, con clientes o la integracin en redes nancieras como puede
Estas necesidades fueron apareciendo a lo largo del tiempo y las soluciones que
se dieron a las mismas dependan de la magnitud del problema, su criticidad, la
tecnologa disponible, la situacin de cada aplicacin, el momento del tiempo en el
que era necesario resolverlas y hasta el plazo para hacerlo. El ltimo paso de esta
evolucin lo representan los entornos BPM que los fabricantes hoy presentan como
la solucin a todos los problemas de la informtica en las empresas.
2 SWIFT:
61
9.3.
En este caso se seleccion una plataforma comercial que cubra los requisitos
planteados y especialmente el de integracin con la red nanciera SWIFT.
62
persistencia permite abandonar un proceso para retomarlo en otro momento
del tiempo, mientras que la colaboracin permite asignar la siguiente actividad
de un proceso a un usuario o rol diferente. El entorno de desarrollo de terminal
se modic para poder denir estos procesos y poder ser desplegados en el
propio terminal o en un servidor de aplicaciones, en cuyo caso la colaboracin
podra establecerse entre distintos canales, interaccionando en el proceso
clientes y personal de la entidad. Un ejemplo de esto ltimo puede ser un
prstamo solicitado por un cliente en Banca Electrnica, que la ocina tramita
aportando informacin y que un departamento central de riesgos debe aprobar,
para por ltimo comunicar de nuevo con el cliente.
Esta forma de plantear el problema result satisfactoria pues con este Gestor de
Procesos de Negocio, construido en el mbito del Terminal Financiero, se pudieron
acometer los procesos ms importantes, generalmente ligados a la concesin de
operaciones de activo. Posteriormente, en el ao 2011, se construy una versin
ligera, que se denomin Gestor de Trmites, que permita la recogida en ocinas
de la informacin bsica para realizar determinadas operaciones, informacin que se
transmita a un equipo centralizado, interno o externo a la entidad, para continuar
la ejecucin del proceso, descargando a la ocina del trabajo administrativo que
supona la introduccin de operaciones para poder dedicar ms tiempo a la gestin
comercial.
9.4.
Conclusiones
Una aplicacin muy interesante del entorno de integracin fue la que se dise
para gestionar los intercambios de cheros. En una entidad nanciera el volumen de
cheros que se intercambian, tanto interna como externamente, es muy elevado, lo
que exige una gestin cuidadosa. El sistema, que se construy apoyado en el entorno
de integracin y en el Diccionario de Datos, permite la denicin y monitorizacin
de estos intercambios. El Diccionario de Datos resuelve la casustica de los formatos
y el entorno de integracin los protocolos de transmisin, el direccionamiento y las
63
transformaciones entre formatos. El sistema se apoya en un cliente web desde el que
un usuario controla todo lo que recibe y enva; como caractersticas importantes
se pueden citar los aspectos relacionados con el tratamiento de la caducidad de
envos, la posibilidad de mltiples destinatarios, la capacidad de administracin y
monitorizacin, y la interfaz para la denicin de los distintos intercambios, cuyos
parmetros se almacenan en una base de datos desde la que se gestiona el sistema.
Captulo 10
Sistemas Informacionales y
Data warehouse
10.1.
Objetivos
10.2.
Situacin general
66
generalmente entornos locales de desarrollo y base de datos o herramientas de
omtica, sobre todo hojas electrnicas que alcanzaban niveles de complejidad
muy alto. Los usuarios se animaron con el poder que les daba el tratamiento de
la informacin en sus manos y comenzaron a desarrollar sus propias aplicaciones
que en algn caso sobrepasaban sus propias necesidades de informacin para pasar
a cubrir aspectos operativos.
10.3.
67
H
e
r
r
a
m
.
Metadatos
Extraccin
Transform.
Ficheros y
Otras Fuentes
Carga
Servidor
OLAP
DW
BD Operacionales
DM1
........
F
r
o
n
t
E
n
d
DMn
Data Marts
68
En un proyecto n de carrera de la propia facultad dirigido por el doctorando
[23] se hace un anlisis pormenorizado de los problemas que se plantearon en la
instalacin que se usa de referencia y del tipo de soluciones arbitradas. De entre
ellos resaltar las siguientes como lecciones aprendidas ms importantes:
Metadatos
Almacenamiento intermedio
Los procesos de depuracin y carga pueden ser muy laboriosos. Los resultados
intermedios deben ser almacenados para poder ser analizados y efectuar las
correcciones que sean necesarias.
Integridad referencial
Rendimiento y optimizacin
Mtodos de captura
69
Cambios en las dimensiones
10.4.
Conclusiones
Captulo 11
Lecciones aprendidas
Adems del anlisis efectuado sobre cada uno de los temas tratados y de las
lecciones que de los mismos se han extrado, en este captulo se establecen algunas
conclusiones globales que se consideran importantes en la evolucin de los sistemas
y que en este caso estn respaldadas por la experiencia profesional vivida.
Lo nuevo y lo antiguo
Lo ms sencillo es siempre construir desde cero pero no siempre es posible.
ncleo, que en este caso se hizo utilizando JNI , o de las transacciones que
constituan los servicios de negocio.
1 JNI:
72
Los cambios de tecnologa
Para las organizaciones la tecnologa es un medio y no un n.
Las
organizaciones
asumirn
los
cambios
tecnolgicos
siempre
que
eco-
La resistencia al cambio
Los usuarios sobre todo y tambin los tcnicos no aceptan siempre los cambios.
Es un punto que si bien puede tener alguna relacin con el anterior nos
referimos a l en otro sentido. En este caso se trata del problema que se
presenta al incorporar una tecnologa o solucin que pierde funcionalidad o
facilidad de uso con la existente. Un ejemplo de esta situacin se plante con
la alternativa de utilizar un navegador para el Terminal Financiero que an
siendo una solucin tcnica ms moderna ofreca sin embargo una experiencia
de usuario peor. Nunca debemos menospreciar la resistencia de un usuario a
la prdida de funcionalidad, ya que el usuario ser un freno importante en
la implantacin de un nuevo sistema si entiende que pierde funcionalidad o
facilidad de uso. Un usuario difcilmente aceptar argumentos de tipo tcnico.
73
El comps
La importancia de la Planicacin Estratgica de los Sistemas de Informacin.
2 [71] [72] y que desarroll con sentido prctico Spewak [68]. Los
2 Zachman propone una visin bi-dimensional para los sistemas de una organizacin, en
columnas sita lo que denomina las arquitecturas que inicialmente eran datos, funciones y red, y
en las los niveles que empiezan en el nivel conceptual y terminan en los aspectos fsicos.
Parte II
La persistencia de las
soluciones
75
Captulo 12
Introduccin
El objetivo de la segunda parte de la tesis es el contrario del de la primera. As
como en la primera parte se analiza la evolucin informtica en una empresa, en
esta segunda se analizan los factores para la duracin en el tiempo de los desarrollos
software. Para ello se ha elegido un proyecto relevante que sirve como ejemplo de
la importancia de la utilizacin de principios slidos de diseo para garantizar la
evolucin y la durabilidad de los sistemas.
El papel del tiempo aqu es doble. Si bien es cierto que el sistema elegido ha
tenido que adaptarse a los cambios que el tiempo introdujo sobre el entorno, tambin
ha sido capaz de persistir en su funcionamiento durante ms de 25 aos sin modicar
su diseo. Los cambios en el entorno han sido muchos, tanto desde el punto de vista
del hardware y de las comunicaciones, como desde el punto de vista del software en
una doble vertiente, el software de base -fundamentalmente la tecnologa de la base
de datos- y las aplicaciones con las que se integra.
77
78
Una versin simplicada del sistema que se describe, la integracin de una
entidad nanciera en una red de cajeros, lo he empleado como base para un ejercicio
prctico durante los ltimos aos en la asignatura de Arquitectura Cliente-Servidor.
En ella los alumnos construyen una versin reducida del mismo, pero con suciente
riqueza como para percibir que se estn enfrentando a un problema real y poder
manejar distintas tecnologas cliente-servidor.
Sobre este mismo tema se han desarrollado tres proyectos de n de carrera [62]
[2] [32], cada uno utilizando una tecnologa diferente: Java/Corba, COM/MTS y
Java/EJB. En el ltimo ao se ha realizado un cuarto proyecto [1] que introduce la
variante de utilizar un integrador, en este caso Spring-Integrator [29] [69].
Introduccin.
Antecedentes.
El proyecto concreto.
Se explican las decisiones de diseo que sin lugar a dudas han sido el
determinante ms importante de la larga vida del sistema.
Arranque y recuperacin.
79
Operacin y monitorizacin.
Se detallan los aspectos ms relevantes para la correcta operacin y monitorizacin del sistema. De nuevo es la criticidad del sistema la que hace tomar
una importancia especial a este captulo.
Se detallan los cambios en comunicaciones, en el software de base, especialmente la base de datos, y en las aplicaciones con las que se integra el sistema.
Lecciones aprendidas.
Captulo 13
Antecedentes
13.1.
2
misma que el texto clsico de Rumbaugh sobre OM/T [65] utiliza en alguno de
sus ejemplos de anlisis. La topologa supone que los cajeros estn conectados,
independientemente del banco
denominaremos ordenador del consorcio y que ste recibe las peticiones de los
cajeros para reenviarlas a cada banco adherido, dependiendo de cual sea el banco
emisor de la tarjeta que est operando. El esquema general puede verse en la gura
13.1.
Es responsabilidad de cada uno de los bancos la implementacin de la comunicacin con el consorcio de acuerdo con unos formatos y un protocolo preestablecidos
1 consorcio: agrupacin de bancos que comparten una red de cajeros conectados a un ordenador
central.
2 OM/T: Object Modeling Technique.
3 En esta parte de la tesis utilizaremos el trmino banco en lugar de entidad nanciera para
simplicar el lenguaje.
4 FAP: Formats and Protocols.
81
82
Entidad A
Entidad C
Entidad B
CPD
CPD
CPD
Consorcio
Cajero
Cajero
TPV
Cajero
Oficina
Area Comercial
Oficina
integracin con sus sistemas internos, en este caso el Servidor Financiero mencionado
en la primera parte, de acuerdo con sus planteamientos internos de integracin. Los
formatos denidos en este FAP para los campos de los mensajes obedecen a los
estndares ANSI [3] e ISO [44] establecidos para este tipo de operaciones.
El diseo elegido, que se detalla en el captulo 15, fue el de una una arquitectura
de tres niveles, segn el esquema de la gura 13.2, donde el primer nivel gestiona el
protocolo, el segundo nivel es el Servidor Financiero en sentido estricto y el tercer
nivel lo constituye el acceso a los gestores de recursos, en este caso gestores de base
de datos.
83
Servidor Financiero
Acceso a datos
13.2.
Plataforma tecnolgica
7
era VTAM , que por un lado conectaba con los terminales, en este caso la lnea
RETD con el consorcio, y por el otro con el monitor de teleproceso sobre el que se
implementaron tanto el FAP como el Servidor Financiero.
84
Entidad
Consorcio
Financiera
Servidor Financiero
Servidor Consorcio
Aplicacin Cajeros
Aplicacin Cajeros
Aplicacin FAP
Aplicacin FAP
Transporte
Transporte
Nivel Red
Nivel Red
Red
85
Cada conexin por medio del sistema ICA exiga la denicin de dos terminales,
uno para entrada y otro para salida. Estos terminales se denan tambin en el CICS
y constituan los elementos lgicos por donde se reciban o enviaban los mensajes
intercambiados entre el banco y el consorcio (gura 13.4). En la terminologa RETD
el banco y el consorcio son dos Centro de Clculo de Abonado (CCA).
Gestor Transaccional
Term. Entrada
Term.
Salida
NCP / Isard
Red
Captulo 14
El proyecto concreto
Para explicar el alcance del proyecto desarrollado y poder valorar el diseo que
se explica en el siguiente captulo, es necesario en este punto explicar con ms detalle
el compromiso de integracin establecido a nivel de aplicacin entre un banco y el
consorcio, esto es, el protocolo que contempla tanto las reglas del dilogo como los
formatos de los mensajes que se intercambian entre el consorcio y el banco al que
genricamente hemos denominando FAP.
14.1.
El FAP
88
adelante, ya que no es objeto de este trabajo, que el protocolo de transporte ya ha
eliminado la cabecera propia del mismo.
Cabecera de Red
Datos Aplicacin
Mensajes de control
Mensajes de datos
El protocolo tiene denido un concepto de estado que est gobernado por los
mensajes de control (g. 14.2). Tambin existe un concepto de sesin, delimitada
entre una apertura explcita y un cierre de la misma. Durante la sesin se produce
el trco normal de datos de la aplicacin, as como tambin pueden intercambiarse
mensajes de control que modican el comportamiento temporal de la misma al poder
cambiar el estado. Los mensajes de control se utilizan para cuestiones como abrir
sesin, detener trco, iniciar un procedimiento de recuperacin o cerrar sesin.
Para poder establecer una sesin, el servidor del consorcio debe estar previamente
levantado y podr aceptar o denegar el inicio de sesin.
89
Detenido
Aceptado
Reanudar
Aceptado
Detener
Aceptado
Cierre
Cerrado
Aceptado
Recuperar
Normal
Recuperacin
Apertura
Aceptada
Cierre Aceptado
Aceptado
Fin de Recuperacin
Tipo de mensaje
Origen
entidad
consorcio
entidad o consorcio
consorcio o entidad
entidad o consorcio
consorcio o entidad
consorcio
entidad
consorcio
entidad
entidad
consorcio
90
La responsabilidad de abrir y cerrar una sesin es siempre de la entidad nanciera
que se conecta al consorcio. La duracin de la misma puede ser variable, podra
haber varias sesiones en un da o una sesin extenderse a lo largo de ms de un da.
La entidad nanciera ajustar normalmente su duracin para sincronizarla con su
planicacin de procesos, especialmente los procesos contables y de control y los de
cierre de las aplicaciones integradas. En la gura 14.3 se representan las posibles
duraciones de las sesiones.
Sesiones
S1
S2
S3
D+1
S4
D+2
Dias
Figura 14.3: Duracin de sesiones
Un banco puede tener ms de una sesin con el consorcio. Sucede este hecho
cuando existen varios centros de proceso de datos operativos o cuando se quiere
hacer algn tipo de separacin, bien sea geogrca o tambin por la necesidad de
separar sesiones en diferentes monedas, por ejemplo euros y pesetas, como sucedi
en el cambio al euro. El FAP, en su cabecera, identica la entidad y el nmero de
sesin. Se puede solicitar un inicio de sesin siempre que no exista ya una sesin
establecida para esa entidad y con ese mismo nmero. Si ese fuese el caso se tendra
que solicitar previamente el cierre de la sesin anterior ya que no se permiten sesiones
simultneas para la misma entidad nanciera con el mismo nmero.
91
est libre si se cumple una de las condiciones siguientes:
1. No fue utilizado todava durante la sesin.
2. La ltima peticin que se realiz por el mismo ya ha sido contestada por el
banco.
Como consecuencia de lo anterior, si en un momento del tiempo el nmero de
peticiones que recibe el consorcio hacia una entidad superase el lmite que imponen
los canales, sera responsabilidad de ste su encolamiento. Este funcionamiento en
modo de pool de conexiones lgicas, protege la carga que puede llegar al servidor
de la entidad nanciera. El banco responde a las peticiones que le llegan, como
mximo tantas concurrentes como canales denidos, sin necesidad de que se respete
el orden de recepcin de las mismas; es decir, el orden en el que se responde a cada
canal no es relevante, aunque s el orden de los mensajes dentro de cada canal.
14.2.
Mensajes de control
92
3. Solicitud de detener/reanudar trco.
93
Un detalle mayor de la estructura de los mensajes intercambiados se puede ver
en el apndice B.
14.3.
Solicitar
Cierre
Solicitado
Cierre
Detenido
Trfico Detenido
Detener
Aceptado
Cierre
Aceptado
Solicitado
Detener
Solicitar
Detener
Cerrado
Solicitar
Apertura
Solictada
Apertura
Trfico Cerrado
Apertura
Aceptada
Recuperacin
Aceptada
Recuperacin
Activo
Trfico Normal
Aceptado
Fin Recuperacin
94
14.4.
Operaciones
Reintegros.
Anulaciones de reintegros.
Anulaciones de traspasos.
Ingresos en efectivo.
Anulaciones de ingresos.
Ventas.
Anulaciones de ventas.
Devoluciones.
Anulacin de devoluciones.
Abonos a establecimientos.
95
Red
Implemetacin FAP
Aplicacin Cajeros
Clientes
Cuentas
Tarjetas
Transferencias
Otras
14.5.
96
Dado que el planteamiento de la integracin con la red de cajeros es fundamentalmente de funcionamiento en lnea, se resolvi principalmente dentro del entorno
del servidor transaccional que estaba soportado por CICS.
Captulo 15
El diseo planteado
Una vez detallado el entorno de aplicacin y el FAP, se explicarn la opciones de
diseo elegidas y el impacto que las mismas han tenido en la robustez del sistema y
en su durabilidad, que le han permitido soportar cambios tecnolgicos importantes
en la plataforma -sistema operativo, arquitectura de comunicaciones, gestor de base
de datos, monitor transaccional- y la evolucin de las aplicaciones con las que se
integra.
5. Auditora.
97
98
15.1.
15.1.1.
Recibe mensajes del consorcio, tanto de control como de datos, as como del
terminal de control. Su responsabilidad est en el tratamiento de la cabecera del
FAP y el control del estado de la sesin.
Aplicacin
Presentacin
Implementacin FAP
Sesin
Transporte
Red
Enlace
Protocolo de Red
Fsico
99
Si se tratase de un mensaje de control vlido, lo que se especica por el bit
correspondiente en la cabecera del FAP, el canal lgico ser cero y el nmero de
secuencia del mensaje no ser necesario validarlo por el receptor, ya que se trata de
un identicador del propio mensaje generado por el emisor sin tener que respetar
secuencia alguna. Este nmero se replica en los mensajes de respuesta a efectos
de poder ignorar respuestas atrasadas si se cruzasen peticiones. Los mensajes de
control, en el caso de ser aceptados, provocan el cambio de estado correspondiente,
tanto en memoria como en el sistema de persistencia, a efectos de recuperabilidad,
y se registran en el log.
RED
BD
Control
Fichero
LOG
Control FAP
BD
Canales
100
Aplicacin
Presentacin
Sesin
Transporte
Control de estado
15.1.2.
Transformacin de formato
Una vez validado el mensaje se transforma mediante un procedimiento automtico con los siguientes pasos:
101
Mapa/s de bits
Mapa de bytes
Estructura Original
Estructura Transformada
Campo-1
.
Campo-i
Campo-1
Tranf. -i
.
Campo-i
Campo-n
Campo-n
La transaccin termina invocando de forma independiente una nueva transaccin, sta ya de integracin en el mbito de negocio que consideramos dentro del
subsistema de integracin con el Servidor Financiero.
102
15.2.
Subsistema entrada
BD
Canales
BD
Cuentas
BD
Control
Transformacin Entrada
Invocacin Servicio
Servidor
Financiero
Transformacin Respuesta
BD
Tarjetas
BD
Transferencias
Almacenamiento Respuesta
BD
Establecimientos
Control
Totales
BD
.....
103
El subsistema de integracin trabaja tambin en modo transaccional garantizando la atomicidad entre las actualizaciones que pudieran haber realizado los mdulos
de negocio invocados y el almacenamiento de la respuesta generada. Este mecanismo
es el que garantiza en recuperacin la idempotencia de los mensajes pues al tener
almacenada la respuesta simplemente se reenviara sta en caso de repeticin de
una pregunta por un canal en estado de recuperacin.
15.3.
15.4.
Bases de datos
104
Control Aplicacin/Sesin
1
1
Tiene
Tiene
Tiene
Tiene
Canal
Parmetros Aplicacin/Sesin
Totales
"t"
Log
M
Tarjeta
Persona
Cuenta
usa
tiene
tiene
N
usa
1
Miembro
es
Movimiento
15.4.1.
Parmetros Aplicacin/Sesin
105
15.4.2.
Control de Aplicacin/Sesin
15.4.3.
Control de Totales
Es una base de datos que almacena los totales por tipo de operacin para
intercambiar en el mensaje de cierre. No todas las aplicaciones la necesitan. Tiene
dos niveles, el primer nivel recoge los acumulados globales mientras que el segundo
totaliza a nivel de canal. Se establece por aplicacin/sesin.
15.4.4.
Control de Canales
15.4.5.
Registra todos los mensajes recibidos o emitidos, los de error siempre y los
de datos dependiendo del nivel de grabacin especicado en la base de datos de
El automatismo en el funcionamiento del mismo libera al operador de intervenciones manuales. El hecho de que se trate de un chero de acceso directo habilita
su consulta en lnea desde el terminal de control.
1 VSAM/RRDS:
106
15.5.
BMS .
15.6.
La planicacin de procesos es un elemento de vital importancia en la instalacin. La importancia y criticidad de los procesos batch es tanta como la del propio
proceso en lnea. Todos los procesos de contabilizacin, obtencin de presupuestos,
control de gestin, liquidaciones, campaas comerciales o comunicaciones a clientes
son fundamentalmente batch.
2 BMS:
107
El sistema que nos ocupa tambin tiene su parte batch, quiz no tan importante
como otros, y por lo tanto la necesidad de integrarse con la planicacin global.
Desde el punto de vista de este sistema la integracin se produce fundamentalmente
en dos situaciones :
1. Arranque del teleproceso.
2. Cierre del teleproceso tras un cierre de sesin.
El arranque del teleproceso puede ocurrir despus de haber pasado por un cierre
ordenado o como consecuencia de una cada. En cualquiera de los dos casos el primer
elemento a considerar es la base de datos de Control de Sesin donde, a travs de
los estados denidos, se conoce la situacin de cada aplicacin.
Si el arranque del teleproceso se produjese tras una cada del mismo, la situacin
puede ser diferente ya que en el momento de la cada podra estar activa una sesin.
En este caso la actuacin respecto a las tablas de memoria sera la misma pero no
se lanzara automticamente la solicitud de inicio de sesin.
Captulo 16
Arranque y recuperacin
La disponibilidad exigida al sistema hizo que cobraran una importancia muy
relevante los aspectos relacionados con el arranque y la recuperacin. El diseo de
esta operativa se bas en varios juegos de estados establecidos en distintos mbitos
y relacionados entre s.
16.1.
Juego de estados
110
totales registrados durante una sesin, stos juegan un papel fundamental en
la determinacin de este estado. Se relaciona por tanto con el siguiente tipo
de estado que es el que establece la situacin concreta de los mismos. Se ha
planteado como un estado independiente para tener la posibilidad de inhibir
la aplicacin.
Disponible
Cierre Aceptado
Totales
Extraidos
Cerrada
Arrancable
do/ Borrar Totales
Apertura
Aceptada
Rearrancable
No Disponible
3. Estado de totales.
Estn relacionados con la integracin contable a travs del planicador que
controla el proceso por lotes o batch.
Los estados que pueden presentar los totales son :
111
d ) Extraidos: Han sido ya tratados por el proceso batch contable.
e ) Borrados: En disposicin de solicitar un arranque de una nueva sesin.
Sin cuadre
Proceso
Batch
Cierre
Aceptado
Extraidos
Acumulando
Cuadrados
Cerrados
Borrados
Apertura
Aceptada
16.2.
112
En el momento del arranque del sistema la base de datos de control del FAP
se sube a memoria donde es direccionada por los mdulos del FAP que la usan.
El modo ms habitual de uso es simplemente en consulta, fundamentalmente a
efectos de control de estado, actualizndose, con replicacin en la base de datos
real, nicamente cuando se produce un cambio de estado en el FAP. El diseo
se realiz de esta forma teniendo en cuenta factores de rendimiento y control de
concurrencia. El rendimiento se ve mejorado al no tener que acceder a la base
de datos en disco continuamente, sino solamente en aquellas actualizaciones que
afectasen a una posible recuperacin. El control de concurrencia se hace actuando
en combinacin con el diseo transaccional que protege la actualizacin concurrente
de la misma.
Tabla de
Aplicaciones
A
Control
Aplicacin
A
B
Control
Aplicacin
B
Control
Aplicacin
N
16.3.
113
base de datos de control del FAP, ni la de control de los canales. Este arranque
implicara simplemente el volver a establecer el rea de memoria correspondiente
a esta base de datos de control del FAP, quedando la aplicacin en el estado
que tuviera antes de la cada. El trco se reanudara ya que el consorcio estara
intentando una recuperacin por no recibir respuesta durante el tiempo de cada a
los mensajes emitidos.
Captulo 17
Operacin y monitorizacin
Uno de los aspectos fundamentales que hay que tener en cuenta cuando se disea
un sistema crtico son las facilidades de operacin y monitorizacin. El sistema que
se est describiendo es en efecto un sistema crtico tanto por la sensibilidad de su
funcionalidad, movimientos de dinero que realizan los clientes de forma desatendida,
como por el volumen de operaciones que gestiona (captulo 19).
Los operadores del sistema deben poder conocer en todo momento cualquier
anomala de funcionamiento que se produzca y para ello tenan que disponer de las
herramientas necesarias para poder monitorizar e intervenir si fuese necesario. La
idea bsica era doble: conocer el estado de funcionamiento y tener a su disposicin
todas las posibilidades de operacin que el protocolo admita.
17.1.
Consola de operacin
116
3. Modicacin de parmetros de cada aplicacin.
4. Emisin de mensajes de control del FAP.
5. Recepcin de respuestas a mensajes de control.
6. Recepcin de mensajes informativos de la aplicacin.
7. Consulta de trco de cada canal establecido.
8. Consulta del log de mensajes.
El detalle de los mensajes de control que puede emitir el operador desde esta
interfaz son:
Captulo 18
Evolucin del sistema
Como todos los sistemas, y de modo especial los de mayor permanencia, el
sistema sufri distintas adaptaciones en el tiempo (g. 18.1), principalmente por los
siguientes motivos:
Migracin a BD Relacionales.
Cambios transversales.
118
momento no haba sido preciso. El segundo de ellos no afect por contemplarlo
el diseo original.
Arranque
1985
Cuentas Vista
Fase I
y
Transferencias
Tarjetas
1990
1995
Aplicacin
2000
Establecimientos
Euro
Cuentas Vista
Fase II
2005
2010
Captulo 19
Algunos datos de volmenes
La criticidad de la aplicacin que se ha descrito puede entenderse mejor a la vista
de algunos datos reales. En el ao 2012, en el que la crisis ha reducido de forma
importante la actividad comercial y con ello el nmero de operaciones de telebancos
y terminales de punto de venta, el sistema trataba del orden de 2,5 millones de
mensajes de entrada mensualmente y una cifra equivalente de mensajes de salida.
119
120
120.000
100.000
60.000
Total
40.000
20.000
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
15
14
13
12
11
10
0
1
N. Msgs Entrantes
80.000
00:00
00:15
00:30
00:45
01:00
01:30
01:45
02:00
02:15
02:30
02:45
03:00
03:15
03:30
03:45
04:00
04:15
04:30
04:45
05:00
05:15
05:30
05:45
06:00
06:15
06:30
06:45
07:00
07:15
07:30
07:45
08:00
08:15
08:30
08:45
09:00
09:15
09:30
09:45
10:00
10:15
10:30
10:45
11:00
11:15
11:30
11:45
12:00
12:15
12:30
12:45
13:00
13:15
13:30
13:45
14:00
14:15
14:30
14:45
15:00
15:15
15:30
15:45
16:00
16:15
16:30
16:45
17:00
17:15
17:30
17:45
18:00
18:15
18:30
18:45
19:00
19:15
19:30
19:45
20:00
20:15
20:30
20:45
21:00
21:15
21:30
21:45
22:00
22:15
22:30
22:45
23:00
23:15
23:30
23:45
N. Msgs Entrantes
121
3.000
2.500
2.000
1.500
Total
1.000
500
Captulo 20
Lecciones aprendidas
Sin embargo, no restando importancia a esos factores se resaltan en estas conclusiones aquellos aspectos del proyecto que, aunque ya fueron tratados los captulos
anteriores dentro de su contexto, suponen las aportaciones ms importantes en esta
experiencia concreta. El anlisis se hace desde tres puntos de vista: el del diseo, el
del tratamiento de los requisitos no funcionales y el de la integracin.
20.1.
Diseo transaccional.
123
124
Bases de datos y recuperabilidad.
comportamiento de un DAO .
1 DAO:
125
el entorno de programacin, jugando tambin esta parte un papel tpico de
los entornos de integracin en su faceta de transformacin y correspondencia
de estructuras.
126
20.2.
Usabilidad.
Fiabilidad.
Rendimiento.
Es un condicionante aplicable a cualquier sistema, en este caso muy relacionado con el anterior.
Adaptabilidad y soporte
2 FURPS:
127
Implementacin.
Operacin.
20.3.
El diseo realizado tambin puede analizarse desde una perspectiva de integracin. El problema planteado se puede encuadrar en este tipo de soluciones si se
tienen en cuenta sus caractersticas de sincronizacin de datos, intercambio externo
a la propia empresa e integracin de aplicaciones con formatos de datos y protocolos
diferentes.
Construccin de mensajes.
Se hizo con separacin clara entre cabeceras y cuerpo, extrayendo y
transformando el cuerpo para establecer la integracin con el Servidor
Financiero y responsabilizando a cada subsistema de tratamiento de una parte
del mensaje.
128
Canales de mensajes.
Enrutamiento de mensajes.
Transformacin de mensajes.
La diferencia entre los tipos de datos que dene el FAP y los tipos de datos
del entorno de programacin, hicieron imprescindible esta transformacin que
solvent con apoyo de un diccionario propio denido para el FAP. Existe
adems una segunda transformacin que es la necesaria para construir el
mensaje que permite invocar el servicio de negocio correspondiente.
Gestin y monitorizacin.
Parte III
La Administracin de Datos
129
Captulo 21
Introduccin
En esta tercera parte de la tesis se describe una funcin, la de Administracin
de Datos, a la que generalmente no se le presta en las organizaciones la atencin
y dedicacin que merece. La funcin de Administracin de Datos es mucho ms
que simplemente una funcin, con ms rigor se puede decir que es una losofa de
trabajo, horizontal en todo el desarrollo informtico, y sobre todo la pieza clave
para gestionar los datos como un recurso y como un factor de produccin, tal como
se plante en la introduccin de esta tesis.
131
Captulo 22
Administracin de Datos
La magnitud del proyecto de migracin planteado en el ao 1985 (captulo 4)
aconsej la utilizacin de un Diccionario de Datos. El planteamiento fue ms all
y se implant una losofa y una funcin, la de Administracin de Datos [26] [20].
Tambin en Martin [54, cap. 21] se describen las funciones de los Administradores
de Datos y la de los Administradores de Base de Datos, presentando los papeles
diferenciados de guras como el analista, el diseador de base de datos, el supervisor
de base de datos y el ocial de seguridad. En Mairet [52] se centra ms en la funcin
especca del Administrador de Datos que es la que aqu se trata.
22.1.
134
Establecer polticas y procedimientos de seguridad sobre los datos.
Evitar redundancias.
Mejorar la documentacin global de los sistemas.
Potenciar el uso de los Modelos Conceptuales de Datos.
Integrar la Administracin de Base de Datos en este contexto, fundamentalmente en lo que concierne a los Modelos Lgicos de Datos.
22.2.
El valor de la informacin
1 Information
Resource Management.
135
La funcin de Administracin de Datos se sita de forma central en los procesos
de captura de requisitos, anlisis y tambin en el diseo de las bases de datos y de
otras estructuras de informacin como pueden ser registros de cheros, mensajes
etc. La Administracin de Datos estrecha la colaboracin entre los analistas y los
responsables de los proyectos, estableciendo un punto de control en sus deniciones
y modelos para adecuarlos a los estndares y usos de la instalacin, reforzando as
tambin la utilizacin de modelos conceptuales de datos que en este caso estaban
basados en una variante del modelo entidad relacin propuesto por Chen [13]
denominada ELKA [61].
Rechazos
Usuarios
Definicin
Elementos
Datos
Usuarios
Revisin
AD
Analistas
Diseo
Lgico
Definicin
Procesos
Usuarios
136
22.3.
Resultados obtenidos
140los que en su momento supusieron para una instalacin de este tipo el cambio
como
del Ao
120 2000 o la incorporacin al Euro.
100
Aplicaciones
60
efecto del Ao 2000 exigi localizar el uso de ms de 2500 grupos de datos con
20
a la introduccin del euro, con sus implicaciones de moneda y decimales, son algo
2003
2004
2005
2006
2007
2008
2009
2010
2011
140000
120000
100000
80000
60000
Datos
40000
20000
0
2002 2003 2004 2005 2006 2007 2008 2009 2010 2011
5000
2000
1000
0
2002 2003 2004 2005 2006 2007 2008 2009 2010 2011
Tablas
137
Otro aspecto fundamental de la Administracin de Datos lo constituy el
establecimiento de una norma de estandarizacin de los nombres de los datos. En
este caso se estableci una estructura para los mismos en base a tres tipos de
componentes: una palabra de clase o tipo de dato (ej. importe, cantidad, texto,
fecha, cdigo,..), hasta tres calicadores (ej. primera-adquisicin)y por ltimo la
entidad de pertenencia del dato, as el nombre completo de un dato podra ser
importe-primera-adquisicion-inmueble.
La utilizacin de una normativa para nombrar y denir los datos hace que la
probabilidad de que dos personas diferentes nombren de la misma forma un dato se
incremente de forma muy importante, estableciendo de esta forma un vocabulario
comn que favorece tanto la comunicacin entre los integrantes de un proyecto como
el mantenimiento de las aplicaciones. La identicacin de los elementos de datos y de
los programas de las aplicaciones afectados por el Ao 2000 y por la Implantacin del
Euro, se vio enormemente simplicada y acelerada por esta normativa, mostrando
su importancia en la resolucin del impacto frente a los cambios que los sistemas
de informacin sufren con el tiempo.
Captulo 23
Diccionario de Datos
23.1.
Concepto
Los diccionarios tienen por lo tanto una vocacin multiplataforma sin la cual
estaran limitados a un entorno y no podran contener informacin de todos los
datos de una organizacin.
139
140
23.2.
El entorno
Estos tipos base junto con las denominadas unidades seleccionables constituyen
el modelo bsico del diccionario, pudiendo el usuario denir (encode) objetos
pertenecientes a los mismos. Estas deniciones residen en el ncleo, denominado
ControlManager [6][8]. Adems existe la posibilidad de usar los denominados tipos
extendidos que permiten en base a jerarquas preestablecidas incorporar los tipos de
datos que contemplan sin necesidad de deniciones adicionales. Estas jerarquas son
EDPS (Extended Data Processing Structure), SAS (Structured Analysis Structure)
y SDS (Structured Development Structure) y sus diagramas se presentan al nal
del documento (apndice C. pg. 165. Por ltimo existe la posibilidad de extender
los tipos de miembros base deniendo los tipos necesarios para una instalacin o
simplemente ajustando el lenguaje al entorno.
consistente en:
141
extender la accin a otros "status", lo que se permitir o no en funcin de los
privilegios establecidos.
Todas los rdenes de paso entre entornos se realizan y controlan por medio
del diccionario que comprueba la existencia de los objetos necesarios en el estado
adecuado e invoca directamente los procesos necesarios en cada entorno.
Aceptacin
Rechazo
OP
OP
Rechazo
Desarrollo
Integracin
PM
OP
142
23.3.
Modelo de informacin
143
23.4.
Funciones soportadas
Eclipse/RCP .
23.5.
Datos cuantitativos
140
144120
100
80
Aplicaciones
60
40
140
20
120
0
100
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
80
Aplicaciones
60
140000
40
120000
100000
20
80000
0
2002
60000
2003
2004
2005
2006
2007
2008
2009
2010
2011
Datos
40000
140000
20000
120000
0
100000 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011
80000
60000
Datos
40000
20000
7000
60000
2002 2003 2004 2005 2006 2007 2008 2009 2010 2011
5000
4000
3000
Tablas
2000
7000
1000
6000
0
5000 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011
4000
3000
2000
1000
0
2002 2003 2004 2005 2006 2007 2008 2009 2010 2011
Tablas
30000
25000
20000
15000
Programas
10000
5000
145
0
2002 2003 2004 2005 2006 2007 2008 2009 2010 2011
35000
30000
25000
20000
15000
Mensajes
4500
10000
40005000
3500
0
3000
2002 2003 2004 2005 2006 2007 2008 2009 2010 2011
2500
2000
Entidades
1500
1000
500
0
2002 2003 2004 2005 2006 2007 2008 2009 2010 2011
30000
25000
20000
15000
Programas
10000
5000
0
2002 2003 2004 2005 2006 2007 2008 2009 2010 2011
Mensajes
10000
5000
0
2002 2003 2004 2005 2006 2007 2008 2009 2010 2011
146
4500
4000
3500
3000
2500
2000
Entidades
1500
1000
500
0
2002 2003 2004 2005 2006 2007 2008 2009 2010 2011
30000
25000
20000
15000
Programas
10000
5000
0
2002 2003 2004 2005 2006 2007 2008 2009 2010 2011
35000
30000
25000
20000
15000
Mensajes
10000
5000
0
2002 2003 2004 2005 2006 2007 2008 2009 2010 2011
Captulo 24
Lecciones aprendidas
La importancia de la funcin de Administracin de Datos, el foco en el modelado
de los datos, separando los niveles conceptual, lgico y fsico, y la gestin adecuada,
en este caso utilizando un diccionario de datos, han constituido elementos de la
mayor importancia.
con este planteamiento pues si bien presentaban una interfaz grca atractiva, en un
momento en el que el diccionario no la tena, quedaban empequeecidas tan pronto
tenan que competir con lo que demandaba la funcin de administracin de datos
y con la integracin conseguida entre el diccionario y las plataformas de ejecucin.
Indudablemente para una instalacin nueva el planteamiento podra ser diferente,
pero habra entonces que desarrollar la funcionalidad necesaria para soportar la
Administracin de Datos y la integracin con el entorno de ejecucin.
1 CASE:
148
nombres correctos y las deniciones precisas son de la mayor importancia, sin ellos
el deterioro de las aplicaciones por el mantenimiento est garantizado.
Parte IV
Resumen nal
149
Captulo 25
Conclusiones
151
152
La formacin en las Facultades de Informtica peca de aislar al alumno del
contexto real de aplicacin de los conocimientos que adquiere. Los planteamientos
acadmicos son con frecuencia irreales, presentando situaciones que no tienen ni
pasado ni herencia. En esta tesis se ha pretendido hacer una aproximacin a esa
realidad profesional presentando problemas reales de incorporacin de la tecnologa,
conceptualizndolos dentro de un marco de aproximacin acadmica.
Las conclusiones del anlisis realizado se han reseado al nal de cada una de los
escenarios tecnolgicos tratados, incorporando adems un captulo con las lecciones
aprendidas al nal de cada una de las tres primeras partes de este documento
(captulos 11, 20 y 24). Estas conclusiones no se van a repetir en este resumen,
remitiendo al lector a su ubicacin en cada una de las partes de este trabajo, pero
s se van a sealar algunos temas por su naturaleza ms horizontal:
Cuando se realiza una migracin son muchas las consideraciones que hay que
tener en cuenta, cada problema es distinto y el punto de partida tambin
es diferente; esto hace variar el modo de acometerlas, su plazo de ejecucin
y sobre todo, la forma en la que se hereda de la situacin anterior y como
se coexiste con ella. El anlisis minucioso de las alternativas posibles y la
seleccin del modo de hacerlo son aspectos crticos, no debiendo olvidar nunca
las lecciones aprendidas que se expusieron en el Captulo 11.
En esta tesis se han visto ejemplos de este problema en los casos de:
la migracin inicial de plataforma central, presentada en el captulo 4, la
migracin relacional, tratada en el captulo 5, y la migracin de tecnologa en
el caso del Terminal Financiero en el captulo 6.
Procesos de batch.
Los procesos batch son imprescindibles en las instalaciones de las caractersticas de la que aqu se ha utilizado como referencia. Es preciso resaltar
de nuevo la necesidad de una planicacin de los procesos a realizar y la
importancia de la integracin con el teleproceso, cada vez ms compleja por
las exigencias de disponibilidad de los sistemas las 24 horas del da y todos
los das de la semana. Ejemplos de esta situacin se han visto en el Data
Warehouse, tratado en el captulo 10, y en el sistema de Cajeros, que fue
objeto de la Parte II.
153
Multiplicidad de entornos.
Sistemas legados.
Los escenarios de evolucin tecnolgica tratados obedecieron a distintas motivaciones y tuvieron por lo tanto riesgos asociados diferentes:
Migracin de plataforma.
Fue una decisin de tipo estratgico, con alcance global y plazo denido. A
pesar de tratarse de una decisin estratgica, tomada como tal por la direccin
de la entidad nanciera, no estuvo exenta de riesgo por la envergadura del
proyecto y por su naturaleza transversal.
154
Migracin relacional.
Gestin Documental.
Fue una evolucin con especial impacto econmico y con fcil justicacin del
retorno de la inversin. Afect a la organizacin del trabajo en ocinas y a los
procesos de las mismas.
155
Sistemas Informacionales.
Por ltimo insistir en estas conclusiones nales en el papel central que tiene
que tener la Administracin de Datos en las organizaciones. La importancia de la
Administracin de Datos y del Diccionario de Datos como plataforma de soporte, se
ha visto en prcticamente todos los temas planteados. Ese fue el motivo que llev a
dedicarle una parte especca (Parte III). Proyectos como el Ao 2000 o la migracin
al Euro seran mucho ms complicados si no hubiese habido una Administracin
de Datos eciente, que se preocupase de la clasicacin de todos los datos y de
la estandarizacin de los nombres, y sin un Diccionario de Datos que los tuviera
perfectamente identicados e inventariados.
Apndice A
SADAT: Sistema Astano de
Diseo Automtico de Tuberas
A.1.
El proyecto
El primer proyecto citado, SADAT, fue desarrollado entre los aos 1974-1979,
momento en el que la actividad del astillero ASTANO se centraba en la construccin
de petroleros de gran tonelaje. Coincide con la poca del cierre del Canal de Suez
momento en el que se hizo necesario incrementar la capacidad de los buques para
as rentabilizar los transportes desde Oriente Medio que en ese momento tenan que
doblar el cabo de Buena Esperanza para salvar el continente africano.
158
paso los elementos, ya posicionados en el espacio, se recubran mediante una gura
geomtrica sencilla extrada de un catlogo predeterminado compuesto por cubos,
paraleleppedos, pirmides, pirmides truncadas, cilindros, conos, conos truncados,
supercies toroidales, etc. A continuacin se ejecutaba el proceso de validacin
consistente en la deteccin de interferencias entre estas guras geomtricas que
recubran a los objetos reales. Este proceso estaba basado en un conjunto de
algoritmos de deteccin de interferencias que permitan determinar si dos guras
tenan interseccin o no. La propia cmara de mquinas se modelizaba como un
gura ms y se subdivida en subespacios menores. Cada gura era validada contra
el resto de las guras ya posicionadas contenidas en subespacios que tuviesen
interferencia con la gura a posicionar. Es curioso sealar que actualmente en bases
de datos espaciales se hacen planteamientos parecidos de simplicacin cuando se
pretende buscar proximidades [34].
En una segunda fase del proyecto se introdujo un elemento tcnico singular, muy
avanzado para el momento, consistente en un Sistema Grco Interactivo sobre el
que visualmente se haca el diseo tridimensional que peridicamente era transferido
al sistema de proceso por lotes de deteccin de interferencias. Se parta de un
chero de elementos a posicionar constituido por los recubrimientos de los objetos
reales y se posicionaban manualmente sobre un espacio tridimensional, aplicando
funciones de rotacin, escalado (zoom) etc. para facilitar el posicionamiento visual
sin interferencias. Para este propsito se utiliz la plataforma grca vectorial Adage
cuyas caractersticas tcnicas por su singularidad se detallan en la seccin siguiente.
La tercera fase, en la que ya no tuve la oportunidad de participar por haber
dejado la empresa, consistira en sustituir la validacin de interferencias en modo
de proceso por lotes por la validacin en lnea directamente en el Sistema Grco.
El proyecto result apasionante para una persona de formacin matemtica,
ya que el peso ms importante del sistema estaba en la parte geomtrica, tanto
desde el punto de vista del sistema de deteccin de interferencias, como desde el
del desarrollo de la aplicacin de diseo asistido sobre una interfaz de usuario muy
evolucionada tcnicamente que permita la interaccin con el diseo con elementos
tales como diales, que suministraban valores en el rango (-1.0;1.0) interpretables
como escalados, rotaciones etc., botones (switches) cuya pulsacin supona un evento
a tratar, lpiz ptico con capacidad de detectar vectores en pantalla, tableta de datos
con la que se emulaba el comportamiento de un ratn, dispositivo que no era comn
como lo es hoy en aquel momento de la tecnologa, y nalmente teclado. Hay que
pensar que entonces, ao 1977, estbamos en un momento en el que la programacin
se realizaba fundamentalmente escribiendo el cdigo en papel, que posteriormente
se perforaba sobre chas que eran ledas por el ordenador, no existiendo todava el
concepto de ordenador personal en la empresa. El equipo utilizado y buena parte
de los algoritmos de transformacin realizados se explican en los textos de RogersAdams [63] y Newman [57].
159
A.2.
Microcdigo Grafx
Zoom y 3-D
Apndice B
Proyecto Cajeros: Estructura
de los mensajes
En este apndice se describe de forma genrica la estructura de los mensajes,
sin entrar en detalle de longitudes ni de formato de campos.
B.1.
Cabeceras
B.1.1.
Cabecera de control
Una vez eliminada la parte del mensaje que corresponde a protocolo de red, la
primera parte del mensaje la constituye la cabecera del FAP estructurada de la
siguiente forma :
CO
OD
NS
NA
IOP
NC
161
NS
BI
162
OO Origen del mensaje
OD Destino del mensaje
NS Identicador de sesin
NA Identicador de aplicacin servidora
IOP Identicador de operacin
NC Nmero de canal lgico
NS Nmero de secuencia
CE Cdigo de error
BI Bits indicadores :
Tipo de mensaje: control/datos
Sentido del mensaje: pregunta/respuesta
Indicador de recuperacin
Otros...
B.1.2.
Cod-Msg
Cabecera de datos
1100..1..0..1
101.....0
Mapa1
Mapa2
Tarjeta
cod-proceso
......
Dato-i
163
B.2.
Cuerpo
Desde el punto de vista de la aplicacin, una vez que ha sido extrada del mensaje
la cabecera de control del FAP, los mensajes se estructuran en tres partes: un cdigo
de mensaje, un mapa de bits y tantos campos de datos como se informan en el mapa
de bits. Cada bit del mapa hace referencia a un campo concreto, por ejemplo el saldo
de la cuenta, con un formato y longitud concreta. El formato puede ser:
1. Numrico empaquetado sin signo (dos dgitos numricos en cada byte).
2. Alfanumrico EBCDIC.
3. Uno o ms conjuntos de ocho bits de informacin.
4. Cdigo numrico EBCDIC.
Los mensajes tienen un cdigo compuesto que en su primera parte identica
la clase del mensaje y en la segunda el mensaje concreto dentro de la clase. Para
identicar la operacin concreta puede existir adems, dentro de los campos de
datos, un dato de tipo de proceso que incluye el tipo de operacin.
Los mapas de bits, segunda parte del mensaje tras el cdigo, se componen de
grupos de un nmero jo de bits. El nmero de grupos puede ser uno o ms,
identicndose que hay ms de uno mediante el ltimo bit del grupo que indica
si hay ms grupos o no. El mapa de bits es un mecanismo que permite ajustar
el tamao del mensaje a la informacin que realmente porta, evitando espacios
vacos o separadores de campos. Si el mensaje tuviese un nico mapa de bits y ste
tuviese activados solamente los bits 10, 23 y 34, indicara que a continuacin del
mapa vendran tres campos cuyas longitudes y formatos seran los denidos para
los campos 10, 23 y 34. Los mensajes son as de longitud variable y es el mapa de
bits quien regula la informacin que soportan.
La tercera parte del mensaje la constituyen los campos de datos, que dependen
de cada mensaje y son de formato predenido. La informacin del mapa de bits
sera en ese sentido redundante si no pudiese darse la circunstancia de la existencia
de campos opcionales.
1 MAC:
Apndice C
Diccionario de Datos:
Jerarquas
Las jerarquas que se detallen en este apndice son jerarquas por defecto
para modelos de informacin preestablecidos. Como ya se explic en el captulo
correspondiente al Diccionario de Datos, en la Parte III de este documento, el
modelo de informacin del diccionario es denible y en la instalacin utilizada
como referencia no se us ninguno de estos tres modelos que responden a formas de
documentar en metodologas de desarrollo ampliamente utilizadas.
165
166
PROCESS TYPES
DATA TYPES
Organizacin
Database
Funcin
File
User
Logical-File
Application
System
Physical-File
Dataset
Job
Report
Document
Procedure
Screen
Job-Step
Transaction
Form
Record
Group
Program
Module
Item
Element
Subroutine
External Process
Process
Subprocess
Datastore
Dataflow
Datastructure
Group
Item
Element
167
DATA TYPES
PROCESS TYPES
Organization
Function
Database
User
File
External Process
Process
Logical-File
Subprocess
Application
Physical-File
System
Report
Job
Procedure
Transaction
Screen
Document
Form
Record
Dataflow
Job-Step
Program
Datastructure
Module
Subroutine
Dataset
Group
Datastore
Item
Element
Apndice D
Diccionario de Datos: Modelo
de informacin
En este apndice se presenta el detalle de la estructura de informacin denida
para la instalacin que se referencia. Tomando como base el modelo global
presentado en el captulo correspondiente al Diccionario de Datos (g. 23.2 pg.
142) y las relaciones denidas en el metamodelo establecido, se detallan en las
guras siguientes las relaciones existentes para cada tipo de objeto documentado en
el diccionario.
169
170
171
172
173
174
175
176
Apndice E
Siglas y acrnimos
Actuate Actuate Corporation (www.actuate.com). Empresa de software que fund
y colidera el proyecto de cdigo abierto Eclipse BIRT (Business Intelligence
and Reporting Tools). Disponen de productos comerciales que extienden las
capacidades de BIRT.
178
BMS Basic Mapping Support. Interfaz entre el Servidor Transaccional CICS y los
programas de aplicacin que corren en l para soportar ujos de datos bajo
protocolo 3270. Resuelve el formateo y presentacin de los datos.
179
EAI Enterprise Application Integration. Hace mencin tanto a una losofa como a
la categora de soluciones que la sustentan, tanto comerciales como de software
libre.
ELKA Element Key Atribute. Modelo Conceptual de Datos propuesto por Hughes
Aircraft y la Universidad de California (UCLA) [61]
FURPS Funcionality, Usability, Reliability, Performance, Supportability. Modelo, inicialmente propuesto por Hewlet-Packard, para clasicar los atributos de
calidad, funcionales y no funcionales, del software.
J2EE Java Platform, Enterprise Edition o Java EE. Plataforma Java para
desarrollo de aplicaciones.
180
Host En general sera una computadora conectada a una red que provee servicios
a la misma. Tambin se aplica al concepto de ordenador principal en sistemas
centralizados.
MVS Multiple Virtual Storage. Sistema Operativo de IBM (1974) usado en sus
sistemas S/370 y S/390.
NCR3270 Protocolo del fabricante NCR utilizado para comunicar sus Terminales
Financieros
PDM80 Prototype Development Methodology. Metodologa denida por la empresa Computomata International Corporation.
181
PIN Personal Identication Number. Cdigo de seguridad asignado a una persona.
Se usa como clave de seguridad en el uso de las tarjetas y generalmente es el
mismo para todas las tarjetas de una persona en una entidad.
PROTOCOLO 3270 Protocolo para manejo de terminales de visualizacin denido por IBM [1972]. Se trata de un protocolo orientado a bloques que
minimiza el nmero de interrupciones de entrada/salida. Actualmente se
utiliza fundamentalmente en emuladores de terminal al no fabricarse los
mismos.
OS/2 Sistema operativo diseado por IBM para Computadores Personales (PC)
originalmente de 16 bits para pasar en su versin 2.0 (1992) a 32 bits [60].
182
VTAM Virtual Telecomunication Access Method. Programa producto de IBM
que desde un mainframe controla una red SNA.
Bibliografa
[1] Domingo Manuel Amado Candamo. Implementacin de un protocolo de cajeros
for
debit
URL
[3] ANSI.
ANSI
X9.2-1980
(interchange
message
specication
www.cs.tufts.edu/ nr/cs257/archive/alfred-spector/spector85cirrus.pdf.
[4] ASG-Manager-Products. Status Concepts, 1987.
[5] ASG-Manager-Products. Advanced Status, 2011.
[6] ASG-Manager-Products. Control Manager User's Guide, 2011.
[7] ASG-Manager-Products. Dictionary/Repository User's Guide, 2011.
[8] ASG-Manager-Products. System Administrator Guide, 2011.
[9] ASG-Manager-Products.
UDS, 2011.
[10] Gary D. Brown. Advanced ANS COBOL with Structured Programming. John
Wiley and Sons, 1977.
[11] Cii-Honeywell Bull. Data Management IV, Data Base Administrator, Reference
Manual, 1978.
[12] Edward H. Carr. Qu es la Historia? Ariel, 1961-2010.
[13] P. Chen. The Entity-Relationship Approach to Logical Data Base Design. QED
Information Sciences, Inc., Wellesley, Mass., 1977.
183
184
[14] E. Codd. Extending the database relational model to capture more meaning.
E.
How
Comer.
To
Write
Dissertation,
2000.
http://www.cs.purdue.edu/homes/dec/essay.dissertation.html.
URL
Systems, 1976.
PDM-SS User Manual Ver. 2.5,
[18] Computomata-International-Corporation.
1988.
Functions, 1978.
[21] C. J. Date.
Addison Wesley,
1982.
[22] Colin J. Date, C. J.; White. A Guide to DB2. Addison Wesley, 1982.
[23] M.L. Daz Pousa. Data Warehouse - Estudio del mantenimiento evolutivo y caso
Facultade
de
Informtica
http://http://gl.wikipedia.org.
de
Corua,
2012.
URL
2.1.3.RELEASE., 2012.
[30] Josep Fontana Lzaro. La historia. Salvat - Bibliteca GT, 1973.
185
[31] Martin Fowler.
Addison-
Grady
and
Deborah
Caswell.
In
Object-
186
[48] Setrag Khoshaan and A. Brad Baker.
Lovelace,
Rama
Ayyar,
Alvaro
Sala,
and
Valeria
Sokal.
VSAM
Specication, 2006.
[59] Computer Systems Laboratory of the National Institute of Standards and
Technology (NIST). IDEF Function Modeling Method, 1993.
[60] Robert Orfali and Dan Harkey. Client/Server Programming with OS/2 2.0. 2
INFORMATION
MODELS
Hughes
Aircraft
Company
ELKA
University
of
California, 1983.
[62] Alfonso Rivero Cebrin. Servidor Final de una Red de Cajeros con tecnologa
187
[63] D. F. Rogers. Mathematical Elements for Computer Graphics. McGraw Hill,
1976.
[64] D. T. Ross.
SpringSource
[69] SpringSource.
http://www.springsource.org.
[70] Rina
Yarmish
and
Joshua
Spring
Yarmish.
Framework,
2012.
URL
o 3, 1987.
IBM
[72] John A. Zachman. Extending and formalizing the framework for information
systems architecture. IBM Systems Journal, pages Vol 31, N
o 3, 1992.