Ну, я не знаю, хотите ли вы смоделировать только некоторые базовые логические шаги или углубиться в моделирование самих классов и функций. Но для большинства проектных работ, которые я делаю, и это включает диаграммы, я люблю использовать ArgoUML . Он бесплатный и довольно мощный, хотя вы должны понимать UML, но в остальном я думаю, что это отличный инструмент.