Файл: Основы проектирования программ. Этапы создания программного обеспечения (Этапы создания программного обеспечения).pdf
Добавлен: 27.06.2023
Просмотров: 96
Скачиваний: 3
Введение
Актуальность изучения данной темы заключается в том, что проектирование программ является сложным и многокритериальным процессом. От четкого соблюдения этапов создания программного обеспечения на прямую зависит конечный результат разработки.
Проектирование программного обеспечения представляет собой процесс создания проекта программного обеспечения, а также дисциплина, изучающая методы проектирования. Проектирование программного обеспечения является частным случаем проектирования продуктов и процессов.
Целью проектирования является определение внутренних свойств системы и детализации её внешних (видимых) свойств на основе выданных заказчиком требований к программному обеспечению (исходные условия задачи). Эти требования подвергаются анализу.
Первоначально программа рассматривается как чёрный ящик. Ход процесса проектирования и его результаты зависят не только от состава требований, но и выбранной модели процесса, опыта проектировщика.
Модель предметной области накладывает ограничения на бизнес-логику и структуры данных.
Технология разработки программного средства регламентируется ГОСТ 19.102-77 «Единая система программной документации. Стадии разработки» имеет следующие стации: техническое задание; эскизный проект; технический проект; рабочий проект; внедрение.
Целью данной работы является изучение основы проектирование программ и этапов создания программного обеспечения.
В соответствии с целью была определена необходимость постановки и решения следующих задач:
– изучение основных этапов создания программного обеспечения;
– выполнить разработку модели работы обучающего программного обеспечения;
– разработать программное обеспечение.
1. Этапы создания программного обеспечения
Вначале создания программного продукта, нужно ознакомиться с этапами его разработки. Для этого необходимо обратиться к ГОСТ 19.102-77 Единая система программной документации. Стадии разработки. Настоящий стандарт устанавливает стадии разработки программ и программной документации для вычислительных машин, комплексов и систем независимо от их назначения и области применения. Стадии разработки:
– техническое задание (этапы работ данной стадии: обоснование необходимости разработки программы, научно-исследовательские работы, разработка и утверждение технического задания);
– эскизный проект (этапы работ данной стадии: разработка эскизного проекта, утверждение эскизного проекта);
– технический проект (этапы работ данной стадии: разработка технического проекта, утверждение технического проекта);
– рабочий проект (этапы работ данной стадии: разработка программы, разработка программной документации, испытания программы);
– внедрение (этапы работ данной стадии: подготовка и передача программы) [3].
Допускается исключать вторую стадию разработки (Эскизный проект), а в технически обоснованных случаях - вторую и третью (Технический проект) стадии. Необходимость проведения этих стадий указывается в техническом задании. Допускается объединить, исключать этапы работ и (или) их содержание, а также вводить другие этапы работ по согласованию с заказчиком.
Условность выделения этапов связана с тем, что на любом этапе возможны варианты, которые потребуют пересмотра ранее принятых решений.
Исходя из текста ГОСТ 19.102-77 выделим основные этапы разработки программного обеспечения: постановка задачи; анализ требований и разработка спецификаций; проектирование; реализация; сопровождение.
1.1. Постановка задачи
Во время постановки задачи необходимо четко сформулировать назначение разрабатываемой программы и определение списка основных требований к ней. Каждое требование – описание необходимого заказчику свойства программы. Различают функциональные требования, определяющие функции, которые будут выполняться разрабатываемым продуктом, и специальные эксплуатационные требования, которые определяют особенности его работы.
Процесс создания нового программного продукта обязательно необходимо начинать с выполнения постановки задачи, в ходе которой необходимо определить требования к нему. Это один из наиболее важных этапов в процессе создания программного продукта, так как от того, насколько полно, точно и ясно определены требования к разрабатываемому продукту, его функции и предполагаемые возможности, во многом зависит качество разработки [7].
В процессе таких исследований определяется разрешимость задачи, разрабатываются методы ее решения, если это необходимо, и устанавливаются наиболее существенные характеристики разрабатываемого программного обеспечения. Для проведения этих предпроектных исследований, как правило, заключается договор на выполнение научно-исследовательских работ. В любом случае этап постановки задачи заканчивается принятием основных проектных решений и разработкой технического задания, фиксирующего принципиальные требования к разрабатываемому продукту.
1.2. Анализ требований и определение спецификаций
Спецификацией называется точное формализованное описание функций и ограничений разрабатываемого программного обеспечения. Соответственно различают функциональные и эксплуатационные спецификации. Совокупность спецификаций представляет собой общую логическую модель проектируемого программного обеспечения.
Для получения спецификаций необходимо выполнить анализ требований технического задания к программному обеспечению, формулируют содержательную постановку задачи, выбирают математический аппарат формализации, строят модель предметной области, определяют подзадачи и выбирают или разрабатывают методы их решения. Часть спецификаций может быть определена в процессе предпроектных исследований и соответственно зафиксирована в техническом задании [9].
На этапе анализа требований и определения спецификаций необходимо сформировать тесты для поиска ошибок в проектируемом программном обеспечении, указав ожидаемые результаты.
1.3. Проектирование
Основной задачей этапа проектирования является определение подробных спецификаций разрабатываемого программного обеспечения. Процесс проектирования программного обеспечения включает следующие этапы: проектирование общей структуры - определение основных компонентов и их взаимосвязей; декомпозицию компонентов и построение структурных иерархий в соответствии с рекомендациями блочно-иерархического подхода; проектирование компонентов.
Результатом этапа проектирования является детальная модель разрабатываемого программного обеспечения вместе со спецификациями его компонентов всех уровней. Тип модели зависит от выбранного подхода и конкретной технологии проектирования. Однако в любом случае процесс проектирования охватывает как проектирование программ и определение взаимосвязей между ними, так и проектирование данных, с которыми взаимодействуют эти программы или подпрограммы [10; 14].
Принято различать также два аспекта проектирования: логическое проектирование; физическое проектирование.
1.4. Реализация
Этап реализация представляет собой процесс поэтапного написания кодов программы на выбранном языке программирования, их тестирование и отладку.
1.5. Сопровождение
Сопровождение представляет собой процесс создания и внедрения новых версий программного продукта. Причинами выпуска новых версий могут служить: необходимость исправления ошибок, выявленных в процессе эксплуатации предыдущих версий; необходимость совершенствования предыдущих версий, например улучшения интерфейса, расширения состава выполняемых функций или повышения его производительности; изменение среды функционирования, например появление новых технических средств и/или программных продуктов, с которыми взаимодействует сопровождаемое программное обеспечение [15].
На этапе сопровождения в программный продукт вносятся необходимые изменения, которые могут потребовать пересмотра проектных решений, принятых на любом предыдущем этапе.
С изменением модели жизненного цикла программного обеспечения роль этапа сопровождения существенно возросла, так как продукты теперь создаются итерационно, т. е. сначала выпускается сравнительно простая версия, после чего следуют усовершенствования и выходит очередная версия программного продукта с большими возможностями; количество версий продукта не может быть ограничено. Именно это и повлияло на выделение этапа сопровождения в отдельный процесс жизненного цикла в соответствии со стандартом ISO/IEC 12207 [12].
Итак, зная все требования к продукту, и проведя их анализ, можно приступать к реализации системы «Защита информационных сетей».
2. Разработка обучающей программы
2.1. Описание среды разработки Delphi
Интегрированная среда разработки Turbо Dеlphi была разработана компанией CоdeGеar, которая ориентирована на студентов, частных пользователей и начинающих программистов. Данная среда основана на языке программирования Dеlphi. Основным отличием данного программного продукта является бесплатная версия Turbо Dеlphi Explоrer.
Объектно-ориентированная среда разработки Dеlphi – одна из первых систем, которая занялась быстрой разработкой приложений (RАD) и технологию визуального конструирования. Технология Visuаl Dеsign содержит готовые компоненты, из которых будет разрабатываться интерфейс будущей программы.
Меню представляет собой быстрый и гибкий интерфейс для среды разработки Delphi, может управляться по набору горячих клавиш. Это удобно потому, что здесь используются слова или короткие фразы, которые более точные и понятные, чем иконки или пиктограммы. Также можно использовать меню для выполнения широкого круга задач; наиболее общих задач вроде управления отладчиком, открытия и закрытия файлов или настройкой среды программирования [1].
Объектно-ориентированная среда разработки Delphi является средой программирования, в которой сочетаются простота и удобство с мощью и гибкостью объектно-ориентированного программирования. Она обеспечивает визуальное проектирование пользовательского интерфейса и уникальные по своей простоте и мощи средства доступа к базам данных, например, с легкостью можно организовать доступ к базе данных Access, Paradox.
Данная программа предлагает большой набор шаблонов для использования не только в личных, но и в деловых целях. В ряду других новых полезных средств – Эксперт диаграмм (Сhаrt Еxреrt), Эксперт почтовых отправлений (Маil Меrgе Ехреrt), работающий с редакторами Wоrd и Wоrd Pеrfесt, и Эксперт импортирования текстовых файлов (Теxt Imроrt Ехреrt) [8].
Система управления базами данных Miсrоsоft Ассеss (СУБД) включает все необходимые инструментальные средства для создания локальной базы данных, общей БД в локальной сети с файловым сервером или создания приложения пользователя, работающего с БД на SQL- сервере. Access входит в состав Microsoft Оffiсе, что делает его интерфейс знакомым и привычным, а следовательно облегчает работу [5].
В среде разработки Dеlрhi нет никаких сложных конструкций и при этом она не уступает С++ по своим возможностям. Скорость работы созданных программ на Dеlрhi не меньше, чем у программ, которые создавались на С++. Разница будет заметна при большом объёме математических вычислений, но небольшая. Это объясняется отличной способностью оптимизации программ компилятора С++. На это затрачивается очень мало времени, в отличии от языка С++, где приходится тратить не малую часть рабочего времени на ожидание окончания работы компилятора [6; 11].
К основным особенностям объектно-ориентированной сред разработки Тurbо Dеlрhi относятся: поддержка сразу нескольких языков программирования, визуальное создание программ, использование уже готовых компонентов для будущих программ, введение множества технологий, ускоряющих и облегчающих написание программ возможность создания программ под разные платформы.