Skip to main content
  1. dIPlex
  2. /
  3. Software Patents
  4. /
  5. NoveIty and non-obviousne...

NoveIty and non-obviousness for software

Reading Time: 9 mins
A software developer creating software inventions

Applying the concept of novelty to software

A fundamental requirement for any invention to be patentable is novelty. In the context of software, this means that the invention must be new; it cannot have been previously disclosed to the public in any form before the date of the patent application. This principle seems straightforward, but its application to software presents unique challenges.

Software, by its nature, is often built upon existing code, algorithms, and libraries. New software may incorporate or modify existing components, making it difficult to determine what truly constitutes a “new” invention. For example, a new software application might use a well-known algorithm but implement it in a novel way or for a new purpose. Determining whether such an application is sufficiently “new” to warrant a patent requires careful analysis.

Further complicating the issue is the rapid pace of software development and the prevalence of online dissemination. Software code, documentation, and discussions are frequently shared on the internet, potentially creating a vast and rapidly evolving body of prior art. This makes it challenging to ascertain whether a software invention has truly not been previously disclosed.

The problem of software prior art

Prior art, which encompasses any evidence that an invention was previously known or available, is crucial in assessing both novelty and non-obviousness. In the context of software, identifying and evaluating relevant prior art can be particularly challenging.

Traditional patent databases, while valuable, may not capture the full scope of software prior art. Software development often occurs outside the formal patent system, with code and ideas being shared through various channels, including:

  • Online repositories: Platforms like GitHub host vast amounts of open-source code, which may contain relevant prior art.
  • Conference proceedings and technical publications: Academic and industry conferences often feature papers and presentations on software innovations.
  • Industry practices and standards: Common software development practices and industry standards may not be formally documented but can still constitute prior art.
  • Websites and online forums: Websites, blogs, and online forums may contain discussions and disclosures of software techniques and ideas.

The diverse and often informal nature of software prior art necessitates specialized search strategies and tools. Patent examiners and practitioners must be adept at searching these various sources to conduct a thorough prior art search.

The “Person Having Ordinary Skill in the Art” (PHOSITA) in software

To assess both non-obviousness, it is essential to determine whether an invention would have been obvious to a “person having ordinary skill in the art” (PHOSITA). In the context of software, defining the PHOSITA can be complex.

Software development is a highly interdisciplinary field, drawing on expertise from computer science, mathematics, electrical engineering, and various application domains. A typical software developer may possess a bachelor’s or master’s degree in computer science, along with several years of experience in software design, coding, and testing. However, the specific skills and knowledge of a PHOSITA can vary significantly depending on the specific area of software development. For example, the PHOSITA for a web application might have different expertise than the PHOSITA for a complex operating system or a machine learning algorithm.

Determining the relevant PHOSITA is further complicated by the rapid evolution of software technology. New programming languages, development tools, and design paradigms emerge frequently, requiring software developers to continuously update their skills.

Assessing inventive step/non-obviousness in software inventions

The requirement of inventive step (in Europe) or non-obviousness (in the US) seeks to ensure that patents are granted only for inventions that represent a sufficient advance over the prior art. This prevents the patenting of trivial modifications or combinations of existing technologies.

Assessing inventive step or non-obviousness in software inventions can be particularly challenging due to the following factors:

The complexity of software:

The incremental nature of software development:

The prevalence of modularity and reuse:

Patent examiners and courts consider various factors when assessing inventive step or non-obviousness, including:

The scope and content of the prior art:

The differences between the claimed invention and the prior art:

The level of ordinary skill in the art:

The technical problem solved by the invention:

The problem that the invention addresses and the technical challenges involved are analyzed.

The problem that the invention solves provides context for evaluating its non-obviousness. If the invention addresses a long-standing or significant problem in the field, it is more likely to be considered non-obvious. The technical challenges involved in solving the problem, such as limitations of existing technology or difficulties in implementation, are also taken into account.

The technical effect achieved by the invention:

Any technical advantages or improvements resulting from the invention are evaluated.

In addition to solving a technical problem, a patentable software invention should also provide a technical effect or improvement. This could include enhanced performance, increased efficiency, improved reliability, or other tangible benefits. The presence of a technical effect can help to distinguish a patentable invention from an abstract idea or a mere automation of a manual process.

Secondary considerations:

Evidence such as commercial success, long-felt but unsolved needs, and failure of others can support a finding of non-obviousness.

These secondary considerations provide real-world evidence of the invention’s significance and non-obviousness. Commercial success suggests that the invention filled a market need and was not an obvious solution. Long-felt but unsolved needs indicate that others in the field had tried and failed to solve the problem, making the invention less likely to be obvious. The failure of others to arrive at the same solution despite attempts to do so can also support a finding of non-obviousness.

The role of hindsight bias

Hindsight bias, the tendency to view past events as having been more predictable than they actually were, poses a significant challenge in assessing non-obviousness. When evaluating a software invention, it is crucial to avoid using knowledge of the invention to judge whether it would have been obvious to a PHOSITA at the time of the invention.

Hindsight bias can lead to an underestimation of the inventive step involved in a software invention. An examiner or judge, knowing the solution, may find it difficult to appreciate the challenges a software developer faced in arriving at that solution.

To mitigate the effects of hindsight bias, it is essential to focus on the prior art that was available at the time of the invention and to consider the perspectives and motivations of a PHOSITA at that time.

Examples of novel and non-obvious software inventions

The following examples illustrate the application of the principles of novelty and non-obviousness to software inventions:

Novel software inventions

  • A new method for compressing video data that achieves a higher compression ratio than existing methods without sacrificing video quality.
  • A novel algorithm for routing network traffic that reduces latency and improves network efficiency.

A new software architecture that enables more efficient parallel processing on multi-core processors.

Non-obvious software inventions

  • A software-implemented method for detecting and preventing zero-day attacks that leverages a combination of machine learning and network analysis techniques in a way that was not previously known in the art.
  • A new user interface that simplifies a complex software application, making it more intuitive and user-friendly, where the simplification involves a novel approach to information presentation and user interaction.
  • A software system that integrates data from disparate sources to provide a unified view, where the integration process involves a novel algorithm for data normalization and reconciliation that overcomes significant technical challenges.

These examples demonstrate that software inventions can be both novel and non-obvious if they provide a new and non-obvious solution to a technical problem.

The impact of modularity and software reuse

Modern software development relies heavily on modularity and code reuse. Developers often build new software by combining existing software components, libraries, and frameworks. This practice raises complex questions regarding novelty and non-obviousness.

If a software invention consists of a new combination of known software elements, its patentability depends on whether the combination, as a whole, is novel and non-obvious. A mere aggregation of known elements, with each element functioning as expected, is generally not considered patentable. However, a new combination that produces a synergistic effect or solves a technical problem in a non-obvious way may be patentable.

The assessment of non-obviousness in such cases requires careful consideration of the following factors:

  • Whether the combination of elements would have been obvious to a PHOSITA.
  • Whether the combined elements interact in a new or unexpected way.
  • Whether the invention provides a technical advantage that was not present in the individual elements.

In conclusion, the requirements of novelty and non-obviousness are crucial for ensuring that software patents are granted only for genuine inventions that advance the state of the art. The unique characteristics of software, the challenges of finding and evaluating prior art, and the complexities of assessing what is obvious to a skilled person in the field make the application of these requirements particularly challenging.

Expert