ВВЕДЕНИЕ 7
1 Теоретические сведения 9
1.1 Формулировка проблемы распределения компонентов в серийной k из n
системе 9
1.2 Укрупнённый алгоритм распределения компонентов в серийной k из n
системе 10
1.3 Выводы к разделу 1 11
2 Проектирование программной реализации 12
2.1 Назначение и основные требования к проектируемому ресурсу 12
2.2 Обзор существующих средств для создания ПО для синтеза оптимального
состава МВПС 13
2.3 Формирование структуры исходных данных 13
2.4 Организация вывода результатов расчёта 13
2.5 Выводы к разделу 2 14
3 Программная реализация 15
3.1 Архитектура системы 15
3.2 Программная реализация системы 15
3.3 Выводы к разделу 3 21
4 Экономическое обоснование проекта 22
4.1 Выбор методики расчета трудоемкости программирования 22
4.2 Расчет сметы затрат на разработку программных средств 23
4.2.1 Расходы на оплату труда 24
4.2.2 Материальные затраты 26
4.2.3 Амортизация оборудования 29
4.2.4 Прочие расходы 29
4.3 Смета по проекту 31
4.4 Выводы об экономической эффективности 33
5 Эргономика 34
5.1 Производительность работы 34
5.2 Проблемы, возникающие на этапе разработки GUI 35
5.2.1 Учет особенностей устройств ввода/вывода информации 35
5.2.2 Организация ввода данных 35
5.3 Принципы реализации пользовательского интерфейса 36
5.4 Вывод к разделу 5 36
СПИСОК СОКРАЩЕНИЙ 37
ЗАКЛЮЧЕНИЕ 38
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 39
Анализ современных систем управления и обработки информации, ис¬пользуемых в различных областях производства, показывает, что ключевую роль в обработке информации играет программное обеспечение. Создание и модернизация АСУ и ИУС предъявляют высокие требования к надёжности ПО, т.к. именно программное обеспечение определяет надёжностные характеристи¬ки систем данного класса [24].
Невыполнение этих требований может привести к отказу АСУ или ИУС, что, в свою очередь, повлечёт за собой значительные экономические потери, которые значительно превышают полезный эффект от использования упомяну¬тых выше систем, кроме того, отказ АСУ или ИУС, работающих на опасном или закрытом производстве может привести к человеческим жертвам.
Наиболее распространённым подходом к реализации отказоустойчивого программного обеспечения является методология мультиверсионного програм¬мирования, подразумевающая введение избыточности в структуру ПО. Данная методология на практике доказала свою эффективность. С её использованием были реализованы программные комплексы систем управления летательными аппаратами, атомными электростанциями, химическим производством и т.п. При этом данный подход приводит к значительному повышению конечной стоимости системы, для создания которой он применяется.
Рациональное структурное построение программного обеспечения авто-матизированных систем управления и обработки информации гарантирует дос¬таточно полное применение ресурсов системы. А технологические особенности проектирования ПО АСУ и ИУС, дополняя проблему структурного и информа¬ционного проектирования, выводят её в разряд общих проблем разработки ме¬тодов и автоматизированных систем проектирования сложных программно¬информационных комплексов[24].
Проблеме формирования программных комплексов, проектируемых на основе принципов программной избыточности, в настоящее время уделяется значительное внимание. Проблема проектирования программных комплексов с использованием методологии мультиверсионного программирования рассмат¬ривалась в работах А. Авижиенса, Н. Ашрафи, О. Бермана, М. Катлера, Дж. Ву, К. Яо, Р.К. Скотта, Д. МакАллистера, К.Е. Кроссипитча и многих других. Раз¬рабатываются новые методы оптимизации версионного состава программного комплекса, новые системы формирования структуры программного комплек¬са [24].
В данной работе рассматривается двухцелевая проблема синтеза опти¬мальной структуры мультиверсионной программной системы, где критериями оптимальности являются максимальная надежность и минимальная стоимость создания системы.
В данной дипломной работе был описан процесс создания экспертной системы, предназначенной для оптимального проектирования мультиверсион- ных программных систем и распределения компонентов внутри системы. А именно, были изучены теоретические аспекты данного вопроса и запрограмми¬рован алгоритм решения приведённой выше проблемы.
Также в данной пояснительной записке описан процесс реализации дан¬ной системы: архитектура, структура данных.
Экономическое обоснование проекта и сведения об эргономике так же были представлены в данной пояснительной записке.
В ходе выполнения данного проекта мною были получены знания по ра¬боте с платформой .NETиFramework 4.5, а также знания по предметной области мультиверсионного программного обеспечения.