Reverse Engineering Object-Oriented Systems into Umple: An Incremental and Rule-Based Approach