jbooret an automated tool to recover oo design and source
play

JBOORET: an Automated Tool to Recover OO Design and Source Models - PowerPoint PPT Presentation

JBOORET: an Automated Tool to Recover OO Design and Source Models Hong Mei, Tao Xie, Fuqing Yang Department of Computer Science & Technology Peking University, Beijing, China Oct. 2001 Outline Tool Design Principles Tool


  1. JBOORET: an Automated Tool to Recover OO Design and Source Models Hong Mei, Tao Xie, Fuqing Yang Department of Computer Science & Technology Peking University, Beijing, China Oct. 2001

  2. Outline • Tool Design Principles • Tool Architecture •Data Extractor •Knowledge Manager •Information Presenter • Recovered Model Examples • Conclusions

  3. Design Principles of JBOORET Jade Bird Object-Oriented Reverse Engineering Tool (JBOORET) Recovered Models: • Having different granularities • Easily being manipulated by users • Directly being used in forward engineering • Whose correctness and completeness are ensured

  4. Design Principles of JBOORET (Cont.) • Data Analysis • Light-weight Lexical vs. Heavy-weight Parser-based • Incremental analysis • Knowledge Organization • Low-level conceptual model (Stored in advance) • High-level design and source models (On demand) • Information Presentation • Different levels or perspectives of models • Manipulability of entities in models

  5. JBOORET Architecture Overview Information Presenter Understanding Task Info Viewer Version Controller Model Extractor C++ Parsing Info Printer Programs Trees Info Database Database Server Extractor Parser Lookaheader Incremental … Database Database Linker Lexer Data Extractor Knowledge Manager

  6. Data Extractor • Customized Lexer (Lexical analyzer) • Comment extraction • Physical location association for entities • Parser based on YACC • Token lookahead technique • Incremental parsing • Link incremental databases for each file

  7. Knowledge Manager Inherit FriendC Call O verload M acro Loc_in Sub Sup Sub Sup Sub Sup Sub Sup FriendM Class Loc_in Loc_in Function M eth _of Sup Include Fct _bdy File Inst _of Attr _of Sub V ar _of Attribute Statem ent O bject Loc_in d Sub Sup Refer V ariable Contain JBOORET Conceptual Model

  8. Information Presenter • Frequently used information • Basic symbol information table (Hash table) • Loaded in memory in advance • Complementary infrequently used information • A circular cache • Loaded on user’s demand • Export the models to the OO Development Tool (Rational Rose & JBOO) • Complementary GUI to manipulate the models

  9. Multi-perspective views of recovered models JBOO Rational Rose High-Manipulability GUI

  10. Conclusions • Model-based (Comprehensive Conceptual model) • Parser-based (Rather accurate and complete) • Forward-engineering support (Export to Rose &JBOO) • Multi-perspective models (Class diagrams + other models) • High-Manipulability Model Entities • Search, filter and select • Compress or expand

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend