Upload
others
View
16
Download
0
Embed Size (px)
Citation preview
13
CAPITULO II
MARCO TEÓRICO
FUNDAMENTACIÓN TEÓRICA
A. ANTECEDENTES DE LA INVESTIGACIÓN
La búsqueda de trabajos relacionados con esta investigación no fue
exitosa, puesto que el tema se refiere a un caso especial de la Corporación,
sin embargo, para el análisis de los Antecedentes de la Investigación se
tomaron en cuenta estudios previos relacionados con la automatización de
procesos, el manejo de seguridad en sistemas, integración, entre otros.
De las investigaciones analizadas, se precisó una presentada por
Chirinos(2000), titulada “Sistema Automatizado para el control de
matrices de seguridad y manejo de requerimientos”. Esta investigación
tuvo como objetivo diseñar y desarrollar un sistema de información que
automatice la recolección, análisis y mantenimiento de datos referentes a las
matrices de seguridad; y al manejo y envío de requerimientos en la UME de
BD de PROCEDATOS.
Los resultados de la investigación permitieron concluir que la
automatización de un proceso garantiza la integridad de los datos y facilita el
acceso a la información más relevante e importante del sistema, lo que
implica un menor tiempo de respuesta en la actualización de los datos,
14
además, disponibilidad y tiempo para la ejecución de otras tareas y/o
procesos. Por lo antes expuesto, el trabajo de grado contribuyó
favorablemente con la presente propuesta investigativa, puesto que, la
automatización del sistema permite una mejor visualización del manejo de
los roles y procedimientos.
De igual manera, otro trabajo de grado relacionado con ésta investigación,
la refiere Boscán(1997) titulada “Implantación de un sistema de
información para la interfaz entre los sistemas de inventario de Micro y
MainFrame de las empresas Enelven y Enelco”. El proyecto tiene como
finalidad la implantación de un sistema de información que permita la interfaz
entre los sistemas de inventario en Micro y MainFrame de las empresas
Enelco y Enelven, de manera tal, que se tenga el registro de las
transacciones inherentes al suministro de materiales; igualmente,
manteniendo mecanismos de control que permiten el seguimiento y
centralización de las operaciones propias de cada almacén mediante la
implantación del SIM(Sistema Integral de Materiales).
Logrando así, a través del proyecto la integración y centralización de la
información permitiendo el control absoluto de todos los almacenes foráneos
de ambas empresas y la completa satisfacción de los usuarios.
El autor proporciona a través de la investigación una noción de una
interfaz entre ambientes, la cual es necesaria para el enlace entre las
plataformas MainFrame y Cliente/Servidor. Como resultado, las ideas
expuestas anteriormente cumplen un rol esencial en la realización del trabajo
15
investigativo, puesto que, contribuyen con la de terminación de la dirección
que debe tomar la investigación.
B. BASES TEÓRICAS
1. INTERFAZ
Conceptualización
Según Senn(1999, p.519) una interfaz es “la frontera entre el usuario y la
aplicación del sistema de cómputo”. Una interfaz se refiere al conjunto de
elementos y procedimientos que hacen posible la comunicación entre dos
dispositivos, estos pueden ser dos dispositivos de Hardware, entre un
usuario y un sistema o programa o simplemente entre dos aplicaciones.
Por su parte, Budgett(2001), define la interfaz como “el circuito o conexión
física, que controla el flujo de datos entre un computador y sus
componentes”.
Se refiere en este sentido que, la función de la interfaz es el intercambio
de tráfico, al igual que el control y direccionamiento de datos. La conversión
de formatos de código puede ser necesaria para permitir dicho intercambio
de datos. En el caso de este estudio, esta interfaz va a permitir la unión de
los ambientes de MainFrame y Cliente/Servidor, para que de esta manera
estén bajo un mismo formato y se dé el intercambio de datos.
16
2. AUTOMATIZACIÓN DE PROCESOS Conceptualización El presente término consiste en "Hacer que obre o se regule por sí
mismo el funcionamiento de tareas industriales o cualquier conjunto de
elementos interrelacionados entre los que existe una cierta cohesión y
unidad de propósito, mediante medios mecánicos” (www.ssi.com.mx).
Partiendo de tal aproximación conceptual, la automatización se aplica
para mejorar sustancialmente los sistemas. Entienden en este enfoque los
investigadores que el automatizar un proceso implica siempre una mejoría en
la productividad, lo que redunda en una mejora en la rentabilidad de las
empresas, una mejor calidad de vida de los recursos humanos y
tecnológicos.
3. PLATAFORMAS TECNOLÓGICAS Al respecto reconoce como tal Aranguren(entrevista personal, 2001) que
el término se refiere a los métodos, conocimientos e infraestructura tanto
física como lógica sobre las cuales un conjunto de procesos tienen su
basamento funcional. Entre ellas se mencionan las más significativas a esta
investigación:
17
3.1. MAINFRAME
Se refiere generalmente a grandes computadores, usualmente con
sistemas operativos mayores a 64 bits que permiten conectar varios
terminales a la vez. La conexión entre terminales es inmediata, ya que no
hay que efectuar una instalación especial (como colocar módems o
dispositivos especiales).
De hecho, los terminales no funcionan sin conexión al computador. Se
entiende por un terminal la combinación de pantalla y teclado, conectado a
una CPU y memorias remotas, comunes para todos los terminales.
En PROCEDATOS se manejan múltiples sistemas basados en la
plataforma MainFrame. Los sistemas comerciales, como por ejemplo
SIS(sistema integral de suscriptores), ajustes y sistema de nómina son
algunos de los que trabajan bajo este ambiente. Los usuarios finales tienen
acceso por medio de taquillas externas, cajeros, entre otros. La permisología
en este ambiente es limitada, puesto que sólo tienen acceso los
administradores y desarrolladores.
La tarea de la UME de Base de Datos y Seguridad Operativa es la
encargada de suministrar accesos a los distintos sistemas de manera
confiable y eficaz. Coincide esto, con la necesidad de automatizar la
permisología de estos sistemas. El ambiente MainFrame es utilizado en el
18
trabajo de investigación como una de las plataformas a integrar para llevar a
cabo esta automatización.
3.2. CLIENTE/SERVIDOR Reconocido en el mundo de la informática como un modelo de desarrollo
de aplicaciones donde, a través de una red se distribuyen funciones entre
diferentes computadoras; estas pueden ser servidores o clientes y corren con
aplicaciones correspondientes a sus funciones. Según Sheldon (1997, p.7):
“Con aplicaciones Cliente/Servidor una parte del cliente interacciona con
usuarios mientras que la parte del servidor trabaja con datos almacenados y
los recursos conectados a los servidores. Hay una conversación pregunta -
respuesta que ocurre entre cliente y el servidor continuamente”.
Las computadoras clientes sirven de unión entre una aplicación o
dispositivo que solicita información a otro dispositivo asociado al servidor y
el usuario final. El cliente es el que analiza y muestra directamente la
información procesada al usuario que es retornada desde el servidor.
En cuanto a la arquitectura Cliente/Servidor se puede inferir que a medida
que el número de usuarios en terminales aumenta, el desempeño de las
aplicaciones disminuye (se pone más lento, ya que obviamente el espacio en
memorias y CPU deben compartirse entre más personas).
19
El esquema MainFrame resultó poco eficiente para algunas aplicaciones,
por lo que se diseñó una arquitectura en la cual se conecta uno de estos
computadores poderosos (mucha capacidad en memorias, velocidad de
procesamiento) junto a varios computadores más pequeños que también
poseen CPU y memorias propias.
Típicamente, se utiliza una máquina como servidor y varios PC como
clientes. Últimamente, la combinación que más se utiliza es un servidor con
Windows NT y clientes con Windows para grupos de trabajo. Las ventajas
son varias:
• Cada cliente puede efectuar procesamientos propios sin sobrecargar
el servidor.
• Cada cliente puede mantener información propia sin necesidad de
accederla desde el servidor.
• Al tener el procesamiento y la información distribuida, la carga del
servidor disminuye, por lo que el proceso global es mucho más rápido,
sin importar demasiado la cantidad de usuarios conectados a la vez.
Advierte el presente estudio que algunas desventajas aplicadas al caso
investigado de esta arquitectura, tienen que ver con costos. Tanto el equipo
como el software que debe utilizarse son más altos en conjunto, en
comparación a un MainFrame y terminales. Aún así, es el esquema más
utilizado en aplicaciones relacionadas a grandes BD.
20
Entre los servicios que brindan las computadoras servidores se
encuentran incluir, extraer, manipular y procesar datos; esto se logra
tomando ventaja de los sistemas operativos de alto rendimiento, así como
del hardware disponible controlando de esta manera los datos que están
siendo procesados.
Uno o todos los servidores pueden pertenecer a varias plataformas. Esto
requiere que el trabajo se realice en conjunto o con la cooperación entre
programas, esto se denomina procesamiento cooperativo.
La arquitectura Cliente/Servidor permite diseñar aplicaciones para mejorar
la variedad de ambientes. La interfaz de programación en Cliente/Servidor
provee los medios para que las aplicaciones se corran en computadoras
clientes separadas y conectarse con el servidor por la red, además, provee
otra de las plataformas a ser integrada en el sistema Vigilante.
3.3. SAP (SYSTEM APPLICATION PRODUCT) Según el estudio del manual de SAP- R/3(1996), el sistema SAP- R/3 se
refiere a un software basado en la tecnología Cliente/Servidor, diseñado para
cubrir las necesidades de información de una empresa. Entre ellas se tiene
la integración de procesos, datos y elementos organizativos integrados.
De igual manera, la integración de las aplicaciones, específicamente la
entrada de datos única y la coherencia entre todas las aplicaciones para el
usuario, la integración técnica, entre esta la modificación y actualización en
21
línea interactiva, la eliminación de datos redundantes y la integridad de los
datos.
El sistema SAP- R/3 sirve para todas las operaciones empresariales,
puesto que aporta soluciones completas y válidas para las funciones de los
controles operativos y estratégicos de la empresa. Además ofrece soluciones
para toda la empresa.
Otra ventaja prioritaria, es el procesamiento interactivo de la entrada de
diferentes usuarios y transmitiendo simultáneamente todo cambio a la base
de datos. Igualmente SAP – R/3 es un sistema abierto, el cual mediante la
utilización de POSIX y X/Open-Standards, mejora su portabilidad, asimismo
utiliza estándares industriales de sistema abierto como TCP/IP, OLE y Open
Interfaces.
El sistema SAP- R/3 está compuesto por módulos de aplicación, el cual
permite las operaciones empresariales. De acuerdo con esto, se mencionan
los diferentes módulos de aplicación:
- Gestión financiera (FI): Proporciona planes de cuenta definidos por el
usuario para la contabilidad principal automática, el reporting, la
contabilidad de deudores y acreedores y la gestión de distintas cuentas
de mayor.
- Gestión de activos fijos (AM): Sirve para la gestión y control de aspectos
individuales del patrimonio de activos fijos.
22
- Sistema de proyecto (PS): Sirve para apoyar la planificación, el control y
la supervisión de proyectos muy complejos que persiguen objetivos
concretos a largo plazo.
- Workflow (WF): Enlaza los módulos de aplicación R/3 integrados del
sistema SAP con técnicas herramientas y servicios válidos para todas las
aplicaciones.
- Solución Sectorial (IS): Conecta los módulos de aplicación R/3 del
sistema SAP con funciones suplementarias para ramos específicos.
- Gestión de personal (HR): Representa un sistema completamente
integrada para apoyar la planificación y controlar las actividades del
personal.
- Mantenimiento (PM): Apoya la planificación, el procesamiento y la
ejecución de tareas de mantenimiento.
- Gestión de calidad (QM): Es un sistema que sirve para el control de
calidad y la información y que apoya la planificación de la calidad, la
inspección de la calidad y el control de la fabricación y del
aprovisionamiento.
- Planificación de producción (PP): Se utiliza para planificar y controlar las
actividades de producción de una empresa.
- Gestión de materiales (MM): apoya las funciones de aprovisionamiento y
almacenamiento de existencias que necesitan para las operaciones
diarias.
23
- Ventas (SD): Le ayuda a optimizar las tareas y actividades que se
presentan al realizar las operaciones de venta, entrega o facturación.
La Corporación maneja los módulos de FI, AM, IS, WF, PM, MM Y SD con
el fin de incluir todos las facilidades de prácticas de negocio en un solo
sistema. SAP R/3, constituye el último ambiente a ser establecido en la
interfaz por medio de la permisología necesaria, pero, por no poseer un
esquema de seguridad establecido que pueda ser automatizado, quedara
excluido del trabajo de investigación.
3.4. SISTEMA OPERATIVO
De acuerdo con Dueñas(2000) el sistema operativo es aquel que permite
la utilización y el manejo de los recursos del computador. Estos nacieron de
la necesidad de crear un entorno de administración para las aplicaciones, el
manejo de memoria y la estructura de entrada/salida al nivel de la máquina.
El referido autor señala que, la historia de los sistemas operativos ha
evolucionado junto con la maquinaria que soporta. Por ello, a finales de los
años 40´s y a principios de los años 50's, todo la programación se hacía
directamente en lenguaje máquina, dado que la industria existente no
necesitaba sistemas operativos. Con la aparición del transistor a mediados
de los 50's las computadoras se hicieron más confiables. Se afirma que no
existían los Sistemas Operativos (S.O), tal como se conocen ahora. Para
24
acceder a la programación de la maquinaria se manejaban tarjetas
perforadas.
Luego, (1960) IBM introdujo la computadora System/360, e intentó tomar
el mercado científico y el comercial. Sin embargo, cuando surgieron
problemas en el proyecto de conflictos por la arquitectura, se inició el
desarrollo de un software que resolviera los mismos; el resultado fue un
sistema operativo complejo.
Luego AT&T trató de desarrollar a Multics, un sistema operativo que
soportara cientos de usuarios de tiempo compartido. Más adelante científicos
de la computación desarrollaron Unics, que sería monousuario. Ello marca el
nacimiento de UNIX (1969), el primero de los sistemas operativos modernos.
En años 80´s la arquitectura de las computadoras, circuitos LSI (Large
Scale Integration) abrieron el paso para una nueva generación de
computadoras. DOS de Microsoft aparece en 1981, dominando este mercado
de las computadoras personales inmediatamente. Pero aún predominaba el
sistema UNIX, en las estaciones de trabajo.
Con el aumento del uso de conexiones en redes, equipos de trabajo y
aplicaciones distribuidas, aparecen los sistemas operativos como UNIX,
Windows NT, entre otros. Estos soportarían muchos clientes, dando así el
nacimiento de la Computación en Red.
A un Sistema Operativo de Red se le conoce como Network Operating
Systems(NOS). Este es un software necesario para integrar los muchos
componentes de una red en un sistema particular, al cual el usuario final
25
puede tener acceso. Este rige y administra los recursos, archivos, periféricos
y/o usuarios, en una red y lleva el control de seguridad de los mismos.
Un NOS maneja los servicios necesarios para asegurar que el usuario
final tenga o esté libre de error al acceder a la red. Normalmente provee una
interfaz de usuario que permite reducir la complejidad y conflictos al
momento de usar la red. Dentro del contexto de NOS, se pueden escribir
varias aplicaciones, como por ejemplo un sistema de correo electrónico, que
sirve como una "conexión virtual" entre entidades de red, sin intervención
humana directa. En la figura 1 se señala la estructura típica de un sistema de
red.
FIGURA 1: ESTRUCTURA DE UN SISTEMA OPERATIVO DE RED
FUENTE: http://www.monografias.com
26
En general, se puede inferir para fines de la investigación que, los
Sistemas Operativos de Red presentan una jerarquía que permite a algunos
usuarios tener más derechos que otros.
Por tanto, a menudo, las tareas de mantenimiento y gestión de la red se
delegan en otros usuarios. Por encima de ese entorno, estará la estructura
de gestión de la empresa, que fijará la forma en que el supervisor ha de
organizar a los usuarios y el hardware de la red.
Un sistema operativo de red tiene el siguiente conjunto de características,
que además lo distinguen. Cada computadora tiene su sistema operativo
privado. Cada usuario normalmente trabaja en su propia computadora o en
una computadora designada; usando una computadora diferente
invariablemente requiere algún tipo de "login" remoto.
Los usuarios saben de la existencia de varias computadoras y pueden
conectarse con máquinas remotas y copiar archivos de una máquina a otra,
cada máquina ejecuta su propio sistema operativo local y tiene su propio
usuario o grupo de usuarios.
Los usuarios están normalmente conscientes de donde están
almacenados sus archivos y pueden mover los archivos entre las
computadoras con un comando explícito "File Transfer (Transferir Archivo)",
en vez de tener un archivo administrado por el sistema operativo.
Las redes pueden estar constituidas bajo el esquema Cliente/Servidor, o
bien por computadoras que no poseen diferencias de función. Los diferentes
tipos de Sistemas Operativos se muestran a continuación:
27
Sistemas Servidores de Archivos; las computadoras personales(PC)
pueden ser servidores o clientes. Los servidores controlan el acceso de los
clientes a su servicio, les proporcionan acceso a los archivos, manejan el
acceso de múltiples clientes, proporcionan servicio de impresión y
constituyen el foco de los recursos de la red.
Sistemas Punto A Punto; los sistemas punto a punto permiten que las
computadoras personales sean clientes o servidores al mismo tiempo,
además, permiten que sean sólo una de las dos. Estos sistemas ofrecen
controles de acceso similares a la de los servidores de archivos. Además son
menos costosos que los servidores de archivos, pero sus capacidades están
más restringidas, no sólo en rendimiento sino también en el número de
usuarios y seguridad.
Ahora bien, los sistemas operativos que utiliza la Corporación para la
plataforma Cliente/Servidor son Windows 2000 Server , Windows 2000
Professional y Windows NT.
Windows 2000 Server es el servidor de sistemas de red que permite la
creación de redes basadas en servidor, lo que aporta beneficios de
implantación, administración, control de la seguridad y de las
comunicaciones, auditoria de usuarios, gestión de información existente en la
red, conexiones remotas (VPN), y todo ello de una forma controlada.
Es un sistema operativo orientado a entornos empresariales que permiten
que su operativa de negocio se optimice en aspectos como tiempo de
28
realización de tareas, intercambio de datos y herramientas, cuentas de
usuario, y perfiles entre otros.
Windows 2000 Professional es el sistema operativo de Windows para PCs
de negocios y computadoras portátiles. Es usado para ejecutar aplicaciones
de software, conectarse a Internet e intranets y tener acceso a archivos,
impresoras y recursos de red, así como realizar una amplia variedad de otras
tareas.
FIGURA 2. VISIÓN GENERAL DE LA ARQUITECTURA DEL SISTEMA OPERATIVO MICROSOFT WINDOWS 2000. FUENTE: Microsoft Windows 2000 Server. Curso Oficial De Certificación MCSE(2001)
29
Como se ejemplifica en la figura 2, el sistema operativo Windows 2000 en
sus diferentes versiones, esta constituido por varias capas que cumplen un
función especifica permitiendo la integridad y el eficiente manejo de los
recursos de una estación de trabajo.
Windows NT es un sistema operativo diseñado para grandes compañías;
brinda servicios de protección por contraseñas Windows, actúa como su
ejecutivo personal, personal de archivo, mensajero, guardia de seguridad,
asistente administrativo y mantenimiento de tiempo completo.
Maneja la seguridad por medio del acceso por cuentas y contraseñas. Es
decir, un usuario debe tener su cuenta asignada y una contraseña para
poder tener acceso al sistema.
Contiene protecciones para directorios, archivos, y periféricos, es decir,
que todo esto se encuentra con una contraseña para poder ser utilizados. De
hecho, cada usuario de red tiene un directorio personal en el servidor.
Los permisos de propietario de este directorio personal incluyen la
posibilidad de crear nuevos directo rios y archivos, cambiarlos y borrarlos.
Estos permisos se almacenan en el Active Directory, el cual almacena
información de los objetos en la red y hace la información accesible a
usuarios y administradores de red.
En PROCEDATOS el sistema operativo utilizado para el ambiente
MainFrame, es VSE/ESA. Este ofrece soluciones integradas en ambientes
híbridos. Soporta plataformas como Linux, Windows 2000, Windows NT, AIX,
30
OS/390, z/OS, entre otras. Este posee soporte TCP/IP para CICS External
Call Interface(ECI).
Tiene la capacidad de tolerar diferentes tecnologías, tales como zSeries
900, FICON, 2074, VSAM, OSA Express, y muchas otras. Sumado a esto,
posee interoperabilidad y conectores basados en estándares abiertos.
Estos conectores facilitan el acceso a recursos VSE que provienen de otras
plataformas, por ejemplo Linux para S/390.
3.5. MANEJADORES DE BASE DE DATOS Según Senn (1999,p. 650) el Manejador de BD es “ un puente entre el
programa y la aplicación, determina que datos son necesarios y como se les
procesará”. En este sentido, el Manejador de Bases de Datos es un módulo
del programa que cumple la función de interfaz o administrador de los datos
entre las aplicaciones y las estructuras a bajo nivel.
Es responsable de mantener la relación entre la información y la BD,
además de asegurar que la información este almacenada correctamente y
que las reglas que definen la relación no sean alteradas.
Por otra parte, debe recuperar toda la información en caso de una caída
del sistema y que esta se mantenga (consistencia). El objetivo principal del
mismo, es proporcionar un entorno en el que pueda almacenarse y
recuperarse eficientemente la información de la BD.
31
La BD de la plataforma MainFrame de la Corporación es manejada por
ADABAS. Este manejador es ideal para una BD servidor para aplicaciones
administrativas de misión critica que requieren tiempos de respuesta en
segundos para miles de usuarios.
Se utiliza en ambientes MainFrame, Windows NT, UNIX y plataformas
Open VMS. De esta manera puede ser accedida desde Natural, Software AG
4GL, Bolero, entre otras, equipados con una llamada a la interfaz. También
se pueden acceder por una interfaz estándar como ODBC o JDBC.
FIGURA 3: ESTRUCTURA DE ADABAS FUENTE: http:// www.softawreag.com
En la figura 3, la interfaz es la entrada a ADABAS o, desde otro punto de
vista, el lugar donde las llamadas se reciben y se envían al núcleo del
32
mismo. Posee un tamaño no limitado para MainFrame; en plataformas de
Sistemas Abiertos teóricamente el límite es de 128 TB.
Las BD de la plataforma Cliente/Servidor que posee PROCEDATOS y
que están relacionadas con el trabajo investigativo son manejadas por SQL
Server. SQL Server permite almacenar datos en tablas mediante una BD
relacional; cada tabla representa algún objeto de la organización, y posee
columnas que representan los atributos del objeto modelado.
Las filas representan una ocurrencia del tipo de objeto modelado por la
tabla. Las aplicaciones pueden introducir declaraciones de SQL a la BD y
este le retorna los resultados de manera tabular.
El lenguaje especifico que soporta SQL es denominado Transact-SQL, el
cual es utilizado para enviar peticiones entre un cliente y SQL Server. SQL
Server utiliza arquitectura de Cliente/Servidor. Por otra parte, permite
manejar BD y asignar los recursos disponibles del servidor, como por
ejemplo memoria y operaciones en discos. Los componentes cliente y
servidor de SQL Server se ejecutan en los sistemas operativos mostrados en
la siguiente tabla.
33
TABLA 1. COMPONENTES SQL
Sistema Operativo Componente Servidor Componente Cliente
Microsoft Windows 95/98 Sí Si
Microsoft Windows NT Si Si
Workstation, versión 4.0 Si Si
Windows NT Server 4.0 Si Si
Windows NT Server,
Enterprise. Edition 4.0
Si Si
Windows 3x No Si
MS-DOS No Si
Internet Browsers No Si
Windows 2000 Si Si
Fuente: System Administration for Microsoft® SQL Server™ 7.0.
La utilidad que tiene SQL Server para la investigación es que en la misma
se encuentra la BD que utiliza el Sistema Vigilante.
Para el sistema de SAP R/3, el manejador de BD utilizado es Oracle. De
acuerdo con el autor Loney(1994), Oracle es un sistema manejador de bases
de datos de propósito general y multiusuario, basado en un modelo
relacional, que puede trabajar con distintos sistemas operativos. Soporta una
34
serie de utilidades, definiciones de datos de SQL y lenguajes de
manipulación de datos, permitiendo la creación, consulta, y mantenimiento
de la base de datos ORACLE.
Posee un driver ODBC, que tiene compatibilidad con las siguientes
aplicaciones: Windows 95, Windows 98 y Windows NT. Los drivers ODBC de
ORACLE son librerías de enlace dinámico que permiten que una aplicación
solicite acceso a la base de datos ORACLE.
3.6. HERRAMIENTAS DE DESARROLLO Para Senn(1999,p.47), una herramienta es “cualquier dispositivo que
mejora el desempeño de una tarea cuando es empleada correctamente”. De
acuerdo con este criterio las herramientas ayudan al analista a trasladar
diseños en aplicaciones funcionales tal como se expresa a continuación:
• Herramientas para Ingeniería de Software: Consiste en formular
diseños de software, incluye procedimientos y documentación.
• Generadores de Código: se genera el código fuente para las
aplicaciones.
• Herramientas para pruebas: examina la operación del sistema en
comparación con las expectativas.
El mencionado autor especifica en relación a lo explicado que existe una
infinidad de herramientas utilizadas en el mercado para todas los ambientes
35
o plataformas existentes. El ambiente MainFrame de la Corporación utiliza
NATURAL como herramienta de aplicación. NATURAL es un lenguaje de
cuarta generación (4GL) que pertenece a un ambiente de desarrollo cliente.
Provee transparencia de las aplicaciones utilizadas a través de BD,
protocolos de redes y hardware. Puede ser utilizado por Hewlett Packard,
Sun, AT&T/NCR y otras estaciones de trabajo IBM o PC´s; compatibles con
IBM(MainFrame, RS6000, AS/400) o SNI o Digital VAX.
Los sistemas operativos con los que puede trabajar son Windows 3.1,
Windows 95, Windows NT, SINIX, Solaris, MVS/ESA, VSE/ESA, OS/400,
entre otros.
Esta es de suma importancia dado que es un lenguaje de programación
que sirve para crear los subprogramas que junto con otras herramientas va a
permitir hacer llamadas desde C++BUILDER5 para realizar la
automatización.
Por otro lado, C++BUILDER5 es un lenguaje de programación de gran
utilidad para el trabajo investigativo, puesto que, nos proporciona la
herramienta que permitirá el desarrollo de la aplicación. Es un ambiente de
programación visual, orientado a objeto para el desarrollo de una aplicación
de Windows de 32-bit. Con C++BUILDER5 se pueden crear aplicaciones de
Windows con un código estructurado.
Este lenguaje posee una librería de clases denominada Visual
Component Library(VCL) y herramientas de diseño llamada Rapid Application
Development(RAD). El ambiente de C++BUILDER5 soporta sólo
36
programación orientada a objeto, el cual encapsula Windows API, así como
otras técnicas de programación.
Como el sistema Vigilante fue realizado en una versión anterior de este
lenguaje de programación, es de gran utilidad para el trabajo de
investigación debido a que el mismo es una continuación o una nueva
versión del sistema Vigilante, y se debe mantener el mismo estándar de
programación. También va permitir invocar los archivos .DLL que son
importantes a la hora de realizar la automatización y se explicaran mas
adelante.
Ambas herramientas mantienen el criterio de generadores de código,
puesto que, permiten crear el código fuente necesario para producir el
enlace entre los ambientes a automatizar mediante la programación.
3.7. MIDDLEWARE
Es un módulo intermedio que actúa como conductor entre sistemas
permitiendo a cualquier usuario de sistemas de información comunicarse con
varias fuentes de información que se encuentran conectadas por una red.
Para Rodríguez(entrevista personal, 2001) es un producto
complementario de los Software o plataformas para conectarse entre sí. Es
un software de conectividad que consiste en habilitar servicios que permiten
procesos múltiples, para correr en una o más máquinas, que actúan
37
recíprocamente por una red. Esta tecnología ha evolucionado durante los
años para mantener la interoperatividad en apoyo al movimiento hacia
arquitecturas Cliente/Servidor.
Los servicios del middleware son series de software distribuido que existe
entre la aplicación y el sistema operativo, además de servicios de la red en
un nodo del sistema en la red. Los servicios de Middleware permiten que
una aplicación:
• Sea localizada por la red de manera transparente y proporcione
interacción con una aplicación o servicio.
• Sea independiente de los servicios de la red.
• Sea fiable y que esté disponible.
• Aumente su nivel de capacidad sin disminuir su funcionamiento.
Middleware puede tomar las siguientes formas en funcion a las
características que posee:
• Transaction Processing(TP) monitors, proporciona herramientas y un
ambiente para desarrollar y desplegar aplicaciones distribuidas.
• Remote Procedure Call(RPCs), permiten que la lógica de una
aplicación sea distribuida por la red. La lógica de programas en
sistemas remotos puede ejecutarse con una llamada a una rutina
local.
• Message Oriented Middleware(MOM), acepta el intercambio de datos
entre programas, permitiendo creación de aplicaciones distribuidas.
38
• Object Request Brokers(ORBs), habilita los objetos que comprenden
una aplicación para que sean distribuidos y compartidos por las redes
heterogéneas.
Otras herramientas pertinentes al trabajo de investigación como EntireX,
Entire Broker y Entire NetWork son productos de la Compañía Software AG
de Alemania (SAGA), y son utilizados por la Empresa PROCEDATOS S,A.,
por acuerdos con la Compañía SAGA.
EntireX es una solución middleware y una herramienta orientada a objeto
ofreciendo una completa integración de las aplicaciones cliente con sistemas
de producción de misión critica dándole la habilidad de “plug and play” a los
componentes de aplicaciones que corren en cualquier plataforma. Además,
permite interfaces flexibles con un mediador de mensajes seguro para
afianzar la transparencia y la integración de arquitecturas IT(Information
Technology o Tecnología de Información) en un nivel de comunicación.
Trabaja sobre TCP/IP. Para fines del proyecto investigativo, EntireX fue
utilizada para la generación del objeto mediante EntireX DCOM Wrapper.
Entire Broker controla la comunicación entre los componentes de
aplicaciones distribuidas sin su arquitectura IT. Esta función básica puede ser
enlazada a un panel de control con el fin de aceptar mensajes de los
componentes clientes y devolverle el mensaje al componente servidor
revelando cualquier contestación atrás al cliente. El Broker apoya muchos
tipos de modelos de comunicación (síncrono y asíncrono, Cliente/Servidor,
par-a-par y orientado a mensaje). Necesita montarse sobre Entire Network
39
para trabajar. Entire Broker permite hacer la llamada a procedimientos
remotos(Objetos Natural).
Entire Network esta lógicamente localizado entre el Software de aplicación
y servicios, las pilas de comunicación de bajo nivel y el Hardware de red.
Entire Network es el middleware que provee un servicio de comunicación
común para las aplicaciones de BD, herramientas de consulta, aplicaciones
de proceso Corporativo, herramientas de desarrollo de aplicaciones y otros
Software.
FIGURA 4. EL CONCEPTO MIDDLEWARE. FUENTE: ENTIREX SOFTWARE & DOCUMENTATION(2000)
Este producto puede ser implementado en una variedad de plataformas y
múltiples tareas de la capa de aplicación pueden ser soportadas al mismo
tiempo, además, puede ser utilizada en cualquier topología de red; En
40
configuraciones donde el cliente y el servidor no están conectados
directamente, los mensajes son relevados por maquinas que cambian los
protocolos automáticamente de la capa de transporte de ser necesario.
En sí, Entire Network permite que clientes y servidores se comuniquen
efectivamente con protocolos incompatibles. Por otro lado, se pueden
ahorrar costos sustanciales integrando las redes dispersas existentes en
sistemas de comunicación globales coherentes lógicamente con Entire
Network.
El resultado de utilizar la tecnología de middleware en el desarrollo de
sistemas es completamente dependiente de los sistemas operativos
requeridos y los tipos de plataformas. Este software es esencial para la
investigación, puesto que permite emigrar aplicaciones del MainFrame a las
aplicaciones del Cliente/Servidor y mantener comunicación en las
plataformas heterogéneas. Es decir, hace las llamadas a objetos Natural y
ejecuta comandos Natural hacia las BD.
3.8. DISTRIBUTED COMPONENT OBJECT MODEL (DCOM)
De acuerdo con Orfali(1996), el Modelo de Objeto Componente
Distribuido (DCOM), es un juego de conceptos e interfaces de programa de
Microsoft en conjunto con otras empresas tales como Software AG entre
41
otros, en el cual los objetos de programa del cliente pueden solicitar servicios
de objetos de programa servidores en otros ordenadores dentro de una red.
Según la información aportada por los manuales de Software AG, DCOM
es una extensión de Component Object Model (COM), que permite la
interacción de componentes en una red. Mientras que los procesos COM
pueden funcionar en la misma máquina aunque en diferentes espacios de
direcciones, con DCOM estos procesos pueden estar dispersos en diferentes
lugares de una red. Es posible la interacción de componentes disponibles en
diferentes plataformas, siempre que exista para esos entornos.
DCOM admite objetos distribuidos, es decir, permite que los
desarrolladores de aplicaciones dividan una única aplicación en un número
variable de objetos de componentes, cada uno de los cuales se ejecutará en
una computadora diferente. El mismo funciona interceptando las llamadas de
una interfaz a un objeto y realizando después una llamada al procedimiento
remoto (RPC) del verdadero ejemplar del objeto que se está ejecutando en
otro proceso en otra máquina.
Los dos puntos clave son que el cliente realiza esta llamada exactamente
cuando desea un objeto en proceso y que DCOM realiza la llamada a función
entre procesos o a través de la red, de forma transparente. Es importante
fijarse en que aunque, hay una mayor sobrecarga del gran tratamiento en la
realización de la llamada al procedimiento remoto, no es necesario ningún
código especial. Debido a que DCOM proporciona transparencia en la red,
42
estas aplicaciones no parecen que estén situadas en máquinas diferentes.
En los sistemas apropiadamente implementados, la red por completo puede
parecer que es una gran computadora con enorme potencia y capacidad de
procesamiento.
DCOM es el componente mas usado. Provee modos de integrar funciones
de las aplicaciones Windows, así como Microsoft Office o Internet Explorer
en aplicaciones personalizadas. Esta contiene todos los códigos de
programas y las estructuras de datos que hacen el componente o objeto. El
código del programa de las clases de DCOM está organizado en
métodos(funciones). Es decir, para fines de la investigación, permite
encapsular estructuras donde los métodos pueden ser llamados por los
programas clientes(pueden cambiar el estado de un componente y retornar
los resultados al cliente). Como señala Software AG, los siguientes sistemas
utilizan DCOM como base común, permitiendo que sus componentes
interactúen:
• EntireX, Componentware for Enterprise Application Integration.
EntireX permite la existencia de funcionalidad contenido en
aplicaciones 3GL o 4GL para ser envuelto como componentes sin
modificar esas aplicaciones.
• Bolero, Application Factory for Electronic Business. Bolero es una
integración basada en la plataforma de desarrollo Java que tiene
43
su propio lenguaje de programación administrativa completamente
orientada a objetos.
• NaturalX permite a los programadores escribir y usar componentes
en Natural. Basado en aplicaciones de componentes puede ser
desarrollado con uno de los más productivos ambientes de
programación.
3.9. REDES En cuanto a las redes, Márquez(2001) opina que se refieren a las
computadoras interconectadas con el objetivo general de compartir recursos,
y hacer que todos los programas, datos y equipos estén disponibles para
cualquiera de la red que lo solicite, sin importar la localización física del
recurso y del usuario. Un segundo objetivo consiste en proporcionar alta
fiabilidad al contar con fuentes alternativas de suministro. Por ejemplo, todos
los archivos pueden duplicarse en varias maquinas, de tal manera que si
una de ellas falla (por causas del hardware), puede utilizarse alguna de las
copias.
Refiere Márquez(2001) como la más simple de las redes, la que conecta
dos computadoras, permitiendo compartir archivos e impresos. Una red
mucho más compleja conecta todas las computadoras de una empresa o
compañía en el mundo. Para compartir impresoras sólo es necesario con un
44
conmutador, pero si se desea compartir eficientemente archivos y ejecutar
aplicaciones de red, hace falta tarjetas de interfaz de red (NIC, NetWare
Interfaz Cards) y cables para conectar los sistemas. Aunque se pueden
utilizar diversos sistemas de interconexión mediante los puertos series y
paralelos, estos sistemas no ofrecen la velocidad e integridad que necesita
un sistema operativo de red seguro y con altas prestaciones que permita
manejar muchos usuarios y recursos. En la siguiente figura, se muestra los
componentes de un sistema de red:
FIGURA 5: COMPONENTES TÍPICOS DE UN SISTEMA EN RED
FUENTE: http://www.monografias.com
3.9.1. TOPOLOGÍA
En el trabajo de Márquez(2001) se define como la forma en la que se
conectan electrónicamente los puntos de dicha red. Muestra como se
organiza el cable en las estaciones de trabajo.
45
Los tipos de redes más utilizadas son la de anillo, árbol, bus y estrella. La
red tipo anillo físicamente se refiere a un nodo que se conecta a dos nodos
adyacentes hasta formar un anillo y posee dos trayectorias para la
transmisión de datos, los datos viajan por el anillo de estación en estación,
de manera que la información pasa por todas las estaciones hasta llegar a la
estación de destino.
FIGURA 6: TOPOLOGÍA DE ANILLO. FUENTE: (Márquez, 2001)
Ventajas
ü La capacidad de transmisión se reparte equitativamente
ü La red no depende de un nodo central
ü Se simplifica al máximo la transmisión de mensajes
ü Es sencillo enviar un mismo mensaje a todas las estaciones
ü El tiempo de acceso es aceptable, incluso con mucho tráfico
ü El índice de errores es muy pequeño.
ü Se pueden alcanzar velocidades de transmisión elevadas.
46
En la red de bus los nodos se conectan a un medio de transmisión
común mediante un adaptador de interfaz y los terminales escuchan todos
los mensajes pero solo reconocen los que van dirigidos al nodo al que
pertenecen; debido a que todas las computadoras conectadas al cable
pueden detectar señales eléctricas cualquiera de ellas puede trans mitir datos
a otra.
Es decir, todas las estaciones (nodos) comparten un mismo canal de
transmisión mediante un cable (frecuentemente coaxial). Las estaciones
usan este canal para comunicarse con el resto.
FIGURA 7: TOPOLOGÍA DE BUS. FUENTE: (Márquez, 2001)
Ventajas
ü El medio de transmisión es totalmente pasivo
ü Es sencillo conectar nuevos dispositivos
ü Se puede utilizar toda la capacidad de transmisión disponible
ü Es fácil de instalar
47
La topología de árbol combina características de la topología de estrella
con la de bus. Consiste en un conjunto de subredes estrella conectadas a un
bus. Esta topología facilita el crecimiento de la red.
FIGURA 8: TOPOLOGÍA DE ÁRBOL. FUENTE: (Márquez, 2001)
Ventajas
ü Cableado punto a punto para segmentos individuales.
ü Soportado por multitud de vendedores de software y de hardware.
La topología de red estrella es la utilizada por la Corporación y consiste
en computadoras conectadas a un servidor, típicamente por medio de
varios canales de comunicación (cables), donde cada cable comunica
individualmente a las computadoras de la red.
Según Senn(1999, p.702) en una topología estrella “cada estación de
trabajo, terminal o computadora puede comunicarse sólo con la estación
central y no con los demás nodos de la red. La transferencia de la
información de un nodo a otro sólo es posible enviando los detalles al nodo
central”.
Normalmente, ésta es la situación de los sistemas centralizados tales
como las minicomputadoras, MainFrames y supercomputadoras. En si, en la
48
red se encuentran todos los terminales conectados a un equipo central, las
comunicaciones se realizan a través del equipo central. Se utiliza con
cableado 10-BaseT y un concentrador o "HUB", este tipo de cable se
denomina comúnmente UTP ó par trenzado, donde cada elemento está
conectado al Hub como los picos de una estrella.
FIGURA 9: TOPOLOGÍA EN ESTRELLA. FUENTE: (Márquez, 2001)
Todas las estaciones están conectadas por separado a un nodo central, no
estando conectadas directamente entre sí.
Ventajas
ü Es ideal si hay que conectar muchas estaciones a una
ü Se pueden conectar terminales no inteligentes
ü Las estaciones pueden tener velocidades de transmisión diferentes
ü Permite utilizar distintos medios de transmisión
ü Se puede obtener un elevado nivel de seguridad
49
ü Es fácil la detección de fallas
3.9.2. ENLACES
La Corporación posee una Red Corporativa propia donde el medio de
transmisión del enlace de datos (dentro de la red) son las fibras ópticas. En
general, una fibra de vidrio o plástico se introduce a lo largo de un cilindro y
los pulsos de reloj transportan los datos. De acuerdo con Senn(1992), la
combinación de los rayos láser y las fibras de vidrio con pocas impurezas
soportan la transmisión de los datos a grandes distancias. Las velocidades
de transmisión pueden llegar a varios millones de bits por segundo.
Los cables de fibra son inmunes al ruido y a la interferencia eléctrica. Una
ventaja del uso de la fibra óptica es que no emite radiaciones
electromagnéticas por lo que es apropiada para aplicaciones que exigen un
alto nivel de seguridad. Por razones de seguridad y confidencialidad de la
Corporación la información referente a la velocidad, ancho de banda y otras
características no puede ser suministrada.
3.9.3. TIPOS DE EMULACIÓN La plataforma MainFrame utiliza Mocha W32 TN3270 la cual, es una
aplicación escrita para Windows-95/NT. Hace posible conectar un host vía
TCP/IP con el protocolo TN 3270 y emular una estación de trabajo.
50
3.9.4. PROTOCOLOS Se refiere a las reglas que permiten a los distintos dispositivos existentes
comunicarse entre sí, de manera de que cada uno pueda enviar y recibir
señales comprendidas tanto por el origen como por el destino. Según
Tanenbaum (1991, p.30) un protocolo es “un conjunto de reglas que
gobiernan el formato y el significado de las tramas, paquetes o mensajes que
son intercambiados por las entidades corresponsales dentro de una capa".
Existe una variedad de protocolos de transporte como NetBEUI, TCP/IP,
IPX/SPX, Banyan, DECnet o Apple Talk. Una de las mas utilizadas es la
familia de protocolos TCP/IP de Internet también denominado modelo de
capas de Internet o modelo de referencia de Internet, consta de cuatro
capas:
• Capa 1. Red: se ocupa de todos los aspectos que requiere un
paquete IP para realizar el enlace físico y luego otro enlace físico.
• Capa 2. Internet: indica el formato de los paquetes enviados por la
Internet, así como el mecanismo para reenviar paquetes del
transmisor hacia el destino final.
• Capa 3. Transporte: especifica la manera de asegurar una
transferencia confiable.
• Capa 4. Aplicación: Maneja los protocolos de alto nivel, aspectos
de representación, codificación y control de dialogo.
51
4. INTEGRACIÓN Se refiere a la combinación de diferentes herramientas y elementos de
información de manera que permite el cierre de la comunicación entre las
herramientas, personas y todos los componentes implicados. Para la
presente investigación es necesaria la integración para establecer un mismo
formato al momento de realizar la presentación de los datos para o desde los
diversos ambientes.
5. MANEJO DE SEGURIDAD EN LOS SISTEMAS Y PLATAFORMAS Para Chirinos(2000), las instalaciones de computación, los datos
almacenados y la información generada son recursos fundamentales de una
organización, por esto es importante la necesidad de la seguridad. Los
sistemas no son totalmente seguros, todo va a depender de como los
analistas y usuarios disminuyan la vulnerabilidad del sistema. Mientras
existan más personas con poder de cómputo, la seguridad es más compleja.
Un aspecto fundamental para la seguridad de los sistemas es la
identificación y la autenticación, dado que, previene el acceso de personas o
procesos no autorizados a los sistemas.
Cuando se decide permitir a alguien el uso de un recurso del sistema, se
examina si el usuario está autorizado para el tipo de acceso que este solicita.
52
Como señala Chirinos(2000),“El acceso a la información puede ser
controlado por la asignación de una tarea o función al usuario que necesita el
acceso, esta es la definición de rol que es una de las técnicas mas utilizadas
para permitir el acceso a los sistemas.”
Los derechos de acceso son agrupados por el nombre del rol, y el uso de
recursos es restringido a usuarios autorizados para asumir un rol asociado.
El cambio de roles puede requerir salir del sistema para luego entrar
nuevamente en él. El uso de roles puede ser la manera más efectiva de
proveer control de acceso. El proceso de definición de roles debe estar
basado en un análisis de cómo la organización opera y las funciones de
todos los usuarios de la empresa.
Dentro de PROCEDATOS, algunas de las aplicaciones y plataformas que
aplican el resguardo de la seguridad son:
5.1. SISTEMA VIGILANTE Es un sistema automatizado que tiene como objetivo el control de
matrices de seguridad y el manejo de requerimientos de administración de
implantación de seguridad de las aplicaciones de PROCEDATOS. Las
matrices de seguridad son un esquema aplicado a los sistemas que están
bajo la plataforma MainFrame y Cliente/Servidor(Chirinos, 2000).
Este sistema permite al usuario el manejo de las matrices de seguridad
directamente, esto significa que un grupo o rol tiene acceso a uno o más
53
procedimientos; además del mantenimiento (incluir, eliminar) de los roles y el
de los procedimientos. Toda esta información es almacenada en la BD
perteneciente al sistema Vigilante, lo que permite que la información
contenida en las matrices puedan ser consultadas por los administradores.
Igualmente, permite al usuario el mantenimiento de los procedimientos; es
decir, incluir, eliminar o modificar procedimientos del sistema y programas de
los procedimientos, además, el envío y recepción de requerimientos
cumpliendo con el flujo (workflow) establecido. Estos requerimientos son
almacenados en la BD de Vigilante pero no actualiza los datos en las demás
BD relacionadas, como es el caso de MainFrame, y el Active Directory que
maneja Windows 2000.
El sistema tiene aplicado su propio esquema de seguridad, es decir, la
creación de roles para manejar el sistema y definir que roles pueden
acceder a un procedimiento o función en específico.
El lenguaje de programación utilizado para realización del sistema, fue
C++ Builder4, debido a que logra crear la aplicación con una interfaz
amigable con el usuario (Interfaz Gráfica de Usuario o GUI), además que
proporciona una conexión rápida y segura hacia BD remotas.
El gestor de BD empleado fue SQL Server 7. La conexión hacia SQL
Server (ODBC) aplica como método de autenticación el usuario de NT que
este intentando conectarse a la BD.
54
5.2. MAINFRAME La seguridad de la plataforma MainFrame es manejada en la Corporación
mediante Natural Security y CICS Control File. Con Natural Security, todos
los datos de perfiles de seguridad de la Corporación pueden ser
almacenados y administrados en un sistema de archivo MainFrame, lo cual
es accesible a un ambiente heterogéneo, de esta manera simplificando y
estandarizando el mantenimiento de seguridad a nivel de compañías.
Natural Security es un sistema utilizado para el control y chequeo de
acceso en ambiente Natural, de manera que pueda permitir proteger dicho
ambiente de cualquier uso incorrecto y de accesos no autorizados. La
herramienta permite definir quien esta autorizado y quien no, así como
restringir el uso de librerías completas y utilidades de Natural, programas
individuales y funciones. Se pueden definir las condiciones y las horas de
uso generando un ambiente Natural para cada usuario en particular. Esto se
logra mediante la definición de objetos y las relaciones de estos.
Los objetos son definidos por Natural Security, por medio de la creación
de un perfil de seguridad para cada objeto. Existen tres tipos de objetos que
pueden ser definidos con Natural Security:
• USUARIOS: Los usuarios pueden ser personas terminales, o grupos de
personas, o terminales que utilizan Natural bajo Natural Security. Cada
usuario posee su propio rol de seguridad. Cuando el usuario es definido
55
se debe hacer una clasificación del tipo de usuario. Esta clasificación
predetermina como los usuarios accederán a las librerías.
Los usuarios pueden ser definidos como uno de los siguientes tipos:
- Miembro (MEMBER)
- Persona (PERSON)
- Administrador (ADMINISTRATOR)
Los tipos de usuarios anteriormente mencionados se pueden unir en
grupo (GROUP) definidos como un tipo de usuario. Los Terminales pueden
ser definidos como tipos de usuarios denominados terminales (TERMINAL).
Adicionalmente, el tipo de usuario BATCH se utiliza para modo en lotes.
• LIBRERIAS: Las librerías NATURAL contienen una serie de programas
fuentes y/o módulos de objetos que realizan una función en particular.
Las librerías se pueden definir como protegidas y desprotegidas.
- Librerías desprotegidas: estas pueden ser utilizadas por usuario sin tener
que definir una relación en especial. Los tipos de usuarios que pueden
utilizar las librerías directamente son el ADMINISTRATOR o PERSON.
MEMBERS y TERMINALS pueden usar las librerías si pertenecen a un
GROUP.
- Librerías protegidas: estas solo pueden ser utilizadas por usuarios que
tienen una relación especial con las librerías.
• UTILIDADES: Con NATURAL SECURITY, se puede controlar el uso de
varias utilidades de NATURAL. Esta utilidad protectora es orientada
56
funcionalmente, que significa que se puede permitir o no las funciones de
utilidad individualmente. Se puede controlar el uso de una utilidad
definiendo el perfil de utilidad. Varios tipos de perfiles de utilidad
jerárquicos permite que se defina exactamente quien puede realizar una
función especifica.
Por otro lado, CICS(Customer Information Control System) es el software
de procesamiento de transacciones en línea de propósito general de IBM.
Es un poderoso servidor de la aplicación que corre en un rango de sistemas
que van operativos desde las computadoras personales hasta los
MainFrames. Es bastante flexible para manejar las necesidades de
transacciones o procesos, además de, cuidar de la seguridad y integridad de
los datos haciendo uso eficaz de los recursos. Las transacciones típicas de
procesamiento de aplicaciones incluyen:
• Detalles de los sistemas de distribución
• Petición de entrada y procesamiento de sistemas
• Sistemas generales
• Sistemas de nómina
• Máquinas del cajero automático
• Sistemas de reservación de aerolínea
• Sistemas de mando de proceso, entre otros.
57
Las organizaciones de datos indexadas o secuenciales ofrecen
formularios limitados de una BD, sin la información organizada en archivos
individuales como con CICS. Esto es procesado mediante la interfaz de
CICS file control con el correspondiente método de acceso dependiente del
sistema operativo. El principal método de acceso utilizado es el Virtual
Storage Access Method(VSAM).
Entre otras cosas, el control file provee accesos de comando por niveles
para verificar medios existentes, así como bloqueo de manejo de direcciones
y tratos con dependencias de métodos de acceso. De esta manera le otorga
al programador de la aplicación un grado de métodos de acceso
independientes. CICS es una capa de middleware que escuda las
aplicaciones de la necesidad de tomar en cuenta exactamente qué
terminales e impresoras están siendo usadas.
5.3. CLIENTE /SERVIDOR Hace algunos años, National Security Agency (NSA) aseguró los niveles
de seguridad C2 para Windows NT Server y Workstation versión 3.5. C2 se
refiere a un conjunto de políticas de seguridad que indican como funciona la
seguridad de un sistema. Esta tiene una política de seguridad llamada
Control de Acceso Discrecional (DAC). Los usuarios controlan las
protecciones y el acceso de los objetos que poseen. Los requisitos
importantes en C2 son:
58
• Cada usuario debe ser identificado y autentificado utilizando un nombre
de usuario y contraseña único. Cualquier actividad realizada por el
usuario va a ser trazada por esta identificación.
• El acceso a los recursos debe ser controlado por un propietario.
• Los objetos utilizados deben estar protegidos para no ser usados
aleatoriamente por otros procesos.
• Se deben realizar auditorias por usuarios autorizados a todos los sucesos
relacionados con la seguridad.
• El sistema debe protegerse de interferencias y falsificaciones externas.
5.4. SAP (SYSTEM APPLICATION PRODUCT)
Conforme al manual de SAP- R/3, el mismo garantiza la integración e
independencia de las plataformas de todos los módulos de aplicación,
además, SAP- R/3 es un sistema de software estándar modular que soporta
todas las operaciones de la empresa como la arquitectura Cliente/Servidor,
arquitectura de aplicación o comunicación del sistema.
Partiendo de los supuestos anteriores, se puede decir que la arquitectura
SAP- R/3 está basada en principio Cliente/Servidor de tres niveles, entre las
cuales se incluyen presentación, aplicación y base de datos. Para que se
lleven a cabo dichas tareas se interconectan varios servidores mediante
redes de comunicación.
59
Asimismo, la arquitectura de aplicación en un sistema SAP- R/3 permite a
las diferentes plataformas de hardware y sistema utilizar aplicaciones,
adoptándose así a las necesidades del usuario. Por último, se puede
considerar que el sistema SAP-R/3 ofrece integración de software y
tecnología disponiendo de herramientas de comunicación que evitan
reinversión y logran prescindir de un rediseño completo.
SAP ofrece servicios y una serie de mecanismos de seguridad, que
permite la integridad, protección y confiabilidad de los datos. Por otra parte,
asegura la autenticación, autorización y la seguridad en el intercambio de
información. La tecnología SAP garantiza una variedad de mecanismos de
autenticación, el cual logra que los usuarios puedan acceder a las
aplicaciones que les corresponde. Además, existe un mecanismo de
autorización, el cual permite que los usuarios tengan acceso basado en sus
roles específicos a información, aplicaciones, y servicios automáticos. La
integridad de los datos y la privacidad del usuario son requisitos para
mantener la seguridad. Actualmente, este modelo o esquema está siendo
modificado.
6. SISTEMAS ORIENTADOS A OBJETOS Según Joyanes(1996) el desarrollo de programas orientados a objetos “es
un enfoque diferente del mundo informático. Implica creación de modelos del
mundo real y la construcción de programas informáticos basados en esos
60
modelos”. Los conceptos de análisis y diseño orientados a objetos (O-O) se
originaron desde el desarrollo de los nuevos lenguajes de programación.
Estos lenguajes O-O tiene n nuevas estructura que mejoran el mantenimiento
del programa y muchas partes de los programas son reutilizables. El
reciclado de partes de programa reduce el costo del desarrollo de los
sistemas.
El proceso completo de programación comienza con la construcción de un
modelo del suceso real. El resultado final del proceso es un programa de
computadora que contiene características que representan algunos de los
objetos del mundo real que son parte del suceso.
El principio básico de la O-O es que un sistema de software es visto como
una secuencia de transformaciones en un conjunto de objetos. La palabra
objeto tiene el mismo significado que un nombre o una frase nominal, por
ejemplo una persona, lugar, o cosa. La mayoría de los objetos tienen
atributos, que son las características que lo describen. El comportamiento es
el conjunto de cosas que puede hacer el objeto. (Joyanes,1996). Los
principios en que se apoyan la O-O son:
1. Objetos: Se define como una entidad caracterizada por un estado.
2. Métodos: Es el procedimiento o función que se invoca para actuar
sobre un objeto.
3. Mensajes: Es la acción que hace un objeto.
Las características que definen a un objeto son:
61
1. Encapsulamiento: Proceso de combinar datos y los métodos que
manejan esos datos en un único objeto.
2. Modularidad: Es la propiedad que permite subdividir una aplicación en
partes más pequeñas, llamadas módulos, cada una de las cuales
debe ser tan independiente como sea posible de la aplicación en sí y
de las partes restantes.
3. Abstracción: Es la propiedad que permite representar las
características esenciales de un objeto.
4. Polimorfismo: Es la propiedad que permite referirse a objetos de
clases diferentes mediante el mismo elemento de programa y realizar
la misma operación de diferentes formas.
Las clases se organizan para modelar el mundo real en las siguientes
relaciones:
1. Herencia: Es la propiedad que permite a los objetos ser construidos a
partir de otros objetos.
2. Agregación: Es una relación que representa a los objetos compuestos.
3. Asociación: Representa una dependencia semántica entre clases e
implica la dirección de esta dependencia.
4. Uso: Esto significa que un objeto utiliza otro objeto para realizar una
tarea.
62
6.1. ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS Con un conjunto de especificaciones se describe un problema de
programación. Las especificaciones son parte de lo que se denomina análisis
orientado a objetos (AOO). Durante esta etapa se piensa en las
especificaciones con independencia del lenguaje y de la máquina. También
se deducen los objetos y los atributos de estos definiendo su
comportamiento e interacciones.
La siguiente etapa del proceso de desarrollo es el diseño orientado a
objetos (DOO). En esta etapa se crea un modelo de computadora basado en
el análisis que realice la tarea específica concreta. Además se piensa en
como representar los objetos del mundo real en el mundo informático. Se
describen los objetos, lo que hacen y sus interacciones. En esta fase se
determinan atributos y objetos que no estaban definidos con claridad en la
etapa anterior.
La metodología de análisis y diseño orientado a objetos permite separar
las funciones de la empresa y las aplicaciones; en clases de objetos
reutilizables. Esto origina:
• Reducción importante del tiempo de desarrollo de aplicaciones.
• Simplificación de las tareas de mantenimiento.
• Aumento de la fiabilidad.
63
6.2. PROGRAMACIÓN ORIENTADA A OBJETOS Es una extensión natural de actual tecnología de programación. El diseño
de un programa orientado a objetos tiene lugar durante la fase de diseño del
ciclo de vida de desarrollo de un software.
Afirma Booch(1994, p.38) que la POO:
“Es un método de implementación en el que los programas se organizan
como colecciones cooperativas de objetos, cada uno de los cuales
representan una instancia de alguna clase, y cuyas clases son todos
miembros de una jerarquía de clases unidas mediante relaciones de
herencia”.
Es un importante conjunto de técnicas que pueden utilizarse para hacer
el desarrollo de programas más eficientes, al mismo tiempo que mejora la
fiabilidad de los programas de computadora. En la POO los objetos son los
elementos principales de la construcción, o bien el uso de los objetos, es
decir, como se interconectan y se comunican entre sí.
Los objetos proporcionan las funciones deseadas enlazando dos
conceptos separados en la programación tradicional: los programas y los
datos. En la metodología orientada a objetos, las estructuras de datos están
acopladas con el código. Esto permite mejorar el sistema sin que el usuario
final se vea afectado. La orientación a objetos también mejora la
productividad de los programadores, al existir objetos claramente definidos
64
que son reutilizables. Esto permite realizar aplicaciones y mejoras de forma
sencilla, con lo que se mejora la potencia del entorno.
El proyecto de investigación esta basado en una metodología orientado a
objeto, puesto que, por un lado, utiliza lenguajes de programación orientados
a objeto, y por el otro, el código programable utilizado es rehusable
existiendo una reingeniería del mismo.
C. SISTEMA DE VARIABLES Las variables objeto de estudio, son:
• Interfaz de Integración.
• Automatización.
INTERFAZ
Conceptualmente es el punto (o puntos), donde se efectúa la comunicación
entre dos sistemas, y método según el cual se realiza. (http://www.map.es)
INTEGRACIÓN
Conceptualmente se refiere a la unión de los elementos técnicos de
programación para implementar sistemas de tecnología avanzada,
contribuyendo así al mejoramiento informático de las organizaciones para las
que se desarrollan los sistemas. (http://www.sistemas.dgsca.unam.mx)
65
Operacionalmente, una interfaz de integración permite la interconexión de
las aplicaciones de dos ambientes incompatibles permitiendo el control de las
mismas mediante el manejo y la administración de datos.
AUTOMATIZACIÓN Conceptualmente es, "Hacer que obre o se regule por sí mismo el
funcionamiento de tareas industriales o cualquier conjunto de
elementos interrelacionados entre los que existe una cierta cohesión y
unidad de propósito, mediante medios mecánicos”.(www.ssi.com.mx).
Operacionalmente, la automatización se aplica para mejorar
sustancialmente los procesos de un sistema, en este caso, actualizando los
datos directamente entre dos plataformas distintas.
D. DEFINICIÓN DE TÉRMINOS BÁSICOS
API: Application Programmer Interface. Interfaz de Programación de
Aplicación. Lenguaje y formato de mensaje utilizados por un programa para
activar e interactuar con las funciones de otro programa o de un equipo
físico. (http://www.map.es)
66
DLL(Dynamic Link Library): Es una característica de los sistemas
operativos que permite rutinas ejecutables(generalmente para realizar una
funcion o un grupo de funciones) para ser almacenadas de forma separada
con extensiones DLL.
Host: Se llama así al computador principal que hace las veces de
computador central o de control, en un sistema distribuido. Es una
computadora conectada a una red que provee datos y servicios a otras
computadoras. Los servicios van desde almacenamiento de datos,
transferencia de archivos, procesamientos de datos, World Wide Web, entre
otros. (http://www.babylon.com)
HUB: Dispositivo que sirve como una locación central para conectar cables
entre estaciones de trabajo. Se puede usar como repetidores para proveer
una extensión del cable que conecta las estaciones de trabajo.
(http://www.babylon.com)
Interoperabilidad: Es la habilidad que poseen dos computadores de
diferentes tipos de comunicarse.(http://www.babylon.com)
JDBC: (Java Database Conectivity), es una especificación de un conjunto de
clases y métodos de operación que permiten a cualquier programa Java
acceder a sistemas de bases de datos de forma homogénea.
(http://dis.um.es/˜bmoros/tutorial/index.html)
Login: Palabra usada como clave para obtener acceso a un sistema.( An
Introduction to Computer Security. The NIST Handbook)
67
Nombre del Rol: Se refiere al nombre lógico que se le otorga al rol definido.
(Chirinos, entrevista personal, 2001).
ODBC: (Open Database Conector), conectividad abierta de BD. Es un modo
estándar abierto de acceder a datos primarios desde clientes finales. (System
Administration for Microsoft® SQL Server™7.0)
OLE: (Object Linking and Embedding), una manera de conectar un archivo
con objetos de otras aplicaciones. (SAP R/3. Visión General)
Open Interfaces: Interfaz para aplicaciones específicas como archivo óptico
y código de barras. (SAP R/3. Visión General)
Open VMS: Es un sistema operativo que otorga apoyo para la solución de
problemas a grupos de ingeniería en Compaq. Sus características principales
son. Acceso en línea a las herramientas, información técnica, conferencias y
BD, análisis y resolución de problemas, entre
otros.(http://www.openvms.com)
Password: Clave de acceso utilizada por el usuario para ingresar a un
sistema o aplicación que requiera un nivel de autorización. Las
investigadoras.
Plug and Play: Se refiere a la habilidad de un sistema de computo de
configurar tablas de expansión y otros dispositivos automáticamente. Es
decir, tener la capacidad de conectar (plug) un dispositivo y poder utilizarlo
de una vez sin la preocupación de los elementos de configuración.
(www.webopedia.com)
68
POSIX: Es un módulo que contiene una interfaz a aquellas funciones
definidas en el documento estándar IEEE 1003.1 (POSIX.1) que no son
accesibles de otra manera. POSIX.1 por ejemplo define las funciones open(),
read(), write() y close().
Procedimiento: Método a través del cual se ejecuta un proceso elemental.
Define lo que es la actividad y cómo se realiza. El método utilizado para
realizar la actividad es denominado Técnica. (Chirinos, 2000).
Proxy: permite salir a navegar a internet a dos o mas usuarios utilizando una
sola conexión.
Rol: Es una capacidad o posición dentro de una organización, definida en
términos de responsabilidad, tipo de trabajo y cualidades. (Chirinos, 2000)
Sub-Programas: Pequeños programas independientes que pueden ser
llamados desde programas diferentes para cumplir una función especifica.
Estos sub-programas trabajan recibiendo y devolviendo parámetros.
UNIX: Es un sistema operativo multiusuario y multitarea diseñado
originalmente para minicomputadoras; luego comenzó a ser utilizado para
MainFrame y computadores personales. (http://www.babylon.com)
Workstation: Estación de trabajo o terminal.