ЭТАПЫ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ И ЯЗЫКИ ПРОГРАММИРОВАНИЯ
Программное обеспечение (пакет программ) – большая группа взаимосвязанных и взаимодействующих программ, предназначенных для решения любой задачи из конкретной области (например, для моделирования технологических процессов, для выполнения графических работ). Программы какого-либо пакета рассчитаны на совместное использование в различных комбинациях друг с другом.
Этапы разработки ПО можно представить в следующем виде:
На первом этапе первичным документом является постановка задачи, объединяющая:
• общую характеристику задачи (назначение, экономическая эффективность, структура объектов);
• описание входных данных (структура и способ поступления);
• описание выходных данных;
• существующие к данному моменту алгоритмы получения выходных данных на основе входных;
• источники разработки (откуда появилась вся информация).
Результатом первого этапа является техническое задание, в котором, как правило, содержатся название системы, цели создания, характеристика области применения, требования к системе в целом (интерфейс, особые требования к отдельным модулям, безопасность, и т.д.), информационная база (структура базы данных, с которой будет взаимодействовать программная система), программное обеспечение (обоснование выбора языка программирования), техническое обеспечение, описание данных для тестирования.
На основании технического задания формируются спецификации – описание количества и режимов работы модулей, их взаимодействия.
На этапе проектирования разрабатываются алгоритмы, задаваемые спецификациями, и формируется общая структура будущей программы путем детальной проработки последовательности ее действий.
Для разработки алгоритмов сложных программ используется метод пошаговой детализации, при котором процесс преобразования исходных данных в результат вначале представляется в виде последовательности небольшого числа простых этапов (задач). На следующем шаге задачи разбиваются на последовательность подзадач следующего уровня и т.д. Детализация заканчивается, когда каждый отдельный этап может быть записан на выбранном языке программирования, или представляет собой известную задачу, для которой уже имеется готовая программа. Формальное описание алгоритмов осуществляется, например, с использованием языка схем или псевдокода.
Кодирование представляет собой реализацию разработанных алгоритмов, составление по ним текстов программы с использованием конкретного языка программирования. Включает процесс трансляции – перевода программы в последовательность машинных команд (машинный код).
При автономном тестировании каждый модуль проверяется отдельно. При этом программная среда модуля имитируется с помощью программы управления тестированием, содержащей фиктивные программы вместо реальных подпрограмм, к которым имеется обращение из данного модуля.
При комплексном тестировании производится совместная проверка групп программных компонентов.
В процессе тестирования происходит оптимизация системы (разгрузка участков повторяемости – циклов, замена сложных операций на более простые, экономия памяти и т.д.).
Большая часть расходов, затрачиваемых в течение жизненного цикла системы, приходится на эксплуатацию и сопровождение.
Причины выпуска новых версий (модификаций) ПО:
• необходимость исправления ошибок, выявленных в процессе эксплуатации;
• необходимость совершенствования, например, улучшения интерфейса или расширения состава, выполняемых функций;
• изменение среды (появление новых технических средств и/или программных продуктов).