Моделирование сети передачи данных на примере Кемеровской области - Программирование, компьютеры и кибернетика дипломная работа

Главная
Программирование, компьютеры и кибернетика
Моделирование сети передачи данных на примере Кемеровской области
Минимальные системные требования, предъявляемые к программе. Параметры и алгоритмы функционирования нижнего уровня сети передачи данных. Кратчайший путь между заданными ключевыми пунктами в имитационном режиме. Описание процесса отладки приложения.
посмотреть текст работы
скачать работу можно здесь
полная информация о работе
весь список подобных работ
Нужна помощь с учёбой? Наши эксперты готовы помочь!
Нажимая на кнопку, вы соглашаетесь с
политикой обработки персональных данных
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
1.2 Цель разработки программного продукта
1.3 Анализ предметной области программного продукта
1.4 Анализ методов разработки программного продукта
1.5 Анализ средств программирования программного продукта
2.1 Постановка задачи создания программного продукта
2.2 Описание математической модели реализации задачи
2.4 Реализация алгоритма программы на языке программирования
2.5 Описание процесса отладки программы и оценка результатов решения задач
3.1 Организация труда на участке УВЦ ФГОУ СПО «КИТ»
3.2 Организация оплаты труда работников УВЦ ФГОУ СПО «КИТ»
4.1 Расчет заработной платы работников УВЦ ФГОУ СПО «КИТ» за месяц
4.2 Расчет суммы амортизационных отчислений
4.3 Расчет стоимости программного продукта
5.1 Анализ потенциально опасных и вредных производственных факторов окружающей среды
5.2 Техника безопасности на участке УВЦ ФГОУ СПО «КИТ»
5.3 Эргономика рабочего места оператора ЭВМ
Основой человеческого существования являются три основополагающих вида деятельности: энергетика, технология, информатика. Развитие этих видов деятельности человека происходит эволюционно, взаимно влияя друг на друга.
Информационные сети - это эволюция компьютерных технологий и систем электросвязи.
- компьютеризованная межперсональная коммуникация;
- услуги доступа к разделяемым ресурсам.
Информационные сети - это сложный комплекс взаимосвязанных и согласованно функционирующих программных и аппаратных компонентов.
Комплекс программно-аппаратных средств сети представляется многослойной моделью, элементами которой являются:
- сетевые операционные системы (СОС);
- коммуникационное оборудование (DCE);
Целью данного дипломного проекта является разработка программы «Моделирование сети передачи данных на примере Кемеровской области».
Проектирование сетей передачи данных - это необходимый и один из наиболее важных этапов их создания. На данном этапе разработчики решают множество вопросов: тип используемой среды передачи данных, тип сети, ее топологию и пр. Качество решения этих вопросов определяет качество функционирования создаваемой сети передачи данных.
Вследствие сложности сети, целесообразно использовать имитационную модель, составляя алгоритм работы сети на языке имитационного моделирования или обычном языке программирования.
Задачи моделирования является получение адекватного представления о функционировании сети, ее динамики, внутренних закономерностей. При этом эксперименты, проводимые над моделью (например, добавление нового скоростного канала передачи данных), стоят в сотни раз меньше, чем проводимые над реальной системой.
Тема дипломного проекта отражает важнейшие задачи и направления работы современных инженеров в области автоматизации обработки информации и связана с изучением, расчетом и обработкой алгоритмов передачи информации. Это повышает целенаправленность знаний и позволяет наглядно представить результаты своего труда.
Актуальность данного проекта заключается в следующем: по заданным условиям передачи информации рассчитать параметры и разработать алгоритмы функционирования нижнего уровня сети передачи данных.
1.2 Цель разработки программного продукта
Задание графа исходных данных в виде матрицы весов - очень трудоемкий процесс, требующий кропотливой и точной работы.
Для облегчения работы по заданию графа целесообразно создать программную среду, позволяющую задать граф исходных данных при помощи графического интерфейса. Созданный граф можно сохранить для последующего использования.
В результате расчета характеристик сети передачи данных программой должны быть получены следующие данные: метки всех вершин графа, матрица весов ребер графа, интенсивности прихода заявок в каждом узле. Вся информация может быть предоставлена в отдельном окне программы в текстовом виде.
Главная проблема анализа сетей передачи данных заключается в том, что интервалы между моментами поступления пакетов после прохождения через первую очередь начинают коррелировать с их длинами. Клейнрок предположил, что при объединении нескольких потоков пакетов в линии передачи сохраняется независимость между интервалами поступления и длинами пакетов. При этом для каждой линии связи приближенно принимают модель СМО M/M/1 независимо от взаимодействия потока на этой линии с потоками на других линиях. Этот подход известен как аппроксимация Клейнрока (или гипотеза о независимости), который обеспечивает хорошее приближение при умеренных и больших нагрузках для сильно связанных сетей с пуассоновскими моментами поступления потоков во входные точки сети, с длинами пакетов, которые распределены почти экспоненциально.
Для получения задержки для каждого канала обслуживания необходимо рассчитать интенсивность входных потоков пакетов в каждый канал.
1.3 Анализ предметной области программного продукта
Тема дипломного проекта отражает важнейшие задачи и направления работы современных инженеров в области автоматизации обработки информации и связана с изучением, расчетом и обработкой алгоритмов передачи информации. Это повышает целенаправленность знаний и позволяет наглядно представить результаты своего труда.
Эффективность построения и использования корпоративных информационных систем стала чрезвычайно актуальной задачей, особенно в условиях недостаточного финансирования информационных технологий на предприятиях.
Критериями оценки эффективности могут служить снижение стоимости реализации информационной системы, соответствие текущим требованиям и требованиям ближайшего времени, возможность и стоимость дальнейшего развития и перехода к новым технологиям.
Основу информационной системы составляет вычислительная система, включающая такие компоненты, как кабельная сеть и активное сетевое оборудование, компьютерное и периферийное оборудование, оборудование хранения данных (библиотеки), системное программное обеспечение (операционные системы, системы управления базами данных), специальное ПО (системы мониторинга и управления сетями) и в некоторых случаях прикладное ПО.
Наиболее распространенным подходом к проектированию информационных систем в настоящее время является использование экспертных оценок.
В соответствии с этим подходом специалисты в области вычислительных средств, активного сетевого оборудования и кабельных сетей на основании имеющегося у них опыта и экспертных оценок осуществляют проектирование вычислительной системы, обеспечивающей решение конкретной задачи или класса задач. Этот подход позволяет минимизировать затраты на этапе проектирования, быстро оценить стоимость реализации информационной системы. Однако решения, полученные с использованием экспертных оценок, носят субъективный характер, требования к оборудованию и программному обеспечению также грешат субъективностью, как и оценка гарантий работоспособности и развития предлагаемого проекта системы.
В качестве альтернативного может быть использован подход, предполагающий разработку модели и моделирование (имитацию работы - simulation) поведения вычислительной системы.
Можно говорить о "бездефектном" проектирования информационных систем. Оно достигается комплексным применением высокоуровневого моделирования (моделирования функций или бизнес-процессов) предприятия и низкоуровневого моделирования вычислительной системы.
Использование высокоуровневого моделирования позволяет гарантировать полноту и правильность выполнения информационной системой функций, определенных заказчиком. То есть построенная модель безупречна по функциональности (система должна выполнять то, что задумано). Однако гарантировать, что конкретная реализация вычислительной системы на предприятии будет выполнять эти функции, высокоуровневое моделирование не может.
К системам высокоуровневого моделирования относятся такие системы, как ARIS, RationalRose. С их помощью реализуются принципы структурного анализа, когда предприятие представляется в виде сложной системы, состоящей из разных компонентов, имеющих различного рода взаимосвязи друг с другом.
Эти средства позволяют определить и отразить в моделях основные компоненты предприятия, протекающих процессов, используемой информации, а также представить взаимосвязи между этими компонентами.
Создаваемые модели представляют собой документированную совокупность знаний об ИС предприятия - о его организационной структуре взаимодействиях между предприятием и прочими субъектами рынка, составе и структуре документов, последовательностях шагов процессов, должностных инструкциях отделов и их сотрудников.
Моделирование функций вычислительной системы напрямую сегодня не представляется возможным. Данная задача в полном объеме не разрешима.
Однако возможно моделирование работы системы в динамике (динамическое моделирование), при этом его результаты позволяют по косвенным показателям судить о функционировании всей системы.
Так, невозможно проверить правильность функционирования сервера базы данных и программного обеспечения, однако по выявляемым задержкам на сервере, не обслуженным запросам и т. д. можно сделать вывод о его работе.
Таким образом, рассматриваемые системы предназначены не для функционального моделирования вычислительных систем (это, к сожалению, невозможно), а для динамического их моделирования.
1.4 Анализ методов разработки программного продукта
Для формализации описанной выше сети удобно выбрать математический аппарат теории графов, а именно - ориентированный мультиграф с взвешенными вершинами и ребрами.
Каждый город будет представлен вершиной с заданной характеристикой - числом генерируемых пакетов. Каждый канал передачи данных будет представлен ребром с заданной пропускной способностью. Именно такой граф необходимо задать в качестве исходных данных моделирования.
Для расчетов временных характеристик удобно рассматривать каждый канал передачи данных (каждое ребро графа) в виде некой системы массового обслуживания. Данная система будет иметь один канал обслуживания со средним временем обслуживания, равным пропускной способности канала. Число заявок на обслуживание, поступающее в канал, будет определяться собственным трафиком города, находящегося у начала ребра, а также числом пакетов, поступающих от других городов (вершин графа).
Таким образом, можно построить еще одну сеть - сеть систем массового обслуживания. Расчет характеристик данной сети можно произвести с использованием математического аппарата теории массового обслуживания.
Для реализации данного программного продукта необходимо обеспечить некоторые программные и технические требования. Построение данных моделей осуществляется в оконном режиме операционной системы семейства Windows. Программным требованием является установленный и функционирующий пакет прикладных программ MicrosoftOffice.
Минимальные системные требования, предъявляемые к программе являются:
1.5 Анализ средств программирования программного продукта
Данный дипломный проект был реализован в интегрированной среде разработки Delphi с использованием языка программирования ObjectPascal. Основное достоинство этого языка программирования состоит в объектно-ориентированном представлении. Так же существенно изменился принцип компиляции программ.
Delphi - это комбинация нескольких важнейших технологий:
- высокопроизводительный компилятор в машинный код;
- объектно-ориентированная модель компонент;
- визуальное (а, следовательно, и скоростное) построение приложений из программных прототипов;
- масштабируемые средства для построения баз данных.
Delphi - это результат развития языка Турбо Паскаль, который, в свою очередь, развился из языка Паскаль. Паскаль был полностью процедурным языком, Турбо Паскаль, начиная с версии 5.5, добавил в Паскаль объектно-ориентированные свойства, а Delphi - объектно-ориентированный язык
программирования с возможностью доступа к метаданным классов (то есть к
описанию классов и их членов) в компилируемом коде, также называемом интроспекцией. Так как все классы наследуют функции базового класса TObject, то любой указатель на объект можно преобразовать к нему, и воспользоваться методом ClassType и функцией TypeInfo, которые и обеспечат интроспекцию. Также отличительным свойством Delphi от С++ является отсутствие возможности располагать объекты в стеке - все объекты попадают в динамически выделяемую область (кучу).
Основной упор модели в Delphi делается на максимальную производительность использования кода. Это позволяет очень быстро разрабатывать приложения, так как уже существуют заранее подготовленные объекты. А так же можно создавать свои собственные объекты, без каких-либо ограничений. Язык Delphi - строго типизированный объектно-ориентированный язык, в основе которого лежит хорошо знакомый программистам ObjectPascal.
В стандартную поставку Delphi входят основные объекты из 270 базовых классов. На этом языке очень удобно писать, как приложения к базам данных, так даже и игровые программы. Если принять во внимание и удобный интерфейс для создания графических оболочек, то можно с уверенностью заявить что язык
Delphi - это очень доступный для понимания, но в то же время и очень мощный язык программирования.
Бурное развитие информационных технологий требовало качественной и быстрой разработке программного обеспечения. Именно для таких разработок проявил себя BorlandDelphi. В основе систем быстрой разработки лежит технология визуального проектирования и событийного программирования, и не надо думать над программным кодом и реализацией стандартных задач, все что требуется это подключить определённый модуль (в зависимости от задачи) и правильно построить интерфейс программы.
Среди пользователей самой популярной операционной системой является Windows. И для разработчика, несомненно, очень важно, чтобы программы создавались именно для этой оболочки. До недавнего времени практически все программы для этого пакета операционных систем на BorlandDelphi, который в своё время мог освоить только пользователь с большим опытом программирования и требовал серьёзных знаний в теории.
Седьмая версия BorlandDelphi идеально подходит для того чтобы начать создавать свои собственные программы и приложения. Как и предыдущие версии, BorlandDelphi 7 Studio позволяет создавать самые различные программы: от простейших однооконных приложений до программ управления распределенными базами. В состав пакета включены разнообразные утилиты, обеспечивающие работу с базами данных, XML-документами, создание справочной системы. Отличительной особенностью седьмой версии является поддержка технологии NET.
2.1 Постановка задачи создания программного продукта
сеть кратчайший данные имитационный
Моделируемая сеть передачи данных создается между отдельными городами. Каждый город генерирует некоторый внешний трафик, значение которого определяется условно числом жителей. Например, если число жителей в городе N 100 тысяч человек, то сетевой трафик принимается равным 100 кбит/сек. Для определения городов Кемеровской области используется карта для формирования списка населённых пунктов.
При этом размер этого трафика (число передаваемых пакетов в секунду) и размер отдельных пакетов распределены по экспоненциальному закону с заданными средними.
Между городами существуют различные каналы передачи данных, отличающиеся пропускной способностью. Значение пропускной способности определяется из величины расстояния между городами. Например, если расстояние между городами 100 км, то пропускная способность канала связи выбирается равной 100 пакетов/сек.
Внешний трафик каждого города равномерно распределяется между смежными с ним городами и выходом сети (поглощение пакетов).
Для выбора построения модели необходимо определить список городов, входящих в сеть с расстоянием от 50 до 500 км.
Необходимо, составив таблицы трафиков сети, определить время задержки по множеству маршрутов и выбрать оптимальный вариант маршрута.
- быстрый поиск необходимой информации;
- сведения к минимуму операций ввода данных.
2.2 Описание математической модели реализации задачи
Для расчета входного потока заявок для каждой системы массового обслуживания используем условие стационарности: среднее число заявок, поступающих в систему, равно среднему числу заявок, покидающих ее.
Вероятности перехода заявок (пакетов данных) из одной СМО в другую берутся по условию одинаковыми для СМО с общей начальной вершиной. При этом источник заявок выступает в виде отдельной оконечной вершины, соединенной с каждой из остальных двумя дугами. Расчет характеристик этих дуг не ведется.
Естественным требованием является выполнение условия достоверности события - перехода заявки в некоторую СМО. Математически это выражается в равенстве единице суммы вероятностей перехода во все инцидентные ребра (в том числе и ребро, соединяющее вершину с источником - оконечной вершиной) для всех вершин графа.
Если всего вершин графа исходных данных N, то можно составить систему из N линейных уравнений вида:
где R i - собственная интенсивность генерации пакетов i-м городом;
л i - общая интенсивность прихода пакетов в i-й город;
- вероятность перехода сообщения из вершины i в вершину j.
После преобразования формулы (1) получается формула:
Полученную систему можно решить, используя формулы Крамера. Дополнительная конечная вершина в расчетах не учитывается.
где det A i - определитель матрицы, составленной из коэффициентов при, в которой i-й столбец заменен на столбец свободных членов.
det A i - определитель матрицы, составленной из коэффициентов при.
Искомая интенсивность поступления заявки в СМО будет определяться по формуле:
Для сети будет существовать установившейся режим, если каждая СМО в сети будет стационарной. Таким образом, для каждой СМО в сети (то есть для каждого ребра графа) должно выполняться условие стационарности для одноканальной СМО по формуле:
где - пропускная способность соответствующего ребра.
В случае не выполнения данного условия для некоторой СМО необходимо увеличить пропускную способность канала ij либо уменьшить число пакетов, поступающих в вершину i.
Для определения весов ребер графа исходных данных необходимо рассчитать среднее время нахождения заявки (пакета) в данном ребре.
В случае если ребро между двумя вершинами отсутствует, его вес предполагается равным бесконечности и определяется по формуле Литтла:
Для поиска оптимального (кратчайшего) пути на графе можно использовать алгоритм Дейкстры. Данный алгоритм работает для случая, когда веса ребер графа положительны (это условие выполняется в сетях передачи данных).
Алгоритм ищет оптимальный путь из начальной (нулевой) вершины графа в конечную (последнюю).
Для работы алгоритма всем вершинам присваивается метка и создается множество окончательно помеченных вершин P. Начальные значения меток у всех вершин, кроме первой, равны бесконечности. Метка первой вершины равна 0. Значение метки некоторой вершины после окончания работы алгоритма будет показывать длину кратчайшего пути от начальной вершины до данной. Начальное множество P содержит только первую вершину.
Шаг 1. Выбрать все непомеченные вершины, смежные с хотя бы одной из помеченных.
Шаг 2. Изменить метки выбранных на шаге первом вершин по следующему правилу: новой метке присваивается минимальное значение сумм старой метки и веса ребра для каждого узла. Здесь минимум берется по всем помеченным вершинам. Индекс минимизации обозначен как i.
Шаг 3. Из всех непомеченных вершин выбрать вершину с минимальной меткой и добавить ее в P. Если множество P содержит все вершины - работа алгоритма заканчивается. Иначе - переход на шаг 1.
Фрагмент программы, реализующей алгоритм Дейкстры, приведен в приложении Б.
Для реализации представленной математической модели в среде программирования необходимо составить алгоритм программы. В данном случае целесообразно использовать операторы множественного выбора, так как необходимо реализовать два направления моделирования - расчет и построение.
Приложение состоит из 4 блоков. Алгоритм главной формы представлен на листе 1 графической части.
Блок «Файл» даёт возможность создать новый файл, сохранить графическое представление построенной модели для дальнейшего использования посредствам команды «Открыть».
Для выполнения расчётов необходимо выполнить построение графа. Блок «Построение» предполагает визуальное представление графа с соответствующим заполнением переменных по ходу построения. Алгоритм подпрограммы «Построение» представлен в соответствии с листом 2 графической части.
Для построения модели графа необходимо сначала выбрать объект - узел, ребро. При построении узлов определяются названия городов, которые будут включены в имитационную модель сети передачи данных. А при проектировании рёбер определяются интенсивности пропускной способности для каждого населённого пункта.
После выбора объекта выбирается режим построения - добавить, выделить, удалить.
Блок «Расчёт» определяет параметры графа в соответствии с формулами (1) - (6), кратчайший путь в графическом и текстовом виде, реализованный по алгоритму Дейкстры, а также отчёт расчётов.
Отчёт результатов обобщает данные полученные на предыдущих шагах алгоритма и определяет параметры модели в виде таблиц, в которых зависимости от выбранного параметра может быть отражена информация о следующих результатах расчётов:
- время задержки пакетов в каналах между городами;
- интенсивность потока в каждом из узлов.
В алгоритме предусмотрено обращение в случае необходимости к справочной информации и руководству пользователя.
Также алгоритм спроектирован таким образом, что на любом этапе выполнения есть возможность прервать работу и выйти из проекта.
2.4 Реализация алгоритма программы на языке программирования
Алгоритм данной задачи реализован в среде объектно-ориентированного программирования Delphi.
Основные команды приложения лучше всего сделать доступными через пункты меню главного окна программы. Назначение пунктов меню можно пояснить в строке состояния главного окна. Нажатие на правую кнопку мыши сбрасывает выделение графа, кроме режима задания параметров узлов (в этом случае такая команда вызовет контекстное окно свойств для выбранной вершины).
Также необходимо обеспечить выполнение следующих команд.
Команды «Построение»приводит приложение в режим добавления узлов рёбер сети.
var i, j, cur_reb_stac1, cur_reb_stac2 : integer;
if i = cur_ver then Form1.Canvas.Pen.Color := clRed
else Form1.Canvas.Pen.Color := clBlack;
Form1.Canvas.Ellipse(usel[i].X-rad_ver,usel[i].Y+rad_ver,usel[i].X+rad_ver,usel[i].Y-rad_ver);
Form1.Canvas.TextOut(usel[i].X,usel[i].Y-rad_ver,IntToStr(usel[i].Num));
Form1.Canvas.TextOut(usel[i].X+20,usel[i].Y-
if (i=cur_reb_p1) and (j=cur_reb_p2) then
else if (propusk[i,j].Intens>propusk[i,j].Traf) then
Form1.Canvas.MoveTo(usel[i].X,usel[i].Y);
Form1.Canvas.LineTo(usel[j].X,usel[j].Y);
Form1.Canvas.LineTo(usel[j].X,usel[j].Y);
begin Form1.Canvas.Pen.Color := clRed;
Form1.Canvas.MoveTo(usel[krat_put[i]].X,usel[krat_put[i]].Y);
Form1.Canvas.LineTo(usel[krat_put[i+1]].X,usel[krat_put[i+1]].Y);
Команда «Расчеты - Подсчет параметров»рассчитывает матрицу вероятностей переходов графа, проверяет каждую дугу на стационарность (в случае нестационарности, соответствующая дуга может быть выделена цветом и выдавать предупреждение о неверности заданного параметра), а также рассчитывает веса существующих ребер. Результат на экране можно не отображать.
GroupBox1.Caption:='Трафикгородов';
Width :=ColWidths[i]*last_ver+ColWidths[0]+30;
Cells[i,1]:=IntToStr(usel[i].Traf);
GroupBox1.Caption:='Пропускнаяспособность';
begin Width:=ColWidths[i]*last_ver+ColWidths[0]+30;
Height:=RowHeights[j]*last_ver+RowHeights[0]+30;
Cells[i,j]:=IntToStr(propusk[i,j].Traf);
2: begin //Время задержки пакетов в каналах между городами
GroupBox1.Caption:='Время задержки пакетов в каналах между городами';
Width:=ColWidths[i]*last_ver+ColWidths[0]+30;
Height:=RowHeights[j]*last_ver+RowHeights[0]+30;
Cells[i,j]:=FloatToStr(propusk[i,j].Time);
3: begin //Интенсивность потока в каждом из узлов
GroupBox1.Caption:='Интенсивность потока в каждом из узлов';
begin Width:=ColWidths[i]*last_ver+ColWidths[0]+30;
Height:=RowHeights[j]*last_ver+RowHeights[0]+30;
Cells[i,j]:=FloatToStr(propusk[i,j].Intens);
Команда «Расчеты - Кратчайший путь». По данной команде программа вычисляет оптимальный путь между 0-й и последней вершиной при всех рассчитанных параметрах графа. Оптимальный путь целесообразно выделить на графе цветом.
//Кратчайший путь - алгоритм Дейкстры
procedure TForm1.N23Click(Sender: TObject);
if (ver_first< 1) or (ver_first> 21) then ver_first := 1;
fillchar(versina,sizeof(versina),0);
fillchar(Ras_Path,sizeof(Ras_Path), 10000); //бесконечность
Ras_Path[ver_first] := 0;//расстояние до начальной вершины
if ( (Ras_Path[j] <= m) and (not versina[j]) ) then
if ((propusk[v,j].Traf<>0) and (not versina[j]) and
(ras_Path[v]+propusk[v,j].Traf0)) then p[j]:=p[j]+p[v]+'/'+inttostr(j)
else p[j]:=p[v]+'/'+inttostr(j)+'';
if i=ver_last then p[i]:=inttostr(ver_first)+p[i]+'!';
S:=''; Count_p:=0; for i:=1 to length(p[ver_last]) do
if (copy(p[ver_last],i,1)='/') or (copy(p[ver_last],i,1)='!') then
krat_put[Count_p]:=strtoint(copy(S,1,length(S)-1));
Memo1.Text := Memo1.Text + IntToStr(krat_put[i]) + '-';
Memo1.Text := Memo1.Text + IntToStr(krat_put[Count_p]);
ifCount_p<2 thenshowmessage('Между вершинами нет связи!');
Path := Path + ras_Path[krat_put[i]];
begin Form1.Canvas.Pen.Color := clRed;
Form1.Canvas.MoveTo(usel[krat_put[i]].X,usel[krat_put[i]].Y);
Form1.Canvas.LineTo(usel[krat_put[i+1]].X,usel[krat_put[i+1]].Y);
Команда «Расчеты - Отчет». Выводит на экран модальное окно, содержащее в себе отчет по рассчитанным параметрам модели в текстовом виде (время задержки в каждой дуге, интенсивность прихода заявок в каждый узел, а также метки вершин).
procedure TForm1.N20Click(Sender: TObject);
var i,j, cur_reb_stac1, cur_reb_stac2 : integer;
usel[i].TrafOut := usel[i].TrafOut + propusk[i,j].Traf;
propusk[i,j].Veroyatnost:=(propusk[i,j].Traf/usel[i].TrafOut);
//интенсивность канала и число пакетов поступающих в город
propusk[i,j].Intens:=usel[i].Traf*propusk[i,j].Veroyatnost;
usel[j].Intens:=usel[j].Intens+propusk[i,j].Intens;
ifpropusk[i,j].Intens>propusk[i,j].Traf then
beginshowmessage('Необходимо увеличить пропускную способность канала между городами : '+usel[i].Name + ' и ' + usel[j].Name);
Form1.Canvas.MoveTo(usel[i].X,usel[i].Y);
Form1.Canvas.LineTo(usel[j].X,usel[j].Y);
if (propusk[i,j].Traf<> 0) then begin
ifpropusk[i,j].Traf - propusk[i,j].Intens = 0
thenpropusk[i,j].Traf := propusk[i,j].Traf + 1;
propusk[i,j].Time:=(1/(usel[j].Intens+usel[i].Traf))*
propusk[i,j].Intens/(propusk[i,j].Traf-propusk[i,j].Intens);
Команда «Файл - Новый» осуществляет создание нового пустого документа модели сети передачи данных.
procedure TForm1.N6Click(Sender: TObject);
Команда «Файл - Открыть» выводит форму для выбора файла, который необходимо открыть. Содержимое файла будет отражено в главном окне приложения в виде графа.
procedure TForm1.N7Click(Sender: TObject);
Form1.OpenDialog1.FileName := filename;
extractfilepath(Application.ExeName);
filename := Form1.OpenDialog1.FileName;
AssignFile(F, Form1.OpenDialog1.FileName);
ifIOResult = 0 then begin ReadLn(F, s);
beginReadLn(F, s); usel[i].Num := StrToInt(s);
ReadLn(F, s); usel[i].X := StrToInt(s);
ReadLn(F, s); usel[i].Y := StrToInt(s);
ReadLn(F, s); usel[i].Traf := StrToInt(s);
ReadLn(F, s); kanal[i, j] := StrToInt(s);
readLn(F, s); propusk[i, j].Traf := StrToInt(s);
elseMessageDlg('File access error', mtWarning, [mbOk], 0);
Команда «Файл - Сохранить» и «Файл - Сохранить как…»сохраняет файл с заданным в диалоге именем.
procedure TForm1.N8Click(Sender: TObject);
begin Form1.saveDialog1.FileName := filename;
extractfilepath(Application.ExeName);
filename := Form1.saveDialog1.FileName;
AssignFile(F, Form1.saveDialog1.FileName);
Команда «Выход» производит закрытие всего приложения по средствам метода Application.terminate.
2.5 Описание процесса отладки программы и оценка результатов решения задач
Интегрированная среда разработки Delphi предоставляет программисту мощное средство поиска и устранение ошибок в программе - отладчик. Отладчик позволяет выполнять трассировку программы, наблюдать значения переменных, контролировать выводимые программой данные.
Отладкой программы называется процесс выявления и исправления ошибок.
Успешное завершение процесса компиляции не означает, что в программе нет ошибок. Убедиться, что программа работает правильно можно только в процессе ее работоспособности, которая называется тестированием.
Тестирование - это процесс исследования программного продукта с целью получения информации о качестве продукта.
Ошибки компьютерных программ делятся на синтаксические, логические и времени выполнения.
Ошибки времени выполнения, в Delphi они называются исключениями. Это ошибки, которые обычно возникают при первых запусках программы и во время тестирования.
Синтаксические ошибки, их так же называют ошибками времени компиляции, наиболее легко устранимы. это ошибки в написании структуры программного кода, а именно, в написании имен и ключевых слов, правила грамматики и.т.д..
Логические ошибки - это ошибки связаны с семантикой или значением исходного программного кода.
Легче всего устранить синтаксические ошибки, так как компилятор Delphi обнаруживает их и указывает на их местонахождение, а вот логическую ошибку обнаружить довольно трудно. К тому же для ее устранения часто приходится переписывать большой фрагмент кода.
Труднее всего обнаружить и устранить ошибки времени выполнения. Для предотвращения подобных ошибок необходимо тщательно протестировать программу, подавая на ее вход различные комбинации исходных данных, как правильные, так и ошибочные.
Существует несколько приемов отладки программы. Одним из которых является дамп данных (выгрузка, вывод данных на экран) и выполнение кода вручную. Они применяются на любых платформах и для всех языков программирования.
Наиболее простой п
Моделирование сети передачи данных на примере Кемеровской области дипломная работа. Программирование, компьютеры и кибернетика.
Нематериальные Блага И Их Защита Диссертация
Курсовой Проект Автоматизации Процесса
Курсовая работа: Стиль и методы работы с персоналом
Реферат На Тему Система Методов Менеджмента. Методы Управления Организацией
Сочинение По Тексту Моя Она Чехов Егэ
Реферат На Тему Визначення Поняття Ризику
Сочинение Про Робинзона Крузо 5 Класс
Контрольная работа по теме Структура металл–сегнетоэлектрик полупроводников
Бесплатные Рефераты На Тему
Курсовая работа по теме Роль свободных радикалов в природной среде
Курсовая работа по теме Государственная власть как форма организации общества
Реферат: Музеи Италии Национальный музей в Неаполе
Реферат: Проблема интертекстуальности в теории переводa
Огэ 2022 Русский Язык Образец Сочинения
Контрольная работа: Політичні рішення та їх місце у вирішенні суспільних проблем
Курсовая Работа Программирование C
Контрольная работа: Туберкулез: классификация, клиническая картина. Вакцина БЦЖ, значение реакции Манту
Сочинение По Цитате Цицерона Жизнь
Для Чего Нужен Язык Человеку Сочинение
Требования К Оформлению Рефератов В Колледже
Служба контролінгу в організаційній структурі підприємства - Менеджмент и трудовые отношения контрольная работа
Анализ состояния и совершенствование системы управления персоналом - Менеджмент и трудовые отношения дипломная работа
Карьера молодежи в органах государственной и муниципальной власти Краснодарского края - Государство и право дипломная работа