- •Составные части технологии программирования (тп). Отличие тп от методологии программирования и программной инженерии.
- •Технология быстрой разработки приложений (rad). Основные принципы и особенности.
- •Иерархия понятий в технологии программирования.
- •Определение понятия «предметная область». В чем заключается принцип концептуализации предметной области.
- •Особенности современных программных систем как объектов разработки. Проблемы разработки сложных программных систем.
- •Общие принципы разработки сложных программных систем. Признаки сложных программных систем.
- •Показатели качества программных систем.
- •Основные подходы к созданию сложных программных систем (структурный и объектный).
- •Структурный подход к разработке программных систем.
- •2) Объектный подход к разработке программных систем.
- •Основные этапы жц: Требования к по.
- •Основные этапы жц: Проектирование по.
- •Основные этапы жц: Конструирование по.
- •Основные этапы жц: Тестирование по.
- •Основные этапы жц: Сопровождение по.
- •1. Технические вопросы:
- •Жизненный цикл (жц) программных систем: определение, стандарты и проблемы.
- •Основные процессы жизненного цикла по.
- •Модель жизненного цикла по: Каскадная модель разработки по.
- •Модель жизненного цикла по: Спиральная модель разработки по.
- •Другие типы моделей жизненного цикла (V-образная, инкрементная, быстрого прототипирования).
- •Модели организации команд: Административная модель. Модель хаоса. Модель открытой архитектуры.
- •Модель проектной группы msf for Agile Software Development: Основные принципы построения команды.
- •Модель проектной группы msf. Ролевые группы и роли.
Основные этапы жц: Сопровождение по.
Сопровождение – это совокупность действий по обеспечению работоспособности ПО, а также по внесению изменений в случае либо возникновения ошибок в процессе эксплуатации ПО или при адаптации его к новой среде функционирования, а также по повышению производительности и улучшению других характеристик ПО.
Основные концепции сопровождения:
Модель жизненного цикла
Ведение документации (документирование)
Основные виды работ на этапе сопровождения:
Устранение ошибок (дефектов)
Улучшение дизайна в смысле архитектуры
Расширение функциональных возможностей системы
Адаптация ПО при работе на другой аппаратной или программной платформе
Миграция унаследованного программного обеспечения
Вывод из эксплуатации
В стандарте ISO ITEC 14764 представлено 4 вида работ:
Виды работ / Цели (подходы) |
Корректив |
По расширению |
«Проактивный подход» |
Профилактическая |
Совершенствующая |
«Реактивный подход» |
Корректирующая |
Адаптирующая |
Профилактическая – модификация ПО, используется для предотвращения скрытых дефектов ещё до того, как они приведут к реальным отказам;
Совершенствующая – модификация ПО, применяется для повышения характеристик производительности и удобства использования;
Корректирующая – модификация ПО после возникновения сбоев на этапе эксплуатации или для реализации нереализованных задач;
Адаптирующая – это модификация ПО с целью обеспечения эффективного выполнения функций при изменении окружения, в котором работает ПО (в первую очередь – в бизнесе).
Ключевые вопросы сопровождения:
1. Технические вопросы:
Возможность внесения изменений в код ПО
Организация тестирования
Контроль характеристик, влияющих на процесс сопровождения;
2.Управленческий вопрос – контроль за выполнением всех видов работ, а также заведением документации в процессе сопровождения и эксплуатации ПО;
3.Стоимостные – связанные с оценкой затрат для сопровождения ПО;
4.Вопросы измерения – связаны с оценкой характеристик системы до и после модификации.
Процессы сопровождения:
Трактуются по-разному в том смысле, что используются одни и те же виды работ, но порядок их выполнения может отличаться.
Техники сопровождения:
Понимание программных систем – средство работы с программным кодом.
Реинжиниринг – реструктуризация ПО без перепрограммирования отдельных частей.
Реверсный инжиниринг – получение спецификации по программному коду, восстановле-ние исходного кода.
Рефакторинг – модификация ПО без изменения структуры с целью улучшения дизайна и производительности.
Жизненный цикл (жц) программных систем: определение, стандарты и проблемы.
Концепция жизненного цикла впервые была озвучена в 1968 году на совещании в Лондоне, где собрались представители двадцати двух фирм-разработчиков программного обеспечения.
В 1970 году Уинстон Ройс провёл идентификацию всех стадий и сформулировал определение жизненного цикла программных продуктов (Software Lifetime Cycle - SLC).
Жизненный цикл – это промежуток времени с момента принятия решения о необходимости разработки программного обеспечения до изъятия последней версии ПО из эксплуатации.
Модель жизненного цикла – это структура, состоящая из процессов, работ и задач, включающая в себя разработку, эксплуатацию и сопровождение программного продукта, охватывающая его жизнь в целом от установления требований к ней до прекращения её использования.
Жизненный цикл:
Анализ требований
Проектирование ПО
Конструирование ПО
Тестирование
Сопровождение
Структура жизненного цикла – перечень процессов, действий и задач.
Процесс – это набор взаимосвязанных работ, преобразующий исходные данные в выходной результат.
Организация жизненного цикла – это совокупность процессов, каждый из которых разбит на действия (работы), состоящие из отдельных элементарных задач.
Скотт Амблер предложил рассматривать жизненный цикл в виде четырёх уровней:
Жизненный цикл разработки программного продукта
Разработка
Жизненный цикл программной системы
Поддержка
Сопровождение
Жизненный цикл информационных технологий
Деятельность IT-разработчиков
Жизненный цикл организации/бизнеса/отрасли
