OPINIÓN DE EXPERTOS EN SOFTWARE. USO ILEGAL DO CÓDIGO FONTE

experto en software

Encárgase un informe experto en software. Determina se un antigo empregado utilizara o código fonte para producir un produto similar para outra empresa. O informe realizouse a petición da Fiscalía .

 

Base documental:

  • Estudo da documentación presentada, incluíndo o informe policial .
  • Análise do disco duro do acusado .
  • Comparación do código fonte , coas versións do mesmo na empresa e con outras novidades en curso.
  • Busca outras probas no disco duro, como código compilado, documentos enviados a terceiros relacionados co tema, inspección dos correos electrónicos enviados/recibidos, etc.

 

Partes do experto

O software controlaba dúas máquinas ferramenta. Tiña unha forte interacción co hardware e programación de baixo nivel. A tarefa era complexa con desenvolvementos de máis de 80.000 liñas de código. Codificouse no Visual Basic de Microsoft .

Para saber se se produciu plaxio no software, realizáronse as seguintes tarefas:

Clonación de dúas máquinas virtuais con ambas versións

Clonáronse en máquinas virtuais que emulaban o comportamento das máquinas/ferramentas controladas (entorno de proba). O mesmo software funcionou neles que na máquina-ferramenta. Deste xeito, podería emular o seu comportamento nun PC.

Estudo de dispositivos controlados por software

Tamén se compararon as dúas máquinas controladas. Atopáronse semellanzas entre eles, xa que tiñan unha funcionalidade similar, polo que se estudaron as coincidencias para saber ata que punto forzaban unha coincidencia no software.

Comparación estatística

A nivel estatístico, fíxose un pronunciamento sobre as liñas de código que compoñían ambas as dúas versións e a súa estruturación. O obxectivo era identificar patróns comúns e descubrir se houbo un cambio no estilo de programación e as pautas.

Busca de nomes comúns

Comparáronse os nomes de funcións, procedementos e definicións na procura de coincidencias. Comparáronse todos os nomes coincidentes.

Comparación da estruturación do software

O software estruturouse en tres capas: Gráficos/Lóxica/interacción co hardware. Seguiu parcialmente o paradigma MVC. Comparouse a estrutura de ambos os códigos para determinar as partes plaxiadas.

Comparación da interface gráfica

Documentar as semellanzas na interface gráfica. Nalgúns aspectos, os parámetros recollidos pola interface gráfica non podían diferir. Estudar como foi implementado. Era un modelo de visión común a ambos proxectos.

Estudo de documentación

Estúdase toda a documentación do expediente xudicial: Informe policial, denuncia e contestación, para atopar as bases e claves do procedemento.

Opinión sobre as funcionalidades ou partes comúns do software

Ditouse sentenza sobre todas as coincidencias e o motivo das mesmas. Unha coincidencia non indica necesariamente que se produciu plaxio. Dúas funcións poden ser iguais:

  • Ao formar parte dunha biblioteca externa importada
  • Ao implementar o mesmo algoritmo de uso e coñecemento común
  • Sendo implementacións rutineiras ou incluso xeradas automaticamente (getters/setters, interfaces, etc.)

 

Resultados obtidos:

O informe aclarou:

  • Que partes do código se reutilizaron.
  • O posible beneficio ilexítimo coa reutilización do código.
  • A existencia da mala fe.
  • Se a reutilización de metodoloxías alegadas pola empresa era sancionable, ou podía quedar dentro do habitual.