982 F.2d 693 (2nd Cir. 1992), 762, Computer Associates Intern., Inc. v. Altai, Inc.

Docket Nº:762, Dockets 91-7893, 91-7935.
Citation:982 F.2d 693
Party Name:Fed. R. Evid. Serv. 348 COMPUTER ASSOCIATES INTERNATIONAL, INC., Plaintiff-Appellant-Cross-Appellee, v. ALTAI, INC., Defendant-Appellee-Cross-Appellant.
Case Date:June 22, 1992
Court:United States Courts of Appeals, Court of Appeals for the Second Circuit

Page 693

982 F.2d 693 (2nd Cir. 1992)

Fed. R. Evid. Serv. 348




ALTAI, INC., Defendant-Appellee-Cross-Appellant.

No. 762, Dockets 91-7893, 91-7935.

United States Court of Appeals, Second Circuit

June 22, 1992

Argued Jan. 9, 1992.

Amended Opinion Dec. 17, 1992.

Page 694

[Copyrighted Material Omitted]

Page 695

Stephen D. Kahn, New York City (Stuart D. Levi, Beth K. Neelman, Carol A. Motyka, Weil, Gotshal & Manges, Michael A.

Page 696

McElroy, Computer Associates Intern., Inc., of counsel), for plaintiff-appellant, cross-appellee.

Susan G. Braden, Washington, DC (Christ M. Kacoyannakis, Anderson Kill Olick & Oshinshy, Washington, DC, Stephen D. Susman, Susman Godfrey, Houston, TX, of counsel), for defendant-appellee, cross-appellant.

Bruce A. Lehman, Swidler & Berlin, Washington, DC, filed a brief amicus curiae, on behalf of The Software Publishers Ass'n.

Peter M.C. Choy, Mountain View, CA, filed a brief amicus curiae, on behalf of the American Committee for Interoperable Systems.

J. David Cabello, Houston, TX, David R. Bradford, Provo, UT, Robert H. Kohn, Scotts Valley, CA, filed a brief amici curiae, on behalf of Compaq Computer Corp., Novell, Inc., and Borland Intern., Inc.

Before ALTIMARI, MAHONEY and WALKER, Circuit Judges.

WALKER, Circuit Judge:

In recent years, the growth of computer science has spawned a number of challenging legal questions, particularly in the field of copyright law. As scientific knowledge advances, courts endeavor to keep pace, and sometimes--as in the area of computer technology--they are required to venture into less than familiar waters. This is not a new development, though. "From its beginning, the law of copyright has developed in response to significant changes in technology." Sony Corp. v. Universal City Studios, Inc., 464 U.S. 417, 430, 104 S.Ct. 774, 782, 78 L.Ed.2d 574 (1984).

Article I, section 8 of the Constitution authorizes Congress "[t]o promote the Progress of Science and useful Arts, by securing for limited Times to Authors and Inventors the exclusive Right to their respective Writings and Discoveries." The Supreme Court has stated that "[t]he economic philosophy behind the clause ... is the conviction that encouragement of individual effort by personal gain is the best way to advance public welfare...." Mazer v. Stein, 347 U.S. 201, 219, 74 S.Ct. 460, 471, 98 L.Ed. 630 (1954). The author's benefit, however, is clearly a "secondary" consideration. See United States v. Paramount Pictures, Inc., 334 U.S. 131, 158, 68 S.Ct. 915, 929, 92 L.Ed. 1260 (1948). "[T]he ultimate aim is, by this incentive, to stimulate artistic creativity for the general public good." Twentieth Century Music Corp. v. Aiken, 422 U.S. 151, 156, 95 S.Ct. 2040, 2044, 45 L.Ed.2d 84 (1975).

Thus, the copyright law seeks to establish a delicate equilibrium. On the one hand, it affords protection to authors as an incentive to create, and, on the other, it must appropriately limit the extent of that protection so as to avoid the effects of monopolistic stagnation. In applying the federal act to new types of cases, courts must always keep this symmetry in mind. Id.

Among other things, this case deals with the challenging question of whether and to what extent the "non-literal" aspects of a computer program, that is, those aspects that are not reduced to written code, are protected by copyright. While a few other courts have already grappled with this issue, this case is one of first impression in this circuit. As we shall discuss, we find the results reached by other courts to be less than satisfactory. Drawing upon long-standing doctrines of copyright law, we take an approach that we think better addresses the practical difficulties embedded in these types of cases. In so doing, we have kept in mind the necessary balance between creative incentive and industrial competition.

This appeal comes to us from the United States District Court for the Eastern District of New York, the Honorable George C. Pratt, Circuit Judge, sitting by designation. By Memorandum and Order entered August 12, 1991, Judge Pratt found that defendant Altai, Inc.'s ("Altai"), OSCAR 3.4 computer program had infringed plaintiff Computer Associates' ("CA"), copyrighted computer program entitled CA-SCHEDULER. Accordingly, the district court awarded CA $364,444 in actual damages and apportioned profits. Altai has

Page 697

abandoned its appeal from this award. With respect to CA's second claim for copyright infringement, Judge Pratt found that Altai's OSCAR 3.5 program was not substantially similar to a portion of CA-SCHEDULER called ADAPTER, and thus denied relief. Finally, the district court concluded that CA's state law trade secret misappropriation claim against Altai had been preempted by the federal Copyright Act. CA appealed from these findings.

Because we are in full agreement with Judge Pratt's decision and in substantial agreement with his careful reasoning regarding CA's copyright infringement claim, we affirm the district court's judgment on that issue. However, we vacate the district court's preemption ruling with respect to CA's trade secret claim, and remand the case to the district court for further proceedings.


We assume familiarity with the facts set forth in the district court's comprehensive and scholarly opinion. See Computer Assocs. Int'l., Inc. v. Altai, Inc., 775 F.Supp. 544, 549-55 (E.D.N.Y.1991). Thus, we summarize only those facts necessary to resolve this appeal.


Certain elementary facts concerning the nature of computer programs are vital to the following discussion. The Copyright Act defines a computer program as "a set of statements or instructions to be used directly or indirectly in a computer in order to bring about a certain result." 17 U.S.C. § 101. In writing these directions, the programmer works "from the general to the specific." Whelan Assocs., Inc. v. Jaslow Dental Lab., Inc., 797 F.2d 1222, 1229 (3d Cir.1986), cert. denied, 479 U.S. 1031, 107 S.Ct. 877, 93 L.Ed.2d 831 (1987). See generally Steven R. Englund, Note, Idea, Process, or Protected Expression?: Determining the Scope of Copyright Protection of the Structure of Computer Programs, 88 MICH.L.REV. 866, 867-73 (1990) (hereinafter "Englund"); Peter S. Menell, An Analysis of the Scope of Copyright Protection for Application Programs, 41 STAN.L.REV. 1045, 1051-57 (1989) (hereinafter "Menell"); Mark T. Kretschmer, Note, Copyright Protection For Software Architecture: Just Say No!, 1988 COLUM.BUS.L.REV. 823, 824-27 (1988) (hereinafter "Kretschmer"); Peter G. Spivack, Comment, Does Form Follow Function? The Idea/Expression Dichotomy In Copyright Protection of Computer Software, 35 U.C.L.A.L.REV. 723, 729-31 (1988) (hereinafter "Spivack").

The first step in this procedure is to identify a program's ultimate function or purpose. An example of such an ultimate purpose might be the creation and maintenance of a business ledger. Once this goal has been achieved, a programmer breaks down or "decomposes" the program's ultimate function into "simpler constituent problems or 'subtasks,' " Englund, at 870, which are also known as subroutines or modules. See Spivack, at 729. In the context of a business ledger program, a module or subroutine might be responsible for the task of updating a list of outstanding accounts receivable. Sometimes, depending upon the complexity of its task, a subroutine may be broken down further into sub-subroutines.

Having sufficiently decomposed the program's ultimate function into its component elements, a programmer will then arrange the subroutines or modules into what are known as organizational or flow charts. Flow charts map the interactions between modules that achieve the program's end goal. See Kretschmer, at 826.

In order to accomplish these intra-program interactions, a programmer must carefully design each module's parameter list. A parameter list, according to the expert appointed and fully credited by the district court, Dr. Randall Davis, is "the information sent to and received from a subroutine." See Report of Dr. Randall Davis, at 12. The term "parameter list" refers to the form in which information is passed between modules (e.g. for accounts receivable, the designated time frame and particular customer identifying number) and the information's actual content (e.g.

Page 698

8/91-7/92; customer No. 3). Id. With respect to form, interacting modules must share similar parameter lists so that they are capable of exchanging information.

"The functions of the modules in a program together with each module's relationships to other modules constitute the 'structure' of the program." Englund, at 871. Additionally, the term structure may include the category of modules referred to as "macros." A macro is a single instruction that initiates a sequence of operations or module interactions within the program. Very often the user will accompany a macro with an instruction from the parameter list to refine the instruction (e.g. current total of accounts receivable (macro), but limited to those for 8/91 to 7/92 from customer No. 3 (parameters)).

In fashioning the structure, a programmer will normally attempt to maximize the program's speed, efficiency, as well as simplicity for user operation, while taking into consideration certain externalities such as the memory constraints of the computer upon which the program will be run. See id.; Kretschmer, at 826; Menell, at 1052. "This stage of program design often requires the most time and investment." Kretschmer, at 826.

Once each necessary module has been identified, designed, and its relationship to the...

To continue reading