AustLII Home | Databases | WorldLII | Search | Feedback

Journal of Law, Information and Science

Journal of Law, Information and Science (JLIS)
You are here:  AustLII >> Databases >> Journal of Law, Information and Science >> 1999 >> [1999] JlLawInfoSci 4

Database Search | Name Search | Recent Articles | Noteup | LawCite | Help

Moens, Annelies --- "Streaming the Software Development Process Through Reuse and Patents" [1999] JlLawInfoSci 4; (1999) 10(1) Journal of Law, Information and Science 82

Streamlining the Software Development Process Through Reuse and Patents

© 1999 ANNELIES MOENS[*]

Abstract

“We don’t have to reinvent the wheel every time we want distributed Internet-based applications”[David Wood, President of the Australian Java Users Group]. Yet, to a large degree this is occurring in the software industry and is promoted by copyright law. As the on-line world expands, and platform-independent languages such as Java are created, there will be no need to reinvent applications for different machines and operating systems. Software reuse has innumerable benefits, yet software developers are still not embracing software reuse, especially small software developers. This paper examines why this is so, and analyses available legal regimes in terms of their suitability for promoting software reuse, including the appropriateness of trade secrets, shrinkwrap licences, copyright and patents. The paper concludes that the patent regime is most suited to the promotion of software reuse through the mass-marketing of reusable software components. Patent protection for software in Australia has followed the development of software patent law in the United States. The requirements for patenting software components in Australia will be addressed. The shift to reusing code through software components can already be seen by new applications and patents in the Patent Offices throughout the world. Software reuse is important to the development of a global software industry. Reuse of code will lead the way towards standards in the on-line world which are a by-product of a maturing discipline. The impact of patent protection of software components on competition in the software industry will also be addressed briefly. Strong intellectual property protection should be given to reusable software components which are necessary to achieve uniformity, standards, interoperability and convenience to the user.

Introduction

With the growing dominance of the on-line world, software development is moving towards a universal standard wherein languages are platform-independent and code is more readily exchanged. It is time for an intellectual property infrastructure that will promote the development of standard technology that can be implemented across all platforms to facilitate ease of use, integration and interoperability.

This paper aims to show how the software development process can be streamlined and standardised by the promotion of software reuse through patent protection. There are innumerable benefits to software developers who reuse code, yet software reuse is still not occurring on a global scale. In particular, small software development companies are failing to implement successful software reuse programs because the high initial cost in the development of reusable code outweighs their limited resources. This is in contrast to large software development companies who readily reuse code created inhouse. Consequently, incentives need to be provided to software developers who are finding software reuse to be too costly. This will be dealt with in Part One of the paper.

An analysis of the legal regimes potentially available for encouraging software developers to reuse code will be made, including trade secrets, shrinkwrap licences, copyright and patents. It will be argued that the patent regime is most suited to the stimulation of software reuse through the protection of software components. Part Two will analyse these legal regimes.

The development of software patent protection in Australia has followed the direction of patent law in the United States. There are certain requirements that must be satisfied before a software component can be the subject of a patent in Australia. The transition towards software components, which to a large degree has been brought about through the Internet, is already taking hold as can be seen by various granted patents and applications. These requirements will be extrapolated upon in Part Three of the paper.

Software reuse is vital to the development of the software industry. As the industry matures, it will become more like a standardised engineering discipline. Creating incentive (through patents) for software reuse (through software components) can lead to the creation of standards in the software industry. The effect software component patenting will have on competition within the software industry will also be addressed. This will be dealt with in Part Four of the paper.

It is contended that software reuse, which is necessary to achieve uniformity, standards, interoperability and convenience to the user should prosper. Accordingly, strong intellectual property protection should be afforded to software developers who create reusable code through software components and who license them to mass markets. The value of software components lies in their reuse, hence the law should seek to encourage and protect software developers who invest time and effort in creating reusable code to help standardise the software industry.

PART ONE

1.1 Benefits of Software Reuse

Software reuse is the term given to the application of existing code, usually of generic nature, into a new software application whether or not applied in the same or different software architecture.[1] Software reuse has multiple long-term benefits from which large software developing companies are reaping benefits.[2] Smaller software development companies are not as entrenched in the concept of reusing software, the reasons for which will be explored in Part 1.2.

The most significant benefit of software reuse is the money software developers save with the reuse of code in new applications.[3] The Director for the United States National Institute of Standards and Technology’s software component program estimated that building 5% of all software from reusable components would save over $2 billion per year.[4] A software component is a discrete reusable piece of code that can be implemented in new applications.[5] The costs involved in writing code from scratch, regardless of whether it has been written before, are extremely high. Only rough estimates can be given as to the costs of reinventing code unnecessarily but the figures are in the billions.[6]

Another significant benefit of software reuse is the reduction of bugs or errors in reusable code because of its use and testing over time.[7] New code is always more error prone than tried and tested code.[8] Refined, debugged, tested and used code is of higher quality than new code.[9] The number of errors in code also increases exponentially as the complexity or size of the code increases.[10] This is crucial to note, especially as applications are becoming more and more complex and used for a greater variety of purposes.

Several other benefits of software reuse include higher productivity for developers since the amount of time spent reinventing code is reduced.[11] Maintenance of code becomes easier as standard reusable software becomes familiar to software developers.[12] Applications are placed into the market faster, since reusing code reduces the amount of time spent on a software development project.[13] Software reuse can also reduce labour costs by capitalising on external specialists as sources of reusable components suitable for smaller software development companies. Internal specialisation can be more readily achieved by larger companies.[14] In addition, reusing software over time can lead to the development of industry standards. Reliable software components, determined by use over time, will lead to standards within the software industry. Customers will become familiar with standard components and not be forced to learn entirely new programs with each new generation of software.[15] Developers creating reliable software components will develop a favourable reputation in the market place.

The benefits of software reuse are numerous, yet its full potential is not being realised. The potential for reusable software components in the market can only increase, especially in light of the Internet.[16] Any platform or language dependency problems will be reduced or eliminated as the on-line world expands.[17] “Very rapidly we will have to think of the entire worldwide network as the platform that software is written to, not the individual machine”.[18]

1.2 Lack of Incentives for Small Software Development Companies to Reuse Software

Software reuse has long been a goal of the software industry, however its implementation is proving impractical for many.[19] Reusable code requires generally three times the effort to build than non-reusable code.[20] This is primarily due to the fact that the reusable software must be generic enough to be used in another application, as well as requiring documentation so that future users can understand the functionality of the component. Software reuse has long-term benefits but in the short term it may not have any benefits owing to the initial effort required. This is significant for smaller software development companies which may not be producing as many applications and which have fewer resources available. For these smaller software companies reuse is not an immediately viable option despite the many long-term benefits.[21]

However, the software industry has embraced software reuse in the area of graphical user interfaces.[22] Generic Window user interface features such as radio buttons and pull-down menus are not recreated from scratch each time they need to be used. Third party controls, like Visual Basic Controls (VBXs), are readily accessible in the market hence developers need no longer reinvent basic graphical user interface structures.[23] Another large market for software reuse is in system-related functions including such functions as log-ons, log-outs and connection procedures.[24] Other reusable components, which still require greater market development to realise software reuse potential, include:

server-side components that constitute reasonable business logic;

high level patterns for design reuse;

infrastructure and services components such as messaging and security connections.[25]

The Gartner Group Inc., an information technology, management and forecasting group, ascertained in 1997 that the software component market was valued at $150 million, and that the market for software components will exceed $2 billion by 2001.[26] Despite the benefits of software reuse it takes a significant amount of time to create reusable code.[27] Customers today require their customised applications within short time frames, hence developing reusable code is often infeasible.[28] The software developer faces a dilemma; in the long run software development is faster with the implementation of reusable code but in the short term it requires extra time to build.[29] A software developer is naturally driven by the goals of the immediate project rather than its potential for reuse.[30] Hence, what is the solution for a software developer in this situation? An infrastructure is required to make reuse economical and thus avoid the costs of reinvention.[31]

The task of generating reusable software code can be outsourced to third parties who specialise in developing software components to be used by software developers. In this way software developers can license the implementation of reusable software components from third parties that specialise in the development of standard software components. To some extent this is being done with third party graphical user interface widgets.[32] However, this concept can be expanded to other areas such as those listed earlier, namely, server-side components, high level patterns and infrastructure and services components. This is especially important for smaller software development companies which do not have the resources inhouse to produce reusable code unlike larger companies such as Hewlett Packard, AT&T, Digital, IBM, Microsoft and Motorola.[33] The majority of software developers in Australia are small companies. In Queensland, Australia, the largest 25 software developers have an average of 90 employees, including support staff.[34] Software reuse can be increased by smaller software development companies through the licensing of reusable software components from third parties. It would only be necessary to build reusable components inhouse if not available from a third party reusable software component developer.[35] Accordingly, to increase incentive for small software development companies to reuse software, third party software component developers need to be established. In order to do so, legal protection needs to be given to the reusable software components they develop.

PART TWO

2.1 Legal Regimes Potentially Available for Stimulating Software Reuse

Software components need legal protection which allow some monetary return to their third party developers. Since reusable code development has a high initial cost, developers need to recoup from their investment to market their components profitably.[36] The legal protection afforded should be strong, since the value of software components lies in their reuse.[37] This section of the paper looks at the legal incentives suitable for software reuse through the creation of software components. The central criterion is that the function of the software component is protected so that third parties cannot create a competing product (whether reverse engineering is required or not) without infringing the creator’s rights.[38] The unsuitability of trade secrets for software components will be addressed. In addition, shrinkwrap licences and copyright in relation to software components will be analysed. Further, this part will conclude with an analysis of the patent system and explore why this intellectual property regime is the most suitable incentive for software reuse through software components.

2.2 Trade Secrets

A trade secret is generally defined as confidential information of a commercial nature.[39] However, the Freedom of Information Act 1982 (Cth) uses the word ‘trade secret’, hence the term has been defined specifically by the Administrative Appeals Tribunal and the courts. In Searle Australia Pty Limited v Public Interest Advocacy Centre[40] a three step test was established to determine what constitutes a trade secret:

It must be information which if disclosed to a competitor would be liable to cause real or significant harm to the owner of the secret;

be information used or useable in a trade or business; and

the owner must have limited its dissemination.

Software components illegitimately acquired by a non-licensee could cause significant harm to the licensor since the value of software components lies in their legitimate reuse. If reuse cannot be controlled, then the software component is valueless in a fiscal sense. Hence, the first part of the test would most likely be satisfied. The second limb is also easily satisfied. However, the third limb could cause problems, since software components should be reused as much as possible and be widely disseminated.

In addition, in order to integrate the software component with other software components or customised software, the source code would generally be released with the consequence that all secrecy is lost.[41] Not only would the distribution of software components fail to meet the Searle test, but would also fail in a general action for the protection of confidential information of a commercial nature, since the information can never be confidential. Accordingly, trade secret protection would be inappropriate for software components.

2.3 Shrinkwrap Licences

The nature of a shrinkwrap licence (or a clickwrap licence on-line) is to bind the consumer to the terms of the licence upon breaking open the clear plastic wrap of the software package or upon installation of the software.[42] The licence agreement usually contains terms such as prohibitions on reverse engineering the product (or otherwise appropriating its functionality).[43] The effect is that potentially such a licence accompanying a software component could meet the needs of third party developers licensing these components to permit software reuse.

In the United States shrinkwraps have only recently been held to be enforceable.[44] In addition, in the United States, the proposed Article 2B of the Uniform Commercial Code (UCC), now in the form of the Uniform Computer Information Transaction Act (UCITA), will have the effect of validating shrinkwrap licences.[45] Numerous articles have been written on this burgeoning area of the law with commentators’ views generally being negative towards what was proposed as Article 2B.[46] The problem with the proposed Article 2B, now the UCITA, is that it has the potential to conflict with federal United States intellectual property laws. The extent to which contractual agreements could provide for a new set of intellectual property rights is unclear.[47]

In Australia, however, the government has not proposed legislation of a similar nature.[48] A third party licensing software components could potentially use a shrinkwrap licence. However, it is important to understand that contractual rights are not as pervasive as intellectual property rights. Property rights are enforceable against the world, whereas contractual rights are only enforceable against the parties to the contract.[49] Since software components are envisioned to be mass-marketed, a property right rather than a contractual right would best serve the interests of software component developers.

Additionally, a shrinkwrap licence prohibiting reverse engineering or appropriation of the function of the software component would be troublesome to enforce and infringement actions difficult to prove.[50] Shrinkwraps are also generally agreements between small-end consumers and large companies hence never a level playing field. Of course, in the situation of licensing software components, the licensee would generally be a software developer rather than the final consumer. Despite this, “the shrinkwrapped packages that contain individual, monolithic applications are eventually going to disappear, to be replaced by object-oriented software components that are downloaded from the network”.[51]

2.4 Copyright

The essence of the Copyright Act 1968 (Cth) in Australia, and copyright regimes throughout the world, is to protect original expression as distinct from function.[52] It is a matter of principle that copyright law should not be used to obtain a monopoly on the functional aspect of a software component.[53] Prima facie, copyright is not suited to the protection of the function of a software component since only expression is protected. Accordingly, a third party developer relying on copyright would be less inclined to distribute the source code with the software component, hence endangering the life of the software component on the market.[54] Nevertheless, this avenue must still be considered.

In Australia, the Copyright Amendment (Digital Agenda) Bill 1999 has been introduced into Parliament and the Copyright Amendment (Computer Programs) Act 1999 (Cth) has recently been passed.[55] Section 21 of the Copyright Act 1968 (Cth) will be amended by the Copyright Amendment (Digital Agenda) Bill as follows:

For the purposes of this Act, a computer program is taken to have been reproduced if:

an object code version of the program is derived from the program in source code by a process of compilation; or

a source code version of the program is derived from the program in object code by a process of decompilation;

and any such version is taken to be a reproduction of the program.

This means that it is not possible to hard reverse engineer object code without infringing copyright. Hard reverse engineering involves decompiling or disassembling object code to work back to some original form of the source code.[56] The technology for hard reverse engineering does exist and is continually being researched.[57] Yet according to the Copyright Amendment (Digital Agenda) Bill 1999, implementing such technology would infringe copyright if it were not done for the purposes of interoperability, error correction or security testing.[58] Hence, a third party software component developer withholding source code, could essentially protect the functionality of the component as well as its expression.

However, a distinction must be made between hard reverse engineering and what is common in the computer industry, namely, soft reverse engineering.[59] Soft reverse engineering is the study of the operation of the software and its documentation to understand its underlying function without actually decompiling the object code.[60] In this way the features and behaviour of the program can be reproduced without ever obtaining access to its source code.[61] A prime example of this is Microsoft’s creation of Word after WordPerfect was created. This form of reverse engineering is expressly allowed in the Copyright Amendment (Computer Programs) Act 1999 (Cth) in s 47B(3), which provides:

Subject to subsection (4), the copyright in a literary work that is a computer program is not infringed by the making of a reproduction of the work if:

the reproduction is made in the course of running a copy of the program for the purpose of studying the ideas behind the program and the way in which it functions; and

the running of the copy is done by, or on behalf of, the owner or licensee of the copy.

In fact, the Copyright Law Review Committee recommended that the Copyright Act 1968 (Cth) be amended to include a right to soft reverse engineer. This recommendation was based on Article 5(3) of the EC Directive on Computer Programs:

The person having a right to use a copy of a computer program shall be entitled, without the authorisation of the rightholder, to observe, study or test the functioning of the program in order to determine the ideas and principles which underlie any element of the program if he does so while performing any of the acts of loading, displaying, running, transmitting or storing the program which he is entitled to do.[62]

Since this recommendation has been adopted in the Copyright Amendment (Computer Programs) Act 1999 (Cth), the legislature is aware that copyright does not protect function, as recently espoused by the High Court of Australia in Data Access Corporation v Powerflex Services Pty Ltd.[63] As a consequence of the fact that the Copyright Amendment (Computer Programs) Act 1999 (Cth) allows soft reverse engineering, software component functionality would not be protected to a great extent under copyright law.

2.5 Patents

Using patents to encourage software reuse has been advocated by prominent authors because, unlike copyright it encourages reuse.[64] Copyright is only infringed where substantial copying occurs.[65] Hence, to avoid copyright infringement, programmers routinely rewrite or reinvent code to achieve the same function without infringing copyright. Since copyright protects the expression of code, and not the idea or its underlying function, it allows for reinvention.[66]

In contrast, the patent system is the most ideal intellectual property regime for providing incentive for software reuse through the licensing of software components. This is so for several reasons. A third party developer of software components wanting to license their component to a software developer who needs to integrate that software component into customised software would most likely need to reveal the source code.[67] Disclosure of source code would facilitate integration with other components or customised code.[68] To obtain a patent this disclosure could be made anyway.[69] Revelation of source code, if only protected by copyright, would stimulate reinvention since if only the idea is appropriated, then no copyright infringement would occur.[70] In contrast, if the software component was patented, appropriation of the idea or function would constitute patent infringement. Consequently, patents eliminate the incentive to reinvent.[71]

Software component developers will want to license their components on a wide scale to maximise profit and reuse. Patent protection is ideally suited for mass-marketed software although protection needs to be sought in each jurisdiction where licensing occurs.[72] Wide distribution of software components will lead to greater standardisation beneficially impacting interoperability.[73] Software components unable to be integrated with other software components will rapidly disappear from the market.[74] Patents can provide strong protection for discrete software components but minimal, if any, protection for the combination of several software components which is obvious.[75]

Software developers who license software components from third party software component developers can generally still improve on software components created by these third parties. The extent of the improvement determines whether or not the patent would be infringed without a licence. Substantial improvements, for example, inventing colour television, when black and white television was patented, would enable the subsequent inventor to obtain a patent on the improvement. Patents also protect against independent creation.[76] This means that another third party coincidentally inventing the same software component would not be able to license it without infringing the patent owned by the original inventor. Shrinkwrap licences, on the other hand, cannot protect the functional aspects of software components from independent creation.[77]

The patent regime is consequently ideally suited to a market where third parties develop software components and then license them. Once a patent has been granted for a software component, exploitation of that component is compulsory, otherwise the patent may be revoked.[78] The Patents Act 1990 (Cth) provides for compulsory licensing arrangements in certain circumstances.[79] Additionally, a flat statutory licensing fee scheme could be implemented to eliminate possibilities of single companies assuming too great a market share.[80]

2.6 The Optimal Legal Regime

Trade secrets are highly unsuited to the protection of software components since software reuse through software components is not confidential. Nor are shrinkwrap licences the most preferable option since software components are mass-marketed and contractual rights are not enforceable against those not a party to the contract. Copyright would also not protect the functional software component since only the expression of the code and not its underlying function is protected by copyright. The Copyright Amendment (Computer Programs) Act 1999 (Cth) expressly indicates that soft reverse engineering will not infringe copyright. Patents are consequently the best existing intellectual property protection available for promoting software reuse through the development of software components. The development of software patents has not been without criticism. However, the law in Australia and overseas has developed to allow for the patenting of software as discussed in the following section.

PART THREE

3.1 Software Patent Development in the United States and Australia

Patent protection for software has existed in Australia for several years now.[81] Accordingly, seeking a patent for software is not a new concept in practice, although seeking it for a software component is. Even though other countries, including Japan and the EC allow software patents, the development of patents in the United States and Australia will only be considered in this section, since the impetus behind the Australian adoption of software patents was the development of software patent law in the United States.

3.2 United States

Computer software programs, as understood today, have been in existence in the United States since the 1950s.[82] However, patents for software have only been extensively granted since the 1980s.[83] There has been a gradual transition from copyright to patents in order to protect software from misappropriation. In the 1972 case of Gottschalk v Benson,[84] the Court of Customs and Patent Appeals (CCPA) set out a test which was to be used in subsequent cases to determine the patentability of software. This test became known as the Freeman Walter Abele test, after application and development in re Freeman,[85] re Walter[86] and re Abele.[87] The test is as follows: if the claim(s) directly or indirectly recite(s) a mathematical algorithm, and it wholly preempts that algorithm (ie, the claimed invention as a whole is no more than the algorithm itself), then it is not statutory subject matter under Title 35 United States Code (U.S.C) s 101 and accordingly is not patentable. Basically, this test means that if the end product is merely an algorithm, as opposed to a physical manifestation, then it is not patentable.[88] The test applies to method claims.[89] In Benson’s case it was held that a mathematical algorithm could not be patented by itself.[90] This exception to patentability created by the test in Benson was added to the list of other unpatentable statutory subject matter including laws of nature, natural phenomena and abstract ideas.[91]

In 1981, the Supreme Court in Diamond v Diehr[92] held that a mathematical formula, defined as a procedure for solving a given type of mathematical problem, was not patentable on its own but if not preempted, as in this case, it was patentable. The claims in issue involved the application of mathematical formulae to the rubber curing process. Then in October 1982, the Federal Circuit Court of Appeals was formed. In 1992, the Federal Circuit Court of Appeals heard Arrhythmia Research Technology Inc. v Corazonix Corp.,[93] in which the patent in dispute involved the transformation of electrocardiograph signals from a heart beat by a machine through mathematical calculations. Newman J applied the Freeman Walter Abele test to hold that the claims were statutory subject matter. However, Rader J focused on Title 35 U.S.C s 101 solely to determine whether statutory subject matter was involved. The language of that section refers to a “useful process”.[94] On that basis Rader J concluded that the invention was statutory subject matter and therefore patentable. Rader J’s focus on the language of s 101 created a new test, namely what is referred to as the useful test.

In 1994, a number of cases were heard by the Federal Circuit Court of Appeals in respect of software claims. In Schrader[95] the Freeman Walter Abele test was applied to hold that the claims covering a linear programming method, with its only physical effect or result being the entering of bids in a record, were non-statutory subject matter. In dissent, Rader J applied the useful test as in the earlier case of Arrhythmia Research Technology Inc. v Corazonix Corp.,[96] to find the claims were statutory subject matter. In re Alappat[97] the useful test was applied by the majority: in contrast, the minority applied the Freeman Walter Abele test. The claim in issue was a rasterizer circuit for smoothing the trace of a digital oscilloscope. The majority held that the claim was “not a disembodied mathematical concept... but rather a specific machine to produce a useful, concrete and tangible result”.[98] The court, in Warmerdam[99] deviated slightly from the Freeman Walter Abele test by applying what is known as the abstract idea test. The question the court considered was “what is it that this process does, and in doing it is it other than what the Supreme Court must have understood to be ‘laws of nature, natural phenomena or abstract ideas’?”[100] The apparatus in question controlled the motion of objects, such as robots, so as to avoid collisions. The abstract idea test was applied to hold that a claim to a data structure alone was not statutory subject matter. In Trovato,[101] the Freeman Walter Abele test was applied yet again to hold as non-statutory subject matter a mathematically based linear programming technique to find the optimal path between two locations. Through these cases two predominant tests emerged, the Freeman Walter Abele test and the useful test.

In the Guidelines issued in 1995 by the United States Patent & Trademark Office (US PTO) in respect of software related inventions, the US PTO adopted the useful test following re Alappat.[102] Further, the US PTO recently issued Examination Guidelines for computer-related inventions specifically in respect of business, artificial intelligence and mathematical process applications.[103] Consistent with these Guidelines, in the last year the judiciary has moved away from the Freeman Walter Abele test and focused on the useful test.

In State Street Bank[104] decided on 23 July 1998, the United States Court of Appeals for the Federal Circuit held that effectively any software related invention was patentable so long as it produced a useful, concrete and tangible result. The software patent in issue related to a data processing system for implementing an investment structure. The court also denounced the ill-conceived exception for business method patents and held that business methods should be subject to the same test as any other process. In essence, the Court reinforced the law that abstract ideas in the form of mathematical algorithms or expressions are not patentable on their own, though their practical applications are patentable.

3.3 Australia

The law on software patents in Australia has closely followed the law as developed in the United States. In 1986, IP Australia published Guidelines entitled, “Guidelines for Considering the Patentability of Computer Program Related Inventions”.[105] These Guidelines adopted the Freeman Walter Abele test developed in the US courts. This test was applied in Australia in re Application by Honeywell Bull Inc.[106] to reject a claim for a data processing unit. The Australian Patent and Trademark Office (AU PTO) also used these Guidelines to reject a patent application for an improved method of visually representing curved images in computer graphics. However, in IBM v Commissioner of Patents,[107] Burchett J in the Federal Court of Australia reversed the AU PTO’s decision and held it was patentable. Effectively, Burchett J applied the useful test as most recently reinforced by the United States Court of Appeals for the Federal Circuit.

As a result of IBM v Commissioner of Patents,[108] IP Australia’s Guidelines were changed in 1992. These Guidelines adopted the new test: does the invention claimed involve the production of some commercially useful effect? These Guidelines and the IBM case were approved subsequently by the Full Federal Court in CCOM Pty Ltd & Anor v Jiejing Pty Ltd & Ors.[109] In that case the court held that a computer programmed to enable the retrieval and display of Chinese language characters for assembly into text was a patentable invention. Since then, the effect of these decisions has pointed the legal direction of software in the direction of patents. This can most recently be seen in Data Access Corporation v Powerflex Services Pty Ltd,[110] wherein the High Court of Australia held that copyright is unsuitable for protecting the functional aspects of software.[111] This reasoning reflects the purpose of the Copyright Act 1968 (Cth) which is to protect the expression of an idea rather than the idea itself.

3.4 Requirements for Patenting Software Components

“Patent law is more consistent with the development of a components market”.[112] Even though patent protection is given to software in Australia, certain requirements must be satisfied before a patent can be granted for a software component. Section 18 of the Patents Act 1990 (Cth) lists the statutory requirements of a patentable invention. It must be a manner of manufacture within the meaning of the Statute of Monopolies 1623 (Imp). Section 6 of the Statute of Monopolies 1623 (Imp) excludes patentability of inventions which are generally inconvenient. The invention must be novel and involve an inventive step, be useful and not secretly used before the priority date of the claim. Novelty is assessed by the prior art bases, which encompass similar products or processes. The invention is described in a specification which is a technical document disclosing the claims over which the inventor wants an exclusive monopoly.[113] The specification must give sufficient disclosure to allow an expert to recreate the invention.[114] The test as to whether or not an invention involves an inventive step, or is not obvious, is directly correlated to the level of disclosure in the specification. For example:

a disclosure so detailed that it can be built by a novice programmer effectively adopts this level of expertise, that of a novice programmer, as its skilled practitioner. This is an advantage to the inventor, for it means that the invention need only be nonobvious to a college-educated programmer.[115]

In the United States actual deposit of the software can satisfy the requirement of full disclosure.[116] In Australia, pursuant to s 40(2) of the Patents Act 1990 (Cth) a specification must describe the invention fully, including the best known method to the applicant of performing the invention which can include the actual source code. This requirement of full disclosure is consistent with the aim of the patent legislation to give protection to an inventor in exchange for the knowledge as to how to perform that invention. For software components to be merged with other customised code, it would be better for source code to be revealed together with the component. In this way any potential incompatibility the component has with the customised code can be removed by facilitating integration.[117]

Currently there are two types of patents that can be granted in Australia, a standard patent and a petty patent. A standard patent has protection for twenty years, whereas a petty patent has protection for one year, with possible extensions totalling six years.[118] However, the petty patent system adopted in 1979 in Australia may be replaced by innovation patents which have a duration of eight years. The Australian Committee for Industrial Property (ACIP) recommended this change, which the government intends to implement.[119] The innovation patent will have a lower inventive level requirement than the current petty patent system making it easier for software components to be granted a patent. The invention will still have to be novel. It will not be considered novel if the invention “varies from a previously publicly available article, product or process only in ways which make no substantial contribution to the effect of the product or working of the article or process”.[120] Other countries also have patents of shorter duration, such as Germany and Japan, where they are known as utility models. The United States has only one type of patent, that is the standard patent. Prominent US commentators have suggested the implementation of a patent of shorter duration which is more suited to software patents in the United States.[121]

Software has a generally high turn-over rate due to consistent advances, hence a shorter period of protection is more suitable.[122] It is for the inventor to decide how long the patent remains in force since annual maintenance fees, if not paid, cause the patent to lapse.[123] The standard of inventiveness for innovation patents is also less than that for standard and petty patents.[124] Patents of shorter duration, such as the petty patent or the proposed innovation patent are accordingly more suitable for software components than standard patents.[125]

A third party developer of software components who intends marketing their software components on an international scale must apply for patents separately in other jurisdictions. However, some countries, notably the United States, do not have the equivalent petty patent system and so other options need to be considered. In the United States a standard patent could be applied for but its practical duration of protection would be determined by when the market considers the software component to be obsolete, which could be less than the period of protection.

3.5 Software Component Examples and Their Distribution

Patents for software continue to be granted in ever increasing numbers. In the United States alone, the US PTO will have issued 40,000 software patents between 1998-99.[126] The most popular software category is that of networking and communication.[127] An interesting example of an United States patent application in the realm of software components is an application entitled “Distributed Computer Architecture and Process for Generating Reusable Software Components”.[128] This application was filed by Imagination Software in 1997. The invention is an architecture enabling manual or automatic transformation of unique C application programming interfaces (APIs) into a standard software component. In addition, numerous patents or applications in respect of distributing and licensing software over the Internet have been filed including “A secure pay as you use system for computer software”,[129] and “A method and apparatus for enabling the operation of software”.[130] A patent has been granted for an application entitled, “System for software registration”.[131] These patents on developing software components and distribution of software indicate that the software industry is seriously contemplating the move towards distribution of software components in an on-line world.

PART FOUR

4.1 The Importance of Software Reuse in the Development of the Software Industry

The software industry is slowly becoming a more defined, engineering-like discipline as it begins to mature. Computer scientists are being perceived more as software engineers. Software engineering refers to the management processes, software tooling, and design activities for software development.[132] In engineering “original designs are much more rarely needed than routine designs”.[133] Consequently, reuse is common in the engineering fields. However, software development is still more often than not treated as original creation rather than routine.[134] This is not because everything is new but because the capture and organization of this information is inefficient.[135] As yet, there is little or no infrastructure capturing this information in a readily accessible manner. Consequently, the idea of a software industry based upon software components distributed from on-line software component repositories is attractive, especially in light of the development of platform-independent languages.

David Wood, President of the Australian Java Users Group, stated that: “We don’t have to reinvent the wheel every time we want distributed Internet-based applications”.[136] Examples of this software component mentality already exist in the form of “plug & play” objects compatible with existing software objects.[137] With the onset of global communication through the Internet, the path is set for the development of interchangeable software components. Sun Microsystems Inc. is well on the way to developing a language which is not platform-dependent, or dependent on the type of operating system used. This language is Java and JavaBeans (a component architecture) allows software developers to create reusable components.[138] It appears that the technology is ready for an intellectual property system that encourages software components.

The software industry is not the first industry to develop the idea of reusable components. Industries with characteristics of the software industry, like the semi-conductor industry, which rely primarily on patent protection, have developed in this manner.[139] The gradual transition in the software industry towards becoming a software engineering discipline indicates that the industry is ready to embrace standards that are a by-product of software reuse.

4.2 Reuse and Patents: The Way Towards Standards

Standards promote uniformity of application in all industries. They ensure quality through a set of common criteria or by extensive use and improvement. In fact, according to a report made by International Resource Development Inc., “the emergence of standards is the greatest economic advance made by the computer industry in the last decade.”[140] Standards within the software industry are highly beneficial as they promote interoperability and convenience of use.[141] Interoperability is necessary to enable software products to work together on different platforms. Interoperability increases with standardisation as functionality is no longer limited to unique applications or operating systems. Convenience is important from a user perspective. For instance, it is impractical being unable to open a file created with one word processor in another word processor.[142] Additionally, familiarity is important. The more commonly a product is used, the greater value it has, since learning new programs is often tedious for the user.[143] However, standards are not created overnight. Standards can be developed through intellectual property incentives and acceptance in the market place.[144]

Software reuse through the licensing of software components will lead to the development of standards within the industry because of their reuse and common application. Patents, as opposed to copyright, are the incentive with potential to stimulate software reuse and consequently standardisation.[145] Copyright protection for software stimulates diversity, not standardisation.[146] However, in the software industry, where there are already billions of complex applications, standardisation is needed, not more diversity.

Nevertheless, some authors take the view that technology which sets standards should not be patented, since a monopoly should not be given on a standard that should be free for all to use.[147] But a distinction must be made between ex ante standards, which are created because of hardware or industry constraints and ex post standards, which are created due to the popularity of the product, service or system in the market place.[148] Inventors who create software components that become standards because of their ex post effects, should be able to benefit from a temporary “monopoly” even though it has become a standard.[149] Creating a temporary “monopoly” incentive (through patents) for software reuse (through software components) can create standards beneficial to the software industry, the creator and consumers. In order to avoid any potential for larger software companies monopolising standards, flat compulsory statutory licensing fees could be imposed by the government if necessary.[150]

4.3 Patented Software Components: Will They Restrict Competition?

The Trade Practices Act 1974 (Cth) governs restrictive trade practices and aims to prevent anti-competitive conduct in the market place. As the law now stands, s 51(3) of the Trade Practices Act 1974 (Cth) exempts certain conditions that relate to patents and other intellectual property rights from being subject to some provisions of the Act. This exemption applies to Part IV of the Trade Practices Act 1974 (Cth), so that intellectual property rights are not subject to ss 45, 45A, 47, 50 and 50A of Part IV of the Act. Section 45 prohibits agreements that would have the effect of substantially lessening competition in the market. Section 45A relates to price fixing, s 47 to exclusive dealing and ss 50 and 50A to mergers that would have the effect of substantially lessening competition in the market. Currently, intellectual property rights are exempt from those sections to the extent they relate to their intellectual property.

This exemption in the Trade Practices Act 1974 (Cth) was created because of the perceived conflict between intellectual property laws and competition laws. Intellectual property law was seen to create monopolies and competition law to break these monopolies down.[151] However, the grant of exclusive intellectual property rights are not equated with ‘monopoly’ rights or market power.[152] Hence, there is no real conflict between the laws. Accordingly, the National Competition Council has recommended the amendment of the exemption in s 51(3) of the Trade Practices Act 1974 (Cth).[153] The National Competition Council recommends amending s 51(3) by specifying that price and quantity restrictions and horizontal arrangements cannot benefit from the exemption. Horizontal arrangements are those between competitors.

The United States and the European Community have even more stringent competition laws. In the United States there is no equivalent to s 51(3).[154] In the European Community there is a limited range of territorial restriction exemptions relating to intellectual property licences.[155] Hence, United States and European Community law does not exempt intellectual property from anti-competitive practices as much as the current s 51(3) of the Australian Trade Practices Act 1974 (Cth). The recommendations of the National Competition Council are in line with Australia’s international obligations under the TRIPS Agreement. Articles 40(1) and (2) of the TRIPS Agreement provide that:

Members agree that some licensing practices or conditions pertaining to intellectual property rights which restrain competition may have adverse effects on trade and may impede the transfer and dissemination of technology.
Nothing in this Agreement shall prevent Members from specifying in their legislation licensing practices or conditions that may in particular cases constitute an abuse of intellectual property rights having an adverse effect on competition in the relevant market. As provided above, a Member may adopt, consistently with the other provisions of this Agreement, appropriate measures to prevent or control such practices…

Articles 40(1) and (2) of the TRIPS Agreement indicate that it is up to member States to prevent anti-competitive intellectual property licensing practices.

In terms of patented software components, the amendment of s 51(3) would mean that software component developers and distributors would not be able to make price and quantity restrictions with competitors. In addition, s 144 of the Patents Act 1990 (Cth) prohibits exclusionary or tying conditions in patent licences in certain circumstances. In essence, the ability of software component developers to restrict competition in Australia through restrictive licences is currently minimal, and will be even less if the National Competition Council’s recommendation on the amendment of s 51(3) is passed. Any licences entered into before the repeal of s 51(3) would continue to be exempt in accordance with the current s 51(3).[156]

Accordingly, competition law and patent law can work side by side. In fact the two have compatible goals. The patent system rewards inventors in return for public disclosure of their invention. The motivation for the grant of patent rights is to stimulate further creative work and disseminate knowledge.[157] The ability of greater dissemination of knowledge through patent disclosures will become even more pervasive in the future, as Patent Offices throughout the world go on-line with their patent databases.[158] In the future it may even be possible to have a centralised repository specifically for software components that is operated by software component distributors.

Conclusion

The software development process can be streamlined through the process of software reuse which can be encouraged by the development of software components protected by patents. Software reuse has an infinite number of benefits, hence reuse should be stimulated by our intellectual property laws. The function of software components can potentially be protected in several ways. However, by far the most efficient and effective existing law for the protection of software component functionality is patent law. Trade secrets, shrinkwrap licences and copyright are all inappropriate to some extent for the protection of software component functionality.

Software patent protection in Australia has to a large extent followed the development of software patent law in the United States. Software component developers must meet the inventive requirements before a patent can be granted on their software component. The sentiment of software components is already alive within the software industry as can be seen by numerous software applications and languages currently being developed. Software reuse is important in developing the software industry into an engineering-like discipline. Standards created through software reuse will be the sign of a maturing discipline. The rise in software components and their reuse through licensing arrangements will not necessarily restrict competition, especially in light of the National Competition Council’s proposal. Mass-marketed software components will increase efficiency through software reuse and interoperability through standardisation.

Bibliography

Books

Bennatan, Edwin On Time, Within Budget: Software Project Management Practices and Techniques (1995) John Wiley & Sons: New York.

Dean, Robert The Law of Trade Secrets (1990) The Law Book Company Limited: Sydney.

Garlan, David & Shaw, Mary Software Architecture: Perspectives on an Emerging Discipline (1996) Prentice Hall: New Jersey.

Hall, P. ed. Software Reuse and Reverse Engineering in Practice (1992) Chapman & Hall: London.

Hughes, Gordon and Sharpe, Anna Computer Contracts: Principles and Precedents (1992) 2nd ed. Volume 1, The Law Book Company: Sydney.

Leibowitz, A. ed. Business Qld 1999 - Book of Lists (1999) Pongrass Group Qld Operations Pty Ltd: Brisbane.

Lemay, Laura et al. Laura Lemay’s Java 1.1 Interactive Course (1997) Waite Group Press: US.

McKeough, Jill and Stewart, Andrew Intellectual Property in Australia (1997) 2nd ed. Butterworths: Sydney.

Nichols, Kenneth Inventing Software: The Rise of Computer Related Inventions (1998) Quorum Books: Westport Connecticut.

Reifer, Donald Practical Software Reuse (1997) John Wiley & Sons Inc.: New York.

Shaw, Paul Managing Legal and Security Risks in Computing and Communications (1998) Butterworth-Heinemann: Boston.

Zuse, Horst Software Complexity: Measures and Methods (1991) Walter de Gruyter: Berlin.

Articles

Anonymous The Choice is Clear: Write to JavaBeans http://sunsite.mff.cuni.cz/java/beans.

Anonymous “Software: Stitch Ups” (1994) Oct 29 The Economist 99.

Baer, Tony “The Politics of Reuse” (1997) 17(1) Software Magazine 57-59.

Berlin, David & Ramos, Carey “Three Ways to Protect Computer Software” (1999) 16(1) Computer Lawyer 16-24.

Chiariglione, Leonardo “Communication Standards:

Götterdämmerung?” (1998)

http://drogo.cselt.stet.it/leonardo/paper/standardisation.html.

De Boos, Rodney and Limbury, Alan “The Interface Between Trade Practices Legislation and Intellectual Property Law (1991) 9(4) Copyright Reporter 1-8.

Evans, Gail “The Substantive Protection of Information Products in the Digital Millennium: Opportunity Costs of Globalizing the Information Contract” (1999) paper presented at the Australasian Intellectual Property Conference, Southern Cross University, Coolangatta, Queensland 5-6 March.

Fitzgerald Anne “Background to Software Patenting in Australia” (1997) Australian Software Engineering Conference Sep 29 - Oct 2 IEEE Computer Society: Los Alamitos 113-114.

Fitzgerald, Brian and Evans, Gail “Information Transactions Under UCC Article 2B: The Ascendancy of Freedom of Contract in the Digital Millenium?” [1998] UNSWLawJl 46; (1998) 21(2) University of New South Wales Law Journal 404-435.

Franklin, Jonathan and Reichmann, Jerome “Privately Legislated Intellectual Property Rights: Reconciling Freedom of Contract with Public-Good Uses of Information” (1999) 147 University of Pennsylvania Law Review 875-970.

Fung, Justin “The Case of an Awkward Interface - Patents v. Competition” [1998] UNSWLawJl 65; (1998) 21(3) University of New South Wales Law Journal 757-786.

Haldiman, Robert “Ephemeral Infringement by Customizable Software: Liability Structures to Promote New Technology and Protect the Old” (1998) 80(9) Journal of the Patent and Trademark Office Society 651-674.

Harris, Micalyn “Is UCITA Worthy of Active Support?” (1999) October The Metropolitan Corporate Counsel 40, http://www.2bguide.com/docs/mh1099.html.

Jolish, Barak “Rescuing Reverse Engineering” (1998) 14(2) Santa Clara Computer & High Technology Law Journal 509-513.

Lemley, Mark & McGowan, David “Could Java Change Everything? The Competitve Propriety of a Propriety Standard” (1998) 43 Antitrust Bulletin 715-773.

Lemley, Mark & O’Brien, David “Encouraging Software Reuse” (1997) 49 Stanford Law Review 255-304.

Lyford, Jamie “Software Copyright - The Australian Position” (1998) Technology Contracts - 1998 Legal Seminar Papers LAAMS Publications: Sydney.

Moens, Annelies “The Use of Patents and Copyright for Software Protection” (1998) 4(2) Computer and Telecommunications Law Review 35-39.

Orenstein, David “Code Reuse: Reality Doesn’t Match Promise” (1998) 32(34) Computerworld 8.

Owen, Jane “Other Ways of Protecting Computer Software - What are the Viable Alternatives to Copyright?” (1996) 30 Computers & Law 13-18.

Pita, Frank “Reconciling Reverse Engineering and Conflicting Shrinkwrap License Terms Under UCC Article 2B: A Patent Law Solution” (1998) 14(2) Santa Clara Computer & High Technology Law Journal 465-475.

Poynder, Richard “Patent Information on the Internet” (1998) 15(1) Business Information Review 58-67.

Radding, Alan “Benefits of Reuse” (1997) March 31 Information Week 1A-6A.

Radding, Alan “Hidden Costs of Code Reuse: Code Reuse Seems to Make Sense” (1998) Nov 9 Information Week 1A-8A.

Samuelson, Pamela et al. “A Manifesto Concerning the Legal Protection of Computer Programs” (1994) 94(8) Columbia Law Review 2308-2431.

Stephens, Keith “Software Patent Developments: The PTO’s Examination Guidelines for Computer-Related Inventions” (1997) 14(6) The Computer Lawyer 14-19.

Swinson, John “Software Patents in the United States” (1993) 4(1) Journal of Law and Information Science 116-141.

Webber, David “Software Patents” (1997) Australian Software Engineering Conference Sep 29 - Oct 2 IEEE Computer Society: Los Alamitos 115.

Government and Newspaper Reports

Australian Government Introduction of the Innnovation Patent - Government Response to the Recommendations of the Advisory Council on Industrial Property (ACIP) Report: Review of the Petty Patent System http://www.ipaustralia.gov.au/about/A_innovat.htm

Copyright Law Review Committee Computer Software Protection (1995) Office of Legal Information and Publishing, Attorney General’s Department: Canberra.

IP Australia Maintaining your Application or Patent http://www.ipaustralia.gov.au/library/L_resrc1.htm.

Lewis, Peter “Personal Computers: A New World Brought to You By…” (1996) July 30 New York Times C7.

National Competition Council Review of Sections 51(2) and 51(3) of the Trade Practices Act 1974 Final Report (1999) http://www.ncc.gov.au.

O’Duibhir, Liam “I dream of Jini” (1999) March 2 The Australian 5.

United States Government Accounting Office Software Reuse: Major Issues Need to be Resolved Before Benefits can be Achieved (1993) Pub. NO. B-251542.

United States Patent and Trademark Office Examination Guidelines for Computer-Related Inventions: Training Materials Directed to Business, Artificial Intelligence, and Mathematical Processing Applications

http://www.uspto.gov/web/offices/pac/compexam/examcomp.pdf


[*] The author would like to thank her supervisor, Dr. Clive Turner, T C Beirne School of Law, The University of Queensland for his invaluable comments on the paper. Part Three of this paper is based on earlier works produced for Anne Fitzgerald, Software Engineering Australia and Dr. Cristina Cifuentes, Department of Computer Science and Electrical Engineering, The University of Queensland.

[1] Garlan and Shaw, Software Architecture: Perspectives on an Emerging Discipline (Prentice Hall, New Jersey, 1996), p153. Reuse need not be limited to code but can also include system architecture, documentation, user interfaces and data: Lemley and O’Brien, “Encouraging Software Reuse” (1997) 49 Stanford Law Review 255 at 264.

[2] For instance, AT&T, Digital, Hewlett Packard, IBM, Microsoft and Motorola: Lemley and O’Brien ibid.

[3] Lemley and O’Brien, op cit note 1, 266; Radding, “Benefits of Reuse” (1997) March 31 Information Week 1A at 3A; Reifer, Practical Software Reuse (John Wiley & Sons Inc, New York, 1997), p 4.

[4] Anonymous, “Software: Stitch Ups” (1994) Oct 29 The Economist 99 at 99.

[5] Lemay et al., Laura Lemay’s Java 1.1 Interactive Course (Waite Group Press, US, 1997), p 662.

[6] Lemley and O’Brien, op cit note 1, 260.

[7] Id., 263.

[8] United States Government Accounting Office, Pub. No. B-251542, Software Reuse: Major Issues Need to be Resolved Before Benefits Can be Achieved (1993) p19-20.

[9] Radding, op cit note 3, 1A.

[10] Zuse, Software Complexity: Measures and Methods (Walter de Gruyter, Berlin, 1991), at 28, 146.

[11] Lemley and O’Brien, op cit note 1, 261, 265.

[12] Radding, op cit note 3, 1A.

[13] Lemley and O’Brien, op cit note 1, 261, 266.

[14] Id., 261, 265.

[15] Ibid.

[16] Java Beans technology is being developed to facilitate software component technology: Lemay, op cit note 5, 663.

[17] “The rapid increase in popularity of the Internet and the Web poses a potential threat to the existing platform- dependent paradigm”: Lemley and McGowan, “Could Java Change Everything? The Competitive Propriety of a Propriety Standard” (1998) 43 Antitrust Bulletin 715 at 732.

[18] Haldiman, “Ephemeral Infringement by Customizable Software: Liability Structures to Promote New Technology and Protect the Old” (1998) 80(9) Journal of the Patent and Trademark Office Society 651 at 651: quotation by Nathan Myhrvold of Microsoft.

[19] Baer, “The Politics of Reuse” (1997) 17(1) Software Magazine 57 at 58; Orenstein, “Code Reuse: Reality Doesn’t Match Promise” (1998) 32(34) Computerworld 8 at 8; Radding, “Hidden Costs of Code Reuse” (1998) Nov 9 Information Week 1A at 1A.

[20] Radding, ibid.

[21]

[22] Baer, op cit note 19, 57; Radding, op cit note 19, 3A.

[23] Baer, ibid.

[24] Ibid.

[25] Radding, op cit note 19, 3A.

[26] Radding, op cit note 3, 3A.

[27] Radding, op cit note 19, 1A.

[28] Software projects run over time frequently: Bennatan, On Time, Within Budget: Software Project Management Practices and Techniques (John Wiley & Sons Inc., New York, 1995), p169. For example Fujitsu’s software development for Electronic Switching Systems delivered 20% on time before reuse, and 70% after reuse was implemented: Radding, op cit note 3, 3A.

[29] Radding, op cit note 19, 1A.

[30] Id., 4A.

[31] Id., 6A.

[32] Baer, op cit note 19, 57.

[33] Lemley and O’Brien, op cit note 1, 264.

[34] Leibowitz, ed. Business Qld 1999 - Book of Lists (Pongrass Group Qld Operations Pty Ltd, Brisbane, 1999), p 84.

[35] Orenstein, op cit note 19.

[36] Lemley and O’Brien, op cit note 1, 269.

[37] Id., 287.

[38] Reverse engineering is the disassembly of, in this case software, “to learn how it works and to appropriate its ideas”: Jolish, “Rescuing Reverse Engineering” (1998) 14(2) Santa Clara Computer & High Technology Law Journal 509 at 509.

[39] Dean, The Law of Trade Secrets (The Law Book Company Limited, Sydney, 190), p 20. “The continual references to trade secrets and attempts to define that phrase are as confusing as are references to confidential information as property: Dean, p 20.

[40] [1992] FCA 241; (1992) 108 ALR 163.

[41] Lemley, and O’Brien, op cit note 1, 269. Even if only object code were released, then it is still possible to reverse engineer it, even if the source code is a trade secret: Berlin and Ramos, “Three Ways to Protect Computer Software” (1999) 16(1) Computer Lawyer 16 at 20.

[42] Fitzgerald and Evans, “Information Transactions Under UCC Article 2B: The Ascendancy of Freedom of Contract in the Digital Millenium?” [1998] UNSWLawJl 46; (1998) 21(2) University of New South Wales Law Journal 404 at 414; Evans, “The Substantive Protection of Information Products in the Digital Millennium: Opportunity Costs of Globalizing the Information Contract” (1999) paper presented at the Australasian Intellectual Property Conference, Southern Cross University, Coolangatta, Queensland 5-6 March 1 at 3.

[43] Berlin and Ramos, op cit note 41, 20. Additionally “the shrinkwrap licence commonly disclaims all warranties, denies users the authority to make backup copies, modify, or resell the software, to decompile the code and, in the event of a dispute, invokes the law of the licensor’s chosen jurisdiction”: Evans, id., 7. For an example of a shrinkwrap licence see Hughes and Sharpe, Computer Contracts: Principles and Precedents (2nd ed, Vol. 1, The Law Book Company, Sydney, 1992), p 5285.

[44] ProCD v Zeidenberg 86 F.3d 1447 (7th Cir 1996).

[45] Section 208 of the proposed Article 2B makes provision for the enforcement of mass-market shrinkwrap and clickwrap licences. The UCITA which was approved on 29 July 1999 by the National Council of Commissioners on Uniform State Laws now replaces proposed Article 2B. “It became apparent to those involved in the legislative drafting process that Article 2, dealing with sales of goods, was ill-suited to transactions in software…”: Harris, “Is UCITA Worthy of Active Support?” (1999) The Metropolitan Council 40 at 40, also located at http://www.2bguide.com/docs/mh1099.html.

[46] See Franklin and Reichmann, “Privately Legislated Intellectual Property Rights: Reconciling Freedom of Contract with Public-Good Uses of Information” (1999) 147 University of Pennsylvania Law Review 875; Fitzgerald and Evans, op cit note 42; Pita, “Reconciling Reverse Engineering and Conflicting Shrinkwrap License Terms Under UCC Article 2B: A Patent Law Solution” (1998) 14(2) Santa Clara Computer & High Technology Law Journal 465; Evans, op cit note 42.

[47] “The risk is that the contractual format for marketing information makes it possible for the industry to write its own copyright law, in other words, to privately legislate its own intellectual property rights”: Evans, op cit note 42, 29. However, the proposed Article 2B’s licence terms, now in the UCITA are pre-empted and unenforceable to the extent they conflict with federal law: Pita, id., 472. But, “there is no guarantee that courts will necessarily find a shrinkwrap prohibition on reverse engineering to be unconscionable”, and hence unenforceable under s 208(a)(1) of the proposed Article 2B: Fitzgerald and Evans op cit note 42, 432.

[48] Fitzgerald and Evans, op cit note 42, 407. There are no reported Australian or English decisions on shrinkwrap licences: Hughes and Sharpe, op cit note 43, 563.

[49] This is known as privity of contract.

[50] Berlin and Ramos, op cit note 41, 22.

[51] Lewis, “Personal Computers: A New World Brought to You By…” (1996) July 30 New York Times C7.

[52] Coogi Australia Pty Ltd v Hysport International Pty Ltd and Others [1998] FCA 10; (1998) 41 IPR 593 at 621; Powerflex Services Pty Ltd v Data Access Corporation [1996] FCA 460; (1997) 37 IPR 436 at 450; Autodesk Inc. v Dyason (No 1) [1992] HCA 2; (1992) 173 CLR 330 at 344.

[53] Sega v Accolade [1993] USCA9 19; 977 F.2d 1510 at 1522.

[54] Source code would generally need to be revealed to facilitate integration with customised software: Lemley and O’Brien, op cit note 1, 269. Additionally major software companies are beginning to distribute their source code including Sun Microsystems, Apache, Netscape, potentially Novell and Microsoft.

[55] The Copyright Amendment (Computer Programs) Act 1999 (Cth) was passed by the House of Representatives on 12 August 1999 and the Copyright Amendment (Digital Agenda) Bill 1999 was introduced into Parliament on 2 September 1999:

http://www.dca.gov.au/mediarel.html visited 1/11/99.

[56] Lyford, “Software Copyright - The Australian Position” in Technology Contracts - 1998 Legal Seminar Papers (LAAMS Publications, Sydney, 1998), p 3.

[57] Hall, ed. Software Reuse and Reverse Engineering in Practice (Chapman & Hall, London, 1992) p 209.

[58] Copyright Amendment (Computer Programs) Act 1999 s 47D, E, F.

[59] The Supporters of Interoperable Systems in Australia claim that soft reverse engineering is the “most common form of reverse engineering used in the computer industry”: Copyright Law Review Committee, Computer Software Protection (Office of Legal Information and Publishing, Attorney General’s Department, Canberra, 1995), p 175.

[60] Ibid.

[61] A “clean room” approach is often adopted, whereby a team of analysts decompiles the software to understand its structure, then produces a document explaining the structure. A second team is given the explanatory document and then recreates a new program: Lyford, op cit note 56; Berlin and Ramos op cit note 41, 20.

[62] 91/250/EEC of 14 May 1991.

[63] [1999] HCA 49 (30 September 1999) Para 21.

[64] Lemley and O’Brien, op cit note 1, 255.

[65] Copyright Act 1968 (Cth), s14.

[66] “Copyright protection extends to expressions and not to ideas, procedures, methods of operation or mathematical concepts as such”: Article 2, 1996 WIPO Copyright Treaty, adopted at the Diplomatic Conference, Geneva 20 December 1996.

[67] Lemley and O’Brien, op cit note 1, 269.

[68] In the software industry there is a movements towards open source standards anyway, which means that companies are distributing their source code with their products. Companies which have distributed their software open source include Netscape, Sun Microsystems etc, and potentially Microsoft and Novell.

[69] Patents Act 1990 (Cth), s40(2). See discussion on disclosure of source code in patent applications in Moens, “The Use of Copyright and Patents for Software Protection” (1998) 4(2) Computer and Telecommunications Law Review 35 at 38.

[70] Op cit note 52.

[71] Lemley and O’Brien, op cit note 1, 294.

[72] Berlin and Ramos, op cit note 41, 23.

[73] Interoperability is the ability of software to be used with other software or hardware so that it is functional. See examples of interoperability in Lyford, op cit note 56.

[74] The value of standards lies in the ability to interoperate with goods compatible with the standard: Lemley and McGowan, op cit note 17, 721.

[75] A patent cannot be granted for an obvious invention. See discussion on requirements for patentability in Part 3.4 of this paper.

[76] Patents Act 1990 (Cth), s123.

[77] Pita, op cit note 46, 470.

[78] Patents Act 1990 (Cth), s134.

[79] Patents Act 1990 (Cth), s133.

[80] Lemley and McGowan op cit note 17, 760.

[81] IBM v Commissioner of Patents [1991] FCA 625; (1992) 22 IPR 417.

[82] Webber, “Software Patents” in Australian Software Engineering Conference Sep 29 - Oct 2 (IEEE Computer Society, Los Alamitos, 1997), p115.

[83] Ibid.

[84] [1972] USSC 223; 409 U.S. 63, 175 U.S.P.Q. 673 (1972).

[85] 573 F.2d 1237, 197 U.S.P.Q 464 (1978).

[86] 618 F.2d 758, 205 U.S.P.Q 397 (1980).

[87] 684 F.2d 902, 214 U.S.P.Q. 682 (1982).

[88] Owen, “Other Ways of Protecting Computer Software - What are the Viable Alternatives to Copyright?” (1996) 30 Computers & Law 13 at 14.

[89] Swinson, “Software Patents in the United States” (1993) 4(1) Journal of Law and Information Science 116 at 122.

[90] Op cit note 84.

[91] Diamond v Diehr [1981] USSC 40; 450 US 175, 185 (1981).

[92] Diamond v Diehr [1981] USSC 40; 450 US 175, 185 (1981).

[93] [1992] USCAFED 298; 958 F.2d 1053, 2 U.S.P.Q 2d 1033 (1992).

[94] 35 U.S.C s 101: “Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.”

[95] [1994] USCAFED 373; 22 F.3d 290, 30 U.S.P.Q. 2d 1455 (Fed Cir 1994).

[96] [1992] USCAFED 298; 958 F.2d 1053, 2 U.S.P.Q 2d 1033 (1992).

[97] 33 F.3d 1526 (Fed Cir 1994).

[98] 33 F.3d 1526 (Fed Cir 1994) at 1544.

[99] [1994] USCAFED 719; 33 F.3d 1354 (Fed Cir 1994).

[100] [1994] USCAFED 719; 33 F.3d 1354 (Fed Cir 1994) at 1359.

[101] [1994] USCAFED 1242; 33 U.S.P.Q. 2d 1194 (Fed Cir 1994).

[102] 33 F.3d 1526 (Fed Cir 1994).

[103] United States Patent and Trademark Office, Examination Guidelines for Computer-Related Inventions: Training Materials Directed to Business, Artificial Intelligence, and Mathematical Processing Applications http://www.uspto.gov/web/offices/pac/compexam/examcomp.pdf visited 1/11/99.

[104] State Street Bank & Trust Co. v Signature Financial Group Inc. [1998] USCAFED 107; 149 F.3d 1368 (Fed Cir 1998).

[105] Fitzgerald, “Background to Software Patenting in Australia” in Australian Software Engineering Conference Sep 29 - Oct 2 (IEEE Computer Society, Los Alamitos, 1997), p113.

[106] [1991] APO 26; (1991) 22 IPR 463.

[107] IBM v Commissioner of Patents [1991] FCA 625; (1992) 22 IPR 417.

[108] IBM v Commissioner of Patents [1991] FCA 625; (1992) 22 IPR 417.

[109] [1994] FCA 396; (1994) 122 ALR 417.

[110] [1999] HCA 49 (30 September 1999).

[111] [1999] HCA 49 (30 September 1999) Para 21.

[112] Lemley and O’Brien, op cit note 1, 294.

[113] McKeough and Stewart, Intellectual Property in Australia (2nd ed, Butterworths, Sydney, 1997), p 272.

[114] Id., 273.

[115] Nichols, Inventing Software: The Rise of Computer Related Inventions (Quorum Books, Westport Connecticut, 1998), p 52.

[116] McKeough and Stewart, op cit note 113, 247.

[117] Lemley and O’Brien, op cit note 1, 269.

[118] Patents Act 1990 (Cth), ss67, 68.

[119] The Minister of Science and Technology announced this in February 1997.

[120] Australian Government, Introduction of the Innovation PatentGovernment Response to the Recommendations of the Advisory Council on Industrial Property (ACIP) Report: Review of the Petty Patent System” http://www.ipaustralia.gov.au/about/A_innovat.htm visited 18/11/99.

[121] Samuelson, et al., “A Manifesto Concerning the Legal Protection of Computer Programs” (1994) 94(8) Columbia Law Review 2308.

[122] Moens, op cit note 69, 37.

[123] Maintenance fees for standard patents are payable as from the 5th year: IP Australia Maintaining your Application or Patent http://www.ipaustralia.gov.au/library/L_resrc1.htm visited 18/11/99.

[124] Op cit note 120.

[125] In fact it is not uncommon that a petty patent is granted 6-8 months after application: Lyford, op cit note 56, 24.

[126] Aharonian, Internet Patents News Service. Internet Mailing List. Also available at http://lpf.ai.mit.edu/Patents/ipns/ipns-19981018.txt visited 1/11/99.

[127] Ibid.

[128] United States application: PCT/US97/18648, WO98/18079, Australian application ID: 48223/97.

[129] Australian application: PCT/AU97/00010, WO97/25675, Australian application ID: 13598/97.

[130] Australian application: PCT/AU97/00463, WO98/04974, Australian application ID: 34306/97.

[131] Australian application: PCT/AU93/00483, WO94/07204, Australian application ID: 48113/93.

[132] Garlan and Shaw, op cit note 1, 6.

[133] Id., 7.

[134] Ibid.

[135] Ibid.

[136] O’Duibhir, “I dream of Jini” (1999) March 2 The Australian 5 at 5.

[137] Stephens, “Software Patent Developments: The PTO’s Examination Guidelines for Computer-Related Inventions” (1997) 14(6) The Computer Lawyer 14 at 17.

[138] Anonymous, “The Choice is Clear: Write to JavaBeans” http://sunsite.mff.cuni.cz/java/beans visited 1/11/99. “Sun Microsystems is the developer and licensor of the JAVA trademark technology, which comprises a standardised application programming environment that affords software developers the opportunity to create and distribute a single version of programming code that is capable of operating on many different, otherwise incompatible systems platforms and browsers:” http://java.sun.com/lawsuit/amend_complaint.html visited 1/11/99.

[139] Lemley and O’Brien, op cit note 1, 296.

[140] Shaw, Managing Legal and Security Risks in Computing and Communications (Butterworth-Heinemann, Boston, 1998) p 222.

[141] Lemley and O’Brien, op cit note 1, 287.

[142] Chiariglione, “Communication Standards: Götterdämmerung?” (1998) http://drogo.cselt.stet.it/leonardo/paper/standardisation.html.

[143] “Users will naturally gravitate towards a single standard platform and tend to stay there”: Lemley and McGowan, op cit note 17, 716-717.

[144] Even if an inferior standard were created by an intellectual property incentive, such as patents, this may still be more efficient than having no standard, “since consumers would get the network benefits of using products that could interoperate”: Lemley and McGowan, op cit note 17, 723.

[145] Copyright Law Review Committee, op cit note 59, 111.

[146] Ibid.

[147] Haldiman, op cit note 18, 657.

[148] Ibid.

[149] Provisional applications can be filed in Australia allowing the inventor and industry to determine the viability of the software component before a patent is granted, without removing the inventor’s priority date on the invention. In the United States a one year grace period exists which enables evaluation of the commercial potential of the invention.

[150] Lemley and McGowan, op cit note 17, 760.

[151] National Competition Council, Review of Sections 51(2) and 51(3) of the Trade Practices Act 1974 Final Report March 1999, 1 at 157 http://www.ncc.gov.au visited 1/11/99.

[152] “It is inappropriate to use the term ‘monopoly’ in the context of the rights bestowed by an intellectual or industrial property right”: De Boos and Limbury “The Interface Between Trade Practices Legislation and Intellectual Property Law” (1991) 9(4) Copyright Reporter 1 at 5.

[153] National Competition Council, op cit note 151, 157.

[154] Id., 186.

[155] Id., 187.

[156] Id., 244.

[157] Further principles behind the motivation for patents include, incentive and reward: Fung, “The Case of an Awkward Interface - Patents v. Competition” [1998] UNSWLawJl 65; (1998) 21(3) University of New South Wales Law Journal 757 at 768.

[158] Canadian Patent Database: http://patents1.ic.gc.ca/intro-e.html; Japanese Patent Database: http://www2.jpo-miti.go.jp; European Patent Database: http://www.european-patent-office.org; Australian Patent Database: http://www.ipaustralia.gov.au/patents/P_srch.htm all visited 1/11/99. More links to patent database sites can be found in the following article: Poynder, “Patent Information on the Internet” (1998) 15(1) Business Information Review 58.


AustLII: Copyright Policy | Disclaimers | Privacy Policy | Feedback
URL: http://www.austlii.edu.au/au/journals/JlLawInfoSci/1999/4.html