Patents by Inventor Yingnong Dang

Yingnong Dang has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20140208296
    Abstract: Techniques for mining API method usage patterns from source code are described. These techniques include parsing the source code to generate API method call sequences that include an API method. These call sequences are clustered to obtain clusters. Based on the clusters, frequent closed sequences are determined and then clustered to obtain an API usage pattern. In addition, optimal clustering parameters may also be determined. In some instances, a graphical representation is generated based on the API usage pattern in response to a query associated with the API method.
    Type: Application
    Filed: January 22, 2013
    Publication date: July 24, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: Yingnong Dang, Jue Wang, Kai Chen, Hongyu Zhang, Tao Xie, Dongmei Zhang
  • Patent number: 8578213
    Abstract: Execution traces are collected from multiple execution instances that exhibit performance issues such as slow execution. Call stacks are extracted from the execution traces, and the call stacks are mined to identify frequently occurring function call patterns. The call patterns are then clustered, and used to identify groups of execution instances whose performance issues may be caused by common problematic program execution patterns.
    Type: Grant
    Filed: April 27, 2011
    Date of Patent: November 5, 2013
    Assignee: Microsoft Corporation
    Inventors: Shi Han, Yingnong Dang, Song Ge, Dongmei Zhang, Bin Zhao, Feng Liang, Chao Bian, Xiangpeng Zhao, Cong Chen, Hang Li, Prashant Ratanchandani
  • Patent number: 8538897
    Abstract: Techniques and systems for cross-trace scalable issue detection and clustering that scale-up trace analysis for issue detection and root-cause clustering using a machine learning based approach are described herein. These techniques enable a scalable performance analysis framework for computing devices addressing issue detection, which is designed as a multiple scale feature for learning based on issue detection, and root cause clustering. In various embodiments the techniques employ a cross-trace similarity model, which is defined to hierarchically cluster problems detected in the learning based issue detection via butterflies of trigram stacks. The performance analysis framework is scalable to manage millions of traces, which include high problem complexity.
    Type: Grant
    Filed: December 3, 2010
    Date of Patent: September 17, 2013
    Assignee: Microsoft Corporation
    Inventors: Shi Han, Yingnong Dang, Shuo-Hsien (Stephen) Hsiao, Dongmei Zhang
  • Publication number: 20130179911
    Abstract: Techniques for obtaining a reaction of an individual to content and outputting the reaction of the individual with the content are described herein. The techniques may include obtaining the reaction of the individual as the content is displayed to the individual. The reaction may be obtained by capturing a video of the individual. The reaction of the individual and the content may be output at a same time to another individual. These techniques may also include obtaining the reaction of another individual as the content and the reaction of the individual are output to another individual.
    Type: Application
    Filed: January 10, 2012
    Publication date: July 11, 2013
    Applicant: Microsoft Corporation
    Inventors: Yingnong Dang, Sergio Paolantonio, Xiang Cao, Xiumin Lin, Dongmei Zhang
  • Publication number: 20120278659
    Abstract: A call pattern database is mined to identify frequently occurring call patterns related to program execution instances. An SVM classifier is iteratively trained based at least in part on classifications provided by human analysts; at each iteration, the SVM classifier identifies boundary cases, and requests human analysis of these cases. The trained SVM classifier is then applied to call pattern pairs to produce similarity measures between respective call patterns of each pair, and the call patterns are clustered based on the similarity measures.
    Type: Application
    Filed: April 27, 2011
    Publication date: November 1, 2012
    Applicant: Microsoft Corporation
    Inventors: Shi Han, Yingnong Dang, Song Ge, Dongmei Zhang
  • Publication number: 20120278658
    Abstract: Execution traces are collected from multiple execution instances that exhibit performance issues such as slow execution. Call stacks are extracted from the execution traces, and the call stacks are mined to identify frequently occurring function call patterns. The call patterns are then clustered, and used to identify groups of execution instances whose performance issues may be caused by common problematic program execution patterns.
    Type: Application
    Filed: April 27, 2011
    Publication date: November 1, 2012
    Applicant: Microsoft Corporation
    Inventors: Shi Han, Yingnong Dang, Song Ge, Dongmei Zhang, Bin Zhao, Feng Liang, Chao Bian, Xiangpeng Zhao, Cong Chen, Hang Li, Prashant Ratanchandani
  • Publication number: 20120278346
    Abstract: A system for frequent pattern mining uses two layers of processing: a plurality of computing nodes, and a plurality of processors within each computing node. Within each computing node, the data set against which the frequent pattern mining is to be performed is stored in shared memory, accessible concurrently by each of the processors. The search space is partitioned among the computing nodes, and sub-partitioned among the processors of each computing node. If a processor completes its sub-partition, it requests another sub-partition. The partitioning and sub-partitioning may be performed dynamically, and adjusted in real time.
    Type: Application
    Filed: April 27, 2011
    Publication date: November 1, 2012
    Applicant: Microsoft Corporation
    Inventors: Shi Han, Yingnong Dang, Song Ge, Dongmei Zhang
  • Patent number: 8302197
    Abstract: A method for identifying data related to a software security issue is provided. The method includes accessing a software security issue and determining one or more attributes associated with the software security issue. The method also includes accessing aggregated software security data retrieved from a plurality of on-line sources and searching the aggregated software security data for the attributes associated with the security issue. The method further includes associating a portion of the aggregated data with the security issue based on matching the attributes associated with the security issue with contents of the portion of the aggregated data.
    Type: Grant
    Filed: June 28, 2007
    Date of Patent: October 30, 2012
    Assignee: Microsoft Corporation
    Inventors: Song Huang, Yingnong Dang, Xiaohui Hou, Dongmei Zhang, Jian Wang
  • Patent number: 8250651
    Abstract: A method for identifying a portion of aggregated software security data is described. The method includes accessing aggregated data associated with software vulnerabilities retrieved from a plurality of on-line sources. The method further includes searching a portion of the aggregated data for an exact match to a particular attribute of the data and searching the portion of the aggregated data for one or more partial matches associated with the particular attribute. The method also includes associating the portion of the data with the particular attribute based on the exact match of one or more of the partial matches.
    Type: Grant
    Filed: June 28, 2007
    Date of Patent: August 21, 2012
    Assignee: Microsoft Corporation
    Inventors: Song Huang, Yingnong Dang, Xiaohui Hou, Dongmei Zhang, Jian Wang
  • Patent number: 8234706
    Abstract: A method for enabling access to software security data is provided. The method includes accessing data associated with software vulnerabilities from a plurality of on-line sources. The method further includes aggregating the data from the plurality of on-line sources and identifying attributes associated with the data. The method also includes enabling access to the aggregated data through a graphical user interface that can be used to analyze the data according to the attributes.
    Type: Grant
    Filed: June 20, 2007
    Date of Patent: July 31, 2012
    Assignee: Microsoft Corporation
    Inventors: Dongmei Zhang, Yingnong Dang, Xiaohui Hou, Song Huang, Jian Wang
  • Publication number: 20120159434
    Abstract: A code verification system is described herein that provides augmented code review with code clone analysis and visualization to help software developers automatically identify similar instances of the same code and to visualize differences in versions of software code over time. The system uses code clone search technology to identify code clones and to present the user with information about similar code as the developer makes changes. The system may provide automated notification to the developer or to other teams as changes are made to code segments with one or more related clones. The code verification system also helps the developer to understand architectural evolution of a body of software code. The code verification system provides an analysis component for determining architectural differences based on the code clone detection result between the two versions of the software code base.
    Type: Application
    Filed: December 20, 2010
    Publication date: June 21, 2012
    Applicant: Microsoft Corporation
    Inventors: Yingnong Dang, Sadi Khan, Dongmei Zhang, Weipeng Liu, Song Ge, Gong Cheng
  • Publication number: 20120143795
    Abstract: Techniques and systems for cross-trace scalable issue detection and clustering that scale-up trace analysis for issue detection and root-cause clustering using a machine learning based approach are described herein. These techniques enable a scalable performance analysis framework for computing devices addressing issue detection, which is designed as a multiple scale feature for learning based issue detection, and root cause clustering. In various embodiments the techniques employ a cross-trace similarity model, which is defined to hierarchically cluster problems detected in the learning based issue detection via butterflies of trigram stacks. The performance analysis framework is scalable to manage millions of traces, which include high problem complexity.
    Type: Application
    Filed: December 3, 2010
    Publication date: June 7, 2012
    Applicant: Microsoft Corporation
    Inventors: Shi Han, Yingnong Dang, Shuo-Hsien (Stephen) Hsiao, Dongmei Zhang
  • Publication number: 20120137182
    Abstract: Techniques for error report processing are described herein. Error reports, received by a developer due to program crashes, may be organized into a plurality of “buckets.” The buckets may be based in part on a name and a version of the application associated with a crash. Additionally, a call stack of the computer on which the crash occurred may be associated with each error report. The error reports may be “re-bucketed” into meta-buckets to provide additional information to programmers working to resolve software errors. The re-bucketing may be based in part on measuring similarity of call stacks of a plurality of error reports. The similarity of two call stacks—a measure of likelihood that two error reports were caused by a same error—may be based in part on functions in common, a distance of those functions from the crash point, and an offset distance between the common functions.
    Type: Application
    Filed: November 30, 2010
    Publication date: May 31, 2012
    Applicant: Microsoft Corporation
    Inventors: Dongmei Zhang, Yingnong Dang, Song Ge
  • Publication number: 20120120086
    Abstract: Techniques for providing a visualization of an interactive and scalable treemap are described. A service provider hosts large-scale hierarchical data and supports online users who desire to visualize the large-scale hierarchical data in a treemap format on their computing devices. The user experience may be enhanced by providing a user interface for visualization of the interactive and scalable treemap. The visualization enables navigation and customization of data in the interactive and scalable treemap. The user experience is further enhanced by illustrating attributes are distinct by displaying a color or a pattern selected for a background or a bar of polygon. The user experience is further enhanced by providing the interactive and scalable treemap to the user on a website or on servers operated by a service or another third party service.
    Type: Application
    Filed: November 16, 2010
    Publication date: May 17, 2012
    Applicant: Microsoft Corporation
    Inventors: Yingnong Dang, Dong Zhuang, He Huang, Haidong Zhang, Dongmei Zhang
  • Patent number: 8176476
    Abstract: Described is a technology by which software instrumentation data collected from user program sessions are analyzed to output an analysis report or the like via example methods and an architecture configured for efficient operation. A client component queries a service for analysis related information. To process the query, the service works with a data manager, and via a high dimensional analysis component may use information processed from the software instrumentation data, such as in the form of one or more inverted indexes and/or raw value files. The service may include a usage analysis component, a feature recognition component that locates features from command sequences, a user recognition component and/or a program reliability component. One or more counterpart components at the client may generate analysis reports or the like based on the query results. The client also may maintain user libraries and feature libraries to facilitate analyses.
    Type: Grant
    Filed: June 15, 2007
    Date of Patent: May 8, 2012
    Assignee: Microsoft Corporation
    Inventors: Yantao Li, Adnan Azfar Mahmud, Wenli Zhu, Haidong Zhang, Shuguang Ye, Bing Sun, Qiang Wang, Yingnong Dang, Guowei Liu, Min Wang, Jian Wang
  • Patent number: 8156153
    Abstract: Global metadata, such as a document identifier, which may be a globally unique identifier, is embedded into an embedded interactive code document by combining a first m-array and a plurality of copies of the first m-array to generate a combined m-array with encoded global metadata such that respective start positions (xd, yd)i of the plurality of copies of the first m-array in the combined m-array are each shifted, by respective amounts that are based on respective portions of the global metadata, relative to a start position of the first m-array in the combined m-array. Global metadata may be decoded from the combined m-array by determining the respective amounts by which the plurality of copies of the first m-array are shifted, relative to the first m-array, in the combined m-array and by combining the respective amounts to produce a decoded value of the global metadata.
    Type: Grant
    Filed: July 25, 2008
    Date of Patent: April 10, 2012
    Assignee: Microsoft Corporation
    Inventors: Jian Wang, Zhouchen Lin, Yue Li, Chunhui Zhang, Yingnong Dang, Jiang Wu, Qiang Wang
  • Patent number: 8060540
    Abstract: Data having express or implied relationships may be displayed by selecting a starting entity in a data structure, building a relationship tree, and building and optimizing a relationship matrix based on the relationship tree. The optimized relationship matrix may be used to layout and render a graphical image that positions various elements with respect to the starting entity based on the relationships. The distance matrix may be optimized by creating a first distance matrix based on the relationship tree, developing a dissimilarity matrix based on expressed or implied relationships, and multiplying the dissimilarity matrix by a weighting factor to determine a distance matrix that may be optimized by multi-dimensional scaling. An optimized weighting factor may be determined and used to select an optimized distance matrix.
    Type: Grant
    Filed: June 18, 2007
    Date of Patent: November 15, 2011
    Assignee: Microsoft Corporation
    Inventors: Yingnong Dang, Xu Yang, Dongmei Zhang, Min Wang, Jian Wang
  • Publication number: 20110246968
    Abstract: Techniques for detecting, analyzing, and/or reporting code clone are described herein. In one or more implementations, clone-code detection is performed on one or more source code bases to find true and near clones of a subject code snippet that a user (e.g., a software developer) expressly or implicitly selected. In one or more other implementations, code clone is analyzed to estimate the code-improvement-potential (such as bug-potential and code-refactoring-potential) properties of clones. One or more other implementations present the results of code clone analysis with indications (e.g., rankings) of the estimated properties of the respective the clones.
    Type: Application
    Filed: April 1, 2010
    Publication date: October 6, 2011
    Applicant: Microsoft Corporation
    Inventors: Dongmei Zhang, Yingnong Dang, Yingjun Qiu, Song Ge
  • Patent number: 7920753
    Abstract: Pre-processing techniques for processing an image to improve the distinctiveness of an information pattern captured in the image before the information pattern is analyzed in a decoding process. The brightness of an image first is normalized by dividing the image into blocks of areas, such as pixels. A brightness distribution value then is determined for each area of the image by fitting the brightness of its surrounding blocks using bilinear interpolation and extrapolation, and a normalized brightness value for each area can then be obtained by dividing the original brightness value by the brightness distribution value. Next, masks are created to distinguish the information pattern from content captured in the image. The masks may be generated based upon contrast differences between the brightness of pixels representing the information pattern, the brightness of pixels representing content, and the brightness of pixels representing the background of the writing medium.
    Type: Grant
    Filed: June 12, 2008
    Date of Patent: April 5, 2011
    Assignee: Microsoft Corporation
    Inventors: Jian Wang, Liyong Chen, Yingnong Dang
  • Patent number: 7890814
    Abstract: Described herein is technology for, among other things, accessing error report information. It involves various techniques and tools for analyzing and interrelating failure data contained in error reports and thereby facilitating developers to more easily and quickly solve programming bugs. Numerous parameters may also be specified for selecting and searching error reports. Several reliability metrics are provided to better track software reliability situations. The reliability metrics facilitate the tracking of the overall situation of failures that happen in the real word by providing metrics based on error reports (e.g., failure occurrence trends, failure distributions across different languages).
    Type: Grant
    Filed: June 27, 2007
    Date of Patent: February 15, 2011
    Assignee: Microsoft Corporation
    Inventors: Dongmei Zhang, Yingnong Dang, Xiaohui Hou, Song Huang, Jian Wang