Skip to main content
Article thumbnail
Location of Repository

A static analysis to extract dataflow edges from object-oriented programs with ownership domain annotations

By Suhib Rawshdeh and Marwan Abi-antoun


For program comprehension, developers often require complementary sources of information to understand a software system. They use information about the code structure (class diagrams), points-to field references, control flow (call graphs), and dataflow. Using static analysis to extract dataflow information from object-oriented code is challenging because the analysis must deal with language features such as inheritance, recursion, and aliasing. Existing analyses extract flat graphs that show a large number of objects and lack architectural abstraction. Furthermore, some existing analyses suffer from imprecision. An adoptable analysis should aim for a judicious tradeoff between precision and scalability. In order to extract information that conveys design intent, we rely on annotations in the code. The annotations implement the Ownership Domains type system, by Aldrich and Chambers. An ownership domain is a conceptual group of objects where each object belongs to one domain that does not change at runtime. The developer annotates each object reference in the program with the domain that owns it. In this thesis, we leverage the ownership domain annotations that are present in a program an

Year: 2011
OAI identifier: oai:CiteSeerX.psu:
Provided by: CiteSeerX
Download PDF:
Sorry, we are unable to provide the full text but you may find it at the following location(s):
  • (external link)
  • (external link)
  • Suggested articles

    To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.