
Федеральное агентство связи
Федеральное государственное образовательное бюджетное учреждение высшего образования «Санкт-Петербургский государственный университет телекоммуникаций им. проф. М.А.Бонч-Бруевича»
Факультет «Инфокоммуникационных сетей и систем»
Кафедра «Программной инженерии и вычислительной техники»
Отчет
Лабораторная работа №1
Дисциплина: Проектирование и архитектура программных систем
Название: «Игровой движок».
-
Студент группы
ИКПИ-93
________________
Козлов Н.С
кандидат
технических наук
_________________
Кокарев А.С.
Санкт-Петербург
2023
Оглавление
Постановка задачи
Требуется ознакомиться с технологиями управления проектами, подобными Microsoft Project, например, GanttPRO, и освоить выбранный инструментарий для успешного выполнения работы. В рамках проекта необходимо провести планирование и построение развернутой диаграммы Ганта с учетом параллельных работ, чтобы продемонстрировать усилия по сокращению времени изготовления продукта.
Актуальность
Игровая индустрия - одна из наиболее актуальных и быстрорастущих отраслей в области цифровых технологий. Не обошла эта отрасль и Российский рынок. По данным источника «Tadviser», по итогам 2021-го года, Россия оказалась в пятёрке по потреблению игрового контента. Тем не менее лишь небольшая часть разработчиков из России занимается производством собственных продуктов в пределах Российского рынка, в то время как большая часть компаний вовлечена в аутсорсинг для компаний из-за рубежа, закономерно работающих с иностранным программным обеспечением.
В связи с этим, в стране почти отсутствуют основные инструменты, такие как игровые движки, для создания подобных продуктов. На мировом рынке представлен лишь Unigine, разрабатываемый Российской компанией, однако тот больше предназначен для разработки различных эмуляторов и сложных инженерных 3D-визуализаций, что делает его менее привлекательным для разработчиков на фоне иностранных аналогов.
В Июне 2022-го года, на фоне оттока иностранных компаний, о потребности создания собственных игровых движков заговорили и на уровне государственной думы. Горелкин. А.В, заместитель председателя комитета государственной думы по информационной политике, высказался о приоритетности таковой задачи для поддержания отечественного игрового рынка, что подчёркивает актуальность создания собственного игрового движка.
Общие сведения
Полное наименования системы: повторно используемая и свободно расширяемая система для разработки компьютерных игр.
Условное обозначение: «RemaEngine»
Назначение
Программное обеспечение "RemaEngine" предназначено для создания компьютерных игр в жанре "визуальная новелла". Оно имеет ключевые функции, которые позволяют разработчикам избежать проектирования сложных составных частей игры, таких как отрисовка изображений на экране, проигрывание аудио файлов и управление памятью. Вместо этого разработчики могут сконцентрироваться только на создании игры. "RemaEngine" является сложной системой реального времени.
Краткое описание используемого пакета планирования проекта
GanttPRO - это инструмент для планирования проектов, который предоставляет пользователям возможность создавать графики Ганта, управлять задачами и ресурсами, а также сотрудничать в режиме реального времени. Этот инструмент был разработан компанией GanttPRO Inc. и доступен в качестве программного обеспечения как услуга (SaaS) на основе облачных вычислений.
Права использования
Рис.
. Тарифные планы GanttPRO
Описание функций
Диаграмма Ганта: Это основная функция GanttPRO, которая позволяет пользователям создавать диаграммы Ганта и управлять ими. Диаграмма Ганта отображает задачи в виде горизонтальных баров на оси времени. Это дает пользователям ясное представление о том, какие задачи должны быть выполнены, когда и кем.
Управление задачами: GanttPRO позволяет пользователям управлять задачами, присваивая им даты начала и окончания, отслеживая прогресс, присваивая ответственных и добавляя комментарии.
Управление ресурсами: GanttPRO позволяет пользователям управлять ресурсами, присваивая задачам определенных сотрудников, устанавливая доступность сотрудников в определенные даты и отслеживая загрузку ресурсов.
Коллаборация: GanttPRO позволяет пользователям работать над проектом в режиме реального времени, общаться в чате, обмениваться файлами и делиться информацией о проекте.
Управление проектом
Проектирование
Проектирование программного обеспечения можно разделить на следующие этапы:
Разработка документа о концепции и границах проекта.
Проектирование архитектуры.
Разработка прототипа.
Тестирование.
Оценка качества.
Релиз.
Поддержка.
Таблица 1 – описания этапов проектирования.
Номер |
Название этапа |
Описание этапа |
1 |
Разработка документа о концепции и границах проекта. |
Документ содержит описание концепции, границы проекта, основные цели, планы и оценку рисков. Документ является основой для дальнейшей работы над проектом ПО. |
1.1 |
Анализ требований |
На этом этапе определяются требования к ПО, а также осуществляется анализ текущей ситуации, в которой будет использоваться ПО. |
1.2 |
Определение границ проекта |
В рамках этого шага определяются границы проекта, то есть конкретные параметры и ограничения, которые будут учитываться при создании ПО. Например, это могут быть ограничения по времени, бюджету, функциональности или совместимости. |
1.3 |
Разработка концепции |
На основе анализа требований и определения границ проекта разрабатывается концепция ПО, которая определяет основные цели и направления разработки. Концепция может включать в себя описание основных функций, планируемые сроки, возможные риски и т.д. |
1.4 |
Оценка рисков |
На этом этапе проводится оценка рисков, связанных с проектом. Определяются возможные проблемы и негативные последствия, которые могут возникнуть в процессе разработки, а также разрабатываются стратегии и планы для минимизации этих рисков. |
2 |
Проектирование архитектуры |
Определение общей структуры системы, выбор подходящих платформ и технологий, разработка схемы взаимодействия компонентов. |
3 |
Разработка прототипа |
Создание рабочего прототипа системы для демонстрации ключевых функций и проверки соответствия требованиям заказчика. |
3.1 |
Разработка Back-End части ПО |
На этом шаге создаётся часть приложения, которая отвечает за обработку данных и бизнес-логику приложения. Back-end разработка включает в себя проектирование и создание серверной архитектуры, базы данных, API (Application Programming Interface) и бизнес-логики приложения. |
Продолжение таблицы 1. |
||
3.2 |
Разработка Front-End части ПО |
В рамках этого этапа создаётся часть приложения, которая отвечает за пользовательский интерфейс программы. Front-end разработка включает в себя создание интерактивных элементов, таких как кнопки, поля ввода, выпадающие списки и т.д., а также визуального дизайн. |
4 |
Тестирование |
На этом этапе специалисты по тестированию проверяют работоспособность и соответствие требованиям разрабатываемого программного обеспечения. |
5 |
Оценка качества |
Процесс измерения и проверки соответствия программного обеспечения требованиям, стандартам и ожиданиям заказчика и конечных пользователей. |
6 |
Релиз |
Является завершающим этапом в жизненном цикле разработки программного обеспечения, на котором выпускается окончательная версия приложения для публичного использования. В рамках этого этапа осуществляется подготовка к выходу программного продукта на рынок. |
7 |
Поддержка |
Период времени после релиза программного обеспечения, когда команда разработчиков продолжает обеспечивать работоспособность и эффективность ПО, а также предоставляет техническую поддержку для пользователей. |
7.1 |
Исправление ошибок и багов |
Если пользователи обнаружат проблемы в работе ПО, то команда поддержки должна быстро исправить эти ошибки. |
7.2 |
Обновление и улучшение ПО |
Команда может выпускать обновления, чтобы улучшить производительность, добавить новые функции или исправить обнаруженные проблемы. |
Планирование
Для начала создадим виртуальные ресурсы, отражающие наш рабочий персонал и зададим им их гипотетическую цену за час работы.
Рис. 2. Виртуальные ресурсы и их стоимость.
После этого, разместим описанные в таблице задачи на диаграмме Ганта и прикрепим к ним соответствующий персонал и сделаем расчёт стоимости проекта.
Рис.
. Диаграмма Ганта. |
Рис.
. Расчёт стоимости проекта. |
Заключение
Было проведено планирование проекта, построена диаграмма Ганта. Были определены
трудовые затраты и удалось разделить некоторые задачи на параллельную работу. Стоимость проекта составила 689 000 рублей.