Date post: | 21-Dec-2015 |
Category: |
Documents |
View: | 214 times |
Download: | 1 times |
Intellectual Property
Boston College Law School
March 9, 2009
Software - Intro, Scope
Software & Hardware
Hardware
OS
ApplicationApplicationApplicationApplicationApplicationApplicationApplication
E.g. Windows, Mac OS, PS2 OS
E.g. Dell PC, Macintosh,PS2
E.g. MS Word, Netscape Navigator, PS2 Game, etc.
Software Creation
• Typical steps– (1) Requirements analysis– (2) Architecting / high-level design– (3) User interface design– (4) Writing code– (5) Validation and maintenance
Software Creation
} Var {for variable function …} num, count, primes, …. Begin {of program} {*****initialize var … num :=2;{the prime num … count :=0;{number of pri … times :=0;{number of col … {*****ask user how many … write (‘How many prime … read (primes); writeln; writeln; {carriage returns} writeln;
Compile
Source Code
11101001 01111001 0010110010010000 10010000 1100110110101011 01000011 0110111101110000 01111001 0110010001010010 01001100 0100000101101110 01100011 0000001000000100 00000000 1011001111101001 01111001 0010110010010000 10010000 1100110110101011 01000011 0110111101110000 01111001 0110010001010010 01001100 0100000101101110 01100011 0000001000000100 00000000 1011001111101001 01111001 0010110010010000 10010000 1100110110101011 01000011 0110111101110000 01111001 01100100
Object Code
Network Effects
Network Effects• Definition: where value of a product to one
consumer depends on number of other consumers using it
• Examples– Actual networks: e.g. telephone, fax machines,
instant messaging, etc.– Standards: e.g. QWERTY keyboard, MP3, etc.– Compatible products: e.g. VCRs, DVD, computer
operating systems, etc.
Costs and Benefits
• Benefits– Competing standards can be inefficient– Lower training costs, portability– Wider selection in complementary markets
• Costs– Lock in to suboptimal standard– Issues of market power where standard owned
Competing Strategies
MAI
MAI OS
MAIApps
OS
HardwareApple
Apple OS
3d PartiesApple 3d Parties3d Parties3d Parties3d Parties3d Parties
3d Parties
Microsoft
3d PartiesMicrosoft 3d Parties3d Parties3d Parties3d Parties3d Parties
3d Parties3d Parties3d Parties3d Parties3d Parties3d Parties
Copyright Protection
• CONTU Recommendations 1978
• 17 U.S.C. § 101. Definitions– “Literary works” are works … expressed in words,
numbers, or other verbal or numerical symbols or indicia ….
• 17 U.S.C. § 102. Subject Matter– “(b) In no case does copyright protection … extend
to any idea, procedure, process, system, method of operation, concept, ….”
Issues
• Copyrightability– Object Code– Source Code– Non-Literal Structures– Functional Elements– Screen Displays– User Interfaces
Apple v. Franklin
} Var {for variable function …} num, count, primes, …. Begin {of program} {*****initialize var … num :=2;{the prime num … count :=0;{number of pri … times :=0;{number of col … {*****ask user how many … write (‘How many prime … read (primes); writeln; writeln; {carriage returns} writeln;
Compile
Source Code
11101001 01111001 0010110010010000 10010000 1100110110101011 01000011 0110111101110000 01111001 0110010001010010 01001100 0100000101101110 01100011 0000001000000100 00000000 1011001111101001 01111001 0010110010010000 10010000 1100110110101011 01000011 0110111101110000 01111001 0110010001010010 01001100 0100000101101110 01100011 0000001000000100 00000000 1011001111101001 01111001 0010110010010000 10010000 1100110110101011 01000011 0110111101110000 01111001 01100100
Object Code
Whelan v. Jaslow• Dentalab v. Dentcom
– Different object code and source code– Similarities in non-literal elements
• File structures (how data stored)
• Screen outputs (how results displayed)
• Five subroutines– Order entry– Invoicing– Accounts receivable– End of day procedure– End of month procedure
Whelan v. Jaslow
• Standard for idea/expression:– “the purpose or function of a utilitarian work
would be the work’s idea, and everything that is not necessary to that purpose or function would be part of the expression of that idea.”
• Idea = purpose or function
• Expression = everything not necessary to purpose
Whelan v. Jaslow
Main Purpose
Program Structure
Modules, Data
Source Code
Object Code
No Protection
Protected UnlessNecessary
Computer Assoc. v. Altai
IBM 370
CA-Adapter
CA-Scheduler Zeke
Oscar 3.4
CMS MVS VSE
Oscar 3.5
Abstraction
Main Purpose
Program Structure
Modules, Data
Source Code
Object Code
Filtration
Main Purpose
Program Structure
Modules, Data
Source Code
Object Code
- Ideas- Dictated by efficiency- Dictated by external factors- Public domain
Comparison
Main Purpose
Program Structure
Modules, Data
Source Code
Object Code
Computer Assoc. v. Altai
Not copied
Not Protected
CA-Scheduler
Dictated by OS or apps
P.D. or functional
Flows from purpose
Main Purpose
Parameter Lists, Macros
Source Code, Object Code
Oscar 3.5
General Outline
Services Required
Altai Test v. Whelan Test
Object Code
Purpose
Altai
Modules, Data
Source Code
Program Structure
Whelan
Hypothetical
• Facts– You are general counsel to software company
– Developing an application
– Have obtained source code of competing product
– Would like to save time by copying as much as possible
• Question– What, if anything, can we copy?
– Giving advice to company’s software engineers
Issues
• Copyrightability– Object Code– Source Code– Non-Literal Structures– Functional Elements– Screen Displays– User Interfaces
Lotus v. Borland
Global Insert Delete Column-Width Erase Titles Window
A B C D E F G H I J K
123456789
Worksheet Range Copy Move File Print Graph Data Quit
Lotus v. Borland
• Possible Grounds for Decision– Not Protectible
• Method of operation - no protection at all (majority)
– Protectible but No Liability• Merger - expressive elements merged with method
• Fair Use (Boudin)
– Protectible and Liability• Copied expressive elements (district court)
Apple Desktop?
Data East v. Epyx
Data East: Karate Champ
Epyx: World Karate Champ
Level of Protection
Apple v. Microsoft
Windows 3.0(1990)
Mac OS(1987)
Administrative
• Next Class– Finish V – Software
• Skip V.D – Sui Generis
• Read In Re Bilski from handouts page on website
• Class cancellations– Wednesday, March 11– Monday, March 16