Смотря какой проект. Если очень большой — то его следует разбивать на части, стараться искать оптимальные решения, изобретать минимум велосипедов, искать потенциально слабые места.
Дальше — смотрим паттерны проектирования, рисуем UML диаграммы, проектируем БД (сразу максимально оптимизируем), дальше можно по ней построить диаграмму классов.