Вопросы к (по) экзамену по курсу «Технология программирования» для специальности «Информационные системы и технологии»

Список вопросов к экзамену
по курсу «Технология программирования»
для специальности «Информационные системы и технологии»

  • 1. Критерии качества программного средства. Определение качества ПО в стандарте ISO 9126. Многоуровневая модель качества ПО. Оценочные характеристики качества про-граммного продукта
  • 2. Жизненный цикл программного продукта, фазы жизненного цикла. Этапы классического жизненного цикла, их содержание.
  • 3. Фаза разработки, этапы процесса разработки. Стратегии конструирования ПО: линейная, инкрементная, эволюционная.
  • 4. Стандарт ISO/IEC 12207-95: основные определения – система, модель жизненного цик-ла, квалификационные требования. Основные процессы, их содержание, работы и задачи процесса разработки.
  • 5. Стандарт ISO/IEC 15504 (SPICE): оценка возможностей разработчика. Связь этого стан-дарта с моделью зрелости предприятия SEI CMM.
  • 6. Прогностические модели процесса разработки: каскадная, RAD, спиральная.
  • 7. Адаптивные модели процесса разработки: экстремальное программирование, Scrum.
  • 8. Руководство программным проектом. Предварительные оценки проекта. Системный анализ и анализ требований. Анализ рисков. Планирование процесса разработки. Типо-вая структура распределения работ.
  • 9. Контроль процесса разработки. Размерно- и функционально-ориентированные метрики. Метрические характеристики объектно-ориентированных систем.
  • 10. Структурный и объектно-ориентированный подходы к разработке ПО. Их сравнитель-ный анализ. Сущность объектного подхода к разработке программных средств.
  • 11. Анализ предметной области: цели и задачи. Модели предметной области. Формальные определения. Классификация моделей. Методология IDEF0, синтаксис IDEF0-моделей.
  • 12. Диаграммы потоков данных (DFD-диаграммы) и диаграммы потоков работ (IDEF3-диаграммы), их использование при моделировании предметной области.
  • 13. Объектно-ориентированный анализ предметной области. Методика определения границ системы и ключевых абстракций. Пример проведения анализа. Функциональные и не-функциональные требования к системе.
  • 14. Функциональные требования к системе. Способ их представления в виде UML-диаграммы. Пример диаграммы с использованием отношений «расширяет» и «включа-ет». Понятие прецедента и сценария.
  • 15. Концептуальная модель системы: концептуальные классы, системные события и систем-ные операции. Способ их представления в виде UML-диаграмм. Пример концептуаль-ного описания прецедента.
  • 16. Диаграммы взаимодействия как элементы концептуальной модели. Синтаксис диаграмм взаимодействия.
  • 17. Проектирование программных средств. Цели и задачи этапа проектирования. Понятие модели проектирования, ее отличия от концептуальной модели. Стадии проектирования, их краткая характеристика.
  • 18. Задачи, решаемые на стадии эскизного проектирования. Понятие архитектуры ПС. Про-блема выбора архитектуры. Влияние архитектуры на качественные характеристики ПС.
  • 19. Понятие модуля и модульного программирования. Преимущества модульного подхода к разработке ПО. Модули как средство физического структурирования ПО. Свойства мо-дулей.
  • 20. Задачи, решаемые на стадии детального проектирования. Цели и задачи проектирования пользовательского интерфейса.
  • 21. Понятие шаблона. Классификация шаблонов. Стандарт описания шаблонов.
  • 22. Идентификация методов программных классов. Диаграммы классов, способы отображе-ния отношений ассоциации и зависимости. Пример диаграммы классов.
  • 23. Тестирование и отладка программного средства. Стадии тестирования и их характери-стика. Основные принципы тестирования. Тесты и тестовые наборы. Понятие тестового покрытия.
  • 24. Отладочное тестирование. Соотношение структурного и функционального подходов. Примеры реализации.
  • 25. Интеграционное тестирование. Виды интеграционного тестирования. Критерии полноты тестовых наборов. Регрессионное тестирование. Критерии завершения отладочного тестирования.
  • 26. Системное тестирование. Виды системного тестирования. Критерии полноты тестовых наборов.
  • 27. Особенности объектно-ориентированного тестирования. Расширение области примене-ния тестирования. Критерии тестирования моделей. Тестирование классов. Тестирование кластеров и потоковое тестирование.
  • 28. Понятие автоматизированного тестирования. Автотесты. Достоинства и недостатки ав-томатизированного тестирования. Средства автоматизированного тестирования.
  • 29. Утилита модульного тестирования NUnit. Средства описания тестов. Утверждения, па-раметры утверждений.
  • 30. Понятие версии программного продукта и системы контроля версий. Модели версиони-рования, их сравнение.
  • 31. Система Subversion, ее архитектура. Хранилище, его структура, правки. Команды SVN для работы с хранилищем. Понятия рабочей копии и служебного каталога. Сценарий объединения правок. Конфликты и способы их разрешения.
  • 32. Понятие сборки, манифест сборки. Сборка приложения, системы автоматизации сборки.
  • 33. Утилита NAnt, файл сборки и его структура. Цели, зависимость целей, описание целей.
  • 34. Документирование процесса разработки. Типы документов управления.
  • 35. Документирование программного продукта. Документация сопровождения, ее назначе-ние и состав. Пользовательская документация, ее назначение и состав.

Литература

  • 1. Орлов С.А. Технологии разработки программного обеспечения: Учебник для вузов. 3-е изд. ¬– СПб.: Питер, 2004. – 527 с.: ил.
  • 2. Принципы проектирования и разработки программного обеспечения. Учебный курс MCSD.: Пер. с англ.: – М.: Издательско-торговый дом «Русская Редакция», 2000. – 608 с.: ил.
  • 3. Лингер, Р. Теория и практика структурного программирования / Ричард Лингер, Хэрлан Миллс, Бернард Уитт.: Пер. с англ.: – М.: Мир, 1982. – 406 с.: ил.
  • 4. Грис, Дэвид. Наука программирования.: Пер. с англ.: – М.: Мир, 1984. – 416 с.: ил.
  • 5. Буч, Грейди. Объектно-ориентированный анализ и проектирование с примерами прило-жений на C++. 2-е изд.: Пер. с англ.: – СПб.: Невский диалект, 1998. – 560 с.: ил.
  • 6. Оберг, Роберт, Дж. Технология COM+. Основы и программирование.: Пер. с англ.: Уч. пос. – М.: Издательский дом «Вильямс», 2000. – 480 с.: ил.
  • 7. Уоткинз, Д. Программирование на платформе .Net / ДеймьенУоткинз, Марк Хаммонд, Брэд Эйбрамз.

если возникнет желание поделиться ответами - просьба дать здесь ссылку)

_________ _ _ ______
dthcbz фкн вгу and co

vedro-compota's picture

спасибо)

_____________
матфак вгу и остальная классика =)