- •1. Роль ПО и компьютеров в производстве, социальной жизни и науке.
- •2. Инженерия ПО
- •3. Проблемы разработки ПО и пути их решения
- •4. Характеристики качества ПО
- •5. Факторы, влияющие на качество ПО
- •6. Системный подход к разработке ПО. Временной и "пространственный " аспекты системного подхода
- •7. Этапы жизненного цикла ПО. Каскадная модель жизненного цикла ПО.
- •8. Конструирование ПО
- •9. Стандарты по разработке ПО. Виды и значение стандартов, требования стандартов
- •10. Три группы процессов создания ПО
- •11. Жизненный цикл ПО и процессы верификации.
- •12. Тестирование, верификация, валидация. Различие в понятиях. V образная модель жизненного цикла ПО
- •13. Спиральная модель ЖЦ ПО.
- •14. «Тяжелые и легкие» технологии разработки ПО. Экстремальное (ХР) программирование
- •16. Виды документов, выпускаемых на ПО по этапам разработки системы.
- •17. Итеративный характер проектирования ПО. Стадии проектирования.
- •19. CASE технологии разработки ПО.
- •20. Технология Ration Rose,UML
- •21. Структура системы, иерархия управления и структура ПО
- •22. Цикличность решения задач управления в системах с ЦВМ
- •23. Временная диаграмма работы системы. Представления работы ПО СТС в виде набора «сечений», выполняемых последовательно.
- •24. Представление работы ПО СТС в виде набора параллельных процессов.
- •25. Задачи и процессы. Контекст процесса
- •26. Обобщенная схема возможных вариантов совместного использования информации взаимодействующими процессами
- •Закон Амдела
- •28. Критический ресурс ЦВМ. Основное правило защиты ресурсов ЦВМ
- •29. Синхронизация процессов
- •Взаимное исключение процессов. Использование мьютексов
- •30. Задача синхронизации «Читатели-писатели»
- •Задачи синхронизации. «Обедающие философы»
- •31. Технология синхронизации ПО. Система Intel Thread Checker (ITC) и типы обнаруживаемых ею ошибок.
- •32. Конструирование ПО
- •33. Минимизация сложности ПО. Стандартные приемы в конструировании
- •35. Особенности конструирования программ для встроенных ЦВМ критических систем. Фиксированное распределение памяти
- •36. Проектирование снизу-вверх и проектирование сверху-вниз. Программные заглушки и их использование
- •37. Основные понятия структурного подхода к проектированию ПО.
- •Основные понятия объектно - ориентированного подхода (ООП) к конструированию ПО.
- •38. Мультиагентные технологии
- •39. Классы реального мира предметной области и искусственные объекты. Чрезмерно большие и неправильно названные классы
- •40. Эвристические приемы конструирования методов, предотвращение дублирования кода
- •41. Сокрытие информации. Две категории секретов программ.
- •Избыточное распространение информации в программе
- •Опасность использования глобальных переменных
- •45. Сопряжение между модулями. Критерии оценки сопряжения. Виды сопряжения
- •46. Эталоны для контроля работы ПО
- •47. Низкоуровневые средства обнаружения ошибочного функционирования ПО
- •Исключительные ситуации (Исключения)
- •48. Выбор способа обработки некорректных входных данных
- •49. Способы обработки возможных ошибок
- •50. Утверждения и общие принципы их использования
- •51. Стратегии безопасности. Три уровня реакции ПО на обнаруженную ошибку. Отказоустойчивые системы
- •54. Ошибки ПО, отладка и тестирование ПО.
- •55. Анализ обнаруживаемых в ПО ошибок и важность его проведения
- •Классификация ошибок ПО
- •56. Статическая отладка и динамическая отладка
- •Функциональная отладка
- •57. Принцип «белого» и «черного» ящика при динамической отладке ПО.
- •58. Структурная динамическая отладка
- •59. Автономная отладка (АО) и комплексная отладка (КО) ПО
- •60. Тестовое окружение ПО. Драйверы и заглушки.
- •61. Последовательность действий при отладке ПО.
- •Принципы выделения маршрутов для отладки.
- •62. Приближенный метод оценки числа вариантов для отладки ПО для «широкого графа» программы. Графы деревья, как модели структуры ПО
- •63. Регулярное дерево и устойчивость его структурного параметра
- •64. Контроль отлаженности ПО в процессе отладки.
- •67. Метод наименьших квадратов для аппроксимации экспериментальных данных
Управление последовательностью выполнения функциональных задач СТС-ПКФ как по информации наземного комплекса управления (НКУ), так и по выработанной в БКУ, необходимо сосредоточить в специальных программах бортового ПО - планирующих программах, которые составят ещё один уровень иерархии ПО.
В общем случае такая структура ПО управления СТС достаточно универсальна и не зависит от назначения ПО сложной системы и связана с частотным разделением процессов управления на долгосрочное планирование, диспетчерское оперативное управление и исполнение рабочих функций.
Таким образом декомпозиция систем СС порождает представление комплекса бортового ПО в виде иерархической структуры (смотри схему Рис.7).
В свою очередь каждая подсистема состоит из одного или нескольких датчиков информации, исполнительных органов или средств выдачи управляющей информации, а также в настоящее время средств обработки информации – встроенных в датчики и исполнительные органы локальных управляющих ЦВМ. Поэтому ПО подсистем само имеет сложную иерархическую структуру, подобную рассмотренным.
С учетом этой вложенности структура ПО сложной технической системы представляется в виде многоуровневой иерархической структуры простых программных модулей с четко очерченными функциями. После разработки каждого из них они должны быть объединены(интегрированы) в единый программный комплекс в пространстве и во времени.
22. Цикличность решения задач управления в системах с ЦВМ
Системный подход к разработке ПО показывает, что разработка ПО не самоцель и По обеспечивает работу какой -то системы . Для некоторых систем ,например, систем управления техническими системами физическими процессами в реальном времени или вне его этот вывод очевиден.
34
Рис. 8 Фазы работы ПО управления технической системой
Для других систем нужно приложить определенные усилия, чтобы обнаружить объект управления со стороны ПО.
Как же работает ЦВМ и ПО в системе управления. Рассмотрим задачу А. Можно выделить три фазы в исполнении программным обеспечением задачи А: ввод информации (А1), преобразование информации(А2), выдача управления на исполнительные органы или в интерфейс с оператором(А3) смотри Рис.8.
После ввода информации в ЦВМ или проведения съема информации с датчиков начинается исполнение фазы 2 и 3. В течение времени исполнения фазы 2 и 3 ЦВМ «не видит» изменения управляемых координат, так как ввод информации в ЦВМ осуществляется не непрерывно а только в дискретный момент времени выполнения фазы 1. С другой стороны объект управления в течение фазы 1 и 2 не испытывает управляющего воздействия (оно будет выработано только в фазе 3) и представлен, как бы, самому себе.
За время, в течение которого исполняются 1, 2 и 3 фазы управления состояние объекта(его управляемые координаты) претерпят изменения по двум причинам.
1)Имеются начальные отклонения координат системы в том числе и скоростей и ускорений.
2)На этом интервале действуют возмущения на объект управления, которые стремятся увести управляемые координаты от заданного и начального положения.
Выбранное в фазе 3 управление не может учитывать влияние этих случайных факторов, действующих пока объект управления не наблюдаем, и поэтому не может привести отклонения управляемых фазовых координат в требуемые значения, например, к 0.
Поэтому для ликвидации отклонений управляемых координат, которые получаются после завершения фазы 3, цикл управления необходимо повторить через Т, затем опять через Т и т.п.
[Введите текст]
Величина периода Т определяется значением допустимых ненаблюдаемых отклонениями управляемых координат процесса за время Т, т.е. динамикой системы.
Данная ситуация справедлива не только для систем управления самолетом, ракетой, спутником, но и, например, для ПО ЦВМ, ведущей учет кадров в организации. Введенные в ЦВМ данные по числу уволившихся или принятых человек устаревают уже в момент ввода и данные об изменениях численности необходимо обновлять с периодичностью раз в сутки для того чтобы обеспечить правильную работу бухгалтерии по начислению зарплаты за отработанное время.
Да и бухгалтерия не может ограничить свою работу однократным расчетом зарплаты . Она должна проводить расчет зарплаты сотрудникам каждый месяц, учитывая действия всех возмущений, действующих на интервале Т на состав персонала организации, законодательную базу и финансовое положение. Если зарплату выдавать каждую неделю, то и расчеты её надо проводить раз в неделю.
23. Временная диаграмма работы системы. Представления работы ПО СТС в виде набора «сечений», выполняемых последовательно.
В сложной технической системе параллельно во времени протекают несколько физических процессов управления. Например, в летательном аппарате необходимо управлять ориентацией трех его осей в пространстве, управлять режимами двигателя и т.п. Если в системе управления имеется встроенная ЦВМ, то этим параллельным физическим процессом управления соответствуют параллельно работающие программы ПО.
Эти программы могут отражаться на структурной схеме ПО, однако, когда какой физический процесс начинается и когда заканчивается, какие процессы исполняются параллельно, как физические процессы взаимодействуют во времени из структурной схемы не видно.
Временная диаграмма работы сложной системы как средство проектирования ПО, позволяет в наглядной форме рассмотреть сразу все параллельные физические процессы и определить параллельно работающие программы ПО. Такая временная диаграмма является основой для выбора принципов организации многозадачной работы ПО и позволяет выбрать операционную систему реального времени.
Ниже на рис.9 рассмотрена подобная укрупненная временная диаграмма работы бортового контура управления спутника на одном из витков (периодов) орбитального движения. На данном витке осуществляется включение бортового двигателя для изменения параметров орбиты.
Временная диаграмма работы СТС при выполнении одной из функциональных задачвременная диаграмма работы ПО в варианте использования системы
36
На данном рисунке применены следующие сокращения:
КДУ - корректирующая двигательная установка для управления движением центра масс;
КРЛ – командная радиолиния связи «борт-земля»;
САН – система автономной навигации;
СУУД – система ориентации и стабилизации,
[Введите текст]