Дайте характеристику каскадному подходу к проектированию ПО. Укажите преимущества и недостатки каскадной модели ЖЦ ПО. Приведите схему реального процесса разработки ПО

Экзаменационные материалы

По дисциплине «Технология разработки ПО»

Дайте определение термина «информационная система». Укажите признаки и особенности функционирования сложной программной системы. Опишите технологию программирования в историческом аспекте.

Информационная система (сокр. ИС) — система, предназначенная для хранения, поиска и обработки информации и соответствующие организационные ресурсы, которые обеспечивают и распространяют информацию.

Сложной системой называется система, которая состоит из большого числа элементов и характеризуется разветвленной структурой.

Признаки сложной системы:

1) Наличие общей задачи.

2) Большое наличие взаимодействующих компонентов.

3) Возможность декомпозиции системы, то есть ее разбиение на взаимодействующие подсистемы, решающие автономные, функциональные задачи.

4) Иерархическая архитектура системы и иерархия критериев качества.

5) Сложность поведения системы, связанная со случайным характером внешних воздействий и большим количеством обратных связей внутри нее.

6) Устойчивость системы по отношению к внешним воздействиям. Наличие самоорганизации и самоадаптации при различных возмущениях.

7) Высокая надежность системы в целом при абсолютной надежности ее компонентов.

Особенности функционирования сложной системы:

1) Работа в режиме реального времени, один из наиболее сложных режимов функционирования программного обеспечения, поскольку от реального времени зависят не только моменты выполнения отдельных задач, но и получаемые результаты. При искажении параметра реального времени может нарушиться временная связь, что может привести к полному отказу системы.

2) Настраиваемость ПО.

3) Строгая последовательность решения задач не может быть заранее определена из-за большого количества функциональных задач, решаемых за небольшой промежуток времени, из-за сложности связей внутри системы и возможности обмена информацией с большим количеством внешних абонентов.

4) Надежность функционирования при искажениях информации, сбоях и частичных отказах аппаратуры. Для обеспечения необходимой степени надежности широко применяются различные методы контроля, параллельные решения задач, работа в многопроцессорном режиме и т.д.

Дайте определение жизненному циклу программного обеспечения (ЖЦ ПО). Укажите состав процессов ЖЦ ПО в соответствии с международным стандартом ISO/IEC 12207:1995. Укажите связи между процессами ЖЦ ПО.

Жизненный цикл программных средств или системы - совокупность процессов, работы задач, включающая в себя разработку, эксплуатацию и сопровождение программного средства или системы и охватывающая их жизнь от формулирования концепции до прекращения использования.

Процессы ЖЦПО:

1. Основные – это процессы, которые реализуются под управлением основных сторон, участвующих в жизненном цикле программных средств. Основными сторонами являются: заказчик, поставщик, разработчик, оператор и персонал сопровождения программных продуктов.

2. Вспомогательные процессы – это процессы, являющиеся целенаправленными составными частями других процессов и предназначенные для обеспечения успешной реализации и качества выполнения программного проекта.

3. Организационные процессы – процессы, предназначенные для создания в некоторой организации и совершенствования организационных структур, охватывающих процессы ЖЦ и соответствующий персонал.

Сформулируйте определения модели и стадии ЖЦ ПО. Опишите стадии анализа, формирования требований к программному обеспечению и проектирования.

Модель ЖЦ – это совокупность процессов, работы задач ЖЦ, отражающая их взаимосвязь и последовательность выполнения.

Стадии каскадной модели:

1. Формирование требований;

2. Проектирование;

3. Реализация;

4. Тестирование;

5. Внедрение;

6. Эксплуатация и сопровождение.

Дайте характеристику каскадному подходу к проектированию ПО. Укажите преимущества и недостатки каскадной модели ЖЦ ПО. Приведите схему реального процесса разработки ПО.

Каскадная модель предусматривает последовательное выполнение всех этапов проекта в строго фиксированном порядке. Переход на следующий этап означает полное завершение работ на предыдущем этапе. Требования, определенные на стадии формирования требований, строго документируются в виде технического задания и фиксируются на все время разработки проекта. Каждая стадия завершается выпуском полного комплекта документации, достаточной для того, чтобы разработка могла быть продолжена другой командой разработчиков.

Преимущества:

· Полная и согласованная документация на каждом этапе;

· Легко определить сроки и затраты на проект.

Недостатки:

В каскадной модели переход от одной фазы проекта к другой предполагает полную корректность результата (выхода) предыдущей фазы. Однако неточность какого-либо требования или некорректная его интерпретация в результате приводит к тому, что приходится «откатываться» к ранней фазе проекта и требуемая переработка не просто выбивает проектную команду из графика, но приводит часто к качественному росту затрат и, не исключено, к прекращению проекта в той форме, в которой он изначально задумывался.

Наши рекомендации