El proyecto técnico informático y la lex artis en pleitos civiles por defectos de software

El proyecto técnico informático y la  lex artis en pleitos civiles por defectos de software

El proyecto técnico informático forma parte de la lex artis de la ingeniería informática, y tiene una importancia capital en los pleitos civiles por defectos de software. Con esta documentación el perito informático puede dilucidar si existen realmente defectos en el software y si los mismos se pueden imputar a un mal diseño, a una mala construcción o a una configuración e instalación defectuosa.

¿Qué es un proyecto técnico informático?

Un proyecto técnico informático es un conjunto de planos, esquemas, y textos explicativos, utilizados para definir las características de un producto informático (hardware y/o software), su fabricación y desarrollo, su instalación y puesta en marcha y/o las condiciones de realización de dicho proyecto.

El objetivo del proyecto técnico informático es estudiar e investigar si es o no posible de realizar la tarea propuesta, desde el punto de vista técnico, funcional y normativo, así como su coste y viabilidad. Todas estas tareas son exigibles según la lex artis de la ingeniería informática.

diagramas UML proyecto técnico

¿Qué contiene un proyecto técnico informático?

Todo proyecto técnico informático que se precie tienen la siguiente estructura:

  • Memoria del Proyecto: Es el documento que constituye la columna vertebral  del proyecto, siendo el apartado descriptivo y explicativo del mismo. En él se expone cual es el objeto del proyecto, a quien se destina o dónde se instalará. Se indican los antecedentes, especificaciones y estudios previos, las hipótesis de las que se parte y la selección de estas, así como las conclusiones y resultados definitivos. También incluye los procesos de transporte, montaje y puesta en marcha así como la identificación y firma del ingeniero informático proyectista. La Memoria deberá ser claramente comprensible, no sólo por profesionales especialistas sino por terceros y, muy especialmente, por el cliente.
  • Anexos al Proyecto: Incluye todos los documentos que desarrollan, justifican o aclaran apartados específicos de la memoria u otros documentos básicos del proyecto.
  • Planos: Tienen como misión, junto con la memoria, definir de forma unívoca el objeto del proyecto, y son esenciales para su materialización.
  • Pliego de condiciones: Su objeto consiste en establecer las condiciones técnicas, económicas, administrativas y legales para que el objeto del proyecto pueda materializarse en las condiciones especificadas, evitando posibles interpretaciones diferentes de las deseadas.
  • Estado de mediciones: Tiene como misión definir y determinar las unidades de cada partida o unidad de obra que configuran la totalidad del producto, obra, instalación, servicio o software objeto del proyecto.
  • Presupuesto del Proyecto: Tiene como misión determinar el coste económico de materializar el objeto del proyecto. Se basará en el estado de mediciones y seguirá su misma ordenación.
  • Estudios con entidad propia: Tienen como misión incluir los documentos requeridos por exigencias legales, si las hubiera.

Por todo ello esta documentación resulta fundamental para el perito informático a la hora de esclarecer qué ha sucedido con un programa informático y forma parte de la «lex artis» de la ingeniería informática.

¿Qué es la lex artis de la ingeniería informática?

La lex artis de la ingeniería informática es el conjunto de criterios valorativos que tienen por objeto calibrar la diligencia exigible a un ingeniero informático o, por extensión, a un proveedor de productos o servicios informáticos. Así, el perito informático deberá valorar con estas reglas si la actuación profesional ha sido suficientemente diligente o no, aspecto fundamental en los pleitos civiles por defectos de software.

La lex artis de la ingeniería informática viene determinada por dos conceptos clave: la deontología profesional y las expectativas razonables del receptor de servicios de informática.

lex artis de la ingeniería informática

Deontología en ingeniería informática

La deontología en ingeniería informática constituye un código ético que trata de los deberes y principios que afectan a la profesión. Estos principios determinan un ejercicio diligante de la misma, y son parte fundamental de la lex artis de la ingeniería informática.

Algunos preceptos de aplicación a pleitos civiles por defectos de software son:

  • «Deberá buscarse la solución tecnológica más adecuada a las necesidades funcionales y presupuestarias del cliente»
  • «El profesional deberá evitar la imposición de tecnología o técnicas de trabajo que no se correspondan con las necesidades funcionales y presupuestarias del cliente o que puedan colisionar con el interés público.»
  • «Primará la solidez de la fundamentación objetiva y científica de sus actuaciones profesionales.»
  • «No aceptar mayor número de encargos, ni cargos, que aquellos que pueda atender debidamente, de forma diligente y profesional.»
  • «Asegurar que se está cualificado para cualquier proyecto en el que se trabaje o que se proponga trabajar.»
  • «Dar el visto bueno a las actuaciones profesionales sólo si se tiene fundada creencia de que cumplen las especificaciones establecidas, la legislación vigente y que no son susceptibles de atentar contra la seguridad física y/o económica de las personas físicas o jurídicas, ni la integridad medioambiental.»
  • «Definir con veracidad las especificaciones del producto de su actividad profesional, ciñéndose a la realidad y evitando falsas expectativas.»
  • «Definir con carácter previo al ejercicio de la actividad profesional la calidad del producto resultante de dicha actividad, impulsar su consecución con un coste aceptable y en un plazo razonable, garantizando que quedan claros los compromisos significativos al respecto, que el receptor de los productos o servicios los comprende y los acepta, y que están disponibles para consideración por el usuario y el público en general.»
  • «Realizar estimaciones realistas de plazos, personal, y resultados de la actuación profesional, determinando los aspectos de incertidumbre que podrían desviar dichas estimaciones.»
  • «Al finalizar la actividad, deberá proporcionar la documentación necesaria para que el receptor de los productos o servicios pueda servirse de ellos y, en su caso, modificarlos o adaptarlos según la normativa vigente. Dicha documentación deberá ser comprensible para el usuario de la misma.»
  • «En su caso, garantizar la viabilidad del mantenimiento posterior del producto resultante de la actividad profesional por terceros debidamente cualificados, documentándolo de forma adecuada y comprensible a tal fin.»
Expectativas razonables del receptor de servicios de informática

Expectativas razonables del receptor de servicios de informática

De acuerdo con los usos y costumbres que se dan en el sector TIC para este tipo de servicios, se dan una serie de expectativas razonables en el receptor de servicios de informática que se prestan en España, a saber:

  • Con anterioridad a la labor de programación, se deben analizar y establecer formalmente y de forma exhaustiva los requisitos técnicos, características y funcionales del sistema informático a desarrollar, así como el diseño de su interfaz gráfica, que deberán ser aprobados por el cliente. Esta labor se realiza tanto para determinar correctamente los costes temporales y económicos derivados de su construcción, como para no incurrir en el fenómeno de reworking: realización de la misma tarea varias veces por su falta de adecuación a lo requerido, definiendo características y funcionalidades sobre la marcha de forma improvisada.
  • Debe existir una persona responsable del proyecto y debidamente cualificada para asumir su dirección, imputándosele la responsabilidad en caso de algún tipo de problema.
  • El proveedor de servicios debe contar con un seguro de responsabilidad civil acorde a las características del proyecto asumido, que cubra suficientemente posibles daños derivados de la prestación de servicios.
  • Que se ha elaborado el debido proyecto técnico, indispensable tanto para el correcto devenir de un proyecto de ingeniería informática de un sistema informático como para el posterior mantenimiento, adaptación y/o ampliación del sistema informático que describe.
  • Con carácter previo a la entrega del sistema informático se ha comprobado que éste cumple con todos los requisitos funcionales y técnicos establecidos previamente.
  • La entrega del producto desarrollado consistirá tanto en el código fuente del producto como en los archivos instalables de dicho producto, documento con especificaciones técnicas y requisitos mínimos de funcionamiento y un manual de uso e instalación.

Estas expectativas son análogas a los servicios prestados en otras ramas de ingeniería, como puedan ser la ingeniería industrial o la arquitectura, para el diseño y despliegue de infraestructuras. Pese a que un sistema informático es intangible, en todo o en parte, en contraposición a una nave industrial o a una vivienda, constituye una infraestructura, siendo razonables para todos estos casos unas expectativas similares por parte del receptor de dicha infraestructura.

Estos seis puntos se dan por asumidos tácitamente por cualquier proveedor de servicios de desarrollo de software profesional en el sector TIC, independientemente de que figuren en un contrato de servicios o no.

¿Por qué es tan importante el proyecto técnico informático en pleitos civiles por defectos de software?

El proyecto técnico informático resulta indispensable para probar o refutar si existen defectos en el software, objeto principal de controversia en los pleitos civiles por defectos de software.

Constituye un error muy común auditar el código informático que compone el software, por inexistencia del citado proyecto técnico. ¿Se imaginan estudiar ladrillo a ladrillo si un edificio está bien construido? ¿Se imaginan explicándoselo a alguien que desconoce completamente como se edifica un edificio?

Como en otros campos de ingeniería, el proyecto técnico informático lo utilizan los peritos para comparar lo entregado al reclamante con lo proyectado y contratado, pudiendo depurar responsabilidades de los distintos profesionales intervinientes en caso necesario.

Pleitos civiles por fallos de software

Los defectos de software se originan por:

Fallos de diseño del software

El diseño de software es el proceso de concepción y planificación de una herramienta software, dadas unas necesidades a cubrir. El diseño del software, junto con otros aspectos que determinan su viabilidad, se recogen en el proyecto técnico.

Un fallo de diseño de software provoca que esas necesidades no se cubran o se hagan a un mayor coste, que puede suponer su inviabilidad. También aumenta la probabilidad de que se den fallos de desarrollo y construcción de ese software.

La mayoría de fallos de diseño de software se originan en la total ausencia de un proyecto técnico y de un diseño propiamente dicho.

Fallos en el desarrollo y construcción del software

El desarrollo de software consiste en la implementación y fabricación de un programa informático, dado un diseño y requisitos previos que guíen dicha labor. Los fallos en el desarrollo y construcción de software suelen provocar un encarecimiento exponencial de los costes iniciales previstos. Muchos de ellos están originados en la improvisación provocada por una total carencia de diseño previo.

Los fallos de desarrollo de software provocan varios efectos sumamente dañinos, entre los que destacan un aumento en los tiempos de entrega y sobrecostes asociados, funcionalidad cubierta de forma deficiente, bajo rendimiento de la infraestructura e incluso que se vulneren las leyes de aplicación.

Fallos de configuración y puesta en marcha

Los fallos de configuración y puesta en marcha consisten en una deficitaria planificación y despliegue del software contratado. Su origen suele estar en la total falta de documentación entregada al cliente, lo que le impide a éste conocer los requisitos de la infraestructura y sus condiciones óptimas de operación.

Este tipo de fallos termina provocando pérdidas económicas por un mal o nulo funcionamiento del programa informático que deriva en parálisis corporativa, sobrecostes asociados a una mayor necesidad de hardware o un mantenimiento a lo largo del tiempo excesivamente caro y complejo, que provoca que la vida del software sea mucho más corta, y por tanto menos rentable.

¿Por qué no es suficiente el examen del código del software?

Los peritos informáticos poco avezados en pleitos civiles por defectos de software suelen incurrir en el error de auditar el código fuente del software. Este código puede estar compuesto por millones de líneas de código en lenguaje interpretable por una máquina, y es prácticamente imposible auditarlo en sistemas informáticos complejos.

Aún consiguiendo auditar el código del software, lo que resulte no nos permitirá discernir en nuestro peritaje informático si, efectivamente, lo proyectado tenía ese objetivo concreto o se ha entregado algo con características y funcionalidades distintas.

Además, es un signo de muy escasa diligencia que únicamente se entregue al cliente el código del software, sin mediar documento alguno sobre cómo usarlo, operarlo o sus características. Estas omisiones son susceptibles incluso de impedir el ejercicio de la propiedad intelectual sobre el software adquirido, o contar con otro proveedor de servicios distinto en el futuro, lo que contraviene frontalmente los principios de la lex artis de la ingeniería informática, y debe recogerse en el informe pericial informático.

¿Se imaginan a un arquitecto explicándole a un juez cómo está edificada una vivienda ladrillo a ladrillo?

Scroll al inicio