Научный журнал
Научное обозрение. Технические науки
ISSN 2500-0799
ПИ №ФС77-57440

ОБЗОР ОНЛАЙН-СЕРВИСОВ, ПРИМЕНЯЕМЫХ В ПРОЕКТИРОВАНИИ ПРОГРАММНЫХ ПРОДУКТОВ

Бужинская Н.В. 1
1 Нижнетагильский государственный социально-педагогический институт (филиал) ФГАОУ ВО «Российский государственный профессионально-педагогический университет»
В условиях постоянного усложнения рынка программного и аппаратного обеспечения возникает необходимость в применении новых подходов к проектированию и разработке продуктов. Любой программный продукт должен быть выполнен в заданные сроки с учетом запланированных ресурсов. Однако конкуренция в сфере производства программных продуктов приводит к тому, что на первый план выходят интересы потенциальных потребителей. Поэтому этап проектирования очень важен в подготовке программного продукта. От грамотной постановки цели зависит эффективность процесса проектирования. Кроме того, необходимо учесть, что ошибки проектирования обнаруживаются часто самими пользователями, что вызывает их недовольство и осложняет процесс сопровождения программных продуктов. Следовательно, проектировщики должны не только грамотно сформулировать требования к будущему продукту, но и разработать дизайн, описать основные функции и представить прототип программы. Статья посвящена изучению возможностей применения онлайн-сервисов для решения различных задач в проектировании. На первом этапе рассматривается возможность применения сервисов для проведения анкетирования пользователей. Затем внимание уделяется работе в сервисах для рисования схем, моделей, диаграмм в нотации UML. Для хранения разработанных материалов и внесения в них изменений рекомендуется воспользоваться сервисами командной работы. Они позволят отследить результаты работы на каждом этапе и оценить вклад каждого участника.
проектирование
онлайн-сервис
разработка
программный продукт
планирование
дизайн
команда
1. ГОСТ 34.601-90. Межгосударственный стандарт. Информационная технология. Комплекс стандартов на автоматизированные системы. Автоматизированные системы. Стадии создания. Электронный ресурс. URL: http://docs.cntd.ru/document/gost-34-601-90 (дата обращения 06.11.2020).
2. Коцюба И.Ю., Чунаев А.В., Шиков А.Н. Основы проектирования информационных систем: учебное пособие. СПб.: Университет ИТМО, 2015. 206 с.
3. Инюшкина О.Г. Проектирование информационных систем (на примере методов структурного системного анализа): учебное пособие. Екатеринбург: «Форт-Диалог Исеть», 2014. 240 с.
4. Каюмова А.В. Визуальное моделирование систем в StarUML. Казань: Казанский федеральный университет, 2013. 104 с.
5. Лозинская А.М., Яхабипова И.М. Сравнительный анализ ON-LINE сервисов для обучения школьников web-программированию // Актуальные вопросы преподавания математики, информатики и информационных технологий. 2018. № 3. С. 252–259.
6. Online Test Pad – Онлайн тесты, опросы, кроссворды. [Электронный ресурс]. URL: https://onlinetestpad.com/ (дата обращения 06.11.2020).
7. Бавра О.Д. Проблемы создания web-сайта и пути решения / А.А. Александрова, М.Е. Онищенко // Актуальные проблемы авиации и космонавтики. 2017. Т. 3. № 13. С. 1060–1061.
8. diagrams.net. [Электронный ресурс]. URL: https://app.diagrams.net/ (дата обращения 07.11.2020).
9. Барсуков А.Ю. Диаграмма Ганта в среде OFFICE 365 // Информационные системы и технологии в образовании, науке и бизнесе (ИСит-2014): материалы Всероссийской молодежной научно-практической школы. 2014. С. 151.
10. Сергеева А. Гибкие методологии разработки современных программных приложений // Системный администратор. 2015. № 1–2 (146–147). С. 82–85.
11. GanttPRO. [Электронный ресурс]. URL: https://ganttpro.com/ru/ (дата обращения: 05.11.2020).
12. Фаулер M. UML. Основы. СПб.: Символ Плюс, 2004. 192 с.
13. Швец Е.С. Эмоциональный дизайн как основа развития веб-сайта // Регионы. Города. Ракурсы и параллели: сборник. Теоретические доклады V Всероссийской творческой лаборатории. Омский гос. тех. ун.-т. Омское региональное отделение ВТОО «Союз художников России». 2016. С. 150–153.
14. Васева Е.С. Приложение для туристов с пользовательским контентом: технологии разработки / Е.С. Васева, А.В. Шутько // Наука и перспективы. 2019. № 4. С. 64–72.
15. Canva – онлайн-сервис создания картинок. [Электронный ресурс]. URL: https://www.canva.com/
16. Галкина Е.А. Интерактивные инструменты для совместной работы, проектов, сотрудничества (на примере сервиса TRELLO) // Модернизация культуры: знание как инструмент развития: материалы VII Международной научно-практической конференции. В 2 ч. / Под ред. С.В. Соловьевой, В.И. Ионесова, Л.М. Артамоновой. 2019. С. 246–249.

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

Отметим, что выпуску готового программного продукта обычно предшествуют этапы, которые зафиксированы в ГОСТ 34.601-90. К данным этапам относятся [1]:

- формирование требований к програм- мному продукту;

- разработка концепции программного продукта;

- техническое задание;

- эскизный проект;

- технический проект;

- рабочая документация;

- сопровождение программного продукта.

Проектирование как процесс представляет собой упорядоченную совокупность методологий и средств создания или модернизации программных продуктов. В проектировании принято выделять три важнейших области: проектирование баз данных, проектирование приложений и проектирование сетей [2]. Каждая область отличается методами и средствами. Однако, независимо от специфики перечисленных выше областей, важную роль в проектировании играет постановка цели. Именно от грамотной постановки цели зависит эффективность процесса проектирования. В исследовании [3] утверждается, что исправление ошибки на стадии проектирования стоит в 2 раза, на стадии тестирования – в 10 раз, а на стадии эксплуатации системы – в 100 раз дороже, чем на стадии анализа. Кроме того, ошибки анализа и проектирования обнаруживаются часто самими пользователями, что вызывает их недовольство и осложняет процесс сопровождения программных продуктов. Проектирование обычно связано с таким процессом, как моделирование. В основе моделирования лежит понятие «модель». Под моделью понимают абстракцию, которая используется для описания функций программного продукта. Благодаря моделям можно обозначить требования к нему и определить направление работы [4].

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

Материалы и методы исследования

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

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

Рассмотрим пример разработки анкеты для пользователей в сервисе Online Test Pad. Данный сервис представляет собой бесплатный многофункциональный сервис для проведения опросов [6].

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

Пример одного вопроса, оформленного в сервисе Online Test Pad, представлен на рис. 1.

bugin1.tif

Рис. 1. Оформление вопросов в Online Test Pad

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

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

Логическую структуру сайта можно нарисовать в любом редакторе, предназначенном для создания схем, в том числе и редакторе draw.io. Данный сервис предназначен для моделирования диаграмм и блок-схем бизнес-процессов [8]. Пример логической структуры сайта, созданной в данном сервисе, представлен на рис. 2.

bugin2.tif

Рис. 2. Логическая структура сайта, созданная в сервисе draw.io

bugin3.tif

Рис. 3. Фрагмент диаграммы Гантта, разработанной в сервисе GANTTPRO

bugin4.tif

Рис. 4. Пример диаграммы прецедентов, построенной в редакторе Draw.io

Следующим этапом работы является составления плана деятельности. Обычно в проектировании средством наглядного представления трудовых процессов является диаграмма Гантта. На данной диаграмме отображаются этапы работы, даты их начала и завершения, продолжительность каждого этапа [9]. Отметим, что в настоящее время существует другой подход к планированию проектной деятельности [10]. С точки зрения гибкой (agile) методологии наличие «жесткого плана» работы ставит разработчика в такие условия, при которых он должен выполнить поставленные перед ним задачи точно в срок, зачастую в ущерб качеству. В этом случае рекомендуется применять другие подходы к составлению плана работы, например SCRUM или RUP.

Для построения диаграммы Гантта можно воспользоваться сервисом GANTTPRO [11]. Отметим, что этапы работы должны соответствовать этапам жизненного цикла, обозначенным в соответствующих ГОСТах. Пример диаграммы Гантта, разработанной в сервисе GANTTPRO, представлен на рис. 3.

Важную роль в проектировании играют диаграммы, построенные в различных нотациях. Например, унифицированный язык моделирования UML представляет собой семейство графических нотаций, в основе которых лежит единая метамодель [12]. Он помогает описывать требования к программным продуктам, последовательность этапов работы с ними посредством объектно-ориентированных технологий. Рассмотрим пример построения диаграммы прецедентов в сервисе Draw.io. С помощью диаграммы прецедентов можно показать требования к разрабатываемому продукту. Пример диаграммы прецедентов для иллюстрации требований к сайту кружка по робототехнике представлен на рис. 4.

С помощью этой диаграммы становится понятным, что пользователь на сайте сможет узнать интересную информацию, изменения в расписании и связаться с преподавателями. Кроме того, администрировать сайт будет менеджер. Аналогично посредством данного сервиса мы можем построить другие диаграммы в нотации UML.

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

bugin5.tif

Рис. 5. Пример дизайна главной страницы в сервисе Canva

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

Результаты исследования и их обсуждение

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

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

Заключение

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


Библиографическая ссылка

Бужинская Н.В. ОБЗОР ОНЛАЙН-СЕРВИСОВ, ПРИМЕНЯЕМЫХ В ПРОЕКТИРОВАНИИ ПРОГРАММНЫХ ПРОДУКТОВ // Научное обозрение. Технические науки. – 2020. – № 6. – С. 11-16;
URL: https://science-engineering.ru/ru/article/view?id=1320 (дата обращения: 20.04.2024).

Предлагаем вашему вниманию журналы, издающиеся в издательстве «Академия Естествознания»
(Высокий импакт-фактор РИНЦ, тематика журналов охватывает все научные направления)

«Фундаментальные исследования» список ВАК ИФ РИНЦ = 1,674