Let's assume the same consultancy implements for client A a software to analyze text data from internal communication of the company. The client B asked the same software to analyze text data from internal communication of its own company. Now the consultancy will use the same code structure 'and sequence of operations' but obviously the names will be different as well as the name of the individual functions. Something like this: For client A:

class Analyze_dataA:

     def Read_dataA:
     def Model_dataA:

For client B:

class Analyze_dataB:

     def Read_dataB:

     def Model_dataB:

Is this an infringement of copyright or intellectual property rights for the 2 companies?

  • If you are marketing the same software base package to multiple clients you may want to say that the data analysis back-end is the company product rather than the result of the contract between company and client. This lets you retain ownership of the core and just sell the customization services.
    – Ron Beyer
    Commented Oct 16, 2018 at 14:23
  • @RonBeyer indeed. It's far better for the contractor to sell a license to the client for any software provided to them, which is why software companies have adopted that model. A problem arises if a company hires a contractor to write the software such that the source code is a "work for hire," in which case the company does own the copyright.
    – phoog
    Commented Oct 16, 2018 at 15:11
  • Of course it is better give license. Just sometimes you cannot so the only thing you can is to avoid writing similar software
    – bbb
    Commented Oct 16, 2018 at 15:23

1 Answer 1


This could be a problem if the consultancy agreement contains a provision that assigns to the client any copyright in any code created by the consultant. That is why there should be no such provision.

In the absence of such a provision, the consultant owns the copyright in the code, so it would be impossible for the consultant to infringe that copyright.

Even so, copyright protects a particular expression of an idea, not the idea itself. The idea of an "analyze data" class containing a "read data" function is not itself subject to copyright protection. It could potentially be patentable as a "process," but it would fail to meet the criterion of novelty. It would also fail to meet the criterion of non-obviousness.

On the other hand, a software developer cannot (without permission) copy source code that is protected by copyright simply by changing the names. Changing the names would constitute the creation of a derivative work, and the right to create derivative works is also protected by copyright.

  • Yes that's why I asked: I interpret the 'structure of the code' as the idea behind (which is not subject to copyright) and the actual implementation code as the expression of the idea (which is an IP). If I am interpreting correctly, even with a term that assigns copyright to the client, the consultancy can safely re-implement the same structure for other clients. Am I right?
    – bbb
    Commented Oct 16, 2018 at 14:07
  • @bbb "even with a term that assigns copyright to the client, the consultancy can safely re-implement the same structure for other clients": That would be difficult to establish since the second implementation would be (at least arguably) a derivative work. The only way to establish definitively that it was not would be to have entirely different people write the software without giving them any access to the source code of the first implementation. That is because anyone who worked on the first implementation could be creating a copy of that source code from memory.
    – phoog
    Commented Oct 16, 2018 at 14:10
  • true. But then: how can you distinguish between the idea and the expression? More importantly , if someone cannot use his own memory (remembering what he did elsewhere), I can argue we are talking about expertise which is not subject to copyright. Also I think there is a 'fair-dealing' allowance that allows you to keep source code for your own study (not sure if it's true though).
    – bbb
    Commented Oct 16, 2018 at 14:36
  • @bbb all those things could be true, but that wouldn't stop client A from suing the contractor. Even if the court found in the contractor's favor, the contractor would rather not have been sued in the first place. The memory argument is fairly easy to deal with: an artist who incorporates an image of Shrek from memory into a new drawing has created a derivative work; it would be hard to argue that, and hard to argue that the same does not apply to computer code if the programmer has had access to source code of the first implementation.
    – phoog
    Commented Oct 16, 2018 at 15:05
  • @bbb Even if fair dealing allows you to keep a copy of a work for study, that doesn't mean that any derivative work created from the copy you studied is necessarily allowed because of fair dealing.
    – phoog
    Commented Oct 16, 2018 at 15:07

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .