Создание приложения для расчета показателей по соглашениям об уровне обслуживания. У меня есть доступ к единственной ненормализованной таблице, которая дает мне необходимую информацию: идентификатор заявки, категория / подкатегория, даты открытия / закрытия, приоритет заявки и т. Д. Единственный способ определить конкретный измеряемый SLA - это выбрать по категориям и подкатегориям. Затем мне нужно посчитать билеты по приоритету для заданного диапазона дат. У меня нет проблем с SQL и кодированием, но как мне настроить его наиболее эффективно? SLA приходят и уходят, но в настоящее время у меня есть восемь для работы. Учитывая одну большую таблицу, столбцы одинаковы для всех SLA. Действия пользователя заключаются в том, чтобы выбрать существующий отчет о показателях SLA, добавить новые и удалить старые. Для каждого SLA (что означает сочетание категории, подкатегории и приоритета) приложение определяет, какие билеты превысили SLA по сравнению с общим количеством заявок, поданных за этот период времени (либо скользящий год, либо один месяц), и отображает все путаница в итоговом компоненте и таблице месяц / год / приоритет.
У меня нет проблем с кодированием всего этого; вопрос в том, что и когда создавать. Например, на домашней странице отображается список из восьми известных отчетов SLA (данные для списка взяты из файла XML) со ссылками на отдельные отчеты. (Я упоминал, что это веб-приложение? И что компания не будет обновляться с .NET 2.0?) Итак, при запуске приложения я должен создать отдельный набор данных для каждого из известных отчетов с некоторым расписанием (ежемесячно) для обновить данные? Или, если щелкнуть ссылку отчета на домашней странице, инициировать создание временного набора данных для этого конкретного отчета. Или должен быть только один набор данных - сводная таблица - со ссылками и функциями для создания подмножеств на лету? Что мне нужно знать, чтобы выбрать среди вариантов? Там не так много пользователей - может быть, 100 - с наибольшей активностью в начале месяца. Предлагает ли это один вариант над другим?
Очевидно, что мне нужно гораздо больше опыта, прежде чем я смогу заниматься какой-либо реальной архитектурой самостоятельно!
Спасибо за любые мысли и комментарии.
Randy