- •Ф.Ф. Павлов технология программирования
- •Санкт-Петербург
- •090103 – Организация и технология защиты информации
- •Содержание
- •Раздел 1 Создание программных приложений………………..…..7
- •Тема 1. Технология программирования. Основные понятия........7
- •Тема 3. Объектно-ориентированный подход
- •Тема 4 Объектно-ориентированное проектирование
- •Раздел 3 «Перспективные направления в области создания технологий программирования» содержит 3 темы: технология ActiveX, технологии доступа к базам данных, технологии для работы в Internet.
- •Раздел 1. Создание программных приложений
- •Тема 1. Технология программирования.
- •1.1. Этапы эволюции технологии программирования
- •1.2. Жизненный цикл и этапы разработки программ
- •1.3. Постановка задачи и спецификация программы
- •1.4. Проектирование и реализация программы
- •2.1 Структура программы
- •2.2 Структура функции
- •2.3. Типы данных
- •2.4. Средства управления экраном и клавиатурой
- •2.5 Средства управления файлами
- •Тема 3. Объектно-ориентированный подход
- •3.1. Сущность объектно-ориентированного подхода
- •3.2. Инкапсуляция
- •3.3. Наследование
- •3.4. Полиморфизм
- •Тема 4. Объектно-ориентированное проектирование
- •4.1. Постановка задачи и определение спецификаций
- •4.2. Проектирование структуры программы
- •4.3. Проектирование файлов интерфейсов классов
- •4.4. Проектирование файлов реализации классов
- •Раздел 2. Особенности программирования в Windows
- •5.1. Система окон разработки и система меню
- •5.2. Библиотека классов mfc
- •5.3. Сообщения – реакция на события
- •Тема 6. Создание Windows-приложений
- •6.1. Консольные приложения
- •6.4. Диалоговые приложения
- •Тема 7. Ввод-вывод информации
- •7.1. Управление клавиатурой
- •7.2. Управление курсором
- •7.3. Управление мышью
- •Тема 8. Программирование интерфейса приложений
- •8.1. Система меню
- •8.2. Система диалоговых окон и элементов управления
- •Тема 9. Программирование файловой обработки
- •9.1. Файловая обработка объектов класса mfc
- •9.2. Файловая обработка объектов классов пользователя
- •9.3. Файловая обработка с классом cFile
- •Тема 10. Технология программирования в Widows
- •10.1. Проектирование структуры программы,
- •10.2. Создание классов предметной области
- •10.3. Создание диалоговых окон
- •10.4. Создание диалоговых окон базы справочных
- •10.5. Создание ведомости результатов
- •Раздел III. Прогрессивные технологии
- •Тема 11. Технология ActiveX
- •11.1. Концепция технологии ActiveX
- •11.2. Создание приложения-контейнера
- •11.3. Создание приложения-сервера
- •Тема 12. Поддержка баз данных
- •12.1. Технологии доступа к данным
- •12.2. Создание приложения с базой данных
- •Тема 13. Программирование для Internet
- •13.1. Технологии для работы в Internet
- •13.2. Приложение в стиле браузера
- •13.3. Приложение с протоколом http в WinInet
- •13.4. Приложение с протоколом ftp в WinInet
- •Раздел 1 «Создание программных приложений»:
- •Раздел 2 «Особенности программирования в Windows»:
- •Раздел 3 «Прогрессивные технологии программирования»:
- •Извлечение из рабочей программы дисциплины
- •Утверждаю
- •Рабочая программа
- •Технология программирования
- •Санкт-Петербург
- •4. Содержание разделов и тем дисциплины
- •Раздел 1. Создание программных приложений
- •Тема 1. Технология программирования. Основные
- •Тема 4. Технология объектно-ориентированного
1.2. Жизненный цикл и этапы разработки программ
Жизненный цикл программного обеспечения – это совокупность взаимосвязанных процессов создания программного обеспечения от формирования к нему исходных требований до окончания его эксплуатации.
Описание структуры жизненного цикла программного обеспечения и состав его процессов регламентируется международным стандартом ISO/IEC 12207: 1995 “Information Technologe – Software Life Cycle Processes” («Информационные технологии – Процессы жизненного цикла программного обеспечения»). Согласно стандарту процесс разработки программного обеспечения предусматривает 13 действий от подготовительной работы до приемки программного обеспечения.
Можно выделить следующие укрупненные этапы разработки программного обеспечения с учетом соответствующих стадий разработки по ГОСТ 19.102-77:
постановка задачи (стадия «Техническое задание»);
определение спецификаций (стадия «Эскизный проект»);
проектирование (стадия «Технический проект»);
реализация (стадия «Рабочий проект»).
По стандарту возможно также наличие отдельного этапа сопровождения, заключающегося в сопровождении и модификации программного продукта. Это деление на этапы является условным и может изменяться при необходимости. Например, тестирование и отладка может быть частью этапа реализации (или программирования), а может быть отдельным этапом.
Постановка задачи – это процесс формулировки назначения программного обеспечения и основных требований к нему.
Спецификациями называют полное и точное описание функций и ограничений разрабатываемого программного обеспечения.
Проектирование – это процесс разработки структурной схемы программного обеспечения с проектированием компонентов и их взаимосвязей.
Реализация – это процесс программирования компонентов программного обеспечения на выбранном языке программирования, их тестирования и отладки.
Рассмотрим эволюцию моделей жизненного цикла программного обеспечения.
На протяжении последних 30 лет в программировании сменились 3 модели жизненного цикла программного обеспечения:
каскадная модель;
модель с промежуточным контролем;
спиральная модель.
Каскадная модель предполагает переход на следующий этап после завершений всех операций предыдущего этапа. Достоинства модели заключаются в следующем:
получение после этапа законченного набора проектной документации без возврата на предыдущие этапы;
простота планирования процесса разработки программного обеспечения.
Однако, данная модель приемлема только к созданию систем, для которых точно и полно сформулированы все требования. Такие разработки встречаются редко. Необходимость возвратов на предыдущие этапы обусловлена следующими причинами:
неточные спецификации, уточнение которых требует пересмотра предыдущих решений;
изменения требований заказчика;
моральное устаревание технических и программных средств.
Модель с промежуточным контролем поддерживает итерационный характер процесса разработки, т.е. возврат на предыдущие этапы. Опасность модели состоит в том, что разработка программного обеспечения может затянуться.
Спиральная модель основана на том, что программное обеспечение создается не сразу, а итерационно с использованием метода прототипирования. Прототипом называется программный продукт, реализующий внешние интерфейсы и отдельные функции. Например, на первой итерации создается и поставляется пользователю первая версия программного продукта с реализацией внешних интерфейсов и главных функций, на следующих итерациях – следующие версии программного продукта с реализацией дополнительных функций.
Достоинства спиральной модели заключаются в следующем:
программный продукт может поставляться пользователю с первой версии;
сокращение времени появления первых версий программного продукта;
быстрое продвижение следующих версий продукта на рынке;
ускорение уточнений спецификаций за счет появления практики использования продукта;
уменьшение вероятности морального устаревания системы за время разработки.