ДИПЛОМНАЯ РАБОТА Система сбора и визуализации статистических данных об использовании ресурсов сети Интернет абонентами корпоративной вычислительной сети МОСКВА 2008 2 ОГЛАВЛЕНИЕ ВВЕДЕНИЕ......................................................................................................... 4 ГЛАВА 1. ИССЛЕДОВАНИЕ СПОСОБОВ ПРЕДСТАВЛЕНИЯ БИЛЛИНГОВЫХ ДАННЫХ В ВИДЕ ВРЕМЕННЫХ ДИАГРАММ ................................................................................... 7 1.1. ПРОГРАММНЫЕ СРЕДСТВА ОБРАБОТКИ БИЛЛИНГОВОЙ ИНФОРМАЦИИ ............................................................................. 7 1.2. ВИДЫ ПРЕДСТАВЛЕНИЯ БИЛЛИНГОВОЙ ИНФОРМАЦИИ .............. 9 1.3. ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ФИРМЫ I2 ................................. 11 1.4. СРЕДСТВА ВИЗУАЛИЗАЦИИ БИЛЛИНГОВЫХ ДАННЫХ В СИСТЕМЕ «МАГИСТР» ............................................................... 15 ВЫВОДЫ ПО ГЛАВЕ .......................................................................... 16 ГЛАВА 2. СТРУКТУРА И АЛГОРИТМЫ РАБОТЫ ПРОГРАММНОГО СРЕДСТВА ВИЗУАЛИЗАЦИИ БИЛЛИНГОВЫХ ДАННЫХ .................................................... 17 2.1. НАЗНАЧЕНИЕ И ФУНКЦИИ ПРОГРАММНОГО СРЕДСТВА ВИЗУАЛИЗАЦИИ БИЛЛИНГОВОЙ ИНФОРМАЦИИ ........................ 17 2.2. СТРУКТУРА ПРОГРАММНОГО СРЕДСТВА ВИЗУАЛИЗАЦИИ БИЛЛИНГОВОЙ ИНФОРМАЦИИ................................................... 18 2.3. АЛГОРИТМЫ РАБОТЫ ПРОГРАММНОГО СРЕДСТВА ВИЗУАЛИЗАЦИИ БИЛЛИНГОВОЙ ИНФОРМАЦИИ ........................ 20 2.6. ВЗАИМОДЕЙСТВИЕ РАЗРАБОТАННЫХ МОДУЛЕЙ С СИСТЕМОЙ «МАГИСТР»ОШИБКА! ЗАКЛАДКА НЕ ОПРЕДЕЛЕНА. ВЫВОДЫ ПО ГЛАВЕ .......................................................................... 20 ГЛАВА 3. СИСТЕМА СБОРА И ВИЗУАЛИЗАЦИИ СТАТИСТИЧЕСКИХ ДАННЫХ ОБ ИСПОЛЬЗОВАНИИ РЕСУРСОВ СЕТИ ИНТЕРНЕТ ........ 21 3.1. ВЗАИМОДЕЙСТВИЕ ПРОГРАММНОГО МОДУЛЯ ВИЗУАЛИЗАЦИИ БИЛЛИНГОВЫХ ДАННЫХ С СИСТЕМОЙ «МАГИСТР» .............................................................................. 21 3.2. ФОРМАТ КОМАНД ДЛЯ ОБЕСПЕЧЕНИЯ ВЗАИМОДЕЙСТВИЯ ПРОГРАММНОГО МОДУЛЯ С СИСТЕМОЙ «МАГИСТР» ............... 23 3.3. УСТАНОВКА ПОДКЛЮЧАЕМОГО МОДУЛЯ ВИЗУАЛИЗАЦИИ БИЛЛИНГОВЫХ ДАННЫХ ........................................................... 23 3.3. ПРИМЕНЕНИЕ МОДУЛЯ В ВОСТАВЕ СПЕЦИАЛИЗИРОВАННОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ «МАГИСТР» .............................................................................. 23 3.3. УСТАНОВКА ПОДКЛЮЧАЕМОГО МОДУЛЯ ВИЗУАЛИЗАЦИИ БИЛЛИНГОВЫХ ДАННЫХ ........................................................... 23 3 3.4. ЭКОНОМИЧЕСКИЙ РАСЧЕТ ........................................................ 23 ВЫВОДЫ ПО ГЛАВЕ .......................................................................... 25 ЗАКЛЮЧЕНИЕ ............................................................................................... 26 ЛИТЕРАТУРА ................................................................................................. 27 4 ВВЕДЕНИЕ В настоящее время участились угрозы террористических актов. В связи с этим возникает необходимость анализа телефонных переговоров, как в линиях проводной так и сотовой связи, анализ IP-траффика и т.д. В результате возникает необходимость извлекать и визуализировать информацию из больших объемов разнородных данных. Для этого, как правило, используют аналитические программные продукты. Необходимость в таких информационно-аналитических системах отмечается во многих областях: – Борьба с терроризмом. – Борьба с организованной преступностью. – Борьба с преступлениями в сфере высоких технологий. – Раскрытие серийных преступлений. – Борьба с незаконным оборотом оружия и наркотиков. – Борьба с преступлениями в сфере автомобильного бизнеса. – Борьба с производством и распространением контрафактной продукции. – Организация безопасности массовых мероприятий. – Поиск пропавших без вести. – Деловая разведка. – Обеспечение безопасности банковской и страховой деятельности. – Независимые журналистские расследования. –Обеспечение безопасности шоу-бизнеса. Существует ряд программных средств для аналитической работы над разнородными данными но их основными недостатками в рамках данных работы являются высокая стоимость и невозможность внедрения в качестве модуля в систему «Магистр». Целью данной дипломной работы является создание программного средства, позволяющего представлять информацию о связях между 5 абонентами в виде временной диаграммы. Данное программное средство необходимо реализовать в виде подключаемого модуля для хранится в автоматизированной информационной системы «Магистр». Информация о соединениях абонентов специализированной базе данных «Магистр». Из этой базы данных подключаемый модуль должен получать информацию и представлять её для пользователя в виде некоторой удобной для его восприятия временной диаграммы. Первым этапом работы будет исследование способов представления биллинговых данных в виде временных диаграмм в существующих программных средствах, а также разработка структуры и алгоритмов работы программы. Вторым этапом будет разработка формата команд для обеспечения взаимодействия разрабатываемого модуля с другими модулями АИС анализа биллинговой информации и реализация некоторого тестового графического приложения, позволяющего отображать биллинговую информацию в виде временной диаграммы. Заключительным этапом работы будет создание подключаемого модуля для АИС «Магистр», визуализирующего информацию о связях абонентов в виде временной диаграммы. Для реализации подключаемого модуля будет использована библиотека Qt, так как СПО «Магистр» также написано с использованием этой библиотеки. Qt представляет собой комплексную рабочую среду, предназначенную для разработки на C++ межплатформенных приложений с графическим пользовательским интерфейсом. QT позволяет использовать дерево классов с одним источником в приложениях, которые будут работать как в системах Windows, так и в Linux, Solaris, Mac OS X и других. 6 В первой главе будут рассмотрены существующие программные средства и способы представления биллинговых данных, а также будет рассмотрено ПО фирмы I2 а также средства применяемые для визуализации биллинговой информации в системе Магистр. Во второй главе будут рассмотрены назначения и функции, структура и алгоритмы работы программного средства для представления биллинговых данных в виде временных диаграмм. В третьей главе будет рассмотрено взаимодействие подключаемого модуля визуализации биллинговой информации в виде временной диаграммы с системой «Магистр», рассмотрены форматы команд для обеспечения взаимодействия между модулем и СПО «Магистр» и внедрение его в систему и применение а также экономический расчет. 7 ГЛАВА 1. ИССЛЕДОВАНИЕ СПОСОБОВ ПРЕДСТАВЛЕНИЯ БИЛЛИНГОВЫХ ДАННЫХ В ВИДЕ ВРЕМЕННЫХ ДИАГРАММ Для разработки программного средства визуализации биллинговых данных необходимо рассмотреть возможные варианты представления данных в существующих программных средствах. 1.1. ПРОГРАММНЫЕ СРЕДСТВА ОБРАБОТКИ БИЛЛИНГОВОЙ ИНФОРМАЦИИ Биллинговая система - программный комплекс, осуществляющий учет объема потребляемых абонентами услуг, расчет и списание денежных средств в соответствии с тарифами компании. Отдельных программных средств реализующих только отображение биллинговых данных не существуют. Данная функциональная возможность как правило присутствует в любой биллинговой системы. Наиболее часто используется табличный способ представления биллинговой информации, который предоставляет пользователю наиболее полную информацию о соединениях абонентов. Схема организации биллинга не сложна: информация о соединениях и их продолжительности записывается коммутатором и после предварительной обработки передается в расчетную систему. Расчетной системе "известны" тарифы. Она идентифицирует вызов и выполняет необходимые расчеты, формируя тем самым счет абонента. Очевидно, что в памяти системы должны храниться не только нормативы, тарифы и информация об услугах, но и данные о клиентах, заключенных контрактах с абонентами и сторонними поставщиками услуг связи (если таковые имеются), а также о стоимости передачи информации по разным каналам и направлениям (системой должно быть также предусмотрено наличие дилеров: у них могут быть другие расценки, например, на подключение). Кроме этого, любая биллинговая система должна иметь базу, хранящую историю платежей: только эти сведения позволяют контролировать 8 процесс оплаты и автоматизировать так называемую активацию/деактивацию абонентов. Эту функцию биллинговая система можно еще назвать защитной, так как она не позволяет пользоваться услугами сотовой связи тем, кто за них не платит. По функциональным возможностям биллинговые системы можно разделить на три класса: предназначенные для транснациональных операторов связи, заказные национального масштаба и системы среднего класса для региональных сетей. Биллинговые системы, относящиеся к первому классу, должны обеспечивать взаимодействие сетей на межнациональном уровне, в различных временных зонах, т.е. они должны быть мультивалютными и мультиязычными. Заказные определенного системы национального оператора. Оператору масштаба может создаются понадобиться под новая Биллинговая система, совместимая с уже существующей расчетной системой. Разумеется, стоимость таких единичных систем значительно выше. В масштабе региона можно вполне обойтись стандартными биллинговыми системами. Однако и такие системы должны обладать качествами, перечисленными выше: гибкостью, масштабируемостью, надежностью. Любая биллинговая система создается и настраивается на бизнеспроцесс определенного оператора связи, имеет собственный набор функций, соответствующий технологическому циклу предоставления услуг, и может работать с конкретным сетевым оборудованием, поставляющим ей информацию о вызовах и соединениях, - то есть биллинговая система не является "коробочным" продуктом. Но существует и стандартный набор функций, поддерживаемых практически всеми биллинговыми системами. В него входят: 9 – операции, выполняемые на этапе предварительной обработки и анализа исходной информации, например, функция получения данных о соединениях и услугах (запросы к коммутатору); – операции управления сетевым оборудованием: функции активации/деактивации (блокировки/разблокировки) абонентов и команды изменения условий подписки абонентов, передаваемые непосредственно в коммутатор; – основные функции приложения СУБД, включающие в себя: тарификацию записей коммутатора о вызовах и услугах; формирование и редактирование таблиц базы данных расчетной системы; выставление счетов и их печать; кредитный контроль счетов; составление отчетов; архивацию. Биллинговая модульностью. система Каждый должна элемент обладать АСР гибкостью обеспечивает или реализацию конкретного участка технологической цепочки обслуживания клиента. Основные подсистемы, характерные для биллинга, это: подсистема предварительной обработки данных о соединениях, оперативное управление биллингом и подсистема оповещения клиентов. 1.2. ВИДЫ ПРЕДСТАВЛЕНИЯ БИЛЛИНГОВОЙ ИНФОРМАЦИИ Наиболее часто биллинговую информацию представляют двумя способами: – в виде графа связей; – в виде временной диаграммы; Первый как, правило дает представление пользователю о том какие абоненты были связаны, не учитывая время соединения(рис 1.1). В случае использования временной диаграммы на временной шкале можно отобразить время соединений абонентов(рис 1.2). 10 Абонент2 Абонент3 Абонент1 Абонент6 Абонент5 Абонент4 Рис. 1.1. Представление биллинговой информации в виде графа связей Время 0 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Абонент1 Абонент2 Абонент3 Абонент4 Абонент5 Абонент6 Рис. 1.2. Представление биллинговой информации в виде временной диаграммы В связи с тем, что в программе визуализации данных необходимо отображать данные о всех связях абонентов в различное время, то наиболее оптимальным способом визуализации представление данных в виде временной диаграммы. данных, является 11 1.3. ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ФИРМЫ I2 Продукция i2 – аналитическое программное обеспечение, позволяющее осуществлять извлечение и визуализацию информации из большого объема разнородных данных. РДТЕХ, российский партнер компании i2 Limited, представляет инструментарий i2, с помощью которого можно создавать аналитические системы, реализующие поиск закономерностей и скрытых связей, а также наглядное представление объектов анализа для принятия обоснованных решений. Системы, построенные с помощью инструментария i2, выгодно отличаются от обычных информационно-аналитических систем, оперирующих в основном количественными характеристиками. Программное обеспечение i2 рекомендовано Интерполом в качестве стандарта в области следственного анализа и используется в работе ООН, НАТО и деятельности правоохранительных органов многих государств. В связи с этим в государственных России оно традиционно структур, вызывает занимающихся интерес у противодействием преступности и терроризму. Однако продукция i2 может быть полезна также для компаний банковского и страхового сектора, в сфере кредитования и других, где необходимо составлять прогнозы, отслеживать имеющие связи и обеспечивать безопасность организации, а также использовать в целях конкурентной разведки Помимо основного продукта компании i2 - Analysts’s Notebook, и наиболее популярных модулей - iBridge (для подключения к реляционным базам данных), iBase (аналитическая база данных i2) и Pattern Tracer TCA (для обработки биллинговой информации), в состав продукции входит новое программное информационном обеспечение WEB неструктурированного текста i2. Речь портале iXv, i2 TextChart в частности идет модуле обработки и i2 об ChartExplorer, корпоративном файл-сервере, предназначенном для мониторинга и анализа накопленной информации. 12 Analist's Notebook - основной компонент i2, позволяющий проводить анализ системы взаимосвязанных объектов и динамики последовательных событий, а также отображать результаты анализа в виде схем и диаграмм удобных для понимания. Помогает идентифицировать объект исследования (например, криминальную сеть), понять природу его деятельности, определить последовательность событий, связанных с этой деятельностью, а также оценить роль и место каждого события. iBase - база данных, полностью совместимая с программными продуктами i2. iBase предназначена для проектирования структуры БД, сбора, хранения и обновления информации из различных источников. Программа позволяет составлять отчеты и обрабатывать данные с помощью системы визуальных запросов по принципу "нарисуй вопрос получи картинку с ответом", дает возможность работать "в команде", например, в реальном времени делиться с коллегами знаниями о ходе расследования или аналитической деятельности. iBridge - обеспечивает доступ с визуальным запросом к уже имеющимся базам данных и эффективный анализ хранящихся в них больших объемов информации. Pattern Tracer TCA предназначен для анализа биллинговой информации и выявления повторяющихся шаблонов связей, заменяет многочасовую ручную работу аналитика, экономит время и силы. iXv - полностью интегрированный с Analyst's Notebook webинтерфейс для подключения к разнообразным базам данных. Основное назначение iXv - построение web-ориентированных распределенных систем для визуального анализа данных. TextChart - позволяет извлекать информацию из неструктурированных данных (документов формата WORD, PDF, HTML). Обеспечивает быстрое выделение и преобразование необходимой текстовой информации в структурированный графический формат, что значительно облегчает аналитический процесс. Всю разобранную 13 информацию можно загрузить в собственную базу данных i2 - iBase, сохраняя информацию из текстовых документов в структурированном виде. ChartExplorer - модуль для организации корпоративного файлсервера. С помощью Chart Explorer можно организовать работу пользователей с файловыми архивами и схемами, построенными в Analyst's Notebook. В Chart Explorer реализованы функции контекстного поиска по документам, рубрикация файлов, мастер отслеживания изменений, как самих файлов, так и их содержимого. Chart Reader - дополнительный web-ориентированный свободно распространяемый инструмент, помогающий аналитикам обмениваться результатами анализа с другими специалистами. Chart Reader позволяет "получателям" просматривать диаграммы, не имея лицензии на использование Analyst's Notebook. Analyst's Notebook Development Kit обеспечивает технических специалистов инструментальными программными средствами для разработки программного обеспечения, использующего технологии и функциональность Analyst's Notebook, с его помощью разработчики могут также полностью интегрировать собственные приложения с Analyst's Notebook На рис 1.3.,1.4.,1.5 представлены способы биллинговой информации в программных средствах I2. представления 14 Рис. 1.3. Представление данных в виде таблицы Рис. 1.4. Представление данных в виде графа связей 15 Рис. 1.5. Представление данных в виде временной диаграммы 1.4. СРЕДСТВА ВИЗУАЛИЗАЦИИ БИЛЛИНГОВЫХ ДАННЫХ В СИСТЕМЕ «МАГИСТР» Так как специализированное программное обеспечение «Магистр» написано с использованием библиотеки Qt, то и программный модуль также реализуется с помощью данной библиотеки. Для программирования графики будет использоваться класс QPainter. С его помощью можно рисовать точки, линии, эллипсы, полигоны, кривые Безье, растровые изображения, текст и многое другое. Более того, QPainter поддерживает режим сглаживания (antialiasing), прозрачность и градиенты. Контекст рисования QPaintDevice можно представить себе как поверхность для вывода графики. QPaintDevice — это 16 основной, абстрактный класс для всех классов объектов, которые можно рисовать. От него унаследована целая серия классов. В основном, рисование производится из метода обработки события QPaintEvent. Если пользователь запустит программу и выполнит некоторые действия, вследствие которых будет перекрыто, частично или полностью, окно программы, то после того, как оно откроется, будет сгенерировано событие перерисовки и вызван метод QWidget: :paintEvent() для тех виджетов, которые должны быть перерисованы. Сам объект события QPaintEvent содержит метод region(), который возвращает область для перерисовки. Метод QPaintEvent::rect() возвращает прямоугольник, который охватывает область. ВЫВОДЫ ПО ГЛАВЕ В результате анализа программных средств визуализации биллинговой информации был сделан вывод, что они не подходят по ряду критериев. Основным критерием является то, что все программные средства не имеют открытых исходных кодов, и нет возможности внедрения их в СПО «Магистр». 17 ГЛАВА 2. СТРУКТУРА И АЛГОРИТМЫ РАБОТЫ ПРОГРАММНОГО СРЕДСТВА ВИЗУАЛИЗАЦИИ БИЛЛИНГОВЫХ ДАННЫХ 2.1. НАЗНАЧЕНИЕ И ФУНКЦИИ ПРОГРАММНОГО СРЕДСТВА ВИЗУАЛИЗАЦИИ БИЛЛИНГОВОЙ ИНФОРМАЦИИ Программное средство визуализации биллинговой информации предназначено для вывода на экран биллинговых данных в виде временной диаграммы. Пользователь имеет возможность изменять масштаб, двигаться вперед и назад по временной шкале для просмотра соединений между различными абонентами. Также пользователю предоставляется возможность вывода информации на печать. Рис. 2.1. Структура программного средства визуализации биллинговых данных 18 Основные функции программного средства визуализации биллинговых данных: – получение биллинговых данных из БД «Магистр»; – вывод биллинговых данных на экран; – вывод биллинговых данных на печать. Графический интерфейс программного средства визуализации биллинговых данных представлен на рис. 2.1. 2.2. СТРУКТУРА ПРОГРАММНОГО СРЕДСТВА ВИЗУАЛИЗАЦИИ БИЛЛИНГОВОЙ ИНФОРМАЦИИ Программное средство представляет собой биллинговую информацию визуализации графическое биллинговых приложение хранящуюся в БД данных визуализирующее «Магистр». Для абстрагирования от формы представления данных в БД «Магистр» разработана модель, в которой данные об абонентах и их соединениях храняться в виде структуры. Прежде всего, это необходимо для возможности разработки программного модуля без необходимости использования СУБД «Магистр». Программное средство состоит из четырех основных модулей выполняющих определенные функции (рис. 2.2): 1. Модуль, в котором реализована модель для представления биллинговой информации в удобном для дальнейшей реализации программы виде. 2. Модуль вывода биллинговой информации на экран. 3. Модуль вывода биллинговой информации на печать. 4. Интерфейс взаимодействия программного средства с другими модулями АИС. 19 Интерфейс взаимодействия с модулями АИС Модель Вывод биллинговой информации на экран Вывод биллинговой информации на печать Рис. 2.2. Структура программного средства визуализации биллинговых данных Использование модели позволяет вести разработку программного модуля без использования СПО «Магистр». Модель представляет из себя отдельный класс. Биллинговые данные в модели хранятся в виде структур(рис 2.3): 1. Структура, хранящая идентификаторы абонентов и соответствующие им иконки. 2. Структура, хранящая информацию о соединениях 3. Структура, используемая для хранения информации о соединениях при получении данных из модели. 1 Идентификатор абонента INT64 2 Отправитель INT Получатель INT Тип cоединения INT Время начала передачи QDateTime 3 Отправитель INT Получатель INT Время начала передачи QDateTime Тип cоединения QDateTime Значок абонента (в формате hex) Рис. 2.3. Структуры используемые в модели Время окончания QDateTime передачи 20 2.3. АЛГОРИТМЫ РАБОТЫ ПРОГРАММНОГО СРЕДСТВА ВИЗУАЛИЗАЦИИ БИЛЛИНГОВОЙ ИНФОРМАЦИИ … ВЫВОДЫ ПО ГЛАВЕ В данной главе были описаны и обоснованы выборы прокси- сервера в качестве основного программного средства по учету статистики пользователей, показателей, характеризующих использование ресурсов сети Интернет, форматов представления статистических данных и программного компонента для визуализации статистических данных. 21 ГЛАВА 3. СИСТЕМА СБОРА И ВИЗУАЛИЗАЦИИ СТАТИСТИЧЕСКИХ ДАННЫХ ОБ ИСПОЛЬЗОВАНИИ РЕСУРСОВ СЕТИ ИНТЕРНЕТ 3.1. ВЗАИМОДЕЙСТВИЕ ПРОГРАММНОГО МОДУЛЯ ВИЗУАЛИЗАЦИИ БИЛЛИНГОВЫХ ДАННЫХ С СИСТЕМОЙ «МАГИСТР» Система «Магистр» - это комплекс программ, предназначеных для хранения и аналитической обработки информации о сеансах связи абонентов телекоммуникационных сетей. Применяется для аналитической обработки широкого спектра информации, такой как: – статистика использования ресурсов сети Интернет пользователями корпоративных сетей; – биллинговая информация; – информация из журналов офисных АТС; – информация телекоммуникационного оборудования – и др. Основные задачи, решающиеся с помощью системы «Магистр»: 1. Накопление информации о сеансах связи абонентов телекоммуникационных сетей, полученной из журналов сетевого и телекоммуникационного оборудования. 2. Получение статистических данных об интенсивности информационного обмена между абонентами, количестве входящих и исходящих соединений и др. 3. Визуализация данные о фактах обмена информацией между абонентами с помощью графов, таблиц и временных диаграмм. 4. Составление коммуникационных портретов абонентов с целью анализа их поведения, поиска коммуникационными портретами. абонентов со сходными 22 5. Выявление всех корреспондентов выбранных абонентов, поиск групп абонентов, характер обмена информацией между которыми соответствует одному из заданных шаблонов и др. 6. Отображение информации о местоположении абонентов на карте. В состав системы «Магистр» входят следующие компоненты: 1. Специализированный сервер СУБД, ориентированный на хранение и OLAP-обработку данных о сеансах связи. 2. Клиентская часть, включающая в себя: консоль управления, модули импорта/экспорта данных, а также аналитические модули, предназначается для решения аналитических задач, визуализации результатов обработки, подготовки отчетов и др. Комплекс программ системы «Магистр» предоставляет пользователю гибкий инструментарий для настройки под конкретную предметную область и требуемые системы связи. Система «Магистр» представляет собой универсальный набор программ для работы с сервером БД и набор модулей для аналитической обработки информации. Такая архитектура позволяет разрабатывать отдельные подключаемые модули, которые являются динамическими библиотеками, что позволяет наращивать функциональные возможности системы. Каждый модуль представляет собой независимую программу. Для работы и взаимодействия модулей с сервером БД системы «Магистр» используется ряд системных интерфейсов, которые описывают системные функции, с помощью которых модули могут производить необходимые действия с данными, хранящимися в БД системы «Магистр». Подключаемые модули, в свою очередь, предоставляют набор функций, с которыми может работать пользователь, а также функции для внутреннего взаимодействия с системой. Основным системным интерфейсом, предназначенным для доступа к хранилищу данных системы, является интерфейс IDataAccess(рис 3.1). 23 Основное приложение системы «Магистр» дает возможность пользователю работать с данными, транслируя интерфейс IDataAccess в пользовательский модуль. Также для представления даты и времени в виде, в котором она используется внутри системы, пользователю предоставляется интерфейс IDateTime со своим набором функций. Интерфейс IObjectsLinker позволяет пользователю работать с различными функциями основного приложения системы. К таким функциям можно отнести загрузку файлов-журналов в хранилище данных. 3.2. ФОРМАТ КОМАНД ДЛЯ ОБЕСПЕЧЕНИЯ ВЗАИМОДЕЙСТВИЯ ПРОГРАММНОГО МОДУЛЯ С СИСТЕМОЙ «МАГИСТР» 3.3. УСТАНОВКА ПОДКЛЮЧАЕМОГО МОДУЛЯ ВИЗУАЛИЗАЦИИ БИЛЛИНГОВЫХ ДАННЫХ 3.3. ПРИМЕНЕНИЕ МОДУЛЯ В ВОСТАВЕ СПЕЦИАЛИЗИРОВАННОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ «МАГИСТР» 3.3. УСТАНОВКА ПОДКЛЮЧАЕМОГО МОДУЛЯ ВИЗУАЛИЗАЦИИ БИЛЛИНГОВЫХ ДАННЫХ 3.4. ЭКОНОМИЧЕСКИЙ РАСЧЕТ Необходимо оценить затраты на разработку программного продукта (ПП), выполняющего реализацию алгоритмов визуализации биллиговых данных в виде временных диаграм. Расчет строится из нескольких параметров: 1. Длина программного модуля N=h1 lgh1+h2 lgh2, (3.1) N – прогнозируемый объем (длина) в операторах исходной программы, h1 – число операторов в программе, h2 - число операндов в программе. 2. Стоимость одного оператора исходной программы К: 24 K=S/n, (3.2) S – средняя стоимость человеко-дня работы программиста (рубль/день), n – минимальная производительность труда (оператор/день). 3. Вычисляется номинальная стоимость программного модуля Сн: Сн=К•N (руб.) (3.3) Вычисление полной стоимости разработки i-го модуля ПП по соотношению: Ci=Cн •1 •2 •3 •4, (3.4) где i - поправочные коэффициенты, учитывающие влияние на стоимость ряда факторов: 1 – коэффициент, учитывающий влияние языка программирования, для языков высокого уровня 10,5 2 – коэффициент, учитывающий требования к качеству программного продукта, его значение принимают равным в диапазоне от 0,8 до 1; 3 – коэффициент, учитывающий сложность программного продукта и так как здесь применены алгоритмы, реализующие, стандартные методы, поэтому 3=1,25-1,5. 4 – коэффициент, учитывающий производительность труда программиста, здесь 4= 0,8-0,9. 4. Вычисление стоимости программного продукта: m CПП Ci , (3.5) i 1 где m – число модулей программного продукта. 5. Оценка стоимости реального программного продукта. После сдачи программного продукта уточняется его реальная стоимость (Ср), исходя из реального объема программы и реальной производительности, вычисленной по соотношению N/T, где T – количество дней, ушедших на разработку, исходя из 8-ми часового рабочего дня. 25 Программный продукт состоит из 1 модуля, который написан на языке высокого уровня С++. После анализа реализуемых алгоритмов принимается, что длина модуля состоит из 1034 простых операторов и операндов. N1= 1034lg1034= 3177 [операторов]. Вычисляем стоимость одного оператора К1. На написание первого модуля ушло около 40 дней. Принимаем S=525 руб., исходя из зарплаты в 10500 рублей в месяц. Следовательно: К1 = 525*40/3177=6,61 (руб.) Вычислим номинальные стоимости модуля Сн1. Сн1= K1N1= 3177*6,61= 21000 (руб.) Принимаем поправочные коэффициенты равные следующим значениям: 1=0,5, 2=1, 3=1.5, 4=0,9. Вычисляем полную стоимость разработки каждого модуля: С1 =С2*1*2*3*4= 19152*0,5*1*1,5*0,9= 14175 (руб.) Вычисляем стоимость всего ПП: Спп= С1 = 14175 [руб.] Таким образом, общая вычисленная стоимость программного продукта равна 14175 рублей. ВЫВОДЫ ПО ГЛАВЕ В данной главе были описаны основные функции и возможности разработанного программного модуля, также был описан пользовательский интерфейс. Была рассчитана стоимость разработанной системы. 26 ЗАКЛЮЧЕНИЕ В результате выполнения дипломной работы было проведено исследование существующих средств и способов представления биллинговых данных в виде временных диаграмм. Был сделан вывод о невозможности внедрения существующих программных средств в систему «Магистр». Для визуализации биллинговых данных выбран способ представления в виде временных диаграмм. Был определен интерфейс работы программного модуля с системой «Магистр», а также разработан графический интерфейс модуля. Был реализован модуль, предназначенный для просмотра и вывода на печать данных о соединении абонентов в виде временной диаграммы. В дальнейшем планируется совершенствование и оптимизация алгоритмов работы разработанной системы визуализации биллинговых данных в виде временных диаграмм, функциональных возможностей системы. а также наращивание 27 ЛИТЕРАТУРА 1. Бланшет Ж., Саммерфилд М. Qt 4: программирование GUI на C++. пер. с англ. М.:КУДИЦ-ПРЕСС, 2007. 648 с. 2. Шлее М. Qt4. Профессиональное программирование на C++.: БХВПетербург, 2007.