возьмите одну маленькую задачу
С этого я и начинал - формат моделей. Потом я заметил, что если добавить одну маленькую фичу, диапазон решаемых задач резко расширяется. Добавить ещё одну - опять расширяется. Потом со временем обнаруживается, что несколько фич в чём-то похожи друг на друга и их можно обобщить одной фичей, которая гораздо проще, чем сумма отдельных фич, но может рещать ещё больший круг задач.
Вот я последние несколько лет в свободное от других проектов время веду текстовый файл со всеми фичами, пытаясь покрыть как можно больший круг задач минимальным количеством фич. Я думаю, я уже близок к оптимуму и гармонии, и наконец скоро смогу приступить к подробному плану реализации, а затем и к самой реализации. А если бы я начал реализацию раньше, мне бы пришлось многое выкинуть в процессе объединения фич, которые я бы уже успел реализовать.
Также я определяю список фич, которые я буду реализовывать первыми, чтобы уже иметь что-то полезное на первых этапах реализации. Из этого и выделяются различные подмножества.
Самое минимальное и простое подмножество - это форматы хранения. Оно уже будет гораздо функциональнее всего того, что уже существует для сериализации, а я видел немало технологий, и гуглю постоянно, чтобы знать, что уже существует.
А базы данных и big data - это уже в перспективе.