The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
Nov. 18, 2014
Filed:
Feb. 01, 2012
Randall Edward Aull, Kenmore, WA (US);
Pankaj Bharti Gupta, Bothell, WA (US);
Robert Eugene Harris, Jr., Woodinville, WA (US);
Jane Evguenia Lawrence, Redmond, WA (US);
Venkatesh-prasad Ranganath, Karnataka, IN;
Pradip Harindran Vallathol, Kerala, IN;
Randall Edward Aull, Kenmore, WA (US);
Pankaj Bharti Gupta, Bothell, WA (US);
Robert Eugene Harris, Jr., Woodinville, WA (US);
Jane Evguenia Lawrence, Redmond, WA (US);
Venkatesh-Prasad Ranganath, Karnataka, IN;
Pradip Harindran Vallathol, Kerala, IN;
Microsoft Corporation, Redmond, WA (US);
Abstract
A 'Compatibility Tester' extracts observable behaviors from different system implementations (e.g., software, operating systems, device drivers, hardware interfaces, etc.), then performs compatibility testing via comparisons of the extracted behaviors. Traces (e.g., bus level signals between controllers and hardware devices or commands between software components) representing observable behaviors of different implementations of a system are captured. Temporal and structural rules are then mined from these traces. The mined rules (or a model constructed from those rules) are used by a 'Rule Checking' process that determines whether reference rules (mined from a known compatible system) are compatible with rules mined from test traces of a second system. Invalid rules are flagged as behavioral compatibility bugs. Alternately, the mined rules are used by a “Rule Diffing” process that performs set differencing of the behavioral and structural rules mined from the different system implementations, with differences between the systems flagged as behavioral compatibility bugs.