zabika.ru 1 2


Спецификация требований для ПО загрузки

файлов с коммутационного оборудования

File Processing Framework,

Выпуск 1.0
СОДЕРЖАНИЕ



Ведение


Назначение документа


Данная спецификация описывает функциональные и нефункциональные требования к ПО (системе) для обработки файлов, получаемых преимущественно с телекоммуникационного оборудования.

Все указанные требования относятся к выпуску 1.0.

Рабочее название проекта File Processing Framework (Система).

Функции продукта


Система должна поддерживать следующие основные наборы функций:


  1. Предварительная обработка (предобработка или приемка файла): набор процессов, которые исполняются с момента, когда Система узнает о наличии файла (-ов) для обработки и до момента, когда система определяет формат файла и его содержимое (см. ФТ-1.).

Примерами таких процессов могут служить следующие процессы:

    1. Резервное копирование.

    2. Валидация (без проверки внутреннего формата файла, например, проверка контрольных сумм).

    3. Разархивирование/расшифровка.

    4. Уведомление заинтересованных сторон о поступлении файлов.




  1. Обработка (разбор принятых файлов и загрузка в BSS): набор процессов, связанных с декодированием формата файла и операциями с его содержимым (см. ФТ-2.).

Примерами таких процессов могут служить следующие процессы:

    1. Валидация (проверка на соответствие внутреннему формату, на полноту информации и корректности заполнения).

    2. Загрузка записей из CDR-файлов в BSS (биллинговую систему).
    3. Выборочная загрузка записей из CDR-файлов в BSS.


    4. Статистический анализ файла.

    5. Преобразование данных.

    6. Перекодирование в другой формат.




  1. Постобработка (передача необходимой информации загруженных файлов из базы данных BSS на требуемые ресурсы): набор процессов, исполняемых после обработки (разбора, загрузки) файла до момента завершения работы с файлом (см. ФТ-3.).

Примерами таких процессов могут служить следующие процессы:

    1. Передача исходного (или трансформированного) файла другим сервисам.

    2. Уведомление об окончании обработки файлов.

    3. резервное копирование.


Так же система должна поддерживать ряд вспомогательных процессов, связанных с конфигурированием ее работы и логированием результатов:

  1. Конфигурирование
    (см. ФТ-4.).

    1. Возможность удаленного конфигурирования.

    2. Возможность загрузки конфигурации из CMDB/сервера конфигураций.

    3. Возможность декларативного (с помощью xml и/или скриптовых языков) изменения последовательности выполнения процессов в рамках группы процессов.

    4. Возможность изменения конфигурации на лету.

    5. Возможность рестарта на лету.

    6. возможность удаленного запуска/остановки.




  1. Логирование: запись отчетов всех действий по обработке файлов (см. ФТ-5.).

    1. Возможность локальной/удаленной записи логов.

    2. Возможность выборочной записи логов (по группе процессов, по важность, серьезности, по типу файлов).

    3. Возможность раздельного ведения error/performance/audit-логов.

    4. Поддержка SNMP для отчетности о производительности.

Общее описание

Глоссарий
  1. Файл – файл, сгенерированный коммутационным оборудованием, информацию из которого необходимо загружать в базу данных BSS, для возможности тарификации услуг связи (преимущественно), предоставленных абонентам.


  2. Ресурс для приема файлов – специальное место, доступное и известное Системе (например, диск на сервере), на котором размещаются файлы для обработки Системой.

  3. BSS – биллинговая система. Синоним – АСР (автоматизированная система расчетов).

Общий взгляд

В настоящее время файлы с коммутационного оборудования обрабатываются многочисленными программами–загрузчиками (около 50 шт.), реализованными в виде исполняемых файлов. Каждая программа настроена на работу с файлами только определенного формата и не может быть настроена на одновременную работу с файлами нескольких форматов или с файлами одного и того же формата, но расположенных на разных ресурсах для приема файлов.

Программный код существующих программ-загрузчиков в большинстве случаев дублируется, но по некоторым причинам, например, из-за того, что программы написаны в разное время и разными авторами, программный код несколько варьируется. При появлении изменений в механизме работы с файлами требуется вносить изменения в программный код каждой программы отдельно, при этом, по причине того, что базовый код каждой программы может различаться, требуется индивидуальный подход к отдельным программам-загрузчикам при внесении изменений.
Разработка Системы планируется для создания единой платформы – File Processing Framework – на базе которой должны реализовываться все приложения по обработке файлов.

Готовая Система позволит:

  1. Стандартизовать и унифицировать процесс обработки файлов, загружаемых в систему BSS (а возможно, и в другие системы).

  2. Упростить конфигурирование и администрирование процесса обработки файлов.

  3. Снизить затраты на сопровождение существующего программного кода для обработки файлов.

Операционная среда

  1. WinServer 2003, WinServer 2008, WinServer 2008 R2

  2. NET Framework 4.0

Ограничения дизайна и реализации


  1. Документация системы по конструкции, коду и сопровождению должна содержать следующие документы:

    1. Диаграмму классов (в стандарте UML).

    2. Описание интерфейсов.

    3. Описание процессов.

    4. Описание форматов:

      1. Конфигурационных файлов.

      2. log-файлов.

  2. Код системы должен соответствовать стандарту C# .NET 4.0

Документация для пользователей

  1. Документация для пользователей должна быть оформлена в виде связанных wiki-страниц.

Функции системы

Функциональные требования

Перечень модулей внутри системы:

  1. Модуль приемки файлов. Осуществляет все действия по приему файлов, поступивших на Ресурс для приема файлов.

  1. Модуль должен принимать информацию об изменениях в файловой системе на Ресурсах для приема файлов каким-либо способом:

    1. С помощью собственных механизмов сканирования Ресурсов для приема файлов с настраиваемым интервалом времени (см. Модуль настроек и конфигурирования системы).

    2. В виде оперативных уведомлений от операционной системы об изменениях в файловой системе на Ресурсах для приема файлов. После чего, инициировать собственный механизм сканирования Ресурсов для приема файлов.

  2. Модуль должен уметь сохранять поступившие на ресурсы файлы в Системе, а копии этих файлов – на специальном ресурсе для Резервных копий. Также Модуль должен удалять на этом Ресурсе устаревшие файлы.

Критерий удаления устаревших файлов должен определяться в настройках Системы.

Настройки путей до всех используемых Системой ресурсов, а также настройки структуры каталогов, которые Модуль должен автоматически создавать при записи файла на ресурс, определяются Модулем настроек и конфигурирования системы.
  1. Модуль должен уметь проводить процедуру первичной валидации для поступивших на ресурсы файлов (без проверки внутреннего формата файла. Например, только проверку контрольных сумм).


  2. После подтверждения валидности поступившего файла и по окончанию всех операций по преобразованию файла (группы файлов) Модуль должен уведомлять в режиме реального времени другие заинтересованные (соучастные) Модули о поступлении нового файла (Модуль загрузки файлов, Модуль логирования).

  1. Модуль обработки файлов. Осуществляет все действия по разбору и загрузке файлов в BSS.

  1. Модуль должен получать уведомления от других Модулей о наличии файлов для обработки. Также должна быть предусмотрена функциональность, позволяющая Модулю самостоятельно определять наличие файлов для обработки.

  2. Модуль должен проводить процедуру полной валидации файла, принятого Модулем приемки файлов: определение и проверка внутреннего формата файла, проверка полноты и коррекции информации в файле. Критерии проверки должны быть настройками системы.

  3. Модуль должен извлекать информацию из файлов по схеме разбора, настраиваемой для каждого формата файлов (см. Модуль настроек и конфигурирования системы), и загружать эту информацию полностью, выборочно, в исходном или преобразованном виде в BSS, в зависимости от текущей конфигурации Системы (см. Модуль настроек и конфигурирования системы).

  4. Модуль не должен загружать в BSS файлы с ошибочными записями. Модуль должен сохранять такие файлы на специальном ресурсе для Инвалидных файлов. Настройки путей до всех используемых Системой ресурсов, а также настройки структуры каталогов, которые Модуль должен автоматически создавать при записи файла на ресурс, определяются Модулем настроек и конфигурирования системы.

  5. Модуль должен сохранять успешно загруженные файлы в Архиве долгого хранения. Настройки путей до всех используемых Системой ресурсов определяются Модулем настроек и конфигурирования системы.
  6. При незапланированных перерывах или сбоях в работе Системы, необработанные (не до конца обработанные) файлы не должны потеряться. При возобновлении работы Системы такие файлы должны попадать в очередь на обработку.


  7. Модуль должен исключать повторные загрузки одних и тех же файлов в BSS.

  8. Модуль должен исключать многократный процессинг одного и того же файла (зацикливание) Например, в ситуациях, когда по каким-либо причинам невозможно загрузить файл в BSS.

  9. Модуль должен сохранять в BSS дополнительную информацию о файле. Перечень дополнительных полей должен быть настройкой в Системе.

  10. Модуль должен уметь уведомлять в оперативном режиме другие соучастные Модули о результате разбора и загрузки файла в BSS (Модуль постобработки, Модуль логирования).

  1. Модуль постобработки файлов. Осуществляет все действия по передаче файлов, загруженных в BSS, на сторонние ресурсы или сервисы.

  1. Модуль должен получать уведомления от других Модулей о наличии файлов для обработки. Также должна быть предусмотрена функциональность, позволяющая Модулю самостоятельно определять наличие файлов для обработки.

  2. Модуль должен сохранять файлы, загруженные в BSS, в Систему Длительного Хранения. Настройки путей до всех используемых Системой ресурсов определяются Модулем настроек и конфигурирования системы (см. Модуль настроек и конфигурирования системы).

  3. Модуль должен быть наделен функциональностью, которая позволила бы передавать файлы, загруженные в BSS, в исходном или трансформированном виде, на сторонние ресурсы (например, на ресурс файлов для ФСБ). Настройки путей и режимов передачи файлов до всех используемых Системой ресурсов определяются Модулем настроек и конфигурирования системы.

  1. Модуль настроек или конфигурирования Системы. Обеспечивает доступ к конфигурационным параметрам для всех компонентов Системы для чтения и записи (выборочно).
  1. Модуль должен быть наделен функциональностью чтения настроек конфигураций Системы из СУБД, файла или другого возможного ресурса и передачи этих настроек другим Модулям (по запросу).

  2. Модуль должен предоставлять возможность записи новых и изменения существующих настроек Системы.

  3. Модуль должен уметь оперативно уведомлять другие соучастные Модули об изменении настроек Системы (Модуль приемки файлов, Модуль обработки файлов, Модуль Постобработки файлов).

  4. Должен быть определен единый интерфейс для обращения к Модулю других Модулей Системы.


следующая страница >>