jueves, 2 de mayo de 2013

¿Cómo hay que regular la Ingeniería Informática?

Estos días estamos viviendo otra vuelta más de tuerca a la Ingeniería Informática. Así que creo que ha llegado la hora de exponer mi punto de vista.

Espero que no contente totalmente a nadie. Ni a los partidarios. Ni a los detractores. Si no, es que algo habré hecho mal.

Por supuesto, esta es mi personal visión de las cosas.

NOTA: Es este texto el término "Ingeniero Informático" incluye a las profesiones de Ingeniero en Informática e Ingeniero Técnico en Informática así como a todos los títulos universitarios vinculados a ellos.


Pedir la regulación de la Ingeniería Informática ¿no es corporativismo?

Si yo pensase que se debe pedir la regulación de la Ingeniería Informática para defender los derechos de los profesionales de la Ingeniería Informática no me atrevería a decir nada. Nunca he sido partidario de los privilegios y no voy a empezar ahora.


Pero entoces ¿Qué razones hay para regular una profesión?

Claramente solamente veo una razón la defensa del interés general. Yo quiero que exista una regulación de la profesión de Ingeniero de Caminos porque no quiero que los puentes se caigan. Así mismo, yo quiero que exista una regulación de la profesión de médico porque mi salud y la de mis conciudadanos depende de ello.


¿y cómo identificamos el interés general?

Pues a falta de otras referencia a mi se me ocurre que una buena fuente es la Constitución Española. El Título I define los derechos y deberes fundamentales. Y ese creo que debe ser el marco de referencia. Volveré a ello más tarde.


Entonces ¿No debería requerirse la firma de un Ingeniero Informático en todos los proyectos Informáticos?

Pues de ninguna manera. Yo creo que solamente debe regularse la realización de actividades que afecten al interés general.


¿Y no debemos exigir un título concreto para programar?

Pues eso está en la libertad de cada empleador. Pero no se me ocurre por qué habría que pedir tal cosa.


¿Qué modelo de regulación deberíamos tener?

Básicamente, según yo lo veo hay dos modelos de regulación de acceso a una profesión: el acceso basado en titulación y el acceso basado en acreditación.

El modelo basado en titulación es el que tenemos en España. Estar en posesión de un título da acceso directo a una profesión regulada. Uno va con su título universitario de Arquitecto y se inscribe en el Colegio de Arquitectos.

El modelo basado en acreditación se usa en algunos países anglosajones. Este modelo separa totalmente la titulación universitaria de la profesión. En este modelo son las sociedades profesionales las que evalúan que un profesional tiene la capacidad para ejercer una profesión regulada, independientemente de la titulación. Típicamente uno va a la universidad, ejerce bajo la supervisión de un profesional acreditado durante un periodo (uno o dos años en muchos casos) y luego realiza el examen en la sociedad profesional para obtener la acreditación. Como anécdota os diré que una vez conocí a una persona que era "Geólogo de formación e Ingeniero de Minas de profesión".

Un efecto adicional que tiene el modelo basado en acreditación es que la sociedad profesional se convierte de forma automática en un control de calidad externo de la formación que las universidades dan a sus titulados.

A estas alturas el lector habrá adivinado que modelo me gusta más.


Pero entonces volviendo a la Ingeniería Informática ¿Qué hay que regular?

Dije antes que únicamente aquello que afecte al interés general. Bien empecemos por la constitución como marco de referencia e intentmos ver algunso casos concretos:


Artículo 15: Derecho a la vida

Dice este artículo que "Todos tienen derecho a la vida y a la integridad física y moral". Bien, interpreto que esta es la razón que aconseja la regulación de las profesiones que pueden poner en riesgo la vida de las personas.

Bien revisemos algunos ejemplos de sistemas informáticos, para ver si afectan a esto:

Caso 1: Sistemas de control de tráfico. Hace años participé en el diseño y construcción del sistema de control del carril BUS-VAO en la entrada a Madrid por la A-6. Un error en este sistema puede provocar que dos vehículos se encuentren de frente sin posibilidad de maniobra. En el pero de los casos esto puede dar lugar a accidentes de tráfico.

Caso 2: Equipamiento hospitalario. Hace menos años diseñé y desarrollé una parte de un equipo de tomografía por rayos X (comunmente conocidos como TAC). Bien un error en el software de este tipo de máquinas puede provocar una dosis excesiva de rayos X a una persona. Y todos sabemos el efecto que tiene sobre la salud.

Caso 3: Tráfico aéreo. Recientemente se ha sabido que fallos de seguridad informática podrían permitir que una aplicación informática podría permitir desviar la ruta de un avión. Sin comentarios.


Artículo 18: Informática y derecho a la intimidad

Dice el artículo 18.1 que "Se garantiza el derecho al honor, a la intimidad personal y familiar y a la propia imagen". Y el artículo 18.4 insiste en que "La ley limitará el uso de la informática para garantizar el honor y la intimidad personal y familiar de los ciudadanos y el pleno ejercicio de sus derechos".

En la época en las que nuestros datos son almacenados y tratados por múltiples sistemas informáticos uno se hace múltiples preguntas.
  • ¿Quién garantiza que los datos que almacena la agencia tributaria se almacenan y tratan con las debidas garantías?
  • ¿Quién garantiza que los datos que de nosotros tiene la seguridad social (como nuestro historial médico) se custodia con las debidas garantías? ¿Y los de los hospitales privados?
  • ¿Quién garantiza que los datos que tiene la administración de trabajo no se revelarán a nadie?
  • ¿Y los datos que tienen nuestros empleadores?
  • ¿Y los bancos?
  • ¿Y las compañías de seguros?
En definitiva ¿Se está garantizando adecuadamente nuestro derecho a la intimidad?


Artículo 30: Derecho de propiedad

Dice aquí que "Se reconoce el derecho a la propiedad privada y a la herencia."

Este es un derecho tremendamente complejo y con muchas derivaciones. Pero me gustaría hacer alguna consideración.

He perticipado en la puesta en marcha de servicios de alguna entidad bancaria. En este caso, un error en el desarrollo o en la operación y mantenimiento del sistema informático, puede dar lugar a graves pérdidas para la entidado así como perjuicios para los clientes.


Y ¿qué pasa cuando la un problema llega a los tribunales?


Un caso de litigio laboral

Supongamos un caso concreto y muy parecido a uno real que conozco de primera mano. Una empresa despide a un empleado aduciendo que su baja productividad se debe a que hace uso de los medios informáticos de la empresa para fines personales. Como prueba, presenta un listado del registro de actividad del router de acceso a internet en formato PDF (cuando queráis generáis uno así con el Word). Así mismo presenta un informe pericial realizado por un Ingeniero Técnico Industrial Mecánico (disciplina, a la que por otra parte respeto profundamente).

Mi pregunta es ¿debe el juez aceptar esto como prueba? Seguro que al lector se le ocurren más preguntas al respecto de este caso.


Otro caso distinto

Supongamos ahora que los empleados del departamento de informática de una empresa se marchan de la misma. Supongamos que se llevan una copia del código fuente de la aplicación estrella de la empresa al que realizan modificaciones y lo comercializan bajo otro nombre.

Y yo me pregunto ¿quién está cualificado para determinar si se ha producido copia del producto?


En conclusión

Visto lo visto, si como parece el Gobierno decido no regular la profesión de Ingeniero en Informática estará cometiendo un grave error, no porque decida dejar en una situación irregular a los Ingenieros en Informática de este país. No será por eso. Será porque no está defendiendo el interés general.

Y hasta donde yo se, es obligación del Gobierno de la Nación defender el interés general de sus ciudadanos.

7 comentarios:

  1. Aunque estoy de acuerdo con el fondo del artículo no dejo de hacerme la pregunta de si realmente es necesaria la firma de un ingeniero en informática en los casos propuestos.

    El ejemplo del Ingeniero de Caminos y el puente es bastante típico. Sin embargo dudo que su participación en un proyecto ofrezca alguna garantía para el interés general porque no es su firma lo que hace que los puentes no se caigan, sino la correcta organización del equipo de trabajo, distribuyendo adecuadamente las responsabilidades, haciendo que se hagan las comprobaciones adecuadas sobre los cálculos o confiando los análisis de los materiales utilizados a un laboratorio externo de confianza. Es decir, que seguimos teniendo la imagen del ingeniero que se enfrenta por si solo a un proyecto de envergadura, cuando en la mayor parte de los casos se trabaja en equipo. Así que me pregunto por qué tiene que ser un Ingeniero de Caminos el que haga este trabajo, cuando podría ser cualquier otro tipo de Ingeniero, un Arquitecto o simplemente alguien convenientemente formando en la gestión de proyectos; siempre que se cuente con un seguro de responsabilidad civil adecuado.

    Lo mismo creo que ocurre en el campo de la Informática. ¿Es la firma de un Ingeniero Informático lo que nos da las garantías? ¿o el que se hayan realizado los test adecuados, preferiblemente por parte de un equipo independiente? Yo que reconozco las dificultades del desarrollo de software, creo que es lo segundo.

    Por ejemplo, sobre el tema de derribar aviones la Agencia Federal de Aviación ya ha desmentido que tal cosa pueda ocurrir (http://www.theinquirer.es/2013/04/13/la-agencia-federal-de-la-aviacion-desmiente-que-pueda-derribarse-un-avion-con-una-app-de-android.html) bajo el argumento de que el simulador utilizado no opera igual que el hardware certificado para volar. Lo cierto es que el hardware y el software para volar tiene que cumplir con ciertos requisitos y que son certificados por laboratorios donde se realizan las pruebas adecuadas. Esa es la garantía de que un sistema es adecuado para un avión, y no el que su desarrollo haya sido dirigido o realizado por personas de una profesión concreta.

    Siguiendo con los otros casos que se comentan en el artículo, creo que detrás de los sistemas informáticos de las administraciones públicas deben haber ingenieros informáticos. Y estos deben hacer su trabajo estableciendo los requisitos pertinentes y examinando en detalle el trabajo de las empresas a las que se subcontratan los trabajos, ya sea por si mismo o haciendo uso de una auditoría independiente. Ahora bien ¿por qué esas empresas van a tener que tener en su plantilla a alguien con un profesión particular? ¿no se protege los suficiente el interés general con la supervisión que he comentado por parte de un funcionario?

    Por el lado del sector privado aun lo veo más claro. Si se fugan datos o si el software bancario comete errores, es un problema de la empresa, que debería responder haciendo frente a las multas adecuadas. Para evitarlo, ya se preocuparan por su bien de contratar a personas con la formación adecuada sin que el gobierno tenga que imponer ningún tipo de restricción.

    Finalmente, en el tema judicial siempre he creído que las partes deben poder llamar al experto que prefieran, y que sean los tribunales lo que decidan a que testimonio dan más credibilidad en función del currículum probado de cada uno.

    Así que ¿realmente es necesario proteger más el interés general?

    ResponderEliminar
  2. Legalmente, la firma del ingeniero de puertos canales y caminos no garantiza que el puente no se caiga, lo que garantiza es que la persona que ha diseñado dicho puente tiene la cualificación para hacerlo, y por ello,en principio que el puente no se va a caer, y si el puente se cae, y se mueren 3 personas ( o las que sean) ya sabemos a quién buscar, al señor/a que firmó el proyecto. En definitiva, aseguramiento de la calidad, a veces para no morir, otras para no arruinarse, y un largo etc.

    Si falla algún tipo de software relacionado con algún sistema crítico, y hay consecuencias "graves" (quizá no la muerte, pero estamos viendo a gente suicidarse porque le embargan la casa, que no harán si les revientan la cuenta bancaria..) nadie ha firmado, nadie es responsable, ancha es castilla... seguimos haciendo proyectos de "mierda" (con perdón), porque si fallan ¿que mas da?
    (aunque no mates a nadie, aunque simplemente pierdas una cantidad ingente de dinero)

    Sistemas críticos aparte, que parecen algo un poco esotérico (aunque ya vemos que tampoco demasiado) seguridad informática. Yo creo que cualquier persona quiere tener a alguien con garantía de cualificación detrás de sistemas de seguridad que guarden datos personales, bancarios, historial médico, correos electrónicos y un largo etc. y si no, preguntad por ahí....

    Respecto a lo que se dice arriba: "¿por qué esas empresas van a tener que tener en su plantilla a alguien con un profesión particular?", y entonces por qué van a a tener que tener a ing. mecánicos, eléctricos etc. si luego viene alguien autorizado que hace una auditoría y ya está, ¿no?
    Respecto a lo que dice del sector privado: "es un problema de la empresa, que debería responder haciendo frente a las multas adecuadas." Pues lo mismo para el resto de ingenieros, ¿no?

    PD. Todos los países en Europa que tiene regulada telecomunicaciones, tienen regulada la informática (quiero decir con esto que normalmente se regula el sector de las TIC, pero regular solo medio es un poco absurdo, ¿no?), los que no tienen reguladas NINGUNA de las 2 (Francia, Alemania...) tienen un monumental sistema de certificaciones. Y diréis, y por qué tenemos que ser iguales que ellos... No tenemos por qué, pero a la vista de los acontecimientos (crisis etc.) parece que saben mejor que nosotros lo que se hacen...
    Lo que si es verdad es que somos el único país de Europa que tiene regulada solo 1 de las 2. Es que si hubiese alguien mas que hiciese esto, pues vale, pero coño que somos los únicos....

    Hablando del rey de Roma, ¿que sistemas críticos proyecta un ing. de telecuminaciones, tales que requieran firma porque "alguien puede morir"? (que parece que solo se requiere firma para eso)

    ResponderEliminar
  3. Estás en un error:

    Hay una enorme diferencia entre los cálculos estructurales para que un puente no se caiga y la calidad de la actividad de un informático (programar, entre otras).

    En el primer caso, hablamos de una parte de la ingeniería que es una ciencia (los calculos de estructuras son ciertos ahora y hace 50 años).

    En el segundo caso hablaríamos de metodologías de desarrollo y testeo de software. Una actividad en continuo cambio, reciclaje y de elevada subjetivad. También podemos hablar de restricciones de reutilización de software de terceros, o de aumentar el papeleo que firmar. Nada que me convenza.

    Si alguien quiere convencerme de que conceder competencias exclusivas a los informáticos es positivo, primero debería darme algún ejemplo de cómo se puede hacer tal cosa. Mientras, no me pienso colegiar, ya que estoy en contra.

    ResponderEliminar
    Respuestas
    1. Muchas gracias por tu comentario. No obstante en mi opinión reducir la Ingeniería Informática a las metodologías de desarrollo de software es ciertamente miope.

      Te pondré dos ejemplos de lo que pides:
      + Ejemplo 1: Realización de auditorías de cumplimiento de la legislación de protección de datos.
      + Ejemplo 2: Validación y verificación de software crítico del que dependan la vida de las personas.

      Eliminar
    2. José Daniel, quizás la expresión "regulación de la Ingeniería Informática" es demasiado amplia, así que tú solo estás precisando cómo ir al meollo: la supervisión y peritaje.
      Por ejemplo, no es necesario tener una licenciatura en Ciencia y Tecnología de los Alimentos para hacer panes o envasar cardillos en conserva (sólo el carnet de Manipulador de Alimentos), pero sí para llevar a cabo las inspecciones de Sanidad.

      Eliminar
    3. Gracias por tu comentario.

      Creo que el término regulación aquí es adecuado porque hasta donde yo puedo ver estas son las actividades que deben regularse.

      Eliminar
  4. Tal y como dices...
    En el primer caso, hablamos de una parte de la ingeniería que es una ciencia (los calculos de estructuras son ciertos ahora y hace 50 años).
    Las grandes catedrales siguen en pie sin ningun "ingeniero titulado" que las calculara. Grandes obras de los romanos o griegos siguen en pie. Grandes edificios que se pueden ver en Egipto siguen en pie (con muchos mas años encima) sin necesitar ningun "ingeniero titulado"..
    ¿Para que, me pregunto necesitamos entonces ningun ingeniero de caminos o de lo que sea?
    Si cualquiera que se lea un libro de informatica puede trabajar de... entonces basta con leer un manual de medicina y lo mismo ¿no?

    ResponderEliminar