ensayo infoiilliltica adaptativa -jesus a. 16

9
Ensayo InfoIIlliltica Adaptativa - JesUs A. Hernandez R. cambiarse por otro diferente en su totalidad. Hoy en dia el software ya ha comenzado a ser una parte vital de la organizacion que evoluciona conjuntamente con ella. En el cicio tradicional de vida del software debe notarse, ademas, que en realidad no se representa ningun cicio del sistema sino una trayectoria con un principio y un fin, como se mostro en la figura 1.1 con el grafo representativo del cicio convencional. En esta concepcion cada modificacion en el software significa tener otro producto de propiedades diferentes que comienza una nueva trayectoria en el tiempo cero. Imaginese el lector una coJeccion de vectores cada uno con puntos de origen y de diferentes, con la poca integracion y al sobregasto de recurs os que esto significa. Si anexamos el mantenimiento a esa trayectoria se comienza ha tener realmente un cicio de vida para el sistema (el grafo de mantenimiento adicional al grafo lineal) y queda claro que el proposito del desarrollo de software as alcanzar una meta 0 conjunto de condiciones iniciales (especificacion de requerimientos) y luego de lIegar a ella buscar el sostenimiento de esa declaracion de requisitos por medio del mantenimiento. En el cicio tradicional de vida del software no se incluye su renovacion. Si se quiera tener en cuenta esta, la reingenieria de sistemas debe ser uno de los componentes basicos en la trayectoria del software, con 10 cual Sl podriamos hablar de un cicio de vida de sistemas adaptables, como se representa en la figura 1.5. En la experiencia industrial cada aplicacion de software actua como una matriz de reflexion que impele su perfecci6n, asi como la creacion de otros nuevos sistemas informaticos, mucho mejores, confirmando que en la practica la reingenieria de sistemas se hace y se necesita [Hemandez-93a]. Como ya se ha comentado, un desarrollador de software hace su trabajo siguiendo una especificacion de raquerimientos. Si su labor liene que ver con un nuevo sistema de informacion, la especificacion de requerimientos es el conjunto de condiciones originales del sistema informatico que 10 satisfacera y luego de cumplidas estas, el mantenimiento tendra como proposito sostener ese conjunto de condiciones iniciales. Pero debido a que las organizaciones cambian sus parametros de orden, se tend ran frecuentemente nuevos conjuntos de especificaciones de requerimientos como las metas corporativas ha alcanzar y ha mantener. Este proceso de recambio de metas es permanente y no asta claro un mecanisme para 16

Upload: others

Post on 14-Jul-2022

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Ensayo InfoIIlliltica Adaptativa -JesUs A. 16

Ensayo InfoIIlliltica Adaptativa - JesUs A. Hernandez R.

cambiarse por otro diferente en su totalidad. Hoy en dia el software ya ha comenzado a ser una parte vital de la organizacion que evoluciona conjuntamente con ella.

En el cicio tradicional de vida del software debe notarse, ademas, que en realidad no se representa ningun cicio del sistema sino una trayectoria con un principio y un fin, como se mostro en la figura 1.1 con el grafo representativo del cicio convencional. En esta concepcion cada modificacion en el software significa tener otro producto de propiedades diferentes que comienza una nueva trayectoria en el tiempo cero. Imaginese el lector una coJeccion de vectores cada uno con puntos de origen y de destin~ diferentes, con la poca integracion y al sobregasto de recurs os que esto significa. Si anexamos el mantenimiento a esa trayectoria se comienza ha tener realmente un cicio de vida para el sistema (el grafo de mantenimiento adicional al grafo lineal) y queda claro que el proposito del desarrollo de software as alcanzar una meta 0 conjunto de condiciones iniciales (especificacion de requerimientos) y luego de lIegar a ella buscar el sostenimiento de esa declaracion de requisitos por medio del mantenimiento.

En el cicio tradicional de vida del software no se incluye su renovacion. Si se quiera tener en cuenta esta, la reingenieria de sistemas debe ser uno de los componentes basicos en la trayectoria del software, con 10 cual Sl podriamos hablar de un cicio de vida de sistemas adaptables, como se representa en la figura 1.5. En la experiencia industrial cada aplicacion de software actua como una matriz de reflexion que impele su perfecci6n, asi como la creacion de otros nuevos sistemas informaticos, mucho mejores, confirmando que en la practica la reingenieria de sistemas se hace y se necesita [Hemandez-93a].

Como ya se ha comentado, un desarrollador de software hace su trabajo siguiendo una especificacion de raquerimientos. Si su labor liene que ver con un nuevo sistema de informacion, la especificacion de requerimientos es el conjunto de condiciones originales del sistema informatico que 10 satisfacera y luego de cumplidas estas, el mantenimiento tendra como proposito sostener ese conjunto de condiciones iniciales. Pero debido a que las organizaciones cambian sus parametros de orden, se tend ran frecuentemente nuevos conjuntos de especificaciones de requerimientos como las metas corporativas ha alcanzar y ha mantener. Este proceso de recambio de metas es permanente y no asta claro un mecanisme para

16

Page 2: Ensayo InfoIIlliltica Adaptativa -JesUs A. 16

Ensayo InfoTtIllltica Adaptativa - JesUs A. Hernandez R.

determinar las nuevas condiciones iniciales actuales del sistema de informacion.

Rein enieria

enieria Progresiva

A =Especificacion original

de Requerimientos

B = Nuevas Condiciones Iniciales

Figura 1.5. CicIo real de vida de los 5.1. , que incluye su renovaci6n

En la figura 1.5 el proposito inicial a cumplir por el software es el conjunto A de requerimientos, el cual luego de conseguido se sostiene por medio del mantenimiento de la aplicacion informatica resultante. Cuando la organizacion cambia sus para metros de orden se transmutan las metas a lograr, por ejemplo del conjunto A al nuevo estado B. En el esquema de renovacion que se discute, para alcanzar este nuevo conjunto B de requerimientos no partimos de cera sino que aprovechamos la memoria institucional y la infrastructura existente por medio de un cicio de reingemena. Luego comenzamos a sostener ese nuevo estado B de la organizacion, reflejado en el software que 10 satisface, a traves del cicio correspondiente de mantenimiento. Con el tiempo, el conjunto B de requerimientos dara paso a otro nuevo estado C de condiciones corporativas que tam bien sera necesario mantener, repitiendose perpetuamente una distribuci6n en ciclos de formaci on y sostenimiento organizacionales.

AI considerar la reingenierfa como propia del cicio de vida del software se vislumbra una correspondencia en forma directa a los ciclos de cambio de la informacion, explicados al comienzo de este apartado. EI cicio conformado por la ingenieria progresiva y la reingenieria de la aplicaci6n informatica es reciproco al cicio de formaci6n de /a informaci6n, igual similitud podemos encontrar entre los ciclos de sostenimiento de /a informaci6n y el cicio de mantenimiento de la aplicacion. AI comparar las figuras 1.4 y 1.5 entendemos que estas semejanzas no solo eran de esperar sino que siguen la misma l6gica. Esta relacion directa con la naturaleza de la informacion significa que si se desea tener una verdadera informatica adaptativa efectiva

17

Page 3: Ensayo InfoIIlliltica Adaptativa -JesUs A. 16

Ensayo Informatica Adaptativa - jesUs A. Hernandez R.

debe considerarse la reingenieria como una fase natural del desarrollo del software y no como otra alternativa esporadica de solucion.

En el cicio real de vida del software el mantenimiento y la reingenieria se complementan como actividades diferentes e interdependientes para lograr los objetivos corporativos ante los cambios continuos y discretos en la evolucion del sistema informatico. EI cicio real de vida del software refleja que los cambios en una aplicacion informatica coinciden can, y son debidos a, las permanentes transformaciones en su materia prima: la informacion. La consideracion de la reingenieria como parte natural de la construccion y explotacion del software, evidencia y aclara, respecto a los cambios en los parametros de orden originales del sistema, que los propositos del mantenimiento y la reingenieria en un sistema informatico si son diferentes, cubren fases distintas del objeto de estudio y generan la concepcion del desarrollo de software en renovacion continua.

Esta claro que tanto la organizacion como el software que la apoya se desenvuelven en un complejo conjunto de ciclos y 10 que en un momenta dado conocemos -Ia estabilidad temporal, es apenas un orden sujeto a una categoria superior que tambiem se encuentra en un estado de renovacion ciclica. AI considerar la reingenieria y el mantenimiento como fases naturales del cicio de vida de un sistema informatica se satisfacen condiciones empiricas e inferencias logicas para la adaptacion del software. Esta asercion nos cambia radicalmente nuestra concepcion de la construccion y operacion de aplicaciones informaticas.

EI desarrollo de una aplicacion informatica, considerada como un sistema en renovacion continua, desde ahara debe comenzar a enfrentarse como la serie compuesta par: {EI reconocimiento de los para metros de orden de la organizacion + La definicion de un protocolo de comunicacion para interpretar los para metros de orden + La estructura actual del sistema de informacion + La implantacion automatica de un software en una maquina }.

Finalmente, al considerar la reingenieria como parte del cicio real de vida del software, es decir, tener en cuenta desde la misma concepcion de la aplicacion informatica que esta se transformara de forma permanente y continua, se facilita conocer la informacion acerca de los cam bios de estado de la aplicacion para establecer la evolucion del software. De manera que, si se almacena esa informacion de los cambios de estado de una aplicacion

18

Page 4: Ensayo InfoIIlliltica Adaptativa -JesUs A. 16

Ensayo Inform.atica Adaptativ8 - JesilsA HernAndez R.

en un repositorio, es posible, al relacionar los registros de los eventos de los varios sistemas informaticos reconocer incluso la historia de la corporaci6n. La extracci6n de conocimiento de ese repositorio facilita la renovaci6n continua de los sistemas informaticos, con el consiguiente logro de una rapida respuesta a los cambios organizacionales, acercandonos estrechamente a una verdadera informatica adaptativa.

19

Page 5: Ensayo InfoIIlliltica Adaptativa -JesUs A. 16

2. Los Recursos de la Renovaci6n Continua

La reingenieria organizacional se deriva de la reingenieria de software y sin embargo sus filosofia y tecnicas de implantacion son mas populares. Una de las principales razones del desconocimiento de la reingenieria de software es la enorme complejidad requerida para enfrentar la renovacion de las aplicaciones informaticas, tanto a nivel tecnologico como cultural, y no tanto la posicion natural de cambiar primero la vision logica que tengamos de un problema y luego la concepcion de la herramienta para solucionarlo, como de alguna forma 10 propone la reingenieria de negocios. Por esto, aunque la reingenieria organizacional haya lIegado con tanto impetu [Ehrhardt-95, Hernandez-94, Hammer-93J, no quiere decir que se hall a dejado de trabajar en la reingenieria de software. Seria un garrafal error modificar la vision de los negocios y no renovar el instrumento para soportar esas transformaciones, como seria mas catastrofico todavia mudarse a una nueva tecnologia e implantarla en la vieja concepcion de la organizacion. A esta complejidad hay que agregarle que asi como en las aplicaciones informaticas es donde mas rapido se manifiesta la evolucion de las empresas, tambien en un muy corto periodo de tiempo ya se han modificado los significados de los terminos utilizados inicialmente en la reingenieria de software, 10 que ha generado una verdadera confusion entre los interesados en manejar el cambio organizacional y el de su apoyo informatico.

En este capitulo se explican y unifican conceptos de las nuevas variantes de la ingenieria de software que se aprovechan para la renovacion de las aplicaciones informaticas, se comienza con una vision integral y luego se describen cada uno de los terminos. Las definiciones aqui presentadas son fundamentales para la adecuada comprension del trabajo.

Los sistemas informaticos desde el mismo momenta en que comienzan a operar entran en un estado de continuo cambio, se modifican para satisfacer nuevos requerimientos de los usuarios, emigran a nuevos sistemas operacionales, se corrigen los defectos presentes, se actualizan en la tecnologia del hardware, etc. , y en cada una de esas transformaciones se

Page 6: Ensayo InfoIIlliltica Adaptativa -JesUs A. 16

Ensayo Informatica Adaptativa - JesUs A. Hernandez R.

actua de forma parcial sobre la estructura completa de la aplicacion informatica y en general, no se tiene en cuenta el impacto de esas modificaciones sobre el sistema organizacionaL Esto ha generado grandes problemas cuando se pretende tomar uno de esos sistemas informaticos como modelo para realizar una nueva version de los mismos, 0 cuando se va a efectuar un mantenimiento, 0 cuando lIega un nuevo administrador del mismo 0 incluso cuando se quiere justificar el retiro de una aplicacion, pues con la informacion disponible, con frecuencia incompleta y anticuada, es muy poca la certidumbre que se tiene del verdadero estado actual del sistema.

Las reingenierias de negocios y de software actuan sobre sistemas existentes, se lIevan a cabo para entender el sistema con el propos ito de mejorarlo 0 mantenerlo 0 expandirlo 0 cualquier combinacion de estas actividades; en el caso de un sistema informatico se trataria todo el conjunto de sus elementos 0 algunos de ellos tales como codigo fuente, documentacion tecnica, manuales de usuario, codigo ejecutable en operaclon, oplnlones de los usuarios finales, procedimientos organizacionales asociados, tecnologia en uso y todo 10 que pueda relacionarcele para comprenderlo y facilitar su actualizacion.

EI concepto de reingenieria se esta aprovechando para rehacer deslucidos sistemas poco ventajosos, sean estos sistemas organizacionales 0 de software, pero con aplicaciones resultantes que muy pronto de nuevo hay que rehacer. Como 10 se pretende es que los modernos sistemas no lIeguen a su obsolescencia de forma mas rapida que sus antecesores, deben construirse teniendo en cuenta simultaneamente dos frentes de trabajo, la dimension de la instrumentacion (i), es decir el software y el hardware, y la dimension de la especificacion (e), esto es la organizacion formal. No basta con actualizarnos tecnologicamente sino modificamos nuestra manera de entender la organizacion. Mejorar la concepcion de la empresa no es suficiente, si conservamos una infraestructura deficiente. No sirve seguir utilizando las herramientas -es decir los sistemas informaticos como producto final y los metodos para construirlos- de la misma manera de siempre por muy moderna que sea la tecnologia que tengamos. Es necesario reconocer la traza de estados de la historia de la empresa, establecer el estado actual presente y un estado objetivo futuro. Las alternativas de cambio corporativo se pueden ilustrar en un marco de referencia bidimensional como el mostrado en la figura 2.1, en donde se aprecia el conjunto de posibles estados de una organizacion en un momento dado del tiempo, O(i,e,t), si proyectamos esta grafica en el eje del tiempo

21

Page 7: Ensayo InfoIIlliltica Adaptativa -JesUs A. 16

Ensayo Informatica Adaptativa - JesUs A. Hernandez R. 22

encontraremos una sucesi6n de los diferentes estados por los que ha pasado la empresa y que conforma la trayectoria de evoluci6n de la organizaci6n.

Instrumentscion (i)

RENOVACION

CONTINUA

REESrRUCTURAGON

ORGANIZACIONAL

Especificaciones (e)

Figufil2.1. Dimensiones de la Reingenieria [Hemtmdez-93b]

Las necesidades de cambio en los sistemas provienen de fuentes externas e internas, siendo los agentes externos los mas complejos de manejar pues sus acciones, que generalmente son estocasticas, tienen efectos con un comportamiento discontinuo y creciente no lineal, en constraste, los resultados de los agentes internos de cambio se presentan al mismo tiempo pero con un comportamiento continuo y relativamente predecible [Hernandez-93aJ. La renovaci6n de sistemas exige, entonces, establecer del conjunto de soluciones posibles del estado actual, cual es la situaci6n vigente en la actualidad, como tambieln reconocer, para orientar el trabajo, un conjunto de soluciones del estado deseado, aunque no se conozca exactamente a cual de todas las posibles situaciones futuras se vaya ha lIegar. En otras palabras la renovaci6n continua de software no es un proceso de transformaci6n discreto ni predeterminado, es una compleja labor que depende en gran parte de la historicidad de la organizaci6n, de su nivel de aprendizaje organizacional , de su sistema de informaci6n y de la instrumentaci6n para manejar su informaci6n.

En la ingenierla tradicional de sistemas computarizados se avanza progresivamente desde una etapa de requerimientos del usuario hacia la especificaci6n formal del sistema informatico, para pasar de aqui a la

Page 8: Ensayo InfoIIlliltica Adaptativa -JesUs A. 16

Ensayo Informatica Adaptativa - JesUs A. Hern8ndez R. 23

especificacion del diserio y finalizar luego en su implantacion. En la ingenieria tradicional 0 convencional se parte de la base que el sistema no existe, que 10 que se pretende es precisamente construirlo y que las partes ya existentes del sistema, si las hay, aun no se han integrado para conformarlo como tal. Luego de construido el sistema, se busca con el mantenimiento sostener el conjunto inicial de requerimientos dados por el usuario. En contraste, el punto de partida para la reingenierla es un sistema ya terminado y usual mente en operacion [Hernandez-gO].

Tanto en la ingenieria convencional como en la reingenieria el experto usuario se acerca al sistema informatico de forma ortogonal a la manera como 10 hace el experto informatico, esto evidencia porque la renovacion continua de software debe tratarse en un esquema multidimensional. La vision del experto informatico (cuyo problema es la instrumentacion) se enfrenta a la vision del experto usuario (cuyo interes es la especificacion) complementandose de forma mutua para producir la vision total del sistema, 10 que podemos representar en la figura 2.2.

Vision del ,.,...,.,~ . = rto Informatico

Figura 2.2. Visiones en e/ Software

Vision del Experto..u&uario

La percepcion holistica del sistema no pertenece a ninguno de los dos, este resultado sinergico es continuamente cambiante y hay que recordar que ademas las categorias generantes tambien varian autonomamente en el tiempo

La intencion de aplicarle reingenieria a un sistema, ya sea, para recuperar inversiones, no dejar perder la memoria institucional, hacer los sistemas mas manejables y mantenibles, ganar en respuesta operacional, etc., es inutil si la concepcion que tenemos de los mismos es la tradicional , es decir, si

Page 9: Ensayo InfoIIlliltica Adaptativa -JesUs A. 16

Ensayo lnf()J"[ID)tica Adaptativa - JesUs A Hernandez R. 24

seguimos desarrollando sistemas informaticos cerrados, con una vel ada participacion del usuario, estaticos y de los cuales no tenemos ninguna historicidad. EI cicio de vida de un sistema puede perfeccionarse considerando la reingenieria y todos sus derivados como parte natural del mismo para facilitar la renovacion continua del sistema.

En la figura 2.3 se presenta el modelo clasico en cascada del desarrollo de software, con sus diferentes fases, enriquecidas al incorporar abiertamente los elementos de reingenierra. Se muestran en la grafica el alcance de las diferentes alternativas para realizar la ingenieria convencional y la reingenieria de un sistema sosteniendo la consistencia entre las relaciones directas y reversas de las varias eta pas de desarrollo del mismo. Una perspectiva que facilitara el desarrollo adaptativo de los sistemas de informaci6n.

~ Ingeniefia Progreslva

~ Desarrollo de Sistemas

Especificaci6n

Requerimientos

Especificaci6n

Formal

Especificaci6n

Oiser'\o

> )

Imptanlaci6n

Dominio del t-'IP,--~ Abstraccion i----lI Abstraccion ~I~' P_~ Construccion

Conocirniento Funcional Estructural yPruebas

... . . ... .. . .. . .. ..1--...."....

Re Re Re

t-(------------ Comprensi6n1Abstracci6n -------\

~(------------- Ingeni~rla Regresiva

Figura 2.3. Elementos de reingenieria de un sistema Ip = ingenieria convencionai. Ii = ingenieria inversa. Rd =recuperaci6n de diseno.

lr =ingenieria reversa. Rc =reconstrucci6n. Re =reestrucluraci6n. M =manlenimienlo. Cc = Compilacion Cruzada