Главная страница

Разработка автоматизированного рабочего места с использованием СУБД и ЯП. КР прикладная информатика. С использованием субд и яп


Скачать 221.92 Kb.
НазваниеС использованием субд и яп
АнкорРазработка автоматизированного рабочего места с использованием СУБД и ЯП
Дата19.06.2021
Размер221.92 Kb.
Формат файлаdocx
Имя файлаКР прикладная информатика.docx
ТипКурсовая
#219045

О бразовательная автономная некоммерческая организация

высшего образования
«МОСКОВСКИЙ ОТКРЫТЫЙ ИНСТИТУТ»




Факультет «Экономики и управления»


Направление «Прикладная информатика»

Курсовая работа



Разработка автоматизированного рабочего места

На тему:

с использованием СУБД и ЯП




(тема работы)


Москва, 2020 г.

Оглавление

Курсовая работа 1

ВВЕДЕНИЕ 3

Глава 1. Проектирование программной системы 5

1.1 Обзор программ-аналогов 5

1.2 Выбор инструментов разработки 6

1.3 Алгоритм работы программы 9

1.4 Описание структуры классов 10

Глава 2. Разработка интерфейса пользователя 13

2.1 Классы интерфейса программы 13

2.2 Руководство пользователя 13

Глава 3. Тестирование разработанной программы 17

3.1 Развертывание программы 17

3.2 Результаты тестирования 17

Список использованных источников 21

ВВЕДЕНИЕ

В воздушном пространстве Российской Федерации имеется огромное множество воздушных трасс, предназначенных, как и для внутренних воздушных перевозок, так и для международных полетов. Для обеспечения безопасного, упорядоченного развития международной гражданской авиации во всем мире была создана организация ИКАО (от англ. ICAOInternational Civil Aviation Organization, международная организация гражданской авиации). Данная организация, устанавливает международные нормы гражданской авиации и координирующее её развитие с целью повышения безопасности и эффективности.

Другими аспектами организации является координация международного сотрудничества по всем вопросам гражданской авиации и международных перевозок.

В соответствии с правилами ИКАО международное воздушное пространство разделено на районы полетной информации – воздушное пространство, границы которого устанавливаются с учётом возможностей средств навигации.

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

Целью данной работы является разработка программного средства «Штурманское обеспечение полетов».

Для достижения поставленной цели необходимо решить следующие задачи:

Изучить аналоги программной системы.

Выбрать инструменты разработки.

Составить алгоритмы решения задачи.

Разработать приложение пользователя.

Выполнить тестирование ПО.

Методы решения задачи: язык проектирования UML, объектно-ориентированный подход.

Глава 1. Проектирование программной системы

1.1 Обзор программ-аналогов

Рассмотрим программные комплексы такие как «Аэролоция» – разработка ЗАО «Аэрософт» при поддержке ФГУП ЦАИ [3] и «FliteStar» компании Jeppesen [4].

Данные информационные системы несут общую функциональную нагрузку:

– автоматизация процесса планирования полетов;

– выполнение расчетов;

– предварительная подготовка летно-штурманского состава;

– автоматизация наземных служб аэропортов и авиакомпаний с целью максимально-эффективного использования воздушных судов в конкретных условиях обстановки с учетом летно-технические характеристики выбранного ВС.

Для обеспечения экипажей воздушных судов аэронавигационными базами данных предлагается использовать любую базу данных формата ARINC-424, что позволяет планировать полет в любой точке мира. Актуальность баз данных поддерживается на основе официальных государственных документов аэронавигационной информации, поставка конечным пользователям производится в соответствии с циклами AIRAC.

Американская фирма Jeppesen является лидером в области аэронавигационных данных. Она известна именно благодаря более полным конкретизированным полетным картам (маршрутным – enroute и аэродромным – charts). Сравнивая программные продукты производства ЦАИ ГА и Jeppesen, можно сделать вывод, что основной упор федерального предприятия делался не на удобство пользования, а на защиту контента. Относительно Jeppesen программа Аэролоция, обладает меньшим функционалом, имеет сравнительно маленькую и в тоже время громоздкую базу данных, худшую графикой и требует USB-ключ. Аэролоция не соответствует требованиям надежности ПО и эргономики. База данных представляет собой файл БД Access, в котором содержится множество PDF-файлов (один PDF-файл – одна страница сборника). Печатать можно только на реальном принтере (виртуальные принтеры не поддерживаются, кроме Fine Print) и только по одной странице.

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

– разрабатываемое ПО не требовательно к ресурсам;

– имеет небольшой размер – содержит только те данные, которые необходимы для расчетов по маршруту;

– не требует дополнительных затрат на установку дополнительных приложений, необходимых для работы;

– свободно для распространения.

1.2 Выбор инструментов разработки

На выбор языка разработки повлиял формат распространяемых баз данных – XML. Именно в этом формате распространяются базы данных центральной службы управления воздушного движения России.

Библиотеки для работы с XML-документами имеются практически во всех языках программирования. Но не везде они обеспечивают одинаковые возможности. Больше возможностей представляют их реализации для тех языков программирования и платформ, которые в настоящее время активно развиваются. Кроме того, при интенсивной работе с данными, представленными в формате XML, критически важным является наличие встроенного языка запросов к XML-данным. Это аналоги языка SQL, предназначенного для запросов к реляционным базам данных.

В языке PHP для работы с XML используются такие библиотеки, как SimpleXML, а также API DOM. Расширение SimpleXML предоставляет очень простой и легкий в использовании набор инструментов для преобразования XML в объект, с которым можно затем работать через его свойства и с помощью итераторов. Document Object Model (DOM) – это принятый W3C стандартный набор объектов для документов HTML и XML, стандартная модель сочетания этих объектов и стандартный интерфейс для доступа к ним и манипуляций с ними. Многие поставщики поддерживают DOM в качестве интерфейса к своим специальным структурам данных и API, благодаря чему модель DOM знакома массе разработчиков. DOM легко освоить и применять, так как его структура в памяти напоминает исходный документ XML.

В качестве специализированного языка запросов к XML-данным в языке PHP используются XPath и XQuery. XPath (XML Path Language) – язык запросов к элементам XML-документа. Разработан для организации доступа к частям документа XML в файлах трансформации XSLT и является стандартом консорциума W3C. XPath призван реализовать навигацию по DOM в XML. XQuery (XML Query) – еще один язык запросов, разработанный для обработки данных в формате XML. XQuery использует XML как свою модель данных.

В языке C++ встроенных средств для работы с XML нет. Можно воспользоваться сторонними библиотеками, такими, как MSXML и др. Встроенные языки XML-запросов отсутствуют.

Microsoft XML Core Services (MSXML) – набор служб, который позволяет приложениям, написанным на средствах разработки Microsoft, строить приложения для Windows, основанные на XML. Этот набор поддерживает XML 1.0 и DOM. Последняя версия MSXML датируется 2008–м годом.

В языке Java, как и в PHP, для взаимодействия с XML можно использовать DOM, либо более простое расширение SAX (Simple API for XML) как способ последовательного чтения/записи XML–файлов. Кроме того, есть библиотеки, разработанные специально для Java, например, JDOM.

JDOM (Java DOM) – это свободная Java-реализация DOM для XML, созданная с учётом особенностей языка и платформы Java. JDOM интегрируется с DOM и SAX, а также поддерживает XPath. Соответственно, появляется возможность использовать запросы к данным XPath.

В языке C# для работы с XML (чтение, запись, сериализация, запросы и т.д.) предусмотрено множество компонентов, встроенных в библиотеку .NET, таких как XDocument, XmlSerializer, XmlDocument, XmlReader/XmlWriter, SoapFormatter и т.д. Все эти компоненты поддерживают DOM.

Также предоставлены богатые возможности по построению запросов к XML-данным, в частности, язык XPath. Существуют адаптеры для использования XQuery.

Также, используя интерфейс LINQ to XML, можно использовать для запросов к XML-коллекциям данных встроенный в .NET язык LINQ. Language Integrated Query (LINQ) – проект Microsoft по добавлению синтаксиса языка запросов, напоминающего SQL, в языки программирования платформы .NET Framework.

Сведем сравнение этих языков в таблицу 2.1. Также сравним скорость обработки ими XML, основываясь на средней производительности программ, написанных на данных языках

Таблица 2.1 – Сравнение языков программирования

Характеристика

PHP

C++

Java

C#

Платформа

Web

Windows, Linux

Windows, Linux, Android

Windows

Библиотеки и компоненты для доступа к XML-данным

SimpleXML, API DOM

MSXML*

DOM, SAX, JDOM

XDocument, XmlSerializer, XmlReader, XmlWriter и др.

Языки запросов к XML-данным

XPath, XQuery



XPath

XPath,
LINQ to XML,

XQuery*

Скорость обработки XML

медленно

быстро

средне

быстро

(*) Примечание: предоставляются сторонними компонентами.

По совокупности характеристик более предпочтительным для разработки является использование платформы .NET и языка C#.

1.3 Алгоритм работы программы

Алгоритмы редактирования справочников самолетов и ППМ, а также парка самолетов и перечня трасс, стандартны и не представляют интереса. Основная логика работы программы заключается в расчетах, связанных с составлением плана полета, а именно:

– вычисление времени полета;

– вычисление протяженности трассы.

Сначала пользователь системы (штурман) выбирает определенную трассу и борт из парка самолетов. Дальнейший алгоритм работы программы следующий:

1. Обнуляем общее время полета time := 0

2. Обнуляем общую протяженность трассы dist := 0

3. Перебираем в цикле все ППМ трассы Pi

4. Вычисляем (по формуле из первой части работы) расстояние disti между ППМ Pi и Pi+1

5. Добавляем disti к общей протяженности трассы: dist += disti

6. Если ППМ Pi – первый в трассе, то добавляем к time время взлета: time := time + timeup, а из расстояния dist вычитаем дистанцию взлета: dist –= timeup  speedup

7. Если ППМ Pi – последний в трассе, то добавляем к time время посадки: time := time + timedn, а из расстояния dist вычитаем дистанцию посадки: dist –= timedn  speeddn

8. Добавляем к общему времени полета время, которое самолет преодолевает с крейсерской скоростью: time += dist / speedkr

На выходе получаем искомые значения time и dist.

1.4 Описание структуры классов

В первой части работы была представлена общая структура классов в виде диаграммы классов (Static Structure Diagram) в нотации UML. Доработаем ее, добавив методы, требуемые для решения следующих задач:

– загрузки данных из XML-файла;

– выгрузки данных в XML-файл;

– получения строкового представления объекта для удобного его предъявления пользователю;

– вычисление общей протяженности трассы;

– вычисление общего времени полета.

Также диаграмма дополнена еще одним классом Data, который инкапсулирует в себе все данные программы:

– справочник типов самолетов (Planes);

– парк самолетов (Borts);

– справочник ППМ (Points);

– перечень трасс (Trasses).

Данная диаграмма изображена на рис. 2.1. Конструктор класса Data создает структуры данных для хранения перечисленных данных. Метод Read обеспечивает чтение данных из XML-файла, путь до которого передан в качестве параметра. Метод Write обеспечивает сохранение данных в XML-файле с указанным именем.



Рисунок 2.1 – Диаграмма классов UML

Методы Read остальных четырех классов загружают данные о типе самолета, борте, ППМ или трассе из XML-узла, переданного из метода Read класса Data. Методы Write этих классов сохраняют данные о типе самолета, борте, ППМ или трассе в XML-узел, переданный из метода Write класса Data. А методы ToString этих классов формируют строковое представление экземпляров класса. Программа использует эти строковые представления для отображения экземпляров класса в выпадающих списках и других элементах управления.

Метод CalcDistance класса Trassa вычисляет общую протяженность указанной трассы. А метод CalcTime вычисляет время, за которое указанный самолет преодолеет данную трассу.

Метод ToRadians класса PPM переводит широту или долготу из градусов в радианы. А метод Distance этого класса вычисляет расстояние между двумя ППМ.

Глава 2. Разработка интерфейса пользователя

2.1 Классы интерфейса программы

Для создания интерфейса пользователя описаны следующие классы:

Класс MainForm – главная форма приложения. На ней должны быть доступны элементы управления для выбора трассы и борта, кнопки редактирования справочников программы, а также элементы для отображения результатов вычисления плана полета (расстояние и время полета данного типа самолета по трассе, состоящей из списка ППМ).

Класс BortForm – форма редактирования справочника типов самолетов и парка самолетов.

Класс TrassaForm – форма редактирования справочника ППМ и списка трасс.

2.2 Руководство пользователя

При запуске программы появляется ее главная форма (рис. 3.1). На ней имеются следующие элементы управления:

выпадающий список для выбора требуемой трассы;

– выпадающий список для выбора требуемого борта;

– элементы для отображения результатов вычисления плана полета (расстояния и времени полета данного типа самолета по трассе, состоящей из списка ППМ);

– список с ППМ для выбранной трассы;

– кнопка для доступа к справочнику ППМ и списку трасс;

– кнопка для доступа к справочнику типов самолетов и списку самолетов в парке.



Рисунок 3.1 – Главная форма

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

При нажатии на кнопку «Редактировать трассы» появляется форма, изображенная на рис. 3.2.

Здесь можно нажатием кнопок «Добавить» и «Удалить» возле списка трасс (маршрутов) добавить новую трассу или удалить существующую трассу.

При выборе трассы в списке справа появляется список ППМ данной трассы. Нажатием кнопок «Добавить» и «Удалить» можно добавить или удалить элементы из списка ППМ данной трассы.

Для добавления ППМ его нужно выбрать из нижнего списка. При выборе ППМ в расположенных рядом полях ввода отображаются параметры данного ППМ (наименование и координаты). Рядом с этим списком также есть кнопки «Добавить» и «Удалить», которые позволяют редактировать справочник ППМ.



Рисунок 3.2 – Форма редактирования ППМ и трасс

Вернемся на главную форму (рис. 3.1). При нажатии на кнопку «Редактировать парк самолетов» появляется форма, изображенная на рис. 3.3.

В верхнем списке данной формы отображается имеющийся парк самолетов. Кнопки «Добавить» и «Удалить» рядом с этим списком позволяют редактировать парк самолетов. При выборе борта в расположенных ниже элементах управления появляются его параметры.

В нижнем списке отображается справочник известных типов самолетов. Кнопки «Добавить» и «Удалить» рядом с этим списком позволяют, соответственно, редактировать справочник типов самолетов. При выборе типа самолета в расположенных слева полях ввода отображаются его характеристики.



Рисунок 3.3 – Форма редактирования типов и парка самолетов
Глава 3. Тестирование разработанной программы

3.1 Развертывание программы

Для запуска программы необходимо скопировать в какую-либо папку на локальном компьютере исполняемый файл STURMANN.exe, а также файл данных Data.xml. Если данный файл отсутствует, можно создать его бланк в любом текстовом редакторе. В бланк нужно включить следующие строки:







Также на компьютере должна быть развернута платформа .NET версии не ниже 4.5.

3.2 Результаты тестирования

Результаты тестирования программы приведены в таблице 4.1.

Таблица 4.1 – Результаты тестирования программы

Действие

Ожидаемый результат

Соответствие полученному результату

Запуск программы без файла данных

Ошибка – файл не найден

+

Запуск программы с файлом данных

Нормальный запуск программы

+

Выбор трассы и борта на главной форме

Автоматический расчет плана полета

+

Добавление нового маршрута

Маршрут добавлен

+

Удаление выбранного маршрута

Маршрут удален

+

Удаление маршрута, маршрут не выбран

Ничего не происходит

+

Добавление выбранного ППМ в выбранный маршрут

ППМ добавлен в маршрут

+

Добавление ППМ в выбранный маршрут, ППМ не выбран

Ничего не происходит

+

Добавление выбранного ППМ в маршрут, маршрут не выбран

Ничего не происходит

+

Удаление выбранного ППМ из выбранного маршрута

ППМ удален из маршрута

+

Удаление ППМ из выбранного маршрута, ППМ не выбран

Ничего не происходит

+

Добавление ППМ в справочник

ППМ добавлен в справочник

+

Удаление выбранного ППМ из справочника

ППМ удален из справочника, а также из всех трасс

+

Удаление ППМ из справочника, ППМ не выбран

Ничего не происходит

+

Добавление борта в парк

Борт добавлен

+

Удаление выбранного борта из парка

Борт удален

+

Удаление борта из парка, борт не выбран

Ничего не происходит

+

Добавление типа самолета

Самолет добавлен

+

Удаление выбранного типа самолета

Самолет удален, а также удалены все самолеты из парка с данным типом

+

Удаление типа самолета, тип не выбран

Ничего не происходит

+

Ошибки в работе программы не выявлены. Во всех тестах полученные результаты совпадают с ожидаемыми.

ЗАКЛЮЧЕНИЕ

В данной работе было разработано, а также реализовано автоматизированное программное обеспечение «Штурман». В процессе изучения предметной области, были рассмотрены программы-аналоги данной системы, а также их положительные и отрицательные моменты, на основе чего был сделан вывод в необходимости разработки данного ПО.

Систематизированные данные позволили правильно структурировать изученный материал, а также углубленно изучить рассматриваемую предметную область. Были изучены новые темы, закреплены посредствам проектирования и разработки программной системы, закреплены навыки программирования и работы с базами данных. В ходе исследования применены современные методы, а также актуальные источники данных.

Учитывая вышесказанное необходимо сделать простой, но в то же время достаточно исчерпывающий вывод: поставленная цель работы достигнута, а материал усвоен и закреплён в полной мере, в результате чего, можно сказать, что работа выполнена.

Список использованных источников

1. Катаев М.Ю. Учебно-исследовательская работа: учебно-методическое пособие для студентов направления подготовки 09.03.01 «Информатика и вычислительная техника» (уровень бакалавриата), обучающихся с применением дистанционных образовательных технологий. – Томск: ФДО, ТУСУР, 2018. – 316 с.

2. Катаев М.Ю. Объектно-ориентированное программирование: учебное пособие. – Томск: Эль Контент, 2013. – 212 с.

3. Автоматизированная система штурманской подготовки АСШП «Аэролоция» [Электронный ресурс]. – Режим доступа: http://www.caiga.ru/ aerolot.htm (дата обращения 09.01.2020).

4. FliteStar Computer-Based Flight Planning [Электронный ресурс]. – Режим доступа: http://ww1.jeppesen.com/personal-solutions/aviation/flitestar-computer-based-flight-planning.jsp (дата обращения 09.01.2020).


написать администратору сайта