Database and Software Engineering Laboratory, NCKU
             Research Track > Software Development > RFPV

RFPV : ReFactoring PreViewer

RFPV aims to help developers when they apply refactoring. RFPV provides bad smells detection based on coherence and allows developers refactoring on class diagram.


  • What can "RFPV" help?
    • Bad smell detection:
      The top-left table presents the information of bad smell.
      The bad smell detection is based on coherence metrics.
    • Refactoring precondition checking:
      After selecting the element to be refactored,
      RFPV filters the applicable
      refactoring methods and target classes
      by checking the precondition.

  • Features:
    • Two refactoring styles
      • On purpose refactoring
      • Bad smell driven refactoring
    • Refactoring precondition checking
    • Six common refactoring methods
      • Move Method,
      • Push Down Method,
      • Pull up Method
      • Move Field,
      • Push Down Field,
      • Pull up Field

    Usage Scenario:

    In RFPV, users import Python source program and decide whether to apply refactoring based on information from the class diagram or the provided bad smell detection. After examining the information, users may select some elements - methods or fields, to apply refactoring. There are two modes for applying refactoring methods - drag and drop mode, and selection mode. These modes can be selected from the button bar on the top of RFPV. In either mode, available refactoring methods for selected elements are filtered by refactoring precondition checking. After applying refactoring, the class diagram will reflect the refactored structure.


    Not available yet.

    More Snapshots