Слайд 1
Жизненный цикл программы.
Программный продукт
и его характеристики
Лекция №2
Слайд 2Определение
Жизненный цикл программы — это период времени, который начинается с момента
принятия решения о необходимости создания программного продукта и заканчивается в момент его полного изъятия из эксплуатации.
Слайд 3Этапы жизненного цикла
Жизненный цикл традиционно разделяют на следующие основные этапы:
анализ требований;
определение спецификаций;
проектирование;
кодирование (программирование);
тестирование
и отладка;
эксплуатация и сопровождение.
Слайд 4Анализ
Для создания конкурентоспособных продуктов в ходе выполнения этого этапа должны быть
получены четкие ответы на следующие вопросы:
Что должна делать программа?
Какие проблемы она должна решать?
Что представляют собой входные данные?
Какими должны быть выходные данные?
Какими ресурсами располагает проектировщик?
Слайд 5Определение спецификаций
Требования к программе должны быть представлены в виде ряда спецификаций,
явно определяющих рабочие характеристики будущей программы. В число таких характеристик могут входить скорость выполнения, объем потребляемой памяти, гибкость применения и др.
Слайд 6Проектирование
На этом этапе создается общая структура программы, которая должна удовлетворять спецификациям;
определяются общие принципы управления и взаимодействия между различными компонентами программы.
Сюда же можно отнести графическое представление алгоритма работы программы.
Слайд 7Кодирование (программирование)
Заключается в переводе на язык программирования конструкций, записанных на языке
проектирования.
Слайд 8Тестирование и отладка
На этом этапе производится всесторонняя проверка программ.
Тестирование программ - этап разработки
компьютерной программы, в процессе которого проверяется работоспособность программы, не содержащей явных ошибок.
Отладка программы - этап разработки компьютерной программы, в процессе которого происходят обнаружение, локализация и устранение явных ошибок в программе.
Слайд 9Тестирование программы
ПО обычно проверяется по 3 показателям:
правильность - проверка соответствия функциональности
ПО решаемым задачам;
эффективность реализации – это поиск способов повышения эффективности работы программы (быстрая работа, уменьшение затрат ресурсов ПК);
вычислительную сложность – это экспериментальный анализ сложности алгоритма или экспериментальное сравнение нескольких алгоритмов, решающих одну и ту же задачу.
Слайд 10Сопровождение
Это этап эксплуатации программы.
В процессе эксплуатации устраняются обнаруженные ошибки и
обнаруживаются неудачные проектные решения.
Кроме того сопровождение может включать в себя проведение консультаций, обучение пользователей программы, информирование пользователей о новых версиях системы и т.п. Этапа сопровождения в большой степени определяет коммерческий успех программного продукта.
Слайд 11Модели жизненного цикла
Каскадная модель – это модель основной характеристикой которой является
возможность перехода с одного этапа на следующий только после полного завершена работы на текущем этапе.
Слайд 12Модели жизненного цикла
Инкрементная модель – это поэтапная модель с промежуточным контролем.
Слайд 13Модели жизненного цикла
Спиральная модель – это модель в которой на каждом
витке спирали выполняется создание очередной версии продукта, уточняются требования проекта, определяется его качество и планируются работы следующего витка.
Слайд 14Программа
Программа – это последовательность инструкций, предназначенная для исполнения вычислительной машиной.
Все программы
по характеру использования и категориям пользователей можно разделить на 2 класса:
утилитарные программы;
программные продукты (изделия).
Слайд 15Программа
Утилитарные программы – это программы, предназначенные для удовлетворения нужд их разработчиков.
Обычно такие программы решают задачи, не предназначенные для широкого распространения.
Программный продукт– это комплекс взаимосвязанных программ, предназначенный для поставки, передачи, продажи пользователю.
Слайд 16Характеристики программного продукта
эффективность - соответствие требованиям пользователя при минимальных требованиях к
ресурсам;
надежность - отсутствие отказов, обеспечение работоспособности продукта;
удобство использования - наличие дружественного интерфейса, системы помощи, обучающей системы, хорошей документации;
мобильность - независимость от ОС и аппаратный средств;
коммуникативность - возможность интеграции с другими программными продуктами;
стоимость.
Слайд 17Основные этапы решения задач на компьютере
Постановка задачи;
Анализ и исследование
задачи, модели;
Разработка алгоритма;
Программирование;
Тестирование и отладка.
Слайд 18Постановка задачи
• сбор информации о задаче;
• формулировка условия задачи;
• определение конечных
целей решения задачи;
• определение формы выдачи результатов;
• описание данных (их типов, диапазонов величин, структуры и т. п.).
Слайд 19Анализ и исследование задачи, модели
• анализ существующих аналогов;
• анализ технических и
программных средств;
• разработка математической модели;
• разработка структур данных.
Слайд 20Разработка алгоритма
• выбор метода проектирования алгоритма;
• выбор формы записи алгоритма (блок-схемы,
псевдокод и др.);
• выбор тестов и метода тестирования;
• проектирование алгоритма.
Слайд 21Программирование
• выбор языка программирования;
• уточнение способов организации данных;
• запись алгоритма на
выбранном языке
Программирования.
Слайд 22Тестирование
• синтаксическая отладка;
• отладка семантики и логической структуры;
• тестовые расчеты и
анализ результатов тестирования;
• совершенствование программы.
Слайд 23Алгоритм
Алгоритм — это точное описание порядка действий, которые должен выполнить исполнитель
для решения задачи за конечное время.
В программировании в качестве исполнителя алгоритма выступает компьютер. Он работает с различными информационными объектами: числами, символами, кодами и др., поэтому алгоритмы, предназначенные для управления компьютером, называются алгоритмами работы с величинами.
Слайд 25Формы записи алгоритма
Словесная - запись на естественном языке.
Пример:
установить соединение
пока не принята
команда «стоп»
принять команду
выполнить команду
завершить сеанс связи
Слайд 26Графическая - изображения из графических символов.
Формы записи алгоритма
Слайд 27Псевдокоды - это описания алгоритмов на условном алгоритмическом языке: элементы языка
программирования, общепринятые математические обозначения, фразы естественного языка и др.
Пример:
Формы записи алгоритма
алг ЗДРАВСТВУЙМИР
нач
вывод ('Здравствуй, Мир!')
кон алг ЗДРАВСТВУЙ МИР
Слайд 28Программная - тексты на языках программирования.
Формы записи алгоритма
Слайд 29Домашнее задание
Проведите сравнительный анализ моделей жизненного цикла ПО. Результат оформить в
виде таблицы:
Для заполнения таблицы использовать информацию ресурсов сети Интернет.
Домашнее задание выполняется к следующей паре!