Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

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

Содержание:

ВВЕДЕНИЕ

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

2.2. Стадии и этапы разработки программ

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

Жизненный цикл – это совокупность взаимосвязанных процессов создания и последовательного изменения состояния продукции от формирования к ней исходных требований до окончания ее эксплуатации или потребления[19].

Основным нормативным документом, регламентирующим жизненный цикл программного обеспечения, является ГОСТ ИСО/МЭК 12207-2010 «Процессы жизненного цикла программных средств». ГОСТ Р 56923-2016 содержит дополнительные детали по моделям и стадиям жизненного цикла.

В настоящее время можно выделить пять основных подходов к организации процесса создания программного средства:

  1. Водопадный подход – разработка программного средства состоит из цепочки этапов. На каждом этапе создаются документы, используемые на последующем этапе. В исходном документе фиксируются требования к программному средству. В конце этой цепочки создаются программы, включаемые в программное средство;
  2. Исследовательское программирование. Этот подход предполагает быструю реализацию рабочих версий программ. После экспериментального применения реализованных программ производится их доработка. Этот процесс повторяется до тех пор, пока программа не будет удовлетворять заказчика. Этот подход применяется для разработки таких программ, когда не могут быть точно сформулированы требования;
  3. Прототипирование. Этот подход моделирует начальную фазу исследовательского программирования вплоть до создания рабочих версий программ, предназначенных для проведения экспериментов для установления требований к программе. Далее следует разработка программы по установленным требованиям в рамках какого-либо другого подхода;
  4. Формальное преобразование. Этот подход включает в разработку формальных спецификаций программного средства и превращение их в программы путем корректных преобразований;
  5. Сборочное программирование. Этот подход предполагает, что программное средство собирается из частей, которые уже существуют. Процесс разработки программного продукта состоит из сборки программы из частей, а не из программирования[20].

В последнее время увеличилась популярность гибких (agile) методологий разработки программных средств. Гибкие методики не навязывают исполнителю множество формализованных действий по разработке программного обеспечения, предоставляют участникам проекта большую свободу и обращают внимание на важнейших требованиях заказчика, сроков и качества работы[21].

Стадии и этапы разработки программных продуктов регламентируются ГОСТ 19.102-77[22]. Этот стандарт был сформирован на основе анализа различных программных разработок и содержит рекомендации по проведению новых. Помимо названий стадий и этапов проектирования, стандарт фактически содержит описание алгоритма действий проектировщика[23].

Рассмотрим классическую схему разработки программного обеспечения:

  1. Формулируются и анализируются требования. Этот этап является самым важным, так как неверная формулировка требований может привести к выполнению лишней работы, перерасходу бюджета и т.д. В настоящее время около 60% проектов заканчивается неудачей из-за ошибок на этой стадии. На этом этапе также определяется примерный объем проекта, его трудоемкость, рассчитываются трудозатраты, определяется его стоимость. По согласованию требований подписывается контракт на разработку ПО.
  2. Начинается предпроектное обследование объекта автоматизации. Составляется формальная модель его работы, модель базу данных, объектов и потоков информации. На этом этапе привлекаются специалисты и эксперты заказчика, знакомые с предметной областью, для которой составляется задача.
  3. На основе формальной модели составляется подробное техническое задание для программистов, спецификации отдельных модулей, таблицы баз данных, другая сопроводительная документация. Готовится подробный календарный план работ, где указывают сроки, исполнителей и выполняемые объемы работ.
  4. Выбирается методология разработки программного обеспечения и начинается его разработка (кодирование). Принятие решения о выборе подходящей методологии – очень ответственный процесс. Человек, принимающий такое решение, должен обладать богатым опытом и знаниями в области создания программного обеспечения. В процессе разработки необходимо иметь непрерывную связь с заказчиком, чтобы контролировать корректность реализации установленных требований. Обязательным также является контроль хода работ в соответствии с планом, чтобы при отклонениях можно было принять экстренные меры.
  5. Когда программное средство сделано, оно должно быть сначала испытано тестировщиками от компании-исполнителя. Они проверяют программу на корректность работы и сообщают программистам о найденных ошибках. После исправления обнаруженных ошибок, начинается тестирование программы у заказчика. К такому тестированию привлекается максимально возможное число сотрудников, и программное средство уже начинает частично функционировать в рабочем режиме.
  6. Когда заказчик удовлетворен качеством разработанного программного средства, начинается его внедрение – подготовка к окончательному запуску в эксплуатацию. Если программа многопользовательская, зачастую требуется сформировать и настроить локальную сеть, установить серверы, установить вспомогательное программное обеспечение и проч. Этот этап является самым трудоемким.
  7. После внедрения нового программного средства, начинается обучение сотрудников организации-заказчика работе с этим ПО.
  8. Проект считается завершенным после подписания заказчиком акта приема, но взаимодействие заказчика и исполнителя продолжается. Обусловлено это тем, что в первое время у пользователей могут возникать вопросы по работе программы, неизбежно и возникновение ошибок. Сотрудничество с заказчиком по обслуживанию программы называется сопровождением. Обычно оно бесплатно на определенный срок[24].

2.3. Программная документация

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

Требования к содержанию программной документации изложены в ГОСТ 19.101-77. Программная документация создается на различных этапах проекта.

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

Программную документацию можно разделить на два блока:

  1. Документы управления разработкой программы (software process documentation) – управляют и протоколируют процессы разработки и сопровождения программного обеспечения, обеспечивают обмен информацией между разработчиками. В эту группу документов входят различные планы, расписания, отчеты об использовании ресурсов в процессе разработки, международные и национальные стандарты, различные технические документы.
  2. Документы, входящие в состав программы (software product documentation) – описывают программу как с точки зрения ее применения пользователями, так и с точки зрения их разработчиков. Эти документы будут использоваться не только на стадии эксплуатации программы, но и на стадии разработки. Эту группу документов можно разделить на две группы: пользовательская документация и документация по сопровождению.

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

Разработка пользовательской документации начинается сразу после создания внешнего описания. Она должна быть удобна и проста для пользователей.

Документация по сопровождению (system documentation) описывает программу с точки зрения ее разработки. Эта документация нужна, если программа предполагает изучение того, как она устроена и ее модернизацию[26].

2.4. Качество программного обеспечения

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

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

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

  1. Функциональность – это способность программного средства выполнять набор функций, соответствующих заданным или подразумеваемым потребностям пользователей. Перечень таких функций определяется во внешнем описании программного средства;
  2. Надежность – это свойство программного средства бесперебойно выполнить определенные функции при заданных условиях в течение определенного периода времени. При этом под сбоем в программном средстве понимают проявление в нем ошибок. Но критерий надежности не исключает наличия в программном средстве ошибок. Важно, чтобы эти ошибки при практическом применении этого программного средства появлялись редко. Добиться удовлетворения этого свойства можно при испытании программного средства путем тестирования и при практическом применении;
  3. Легкость применения – это свойство программного средства, которое позволяет сократить трудозатраты пользователя по подготовке исходных данных, использовании программного средства и при оценке получаемых результатов;
  4. Эффективность – это соотношение уровня предоставляемых программным средством услуг к объему используемых ресурсов;
  5. Сопровождаемость – это характеристика программного средства, которая позволяет минимизировать усилия по внесению изменений для устранения в нем ошибок и по его доработке в соответствии с изменениями потребностей пользователей;
  6. Мобильность – это способность программного средства быть перенесенным из одной среды в другую, в том числе, в одного ПК на другой.

Функциональность и надежность – это обязательные критерии качества программного средства. Остальные критерии используются исходя из потребностей пользователей в соответствии с их требованиями[27].

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

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

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

ЗАКЛЮЧЕНИЕ

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

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

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

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

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

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

  1. ГОСТ 19.101-77. Единая система программной документации (ЕСПД). Виды программ и программных документов. М., 1980;

ГОСТ 19.102-77. Единая система программной документации (ЕСПД). Стадии разработки. М., 1980;

  1. Гуда А.Н., Бутакова М.А., Нечитайло Н.М., Чернов А.В./под ред академика РАН В.И.Колесникова. Информатика. Общий курс: Учебник, 3-е изд. – М. Ростов н\Д.: Наука-Спектр, 2010. – 400 с.;
  2. Зубкова Т.М. Технология разработки программного обеспечения/ Учеб. пособие. – Оренбург: ГОУ ОГУ, 2004. – 101 с.;
  3. Камаев В.А., Костерин В.В. Технологии программирования. URL: https://litresp.com/chitat/ru/%D0%9A/kamaev-v-a/tehnologii-programmirovaniya/2 (дата обращения 23.01.2020).;
  4. Кинг Д. Создание эффективного программного обеспечения – М.: МИР, 1991. – 288 с.;
  5. Макарова Н.В. Информатика/ Учебник. – М.: Финансы и статистика, 1997. – 768 с.;
  6. Прохорский Г.В. Интернет курс по дисциплине «Информатика». URL: http://e-biblio.ru/book/bib/01_informatika/informatika/new/sg.html#_Toc505877977 (дата обращения: 23.01.2020).;
  7. Симонович С.В. Информатика. Базовый курс/ Учебник для вузов. 3-е изд. Стандарт третьего поколения. – СПб.: Питер, 2011. – 640 с.
  1. Зубкова Т.М. Технология разработки программного обеспечения: учебное пособие. – Оренбург: ГОУ ОГУ, 2004. – С. 3.

  2. Гуда А.Н., Бутакова М.А., Нечитайло Н.М., Чернов А.В. Информатика. Общий курс: Учебник. – Ростов: Наука-Спектр, 2010. С. 8.

  3. Зубкова Т.М. Технология разработки программного обеспечения: учебное пособие. – Оренбург: ГОУ ОГУ, 2004. – С. 3.

  4. Камаев В.А., Костерин В.В. Технологии программирования. URL. https://litresp.com/chitat/ru/%D0%9A/kamaev-v-a/tehnologii-programmirovaniya/2 (дата обращения 23.01.2020)

  5. Там же.

  6. Зубкова Т.М. Технология разработки программного обеспечения: учебное пособие. – Оренбург: ГОУ ОГУ, 2004. – С. 5.

  7. Симонович С.В. Информатика. Базовый курс: Учебник для вузов. 3-е изд. Стандарт третьего поколения. – СПб.: Питер, 2011. – С. 577.

  8. Камаев В.А., Костерин В.В. Технологии программирования. URL. https://litresp.com/chitat/ru/%D0%9A/kamaev-v-a/tehnologii-programmirovaniya/2 (дата обращения 23.01.2020)

  9. ГОСТ 19.101-77. Единая система программной документации (ЕСПД). Виды программ и программных документов. М., 1980.

  10. Прохорский Г.В. Интернет курс по дисциплине «Информатика». URL. http://e-biblio.ru/book/bib/01_informatika/informatika/new/sg.html#_Toc505877977 (дата обращения: 23.01.2020).

  11. Там же.

  12. Экономическая информатика: Учебник / Под ред. В.П. Косарева – 2-е изд., перераб. и доп. – М.: Финансы и статистика, 2005. – С. 117.

  13. Прохорский Г.В. Интернет курс по дисциплине «Информатика». URL. http://e-biblio.ru/book/bib/01_informatika/informatika/new/sg.html#_Toc505877977 (дата обращения: 23.01.2020).

  14. Кинг Д. Создание эффективного программного обеспечения. – М.: МИР, 1991. – С. 11.

  15. Прохорский Г.В. Интернет курс по дисциплине «Информатика». URL. http://e-biblio.ru/book/bib/01_informatika/informatika/new/sg.html#_Toc505877977 (дата обращения: 23.01.2020).

  16. Макарова Н.В. Информатика: Учебник/ Под ред. Проф. Н.В. Макаровой – М.: Финансы и статистика, 2006. – С. 255.

  17. Макарова Н.В. Информатика: Учебник/ Под ред. Проф. Н.В. Макаровой – М.: Финансы и статистика, 2006. – С. 255 – 257.

  18. Камаев В.А., Костерин В.В. Технологии программирования. URL. https://litresp.com/chitat/ru/%D0%9A/kamaev-v-a/tehnologii-programmirovaniya/2 (дата обращения 23.01.2020)

  19. Камаев В.А., Костерин В.В. Технологии программирования. URL. https://litresp.com/chitat/ru/%D0%9A/kamaev-v-a/tehnologii-programmirovaniya/2 (дата обращения 23.01.2020)

  20. Зубкова Т.М. Техналогия разработки программного обеспечения: учебное пособие. – Оренбург: ГОУ ОГУ, 2004.- С. 6-7.

  21. Симонович С.В. Информатика. Базовый курс: Учебник для вузов. 3-е изд. Стандарт третьего поколения. – СПб.: Питер, 2011. – С. 622.

  22. ГОСТ 19.102-77. Единая система программной документации (ЕСПД). Стадии разработки. М., 1980.

  23. Камаев В.А., Костерин В.В. Технологии программирования. URL. https://litresp.com/chitat/ru/%D0%9A/kamaev-v-a/tehnologii-programmirovaniya/2 (дата обращения 23.01.2020)

  24. Симонович С.В. Информатика. Базовый курс: Учебник для вузов. 3-е изд. Стандарт третьего поколения. – СПб.: Питер, 2011. – С. 617-620.

  25. Зубкова Т.М. Техналогия разработки программного обеспечения: учебное пособие. – Оренбург: ГОУ ОГУ, 2004. – С. 27.

  26. Зубкова Т.М. Техналогия разработки программного обеспечения: учебное пособие. – Оренбург: ГОУ ОГУ, 2004.- С. 28 – 30.

  27. Зубкова Т.М. Технология разработки программного обеспечения: учебное пособие. – Оренбург: ГОУ ОГУ, 2004. – С. 12-13.

  28. Симонович С.В. Информатика. Базовый курс: Учебник для вузов. 3-е изд. Стандарт третьего поколения. – СПб.: Питер, 2011. – С. 620.