- •Теоретические вопросы к экзамену к экзамену по курсу «Программирование и алгоритмизация»
- •А)Основные типы переменных в с. Б)Правила определения переменных и типов. В)Инициализация данных.
- •A)Время жизни и область видимости программных объектов.Б) Инициализация глобальных и локальных переменных
- •Операторы языка Си. Оператор выражение, составной оператор, операторы условного перехода
- •Оператор цикла for
- •Операторы цикла while и do … while
- •Указатели. Типизированные и нетипизированные.
- •Работа с файлами. Файловая переменная, открытие, закрытие файла.
- •Чтение и запись в файлы. Функция eof()
- •Определение и вызов функций. Фактические и формальные параметры.
- •Определение и вызов функций. Передача массивов и указателей на функции.
- •Бинарный поиск в упорядоченном массиве.
- •Сортировка массива на примере одного из алгоритмов.
- •Связанные списки: описание структуры, добавление и удаление элементов в односвязный линейный список.
- •Вставка узла
- •Удаление узла
- •Виды линейных списков: стек, очередь, дек.
- •Сущность методологии объектно-ориентированного программирования. Инкапсуляция. Наследование. Полиморфизм.
- •Дружественные функции класса.
- •Определение конструктора. Форматы вызова конструктора. Перегрузка конструкторов.
- •Наследование. Определение базового и производного классов.
- •Полиморфизм. Виртуальные функции.
- •Динамическое распределение памяти под объекты. Операторы new и delete. Динамическое выделение памяти
- •Функции operator new() и operator delete()
- •Шаблоны классов. Шаблоны классов
- •Использование шаблонов
- •Шаблоны функций.
- •Жизненный цикл программного продукта.
- •Основные процессы жизненного цикла.
- •Разновидности процесса разработки по.
- •Стадии разработки по
- •Действия при разработке тз
Жизненный цикл программного продукта.
Жизненный цикл программного обеспечения (ПО) — период времени, который начинается с момента принятия решения о необходимости создания программного продукта и заканчивается в момент его полного изъятия из эксплуатации[1]. Этот цикл — процесс построения и развития ПО.
Основные процессы жизненного цикла.
Разновидности процесса разработки по.
Водопадная модель была предложена в 1970 году Винстоном Ройсом.
достоинством этой модели явилось ограничение возможности возвратов на произвольный шаг назад, например, от тестирования – к анализу, от разработки – к работе над требованиями и т.д. Отмечалось, что такие возвраты могут катастрофически увеличить стоимость проекта и сроки его выполнения. Например, если при тестировании обнаруживаются ошибки проектирования или анализа, то их исправление часто приводит к полной переделке системы. Этой моделью допускались возвраты только на предыдущий шаг, например, от тестирования к кодированию, от кодирования к проектированию и т.д.
Спиральная модель была предложена Бэри Боемом в 1988 году для преодоления недостатков водопадной модели, прежде всего, для лучшего управления рисками. Согласно этой модели разработка продукта осуществляется по спирали, каждый виток которой является определенной фазой разработки. В отличие от водопадной модели в спиральной нет предопределенного и обязательного набора витков, каждый виток может стать последним при разработке системы, при его завершении составляются планы следующего витка. Наконец, виток является именно фазой, а не видом деятельности, как в водопадной модели, в его рамках может осуществляться много различных видов деятельности, то есть модель является двумерной.
Каждый виток имеет следующую структуру (секторы):
определение целей, ограничений и альтернатив проекта;
оценка альтернатив, оценка и разрешение рисков; возможно использование прототипирования (в том числе создание серии прототипов), симуляция системы, визуальное моделирование и анализ спецификаций; фокусировка на самых рисковых частях проекта;
разработка и тестирование – здесь возможна водопадная модель или использование иных моделей и методов разработки ПО;
планирование следующих итераций – анализируются результаты, планы и ресурсы на последующую разработку, принимается (или не принимается) решение о новом витке; анализируется, имеет ли смысл продолжать разрабатывать систему или нет; разработку можно и приостановить, например, из-за сбоев в финансировании; спиральная модель позволяет сделать это корректно.