Файл: Основы проектирования программ. Этапы создания программного обеспечения ( Понятие и характеристики программы ).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 28.03.2023

Просмотров: 283

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

ВВЕДЕНИЕ

Распространение новых технологий привело к появлению в подавляющем числе российских квартир персональных компьютеров, а иногда их число достигает нескольких в одной семье. Все благодаря высокой функциональности современных электронно-вычислительных машин, которые могут не просто осуществлять расчеты, но выполнять такие задачи, которые под силу только современным технологиям.

Оперативность и функциональность любого вычислительного средства определяются совокупностью его аппаратных характеристик и программного обеспечения. В то время как аппаратное обеспечение в некоторой степени отличается постоянностью в границах одного устройства, то программное обеспечение является достаточно мобильной и динамичной его составляющей. Для того, чтобы компьютер выполнял возложенные на него задачи максимально эффективно, необходимо подбирать программное обеспечение исходя из конкретных целей. И это более чем реализуемо, ведь с каждым днем разнообразие программ только продолжает увеличиваться, а прежние программы модернизируются и улучшаются.

Процесс создания программного обеспечения достаточно сложен и трудоемок, так как результатом должен быть продукт, не только полностью удовлетворяющий требованиям пользователя, но и достаточно функциональный в рамках обозримого будущего. В связи с этим весь процесс проектирования программ разделен на определенные этапы, которые позволяют осуществлять всесторонний контроль и отслеживание процесса разработки программного обеспечения.

Цель исследования – рассмотрение основ проектирования программ и этапы их создания.

Задачи работы:

  • охарактеризовать понятие программ;
  • привести классификацию программного обеспечения;
  • проанализировать процесс создания программного обеспечения;
  • рассмотреть этапы создания программного обеспечения.

Объектом исследования выступает процесс создания программного обеспечения, а предметом – этапы этого процесса.

В качестве теоретической базы исследования используются научные труды известных исследователей проектирования программ, а также этапов создания программного обеспечения. В частности, при работе над исследованием использовались работы таких авторов как Голицына О. Л., Зыков С. В., Рудаков А. В. Соколова В. В. и др. Данные авторы на протяжении многих лет осуществляют свою научную деятельность в вопросах создания программного обеспечения, в связи с чем использование результатов их научных изысканий более чем целесообразно в ключе данной работы.


1 Основы проектирования программ

1.1 Понятие и характеристики программы

Программа – это последовательность инструкций (команд), описывающая алгоритм решения с помощью компьютера соответствующей задачи, для реализации которой эта программа была разработана [16]. Для разработки программ используются специальные языки.

Программа может содержать инструкции, написанные на языках программирования высокого уровня, которые позволяют записать алгоритмы в удобной для понимания человеком форме, приближенной к естественным языкам (исходный код), или последовательность машинных команд (инструкций, «понятных» компьютеру, на котором данная программа должна выполняться).

Готовыми к выполнению являются только программы, содержащие инструкции в двоичном машинном коде, – программы на языке конкретного компьютера (компьютера с процессором определенной модели или семейства), только такие программы можно загрузить в память компьютера для выполнения. Таким образом, программы в машинном коде не являются «переносимыми», их можно выполнять только на компьютерах с общей архитектурой, системой команд, поддерживаемой этими компьютерами, т.е. одинаковым машинным языком [4].

Машинно–ориентированный язык (Assembler) наиболее близок к языку, который «понимает» компьютер. В нем каждая команда, расположенная в отдельной строке, соответствует одной машинной команде. В столбике таблицы, в котором показан шестнадцатеричный машинный код, первое число представляет собой адрес в памяти компьютера, по которому будет при выполнении программы записана команда или данные, машинный код которых следует за этим числом в строке.

Исходный код программы на языке программирования создает программист, используя при этом имеющиеся в его распоряжении редакторы текстов (специальные программы, которые используются для ввода и модификации текстовой информации). Для перевода программы, написанной на языке программирования, в форму, готовую к выполнению (в машинный код), используются специальные системные программы (трансляторы, компоновщики), которые помогают программисту разработать программу. Разработчики применяют различные инструментальные средства, входящие в состав систем программирования, снижающие трудоемкость разработки программ. Современные системы программирования включают в свой состав текстовые редакторы, средства визуального программирования, трансляторы с определенных языков программирования, компоновщики, позволяющие «собрать» программы из отдельно разработанных модулей, и средства отладки программ, позволяющие выявлять и исправлять ошибки в процессе разработки программы [11].


Все программы хранятся в файлах на дисках компьютера. Тип файла определяет способ записи программы в нем. При загрузке программы в память на выполнение она считывается из файла и записывается в выделенную ей для выполнения оперативную память с помощью специальной программы загрузки, так как процессор может прочитать и выполнить только команды, находящиеся в оперативной памяти компьютера [3].

Таким образом, кроме программ, решающих задачи пользователя, существуют и программы, выполняющие вспомогательные, обслуживающие функции, позволяющие повысить эффективность и снизить трудоемкость работы.

1.2 Классификация программного обеспечения

Программное обеспечение (ПО) – это совокупность всех программ и соответствующей документации, обеспечивающая использование ЭВМ в интересах каждого ее пользователя [6].

Различают системное и прикладное ПО. Схематически программное обеспечение можно представить так:

Рисунок 1 Классификация программного обеспечения

Системное ПО – это совокупность программ для обеспечения работы компьютера. Системное ПО подразделяется на базовое и сервисное. Системные программы предназначены для управления работой вычислительной системы, выполняют различные вспомогательные функции (копирования, выдачи справок, тестирования, форматирования и т. д) [10].

Базовое ПО включает в себя:

  • операционные системы. Операционная система (ОС) является системным программным обеспечением, благодаря которому приводится в действие технические средства компьютера. Это программное обеспечение координирующее работу ЭВМ и производящее управление другими программными модулями посредством скоординированной последовательности операций. Операционные системы для персональных компьютеров делятся на:
  • одно– и многозадачные (в зависимости от числа параллельно выполняемых прикладных процессов);
  • одно– и многопользовательские (в зависимости от числа пользователей, одновременно работающих с операционной системой);
  • непереносимые и переносимые на другие типы компьютеров;
  • несетевые и сетевые, обеспечивающие работу в локальной вычислительной сети ЭВМ [2];
  • оболочки. Операционные оболочки – это специальные программы, предназначенные для облегчения общения пользователя с командами операционной системы. Операционные оболочки имеют текстовый и графический варианты интерфейса конечного пользователя.

Эти программы существенно упрощают задание управляющей информации для выполнения команд операционной системы, уменьшают напряженность и сложность работы конечного пользователя.

Во всем мире имеют огромную популярность такие графические оболочки MS DOS как Windows 3.1, Windows 3.11 for WorkGroup, которые позволяют изменить среду взаимодействия пользователя с компьютером, расширяют набор основных (диспетчер файлов, графический редактор, текстовый редактор, картотека и т.п.) и сервисных функций, обеспечивающих пользователю интегрированную информационную технологию [9];

  • сетевые операционные системы – это комплекс программ, обеспечивающий обработку, передачу и хранение данных в сети. Сетевая ОС предоставляет пользователям различные виды сетевых служб (управление файлами, электронная почта, процесс управления сетью и др.), поддерживает работу в абонентских системах. Наибольшее распространение имеют LAN Server, NetWare, VINES.

Они оцениваются по комплексу критериев: производительность, разнообразие возможностей связи пользователей, возможности администрирования [14].

Сервисное ПО включает в себя программы (утилиты):

  • диагностики;
  • антивирусные;
  • обслуживания носителей;
  • архивирования;
  • обслуживания сети [16].

Прикладное ПО – это комплекс программ для решения задач определённого класса конкретной предметной области. Прикладное ПО работает только при наличии системного ПО.

Прикладные программы называют приложениями. Они включает в себя:

  • текстовые процессоры;
  • табличные процессоры;
  • базы данных;
  • интегрированные пакеты;
  • системы иллюстративной и деловой графики (графические процессоры);
  • экспертные системы;
  • обучающие программы;
  • программы математических расчетов, моделирования и анализа;
  • игры;
  • коммуникационные программы [16].

Особую группу составляют системы программирования (инструментальные системы), которые являются частью системного ПО, но носят прикладной характер. Системы программирования – это совокупность программ для разработки, отладки и внедрения новых программных продуктов. Системы программирования обычно содержат:

  • трансляторы;
  • среду разработки программ;
  • библиотеки справочных программ (функций, процедур);
  • отладчики;
  • редакторы связей и др. [12].

2 Этапы создания программного обеспечения


2.1 Характеристика процесса создания программного обеспечения

Программное обеспечение (ПО) – компьютерные программы и соответствующая документация. Разрабатывается по частному заказу или для продажи на рынке ПО.

Системотехника (технология создания вычислительных систем) – дисциплина, охватывающая все аспекты создания и модернизации сложных вычислительных систем, где программное обеспечение играет ведущую роль. Сюда можно отнести технологии создания аппаратных средств, создание вычислительных процессов, развертывание всей системы, а также технологию создания непосредственно ПО [8].

Процесс создания ПО – совокупность процессов, приводящих к созданию программного продукта.

Фундаментальные процессы, присущие любому проекту создания ПО:

  1. Разработка спецификации требований на ПО (Определяют функциональные характеристики системы и обязательны для выполнения).
  2. Создание программного обеспечения (создание ПО согласно спецификации).
  3. Аттестация ПО (Созданное ПО должно пройти аттестацию для подтверждения соответствию требованиям заказчика).
  4. Модернизация ПО (совершенствование ПО согласно измененным требованиям потребителя) [7].

Модель процесса создания ПО – последовательность этапов, необходимых для разработки создаваемого ПО.

Модели процесса разработки ПО:

  1. Каскадная модель.
  2. Эволюционная модель.
  3. Формальное преобразование.
  4. Сборка программных продуктов из ранее созданных компонентов (модель сборки).
  5. Итерационная (спиральная) модель [16].

Методы создания ПО представляют собой структурный подход к созданию ПО, который способствует производству ПО эффективным, с экономической точки зрения, способом.

Все методы основаны на использовании моделей системы в качестве спецификации ее структуры:

  1. Функционально–ориентированные (структурный анализ, JSD, 70–е годы) основаны на определении основных функциональных компонент системы.
  2. Объектно–ориентированные (Booch, Rumbaugh) используют подходы, основанные на использовании унифицированного языка моделирования UML.
  3. Computer–Aided Software Engineering – автоматизированная разработка ПО [11].

Базовые процессы создания ПО можно представить в виде следующей последовательности: