Legal Aspects of Software Engineering
CS 5150
•
How to resolve widely different work estimates?
2
CS 5150
•
Almost everyone has a group
•
... if you do not, I can help you join an existing group
•
The feasibility study and plan is due in just under 2 weeks
3
•
Software exists in a complex legal framework
•
Every software developer should be aware of some parts of that framework
CS 5150
•
Project decision makers usually consult with lawyers
•
If you’re in doubt about the legal ramifications of a decision, always talk to a lawyer first
4
CS 5150
•
Jurisdiction (local, national, international)
•
Intellectual property (copyright, patent, trademark, trade secrets)
•
Contracts and licences
•
Privacy and security
•
Employment
•
Free speech and its limitations
5
CS 5150
•
Lots of legal information accessible on the web now (e.g. http://www.law.cornell.edu
/)
•
Reading the actual legal text can be enlightening
•
Do use your own legal interpretations to make decisions that could affect your team, clients or users in important ways
•
Court decisions form a complex web of interpretations of sometimes contradictory laws
•
Also, do not place much stock in free advice
6
CS 5150
•
Laws and interpretations adapt slowly to changing technologies
•
Most lawyers, judges and lawmakers have little technical background (with some exceptions in e.g. Silicon Valley)
•
This sometimes forces technologists to exist in a legal limbo, or participate in updating the legal framework
7
CS 5150
•
The United States has
•
Federal laws and federal courts
•
State laws and state courts
•
Much of state law is based on the Uniform
Commercial Code
•
Relationship between US law and International law is complex and changing
8
CS 5150
•
“The internet has no boundaries”
•
Well... sort of
•
Examples: WikiLeaks, free speech limitations, intellectual property enforcement
•
Where do you pay taxes?
9
CS 5150
•
The United States follows Common Law
•
Statutes (bills) passed by legislatures
•
Regulations issued by government agencies
•
Precedents (judgments) made by courts
10
CS 5150
•
Federal law that applies to literary works
•
Originally just texts (in the narrow sense); extended to music, images, designs, software
•
Copyright applies to expressions of ideas, not ideas themselves
•
In software, copyright applies to particular programs, not the concepts behind the programs or a particular physical copy of a program
11
CS 5150
•
In the USA copyright gives owners exclusive right to:
• reproduce or copy
• distribute
• perform or execute
• display
• license others to do any of these things
•
Special exceptions (not usually relevant to software):
•
First sale
•
Fair use
12
CS 5150
•
At creation time
•
Copyright is automatically owned by the creator
•
Except works for hire; owned by the employer
•
In the USA ownership of copyright can be transferred
• i.e. it is property that can be sold
•
Governed by contract law
13
CS 5150
•
Almost all employment contracts specify that the employer owns any code produced by the employee
•
Any contract programming should include ownership agreement
•
If you do not own the copyright, you must get permission (license) to do just about anything with code, even if you wrote it
14
CS 5150
•
When software is derived from old software:
•
Copyright of the new code is owned by the new author(s)
•
Constraints on the old code apply to the derived work
•
Some leaders of open source projects insist that all contributors transfer copyright ownership to a single person or organization
15
CS 5150
•
Cornell policy states that students own the copyright on any works they produce for class
•
Your feasibility study must include a statement of how the copyright for the code you produced will handled. Most clients will want you to transfer ownership to them.
•
Read the Cornell policy:
http://www.dfa.cornell.edu/dfa/cms/treasurer/policyoffic e/policies/volumes/governance/upload/Copyright.html
16
CS 5150
•
If your project is for a start-up company or similar venture, it is essential that you agree on any sharing of potential rewards before you do the development work
•
If in doubt, ask for advice
17
CS 5150 18
CS 5150 19
CS 5150
•
Contracts are how software is licensed or sold
•
An agreement regarding an exchange of goods and services
•
Written document with signatures
•
Permanent or temporary; whole or part
•
Exclusive or non-exclusive
•
Termination, problems difficulties
•
Terms and conditions
•
Enforceable by courts
•
For simple agreements, an exchange of letters is sufficient
20
CS 5150
•
OSS is an important part of the modern software landscape that does not fit well into traditional contract law
21
CS 5150
•
Patents apply to inventions
•
Should be: non-obvious, novel, useful
•
The patent process is complex; you should always consult a lawyer before pursuing a patent
•
17 years from award (20 from application)
•
Copyright applies to expressions of ideas; patents apply to ideas themselves
22
CS 5150
•
A big mess
•
Hard to know where ideas originate
•
Patent examiner ignorance has led to broad patents for routine computing ideas
•
Many ideas are covered by tens of patents
•
International differences
•
Math is not patentable
23
CS 5150
•
"... information, including a formula, pattern, compilation, program, device, method, technique, or process that derives independent economic value from not being generally known and not being readily ascertainable and is subject to reasonable efforts to maintain secrecy."
•
Uniform Trade Secrets Act
•
Non-disclosure agreement:
•
Legal agreement for revealing trade secrets in a limited way
•
Read carefully!!!
24
CS 5150
•
Trade secrets do not expire, as long as they are kept secret
•
Competitors may not use secrets obtained through extra-legal means
•
Trade secrets learned from one employer must not be disclosed to other employers
25
CS 5150
•
Every jurisdiction has complex laws regarding recruiting, hiring, firing, on-job conditions, and terms and conditions of employment
•
If you supervise other people, you should be familiar with some of this law
•
If you hire other people, you should probably consult a lawyer
26
CS 5150
•
Employment contracts vary quite a bit and are negotiable
•
Non-compete
•
Non-disclosure
•
Ownership of hobby projects
•
Talk about these things before accepting a job!
•
Read the contract before signing it!
27
CS 5150
•
Invasions of privacy:
•
Intrusion
•
Appropriation of name or likeness
•
Unreasonable publicity
•
False light
•
Data collection
•
If you collect any personal data, be very careful
•
Special laws regarding children
•
Europe is more restrictive than the USA
28
CS 5150
•
Work-related material on work machines is definitely not private
•
Many employers consider all information on work machines to be the companies property
•
As a software developer it is likely that you will encounter private information at some point in your career
•
Keep it private!
29
CS 5150
•
Legally, email enjoys the same protection as postal mail
•
But there is no envelope!
•
If your work involves transfering data over public networks, you should take appropriate precautions (encryption, etc)
•
Business email belongs to the company
•
Deleting email can be considered inappropriately destroying records
30
CS 5150
•
In the USA the Constitution protects speech, but there are major exceptions (state secrets, defamation, obscenity, hate speech)
•
Laws in other countries vary considerably
(blasphemy, criticism of government, holocaust denial)
31
CS 5150
•
Be familiar with the legal environment you’re operating in, but do not pretend to be a lawyer
32