Учебное пособие. — М.: Форум, Инфра-М, 2008. — 400 с.: ил. — ISBN 978-5-8199-0342-1; ISBN 978-5-16-003193-4.
Рассматриваются основные понятия и определения, классификация ПО, этапы создания программного продукта в рамках жизненного цикла, освещается современное состояние технологий разработки программных продуктов. Изложены существующие подходы к оценке качества процессов создания ПО, произведен анализ требований и определение спецификаций ПО. Большое внимание уделено вопросам проектирования ПО, его надежности, коллективной разработки с помощью современных систем контроля версий.
Теоретический материал сопровождается практикумом в виде лабораторных работ по изложенной тематике.
Предназначено для студентов и преподавателей высших учебных заведений технического профиля, а также для специалистов любой предметной области, проявивших интерес к современному состоянию методов и средств программирования.
Введение.
Программное обеспечениеТехнология программирования в историческом аспекте.
Основные понятия и определения.
Классификация программного обеспечения.
Технология разработки программных продуктов. Основные определения и подходыОсобенности создания программного продукта.
Оценка качества процессов создания программного обеспечения.
Жизненный цикл программы.
Анализ требований и определение спецификаций программного обеспеченияОпределение требований к программным продуктам.
Выбор архитектуры программного обеспечения.
Структура и формат данных. Статические, полустатические и динамические структуры.
Модульное программирование.
Анализ требований и определение спецификаций при структурном подходе.
Анализ требований и определение спецификаций при объектном подходе.
Проектирование программного обеспеченияПроектирование программного обеспечения при структурном подходе.
Проектирование программного обеспечения при объектном подходе.
Экстремальное программирование.
Тестирование и отладка программТермины и определения.
Тестирование «белого ящика» и «черного ящика».
Порядок разработки тестов.
Автоматизация тестирования.
Модульное тестирование.
Интеграционное тестирование.
Системное тестирование.
Эффективность и оптимизация программ.
Стиль программирования.
Надежность программного обеспечения.
Отладка программ
Сопровождение программВиды программных документов.
Пояснительная записка.
Руководство пользователя.
Руководство системного программиста.
Разработка программного обеспеченияИнструментальные средства разработки программ.
Технологии программирования.
Защита программных продуктов.
Коллективная разработка программного обеспеченияПакеты прикладных программ.
Экономические аспекты разработки и использования программных продуктовОценка стоимости разработки программного обеспечения.
Методы оценки эффективности ПО на этапе эксплуатации.
Лабораторный практикумЭтапы разработки программного обеспечения при структурном подходе к программированию. Стадия «Техническое задание».
Структурный подход к программированию. Стадия «Эскизный проект».
Структурный подход к программированию. Стадия «Технический проект».
Этапы разработки программного обеспечения. Стадия «Реализация».
Тестирование программ методами «белого ящика».
Использование технологий OLE, СОМ и ActiveX.
Создание сетевых приложений на Delphi с использованием Windows Sockets API.
Проектирование программной системы при объектном подходе к программированию.
Динамические структуры данных.
Объектно-ориентированное программирование (ООП).
ПриложенияВарианты заданий.
Пример разработки технического задания на программный продукт.
Пример технического задания на разработку.
Пример эскизного проекта.
Листинги программ к лабораторной работе.
Литература
Предметный указатель