PTAB
IPR2013-00226
SAS Institute Inc. v. ComplementSoft, LLC
1. Case Identification
- Case #: Not Yet Assigned
- Patent #: 7,110,936
- Filed: March 29, 2013
- Petitioner(s): SAS Institute, Inc.
- Patent Owner(s): Complementsoft LLC
- Challenged Claims: 1-16
2. Patent Overview
- Title: SYSTEM AND METHOD FOR GENERATING AND MAINTAINING SOFTWARE CODE
- Brief Description: The ’936 patent discloses an integrated development environment for generating and maintaining software code. The system comprises four main components—a document manager, editor, parser layer, and visualizer—that are dynamically linked to allow synchronized textual and graphical views of source code, particularly for data manipulation languages.
3. Grounds for Unpatentability
Ground 1: Anticipation over Antis - Claims 1-3 and 5 are anticipated by Antis under 35 U.S.C. §102.
- Prior Art Relied Upon: Antis (Patent 5,572,650).
- Core Argument for this Ground:
- Prior Art Mapping: Petitioner argued that Antis, which discloses a relational database analysis system, teaches every element of independent claim 1. Antis allegedly discloses an integrated environment with a document manager (using Cscope browser and an "over view" to retrieve source code), an editor (an "expanded code view" for editing), a parser layer (based on YACC to detect database languages), and a visualizer (the "code view" showing data and program flows). Petitioner asserted these components are dynamically linked, as Antis teaches that changes in one view cause corresponding changes in other linked views.
- Key Aspects: Petitioner asserted that Antis anticipates dependent claims by depicting both data flows (claim 2) and program flows (claim 3) in its "code view" and teaches retrieving all related files for editing (claim 5).
Ground 2: Obviousness over Antis and Coad - Claims 1-3, 5, 6, 8, 10-12, 15, and 16 are obvious over Antis in view of Coad.
- Prior Art Relied Upon: Antis (Patent 5,572,650) and Coad (Patent 6,851,107).
- Core Argument for this Ground:
- Prior Art Mapping: Petitioner argued that to the extent Antis does not explicitly teach every limitation, Coad supplies the missing elements. Coad, a software development tool with synchronized graphical and textual views, was previously cited during prosecution. Petitioner contended Coad explicitly discloses a quality assurance (QA) module for detecting errors (relevant to claim 12), providing debugging hints (claim 15), allowing users to maintain those hints (claim 16), and using a template manager for inserting pre-programmed code (claims 8 and 10).
- Motivation to Combine: A POSITA would combine the teachings because both references are directed to software development tools that provide visual representations of source code. A POSITA would be motivated to supplement Antis’s database analysis system with Coad's more advanced QA and debugging features to create a more robust and user-friendly development environment.
- Expectation of Success: A POSITA would have a reasonable expectation of success in combining these systems, as they share the common purpose of improving software development through synchronized visual and textual interfaces, making their integration a predictable improvement.
Ground 3: Obviousness over Antis, Coad, and Burkwald - Claim 4 is obvious over Antis in view of Coad and Burkwald.
Prior Art Relied Upon: Antis (Patent 5,572,650), Coad (Patent 6,851,107), and Burkwald (Patent 6,356,285).
Core Argument for this Ground:
- Prior Art Mapping: This ground specifically addresses claim 4, which adds the limitation that graphical representations of data flows are "expandable and collapsible." Petitioner argued that while the base combination of Antis and Coad teaches the other elements, Burkwald explicitly discloses this feature. Burkwald teaches a software visualization technique that allows a user to expand or collapse a displayed graphical representation of source code flow using a zoom bar.
- Motivation to Combine: A POSITA would combine Burkwald with the system of Antis and Coad because all three references are directed to improving the visual analysis of source code. Incorporating Burkwald’s expandable/collapsible view would be a simple design choice to provide a developer with greater flexibility and control over the level of detail displayed, which was a known method for managing complex visual information.
- Expectation of Success: The integration of an expandable/collapsible view into a graphical user interface was a well-understood technique, ensuring a high likelihood of success.
Additional Grounds: Petitioner asserted additional obviousness challenges against various dependent claims by combining Antis and Coad with other references to teach specific features. These included combinations with Eick (Patent 5,937,064) for adding a security layer; "Building Applications" (a Microsoft Access 97 guide) for automatic syntax correction; Corda (Patent 5,758,122) for changing the appearance of displayed flows to indicate errors; and Access 97 Visual Basic for highlighting erroneous code.
4. Key Claim Construction Positions
- "automatically": Petitioner adopted the construction "without user intervention." This was argued to be consistent with the '936 Patent’s description of changes being "immediately reflected" and was central to the argument that the prior art's synchronized views met this limitation.
- "data manipulation language": Petitioner proposed the construction "a programming language used to access data in a database, such as to retrieve, insert, delete, or modify data in the database." This construction was critical to refuting the Patent Owner's arguments during prosecution that distinguished the prior art.
5. Key Technical Contentions (Beyond Claim Construction)
- A central technical contention was that the Patent Owner's argument during prosecution, which distinguished the claimed "data manipulation languages" (allegedly "unstructured") from the prior art's object-oriented languages (allegedly "structured"), is technically misleading and incorrect. Petitioner argued that a POSITA would understand that data manipulation languages like SQL are, in fact, structured programming languages, and thus the basis for allowance was flawed.
6. Relief Requested
- Petitioner requests institution of an IPR for claims 1-16 of the ’936 patent and cancellation of all challenged claims as unpatentable.