Файл: Основы проектирования программ. Этапы создания программного обеспечения (Проектирование программного обеспечения).pdf
Добавлен: 04.04.2023
Просмотров: 3075
Скачиваний: 3
СОДЕРЖАНИЕ
ГЛАВА 1. ТЕОРЕТИЧЕСКИЕ АСПЕКТЫ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
1.1. Проектирование программного обеспечения
1.2 Надежность и качество программных средств
ГЛАВА 2. этапа ПРАКТИЧЕСКАЯ ЗНАЧИМОСТЬ же РАЗРАБОТКИ ПРОГРАММНОГО проекта ОБЕСПЕЧЕНИЯ
2.1. Этапы выбранного решения задач записан на ЭВМ
V. средства Ввод программы в таком память компьютера. доступа Пробный запуск
ликвидировать На больших tp вычислительных центрах, возможно при решении активизируя достаточно больших и Для сложных задач каждый вводом программ ведет занимаются люди реализуются специальной профессии – напрямую операторы ЭВМ. пользователь Кроме ввода вызываемых программ операторы должен выполняют подготовку шагов данных – ввод конечных данных в память, любой запись их вариантов на внешние постоянно носители. Программист, происходящих работающий на системных ПК, вводит функциональному программу и данные предусмотренных сам.
После самом того как речь программа введена, нельзя следует ее этапам пробный запуск. В критерии случаях, которые информационных следует считать хода исключительными, программа проверяется исполняется сразу и ведется выдает некоторый пользователями результат. Гораздо дизайну чаще приходится сложных отыскивать причины, ПК по которым операнда программа не обслуживаемость работает или на работает не работ так, и исправлять указанных их – отлаживать тот программу.
VI. скорости Отладка и тестирование об программы
Процесс результатов поиска и исправления Приоритет ошибок в программе сам называется отладкой. первым Ошибки могут универсальное возникнуть при Разбросы наборе, в результате Все нарушения правил длина записи программ предположения на языке начальным программирования – так следствием называемые синтаксические представлены ошибки. Обнаружить и объектов исправить их проявятся помогают специальные задача инструментальные программы (программы их синтаксического контроля), согласно входящие в состав следующим системы программирования. ошибки Система анализирует Постановка программу и выдает свойство сообщение о месте и подкрепив характере ошибки. попадают Часто ошибки требование связаны с тем, рацион что некоторая строгого синтаксически правильная точках конструкция не Алгоритм может быть Требования выполнена (например, деление расширением на нуль построенной или попытка что присвоить величине свою целого типа учитывается вещественное значение). В воспроизводимости этом случае причиной также появляется ГЛАВА сообщение о причине специальные отказа и указывается, неисправности какая именно ходе команда не неисправности может быть родительское выполнена.
Гораздо Программист сложнее отыскать умственного ошибки, допущенные блок при составлении является алгоритма, которые, в элементов конечном итоге, самым приводят к неправильной записей работе программы: достижению отсутствие результата, работе зацикливание, неверный интервале результат. В этом ущемите случае полезен разработка бывает пошаговый Windows контроль выполнения переменных программы.
Важным критериям этапом процесса формулировка отладки является некоторая тестирование программы, т.е. будут испытание ее образуют путем введения их теста – определенного показателями набора исходных Разбросы данных, для тенденций которого результат совместимости работы отдельных ошибки блоков или Симоновича программы в целом дать известен заранее.
предусматривает Часто в рамках Логические разработки информационной их модели накладываются сопряжений ограничения на прерываний исходные данные. В аналитика этом случае применяемого программа должна имеет реагировать на количество ввод неверных неправильными значений: останавливать Представление работу или предназначенные запрашивать повторный Просвещение ввод. Как указание правило, в программе объектах предусматривается защита вводит от ввода дискретным неверных данных следующий или от Эти других непредусмотренных короткое действий пользователя. GUI Тогда в процессе связи тестирования проверяется кодах качество такой Шамсутдинова защиты.
Умение которые удачно подобрать числа такой тест, информатики при котором осуществляются ошибка (если она поведение есть) наиболее Стратонович вероятна, и предусмотреть Задача разнообразные варианты начиная хода вычислительного следствием процесса, а также Саймон действия пользователя (порой рассчитать весьма непредсказуемые), и, подпрограммами следовательно, защитить возникнуть работу программы информационной от всяких методы неожиданностей – большое является искусство программиста.
формальным Простейший пример построенная теста: если определяется программа содержит быть ветвление, т.е. требуется пользователя выбор способа такую действий в зависимости метод от выполнения лишь условия, надо планируются проверять ее расчет работу с теми случаях исходными данными, помощью при которых оперативно условие выполняется, и с происходит теми, при увеличения которых оно случиться не выполняется.
появлением До последнего частотой времени IV, V и состоит VI этапы универсальное были необходимыми концепции этапами решения забывают задачи с помощью программе ЭВМ. При неверную этом языки и использовалась системы программирования алгоритм были теми другими программными инструментами, с Информационные помощью которых реально создавались новые родительское программы для Программирование решения задач следствием пользователя. Однако с любой расширением круга остается задач, для Какая решения которых характеристиками используется компьютер, чем растет число влияния людей, которые, практических не будучи расширением профессиональными программистами, имеется применяют компьютер в гг своей работе.
В Учебное связи с этим явится созданы разнообразные числа программные средства, применения которые являются виток основой информационных существенными технологий, применяемых При для решения выполнения разнообразных практических Программист задач, таких, этой как обработка Word текстов и электронных программистами таблиц, создание наибольшее графических изображений, основу доступ к информации, упрощать хранящейся в базе операнда данных, решение прекращение математической задачи, алгоритмом расчет технической исследования конструкции и многое пример другое. Для расширение их решения в языкам распоряжении пользователя процессор ЭВМ имеется режиме обширное программное Отладка обеспечение.
В процессе записан построения информационной готовым модели задачи безотказности пользователь определяет, языками какие действия CLI ему потребуется правилам выполнить для кратковременное достижения результата, и в свершенными соответствии с этим управлением решает, каким произведены программным средством полученных воспользоваться. Если в Издательский его распоряжении указывается имеется программа, набора подходящая для возможные решения данной представляя задачи, то необходимые пользователь выбирает точность ее в качестве полезен инструмента (СУБД, табличный защиты процессор, математический причиной пакет и др.). подсистемных Если же степенью готовым прикладным предыдущем программным средством разнообразный воспользоваться нельзя, работ придется использовать уровня технологию программирования[9].
начальной VII. Получение и родительское анализ результатов
схем Какая бы интерпретацией технология решения набора задач на Питер компьютере ни шага использовалась, необходимым преобразование этапом будет содержанию получение и анализ результата: проверяется соответствие полученных результатов ожидаемому в рамках построенной информационной модели задачи, а также оценивается, насколько полученный результат соотносится с реальной практикой.
На этом этапе выявляется, насколько построенная информационная модель соответствует реальности. Дело в том, что чем больше свойств объектов и явлений признано существенными и учтено, тем в большей степени модель отражает действительность. Однако учет большого числа характеристик ведет к усложнению модели, затруднениям в математическом выражении связей между характеристиками. Обычно стараются найти баланс между полнотой соответствия информационной модели реальному состоянию дел и ее сложностью в процессе уточнения модели (постепенного увеличения числа учитываемых существенных свойств).
Все эти этапы разработки и сопровождения программного продукта, включая завершение поддержки эксплуатации, составляют жизненный цикл программы[10].
2.2. Жизненный цикл программного обеспечения
Методология проектирования информационных систем описывает процесс создания и сопровождения систем в виде жизненного цикла (ЖЦ) ИС, представляя его как некоторую последовательность стадий и выполняемых на них процессов. Для каждого этапа определяются состав и последовательность выполняемых работ, получаемые результаты, методы и средства, необходимые для выполнения работ, роли и ответственность участников и т.д. Такое формальное описание ЖЦ ИС позволяет спланировать и организовать процесс коллективной разработки и обеспечить управление этим процессом.
Жизненный цикл ИС можно представить как ряд событий, происходящих с системой в процессе ее создания и использования.
Модель жизненного цикла отражает различные состояния системы, начиная с момента возникновения необходимости в данной ИС и заканчивая моментом ее полного выхода из употребления. Модель жизненного цикла - структура, содержащая процессы, действия и задачи, которые осуществляются в ходе разработки, функционирования и сопровождения программного продукта в течение всей жизни системы, от определения требований до завершения ее использования.
В настоящее время известны и используются следующие модели жизненного цикла:
- Каскадная модель (рис. 2.1) предусматривает последовательное выполнение всех этапов проекта в строго фиксированном порядке. Переход на следующий этап означает полное завершение работ на предыдущем этапе.
- Поэтапная модель с промежуточным контролем (рис. 2.2). Разработка ИС ведется итерациями с циклами обратной связи между этапами. Межэтапные корректировки позволяют учитывать реально существующее взаимовлияние результатов разработки на различных этапах; время жизни каждого из этапов растягивается на весь период разработки.
- Спиральная модель (рис. 2.3). На каждом витке спирали выполняется создание очередной версии продукта, уточняются требования проекта, определяется его качество и планируются работы следующего витка.Особое внимание уделяется начальным этапам разработки - анализу и проектированию, где реализуемость тех или иных технических решений проверяется и обосновывается посредством создания прототипов (макетирования)[11].
Рис. 2.1 Каскадная модель ЖЦ ИС
Рис. 2.2 Поэтапная модель с промежуточным контролем
Рис. 2.3 Спиральная модель ЖЦ ИС
На практике наибольшее распространение получили две основные модели жизненного цикла:
- каскадная модель (характерна для периода 1970-1985 гг.);
- спиральная модель (характерна для периода после 1986.г.).
В ранних проектах достаточно простых ИС каждое приложение представляло собой единый, функционально и информационно независимый блок. Для разработки такого типа приложений эффективным оказался каскадный способ. Каждый этап завершался после полного выполнения и документального оформления всех предусмотренных работ.
Можно выделить следующие положительные стороны применения каскадного подхода:
- на каждом этапе формируется законченный набор проектной документации, отвечающий критериям полноты и согласованности;
- выполняемые в логической последовательности этапы работ позволяют планировать сроки завершения всех работ и соответствующие затраты[12].
Каскадный подход хорошо зарекомендовал себя при построении относительно простых ИС, когда в самом начале разработки можно достаточно точно и полно сформулировать все требования к системе. Основным недостатком этого подхода является то, что реальный процесс создания системы никогда полностью не укладывается в такую жесткую схему, постоянно возникает потребность в возврате к предыдущим этапам и уточнении или пересмотре ранее принятых решений. В результате реальный процесс создания ИС оказывается соответствующим поэтапной модели с промежуточным контролем.
Однако и эта схема не позволяет оперативно учитывать возникающие изменения и уточнения требований к системе. Согласование результатов разработки с пользователями производится только в точках, планируемых после завершения каждого этапа работ, а общие требования к ИС зафиксированы в виде технического задания на все время ее создания. Таким образом, пользователи зачастую получают систему, не удовлетворяющую их реальным потребностям.
Спиральная модель ЖЦ была предложена для преодоления перечисленных проблем. На этапах анализа и проектирования реализуемость технических решений и степень удовлетворения потребностей заказчика проверяется путем создания прототипов. Каждый виток спирали соответствует созданию работоспособного фрагмента или версии системы. Это позволяет уточнить требования, цели и характеристики проекта, определить качество разработки, спланировать работы следующего витка спирали. Таким образом углубляются и последовательно конкретизируются детали проекта и в результате выбирается обоснованный вариант, который удовлетворяет действительным требованиям заказчика и доводится до реализации.