During spring 2013 I deliver the OOP Analysis & Design course in Shenkar Academic College. This course is delivered as part of Shenkar’s Software Engineering B.Sc. Academic Program. The course starts with covering the main UML diagrams, continues with a deep coverage for the classic design patterns in object oriented programming and concludes with advance topics such as aspect oriented programming and software development principles such as single responsibility, liskov substitution and dependency inversion.
There are many UML tools out there in the market. Unfortuneately, only few of them were developed in accordance with the official UML specifications that OMG maintains. Astah is one of them.
The intutitive user interface and the excellent implementation for the UML specification are the main reasons for selecting this tool for my students.