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

Кафедра программного обеспечения систем радиоэлектронной аппаратуры
при АО «Концерн «Вега»

Московский технологический
университет


Институт кибернетики

 

Технология программирования

Содержание дисциплины

  1. ВВЕДЕНИЕ:
    • Анализ литературы;
  2. ПОНЯТИЯ ПРОГРАММИРОВАНИЯ:
    • Понятие программирования. Основы программирования:
      1. описание жизненного цикла объекта;
      2. исполнитель описания;
      3. объект и цель управления;
      4. терминология.
    • Понятия математического моделирования и описание жизненного цикла объекта моделирования. Внешние воздействия и реакция объекта. Способы описания жизненного цикла и таблица переходов. Особые ситуации
    • Вычислительная система как исполнитель. Основные компоненты программы. Взаимодействие компонент. Трехуровневая структура программного обеспечения. Средства поддержки программного продукта на протяжении его жизненного цикла.
    • Жизненный цикл программного продукта:
      1. анализ предметной области и составные модели программного продукта, выделение компонент;
      2. составление жизненного цикла основного объекта и основных компонент;
      3. подбор и тестирование компонент и их взаимодействия;
      4. интерфейс;
      5. кодирование;
      6. сборка и тестирование программного продукта;
      7. сдача программного продукта заказчику;
      8. сопровождение;
  3. ПОДРОБНОЕ РАССМОТРЕНИЕ СТРУКТУРЫ ПРОГРАММ И ПРОГРАММНОГО ПРОДУКТА:
    • Компонентная модель. Описание компоненты как самодостаточной универсальной структурной единицы программного продукта. Взаимодействие компонент и интерфейсы. Блокирующий и неблокирующий интерфейсы.
    • Разделение на домены:
      1. прикладной домен (прикладные объекты);
      2. технологический домен (средства и объекты поддержки жизненного цикла объекта);
      3. административный домен (язык, среда, средства разработки);
      4. oсобенности жизненного цикла компонент каждого домена;
    • Три типа объектов и особенности их жизненного цикла:
      1. долгоживущие объекты и средства их поддержания;
      2. технологические и инструментальные объекты;
      3. вспомогательные объекты;
    • Управление, классификация и средства к объектам.(типы процессов или алгоритмов)
    • Организация управления и построения программ.
  4. ПОНЯТИЕ ТРАНЗАКЦИИ И СОСТОЯНИЯ ОБЪЕКТОВ:
    • Понятие транзакции, как процесса перехода системы из одного непротиворечивого состояния в другое;
    • Жизненный цикл транзакции;
    • Виды транзакций и управление ими;
    • Стандарты на транзакции;
  5. СРЕДСТВА РАЗРАБОТКИ И ПОДДЕРЖАНИЯ ПРОГРАММ:
    • Понятие среды обитания для программного продукта:
      1. структура программного кода при различных системах программирования;
      2. место каждого слоя среды разработки и правила взаимодействия компонент и объектов;
      3. защита критических секций;
    • Примеры различных сред построения и обитания программного продукта:
      1. компиляторы и интерфейсы;
      2. С/С++;
      3. Java;
      4. различные «билдеры»;
    • Библиотеки:
      1. объектов;
      2. классов;
      3. разделяемые библиотеки;
    • Операционные системы;
  6. БЕЗОПАСНОСТЬ СИСТЕМЫ И ЕЕ ВЗАИМОДЕЙСТВИЕ С ВНЕШНИМ МИРОМ:
    • Понятия безопасности:
      1. безотказность и защита от сбоев аппаратуры;
      2. защита от внешнего вмешательства;
      3. восстановление системы в целом и отдельных компонент;
    • Средства обеспечения защиты от внешнего вмешательства;
    • Обеспечение безотказности системы.

Литература

Основная литература

  1. Шлеер С., Меллор С. Объектно-ориентированный анализ: моделирование мира в состояниях. - Киев: Диалектика, 1993.
  2. Хармут Х. Применение методов теории информации в физике: Перевод с англ. - М.: Мир, 1987.
  3. Винер Н. Кибернетика или управление и связь в животном и машине. - М.: Советское радио, 1968.
  4. Льюнг Л. Идентификация систем. Теория для пользователя: Перевод с англ. - М.: Наука, 1991.
МОСКВА 2017