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

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

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

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

Добавлен: 31.03.2023

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

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

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

ВВЕДЕНИЕ

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

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

Человеческое общество XXI века – информационное общество, поэтому компьютерные науки и, в том числе, программная инженерия очень популярны и стремительно развиваются[3].

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

Решением этих проблем стала грамотная организация процесса создания нового программного обеспечения, реализация технологических принципов промышленного производства программных систем.

В начале 80-х годов XX века происходит широкое внедрение в практику программирования методов проектирования. Внедряется ГОСТ 19.102-77, регламентирующий стадии и этапы программных разработок. Этот стандарт входит в группу стандартов единой системы программной документации (ЕСПД)[4].

Технология программирования – это научная и практически апробированная стратегия разработки программ, содержащее описание совокупности методов и средств разработки программ, а также порядок этих методов и средств[5]. Иными словами, технология программирования – это система методов, способов и приемов разработки и отладки программ.

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

Использование хорошей технологии предоставляет возможность получить значительный экономический эффект, существенно увеличить производительность труда программистов и увеличить качество программного продукта[6].


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

Цель данной работы – изучение основ проектирования программ.

В работе поставлены следующие задачи:

  1. Ознакомиться с классификацией программного обеспечения компьютера;
  2. Изучить инструментарий технологии программирования;
  3. Ознакомиться с особенностями разработки программного обеспечения;
  4. Изучить содержание программной документации;
  5. Ознакомиться с критериями качества программного обеспечения.

Глава 1. Классификация программных продуктов

1.1 Классы программных продуктов

Программа – это логически упорядоченная последовательность команд, необходимых для управления компьютером или выполнения компьютером конкретных операций[7].

Программный продукт – это программа, которую можно запускать, тестировать, исправлять и развивать. Такая программа должна быть написана в едином стиле, оттестирована до требуемого уровня надежности, сопровождена подробной документацией и подготовлена для тиражирования[8]. Программная документация позволяет понять, для каких функций может быть использована программа, как ею пользоваться. Требования к содержанию программной документации изложены в ГОСТ 19.101-77[9].

Вся совокупность компьютерных программ называется программным обеспечением компьютера. Она содержит три больших класса – системное, прикладное и инструментальное программное обеспечение[10].

Системное программное обеспечение состоит из программ, обеспечивающих работу всех частей компьютера и подключаемых к нему периферийных устройств. Центральное место в системном программном обеспечении занимают операционные системы[11]. Операционная система – специальная программ, управляющих работой всех устройств ПК и процессом выполнения прикладных программ[12]. Операционная система обеспечивает согласованную работу всех внутренних и внешних устройств компьютера, а также организует взаимодействие пользователя с компьютером[13].


Прикладное программное обеспечение состоит из тех программ, которые фактически выполняют основную работу компьютера, преобразование и обработку данных[14]. Это самый обширный класс компьютерных программ. В него входят популярные программы для решения самых разнообразных задач: текстовые и графические редакторы, табличные процессоры и проч. Как правило, такие программы составляют целые комплексы, которые называются пакетами прикладных программ (ППП). Наибольшее распространение получил программный пакет MS Office, разработанный американской компанией MicroSoft. Этот пакет включает текстовый процессор MS Word, табличный процессор MS Excel, систему управления базами данных MS Access, редактор компьютерных презентаций MS PowerPoint и ряд других приложений[15].

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

    1. Инструментарий технологии программирования

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

Инструментарий технологии программирования – это программные продукты поддержки (обеспечения) технологии программирования. К ним относятся следующие группы программных продуктов:

  1. Средства для созданий приложений;
  2. CASE-технология – представляет методы анализа, проектирования и создания программных систем и применяемая для автоматизации процессов разработки и реализации информационных систем.

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

Локальные средства разработки программ на рынке программных продуктов наиболее представительны и включают языки и системы программирования, а также инструментальную среду пользователя.


Язык программирования – формализованный язык для описания алгоритма решения задачи на компьютере.

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

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

Инструментальная среда пользователя представлена специальными средствами, включенными в пакеты прикладных программ:

- библиотека функций, процедур, объектов и методов обработки;

- макрокоманд;

- клавишные макросы;

- языковые макросы;

- программные модули-вставки;

- конструкторы экранных форм и отчетов;

- генераторы приложений;

-языки запросов высоких уровней;

- языки манипулирования данными;

- конструктор меню и многое другое.

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

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

Средства CASE-технологий делятся на:

  1. Встроенные в систему реализации – все решения по проектированию и реализации привязаны к выбранной системе управления базами данных (СУБД);
  2. Независимые от системы реализации – все решения по проектированию ориентированы на унификацию начальных этапов жизненного цикла и средств их документирования, обеспечивают большую гибкость в выборе средств реализации.

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

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


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

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

Глава 2. Проектирование программ. Этапы создания программного обеспечения

2.1. Общие принципы разработки программ

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

  1. Частотный принцип. Принцип заключается на выделении в алгоритмах и данных особых групп по частоте их использования. То есть для наиболее часто используемых действий при работе с программой, нужно создавать условия для их быстрого выполнения, либо к часто используемым данным обеспечивается более быстрый доступ;
  2. Принцип модульности. Под модулем здесь понимают функциональный элемент рассматриваемой системы, имеющий оформление, законченное и выполненное в пределах требований системы, и средства сопряжения с подобными элементами или элементами более высокого уровня этой или другой системы. Способы разделения составных частей программ в отдельные модули могут существенно различаться, в значительной степени это определяется методом проектирования программ;
  3. Принцип функциональной избирательности. Этот принцип является логическим продолжением частотного и модульного принципов. В программах выделяется некоторая часть важных модулей, которые постоянно должны находиться в состоянии готовности для эффективной организации вычислительного процесса. Эта часть в программах называется ядром. При формировании состава ядра необходимо учесть два противоречивых требования. В состав ядра, помимо чисто управляющих модулей, должны быть включены наиболее часто используемые модули. При этом количество модулей должно быть таким, чтобы объем памяти, занимаемый ядром, не был слишком большим. Модули, входящие в состав ядра, постоянно хранятся в оперативной памяти. Остальные части программ хранятся во внешних запоминающих устройствах и загружаются в оперативную память только при необходимости;
  4. Принцип генерируемости. Этот принцип определяет такой способ исходного представления программы, который бы позволял производить настройку на конкретную конфигурацию технических средств, круг решаемых проблем и условия работы пользователей;
  5. Принцип функциональной избыточности. Этот принцип учитывает возможность выполнения одной и же функции различными средствами. Особенно важно учитывать этот принцип при разработке пользовательского интерфейса для выдачи одних и тех же данных разными способами. Это обусловлено различиями в восприятии информации разными пользователями;
  6. Принцип «по умолчанию». Используется для облегчения организации связей с системой как на стадии генерации, так и при работе с уже готовыми программами. Принцип основан на хранении в системе некоторых базовых описаний структур, модулей, конфигураций оборудования и данных, определяющих условия работы с программой. Эту информацию программа используется в качестве заданной по умолчанию, если вдруг пользователь забудет или специально не конкретизирует ее[18].