По опыту: проще - лучше. Если у вас сайт или мобильное приложение, подойдет такой формат:
1) Структура.
2) Визуальная составляющая.
3) Архитектурная составляющая:
- типы данных;
- списки;
- функциональные возможности.
Пример для веб-сервиса:
Структура
-Главная
-Каналы
--Страница канала 1
--Страница канала 2
-О сервисе
...
Визуальная составляющая
Главная страница должна включать в себя следующие элементы: А, Б, В.
При нажатии А должно происходить что-то.
Б должна включать в себя список последних новостей (ссылка на подробное описание списка новостей).
Архитектурная составляющая
-Типы данных
--Новость
---Тип данных предназначен для учета новостей. Тип данных должен включать в себя следующие атрибуты:
----Заголовок* (тип: строка);
.....
-Списки
--Последние новости
---Список последних 5 новостей (ссылка на тип данных "Новость"). Список должен включать в себя:
----заголовок;
....
---Список должен быть отсортирован по дате, по убыванию.
В функциональных возможностях описываете то, что не удалось органично описать в разделах выше. Например, что-нибудь с реферальной системой.
====
И еще. Если ваш проект реализовывается на готовой платформе, например какой-нибудь CMS, BI-решении или учетной системе, рекомендую обратиться к соответствующим консультантам или самостоятельно изучить возможности и ограничения выбранной платформы. Иначе можете потратить время на описание того, что нельзя будет реализовать из-за технических ограничений.