El otro día, en un comentario que dejé a un análisis a una propuesta curricular de Bertrand Meyer hecho por Jorge Ubeda en su bitácora, Hacia la Cuarta Generación del Software, mencioné el modelo curricular conjunto de IEEE Computer Society (IEEE-CS) y Association on Computer Machinery (ACM), que tal vez sea el de mayor renombre y difusión. A raiz de dicho comentario, he sido consultado sobre el tema por varias personas, lo cual me impulsó a escribir este artículo.
En primer lugar, desmitifiquemos algo: en el título de este artículo escribí «Sistemas». Pues bien, tacho: está mal. Lo hice porque si hubiera titulado el presente como «Un Modelo Curricular Estándar para Computación» —por su adaptación desde la lengua de Shakespeare, «Computing»—, creo que lo leería... ¡nadie!
En general, he notado que en Iberoamérica solemos tener una visión un poco prejuiciosa de la palabra «computación», como si fuera adecuada sólo para titular los suplementos dominicales de periódicos o los cursos para niños. Pero no señores, Computación es una gran disciplina que podríamos definir como abarcativa de cualquier actividad orientada a lograr objetivos requiriendo computadoras, beneficiándose de computadoras o creando computadoras. De acuerdo al planteo del mencionado modelo curricular, se subdivide en las siguientes cinco disciplinas específicas:
- Ingeniería en Computación —aceptado por «Computer Engineering». La Ingeniería en Computación abarca el diseño y construcción de computadoras y sistemas basados en computadoras. Incluye el estudio del hardware, software, comunicaciones y la interacción entre ellos. Su curriculum se enfoca en las teorías, principios y prácticas de la Ingeniería Eléctrica tradicional y matemática, y las aplica a los problemas de diseñar computadoras y dispositivos basados en computadoras. Es decir, cosas que en general le dejamos en manos de la Ingeniería Electrónica.
- Ciencias de la Computación —aceptado por «Computer Science». Las Ciencias de la Computación expande un amplio rango de áreas, desde las bases teoréticas y algorítmicas hasta desarrollos de vanguardia en robótica, visión computacional, sistemas inteligentes y bioinformática, entre otras. Los científicos de la computación suelen ser adecuados para desafíos avanzados de programación, como los relacionados con encripción o compresión de datos, por ejemplo.
- Sistemas de Información —«Information Systems». Los especialistas en esta disciplina específica se enfocan en la integración de soluciones de tecnología de información y los procesos de negocio para satisfacer las necesidades de información de las organizaciones, facilitándoles el logro de sus objetivos en una forma efectiva y eficiente. La perspectiva de esta disciplina específica en la tecnología de información enfatiza la información y ve a la tecnología como un instrumento para generar, procesar y distribuir información.
- Tecnología de la Información —«Information Technology». Básicamente, trabaja en una línea similar a la de Sistemas de Información, sólo que hace énfasis en la tecnología y en mantener vivas en términos tecnológicos a las organizaciones.
- Ingeniería de Software —«Software Engineering». La Ingeniería de Software abarca el desarrollo y mantenimiento de sistemas de software que sean fiables, se comporten eficientemente, sean desarrollables y mantenibles, y satisfagan todos los requisitos que los clientes le hayan definido.
Aclaro, por si hiciera falta, que esta visión no es un simple capricho, sino el resultado del trabajo de un comité formado especialmente para este desarrollo por dos de las organizaciones técnico-profesionales de mayor prestigio a nivel mundial —muchas más que dos si sumamos a todas las que participaron de una u otra forma de los comités de expertos en las disciplinas específicas, como
The Association for Information Systems (AIS). Al mismo tiempo, también prestigiosas universidades como
Stanford, basan en este modelo la configuración curricular de sus programas en Computación.
Asimismo, cabe aclarar que no se limita exclusivamente a estas cinco disciplinas específicas, sino que el modelo está diseñado para que se vaya subdividiendo a medida que avance la Computación. Podrían, por ejemplo, surgir disciplinas específicas como «Ingeniería de Requisitos», «Inteligencia Computacional» o «Ingeniería en Pruebas de Software», de ser necesario.
Esta división disciplinar no es menor. Me ha tocado diseñar o ayudar a diseñar modelos de negocio aprovechando la misma. Por ejemplo, trabajar en frentes abocados a las incumbencias de disciplinas específicas: un Departamento de Consultoría trabajando con Sistemas y Tecnologías de la Información, un Departamento de Desarrollo trabajando con Ingeniería de Software y Ciencias de la Computación, o un Departamento Técnico trabajando con Ingeniería en Computación. En definitiva, si se domina esta división y se es lo suficientemente hábil en organización, se le puede sacar mucho provecho a este modelo.
Lamentablemente para mi gusto, en muchos programas en nuestra región se suele tomar el paquete completo —muchas veces con una visión cercana a la enciclopedista— y se lo engloba en la llamada «Ingeniería de Sistemas». O sea, en teoría un egresado de estos programas podría dedicarse a hacer cosas tan variadas como diseñar la arquitectura de una pieza de software, programar, hacer análisis de sistemas, instalar un sistema operativo, configurar una red, cambiar un módem que se quemó, armar los cables para conectar la red, crear un manual de organización y métodos, conducir estudios de mercado para proyectar el futuro tecnológico de la empresa y un amplio etcétera. Descabellado... En muchos casos, una titulación en «Todología Computacional» sería más representativo... Mi abuela decía que «quien mucho abarca, poco aprieta» y estoy convencido de que tenía razón.
Algunas veces me pregunto si no será un tema de mercado, pues contratar a una persona es más barato que contratar a cinco... ¿La eficiencia? Bien, gracias... Es que hay tantos «visionarios» en el mercado...
Quisiera que den opiniones y comenten experiencias en este asunto, pues creo que es un tema más que importante para debatir.