Правительство Российской Федерации Федеральное государственное автономное образовательное учреждение высшего профессионального образования

advertisement
1
Правительство Российской Федерации
Федеральное государственное автономное образовательное
учреждение высшего профессионального образования
"Национальный исследовательский университет
"Высшая школа экономики"
Отделение программной инженерии
Кафедра Управления разработкой программного обеспечения
УТВЕРЖДЕНО
Зав. Кафедрой УРПО
______________________ С.М. Авдошин
«__»______________________ 2014 г.
ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА
по направлению 231000.62 Программная инженерия
подготовки бакалавра
На тему: “ Программа обработки сложноструктурированных
данных для научного эксперимента в ИИС
MD_SLAGMELT”
Студента группы № 472 ПИ
_____________
подпись
Косенко Дмитрия Владимировича
(ФИО)
_________________
(Дата)
Научный руководитель
д. ф. – м.н., проф.
(должность, звание)
_____________
подпись
Воронова Лилия Ивановна
(ФИО)
_________________
(Дата)
Москва, 2014 г.
2
Реферат
Объем работы:

страниц – 30


глав – 3
иллюстраций - 27


приложений – 3
использованных источников – 13
Ключевые слова: компьютерный эксперимент, физическая химия, обработка данных,
отчетность.
На сегодняшний день компьютерный эксперимент является наиболее значимым
инструментом в областях, где имеется большой разрыв между возможностями теории и
эксперимента, – сфера физической химии и металлургии является наиболее ярким
примером из списка данных областей. Моделирование химических процессов,
извлечение свойств и результатов полученных в ходе компьютерного эксперимента, а
также предоставление удаленного доступа к ним – основная цель проекта ИИС
«MD_SLAGMELT».
Основной целью выпускной квалификационной работы является разработка методов
конвертирования данных из текстового в реляционный формат при проведении
компьютерных экспериментов, и реализующих их алгоритмов и инструментальных
средств для проекта ИИС «MD_SLAGMELT».
В результате проведенной работы были реализованы следующие функциональные
возможности:

Перенос
термодинамических
характеристик,
энергетических
параметров,
кинетических коэффициентов компьютерного эксперимента в базу данных;

Проверки *.DAT файлов на наличие ошибок в генерации;

Перенос в базу данных результатов предыдущих экспериментов;

Разработка логики формирования отчетности в формате *.xls;

Конфигурирование программы под текущие настройки базы данных.
В процессе внедрения программного обеспечения «Программа обработки
сложноструктурированных данных для научного эксперимента в ИИС
“MD_SLAGMELT”» функциональность программы была протестирована на основном
сервере проекта.
3
Полученные результаты обеспечивают повышение степени автоматизации проекта
ИИС
«MD_SLAGMELT»,
промежуточной
проверки
стандартов
формирования
результирующих файлов, построение отчетов в заданном диапазоне составов при
заданных температурах: исследование зависимости состав-свойство.
4
Оглавление
Введение ................................................................................................................................................ 5
1.
Анализ предметной области ...................................................................................................... 6
1.1 Структура файлового хранилища ..................................................................................... 7
1.3 Описание работы в среде электронного ресурса ИИС «MD_SLAGMELT» ............ 11
1.4 Анализ информационных технологий ............................................................................ 13
1.5 Анализ продуктов-аналогов .............................................................................................. 15
1.6 Требования к программному продукту .......................................................................... 15
2.
Архитектура программы ......................................................................................................... 17
2.1 Структура базы данных ..................................................................................................... 18
3.
Реализация и анализ результатов .......................................................................................... 20
3.1 Считывание сложноструктурированных данных ........................................................ 20
3.2 Логирование ошибок, как средство проверки стандартов записи результатов КЭ21
3.3 Сохранение отчетности в *.xls файл ................................................................................ 23
3.4 Реализация базы данных ................................................................................................... 24
3.5 Удаленный доступ к серверу проекта ............................................................................. 25
3.6 Описание назначения классов .......................................................................................... 26
Заключение......................................................................................................................................... 29
Список источников ........................................................................................................................... 30
Приложение А .................................................................................................................................. 301
Приложение Б .................................................................................................................................... 30
Приложение В .................................................................................................................................... 55
5
Введение
Актуальность исследования. Компьютерный эксперимент – это исследование
математической модели объекта изучения на ЭВМ, состоящее в том, что, по известным
параметрам вычисляются искомые и на этой основе делаются выводы о свойствах
объекта. Значение компьютерного эксперимента особенно велико в тех областях, где
имеется большой разрыв между возможностями теории и эксперимента. Одной из
таких областей является сфера физической химии и металлургии. Как правило в
физической химии предметом исследования является взаимосвязь структурных
характеристик и физико-химических свойств.
Для проведения КЭ создаются автоматизированные информационные системы
(АИС), главной целью которых является расширение границы исследований,
оптимизация научной работы и ускорение проведение исследований. Одной из таких
систем является ИИС «Шлаковые расплавы».
Преобразование сложноструктурированных данных, полученных в результате
компьютерного эксперимента в реляционный формат и обеспечение удаленного
доступа к ним является одной из первоочередных задач в рамках проекта ИИС
“Шлаковые расплавы”.
Цели и задачи исследования. Целью выпускной квалификационной работы
является разработка методов конвертирования данных из текстового в реляционный
формат при проведении компьютерных экспериментов, и реализующих их алгоритмов
и инструментальных средств.
Объектом автоматизации выпускной квалификационной работы «Программа
обработки сложноструктурированных данных для научного эксперимента в ИИС
Шлаковые расплавы» являются результаты компьютерного научного эксперимента и
обеспечение возможности работы с ними в удаленном режиме в рамках реляционной
базы данных.
Предмет автоматизации выпускной квалификационной работы «Программа
обработки сложноструктурированных данных для научного эксперимента в ИИС
Шлаковые расплавы» является компонент архитектуры ИИС «Шлаковые расплавы»
преобразование сложноструктурированных данных, полученных в результате
компьютерного эксперимента в реляционный формат и обеспечение удаленного
доступа к ним.
6
1. Анализ предметной области
ИИС «Шлаковые расплавы» позволяет вести моделирование КЭ в нескольких
"режимах", с полным набором получаемых свойств.
1. Моделирование комплекса свойств определенного состава
многокомпонентной системы вблизи выбранной температуры
2. Моделирование многокомпонентной системы в заданном диапазоне составов
при заданных температурах: исследование зависимости состав-свойство
3. Моделирование состава по ряду температурных точек
(плавление/затвердевание): исследование температурных зависимостей свойств
4. Комплексное моделирование многокомпонентной системы (набор
температурных зависимостей свойств состава для заданного диапазона составов):
получение многомерных зависимостей Состав-Температура–Свойство-Структура[2].
Функциональные ИИС «Шлаковые расплавы»:





предоставление широкому кругу специалистов в области физической химии,
металлургии и компьютерного материаловедения оперативного доступа через
Интернет к ресурсам КЭ;
увеличение эффективности, адекватности, надежности компьютерных
экспериментов;
единая база данных для хранения результатов моделирования;
гибкая система отчетов по проведенным экспериментам в различных форматах
данных;
моделирование систем большого количества частиц (порядка десятков тысяч).
Нефункциональные требования ИИС «Шлаковые расплавы»:






использование бесплатного программного обеспечения при разработке системы;
обеспечение простоты и удобства сопровождения, с учетом дальнейшей
модификации;
масштабируемость – система должна быть разработана с учетом того, что в
будущем могут быть добавлены новые компоненты и расчетные модели;
система должна обеспечивать возможность одновременной удаленной работы с
системой нескольких пользователей;
наличие удобного, единого графического пользовательского интерфейса, в
рамках которого должен проходить весь сеанс работы пользователя;
обеспечение возможности непрерывной работы в течение длительного времени
7
Компоненты программного комплекса и их назначение:
Рисунок 1. Архитектура ИИС «Шлаковые расплавы» [2]
В структуре ИИС «Шлаковые расплавы» можно выделить следующие компоненты:





Сервер приложений, содержащий все реализованные математические модели;
Сервер баз данных, обеспечивающих хранение данных;
Web-сервер, обеспечивающий удаленный доступ к информационным ресурсам и
вычислительным приложениям ИИС;
Web-клиент – пользовательский интерфейс с ИИС;
Оболочка для выполнения распределенных вычислений.
1.1 Структура файлового хранилища
Результаты проведенных экспериментов содержатся во внутреннем серверном
файловом хранилище (Рис. 2). Представляют собой документы формата «*.DAT». В
них содержится информация о изначальных условиях эксперимента, о каждой из групп
характеристик (средних значений параметров, давления, длины связей и т.д.),
полученных в результате исследования (Рис.3). Для каждого из проведенных
экспериментов создается директория, формирующаяся на основании участвующих в
химическом процессе элементов, мольных долей.
SiONa → 0505 → 806
8
Рисунок 2. Организация хранимых файлов, по завершению проводимого эксперимента
Рисунок 3. Инфологическая схема, представляющая структуру данных результатов
эксперимента
9
1.2 Структура файлов, содержащих сложноструктурированные
данные
Каждый из документов формата «*.DAT» представляет собой текстовый файл с
позиционным расположением характеристик эксперимента. Между файлами
существуют корреляции. Так MD_DAT файл содержит информацию о количестве
элементов, количестве запусков и температурных точках, что определяет размер файла
SM_INF.DAT (Рис. 4, Рис. 5).
Рисунок 4. Структура MD_DAT файла
10
Рисунок 5. Структура SM_INF.DAT файла
11
1.3 Описание работы в среде электронного ресурса ИИС
«MD_SLAGMELT»
В среде электронного ресурса ИИС «MD_SLAGMELT» (Рис. 6) для доступа к
компоненту «моделирование» необходима учетная запись (пара логин/пароль) (Рис.7).
Рисунок 6. Вкладка «Моделирование»
Рисунок 7. Панель авторизации
12
При успешной авторизации пользователь получает доступ к информации о
завершенных экспериментах (Рис. 8), а также, имея на то право, возможность
проводить эксперимент самостоятельно.
Рисунок 8. Список проведенных экспериментов
Администратор проекта ИИС «MD_SLAGMELT» отслеживает статус
завершения компьютерного эксперимента с возможностью переноса результатов в
базу данных. (Рис. 9)
Рисунок 9. Перенос данных в БД сервера
13
1.4 Анализ информационных технологий
1.4.1 Обоснование выбора модели данных
В связи с тем, что основная работа связана с взаимодействием с базой данных
проекта ИИС «MD_SLAGMELT» целесообразно рассмотреть существующие в
настоящее время модели данных.
Рассмотрим четыре существующие модели данных и возможность их
использования для разработки ПО «Программа обработки сложноструктурированных
данных для научного эксперимента в ИИС MD_SLAGMELT» [10].
Реляционная модель данных основана на математическом понятии отношение.
Отношение есть математическая структура, формально определяющая свойства
различных объектов и их взаимосвязи[8].
Модель дескриптивных файлов включает в себя небольшое количество
сущностей, имеющих разные атрибуты и может достаточно хорошо быть построена на
реляционной модели данных.
Иерархическая модель данных – логическая модель данных в виде древовидной
структуры[8]. Такая модель данных не подходит для разрабатываемой системы, т.к.
потребуется изменение структуры дескриптивных файлов.
Сетевая модель данных является расширением иерархического подхода,
описывает следующие аспекты: целостности, структуры и обработки в сетевых базах
данных. Разница между двумя моделями данных состоит в том, что в иерархических
структурах запись-потомок может иметь лишь одного предка, тогда как в сетевой
структуре у потомка может иметься любое число предков[8].
Объектно-ориентированная модель данных содержит данные, оформленные в
виде моделей объектов, включающих прикладные программы, которые управляются
внешними событиями[8].
На сегодняшний день реляционные СУБД имеют широкое применение для
разработки ИИС. Существует большое количество их реализаций от различных
производителей. Кроме этого, разработанная модель дескриптивных файлов хорошо
подходит для реляционной модели данных. По этим причинам разработка ПО
«Программа обработки сложноструктурированных данных для научного эксперимента
в ИИС MD_SLAGMELT» будет производиться на реляционной СУБД.
1.4.2 Сравнение РСУБД
Поскольку в проекте ИИС «Шлаковые расплавы» используется реляционная
модель в ходе проведения исследования были выделены и рассмотрены следующие
РСУБД: MySQL, PostgreSQL, Oracle, DB2, Microsoft SQL Server.(Табл. 1)
В результате сравнения было выявлено два претендента – MySQL и
PostgreSQL(на основе лицензий), предпочтение было отдано последнему, ввиду
поддержки вторичных индексов, триггеров и создания пользовательских типов с
помощью команды CREATE TYPE.
14
MySQL
Разработчик
Язык разработки
Лицензия
ОС сервера
Oracle
DB2
Microsoft SQL Server
Oracle
Oracle
Microsoft
С и С++
Коммерческая
AIX
HP-UX
Linux
OS X
Solaris
Windows
z/OS
ODP.NET
Oracle Call Interface
(OCI)
JDBC
ODBC
С и С++
Коммерческая
С++
Коммерческая
Linux
Unix
Windows
z/OS
Windows
JSON style queries
XQuery
ADO.NET
JDBC
ODBC
OLE DB
Tabular Data Stream
(TDS)
ADO.NET
JDBC, ODBC
.Net, C, C++, Java,
Perl, Python, Tcl
C, C#, C++, Cobol,
Fortran, Java, Perl,
PHP, Python, Ruby,
Visual Basic
C, C#, C++, Cobol,
Fortran, Java, Perl,
PHP, Python, Ruby,
Visual Basic
.Net, Java, PHP,
Python, Ruby, Visual
Basic
Есть
Есть
Есть
Есть
Рудиментная
Есть
Есть
Есть
Есть
Нет
Есть
Есть
Есть
Частичная
MySQL AB
С и С++
Открытое ПО
FreeBSD
Linux
OS X
Solaris
Windows
HP-UX
Linux
OS X
Solaris
Unix
Windows
ADO.NET
JDBC
ODBC
native C library
streaming API for
large objects
ADO.NET
JDBC, ODBC
API взаимодействия
Поддерживаемые языки
программирования
Поддержка триггеров
Поддержка вторичных
ключей
Создание
пользовательских типов
данных
PostgreSQL
PostgreSQL Global
Development Group
С
Открытое ПО
Ada, C, C#, C++,
D, Eiffel, Erlang,
Haskell, Java,
Objective-C,
OCaml, Perl,
PHP, Python,
Ruby, Scheme,
Tcl
Частичная
Таблица 1. Сравнение РСУБД [3,8,9,11,13]
15
1.4.3 Язык программирования
В качестве языка программирования был выбран язык Java в соответствии с
требованиями ИИС «Шлаковые расплавы» и поддерживаемыми языками
программирования PostgreSQL.
Так же могут быть использованы особенности и фреймворки языка Java:
1) Поддержка ОС: Windows, Mac OS X, Linux.[3]
2) Структура JNI (Java Native Interface), позволяющая запускать нативный код для
ОС на языке C/С++
1.5 Анализ продуктов-аналогов
Рассмотрим два программных продукта наиболее схожих по функциям и назначению с
программным обеспечением «Программа обработки сложноструктурированных данных
для научного эксперимента в ИИС MD_SLAGMELT».
Universal Database Import/Export Tool – позволяет осуществлять миграцию данных с
одной базы данных в другую, каждая из которых поддерживает стандарт
взаимодействия JDBC, посредством экспорта данных источника в xml формат и
импорта в конечную БД.[5]
EMS Data Import for SQL Server – позволяет импортировать данные в формате MS Excel
97-2007, MS Access, XML, DBF, TXT, CSV, MS Word 2007, Open Document Format and
HTML в Microsoft SQL Server БД.[6]
Каждая из представленных программ выполняет только часть обусловленных функций,
является платным инструментом, в то же время не сможет обеспечить автоматизацию
процесса, связанного с взаимодействием клиента и серверного приложения. Более того
рассматривая последнее ПО поддерживает лишь одну ОС – Microsoft® Windows® XP и
старше. Не одно из рассмотренных По не подходит для разрабатываемой системы.
1.6 Требования к программному продукту
1.6.1 Функциональные требования:
 Поиск и обработка информации в текстовых файлах при появлении файлов в
соответствующей директории по запросу администратора информационного
ресурса
 Обеспечение генерации информационного потока из файлового хранилища
данных, в формате, требуемом подсистемой хранения
 Создание отчетности в формате *.xls в заданном диапазоне составов при
заданных температурах: исследование зависимости состав-свойство
 Логирование ошибок в формате *.log.*, как средство проверки стандартов
записи результатов КЭ
1.6.2 Нефункциональные требования:
 Использование бесплатного программного обеспечения при разработке
системы;
1.6.3 Требования к надежности
Программа должна обрабатывать все исключительные ситуации, такие как:
•
Ошибки во входных данных.
16
1.6.4 Условия эксплуатации
Квалификация эксплуататора программы – инженер, технолог-металлург, разработчик
в области компьютерного материаловедения, аспирант, студент.
1.6.5 Требования к информационной и программной совместимости
На системе должны быть установлены следующие продукты:



Java™ SE Development Kit 7u55,
© PostgreSQL ™ версии 9.3.4
JDBC версии 9.3-1101
которые поддерживается следующей операционной системой:
Microsoft® Windows® 8 Update 1
1.6.6 Требования к составу и параметрам технических средств
Необходимый
процессор
32-разрядный
(x86) или 64разрядный (x64)
процессор с
тактовой
частотой 1
гигагерц (ГГц)
Рекомендуемый
процессор
Необходимое
ОЗУ
Рекомендуемое
ОЗУ
Прочие
требования
32-разрядный
(x86) или 64разрядный (x64)
процессор с
тактовой частотой
1,6 гигагерц (ГГц)
или выше
1 гигабайт (ГБ)
(для 32разрядной
системы) или 2
ГБ (для 64разрядной
системы)
оперативной
памяти (ОЗУ)
1,5 гигабайт
(ГБ) (для 32разрядной
системы) или
2,5 ГБ (для 64разрядной
системы)
оперативной
памяти (ОЗУ)
графическое
устройство
DirectX 9 с
драйвером
WDDM версии
1.0 или выше
*Или минимум, требуемый операционной системой, какой бы она ни была
17
2. Архитектура программы
Рисунок 10. Архитектура программы
В структуре программы обработки сложноструктурированных данных для научного
эксперимента в ИИС «Шлаковые расплавы» можно выделить следующие компоненты
(Рис. 10):
Сервер базы данных – обеспечивает хранение математической модели, результатов
эксперимента. Структура БД позволяет проводить запросы для дальнейшего
формирования отчетности по внесенным данным.
Серверное приложение (программа) – содержит шаблоны в виде классов для
формирования запросов для внесения результатов компьютерного эксперимента в базу
данных, обеспечивает взаимодействие web-клиента с сервером БД;
Файловая система – обеспечивает временное хранилище результатов экспериментов,
кэширование данных эксперимента пользовательской сессии;

Иерархия файлового хранилища содержит информацию по проводимому
эксперименту:
Пример: SiONa → 0505 → 806
Web-клиент – предоставление визуальной оболочки со стороны проекта ИИС
«MD_SLAGMELT» для удаленного проведения экспериментов.
18
2.1 Структура базы данных
База данных ИИС «Шлаковые расплавы» содержит 3 табличных пространства:
1) Public – содержит данные лога событий, паспорта экспериментов,
математические модели, данные для формирования отчетности, данные
пользователей
2) Static – содержит таблицы с константными значения для проведения
вычислений
3) Results – содержит таблицы с результатами вычислений средних
значений, давления, длин.
Инфологическая схема строения базы данных (Рис. 11):
Рисунок 11. Инфологическая схема строения базы данных
19
Даталогическая схема строения базы данных (Рис. 12):
Рисунок 12. Даталогическая схема строения базы данных
20
3. Реализация и анализ результатов
3.1 Считывание сложноструктурированных данных
При разработке программного обеспечения был выбрано построковое считывание данных,
ввиду использования позиционного подхода к хранению результатов (Рис. 13).
Рисунок 13. Позиционное хранение на примере файла SM_INF.DAT
В целях распознавания элементов, разделяющихся одним или несколькими знаками « »
была использована стандартная библиотека, входящая в состав Java Development Kit
java.lang.Object String. В частности были использованы методы split() и разработанный метод
класса StringUtils skip() – назначение которого заключается в пропуске «пустых» строк.
MD_DAT:



Каждая строка определена для описания нижерасположенных свойств или самих свойств
(Рис.14)
Каждая строка содержит «заключительный» символ «_», позволяющий использовать его,
как точку останова при считывании массива данных (Рис. 14)
Содержит параметры, определяющие структуру файла SM_INF.DAT
SM_INF.DAT:



№
1
2
3
4
5
Количество данных зависит от количества температурных точек, указанных в MD_DAT
Каждая группа характеристик отделена одним из строк-разделителей (Табл. 2, Знач. 1-4)
К аждый из значений эпсилонов результатов эксперимента может быть мал 10-7 ввиду чего
его значение не записывается в файл и имеет обозначение (Табл. 2, Знач. 5)
Даты
Символьное обозначение
Кол-во в файле
экспериме
нтов
“--------------------------------------------------------------“
1-2
От 07.2012
От 07.2012
“ -------------------------------------------------------------”
16-20
От 07.2012
“ -----------------------------------------------------------“
1-2
“ ---------”
1-4
До 07.2012
“******”
Зав. от кол-ва т.т.
Таблица 2. Символьные обозначения
21
При определении типа элементов были использованы стандартные классы JDK
java.lang.Number: Integer, Float, Double. (Табл. 3)
№
1
2
3
Наименование
Integer
Float
Double
Разрядность
32
32
62
Диапазон значений
-2, 147, 483, 648 .... 2, 147, 483, 647
3.4e-038 .... 3.4e+ 038
1.7e-308 .... 1.7e+ 308
Таблица 3. Числовые типы
При попытке считывания очередного числового элемента при подаче нечислового значения
(в случае, если файл был поврежден или числовое значение не было выведено) возникает
обрабатываемое исключение NumberFormatException.
3.2 Логирование ошибок, как средство проверки стандартов записи
результатов КЭ
Для администратора проекта ИИС «MD_SLAGMELT» разработано средство логирования.
После завершения выполнения программы, в случае возникновения исключительных ситуаций,
администратор проекта, имеющий доступ к файловой системе (Рис.14), содержащей результаты
проведённых экспериментов, имеет возможность ознакомится с причиной, вызвавшей
«некорректную» работу программы.
Рисунок 14. Файловая хранилище проведенного эксперимента
22
Завершение программы при возникновении исключительной ситуации ведет к построению
и записи актуального информационного сообщения администратору в файле error.log.0 в
директории с результатами связанного эксперимента.
Для удобства обеспечения отладки и поиска ошибок в формате сформированных
результатов осуществляется хранение вплоть до пяти логов с соответствующей нумерацией *.0 *.4(Рис. 14).
Представление формирования логов для файла SM_INF.DAT и запуска программы с
аргументом “–makexls” – соответственно (Рис.15, Рис.16).
Рисунок 15. Сгенерированный лог для исключительной ситуации возникшей при считывании
SM_INF.DAT
Рисунок 16. Сгенерированный лог для исключительной ситуации возникшей при формировании
output.xls
23
При разработке логера была использована стандартная библиотека, входящая в состав Java
Development Kit java.util.logging.Logger, некоторые из параметров управления логером могут быть
изменены по желанию администратора в файле logging.propeties. (Рис. 17, Рис. 18).
Рисунок 17. Директория пути к файлу logging.properties
Рисунок 18. Параметры логера в файле logging.properties
3.3 Сохранение отчетности в *.xls файл
При запуске программы с входными параметрами {“-makexls” “filename.xls”
“температурная_точка” “отклонение” “элемент”} происходит извлечение результатов
экспериментов, с температурными точками находящимися в диапазоне от [температурная_точка отклонение; температурная_точка + отклонение], содержащих “элемент”. Извлеченные из базы
данных характеристики, соответствующие запросу хранятся в оперативной памяти, после чего с
помощью интерфейса прикладного программирования(API) jXLS[1] формируется файл *.xls,
содержащий искомые данные (Рис. 19).
Рисунок 19. Сформированный *.xls файл
24
3.4 Реализация базы данных
Для реализации каждой из таблиц были написаны SQL-запросы для администрирования
(Приложение 1). Для каждой из таблиц были сформированы и связанны SEQUENCE для
первичных ключей. Кроме первичных ключей внедрены поля model_id и temp_point, состоящие из
характеристик идентификационного номера математической модели и порядкового номера
температурной точки для определения связи с математической моделью и температуры. (Рис.20)
Рисунок 20. Пример SEQUENCE выражения и содержащегося в таблице ключа
Для изменения параметров подключения к базе данных был сформирован файл (Рис. 21,
Рис. 22). Для облегчения конфигурирования программы под ИИС “MD_SLAGMELT” вынесены
поля адреса обращения к базе данных, имя администратора и пароля.
Рисунок 21. Директория пути к файлу dbConnection.properties
Рисунок 22. Параметры подключения к базе данных в файле dbConnection.properties
25
3.5 Удаленный доступ к серверу проекта
В ходе разработки программы было использовано программное обеспечение Microsoft®
Windows® «Подключение к удаленному рабочему столу» для извлечения требований и работы с
сервером ИИС «MD_SLAGMELT» (Рис. 23, Рис. 24).
Рисунок 23. Подключение к удаленному рабочему столу
Рисунок 24. Удаленный рабочий стол
26
3.6 Описание назначения классов
Рисунок 25. Диаграмма классов (1) [7,12]
Класс Main.java является отправным классом при запуске программы. .
Класс DatParser.java необходим для считывания сложноструктурированных данных из
*.DAT файлов, хранящих результаты проведенных экспериментов.
Класс DatSaver.java описывает структуру для промежуточного хранения в оперативной
памяти характеристик, взятых из базы данных, необходимых для формирования отчетности.
Класс DatDbExporter.java содержит методы и константные переменные, представляющие
шаблоны SQL-запросов, для извлечения результатов эксперимента из базы данных.
27
Класс XlsFormer.java содержит методы для формирования отчетности в формате *.xls и
взаимодействия с файловой системой.
Рисунок 26. Диаграмма классов(2) [7,12]
Класс BugaevTd1Atrbs.java, BugaevTd2Atrbs.java описывают объекты для хранения
термодинамических паpаметpов (фоpмулы по Бугаеву).
Класс ElTeplAtrbs.java описывает объект для хранения характеристик сдвиговой и
объемной вязкости, электpо- и теплопpоводности.
Класс HelperAtrbs.java описывает объект для хранения флуктуации вспомогательных
величин.
Класс KoeffAkfAtrbs.java описывает объект для хранения коэффициентов самодиффузии по
автокорреляционной функции скорости.
Класс KoeffShAtrbs.java описывает объект для хранения коэффициентов самодиффузии по
среднеквадратичному смещению.
Класс LebovChengTdAtrbs.java описывает объект для хранения термодинамических
паpаметpов по фоpмулам Лебовица и Ченга.
Класс LengthAtrbs.java описывает объект для хранения длины связей элементов.
28
Рисунок 27. Диаграмма классов(3) [7,12]
Класс MvweAtrbs.java описывает объект для хранения средних значений параметров и их
погрешности.
Класс PressureAtrbs.java описывает объект для хранения давлений, рассчитанных разными
способами.
Класс TemperatureFluctuationsAtrbs.java описывает объект для хранения информации о
флуктуациях температуры.
Класс Virials1Atrbs.java, Virials2Atrbs.java описывают объекты для виpиальных вкладов.
Класс VirialSqrAtrbs.java описывает объект для хранения квадратов вириалов.
29
Заключение
В
ходе
данного
исследования
была
реализована
«программа
обработки
сложноструктурированных данных для научного эксперимента в ИИС “MD_SLAGMELT”»,
позволяющая проводить преобразование сложноструктурированных данных, содержащихся в
текстовом формате, полученных в результате компьютерного эксперимента в реляционный формат.
В процессе разработки были решены следующие задачи, в соответствии с жизненным циклом
программы:
1) Анализ предметной области, информационных технологий, анализ требований к
программному продукту;
2) Проектирование структуры базы данных, архитектуры программы, взаимодействия с
компонентами ИИС “MD_SLAGMELT”»;
3) Реализация:

Перенос термодинамических характеристик, энергетических параметров, кинетических
коэффициентов компьютерного эксперимента в базу данных;

Проверки *.DAT файлов на наличие ошибок в генерации;

Перенос в базу данных результатов предыдущих экспериментов;

Разработка логики формирования отчетности в формате *.xls;

Конфигурирование программы под текущие настройки базы данных.
В
процессе
внедрения
программного
обеспечения
«Программа
обработки
сложноструктурированных данных для научного эксперимента в ИИС “MD_SLAGMELT”»
функциональность программы была протестирована на основном сервере проекта.
Разработанная функциональность и спроектированная архитектура программы позволит в
дальнейшем расширить программные возможности с минимальными затратами ресурсов и
времени. Полученные результаты обеспечивают повышение степени автоматизации проекта ИИС
«MD_SLAGMELT», промежуточной проверки стандартов формирования результирующих файлов,
построение отчетов в заданном диапазоне составов при заданных температурах: исследование
зависимости состав-свойство.
30
Список источников
1. jXLS(2014) jXLS Team. 24 апреля 2014, веб-сайт:
http://jxls.sourceforge.net/
2. MD_SLAGMELT (2014). 20 апреля 2014, веб-сайт:
http://nano-md-simulation.com/cocoon/mdslagmelt/content/properties.stat
3. Oracle (2014) Java. 20 апреля 2014, веб-сайт:
http://www.oracle.com/technetwork/documentation/index.html#database
4. Oracle (2014) Java. 20 апреля 2014, веб-сайт: https://www.java.com/en/download/help/sysreq.xml
5. Shenli (2014) Universal Database Import/Export Tool. 20 апреля 2014, веб-сайт:
http://udiet.sourceforge.net/
6. SqlManager (2014) EMS Data Import for SQL Server. 20 апреля 2014, веб-сайт:
http://www.sqlmanager.net/en/products/mssql/dataimport
7. Буч Г., Рамбо Д., Джекобсон А. UML. Руководство пользователя — М.: ДМК, 2001. - 432 с.
8. Дейт, К. Дж. Введение в системы баз данных. — 8-е изд. — М.: Издательский дом "Вильяме",
2005. — 1328 с.: ил. — Парал.
9. Дюбуа, П. MySQL. Полное рководство — 3-е издание — М.: «Вильямс», 2006. — 1168 с.: ил.
— Парал.
10. Марка Д., МакГоуэн К. Методология структурного анализа и проектирования. — М.:ДМК,
1993. - 240 с.
11. Моримото, Р. Microsoft Windows Server 2012. Полное руководство / Ноэл М., Ярдени Г.,
Драуби О., Аббейт Э., Амарис К. — 2-е издание — М.: «Вильямс», 2013. — 1456 с. : ил.
12. Рамбо Дж., Блаха М. UML 2.0. Объектно-ориентированное моделирование и разработка — 2 е издание — СПб: Питер, 2007. - 544 с.
13. Уорсли, Дж. PostgreSQL. Для профессионалов / Дрейк, Дж. — 3-е издание — СПб.: Питер,
2003. — 496 с. : ил.
Download