OBSOLESCENCIA DEL SOFTWARE Síntesis de la Tesis de Maestría en Informática de Marcela Argüelles Flores [email protected] Bajo la dirección de Honorato Teissier, PhD. [email protected] UNIVERSIDAD AUTÓNOMA DE COAHUILA Facultad de Sistemas Departamento de Investigación y Postgrado, Saltillo, Coahuila, México. 16 de Abril de 2005 Introducción al tema. Hoy en día existe una gran variedad de software de aplicación para organizaciones que ha sido desplazado del mercado, quedando en la obsolescencia, si no en la desaparición total. Debido a la evolución de dichas organizaciones, por dejar el software de satisfacer los requerimientos del usuario, induce a una de las principales causas del desplazamientos del software, con los consabidos problemas que esto ocasiona. Además, hay algunas otras causas externas que bien vale la pena estudiar y determinar, para ayudar a las empresas, tanto proveedoras (desarrolladoras) como usuarias del software de aplicación a allanar el camino de sus interacciones. La “Obsolescencia de Software”, es pues un tema de absoluto interés para la comunidad, tanto dentro del campo de las Ciencias de la Computación, como de las Ciencias de Sistemas.. En este terreno de la obsolescencia del software surgen algunos cuestionamientos que dieron origen a nuestra investigación: ¿A qué causas obedece…?, ¿cuál es el impacto que tiene en los corporativos que adquirieron aplicaciones de este tipo obsoleto…?, ¿cuáles son los procesos de negocio a desarrollar para generar puentes de información en esquemas de bases de datos de mejora del problema…?, ¿cuales son los riesgos en que incurrimos al hacer tareas de migración de información…?, ¿cuáles son los procesos que nos aseguran la vigencia y estabilidad a largo plazo en un software…?, ¿cómo desarrollar un estudio costo – beneficio para determinar la vigencia de un software…?, ¿cuál es el impacto organizacional al cambiar un software de aplicación…?, ¿cómo aseguramos la actualidad de interfases de nuestro software hacia software externo…?, en fin todas aquellas relaciones que se asocian a la Obsolescencia del Software. . Objetivo General. Estudiar las causas y consecuencias de la obsolescencia del software. 1 Objetivos particulares. El desarrollo de la presente investigación se orienta a la cobertura de dos aspectos fundamentales. 1. Cambios en la Organización que influyen en los sistemas computacionales. Estudiar e identificar y modelar los efectos o influencias del exterior sobre la organización real, que producen cambios que afectan o influyen en la obsolescencia del software. 2. Adquisición, vigencia y cambios en la aplicación. Identificar cuales son las variables que determinan la vigencia de una aplicación de software. Determinar los puntos que consideran las organizaciones para adquirir la aplicación de software. Investigar cuáles son las razones más comunes que empujan a una organización a efectuar un cambio radical en toda su infraestructura de software. Marco Teórico Referencial. Nuestro estudio del tema recibe aportaciones de dos campos de las ciencias; la Ingeniería de Software, que es parte de las Ciencias de Computación, y la Evolución de las Organizaciones, integrante de las Ciencias de Sistemas. A menudo estas dos importantes ramas de la ciencia moderna tienden a confundirse por la cercanía que guardan las aplicaciones a los sistemas de computación. Pero es muy importante diferenciarlas, ya que sus importancias respectivas son vitales al desarrollo humano del Siglo XXI. Evolución de las Organizaciones. En lo referente a la evolución de las Organizaciones; el término “evolución” era de uso frecuente antes de su aplicación a la biología. Se refiere a una variable o una serie de variables que cambian continuamente en un periodo de tiempo y la comprensión del proceso dinámico del cambio observado. Un caso particular sería buscar información acerca del estado, en un momento determinado en el tiempo, de una variable o sistema y de la manera en que llegó a esa condición. 2 Las Organizaciones están cambiando constantemente en el tiempo por las influencias de los organismos gubernamentales externos, y por mejorar constantemente según los grupos gerenciales, tecnologías, etc. El secreto de las compañías de mayor éxito en el mundo radica en poseer estándares de calidad altos tanto para sus productos como para sus empleados; por lo tanto el control total de la calidad es una filosofía que debe ser aplicada a todos los niveles jerárquicos en una organización, y ésta implica un proceso de crecimiento continuo que no tiene final (Deming W.E. 1989). Dicho proceso permite visualizar un horizonte más amplio, donde se buscará siempre la excelencia y la innovación que llevarán a los empresarios a aumentar su competitividad y disminuir costos, orientando los esfuerzos a satisfacer las necesidades y expectativas de los clientes. Dentro de la Evolución de las Organizaciones, encontramos las siguientes importantes las teorías siguientes, componentes todas de la Sistémica1: 1. Teoría General de los Sistemas de Ludwig Von Bertalanffy, en 1968. Esta teoría al igual que todas las ciencias verdaderas, se basa en una búsqueda sistemática de la ley y el orden en el Universo, pero a diferencia de las otras ciencias, tiende a ampliar su búsqueda, convirtiéndola en una búsqueda de un orden de órdenes, de una ley de leyes. Este es el motivo por el cual de le denomina Teoría General de Sistemas. 2. Evolución de las Organizaciones. La teoría evolutiva propone que las variables o sistemas están sujetos a variaciones dinámicas o perturbaciones de naturaleza aleatoria. También propone que existen mecanismos que sistemáticamente muestran los efectos de esas variaciones. La teoría evolutiva está basada en presumir que existen fuertes tendencias inerciales que preservan lo que ha sobrevivido a las fuerzas de selección. También se presume que existen fuerzas que siguen introduciendo nuevas variaciones al molino evolutivo. 3. Dinámica de Sistemas: Estudia las características de realimentación de la información en la actividad industrial con el fin de demostrar como la estructura organizativa, la amplificación (de políticas) y la demoras (en las decisiones y acciones) interactúan e influyen en el éxito de la empresa (Forrester, J., 1981). 4. Simulación de Sistemas Dinámicos: La simulación involucra el diseño de modelos de un sistema, llevando a cabo experimentos en él. El propósito de éstos ("que pasa 1 Ver página de la International Society for the System Sciences.- www.isss.org 3 si") experimentos son determinar cómo el sistema realiza y predice el efecto de cambios en el sistema real a través del tiempo. Ingeniería de Software. En cuanto a la Ingeniería de Software, las Ciencias de la Computación constituyen la disciplina que busca establecer una base científica para diversos temas, como el diseño de computadores, la programación de computadores, el proceso de información, la elaboración de algoritmos para resolver problemas y el proceso algorítmico en sí. También es la ciencia en la que se apoyan las aplicaciones actuales de los computadores y en la que se basarán las aplicaciones del mañana. (Huertas P. ,1998) Dentro de las Ciencias de la Computación encontramos las siguientes:2 CIENCIAS DE LA COMPUTACIÓN SEGÚN LA AMCC 2004 Teoría de la computación Optimización Redes de computadoras ón "web" ágenes Computación gráfica -computadora Dentro de ellas, la Ingeniería de Software surge como disciplina a fines de la década de los sesenta, cuando se hacen presentes los graves problemas existentes en la producción y, sobre todo, manutención de software, situación que se conoce como la "crisis del software". Las prácticas "artesanales" de programación y la nula documentación que se utilizaban en ese entonces hicieron crisis y determinaron que se pensara en el software como un problema que necesariamente debería ser abordado de manera más sistemática, de modo ingenieril. El modelo básico de esta sistematización corresponde a una variación de 2 Encuentro Internacional de Ciencias de la Computación, 2004, Asociación Mexicana de Ciencias de Computación, http://enc.smcc.org.mx/2004/ 4 otro desarrollado en la década de los treinta en los Laboratorios Bell, conocido en el ámbito del software como el ciclo de vida tradicional del software. Al haberse alcanzado la etapa de crisis en el software, lo que realmente se tiene es una aflicción crónica, en el sentido de que es una crisis duradera y que vuelve a aparecer con frecuencia. El término crisis alude a un conjunto de problemas que aparecen en el desarrollo del software de las computadoras. Los problemas no se limitan a aquellos programas que "no funcionan correctamente". Es más, el mal abarca los problemas relacionados con el cómo se desarrollan estos, cómo se realiza el mantenimiento de un volumen cada vez mayor de aplicaciones y cómo poder atender su demanda creciente. (Choque, G, 1998). Y es en esta crisis en donde se ubica el tema de nuestra investigación. Para la Ingeniería de Software contamos con las siguientes bases teóricas como apoyos. 1. Teoría de la Computación: , la teoría de la computación como ciencia comienza propiamente a principios del siglo XX, poco antes que las computadoras electrónicas fuesen inventadas En esa época varios matemáticos se preguntaban qué clase de problemas de la matemática, podían resolverse por "métodos simples" y cuales no. Y para ello debían en principio desarrollar una definición de "método para resolver problemas", es decir, necesitaban el desarrollo de una noción formal (matemática) de lo que es un cálculo/algoritmo. Durante el siglo XIX y XX diversas corrientes filosóficas allanaron el camino de la computación a partir de las definiciones de sistemas formales. Destacando Kurt Gödel y Bertrand Russell entre otros. 2. Computación Evolutiva: En la naturaleza todos los seres vivos se enfrentan a problemas que deben resolver con éxito, como conseguir más luz del sol, o cazar una mosca. La Computación Evolutiva interpreta la naturaleza como una inmensa máquina de resolver problemas y trata de encontrar el origen de dicha potencialidad para utilizarla en nuestros programas. 3. Ingeniería de Software: La ingeniería de software es el establecimiento y uso de sólidos principios de ingeniería orientados a obtener software económico, fiable y que funcione de una manera eficiente sobre máquinas reales. 4. Sistemas Operativos y compiladores: Un sistema operativo es un programa que actúa como intermediario entre el usuario de una computadora y el hardware. El propósito de un sistema operativo es proveer un entorno en el cual el usuario pueda 5 ejecutar programas. El principal objetivo es hacer un sistema que convenga usar, el objetivo secundario es usar el hardware de una computadora de manera eficiente. Pertinencia Científica. Dado que las organizaciones humanas reales cambian constantemente con el tiempo, este estudio, basado en metodologías y conocimientos científicos, aclarará el hecho de que un sistema computacional diseñado, siendo incapaz de auto-evolucionar, impide que se eliminen los factores que irremediablemente lo hacen obsoleto 3. Con sus resultados se pretenden establecer los principios y los parámetros que ayuden, tanto a la ingeniería de software, como a los estudios de organizaciones en el conocimiento y dominio de este grave problema del desarrollo actual. Pertinencia Social. Los beneficios sociales que aporta este estudio son muy importantes, ya que al elevar a nivel consciente y lógico, con bases científicas, el hecho de que al desarrollar software para organizaciones humanas, éstas cambian constantemente y por consiguiente el sistema computacional va a sufrir modificaciones durante y después del desarrollo, ayudará sin duda a prever conflictos entre los clientes y proveedores de software, lo cual reduce los costos de operación de las interacciones y eleva la calidad de ambos lados. Metodología. El desarrollo del presente proyecto de investigación se llevó a cabo mediante la metodología propia, que se expone en el diagrama en seguida. EXPLICACIÓN DE LOS CONCEPTOS: Evolución de las Organizaciones. Las organizaciones evolucionan constantemente, debido a que se tienen que adaptar a los cambios externos de departamentos como gobierno, hacienda, etc. Por lo que se requiere que sus sistemas de cómputo estén preparados para realizar éstos cambios. Evolución de Sistemas de Cómputo. La evolución de los sistemas operativos, provoca que los sistemas de computo desarrollados para la plataforma de ese sistema operativo, no funcionen en las versiones nuevas. Los sistemas operativos evolucionan rápidamente como se puede ver en el apéndice 2. 3 Sistemas Evolutivos: ISSS, Sección de Sistemas evolutivos. 6 MAPA METODOLÓGICO Ingeniería de Software. En la ingeniería de software existe un ciclo de vida clásico en la que cada sistema tiene un tiempo de vida y esto ocasiona que los sistemas lleguen a ser obsoletos por lo que estudiando la ingeniería de software también nos conduce al estudio de nuestro problema. Problema de Obsolescencia de Software. La evolución de la Organización, la evolución de los sistemas operativos y la Ingeniería de Software, son 3 factores que nos conducen a que se presente nuestro problema de obsolescencia. Debido a que si evoluciona la organización, nuestros sistemas de cómputo se tienen que modificar para poderse adaptar a los cambios externos. Con la evolución de los sistemas operativos, también se tendrían que cambiar puesto que ya no funcionarían en 7 las nuevas versiones y con la ciencia de Ingeniería de Software también hay que modificarlos, ya que existe un ciclo de vida clásico en el que finalmente se termina el tiempo de vida del sistema. Modelo relacional de la Organización. Al determinar el problema de obsolescencia de software, se procedió a realizar un modelo relacional, en donde se determinaron las variables que influyen en los cambios de la Organización y las relaciones que tienen entre ellas. Empresa Caso. En esta empresa está operando un sistema computacional en MS-DOS, el cual consta de los módulos de facturación, inventario, nómina, cartera, liquidaciones y contabilidad, se observó el funcionamiento de dicho sistema y se encontró que se presentaban distintos problemas como el no obtener la información a tiempo, el no tener respuesta rápida del sistema, el no poder acceder a los datos fácilmente, ya que para poder acceder se requiere de realizar un programa con la información que desea consultar. Estudio de Obsolescencia de Software en la Empresa Caso. Considerando los problemas que se presentan con el sistema que opera actualmente, se realizó un estudio, en el cual se decidió cambiarlo por otro sistema computacional basado en una plataforma mas nueva, y se participó en las juntas que se llevaron a cabo para el desarrollo del nuevo sistema, en las cuales se trataron los procesos que operan actualmente en el sistema, para poder así hacer una copia exacta del sistema computacional anterior a una nueva plataforma. (ver apéndice 1). Otras Empresas de Desarrollo de Software. Tomando en cuenta una muestra de 10 empresas desarrolladoras de software se aplicaron encuestas, y con los resultados de éstas se realizaron estudios estadísticos en donde se determinaron algunas de las variables que se aplican en el diseño del modelo relacional. Modelo de Simulación Basados en el modelo relacional, se desarrolló el modelo de simulación en un software llamada I’think, en el cual se definieron las variables que influyen en la Evolución de la Organización y se probaron dichas variables introduciendo los datos que se arrojaron de todos éstos estudios. Principio a establecer. 8 Con los resultados de los estudios de la obsolescencia en la empresa caso, la obsolescencia en otras empresas de desarrollo de software y el modelo de simulación, se estableció el siguiente principio: Principio, dentro de la Ingeniería de software. “El sistema computacional para organizaciones humanas se hace obsoleto desde el primer instante en que ha sido concebido”. Hipótesis. La Hipótesis que se ha planteado para este estudio es la siguiente: Dado que las organizaciones están cambiando conforme el tiempo del desarrollo de software pasa, éste se hace obsoleto de modo irremediable. Fundamento de la Hipótesis. Esta hipótesis se definió considerando dos temas con los que la obsolescencia del software se encuentra relacionada, ya que en la Ingeniería de Software, dentro de la parte del establecimiento de los requerimientos, si no se considerara la Evolución de las Organizaciones, no se comprendería porqué los requerimientos establecidos al inicio del desarrollo de un sistema computacional sin duda serán distintos cuando se termina éste. Lo que nos lleva a decir que el software se hace obsoleto desde el primer instante en que fue concebido. Por lo general, al momento que desarrollamos software para organizaciones humanas, lo hacemos considerando que éstas no cambian. Y tal suposición nos lleva a cometer un error en el diseño, ya que se piensa que la situación, captada por el analista no va a sufrir modificaciones posteriores. Lo cual resulta casi imposible tal como se demuestra en el caso de estudio tomado como ejemplo demostrativo. Prueba de la Hipótesis. El desarrollo de este trabajo de investigación prueba las consecuencias, partiendo de planteamientos científicos. Algunas veces, algo tan obvio como la transformación de organizaciones, nos parecería inútil probarlo y estudiarlo a profundidad. Pero la diferencia entre una intución y un conocimiento científico es eso, precisamente; un establecimiento formal, lógico y demostrativo de las ideas que conformaron nuestras conjeturas preliminares. Como se verá más adelante, se incluyen todos los pasos para lograr dicha sustentación formal. 9 Modelo Relacional. Primeramente se diseñó un modelo relacional determinando las variables que influyen en la organización, respecto a la obsolescencia del software, y estableciendo las relaciones que existen en dichas variables entre sí. Este modelo fue la base de construcción de los conocimientos que nos permitieron concretar los caminos del estudio. Modelo computacional para simulación. Para probar con datos reales las relaciones hipotéticas del modelo relacional, a partir de éste se diseñó un modelo de simulación en el cual se definieron algunas variables determinadas, considerando los estudios estadísticos de la muestra sobre el universo de empresas desarrolladoras de software, en la región bajo estudio. Dentro de las variables, para las casas de desarrollo, encontramos: Cambios en el Software, Cambios en el Hardware, Número de errores, Nuevos clientes, Clientes Insatisfechos, Requerimientos de Inversión Tecnológica, Inversión del Cliente, Número de Malos Entendidos, Clientes, 10 Proyectos nuevos de clientes anteriores, Proyectos actualizados, Cambios externos, Tiempo de Adaptación, Número de Soportes Técnicos, Tiempo de Respuesta, Versión de Obsolescencia del Software, Proyectos de Nuevos Clientes, y Número de Proyectos por cliente. Algunos de los valores que se tomaron para estas variables se obtuvieron de una encuesta que se realizó a una muestra de 10 empresas desarrolladoras de software, mediante el cuestionario que se explica en seguida. Encuesta Aplicada a las Empresas de Desarrollo de Software. Texto introductorio. Con la intención de determinar los factores que interactúan con el tema de “la obsolescencia de Software”, se esta desarrollando una investigación a través de la cual queremos identificar todos y cada uno de los elementos que intervienen en este tema, validando el impacto que esto puede generar en el área de desarrollo de software. Partiendo del entendido de que la obsolescencia de software se refiere a los programas de aplicación que han quedado fuera de mercado en el sentido de su: Venta, distribución y mantenimiento. Solicitamos sus apreciables comentarios al respecto a través de los siguientes cuestionamientos. 1.- En su ámbito de trabajo ha visto algún software que haya quedado como obsoleto?, si es así puede mencionarlo y hacer una breve descripción de su función? 2.- Que políticas de calidad utiliza en sus productos para evitar caer en un fenómeno de obsolescencia de software? 3.- A su parecer, cuales son las causas que orillan a las aplicaciones de software a quedar fuera de mercado? 4.- Que papel juegan las grandes casas de desarrollo de software vs. Empresas locales en este sentido? 5.- Que interacción existe con sus clientes en pro de evitar que el software a desarrollar no se vuelva obsoleto? 6.- Que inconformidades a habido con sus clientes en referencia al punto de obsolescencia de software.? 7.- Conoce alguna empresa o negocio que este basando hoy en día su operación o alguno de sus procesos en software obsoleto? 8.- En su experiencia, cuáles son los aspectos que interponen los clientes para evitar hacer la inversión de nueva tecnología en la empresa? 9.- Cómo afecta la evolución del hardware al tópico de Obsolescencia de software? 11 10.- A efectuado algún estudio costo – beneficio con respecto a la inversión en renovación de tecnología? 11.- Cuáles son los efectos que se generan al contar con software obsoleto en la empresa? 12.- Comentarios adicionales. Resultados Estadísticos de las Encuestas. A continuación se muestran algunas gráficas de los resultados estadísticos de los cuestionamientos anteriores: Detección de empresas que hacen uso de Software Obsoleto 20% SI NO 80% Causas de la obsolescencia de Software 5% 5% 5% 23% 5% Sistema Operativo 10% Procesador Competencia Local Rigidez del SW 19% 14% No cumple con requerimientos SW poco Amigable Falta de vision Grandes casas de desarrollo de SW 14% SW Aislados 12 Obsolescencia de Software en el ambito de trabajo Si 100% Efectos del Software Obsoleto 5% 5% 5% 35% Menor rendimiento Inconformdad de usuarios 15% Procesos poco seguros Costo de soporte Falta de integración entre aplicaciones Ninguno mientras no evolucionen las demandas de la empresa 15% Problemas de mantenimiento 20% 13 La ayuda del modelo computacional. Después de definir las variables, se realizó el diseño de un modelo de simulación, aprendiendo con él más acerca del modelo relacional, construido con las ideas de base y las experiencias del grupo de investigación. Para su realización se utilizó el “I-Think”, que es un paquete simulador internacional, muy conocido, y empleado a menudo en los cursos de nuestra Facultad de Sistemas. En seguida tenemos el diagrama del modelo usado. Graph 1 CambiodeSW Graph 2 CambiodeHW InversionCasaDesarr oll o Table 1 UNIVERSIDAD AUTÓNOMA DE COAHUILA Facultad de Sistemas Departamento de Postgrado "Obsolescencia del Softw are" Modelo Computacional I-Think Marcela Argüelles Flores Saltillo, Coahuila, México. Junio 2004 NumErr or es Clientes nuevos clientes Clientes insatisfechos Req InvTecnologi a NumMalosEntend NumProyCte InversionCte NuevosProyectos ProyectosNvos ProyectosActualizados VelocidadProcesos Ver sObsSW CambiosExternos TiempoAdaptacionSW NumSopor teTecnico 14 Resultados y conclusiones. En el desarrollo de la presente investigación resultaron una gama extensa de sorpresas. Al tener conceptualizado de inicio un tema considerado como de fácil interpretación, pero con una extensa fuente de información, no imaginamos que posteriormente durante el transcurso del proyecto, fuese volviéndose complejo y con exigencias de investigación demasiado amplias, por estar en las fronteras de las interacciones de dos grandes ramas de las ciencias, las de Computación y las de Sistemas. Sin embargo, redefiniendo el alcance del mismo, finalmente se fueron disipando las incógnitas, lo que condujo a este documento que extrae de las experiencias, principalmente de las casas de desarrollo de software de la localidad, aspectos muy importantes que sirven de apoyo para mejorar los conocimientos acerca de aspectos como los ciclos de vida del software, la ubicación de su situación actual en este mercado, así como de contar con una gama muy nutrida de bases e ideas, que les permitirán realimentar y a su vez redefinir sus metas a corto, mediano y largo plazos. Otra observación importante es el haber descubierto que el sistema real (la empresa u organización) está sujeto a un proceso de constante cambios y adaptaciones al mundo de las organizaciones, por lo cual resulta vital para su existir el hecho de mantenerse actualizado, abierto a las adecuaciones que requieran las nuevas tecnologías tanto en hardware (Procesadores) como en software (sistemas operativos), y de todo tipo de cambios sociales en su caminar. Se pudo detectar cuales son las influencias de mayor peso que convierten a un software en obsoleto (Ver detalles de graficas), resultados que permitirán a futuros programadores locales, contar con un panorama previo, mucho mas amplio, que ayude a considerar en forma real, las variables que afectan directa o indirectamente a los desarrollos de sus aplicaciones. Con todo ello, creemos haber contribuido al avance del conocimiento de nuestros campos de los Sistemas y la Computación. Fin. Bibliografía. Ackoff, Russell, 1996.“Planificación de la Empresa del Futuro” Título en inglés “Creating the Corporate Future” de John Wiley & Sons Editorial Limusa, S.A. de C.V. México, D.F. ISBN 968-18-1617-X 15 Aracil Jayler y Gordillo Francisco, 1997 “Dinámica de Sistemas” Alianza Editorial, Madrid. Deming. W. Eduards, 1989.“La calidad, productividad y competitividad : La salida de la crisis “ Ediciones Díaz-Santos, S.A. Editado por Cambridge Press ISBN 84-87189-22-9 (Lengua Española) 1989 ISBN 0-521-30553-5 (Lengua Inglesa) 1982, 1986 Forrester, Jay W. 1981. “Dinámica industrial”. Editorial Ateneo, Buenos Aires. Holton, G., 1985.“La imaginación Científica” Publicado por el Consejo Nacional de Ciencia y Tecnología, y el Fondo de Cultura Económica, S.A. de C.V., México. 272 p., 1985 ISBN 968-16-1985-4 Herran Manu, 1998, “Computación Evolutiva” Revista Solo para Programadores. Jorgensen, S.E. 2000 “Handbook of Ecosystem Theories and management”. pp. 519-536. Lewis Publishers, USA, 2000. 584 p. ISBN 1-56670-253-4 Laszlo, Alexander. 2001.“Epistemological Foundations of “Evolutionary Systems Design”, Research paper, International Society for the System Sciences (ISSS) Copyright, 2001 Wiley and Sons, Ltd. Martinez, Silvio y Requema Alberto, 1988, “Simulación dinámica por ordenador” Alianza Editorial, Madrid Meadows, Denis et al., 1995.“Más allá de los límites del crecimiento” Editorial El País-Aguilar, México, Madird, Buenos Aires. 1992.355 p. ISBN 84-03-59256-6 Nonaka, Ikujiro y Takeuchi, Hirotaka; 1999, "La organización creadora del conocimiento"; Oxford University Press; Impreso en México en 1999, Edición en español. ISBN 9706134549. Senge, Peter et al. “La quinta disciplina : el arte y la práctica de la organización abierta al aprendizaje” Ediciones en español 1992, 93, 95, 96, 97 y 98 Edit. GRANICA, Traduction française, 462 p. 1991. ISBN 968-5015-00-7 Senge, Peter et al. 1994, “La quinta disciplina en la Práctica; estrategias y herramientas Para construir la organización abierta al aprendizaje” Edit. Granica, México, España ISBN 84-7577-393-1 Silva, Cristina y Salazar, Sonia. 2000. “La educación en el consumo del agua; una visión sistémica” Tesis de licenciatura, Bajo la dirección de Honorato Teissier, Centro de Investigación y Desarrollo de Sistemas, Facultad de Sistemas Universidad Autónoma de Coahuila, Saltillo, Coahuila, México, 2000. 105 p. Teissier, H. 1998 “La simulación en estudios de impacto ambiental”, Revista de la Federación Mexicana de Ciencias Ambientales (FEMISCA) 16 Número 36, Año 10, Mayo-Junio 1998, pp. 24 a 29. Registro en trámite a la fecha de publicación. Teissier, H., 1999. “Una metodología sistémica para problemas y proyectos ambientales y de sustentabilidad”, Conferencia presentada durante el Primer Taller Internacional de Formación Ambiental, FORAM, en la Habana, Cuba Universidad de La Habana y Universidad de Pinar del Río, Cuba. La Habana, Cuba, 1999. Páginas de Internet para consulta. Arjona Argüelles Diego y Gutiérrez Amante Guillermo, 2000. “Teorías Evolutivas para el Análisis de Cambios Económicos Sociales y Tecnológicos: Mercados de Energía”, III CONGRESO DE LA ASOCIACIÓN MEXICANA DE ECONOMÍA ENERGÉTICA ftp://sysdyn.mit.edu/ftp/sdep/papers/d-4808.pdf Choque Aspiazu Guillermo, 1998. “ingeniería de Software, Conceptos y Principios” Universidad Mayor de San Andrés. http://www.umsanet.edu.bo/docentes/gchoque/MAT426TEX.htm#Capitulo%20VIII Dugarte Gabriel. “Las Organizaciones y su Evolución” http://www.monografias.com/trabajos14/concep-organizar/concep-organizar.shtml Encuentro Internacional de Ciencias de la Computación 2004 Asociación Mexicana de Ciencias de la Computación. http://enc.smcc..org.mx/2004 ISSS, the “International Society for the System Sciences.” www.isss.org Percy Huertas Niquen, 1998. “Una Introducción a las Ciencias de la Computación” Escuela Profesional de Ingeniería de Sistemas de la Universidad Nacional de San Agustín de Arequipa. http://www.geocities.com/pilosopica/filosofica3.htm 17