A common question I get from the start-up community here in Austin is “Can I patent software for my mobile application and software?” Currently the United States is a jurisdiction that allows for software to be patented while other jurisdictions, such as Japan do not allow software to be patented.
In re Bilski, a pivotal case dealing with software patents made a decision regarding business method patents and software patents. In this case, the Supreme Court reiterated the machine or transformation test is the test that should be used for all patent eligible subject matter including software. Accordingly, software is patent in the United States provided that the software processes and functions are novel and can be tied to a machine or processor. The novelty requirement for patents is similar to the requirements for all inventions under 35 USC 101, 102, 103, and 112. The “tied to a machine” requirement requires that a patented invention is performed using a computing device, processor, memory, etc. The essentially function of being tied to a machine is required so that the machine is not a pure business method patent and also that the machine cannot purely be completed by hand.
The next question inventors may have is “how do I make sure my patent is tied to a machine?” There are several ways to complete this task. The first is to split up the different functions of your code into modules that can be completed by the same and/or different processors. The United States Patent and Trademark office has held that having “a processor determine” the functions of your invention is enough to overcome the machine requirement of software. What I recommend and how I draft my patents is to tie each function of the code to a different processor/module. For example, I typically will have a communications module configured to transmit data over a network, a X module configured to determine X, a y module configured to determine y, etc. Therefore, there will be a plurality of modules/processors in the device that are tied to a machine. Furthermore, the USPTO has held that data being transmitted/received over a network requires a machine, because networks are comprised of servers, network elements, base stations, etc. that are hardware components.
What are the benefits of obtaining patent protection for computer software?
The primary benefit of obtaining patent protection for mobile applications and/or computer software is the same as other inventions, to obtain protection provided by patent laws. An owner of a patent can inhibit others from making, using, selling, importing and exporting the patent invention. If the computer software is a new program that may be used by other programs to make the software more efficient then patenting the invention may be paramount. For example, if your company has invented a standard for transmitting wireless signals that conserves power (or for any other reason), if this standard is used by other company’s products then patenting your invention would be a wise idea.