发明名称 Metamodeling contextual navigation of computer software applications
摘要 Using metamodels during context-sensitive analyses of reusable components of computer software applications, including identifying entry and exit paths into and from a reusable component within a metamodel of a computer application development environment, determining during a static analysis of a computer software application that navigation will proceeds along a path corresponding in the metamodel to such an entry or exit path, retaining, if an entry path, an identifier of an invoking node along the path within the computer software application, and, if an exit path, for each terminal node along each of a plurality of paths from the reusable component within the computer software application, comparing an identifier of an invoking node preceding the terminal node with the retained invoking node identifier, and determining, if the invoking node identifiers match, that the path among the plurality of paths is a correct path for a current context of the static analysis.
申请公布号 US8826232(B2) 申请公布日期 2014.09.02
申请号 US200912568934 申请日期 2009.09.29
申请人 International Business Machines Corporation 发明人 Haber Marc N.;Halberstadt Benjamin;Marchant Hayden;Melamed Boris
分类号 G06F9/44;G06F11/36;G06F9/45 主分类号 G06F9/44
代理机构 Edell, Shapiro & Finnan, LLC 代理人 Carroll Terry;Edell, Shapiro & Finnan, LLC
主权项 1. A system for using metamodels in support of performing context-sensitive static analyses of reusable components of computer software applications, the system comprising: at least one processor including: a context annotator configured to: identify an entry path into a reusable component within a metamodel of a computer application development environment, wherein said entry path is from a first node of said metamodel to one of a plurality of invoking nodes of said metamodel that follows said first node, and from the one of a plurality of invoking nodes to a first component node within said reusable component, wherein said reusable component is invokable by the plurality of invoking nodes; andidentify a plurality of exit paths from said reusable component within said metamodel, wherein said exit paths are from a last component node within said reusable component to one of the plurality of invoking nodes, and from one of the plurality of invoking nodes to one of a plurality of terminal nodes of said metamodel;a static analyzer configured to: select an object in a computer software application during a static analysis of said computer software application, wherein said computer software application is developed using said computer application development environment to which said metamodel relates;determine during said static analysis that navigation within said computer software application is to proceed from said object's location along a path;consult said metamodel and in response to determining from said metamodel that the path of said computer software application corresponds to the entry path of said reusable component of said metamodel, store a first identifier which identifies an invoking node from the plurality of invoking nodes;consult said metamodel and in response to determining from said metamodel that the path of said computer software application corresponds to an exit path of said reusable component of said metamodel, retrieve the first identifier which identifies the invoking node, and for each terminal node along each of the plurality of exit paths from said object: compare a second identifier of a second invoking node that precedes said terminal node with said first identifier; anddetermine that said path among said plurality of exit paths is a correct path for a current context of said static analysis with respect to said reusable component in response to a match between the first and second identifiers.
地址 Armonk NY US