Наступил апрель, появилось немного свободного времени, следовательно, пора возвращаться.
Готов уделять разработке 8 часов в неделю.
В отсутствии иных просьб, приоритетом считаю допиливание движка OpenRPT.
План
1. Разработка унифицированного интерфейса передачи данных в построитель 16 часов
По результатам работы получим стабильный и неизменный (на продолжительный срок) интерфейс, набор оберток для основных источников данных(модели, запросы, etc).
2. Переработка системы рендеринга, освобождение её от привязок к SQL запросам, перевод на унифицированный интерфейс. 32 часа
По результатам получаем свободный от лишних зависимостей движок рендеринга, убираем ненужные проекты из OpenRPT.
3. Отработка основных ситуаций использования отчетника, определение состава API, закрепление и разработка API 40 часов
По результатам получаем самодостаточную DLL-ку, с набором торчащих наружу интерфейсов. Упрощает сопровождение, тестирование и поддержку.
4. Встраивание получившейся системы рендеринга в QBalance (реализация необходимых интерфейсов и вспомогательных классов).
Попутно - разработка и закрепление отчетного API в qbalance 24 часа По результатам получаем закрепленный API отчетной системы для QBalance и возможность использования этого API с новым движком рендеринга.
5. Вспомогательные работы (ревью кода OpenRPT, заливка исходников в репозиторий, etc) 16 часов
По результатам получаем код в репозитории, и исходы, соответствующие нашим стандартам (одинаковые переводы строк, имена в нижнем регистре, прочее, по желанию и возможности)
16 + 32 + 40 + 24 + 16 = 128 часов / 8 = 16 недель / 4 = 4 месяца.
Мои ожидания от проекта:
1. Документация.
2. Схемы.
3. Обратная связь по моим изменениям и коду.