Reverse And Forward Engineering