2. Введение: немного обо мне
2
Минкевич Екатерина
Образование:
1. Белорусский государственный медицинский университет
2. Школа бизнеса Открытого Британского Университета
Место работы:
1. ISSoft/Coherent Solutions (Минск)
Опыт в проектах:
1. Outsource (области знаний – медицина, медицинское
страхование, образование, accessibility)
2. Продуктовая разработка (мобильные приложения)
3. Содержание
1. «Мобильный проект»: с чего начать?
2. Выбор типа приложения
3. Проектирование навигации
4. Использование жестов
5. Разрешения системы
6. Обратная связь с пользователем
7. Нефункциональные требования
3
5. Реальный проект: что можно понять за 5 минут
• Требования к потоковой передаче
данных по сотовым сетям
• Согласие пользователя перед отправкой
оповещений
• iPhone приложения должны работать на
iPad
5
6. У меня мобильный проект: с чего мне начать?
1. Требования App Store (App Store Review Guidelines)
2. Developer Policy Center (требования Play Store)
3. https://developer.apple.com
4. https://developer.android.com
5. iOS Human Interface Guidelines
6. Material Design для Android
6
7. Виды мобильных приложений: делаем выбор
7
Нативное Веб-приложение Гибридное
За •Оптимально работает с
датчиками устройства
•Может работать без
интернета
•Самая высокая скорость
работы
• Не нужно загружать из
магазина приложений
• Кроссплатформенность
• Простота разработки
• Кроссплатформенность
• Разработка быстрее
и дешевле, чем для
нативного
Против • Дорогая разработка (2
платформы)
• Необходимо
подключение
к интернету
• Ограничения дизайна
•Ограничения дизайна
9. Проектирование навигации
Составление плана навигации:
1. Определить перечень всех экранов
2. Понять, какие из них относятся к одной коллекции, а какие – к одному
сегменту
3. Создать вертикальные и латеральные связи
4. Вынести экраны одного уровня (верхнего) в Tab Bar
5. Продумать способы латерального переключения
9
11. Навигация: туда и обратно
Android:
• Back – на хронологически
предыдущую страницу
• Up – на родительскую
страницу
iPhone – необходимо
добавить кнопки: Back, Save,
Cancel, Done
11
12. Навигация: не запутаться в барах
Tab Bar (панель вкладок) традиционно
внизу на iOS, традиционно вверху для
Android
• Предназначен для верхнего уровня
навигации
• Не скрывать кнопки, не делать кнопки
неактивными
• Если больше 3-5 опций (или
планируется больше) – возможно,
стоит пересмотреть навигацию
• Достаточно большие иконки, чтобы
дотронуться, достаточно наглядные,
чтобы понять
12
Требование: обеспечить быстрый
доступ к основным экранам
приложения
13. Навигация: не запутаться в барах
Требование: обеспечить быстрый доступ
ко всем действиям пользователя
13
Status Bar: System
App Bar (Action Bar) (Android) ToolBar (iOS)
18. Разрешения системы
• iOS - в процессе выполнения
• Android до версии 6.0 –
одномоментно. После версии 6.0 – в
процессе выполнения
Необходимо для БА:
1. Учитывать перечень разрешений
2. Кастомизировать тексты
3. Предусмотреть ситуацию отказа
пользователя
18
20. Когда нужна обратная связь с пользователем?
Например, мы хотим сообщить пользователю что...
…есть риск совершения необратимого действия (требуется
подтверждение пользователя)
…произошло важное или интересное событие
…действие завершено (подтверждение не требуется)
…действие не завершено (и почему)
20
21. Предупреждения и возможность выбора
Когда требуется подтверждение или выбор пользователя
• Alert Dialog
• Action Sheet
21
22. Push-нотификации
22
Когда произошло важное или интересное событие
• Регламентируются требованиями AppStore/PlayStore
• Должны быть информативны
• Предполагают переход к приложению
• Сопровождаются звуком и (или) вибрацией
23. Тосты
23
Используются для оповещений о действиях в приложении, которые не
требуют подтверждения от пользователя (например, действие
выполнено успешно или не может быть выполнено)
• Лаконичные
• Исчезают самостоятельно
26. Правила синхронизации
Скорее всего, понадобятся требования для случаев:
1. Одновременная работа на нескольких устройствах
2. Одновременная работа (устройство в сети + не в сети)
3. Ограничение доступа к части функций при работе вне сети
28. Нефункциональные требования
Например…
• Требования к соединению и поддержке различных сетевых
протоколов
• Использование батареи
• Использование памяти
• Возможность запуска на планшете
• Производительность (в том числе время очистки кеша)
• Ограничения стриминга
28