Для любого документа: сначала подумайте, почему вы его пишете - кто его прочтет, что им нужно знать? Сколько деталей подходит? Еще одна пара общих идей
Если может быть полезно подумать об источниках информации, которые входят в то, что вы пишете. Одним из результатов этого может быть то, что вы убедитесь, что то, что вы пишете, можно проверить. Если, например, источником информации является человек, особенно для ИТ-документов, это может быть человек, не относящийся к ИТ, рассказывающий вам вещи, тогда вы можете быть достаточно осторожны с тем, как ваша настоящая информация, чтобы «источник» также мог понять, что вы говоря.
Также внимательно изучите, что происходит после текущего документа. Например, может ли быть составлен план тестирования на основе того, что вы пишете? Это может привести к тому, что вы представите информацию в таблицах, которые, естественно, расширяются для проверки случаев.
Так что к вашему конкретному вопросу. Что вы подразумеваете под «spec»? Рабочий процесс, который вы даете, недостаточно для того, чтобы пользователь мог посмотреть и согласиться «Да, пожалуйста, это то, что я хочу». Недостаточно, чтобы кто-то написал код. Я думаю, вам может понадобиться несколько документов.
1). Некоторые требования doc. Один формат, который вы можете использовать, - это раскадровка. Это фокусируется на том, что пользователь может видеть и делать. Точно, какие данные отображаются на каждом экране. Если есть расчеты, лежащие в основе отображаемого, вам могут потребоваться приложения, описывающие их. Этот документ читается как пользователями, так и разработчиками. Powerpoint или Word могут использоваться.
2). Из этого вы можете получить некоторые явные модели данных. Поэтапный, по каждому полю. типы данных, размеры, валидацию и т. д. Я мог бы использовать инструмент моделирования даты, или UML или просто электронную таблицу. Первичная аудитория - разработчик, но в идеале пользователь (или бизнес-посредник) может проверить детали. [Если у вас нет бизнес-аналитика, вы, вероятно, : бизнес-аналитик :-)]
3). Более технический, спецификация для разработчиков, относящаяся к пунктам 1 & 2. Разложение реализации. Имена модулей, пакетов, классов или того, что вы используете. Определения преобразований, алгоритмов и вычислений. Более технический документ. Я бы использовал UML, но любая точная форма захвата. Здесь мы могли бы действительно развернуть то, что означает некоторые из подробных блоков в вашем рабочем потоке.
Как уже отмечалось, в целом нам также необходимо убедиться в том, что разработчик udner задает нефункциональные требования, такие как уровни безопасности и данных. В вашей ситуации это может быть легко понято, поэтому, возможно, вам может не понадобиться это сейчас ... в какой-то другой жизни вы можете, так что может быть хорошей идеей, по крайней мере, иметь один лайнер, чтобы напомнить вам о будущем ,
Извините. Я изменил вопрос, чтобы быть немного более ясным. – zSynopsis
@zSysop - я обновил свой ответ с некоторыми комментариями к спецификации, которую вы опубликовали. Это немного свалка мозга с моей стороны, но, надеюсь, это будет несколько полезно. Не стесняйтесь игнорировать любые части, с которыми вы не согласны, только мои 2 цента ... – Gavin