46
ними (назовем нерасчетной подсистемой), вторая будет взаимодействовать с тех
нологическими серверами и включать в себя элементы технологии
предоставляемых услуг (назовем ее технологической подсистемой).
Расчетная подсистема отвечает за учет денег, контроль за предоставлением
услуг в зависимости от денег и обработку данных статистики, результаты которой
отражаются на возможности дальнейшего предоставления услуг.
Технологическая подсистема отвечает за управление данными,
необходимыми для предоставления услуг и сбор статистики по предоставленным
услугам. Почему важно разделить расчетную и технологическую части?
1. Для расчетной подсистемы не важен способ оказания услуги, ее характер
и смысл. В ее задачу входит лишь учет «абстрактного» ресурса. Это позволяет
модифицировать и настраивать технологическую подсистему без изменений в
расчетной подсистеме.
Т.е. технологические нововведения, про исходящие с развитием
информационных сервисов, не приводят к написанию нового кода или
усложнению структуры базы данных.
2. Для технологической подсистемы не важен способ учета денег,
несущественно, в рамках какого тарифа оказывается услуга, сколько она стоит.
Поэтому изменение прейскуранта, введение новых платежных планов, появление
альтернативных форм оплаты и т.п. приведет только к изменению расчетной
подсистемы, не затронув работу технологической.
3. Различные требования к подсистемам диктуют различную их
архитектуру. Например, быстродействие подсистем должно быть достигнуто по
разным критериям: расчетная подсистема должна обеспечивать быстродействие
при больших запросах (один запрос обрабатывает много записей), а
технологическая - при большом количестве одновременных запросов (один
запрос обрабатывает 1-2 записи).
Для расчетной подсистемы очень важна надежность (сбой может повлечь
за собой нарушение целостности данных, которые трудно восстановить), но вот
отказоустойчивость для нее - не главное требование (расчеты можно произвести
с запозданием).
Для технологической подсистемы локальные потери данных, наоборот,