Поддомен: Backend/Frontend (мобильная разработка) · Роль эксперта: Архитектор ПО · Схема изложения: C
24 марта 2026 года Unihertz вывела на Kickstarter Titan 2 Elite — компактный Android-смартфон с клавиатурой в духе BlackBerry Bold, от $489 (для ранних бэкеров — $389), с отгрузкой уже с июня 2026-го. Для выпускника IT-направления это не курьёз, а рабочий сюжет: возвращение физического ввода ломает привычные сценарии для UI-фреймворков, автодополнения, accessibility-слоёв и бэкенда предзаказов. Если вы ищете живую тему для ВКР — здесь есть и мобильный клиент, и распределённая система, и измеримые метрики юзабилити. Разберём, как превратить новость в защищаемую работу, а не в реферат про «железки».
Да, и это нормальная практика. Поведение физической клавиатуры воспроизводится через adb shell input keyevent, Bluetooth-клавиатуру или эмулятор с проброшенным HID-профилем. В главе 3 достаточно описать методику стенда: реальное устройство + внешняя клавиатура + программный эмулятор событий. Комиссия оценивает воспроизводимость, а не цену гаджета.
Через измеримые метрики: время ввода фразы (сек), количество ошибок на 100 символов, SUS-опросник (System Usability Scale), p95 задержки обработки KeyEvent, потребление батареи на 1 час набора. Всё это ложится на ISO/IEC 25010 — характеристики usability и performance efficiency.
Публичная статистика кампании на Kickstarter (таймлайн сборов, число бэкеров, тиры), открытые датасеты Kaggle по crowdfunding, собственный ETJ-логгер, снимающий метрики с публичных страниц. ВАЖНО: перед скрейпингом сверьтесь с правилами платформы и опишите ограничения в разделе «Этические аспекты».
Сами нотации — из C4 Model и UML 2.5, а оформление рамок, шрифтов и штампов — по ГОСТ 19.701 (схемы алгоритмов) и ГОСТ 34.602 (ТЗ на АС). Это не противоречие: нотация международная, оформление — по отечественному стандарту. Нормоконтроль любит явное указание: «диаграмма выполнена в нотации C4, оформление по ГОСТ 19.701».
1. Архитектура Android-клиента для нестандартных устройств ввода.
Актуальность: выход Titan 2 Elite показывает спрос на физическую QWERTY на Android; стандартные приложения не оптимизированы под KeyEvent-навигацию.
Цель: спроектировать и реализовать Android-клиент (мессенджер или заметки) с полной поддержкой аппаратной клавиатуры.
Задачи: анализ событийной модели Android; проектирование слоя ввода; реализация на Jetpack Compose + MVVM; нагрузочное и юзабилити-тестирование.
Структура: Гл.1 — анализ платформы и аналогов, Гл.2 — проектирование (C4, UML-диаграммы классов и последовательностей), Гл.3 — реализация, замеры, SUS-опрос, выводы.
2. Backend предзаказов и аналитика краудфандинговой кампании.
Актуальность: кампания Titan 2 Elite собирает поток заявок и платежей; нужен сервис учёта и агрегации метрик в реальном времени.
Цель: разработать REST-сервис обработки предзаказов с дашбордом аналитики.
Задачи: спроектировать модель данных; реализовать API на Spring Boot; подключить очередь Kafka; настроить телеметрию OpenTelemetry.
Структура: Гл.1 — обзор рынка и требований, Гл.2 — архитектура сервиса и схема БД, Гл.3 — нагрузочные тесты, SLA, TCO.
3. Юзабилити физической QWERTY на мобильных платформах: измерение и оптимизация.
Актуальность: производители возвращают клавиатуру, но эмпирических данных по скорости и ошибкам ввода на Android мало.
Цель: построить методику оценки юзабилити и проверить её на 2–3 приложениях.
Задачи: сформировать метрики по ISO/IEC 25010; собрать выборку респондентов; провести A/B-тесты; интерпретировать статистику.
Структура: Гл.1 — теория HCI и стандарты, Гл.2 — методика эксперимента, Гл.3 — результаты, доверительные интервалы, рекомендации.
Опирайтесь на первичный источник: анонс на Kickstarter и обзор The Verge. Разберите три среза: технические характеристики (5G, Android, размеры), поведение рынка (ниша QWERTY-устройств), требования пользователей из комментариев бэкеров. Последнее — золото для раздела «Функциональные требования»: люди пишут, чего им не хватает в софте.
Минимум три диаграммы: C4-контекст (пользователь ↔ клиент ↔ бэкенд), UML-последовательность обработки нажатия и ER-модель БД. Логика ввода на аппаратной клавиатуре показывает зрелость архитектурного мышления:
// Kotlin, Compose-экран ввода
override fun onKeyDown(keyCode: Int, event: KeyEvent): Boolean {
return when {
event.isCtrlPressed && keyCode == KeyEvent.KEYCODE_A -> {
editor.selectAll(); true // Ctrl+A — выделить всё
}
event.isShiftPressed && keyCode == KeyEvent.KEYCODE_ENTER -> {
messageService.send(editor.text); true // Shift+Enter — отправить
}
keyCode == KeyEvent.KEYCODE_TAB -> {
focusManager.moveFocus(FocusDirection.Next); true
}
else -> super.onKeyDown(keyCode, event)
}
}
Схема взаимодействия компонентов (в тексте работы — C4 Level 2, здесь ASCII для наглядности):
[Пользователь c QWERTY-устройством]
│
▼
[Android-клиент — MVVM + Compose]
│ REST / WebSocket
▼
[Backend предзаказов — Spring Boot]
│
├──► [PostgreSQL]
└──► [Kafka] ──► [ClickHouse-аналитика]
Скучный вывод «приложение работает» защиту не вытянет. Нужны числа. Ниже — рабочая матрица, где каждая строка опирается на стандарт или публичный инструмент.
| Метрика | Формула / инструмент | Целевое значение |
|---|---|---|
| Скорость ввода | символы / мин, замер на 20 фразах | ≥ 85% от скорости на десктопе |
| Ошибки на 100 символов | кол-во правок Backspace | ≤ 3 |
| Задержка обработки | p95 KeyEvent → рендер, OpenTelemetry | < 50 мс |
| Юзабилити | SUS-опросник, n ≥ 12 | > 68 баллов |
| Энергопотребление | Battery Historian, 1 ч набора | ≤ 6% заряда |
keyCode недостаточно, опишите матрицу комбинаций.Источник: A BlackBerry you might actually want just landed on Kickstarter (опубликовано 2026-03-24)