Дизайн базы данных и приложения для динамических данных
Я прошу несколько советов по дизайну / архитектуре относительно создания приложения с потенциально динамическими данными.
У нас есть процесс, в котором инженеры выполняют задачи, которые они затем регистрируют. Как правило, данные, записанные для каждой задачи, одинаковы: дата, продолжительность, EngineID, TaskType и т. Д.
Задача может быть в одной или нескольких категориях, и если выбрана определенная категория, есть еще 2-3 дополнительных вопроса.
Система очень проста и проста в разработке, пока мы не примем во внимание конкретные вопросы категории. Мы думали о двух подходах:
разработать динамическую систему, в которой вопросы полностью отделены от задач и категорий в базе данных. Существует таблица сопоставления, чтобы указать, какие вопросы задаются для каждой задачи, и веб-интерфейс динамически отображает эти вопросы в зависимости от их типа, который хранится в качестве атрибута вопроса (т. Е. Выпадающий список, флажок, текстовое поле и т. Д.). Гораздо сложнее разрабатывать, но легче администрировать, когда нужно добавлять новые квесты.
Мы держим систему очень простой, почти звездной схемой, где таблица фактов записывает ответ на каждый вопрос. У нас есть столбец для каждого конкретного вопроса, но ответ записывается только в том случае, если выбрана эта категория. Это проще, но требует схемы и разработки, если нам нужно добавить дополнительные вопросы.
Сбор требований говорит нам, что вопрос, относящийся к конкретной категории, может быть добавлен только после тщательного анализа и только один раз в год, поэтому работа контролируется.
учитывая небольшую команду, состоящую только из меня и разработчика, занятого неполный рабочий день, который делает это в свободное время, я перехожу к варианту 2
я пропускаю какие-либо варианты дизайна, которые могут быть лучшими вариантами?