Тема: Мобильное приложение для поиска командных проектов и разработчиков
Закажите новую по вашим требованиям
Представленный материал является образцом учебного исследования, примером структуры и содержания учебного исследования по заявленной теме. Размещён исключительно в информационных и ознакомительных целях.
Workspay.ru оказывает информационные услуги по сбору, обработке и структурированию материалов в соответствии с требованиями заказчика.
Размещение материала не означает публикацию произведения впервые и не предполагает передачу исключительных авторских прав третьим лицам.
Материал не предназначен для дословной сдачи в образовательные организации и требует самостоятельной переработки с соблюдением законодательства Российской Федерации об авторском праве и принципов академической добросовестности.
Авторские права на исходные материалы принадлежат их законным правообладателям. В случае возникновения вопросов, связанных с размещённым материалом, просим направить обращение через форму обратной связи.
📋 Содержание
Введение 5
1 Анализ предметной области 7
1.1 Обзор существующих решений 7
1.1.1 Upwork 7
1.1.2 FL.ru 9
1.1.3 DEV Community 10
1.1.4 GitHub 12
1.2 Недостатки существующих решений 13
1.3 Постановка задачи 13
1.4 Вывод по главе 14
2 Проектирование приложения 15
2.1 Определение функциональных требований 15
2.1.1 Аутентификация 16
2.1.2 Навигация 17
2.1.3 Просмотр проектов 18
2.1.4 Просмотр профилей 21
2.1.5 Функции чата 22
2.1.6 Диаграмма прецедентов 23
2.2 Структура приложения 24
2.2.1 Определение структуры 24
2.2.2 Структура представлений 25
2.2.3 Структура моделей представления 27
2.2.4 Структура моделей 28
2.3 Выводы по главе 31
3 Разработка приложения 32
3.1 Разработка модуля навигации 32
3.2 Использование RecyclerView и адаптеров 33
3.3 Разработка модуля аутентификации 33
3.4 Разработка модуля проектов 34
3.4.1 Список проектов 34
3.4.2 Поиск новых проектов 36
3.4.3 Создание и изменение страницы проекта 37
3.4.4 Страница проекта 38
3.4.5 Задачи проекта 39
3.4.6 Позиции проекта 40
3.4.7 Заявки на участие в проекте 41
3.5 Разработка модуля чатов 42
3.5.1 Список чатов 42
3.5.2 Окно чата 43
3.5.3 Список участников чата 43
3.6 Разработка модуля профилей 44
3.5.1 Просмотр профиля 44
3.5.2 Редактирования профиля 46
3.7 Вывод по главе 46
Заключение 47
Список сокращений 48
Список использованных источников 49
📖 Введение
При этом, с одной стороны, сами работодатели склонны принимать на работу именно опытных разработчиков, с высоким уровнем развития профессиональных навыков, а с другой, эти же работодатели называют одним из самых востребованных навыков молодых специалистов именно умение работать в команде, представлять и цивилизованно отстаивать свою точку зрения, то есть именно сферу т.н. «soft skills» [2, 3].
Сам по себе опыт работы над командным проектом призван помочь начинающему специалисту, во-первых, быстро приспособиться к работе в другом коллективе и над другим проектом и, во-вторых, развить профессиональные навыки в выбранной сфере.
Однако для начинающих специалистов получение опыта разработки в команде может оказаться сложной задачей. IT компании зачастую работают над коммерческими продуктами, и наём начинающего специалиста без развитых навыков работы в команде и углубленных знаний в определенной области может быть неоправданным риском. Таким образом, начинающим специалистам сложно найти возможность получения опыта работы в команде, так как им может не хватать навыков.
Чтобы улучшить свои профессиональные навыки, многие специалисты разрабатывают pet-проекты. Pet-проекты - это небольшие некоммерческие проекты, разрабатываемые программистами в своё свободное время, как способ попробовать для себя новую область, улучшить свои навыки или поэкспериментировать с новыми идеями [4].
Однако, чтобы завершить разработку любого проекта, могут потребоваться навыки, которые выходят за пределы компетенции одного разработчика. Естественным решением данной проблемы становится объединение с разработчиком, который специализируется на другой области. Таким образом, командная разработка общего pet-проекта, поможет получить не только требуемый опыт в разработке, но и опыт командной работы, а также такой проект можно добавить в портфолио разработчика.
Всё это приводит к необходимости создания площадки для начинающих специалистов, где они смогут взаимодействовать между собой и объединяться в команды для разработки общих pet-проектов.
Так как такая площадка должна быть основана в первую очередь на социальном взаимодействии пользователей, хорошей идей может быть разработка площадки, как мобильного приложения. Таким образом приложение будет более легкодоступным ввиду распространенности платформы. Смартфоны находятся всегда под рукой и таким образом приложение поможет оставаться на связи с командой во время работы над проектом.
Целью данной работы является разработка мобильного приложения для поиска командных проектов и разработчиков.
Для достижения этой цели необходимо выполнить данные задачи:
- Провести анализ схожих по функционалу приложений
- Определить функциональные требования к приложению
- Определить структуру приложения
- Выполнить разработку приложения
✅ Заключение
Был проведен обзор аналогов, а также был сформулирован ряд требований, предъявленных к мобильному приложении. На основе сформулированных требований были определены технологии разработки.
Было проведено проектирование системы, определена структура приложения, выбран шаблон архитектуры, функционал был разбит на модули.
Было разработано приложение под операционную систему Android, которое позволяет коммуницировать с пользователями разработчиками и объединятся в команды для работы над проектами.
Была реализована верстка и логика для необходимых модулей. А конкретно были реализованы модули: аутентификации, навигации, проектов, чата и профилей.
Была написана пояснительная записка в соответствии со стандартом организации СФУ СТУ 7.5-07-2021.
При отсутствии серверной части, тестовые данные сохраняются в репозиторий приложения, но с небольшим количеством доработок приложения в будущем можно легко модифицировать приложение на работу с API сервера, разработанного для приложения.
В дальнейшем рекомендуется добавление нового функционала и улучшения дизайна, а также разработка серверной составляющей, а также клиентов для других платформ, например iOS и web-клиент.



