| Patent application number | Description | Published |
| 20080209401 | Techniques for integrating debugging with decompilation - Various technologies and techniques are disclosed for integrating debugging with decompilation. A debugger integrated with a decompiler is provided. The system determines a need to debug at least a portion of an application for which necessary debug information is not available. A decompile process is performed to decompile a binary into a decompiled source code in a particular language. A symbol file is generated that maps code sequence execution points to the decompiled source code. The decompiled source code and the symbol file are provided to the debugger. The debugging then continues using the decompiled source code. The user is able to debug applications when source code and symbol files are not available, and/or when the user prefers to debug in a different language than the language of the available source code. | 08-28-2008 |
| 20080320457 | Intermediate Code Metrics - Metrics may be determined from intermediate computer code by reading and analyzing an entire application using intermediate code, including any linked portions. The metrics may include cyclomatic complexity, estimated or actual number of lines of code, depth of inheritance, type coupling, and other metrics. The metrics may be combined into a quantifiable metric for the code. | 12-25-2008 |
| 20090144698 | PRIORITIZING QUALITY IMPROVEMENTS TO SOURCE CODE - An exemplary method includes receiving source code having a plurality of code segments, providing a desired level of quality for the source code, analyzing the source code to assign a complexity measure to each of the plurality of code segments and assigning a level of code coverage to each of the plurality of code segments based at least in part on the desired level of quality and the complexity measures. An exemplary system prioritizes quality improvements to source code based, in part, on a quality assessment. Such a system can improve code quality by assigning higher test coverage levels to modules with higher complexity. | 06-04-2009 |
| 20100083238 | Binary manipulation of intermediate-language code - One or more embodiments, described herein, are directed towards a technology for performing transformations and/or modifications to managed byte code. In order to perform the transformations and/or modifications, a mutable programmable representation (MPR) is laid out. A programmer then performs an arbitrary adjustment using the MPR. | 04-01-2010 |
| 20100088669 | LOGICAL EXTENSIONS TO INTERMEDIATE CODE - An assembly aggregate comprising a virtual, logical view of an arbitrarily defined collection of intermediate code and metadata can be authored, factored, accessed, modified, and distributed. Multiple physical containers of assembly information can be aggregated to create a single logical assembly called an assembly aggregate. An assembly can thus be redefined as a logical view against (or projection over) the assembly aggregate. Such an assembly can be targeted to the requester: that is, an assembly can be redefined according to tool and/or execution context rather than conforming to explicit or implicit requirements enforced by the runtime. | 04-08-2010 |
| 20100211865 | CROSS-BROWSER PAGE VISUALIZATION GENERATION - Many web developers spend significant time investigating and/or mitigating inconsistencies that may present when a web page is rendered across different browsers. Most websites are developed for multiple versions of one or more web browser and/or for multiple versions of one or more platforms. As provided herein, a cross-browser page visualization may be generated. A visualization may comprise a Document Object Model (DOM) associated with a screenshot image of a web page rendered within an available browser. Multiple visualizations may be created using locally installed browsers and/or remote browsers. The visualizations provide high-fidelity browser renderings coupled with underlying styling and/or DOM information that may be used to interrogate and/or annotate the screenshot image, thus allowing a web page to be developed that can be desirably rendered on different browsers, different operating systems and/or on different versions of the same. | 08-19-2010 |
| 20100211893 | CROSS-BROWSER PAGE VISUALIZATION PRESENTATION - Web developers devote significant time and resources to investigating and mitigating inconsistencies that may present when a web page is rendered across different browsers. As provided herein, a cross-browser page visualization may be presented, which comprises one or more screenshot images of a web page rendered with different browsers, coupled with underlying styling and/or Document Object Model representation data. This allows for powerful page visualization and/or feature analysis. For example, rendering inconsistencies may be easily (or even automatically) detected and/or corrected. | 08-19-2010 |
| 20110113405 | AUTOMATED METHOD AND SYSTEM FOR COLLECTING AND REPORTING API PERFORMANCE PROFILES - A method to measure the performance of an Application Programming Interface (API) includes selecting a target API and tracking memory allocation for the functional calls of the selected API to generate a list of functions called by the API. The individual functions are then called within the API in isolation and timing and memory allocation data for each are collected and recorded. The recorded results are then bucketized according to a log base 2 method and made accessible by API users to indicate the performance of specific APIs. | 05-12-2011 |