18
CS 501: Software Engineering Fall 1999 Lecture 19 Management II Business and legal aspects of software engineering.

CS 501: Software Engineering Fall 1999 Lecture 19 Management II Business and legal aspects of software engineering

Embed Size (px)

Citation preview

Page 1: CS 501: Software Engineering Fall 1999 Lecture 19 Management II Business and legal aspects of software engineering

CS 501: Software EngineeringFall 1999

Lecture 19Management II

Business and legal aspects of software engineering.

Page 2: CS 501: Software Engineering Fall 1999 Lecture 19 Management II Business and legal aspects of software engineering

2

Administration

Assignment 5

Assignment 6

Schedule your presentation with Rosemary Adessa

Invite your client(s) to the presentation

Page 3: CS 501: Software Engineering Fall 1999 Lecture 19 Management II Business and legal aspects of software engineering

3

Legal Environment

Software is developed in a complex legal and economic framework. Changes in laws follow changes in technical world.

Jurisdictions:

United States Constitution International treaties Federal and state statues Precedents Supreme Court Cost of establishing precedent

Page 4: CS 501: Software Engineering Fall 1999 Lecture 19 Management II Business and legal aspects of software engineering

4

Legal Topics

International

Intellectual property (copyright, patent, contract)

Tort (e.g., liability of Internet service provider)

Privacy

Free speech and its limitations (government secrets, obscenity, blasphemy, hate)

Legal Information Institute: http://www.law.cornell.edu/

Page 5: CS 501: Software Engineering Fall 1999 Lecture 19 Management II Business and legal aspects of software engineering

5

Copyright

A copyright gives the owner the exclusive right to:

reproduce

distribute

perform

display

license

Gradually extended to cover text, music, photographs, designs, software, ...

Page 6: CS 501: Software Engineering Fall 1999 Lecture 19 Management II Business and legal aspects of software engineering

6

Copyright

Copyright at creation

Works for hire

Contracts and licenses

First sale

Fair use

Infringement (contamination)

International differences

Moral rights

Copyright registration

Page 7: CS 501: Software Engineering Fall 1999 Lecture 19 Management II Business and legal aspects of software engineering

7

Software Patents

Should be: non-obvious, novel, useful

17 years from award (20 years from application)

Poor quality of examining can lead to broad patents for routine computing concepts

International differences

Copyright applies to the expression of ideas, patents to the ideas themselves.

Page 8: CS 501: Software Engineering Fall 1999 Lecture 19 Management II Business and legal aspects of software engineering

8

Contracts and Licences

Contracts allow intellectual property to be sold or licensed

Promise in exchange for adequate consideration

Written document with signature

Permanent or temporary, whole or part

Exclusive or non-exclusive

Termination, problems and difficulties

Terms and conditions as agreed

Enforceable by courts

Page 9: CS 501: Software Engineering Fall 1999 Lecture 19 Management II Business and legal aspects of software engineering

9

Derivative Works

When software is derived from other software:

New code is owned by new developer

Conditions that apply to old code apply to derived work

If you write S, which is derived from A, B, C and D, you can not distribute or licenses S unless you have right to distribute each of A, B, C and D.

To create a software product, you must have documented rights to use every component.

Page 10: CS 501: Software Engineering Fall 1999 Lecture 19 Management II Business and legal aspects of software engineering

10

Privacy

Invasions of privacy:

intrusion

appropriation of name or likeness

unreasonable publicity

false light

Be very careful about collecting personal data without the knowledge of the individual

Page 11: CS 501: Software Engineering Fall 1999 Lecture 19 Management II Business and legal aspects of software engineering

11

Software Business Questions

You are employed for company X writing software. When you leave, who owns your work? What use can you make of the work?

You work free-lance for company X. When you finish, who owns your work? What use can you make of the work?

You are a student on CS 502. What you finish what use can you make of your project work? What use can Cornell make of it?

Read the contract!

Page 12: CS 501: Software Engineering Fall 1999 Lecture 19 Management II Business and legal aspects of software engineering

12

Your Next Job ...

Employment contract may restrict your next job (not working for competitors, etc.)

Trade-secret information (non-disclosure agreement)

Ask when you are interviewed!

Page 13: CS 501: Software Engineering Fall 1999 Lecture 19 Management II Business and legal aspects of software engineering

13

Some Business Models

Software developed in-house

Package licensed to customer, binary only (Microsoft model)

Package licensed to customer, source code for customer's modifications

Bespoke software for customer (may be owned by supplier or customer)

Software bundled with hardware product (PalmPilot)

Page 14: CS 501: Software Engineering Fall 1999 Lecture 19 Management II Business and legal aspects of software engineering

14

Community Development

Shareware

Open source (e.g., Linux, Apache, Perl, etc.)

-> Shared development

-> Market penetration

Example: TCP/IP for Vax/VMS

Software may be open source, but packaging and services can be profitable businesses

Page 15: CS 501: Software Engineering Fall 1999 Lecture 19 Management II Business and legal aspects of software engineering

15

Open Source

Free redistribution

Source code

Derived works

Integrity of the author's source code

No discrimination against persons or groups

Page 16: CS 501: Software Engineering Fall 1999 Lecture 19 Management II Business and legal aspects of software engineering

16

Open Source

No discrimination against fields of endeavor

Distribution of license

License must not be specific to a product

License must not contaminate other software

http://www.opensource.org/osd.html

Page 17: CS 501: Software Engineering Fall 1999 Lecture 19 Management II Business and legal aspects of software engineering

17

Practical Advice

Be aware of the law, but do not pretend to be a lawyer. Use a professional for:

Contracts and licenses

Troubles (complaints, injunctions, subpoenas, etc.)

Personnel issues

When in doubt, ask help!

Page 18: CS 501: Software Engineering Fall 1999 Lecture 19 Management II Business and legal aspects of software engineering

18

Reading

Before next class, read Sommerville Chapter 28,

"Managing People", pages 567 to 588