sentence: lepus3 is an object-oriented visual design description language and a formal specification language that is suitable primarily for modeling large object-oriented ( java , c++ , c# ) programs and design patterns .