Когда вы вводите кого-то нового в свою среду программирования, он должен понимать бизнес-проблемы, а не технические. Для рассматриваемого набора функций необходимо определить ожидаемые пути успеха и минимизировать пространство ошибок перед их передачей. Под этим я подразумеваю четкое документирование того, как должна вести себя определенная часть функций, а также того, что должно происходить, если что-то делается неправильно (например, неверные данные, такие как строка, когда ожидается число, несколько раз нажав «Отправить» в веб-приложении и т. Д. ...). Это выявление и документирование того, как справляться со сбоями, которые действительно требуют больше всего усилий.
Затем, предполагая, что часть функциональности обращена к человеку, приведите пример дизайна пользовательского интерфейса (например, каркасы) и написано варианты использования . Если эта функциональность предназначена для существования или интеграции с другими системными UML-диаграммами, полезно показать это взаимодействие. На этом этапе вы нанимаете прославленную машинистку или кого-то, кто может думать? Если первое, то действительно влезай в сорняки и UML выходи из иерархии классов.
Шаблоны