Содержание

Слайд 2

Основы разработки программного обеспечения

Задачами дисциплины является изучение:
методов разработки программного обеспечения;
способов создания функциональных

Основы разработки программного обеспечения Задачами дисциплины является изучение: методов разработки программного обеспечения;
спецификаций;
методов проектирования программных комплексов;
создания абстрактных типов данных;
доказательства правильности программ;
организации тестов;
сопровождения программных комплексов.

Слайд 3

Определение

Технология разработки программного обеспечения – это система инженерных принципов для создания экономичного

Определение Технология разработки программного обеспечения – это система инженерных принципов для создания
ПО с заданными характеристиками качества.

Слайд 4

Что такое программа?

Программа = задача + модель + алгоритм + структура данных
Определение

Что такое программа? Программа = задача + модель + алгоритм + структура
1: Программа – это записанное на понятном некоторому вычислителю языке решение стоящей перед нами задачи.
Определение 2: Компьютерная программа - набор определенных команд, выполняющихся по заданному алгоритму.
Определение 3: Программа - данные, предназначенные для управления конкретными компонентами системы обработки информации в целях реализации определённого алгоритма. (ГОСТ 19781—90. ЕСПД. Термины и определения)
Определение 4: Программное обеспечение - совокупность программ системы обработки информации и программных документов, необходимых для их эксплуатации. (ГОСТ 19781—90. ЕСПД. Термины и определения)

Слайд 5

Свойства ПО

Необходимость документирования.
Эффективность.
Надежность. В том числе:
- Тестирование программы при всех допустимых

Свойства ПО Необходимость документирования. Эффективность. Надежность. В том числе: - Тестирование программы
спецификациях входных данных
- Защита от неправильных действий пользователя
- Защита от взлома - пользователи должны иметь возможность взаимодействия с ПО только через легальные интерфейсы.
Возможность сопровождения.

Слайд 6

Этапы жизненного цикла ПО

анализ требований, предъявляемых к системе;
определение спецификаций;
проектирование;

Этапы жизненного цикла ПО анализ требований, предъявляемых к системе; определение спецификаций; проектирование;

кодирование;
тестирование:
а) автономное;
б) комплексное;
эксплуатация и сопровождение.

Слайд 7

Распределение затрат по этапам разработки

Распределение затрат по этапам разработки

Слайд 8

Анализ требований, предъявляемых к системе

На этом этапе формулируется целевое назначение и основные

Анализ требований, предъявляемых к системе На этом этапе формулируется целевое назначение и
свойства разрабатываемой программной системы.
Базовые требования для программных систем:
Время обработки (работы) программы;
Стоимость обработки;
Вероятность ошибки;
Реакция на непредсказуемые действия оператора (защита от дурака) и др.

Слайд 9

Определение спецификаций

На этапе определения спецификаций:
осуществляется точное описание функций, реализуемых ЭВМ;
задается структура входных

Определение спецификаций На этапе определения спецификаций: осуществляется точное описание функций, реализуемых ЭВМ;
и выходных данных, методы и средства их размещения;
определяются алгоритмы обработки данных.

Слайд 10

Проектирование

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

Проектирование На стадии проектирования разрабатываются алгоритмы, задаваемые спецификациями, и формируется общая структура
системы.
При этом система разбивается на составные части.
Для каждого определенного таким образом модуля системы должны быть сформированы предъявляемые к нему требования.

Слайд 11

Схема проектирования программных систем

Схема проектирования программных систем

Слайд 12

Кодирование

Данный этап является наиболее простым, а его реализация существенно облегчается при использовании

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

Слайд 13

Тестирование

Стадии тестирования:
Автономное (модуль проверяется с помощью подготовленных программистом данных).
Комплексное (совместная проверка групп

Тестирование Стадии тестирования: Автономное (модуль проверяется с помощью подготовленных программистом данных). Комплексное
программных компонент).
Системное (проверка системы в целом с помощью независимых тестов).

Слайд 14

Критерии правильности выполнения программы

Каждый оператор должен быть выполнен, по крайней мере, один

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

Слайд 15

Аттестация, испытание и верификация

Аттестация – общий процесс создания правильных программ с помощью

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

Слайд 16

Отклонения от нормальной работы системы

Сбой системы – это явление, связанное с нарушением

Отклонения от нормальной работы системы Сбой системы – это явление, связанное с
системой установленных на нее спецификаций.
Выброс – данные, при обработке которых правильными алгоритмами системы происходит сбой.
Ошибка – это алгоритмический дефект, который создает выброс (программная ошибка).

Слайд 17

Правильность и надёжность

Правильная программа – это та, что удовлетворяет своим спецификациям.
Надежная программа

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

Слайд 18

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

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

Слайд 19

Причины изменения системы в процессе эксплуатации

Заказчик обычно не может четко сформулировать свои

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