Copyright Protection Granted To Computer Programs

Published date14 December 2020
Subject MatterIntellectual Property, Copyright
Law FirmMaravela, Popescu & Asociatii
AuthorMr Gelu Titus Maravela, Anca Băiţan and Flavia Ștefura

1. General aspects

Since the legislation1 offers no definition of a computer program, copyright protection of computer programs was subject to many studies and case-law, both on national and on international level.

This article discusses the defining elements of the computer program, such as they have emerged from the legal literature and judicial practice, the difference between configuration and customization of computer programs, as well as the case-law generated by the confusion of these notions.

2. Definition of computer programs

The World Intellectual Property Organization defines2 computer programs as "a set of instructions capable, when incorporated in a machine - readable medium, of causing a machine having information-processing capabilities to indicate, perform or achieve a particular function, task or result".

Doctrine3 describes computer programs as "a set of instructions which, codified and transposed on a medium legible by the machine following these instructions, allow some results to be obtained".

From a technical perspective4, computer programs are also defined as "the representation of an algorithm in a programming language" and other authors5 define the same notion as a set of instructions capable (when they are inserted in a medium exploitable by the computer) to allow a machine with information management functionalities to indicate, to execute or to produce a certain function, a task or a certain result".

3. The defining elements of a computer program

Considering the premise of the above-mentioned definitions, the steps for creating a fully functional computer program means going through the following sequence of phases:

  1. creating the conceptual preparatory material;
  2. creating the source-code (editing or writing the program in specific programming language, understood by specialists);
  3. creating the object-code (translating the program from source-code in a language intelligible to the machine);
  4. creating the user manual(s) (the auxiliary and connected documentation).

The source-code represents an original code of the computer program written in programming language than can be read and understood by humans, especially by those persons specialized in informatics6. The source-code is independent of the platform so that it does not refer to a certain type of computer (processor) or operating system. The access to the source-code allows understanding of the techniques and the programming technology7.

The object-code is expressed in binary form, meaning a series of zeroes and ones which the computer processor can understand, and which cannot be understood by humans until it is transformed in source-code.8 The object-code is the compilation of the source-code in a language understood by the computer, strings of binary or hexadecimal numbers9, that cannot be understood by humans, obtained with the aid of a compiler, executing a lexical and syntax analysis of the source-code, after which it generates and optimizes the object-code10.

Computer programs are traditionally divided into operating systems, drivers and application programs11. An operating system is a program serving the hardware and managing the resources that allow the running of application programs. Application programs are dedicated to interacting with end users and allow the execution of very diverse tasks.

A part of these elements, such as the formulas included in the source-code, the implemented algorithms, the architecture of the information system or the database structure may be protected by both copyright and trade secret, as long as they have economic value12 and retains its secret character.

4. Configuration versus customization

In informatics13, configuring some functions, instruments, fields, values, functionalities and options offered to the user by the computer program's interface, in order to respond to the user's needs, and the customization of the computer program by modifying the source-code are two notions that, even if they have similar names, have totally different meanings.

On the one hand, configuration of the computer program is based on the use of the...

To continue reading

Request your trial

VLEX uses login cookies to provide you with a better browsing experience. If you click on 'Accept' or continue browsing this site we consider that you accept our cookie policy. ACCEPT