08-16-2021 09:22 AM
When negotiating for machine control applications we come across the request from the clients to supply the debugged source code as part of deliverables. The application is developed with a LV Full Development System licensed to my company.
There are two aspects :
Cost aspect to cover the proprietary software - is there any guideline for this ? ;
Legal angle - if it violates any agreement between me and NI ?
Apart from above I would also like to know if its a generally agreed practice to part with source code ?
Solved! Go to Solution.
08-16-2021 09:46 AM
@MogaRaghu wrote:
Legal angle - if it violates any agreement between me and NI ?
Nope. Not an issue here unless NI specifically made software for you with a clause that you couldn't resell it (extremely unlikely).
@MogaRaghu wrote:
Apart from above I would also like to know if its a generally agreed practice to part with source code ?
Some companies do, others don't. Typically, contractors are just supporting a main team, so the code will belong to the company that hired them. Others sell a product, so the source code is owned by the developing company.
As far as cost, I'll leave that up to your management and sales people.
08-16-2021 11:31 AM
Keep in mind that ownership of source code implies responsibility for bug fixes, maintenance, and future feature additions.
When we have suppliers do software work for our custom test fixtures, the source code is always one of the deliverables. We have software requirements and an acceptance test process that's part of the formal transfer of ownership. Once accepted, the source code is ours, as is the responsibility for maintenance.
The more a piece of software is custom and one-off, the more appealing it'll probably be to hand over source code responsibility to the customer. Besides, even if they decide in the future that they want new features or other enhancements, there's a good chance they'll come to you first since you'd be the experts in that code base.
-Kevin P
08-16-2021 12:02 PM - edited 08-16-2021 12:04 PM
Another thing to consider: Do they want exclusive ownership or only the right to look at the source code and make modifications (or let someone make modifications) to it later.
In the first case you are not legally entitled to use the libraries in there for any other project and will need to redevelop them from scratch. In the second case they only get a non exclusive right to the sources but you can continue to use the libraries for other projects.
The two options obviously have a significant price difference as you have to account for the development time of every single VI in there and start anew from scratch for your next project. And it must be made clear in the license agreement or contract you make with that customer to avoid later confusion and misunderstandings.
We sometimes have customers who require exclusive ownership of source code we develop for them. It means that every single VI (and possibly additional software) for them needs to be developed from scratch and that has significant implications for both the required development time as well as the cost.
Most customers when confronted with that price tag, will quickly backtrack from requiring exclusive property right on the source code.
08-16-2021 12:28 PM
rolfk made an important distinction which I treated too casually. In our customer role, we don't ask for sole ownership either, we just get full non-exclusive rights to use and modify but not to resell. The supplier retains rights to re-use, modify, and resell.
-Kevin P
08-16-2021 12:31 PM - edited 08-16-2021 12:34 PM
Your company owns the source code and the executable programs compiled with it.
You can charge customers for both.
You can not charge for the LabVIEW runtime engine or any other NI library that is required to run your executable beyond a reasonable materials fee for distribution media.
08-18-2021 06:24 AM
Thanks to all who added their viewpoints. Helps a lot !
@rolfk made a fine distinction between exclusive and non-exclusive ownership. Got it.