\documentclass[a4paper, final]{article}
%\usepackage{literat} % Нормальные шрифты
\usepackage[14pt]{extsizes} % для того чтобы задать нестандартный 14-ый размер шрифта
\usepackage{tabularx}
\usepackage{booktabs}
\usepackage[T2A]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[russian]{babel}
\usepackage{amsmath}
\usepackage[left=25mm, top=20mm, right=20mm, bottom=20mm, footskip=10mm]{geometry}
\usepackage{ragged2e} %для растягивания по ширине
\usepackage{setspace} %для межстрочно   го интервала
\usepackage{moreverb} %для работы с листингами
\usepackage{indentfirst} % для абзацного отступа
\usepackage{moreverb} %для печати в листинге исходного кода программ
\usepackage{pdfpages} %для вставки других pdf файлов
\usepackage{tikz}
\usepackage{graphicx}
\usepackage{afterpage}
\usepackage{longtable}
\usepackage{float}
\usepackage{xcolor}



% \usepackage[paper=A4,DIV=12]{typearea}
\usepackage{pdflscape}
% \usepackage{lscape}

\usepackage{array}
\usepackage{multirow}

\renewcommand\verbatimtabsize{4\relax}
\renewcommand\listingoffset{0.2em} %отступ от номеров строк в листинге
\renewcommand{\arraystretch}{1.4} % изменяю высоту строки в таблице
\usepackage[font=small, singlelinecheck=false, justification=centering, format=plain, labelsep=period]{caption} %для настройки заголовка таблицы
\usepackage{subcaption} %для подфигур
\usepackage{listings} %листинги
\usepackage{xcolor} % цвета
\usepackage{hyperref}% для гиперссылок
\usepackage{enumitem} %для перечислений

\newcommand{\specialcell}[2][l]{\begin{tabular}[#1]{@{}l@{}}#2\end{tabular}}


\setlist[enumerate,itemize]{leftmargin=1.2cm} %отступ в перечислениях

\hypersetup{colorlinks,
    allcolors=[RGB]{010 090 200}} %красивые гиперссылки (не красные)

% подгружаемые языки — подробнее в документации listings (это всё для листингов)
\lstloadlanguages{ SQL}
% включаем кириллицу и добавляем кое−какие опции
\lstset{tabsize=2,
    breaklines,
    basicstyle=\footnotesize,
    columns=fullflexible,
    flexiblecolumns,
    numbers=left,
    numberstyle={\footnotesize},
    keywordstyle=\color{blue},
    inputencoding=cp1251,
    extendedchars=true
}
\lstdefinelanguage{MyC}{
    language=SQL,
%    ndkeywordstyle=\color{darkgray}\bfseries,
%    identifierstyle=\color{black},
%    morecomment=[n]{/**}{*/},
%    commentstyle=\color{blue}\ttfamily,
%    stringstyle=\color{red}\ttfamily,
%    morestring=[b]",\
%    showstringspaces=false,
%    morecomment=[l][\color{gray}]{//},
    keepspaces=true,
    escapechar=\%,
    texcl=true
}

\textheight=24cm % высота текста
\textwidth=16cm % ширина текста
\oddsidemargin=0pt % отступ от левого края
\topmargin=-1.5cm % отступ от верхнего края
\parindent=24pt % абзацный отступ
\parskip=5pt % интервал между абзацами
\tolerance=2000 % терпимость к "жидким" строкам
\flushbottom % выравнивание высоты страниц


% Настройка листингов
\lstset{
    language=python,
    extendedchars=\true,
    inputencoding=utf8,
    keepspaces=true,
    % captionpos=b, % подписи листингов снизу
}

\begin{document} % начало документа



    % НАЧАЛО ТИТУЛЬНОГО ЛИСТА
    \begin{center}
        \hfill \break
        \hfill \break
        \normalsize{МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ\\
            федеральное государственное автономное образовательное учреждение высшего образования «Санкт-Петербургский политехнический университет Петра Великого»\\[10pt]}
        \normalsize{Институт компьютерных наук и кибербезопасности}\\[10pt]
        \normalsize{Высшая школа технологий искусственного интеллекта}\\[10pt]
        \normalsize{Направление: 02.03.01 <<Математика и компьютерные науки>>}\\

        \hfill \break
        \hfill \break
        \hfill \break
        \large{Лабораторная работа №1}\\
        \large{разработка интерфейса пользователя для интерактивного приложения по теме}\\
        \large{<<Организация семейного похода за грибами>>}\\
        \large{по дисциплине}\\
        \large{<<Разработка человеко-машинного интерфейса>>}\\

        \hfill \break
        \hfill \break
    \end{center}

    \small{
        \begin{tabular}{lrrl}
            \!\!\!Студент, & \hspace{2cm} & & \\
            \!\!\!группы 5130201/20101 & \hspace{2cm} & \underline{\hspace{3cm}} &Тищенко А. А. \\\\
            \!\!\!Преподаватель & \hspace{2cm} &  \underline{\hspace{3cm}} &  Курочкин М. А. \\\\
            &&\hspace{4cm}
        \end{tabular}
        \begin{flushright}
            <<\underline{\hspace{1cm}}>>\underline{\hspace{2.5cm}} 2025г.
        \end{flushright}
    }

    \hfill \break
    % \hfill \break
    \begin{center} \small{Санкт-Петербург, 2025} \end{center}
    \thispagestyle{empty} % выключаем отображение номера для этой страницы

    % КОНЕЦ ТИТУЛЬНОГО ЛИСТА
    \newpage

    \tableofcontents

    \newpage
    \section*{Введение}
    \addcontentsline{toc}{section}{Введение}
    Работа посвящена проектированию интерфейса приложения, помогающего семье организовать поход за грибами: от планирования до подведения итогов. Приложение рассчитано на семьи, которые хотят собирать грибы в пригородных лесах и координироваться в реальном времени. Оно объединяет подготовку (маршрут, снаряжение, приглашения), сопровождение в пути (навигация, контрольные точки, уведомления) и подведение итогов (отчёты, архив маршрутов, семейная «корзина»). 
    
    Рассматриваются особенности взаимодействия людей разных возрастов, ограничения лесной среды и способы сделать навигацию, связь и обмен находками удобными. Основные задачи исследования: структурировать потребности пользователей, обозначить типовые сценарии и оценить, какие интерфейсные решения снизят риски и упростят работу с приложением. Ключевые проблемы --- нестабильная связь, различия в цифровой грамотности и необходимость оперативно действовать в случае ЧП.

    \newpage
    \section{Описание предметной области}
    % \addcontentsline{toc}{section}{Описание предметной области}

    Походы за грибами представляют собой сочетание прогулки на природе, наблюдения за лесной средой и сбора съедобных грибов. Этот вид отдыха подходит для семей благодаря умеренной физической нагрузке, исследовательскому интересу и возможности приобщения детей к совместному отдыху на природе. Успешная организация такого похода требует знаний о сезонности, типах лесов, правилах безопасного сбора, а также правильной подготовке участников.
    
    \subsection*{Особенности грибных походов}
    
    Грибные походы проводятся в лесных массивах с благоприятными условиями для произрастания грибов: смешанных и хвойных лесах, рядом с влажными низинами, опушками и моховыми участками. Такой тип ландшафта распространён во многих регионах России.
    
    Сезонность является ключевым фактором: массовое появление грибов обычно происходит после устойчивых дождей при температуре около 15–20°С. Наиболее насыщенный сезон приходится на конец лета и осень, когда в лесах можно встретить как ранние сыроежки, так и поздние осенние опята.
    
    \subsection*{Основные виды грибов}
    
    В процессе семейного похода предпочтение отдаётся хорошо различимым съедобным видам, например, белому грибу (Рис.~\ref{fig:belyj}), подберёзовику (Рис.~\ref{fig:podberezovik}), подосиновику (Рис.~\ref{fig:podosinovik}), лисичке (Рис.~\ref{fig:lisichki}), маслёнку (Рис.~\ref{fig:maslenok}). Эти виды распространены в большинстве российских регионов. В хвойных массивах особенно часто встречаются лисички и маслята, тогда как в более зрелых сосновых борах нередко попадаются белые грибы.
    
    Опасность представляют ядовитые двойники: ложные лисички (Рис.~\ref{fig:lozhnye_lisichki}), желчный гриб, бледная поганка (Рис.~\ref{fig:blednaya_poganka}). Поэтому в семейных походах особое внимание уделяется правильному распознаванию грибов (см. Рис.~\ref{fig:belyj}--\ref{fig:blednaya_poganka}).
    
    % Картинки грибов
    \begin{figure}[h!]
        \centering
        \includegraphics[width=0.35\textwidth]{img/белый.jpg}
        \caption{Белый гриб}
        \label{fig:belyj}
    \end{figure}
    
    \begin{figure}[h!]
        \centering
        \includegraphics[width=0.4\textwidth]{img/лисички.jpg}
        \caption{Лисички}
        \label{fig:lisichki}
    \end{figure}
    
    \begin{figure}[h!]
        \centering
        \includegraphics[width=0.4\textwidth]{img/ложные_лисички.jpg}
        \caption{Ложные лисички (ядовитый гриб)}
        \label{fig:lozhnye_lisichki}
    \end{figure}
    
    \begin{figure}[h!]
        \centering
        \includegraphics[width=0.3\textwidth]{img/подберёзовик.jpg}
        \caption{Подберёзовик}
        \label{fig:podberezovik}
    \end{figure}
    
    \begin{figure}[h!]
        \centering
        \includegraphics[width=0.3\textwidth]{img/подосиновик.jpg}
        \caption{Подосиновик}
        \label{fig:podosinovik}
    \end{figure}
    
    \begin{figure}[h!]
        \centering
        \includegraphics[width=0.4\textwidth]{img/маслёнок.jpg}
        \caption{Маслёнок}
        \label{fig:maslenok}
    \end{figure}
    
    \begin{figure}[h!]
        \centering
        \includegraphics[width=0.3\textwidth]{img/бледная_поганка.jpg}
        \caption{Бледная поганка (ядовитый гриб)}
        \label{fig:blednaya_poganka}
    \end{figure}
    
    \newpage
    \phantom{text}
    \newpage
    \subsection*{Подготовка к походу}
    
    Организация семейного грибного похода начинается с выбора района, анализа погодных условий и планирования маршрута. Лесные массивы, расположенные рядом с удобными транспортными путями, позволяют сократить время в пути и уделить больше внимания сбору грибов. В крупных городах, подобных Санкт\mbox{-}Петербургу, этому способствует наличие лесов на удалении 50--90 минут езды, что делает походы возможными даже в формате однодневных выездов.
    
    Перед выходом необходимо проверить прогноз погоды, наличие снаряжения и заряд мобильных устройств. Стандартная экипировка включает нож для грибов, корзину или вентилируемую тару, удобную непромокаемую одежду, защиту от насекомых и небольшую аптечку. Семьи часто берут с собой дополнительно сменную одежду и перекус, особенно при походах с детьми.
        
    \subsection*{Процесс поиска и сбора}
    
    Во время похода участники ориентируются по тропам, лесным просекам, ручьям и естественным ориентирам. В регионах с густой лесной сетью, важно уделять внимание ориентации, так как ландшафт может быть монотонным. Семейные группы обычно двигаются медленно, позволяя детям участвовать в поиске грибов и наблюдении за природой.
    
    Собранный гриб аккуратно срезают ножом (Рис.~\ref{fig:srezanie}) или выкручивают, чтобы сохранить грибницу и избежать её повреждения. Грибы помещают в корзину, где обеспечивается циркуляция воздуха — это особенно важно в районах с повышенной влажностью.
    
    % Картинка процесса сбора
    \begin{figure}[h!]
        \centering
        \includegraphics[width=0.5\textwidth]{img/срезание_гриба_ножом.jpg}
        \caption{Срезание гриба ножом}
        \label{fig:srezanie}
    \end{figure}
    
    \subsection*{Безопасность при семейных походах}
    
    Безопасность — ключевой аспект. Участники должны соблюдать дистанцию, поддерживать визуальный или голосовой контакт и не отходить далеко от маршрута. Семьи активно используют мобильные приложения с картами, особенно в лесах, где местность может выглядеть однообразно и легко потерять ориентиры.
    
    Основные меры безопасности включают использование яркой одежды, обработку от клещей, внимательный выбор маршрута и периодические переклички. Не рекомендуется собирать незнакомые грибы или заходить в заболоченные участки, особенно характерные для северных регионов с высоким уровнем влажности.
    
    
    \subsection*{Обработка собранных грибов}
    
    После возвращения грибы сортируют, удаляют повреждённые или сомнительные экземпляры и проводят первичную обработку. Влажный климат многих регионов приводит к тому, что грибы быстро теряют свежесть, поэтому их очистку нежелательно откладывать. Большинство видов требует термической обработки перед употреблением.
    

    \newpage
    \section{Цели приложения}
    Цель приложения --- сделать семейные походы за грибами безопасными, продуктивными и комфортными для всех участников независимо от их возраста и цифровой грамотности. Приложение ориентировано на походы как форму семейного отдыха и совместного времяпрепровождения на природе; сбор грибов рассматривается как приятное дополнение, а не как основная задача заготовки. Приложение призвано превратить поход из разрозненной активности в слаженное семейное мероприятие с чётким планированием, надёжной координацией и возможностью сохранить положительные воспоминания в виде архива маршрутов и находок. Приложение должно помогать пользователям как на этапе планирования, так и на этапе проведения похода.
    
    Этап планирования похода включает в себя выбор даты и времени начала похода, определение места сбора и списка участников, построение маршрута с контрольными точками, отправку приглашений и согласование с участниками времени и плана похода. Организатор должен определить транспорт и способ, как добраться до точки сбора, проверить погодные условия на выбранную дату. Необходимо составить список снаряжения и запасной одежды, распределить ответственность за их подготовку между участниками и проверить готовность перед началом похода. Если в походе участвуют дети, требуется определить ответственного взрослого за каждого ребёнка.
    
    В ходе этапа проведения похода участники добираются до точки начала похода, осуществляют навигацию в лесу с помощью карт и компаса, используя построенный маршрут и контрольные точки, занимаются сбором грибов, стараются поддерживать связь друг с другом и отслеживать местоположение членов группы для обеспечения безопасности.

    \section{Заинтересованные лица}
    \begin{itemize}
        \item \textbf{Родители-участники похода} --- взрослые члены семьи возрастом от 30 до 50 лет, непосредственно участвующие в сборе грибов и отвечающие за безопасность детей.
        
        \item \textbf{Дети и подростки} --- младшие участники похода возрастом от 10 до 18 лет.
        
        \item \textbf{Пожилые родственники-грибники} --- опытные грибники старшего поколения возрастом от 60 лет.

        \item \textbf{Организатор похода} --- ответственное лицо (обычно один из родителей), координирующее планирование и проведение похода.
    \end{itemize}

    \section{Ожидания заинтересованных лиц}
    \begin{itemize}
        \item \textbf{Родители-участники} хотят обеспечить безопасность детей, не потеряться самим, иметь возможность быстро связаться в случае разделения группы. Ожидают простой интерфейс с крупными элементами, офлайн-карту и быстрый доступ к тревожной кнопке. Важна возможность видеть местоположение всех членов семьи.
        
        \item \textbf{Дети и подростки} хотят весело провести время, найти свои первые грибы, не отстать от взрослых и получить признание за находки. Ожидают интересный и понятный интерфейс с игровыми элементами, возможность делиться фотографиями находок и получать достижения за вклад в общую корзину.
        
        \item \textbf{Пожилые родственники} хотят поделиться опытом и знаниями о грибных местах, передать традиции, при этом комфортно пользоваться приложением. Ожидают крупные шрифты, минимальное число действий на экране.
        
        \item \textbf{Организатор} хочет эффективно спланировать маршрут, проконтролировать сбор снаряжения, координировать действия группы. Ожидает инструменты совместного планирования: систему приглашений, чек-лист снаряжения, контроль состава группы, возможность отслеживать местоположение всех участников и быстро реагировать на отклонения от плана.
        
    \end{itemize}

    % \section{Критерии оценки результата}
    % Успешность приложения оценивается по достижению каждой из поставленных целей через следующие измеримые показатели:
    
    % \textbf{Безопасность походов:}
    % \begin{itemize}
    %     \item Время отправки экстренного сигнала SOS с координатами --- не более 3 секунд с момента нажатия кнопки.
    %     \item Доля успешных отправок координат при слабой связи (2G/EDGE) --- не менее 90\%.
    %     \item Процент участников, чьё местоположение видно организатору в реальном времени --- не менее 95\%.
    %     \item Среднее время обнаружения значительного отклонения от маршрута (более 500 м) --- не более 2 минут.
    % \end{itemize}
    
    % \textbf{Продуктивность и эффективность:}
    % \begin{itemize}
    %     \item Время планирования похода от начала до отправки приглашений --- не более 5 минут.
    %     \item Доля походов с заполненным чек-листом снаряжения --- не менее 80\%.
    %     \item Процент найденных грибов с фотофиксацией и геометками --- не менее 60\%.
    %     \item Количество повторных походов на основе сохранённых маршрутов --- увеличение на 40\% по сравнению с планированием «с нуля».
    % \end{itemize}
    
    % \textbf{Комфорт и удобство использования:}
    % \begin{itemize}
    %     \item Субъективная удовлетворённость пользователей (Net Promoter Score) --- не менее 40.
    %     \item Оценка удобства интерфейса (System Usability Scale) --- не менее 75 баллов.
    %     \item Количество критических ошибок при выполнении основного сценария --- не более одной на пользователя.
    %     \item Доля пользователей, успешно завершивших первый поход без обращения в поддержку --- не менее 85\%.
    % \end{itemize}
    
    % \textbf{Доступность для разных возрастов:}
    % \begin{itemize}
    %     \item Время освоения базовых функций (создание маршрута, отправка SOS) пожилыми пользователями (65+) --- не более 10 минут с инструкцией.
    %     \item Успешность выполнения критических задач детьми (10--14 лет) без помощи взрослых --- не менее 90\%.
    %     \item Доля пожилых пользователей, использующих голосовые подсказки --- не менее 60\%.
    % \end{itemize}
    
    % \textbf{Работа в условиях ограниченной связи:}
    % \begin{itemize}
    %     \item Процент функций, доступных в полностью офлайн-режиме --- не менее 70\%.
    %     \item Успешность синхронизации данных после восстановления связи --- не менее 95\%.
    %     \item Объём предварительно закешированных карт на типовой поход --- не более 50 МБ.
    % \end{itemize}
    
    % \textbf{Семейная интеграция и вовлечённость:}
    % \begin{itemize}
    %     \item Среднее количество участников в походе --- не менее 3 человек.
    %     \item Доля походов с активным участием двух и более поколений --- не менее 70\%.
    %     \item Количество записей в семейном архиве за сезон (май--октябрь) --- не менее 5 походов на семью.
    % \end{itemize}

    \section{Планируемые результаты использования приложения}
    
    \textbf{Повышение безопасности участников походов:}
    \begin{itemize}
        \item Снижение числа случаев потери ориентации и заблудившихся участников благодаря обмену геометками в реальном времени, контрольным точкам и автоматическим уведомлениям об отклонениях от маршрута.
        \item Сокращение времени реагирования на экстренные ситуации за счёт мгновенной отправки координат службам спасения и волонтёрам с информацией о составе группы и состоянии участников.
        \item Снижение рисков для детей и пожилых участников через постоянный мониторинг их местоположения родителями и организатором похода.
    \end{itemize}

    \textbf{Улучшение качества семейного отдыха:}
    \begin{itemize}
        \item Снижение стресса и тревожности у организатора и участников благодаря структурированному планированию, автоматическим напоминаниям и контролю готовности к походу.
        \item Упрощение координации группы в лесу через визуализацию местоположения всех участников на карте.
        \item Повышение вовлечённости всех членов семьи в совместную активность за счёт общей корзины находок, обмена фотографиями и возможности отмечать интересные места.
        \item Сокращение времени на организационные вопросы (сбор снаряжения, согласование времени, выбор маршрута) через централизованное планирование и чек-листы.
        \item Сохранение приятных воспоминаний через архив маршрутов с фотографиями и заметками, что мотивирует к повторным походам и формированию семейных традиций.
    \end{itemize}
    
    
    \section{Описание технической платформы}
    Приложение ориентировано на мобильные устройства с операционными системами Android и iOS, оснащённые модулем GPS для определения местоположения, фотокамерой. Мобильная версия является основной, поскольку участники похода используют телефоны непосредственно в лесу для навигации, фотофиксации грибов и экстренной связи.
    
    При проектировании необходимо учесть специфические условия эксплуатации. В лесной местности следует ожидать нестабильное или полностью отсутствующее покрытие мобильной сети, поэтому критически важные функции должны работать в офлайн-режиме с последующей синхронизацией данных. Устройства часто используются в перчатках, при плохой освещённости или под дождём, что требует крупных элементов управления и высокой контрастности интерфейса. Необходимо минимизировать энергопотребление, так как походы длятся несколько часов без возможности подзарядки, а GPS-модуль и постоянная работа экрана существенно расходуют батарею.


    \section{Формулировка требований к системе}
    
    \textbf{Требования к автономной работе и офлайн-режиму:}
    \begin{itemize}
        \item Приложение должно поддерживать работу в офлайн-режиме с предварительным кешированием карт выбранного лесного массива (объём 30--50 МБ на регион).
        \item Система должна обеспечивать работу основных функций (навигация, фиксация находок, мониторинг группы) без подключения к интернету с последующей синхронизацией данных при восстановлении связи.
        \item Приложение должно автоматически переключаться на компасный режим навигации при слабом GPS-сигнале с указанием направления к последней известной контрольной точке.
    \end{itemize}
    
    \textbf{Требования к планированию и организации:}
    \begin{itemize}
        \item Система должна автоматизировать рутинные операции: расчёт времени прохождения маршрута, проверку погоды, напоминания о снаряжении.
        \item Приложение должно предоставлять инструменты совместного планирования: систему приглашений, чек-листы снаряжения с распределением ответственности, контроль состава группы.
        \item Система должна автоматически рассчитывать примерное время прохождения между контрольными точками и общую длительность похода.
        \item Приложение должно отправлять автоматические напоминания участникам о проверке снаряжения за 2 часа до выхода и о зарядке устройств за 5 часов.
    \end{itemize}
    
    \textbf{Требования к навигации и координации:}
    \begin{itemize}
        \item Система должна отображать местоположение всех участников группы на карте в реальном времени с обновлением позиций каждые 30 секунд.
        \item Приложение должно автоматически отправлять уведомления организатору при отклонении участника от группы более чем на заданное расстояние: для детей — 150 метров, для взрослых — 250 метров, для пожилых участников — 200 метров.
        \item Система должна предоставлять голосовые подсказки с направлением к контрольной точке, предупреждениями об отклонении от маршрута и напоминаниями о времени встречи.
    \end{itemize}
    
    \textbf{Требования к безопасности и экстренным ситуациям:}
    \begin{itemize}
        \item Приложение должно обеспечивать отправку сигнала SOS с точными GPS-координатами, составом группы, запасом батареи, последней контрольной точкой и историей перемещений через интеграцию с системой «Система-112». 
        \item Кнопка SOS должна быть доступна с любого экрана приложения и работать даже при минимальной связи.
        \item Приложение должно предоставлять таймер обратного отсчёта 5 секунд с возможностью отмены для предотвращения случайных нажатий кнопки SOS.
    \end{itemize}
    
    \textbf{Требования к интерфейсу и доступности:}
    \begin{itemize}
        \item Система должна предоставлять крупные элементы управления и высокую контрастность интерфейса для использования в перчатках, при плохой освещённости или под дождём.
    \end{itemize}
    
    \textbf{Требования к фиксации и учёту находок:}
    \begin{itemize}
        \item Система должна автоматически сохранять GPS-координаты и время и погодные условия.
        \item Приложение должно создавать общую семейную корзину с отображением всех находок в реальном времени и указанием автора каждой находки.
    \end{itemize}
    
    \textbf{Требования к архивированию и отчётности:}
    \begin{itemize}
        \item Приложение должно сохранять пройденный GPS-трек, общее время и расстояние похода, количество и авторство находок.
        \item Приложение должно поддерживать сохранение маршрутов как шаблонов для повторного использования.
        \item Приложение должно предоставлять функции для экспорта и отправки фотографий находок.
    \end{itemize}
    
    \textbf{Технические требования:}
    \begin{itemize}
        \item Приложение должно поддерживать мобильные устройства с операционными системами Android и iOS, оснащённые модулем GPS и фотокамерой.
    \end{itemize}

    \section{Модель пользователей приложения}
    
    \textbf{Основные персонажи:}
    
    \textbf{Мария Петрова, 38 лет --- организатор семейных походов (персонаж 1).} Проживает в Санкт-Петербурге, Калининский район, работает менеджером в крупной компании. Уверенный пользователь смартфона, активно использует навигаторы, мессенджеры и облачные сервисы. Замужем, двое детей (12 и 7 лет). Семья выезжает за грибами 2--3 раза за сезон, обычно по выходным в сентябре-октябре.
    
    \textit{Типичный маршрут:} электричка с Финляндского вокзала до одной из станций Всеволожского района (Токсово, Каменка), время в пути около 2--3 часов. Далее пешком 15--25 минут до знакомых мест в смешанном лесу. Общая продолжительность похода 6--7 часов, включая дорогу и сбор грибов.
    
    \textit{Цели и потребности:} эффективно организовать поход --- согласовать дату и состав участников, создать маршрут и чек-лист снаряжения, убедиться, что все взяли необходимое снаряжение. Во время похода контролировать местоположение детей в лесу, иметь возможность быстро отправить сигнал о помощи. Опасается потерять из виду младшую дочь или отца, переживает за разрядку телефонов. Хочет сохранять маршруты для повторных походов и вести семейную статистику находок.
    
    \vspace{0.3cm}
    
    \textbf{Иван Семёнович Петров, 67 лет --- опытный грибник, дедушка (персонаж 2).} Пенсионер, всю жизнь прожил в Ленинградской области. Собирает грибы с детства, знает грибные места в окрестностях Комарово, Солнечного и Репино. Использует кнопочный телефон для звонков, недавно получил в подарок от дочери бюджетный Android-смартфон, но осваивает его медленно.
    
    
    \textit{Цели и потребности:} поделиться знаниями о грибных местах с внуками, научить их отличать съедобные грибы от ядовитых, показать секретные полянки, где он собирает грибы много лет. Хочет чувствовать себя безопасно в лесу, иметь возможность вызвать помощь простым действием (одна кнопка), не разбираться в сложных меню. Важно крупное отображение информации, голосовые подсказки. Готов использовать смартфон, если интерфейс простой и понятный.
    
    \vspace{0.3cm}
    
    \textbf{Алиса Петрова, 12 лет --- школьница, любительница фотографии (персонаж 3).} Учится в 7 классе, живёт с родителями в Калининском районе. Активный пользователь смартфона, любит фотографировать природу, общается с друзьями в мессенджерах, играет в мобильные игры. В походы ездит с родителями и дедушкой, для неё это интересное приключение и возможность сделать красивые фото для соцсетей.
    
    \textit{Типичный маршрут:} сопровождает семью в походы, обычно идёт рядом с мамой или дедушкой. Любит исследовать окрестности, но иногда увлекается и отходит далеко. После нескольких случаев, когда её искали 15--20 минут, родители настаивают на постоянной связи через приложение.
    
    \textit{Цели и потребности:} весело провести время, найти необычные грибы и сфотографировать их для коллекции, получить похвалу от родителей и дедушки за находки. Хочет видеть своё местоположение относительно семьи, делиться фотографиями находок в семейном чате. Не любит, когда родители слишком контролируют, но понимает необходимость безопасности.
    
    \vspace{0.3cm}
    
    \textbf{Общий контекст использования приложения:} походы проходят в лесных массивах Всеволожского района Ленинградской области (Токсово, Каменка, Васкелово). Местность холмистая, преимущественно сосновые и смешанные леса, множество озёр. Покрытие мобильной сети нестабильное: у станций и населённых пунктов есть 4G, в глубине леса сигнал слабый или отсутствует. Погода осенью переменчива: температура +5..+15°C, часто дожди и туманы, необходимы тёплая одежда и перчатки. Световой день короткий (в октябре темнеет к 18:00), поэтому важно успеть вернуться до темноты. Устройства находятся в чехлах, карманах курток, рюкзаках, часто используются в перчатках при плохой освещённости.

    % \section{Ментальная модель пользователя, метафоры и идиомы}
    % Пользователи воспринимают поход как совместное мероприятие с чёткими точками встречи и таймерами возвращения. Интерфейс опирается на метафоры: \textit{карта тропы} (основной экран с маршрутом), \textit{корзина} для списка найденных грибов, \textit{поляна} как место встречи группы и общения (семейный чат). Идиомы: перетаскивание контрольных точек, чек-лист с галочками, крупная красная кнопка SOS, значок компаса для ориентации.

    \section{Квалификация пользователя}
    
    Квалификация пользователей приложения рассматривается по двум ключевым параметрам: владение цифровыми технологиями (навигация, использование мобильных приложений, работа с картами и геолокацией) и знание предметной области (грибы, лесная местность, правила безопасного сбора). Идеальный пользователь должен сочетать оба навыка, однако в реальности семейные группы объединяют людей с разным уровнем компетенций, которые дополняют друг друга: кто-то является экспертом в грибах, но слабо владеет технологиями, другие уверенно работают с приложениями, но нуждаются в консультациях по определению видов.
    
    \textbf{Мария (персонаж 1)} --- уверенный пользователь цифровых технологий: свободно владеет мессенджерами, навигаторами, облачными сервисами, быстро осваивает новые приложения. В грибах разбирается на базовом уровне: знает основные съедобные виды (белые, подосиновики, лисички), но в сложных случаях полагается на опыт отца или консультируется по справочникам. Умеет читать карты и пользоваться GPS-навигацией.
    
    \textbf{Иван Семёнович (персонаж 2)} --- эксперт в грибной охоте с 50-летним стажем. Безошибочно определяет десятки видов грибов, знает сезоны плодоношения, особенности местности и секретные полянки, накопленные за годы походов. Передаёт традиционные знания о бережном сборе и правилах поведения в лесу. При этом цифровые технологии даются ему сложно: только начал осваивать смартфон, нуждается в крупном шрифте, голосовых подсказках и простых интерфейсах без вложенных меню. Может выполнять простые действия (нажать кнопку SOS, посмотреть карту), но настройку приложения доверяет внучке.
    
    \textbf{Алиса (персонаж 3)} --- продвинутый пользователь смартфона для своего возраста: уверенно работает с мессенджерами, соцсетями, камерой, играми. Быстро осваивает новые приложения, понимает интерфейсы, может помочь дедушке разобраться с телефоном. В грибах пока новичок: знает на вид несколько распространённых видов (белые, мухоморы, лисички), но постепенно учится у дедушки. Любит фотографировать находки и потом вместе с семьёй определять виды. Хорошо ориентируется по карте на телефоне, понимает принципы геолокации.
    

    \section{Задачи, решаемые приложением}
    
    Приложение решает комплекс задач, охватывающих все этапы семейного похода за грибами: от предварительной подготовки до сохранения результатов. Задачи сформулированы исходя из ожиданий заинтересованных лиц и специфики использования приложения в условиях лесной местности с ограниченной связью.
    
    \textbf{Задачи этапа планирования и подготовки:}
    \begin{itemize}
        \item \textbf{Определение параметров похода} --- помочь организатору выбрать и зафиксировать дату и время начала похода, точку сбора участников и место проведения.
        
        \item \textbf{Планирование логистики} --- показать организатору варианты транспорта до точки сбора с расписанием электричек от ближайших станций, рассчитать время в пути до точки сбора.
        
        \item \textbf{Информирование о погодных условиях} --- отобразить прогноз погоды на выбранную дату, время восхода и захода солнца, предупредить о неблагоприятных условиях (дождь, низкая температура) и дать рекомендации по снаряжению.
        
        \item \textbf{Формирование группы и согласование плана} --- обеспечить отправку приглашений всем участникам с указанием даты, времени, точки сбора и маршрута. Каждый участник должен видеть план похода.
        
        \item \textbf{Построение маршрута} --- предоставить инструменты для создания маршрута с контрольными точками, автоматически рассчитать расстояния и время прохождения между точками, общую продолжительность похода.
        
        \item \textbf{Совместная подготовка снаряжения} --- обеспечить возможность распределения ответственности за снаряжение между участниками. Каждый член семьи должен видеть свои задачи и подтверждать их выполнение.
        
        \item \textbf{Обеспечение автономности} --- предоставить возможность предварительной загрузки офлайн-карт, маршрутов и справочной информации о грибах, чтобы критически важные функции работали без подключения к интернету в лесу.
    \end{itemize}
    
    \textbf{Задачи этапа проведения похода:}
    \begin{itemize}
        \item \textbf{Поддержание координации группы} --- позволить всем участникам видеть местоположение друг друга и своевременно получать уведомления о критических событиях (кто-то отстал, пора возвращаться, приближается темнота).
        
        \item \textbf{Фиксация и учёт находок} --- обеспечить простой способ документирования найденных грибов с автоматическим сохранением координат, времени и фотографий. Создавать общую семейную корзину, где все видят вклад каждого участника, что повышает вовлечённость и мотивацию.
    \end{itemize}
    
    \textbf{Задачи обеспечения безопасности:}
    \begin{itemize}
        \item \textbf{Быстрое реагирование на экстренные ситуации} --- обеспечить мгновенную отправку сигнала о помощи с точными координатами, составом группы и другой критически важной информацией в службы спасения. Кнопка SOS должна быть доступна с любого экрана и работать даже при минимальной связи.
        
        \item \textbf{Интеграция с профессиональными службами спасения} --- автоматически передавать структурированные данные о группе в систему 112 при экстренном вызове.

    \end{itemize}

    \section{Описание основных процессов}
    
    Приложение поддерживает полный цикл семейного похода за грибами, от подготовки до подведения итогов. Ниже описаны ключевые процессы, которые автоматизируются или упрощаются с помощью приложения.
    
    \textbf{1. Планирование похода (Мария).} Мария за день до похода открывает приложение на домашнем компьютере или в смартфоне. Выбирает лесной массив из списка знакомых мест (Комарово, Зеленогорск) или находит новое место на карте. Приложение показывает прогноз погоды, время восхода и захода солнца, рекомендуемое время выезда с учётом расписания электричек. Мария строит маршрут: размещает стартовую точку у станции, добавляет 3--4 контрольные точки в лесу (места предполагаемого сбора грибов и встречи группы), указывает финальную точку возврата. Приложение автоматически рассчитывает примерное время прохождения между точками и общую длительность похода. Мария загружает офлайн-карты выбранного региона (приложение показывает объём: ~30--50 МБ) для работы без связи в лесу. Затем отправляет приглашения участникам: мужу, детям, отцу Ивану, указывая время и место сбора. Каждый получает уведомление с маршрутом и может подтвердить участие.
    
    \textbf{2. Подготовка снаряжения (Мария + семья).} После подтверждения участников Мария создаёт чек-лист снаряжения: выбирает готовый шаблон "Осенний поход на 4--5 часов" или создаёт свой список. В чек-лист входят: корзины для грибов, ножи, аптечка, вода, перекус, powerbank, дождевики, компас. Мария распределяет ответственность: муж берёт аптечку и воду, она — корзины и перекус, Иван — ножи. Каждый участник видит свои назначения в приложении и отмечает галочками выполнение. За 2 часа до выхода приложение отправляет напоминание всем участникам проверить список. Вечером накануне приходит напоминание зарядить телефоны и powerbank.
    
    \textbf{3. Навигация в походе (все участники).} В лесу все участники используют приложение для навигации. На экране отображается карта с текущим положением каждого (Мария видит всех, остальные видят маршрут и контрольные точки), направление к ближайшей контрольной точке (стрелка-компас), расстояние до неё и примерное время прибытия. Иван использует упрощённый режим "Проводник" с крупными элементами и голосовыми подсказками: "Поверните направо через 50 метров", "Вы отклонились от маршрута на 200 метров". Если участник отходит от группы дальше установленного радиуса (для детей — 150 метров, для взрослых — 250 метров, для пожилых — 200 метров), приложение автоматически отправляет уведомление Марии. При слабом GPS-сигнале приложение переключается на компасный режим с указанием направления к последней известной контрольной точке.
    
    \textbf{4. Фиксация находок (все участники).} Когда кто-то из семьи находит гриб, он фотографирует его через приложение. Приложение автоматически сохраняет координаты места находки и текущее время. Пользователь может добавить краткую заметку (текстовую или голосовую): "Белый гриб под сосной" или "Здесь много лисичек". Иван добавляет экспертные комментарии: "Это подосиновик, съедобный, лучше собирать молодые". Находка автоматически добавляется в общую семейную корзину с указанием автора. Все участники видят в реальном времени, кто и что нашёл, могут оставлять реакции (лайки, поздравления). Алиса получает баллы за каждую находку и выполнение квестов ("Найди 3 разных вида грибов"). Места с фотографиями сохраняются на карте как "грибные точки" для будущих походов.
    
    \textbf{5. Координация и безопасность (Мария + все).} В течение похода Мария периодически проверяет местоположение всех участников на карте. Если кто-то долго не движется, она отправляет сообщение в семейный чат: "Иван, всё в порядке?". При приближении к контрольной точке приложение напоминает о времени встречи. За час до установленного времени возврата (например, в 16:00 нужно быть на станции) приложение предупреждает: "Через час планируется возврат. Текущее расстояние до станции: 2,5 км, примерное время: 45 минут". Если группа отклоняется от графика, Мария корректирует маршрут: пропускает одну контрольную точку, выбирает более короткий путь обратно. Елена дома видит на веб-карте, где находится семья, и периодически получает автообновления: "Группа дошла до точки 2 из 4".
    
    \textbf{6. Экстренная ситуация (любой участник → МЧС, доверенные контакты).} Если возникает опасная ситуация (кто-то заблудился, травма, встреча с диким животным), любой участник может нажать крупную красную кнопку SOS в приложении. Приложение показывает таймер обратного отсчёта 5 секунд с возможностью отмены (чтобы избежать случайных нажатий). После подтверждения автоматически отправляется сигнал тревоги в службу спасения через систему 112 и всем участникам группы. Одновременно уведомления получают доверенные контакты (например, родственники дома). Сообщение содержит структурированные данные: точные GPS-координаты, состав группы, запас батареи на устройствах, историю передвижения, медицинскую информацию участников (если указана). Диспетчер службы 112 принимает вызов и передаёт информацию в поисково-спасательную службу МЧС. Спасатели получают через диспетчерскую систему полный пакет данных о группе, могут проанализировать маршрут, определить вероятное направление движения и спланировать зону поиска. При наличии связи диспетчер может связаться с организатором Марией для уточнения деталей ситуации.
    
    \textbf{7. Подведение итогов (Мария + семья).} После возвращения домой семья просматривает результаты похода. Мария открывает раздел "Архив" и видит: пройденный GPS-трек на карте, общее время похода (4 часа 20 минут), пройденное расстояние (8,3 км), количество собранных грибов (37 штук), авторство находок (Иван — 18, Мария — 10, Алиса — 9). Все фотографии грибов отображаются на карте как точки, можно кликнуть и увидеть, где именно был найден каждый гриб. Мария сохраняет маршрут как шаблон "Комарово осень 2025" для повторного использования. Экспортирует отчёт в PDF для семейного альбома с фотографиями, картой и статистикой. Елена просматривает результаты на планшете, комментирует фото: "Этот гриб лучше не брать, похож на ложный опёнок". Алиса делится красивыми фотографиями находок в соцсетях, получает новый значок "Грибной следопыт уровень 2".

    \section{Описание функций}
    
    Функции приложения организованы в соответствии с основными процессами похода и призваны автоматизировать рутинные операции, повысить безопасность и удобство использования для всех возрастных групп.
    
    \textbf{Функции планирования и подготовки:}
    \begin{itemize}
        \item \textbf{Конструктор маршрутов} с возможностью размещения контрольных точек на карте, автоматическим расчётом расстояний и времени прохождения между точками, сохранением маршрутов как шаблонов для повторного использования.
        \item \textbf{Интеграция с прогнозом погоды и расписанием транспорта}: автоматическое отображение погодных условий для выбранного дня, времени восхода и захода солнца, расписания электричек от ближайших станций.
        \item \textbf{Кеширование офлайн-карт} выбранного региона с отображением объёма памяти (обычно 30--50 МБ), автоматическим обновлением при изменении маршрута, возможностью предварительной загрузки нескольких регионов.
        \item \textbf{Совместный чек-лист снаряжения} с готовыми шаблонами ("Осенний поход", "Весенний поход", "С детьми"), распределением ответственности между участниками, отслеживанием выполнения в реальном времени, автоматическими напоминаниями перед выходом.
    \end{itemize}
    
    \textbf{Функции навигации и координации в походе:}
    \begin{itemize}
        \item \textbf{Режим реального времени} с отображением местоположения всех участников на карте, обновлением позиций каждые 30--60 секунд (в зависимости от заряда батареи), автоматическими уведомлениями при отклонении участника от группы более чем на заданное расстояние.
        \item \textbf{Адаптивная навигация}: основной режим с полной картой для уверенных пользователей, упрощённый режим "Проводник" для пожилых с крупными кнопками и увеличенным шрифтом, компасный режим при слабом GPS-сигнале.
        \item \textbf{Голосовые подсказки} с настраиваемой частотой оповещений: направление к контрольной точке, предупреждения об отклонении от маршрута, напоминания о времени встречи, уведомления о приближении к цели.
        \item \textbf{Семейный чат} с поддержкой текстовых и голосовых сообщений, быстрыми реакциями (эмодзи, лайки), отправкой фотографий, автоматическим прикреплением геолокации к сообщениям.
        \item \textbf{Мониторинг состояния группы} для организатора: панель с информацией о заряде батареи на устройствах всех участников, времени последнего обновления позиции, расстоянии до контрольных точек, прогнозируемом времени возврата.
    \end{itemize}
    
    \textbf{Функции фиксации находок:}
    \begin{itemize}
        \item \textbf{Камера с автоматическим геотегированием}: при фотографировании гриба автоматически сохраняются GPS-координаты, время находки, погодные условия, создаётся запись в семейной корзине.
        \item \textbf{Общая семейная корзина} с отображением всех находок в реальном времени, указанием автора, возможностью добавления текстовых или голосовых комментариев, системой реакций (одобрение, вопрос, предупреждение).
        \item \textbf{Справочник грибов} с описаниями распространённых видов, эталонными фотографиями, указанием съедобности, сезонов плодоношения, двойников, возможностью сравнения найденного гриба с базой.
        \item \textbf{Карта грибных мест}: автоматическое сохранение координат успешных находок, отображение "грибных точек" на карте с фильтрацией по видам и сезонам, возможность добавления заметок ("здесь было много белых в прошлом году").
    \end{itemize}
    
    \textbf{Функции безопасности и экстренной связи:}
    \begin{itemize}
        \item \textbf{Кнопка SOS} с крупным размером и ярким цветом, доступная с любого экрана, таймером обратного отсчёта 5 секунд для предотвращения случайных нажатий, возможностью быстрой отмены.
        \item \textbf{Интеграция со службами спасения}: автоматическая передача структурированных данных в систему 112, экспорт координат и треков в стандартных форматах (GPX, KML) для профессионального оборудования МЧС.
    \end{itemize}
    
    \textbf{Функции подведения итогов и архивирования:}
    \begin{itemize}
        \item \textbf{Автоматическое формирование отчёта о походе}: сохранение пройденного GPS-трека, статистики (время, расстояние, количество находок), всех фотографий с привязкой к карте и времени.
    \end{itemize}

    \section{Описание структуры диалога и его обоснование}

    Структура диалога приложения построена на основе задач, решаемых пользователями. Приложение имеет пять основных состояний, соответствующих пунктам нижней навигационной панели, и одно экстренное состояние SOS:

    \begin{itemize}
        \item \textbf{Главная} --- начальный экран с выбором похода (создание нового или присоединение к существующему) и доступом к архиву прошлых походов.
        \item \textbf{Маршрут} --- планирование похода (создание маршрута, контрольные точки, загрузка офлайн-карт) и активная навигация во время похода (отображение местоположения участников, направление к точкам).
        \item \textbf{Корзина} --- просмотр и добавление находок группы с фотографиями, координатами и указанием автора.
        \item \textbf{Чат} --- координация участников через текстовые и голосовые сообщения.
        \item \textbf{Справочник} --- информация о видах грибов для идентификации находок.
        \item \textbf{SOS} --- экстренный режим, доступный из любого состояния одним нажатием.
    \end{itemize}

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

    \begin{figure}[h!]
       \centering
       \includegraphics[width=0.6\linewidth]{img/graph.png}
       \caption{Граф состояний приложения.}
       \label{fig:graph}
    \end{figure}

    % \section{Описание структуры команд пользователей}
    

    % \section{Физическая реализация команд пользователей}
    % Команды выполняются через крупные кнопки и свайпы. В режиме «Проводник» используются физические кнопки громкости как горячие клавиши: двойное нажатие --- отправка геометки, долгое удержание --- SOS. Такой подход учитывает перчатки, мокрые экраны и минимизирует вероятность промаха.

    \section{Технология ввода данных}
    
    Приложение поддерживает несколько технологий ввода данных, адаптированных под условия использования в лесу и разную цифровую грамотность пользователей. Основным методом взаимодействия являются жесты касания и свайпы по сенсорному экрану. Все формы спроектированы с минимальным количеством обязательных полей: геоданные (координаты, время) и метаданные фотографий подставляются автоматически при фиксации находок. Для упрощения работы пожилым пользователям предусмотрены увеличенные области нажатия (минимум 48×48 пикселей). При работе в перчатках или с мокрым экраном доступен упрощённый режим с крупными элементами и подтверждением критических действий.

    \section{Описание ошибок пользователей}
    
    При использовании приложения пользователи могут допускать ошибки. Ниже описаны основные типы ошибок и методы их смягчения.
    
    \textbf{1. Случайное нажатие кнопки SOS.}
    
    \textit{Описание:} Пользователь случайно активирует экстренный сигнал при доставании телефона из кармана, надевании перчаток или передаче устройства другому участнику, что приводит к ложной тревоге и необоснованному беспокойству доверенных контактов.
    
    \textit{Метод обработки:} Кнопка SOS имеет двухэтапную активацию: после нажатия запускается обратный отсчёт 5 секунд с кнопкой отмены. Вибрация и звуковое предупреждение при активации.
    
    \textbf{2. Неверное размещение контрольных точек на маршруте.}
    
    \textit{Описание:} Организатор при планировании похода ставит контрольные точки в недоступных местах (болото, густой кустарник, частная территория) или слишком далеко друг от друга, что делает маршрут опасным или невыполнимым.
    
    \textit{Метод обработки:} Приложение анализирует размещение точек и выдаёт предупреждения: <<Точка находится на расстоянии более N км от предыдущей>>, <<Участок может быть труднопроходимым>>, <<Рядом отмечена запретная зона>>. Используются данные топографических карт, отзывы других пользователей и информация от лесничих. Предлагаются альтернативные безопасные места поблизости. Максимальное расстояние между точками ограничено.
    
    \textbf{3. Закрытие приложения во время активной навигации.}
    
    \textit{Описание:} Пользователь случайно сворачивает или закрывает приложение, пытаясь очистить память телефона, принять звонок или сделать фотографию на основную камеру, теряя доступ к навигации и координатам группы.
    
    \textit{Метод обработки:} Приложение продолжает отслеживать местоположение в фоновом режиме и отправляет уведомление <<Навигация активна, вернуться в приложение>> с кнопкой быстрого доступа. При закрытии из режима активной навигации показывается диалог с предупреждением: <<Вы уверены? GPS-отслеживание будет остановлено>>. Для возврата достаточно нажать на постоянное уведомление в шторке. Критические события (отклонение от маршрута, SOS от других участников) вызывают полноэкранное уведомление даже при закрытом приложении.
    
    \textbf{4. Опоздание на контрольную точку.}
    
    \textit{Описание:} Участник увлекается поиском грибов, не следит за временем и опаздывает на запланированную встречу группы в контрольной точке, что вызывает беспокойство остальных участников и задержку всего похода.
    
    \textit{Метод обработки:} Приложение отправляет каскадные напоминания: за 30 минут до контрольного времени, за 15 минут с указанием расстояния до точки и времени в пути, за 5 минут с усиленным звуковым сигналом и вибрацией. При опоздании более чем на 10 минут уведомление получает организатор, который может скорректировать план или связаться с опаздывающим через чат.
    
    \textbf{5. Неправильное определение вида гриба.}
    
    \textit{Описание:} Неопытный пользователь ошибочно идентифицирует ядовитый гриб как съедобный, добавляет его в корзину с неверной меткой, что может привести к отравлению при употреблении.
    
    \textit{Метод обработки:} При добавлении находки приложение анализирует фотографию с помощью алгоритмов компьютерного зрения и предлагает наиболее вероятные виды с указанием уровня уверенности. Для потенциально опасных грибов (бледная поганка, мухомор, ложные опята) выводится красное предупреждение: <<ВНИМАНИЕ! Возможно ядовитый гриб>>.
    
    \textbf{6. Недостаточная зарядка батареи телефона.}
    
    \textit{Описание:} Пользователь активно использует камеру, экран и GPS, не следит за уровнем заряда, батарея разряжается в середине похода, связь с группой теряется.
    
    \textit{Метод обработки:} Приложение прогнозирует время автономной работы на основе текущего расхода энергии и предупреждает: <<При таком расходе заряда хватит на 2,5 часа. До конца похода 4 часа. Рекомендуется включить режим экономии>>. При достижении 30\%, 20\% и 10\% заряда отправляются напоминания с советами (уменьшить яркость, отключить фоновую синхронизацию, использовать режим <<Только навигация>>). Участники видят уровень заряда других членов группы.
    
    \textbf{7. Отклонение от запланированного маршрута.}
    
    \textit{Описание:} Участник случайно или намеренно уходит в сторону от маршрута, следуя за грибами или исследуя местность, не замечая отклонения, что может привести к потере ориентации и разделению группы.
    
    \textit{Метод обработки:} Приложение непрерывно отслеживает положение относительно маршрута и устанавливает <<коридор безопасности>> с дифференцированной шириной в зависимости от возраста участника: для детей — 150 метров, для взрослых — 250 метров, для пожилых участников — 200 метров. При выходе за пределы коридора срабатывает голосовое предупреждение: <<Вы отклонились от маршрута на 150 метров>> и отображается стрелка направления возврата. Организатор и все остальные участники получают уведомления.

    \section{Описание дизайна экранной формы}
    
    Дизайн экранных форм приложения разработан в соответствии с требованиями международного стандарта ISO 9241-161 (Эргономика взаимодействия человек-система. Часть 161: Руководство по элементам графического пользовательского интерфейса) и адаптирован под специфические условия использования: лесная местность, плохая освещённость, использование в перчатках, разный уровень цифровой грамотности пользователей.
    
    \subsection{Типографика и шрифты}
    
    В приложении используется шрифтовая система, обеспечивающая высокую читабельность в сложных условиях освещения и при быстром просмотре информации на ходу.
    
    \textbf{Основной шрифт:} Inter или Roboto --- современные гротескные шрифты без засечек, специально разработанные для экранов с высокой читабельностью при малых размерах. Эти шрифты имеют открытые апертуры (внутренние просветы букв), что улучшает различимость символов при плохом освещении.
    
    \textbf{Размеры шрифтов:}
    \begin{itemize}
        \item \textbf{Базовый размер текста:} 16--18pt для основного контента (описания, инструкции, названия грибов). Это на 2--4pt больше стандартных 14pt, что обусловлено необходимостью чтения на ходу и при плохой видимости.
        \item \textbf{Заголовки экранов:} 22--24pt, полужирное начертание, для быстрой идентификации текущего раздела.
        \item \textbf{Навигационные данные:} 18--20pt для расстояний, времени, направлений --- критически важная информация, которую нужно считывать мгновенно.
        \item \textbf{Минимальный размер:} не менее 14pt для второстепенной информации (метки времени, подписи к иконкам), что соответствует рекомендациям ISO 9241-161.
    \end{itemize}
    
    \textbf{Межстрочный интервал:} 1.4--1.5 от размера шрифта для улучшения читабельности блоков текста. Для коротких надписей (кнопки, метки) можно использовать 1.2--1.3.
    
    \textbf{Насыщенность:} основной текст использует regular (400) или medium (500) начертание, заголовки и активные элементы --- semibold (600) или bold (700). Тонкие начертания (light, thin) не используются из-за плохой видимости на солнце и в тумане.
    
    \subsection{Цветовая палитра}
    
    Цветовая схема построена на природных оттенках с учётом контрастности и психологического восприятия цветов в контексте лесной прогулки.
    
    \textbf{Основные цвета:}
    \begin{itemize}
        \item \textbf{Лесной зелёный \#2D5F3F} --- основной цвет бренда, используется для маршрутов на карте, пройденных участков пути, успешных действий. Ассоциируется с природой, безопасностью, спокойствием.
        \item \textbf{Янтарный оранжевый \#E67E22} --- акцентный цвет для активных элементов, кнопок действия, контрольных точек. Хорошо виден в лесу, привлекает внимание, ассоциируется с теплом и энергией.
        \item \textbf{Тревожный красный \#C0392B} --- используется исключительно для критических элементов: кнопка SOS, предупреждения об опасности, низкий заряд батареи. Сигнализирует о необходимости немедленных действий.
        \item \textbf{Небесный голубой \#3498DB} --- для информационных элементов, ссылок, текущего местоположения на карте. Нейтральный, не конфликтует с зелёным фоном карты.
    \end{itemize}
    
    \textbf{Нейтральная палитра (оттенки серого):}
    \begin{itemize}
        \item Тёмно-серый \#2C3E50 --- основной цвет текста на светлом фоне.
        \item Средний серый \#7F8C8D --- второстепенный текст, неактивные элементы.
        \item Светло-серый \#ECF0F1 --- фон карточек, разделители.
        \item Почти белый \#FAFAFA --- основной фон приложения.
    \end{itemize}
    
    \textbf{Контрастность:} все текстово-фоновые комбинации обеспечивают коэффициент контрастности не менее 4.5:1 для обычного текста и 3:1 для крупного текста (18pt+), что соответствует уровню AA стандарта WCAG 2.1. Для критических элементов (SOS, предупреждения) используется усиленный контраст 7:1 (уровень AAA).
    
    \textbf{Семантика цвета:}
    \begin{itemize}
        \item \textbf{Зелёный:} успех, завершение, безопасность (отметка на контрольной точке, подтверждение снаряжения).
        \item \textbf{Оранжевый:} действие, внимание, активность (кнопки "Начать поход", "Добавить гриб", контрольные точки).
        \item \textbf{Красный:} опасность, критическая ситуация, запрет (SOS, отклонение от маршрута, разрядка батареи <15\%).
        \item \textbf{Голубой:} информация, навигация, нейтральное состояние (текущая позиция, информационные подсказки).
        \item \textbf{Серый:} неактивное, второстепенное, фоновое (отключенные кнопки, пройденные точки).
    \end{itemize}
    
    \subsection{Размеры и отступы}
    
    Система размеров построена на модульной сетке с базовым шагом 8pt (пикселей), что обеспечивает визуальную согласованность и упрощает адаптацию под разные размеры экранов.
    
    \textbf{Размеры интерактивных элементов:}
    \begin{itemize}
        \item \textbf{Минимальный размер касания:} 48×48pt (примерно 9×9 мм на физическом экране) для стандартного режима, что соответствует рекомендациям ISO 9241-161 и позволяет уверенно нажимать пальцем в перчатке.
        \item \textbf{Основные кнопки действий:} 56×56pt, увеличенный размер для часто используемых элементов ("Добавить гриб", "Открыть чат").
        \item \textbf{Кнопка SOS:} 80×80pt, максимальный размер для мгновенного доступа в критической ситуации, постоянно видна в углу экрана.
        \item \textbf{Расстояние между интерактивными элементами:} не менее 8pt, чтобы избежать случайных нажатий.
    \end{itemize}
    
    \textbf{Отступы и воздух:}
    \begin{itemize}
        \item Внутренние отступы кнопок: 12--16pt по вертикали, 20--24pt по горизонтали.
        \item Отступы между секциями экрана: 24--32pt для визуального разделения.
        \item Поля экрана от края: 16--20pt, чтобы контент не прижимался к границам.
        \item Расстояние между строками в списках: 16pt для комфортного чтения и случайных нажатий.
    \end{itemize}
    
    \subsection{Иконография}
    
    Визуальные символы играют ключевую роль в навигации по приложению, особенно для пользователей с низкой цифровой грамотностью.
    
    \textbf{Стиль иконок:} используются иконки в едином стиле "outlined" (контурные) с толщиной линии 2pt. Контурный стиль обеспечивает лучшую видимость на разных фонах и при ярком солнечном свете по сравнению с заливными (filled) иконками.
    
    \textbf{Размеры иконок:}
    \begin{itemize}
        \item Стандартный размер: 24×24pt для иконок в кнопках и меню.
        \item Крупные иконки: 32×32pt для главных действий на экране.
        \item Иконка SOS: 40×40pt, красного цвета с белой обводкой для максимальной заметности.
    \end{itemize}
    
    \textbf{Основные иконки:}
    \begin{itemize}
        \item \textbf{Компас} (круг со стрелкой) --- навигация, направление движения.
        \item \textbf{Корзина с грибами} --- раздел находок, семейная корзина.
        \item \textbf{Маркер на карте} --- контрольная точка, место встречи.
        \item \textbf{Группа людей} --- участники похода, управление группой.
        \item \textbf{Сообщение} --- семейный чат, коммуникация.
        \item \textbf{Список с галочками} --- чек-лист снаряжения.
        \item \textbf{Молния} --- уровень заряда батареи.
        \item \textbf{Антенна с волнами} --- уровень сигнала связи.
        \item \textbf{Фотоаппарат} --- сделать фото гриба.
        \item \textbf{Тревожный круг SOS} --- экстренная кнопка.
    \end{itemize}
    
    \textbf{Цвет иконок:} по умолчанию тёмно-серый (\#2C3E50) для нейтральных элементов, окрашиваются в акцентные цвета при активации или для семантического значения (красная иконка низкого заряда, зелёная галочка выполнения).
    
    \subsection{Карточки и контейнеры}
    
    Информация группируется в визуальные контейнеры для улучшения сканируемости и понимания структуры.
    
    \textbf{Карточки:} прямоугольные контейнеры с лёгкой тенью (elevation 2--4dp в терминологии Material Design) для создания ощущения "слоя" над фоном. Радиус скругления углов 8--12pt для современного внешнего вида и мягкости восприятия.
    
    \textbf{Структура карточки контрольной точки:}
    \begin{itemize}
        \item Заголовок (название точки, 18pt semibold).
        \item Расстояние и время прибытия (16pt, серый цвет).
        \item Статус (иконка + текст): "Не пройдена" / "Идём сейчас" / "Пройдена".
        \item Кнопка действия "Отметиться" (оранжевая, 48pt высотой).
    \end{itemize}
    
    \textbf{Разделители:} тонкие линии (1pt, светло-серый \#ECF0F1) для отделения элементов списка. Используются умеренно, чтобы не создавать визуального шума.
    
    \subsection{Состояния элементов}
    
    В соответствии с ISO 9241-161, все интерактивные элементы должны иметь визуально различимые состояния.
    
    \textbf{Состояния кнопок:}
    \begin{itemize}
        \item \textbf{Обычное (default):} полный цвет заливки, чёткие границы.
        \item \textbf{Наведение/фокус (hover/focus):} лёгкое затемнение цвета на 10--15\%, появление обводки 3pt голубого цвета для фокуса.
        \item \textbf{Нажатие (pressed):} затемнение на 20--25\%, лёгкое уменьшение размера (scale 0.95) для тактильного отклика.
        \item \textbf{Неактивное (disabled):} полупрозрачность 40\%, серый цвет, курсор "not-allowed".
        \item \textbf{Загрузка (loading):} анимированный спиннер внутри кнопки, текст сохраняется.
    \end{itemize}
    
    \textbf{Индикация выбора:} для элементов списка, переключателей, чекбоксов используется изменение цвета фона (светло-зелёный \#E8F5E9 для выбранного), появление галочки-иконки, увеличение высоты элемента на 2--4pt.

    \newpage
    \section{Шаблон экранной формы}

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

    \subsection{Структура шаблона}

    Шаблон состоит из следующих обязательных компонентов:

    \begin{itemize}
        \item \textbf{Шапка приложения (Header)} --- содержит логотип и название приложения "По грибы". Фиксирована в верхней части экрана, имеет зелёный градиентный фон (\#2D5F3F → \#3A7A52), высоту 64pt. Логотип размером 36×36pt расположен слева, название выполнено белым шрифтом 24pt, полужирное начертание.

        \item \textbf{Основная область контента (Main)} --- прокручиваемая область для размещения содержимого конкретного экрана. Включает заголовок экрана (22pt, полужирный), описание при необходимости (16pt, серый цвет), карточки с информацией и элементы управления. Отступы от краёв 20pt, отступ снизу 80pt для навигационной панели.

        \item \textbf{Нижняя навигационная панель (Navigation)} --- фиксирована внизу экрана, высота 72pt, белый фон с тенью. Содержит 5 навигационных кнопок с иконками и подписями: "Маршрут", "Корзина", "Главная", "Чат", "Справочник". Активная вкладка выделяется зелёным цветом текста и подчёркиванием снизу.

        \item \textbf{Кнопка SOS} --- расположена в правом нижнем углу над навигацией, размер 80×80pt, красный цвет (\#C0392B), круглая форма с белой обводкой 4pt. Постоянно видима на всех экранах, имеет анимацию пульсации для привлечения внимания.
    \end{itemize}

    \subsection{Основные элементы интерфейса}

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

    \textbf{Кнопка SOS} --- критически важный элемент безопасности, доступный на всех экранах. Размер 80×80pt обеспечивает уверенное нажатие даже в стрессовой ситуации. Красный цвет \#C0392B мгновенно привлекает внимание, белая обводка 4pt создаёт контраст с любым фоном.

\begin{figure}[h!]
   \centering
   \includegraphics[width=0.2\linewidth]{img/elements/sos-button.png}
   \caption{Кнопка SOS}
   \label{fig:sos-button}
\end{figure}

\newpage
    \textbf{Карточка (Card)} --- базовый контейнер для группировки связанного контента. Белый фон \#FFFFFF, радиус скругления 12pt, отступы 16pt. Тень средней интенсивности. Используется для информации о маршруте, участниках, находках.

\begin{figure}[h!]
   \centering
   \includegraphics[width=0.35\linewidth]{img/elements/card.png}
   \caption{Карточка контента}
   \label{fig:card}
\end{figure}

    \textbf{Основная кнопка} --- минимальная высота 48pt (стандарт ISO 9241-161 для сенсорных элементов), радиус 8pt, шрифт 16pt полужирный. Основная кнопка (primary) имеет оранжевый цвет \#E67E22, вторичная (secondary) --- светло-серый \#ECF0F1. При нажатии кнопка уменьшается до 97\% размера для тактильного отклика.

\begin{figure}[h!]
   \centering
   \includegraphics[width=0.35\linewidth]{img/elements/button-primary.png}
   \caption{Основная и вторичная кнопки}
   \label{fig:button-primary}
\end{figure}

    \textbf{Элемент списка} --- используется для участников, находок, контрольных точек. Иконка 40×40pt в скруглённом контейнере слева, заголовок 17pt полужирный, подзаголовок 14pt серый цвет. Отступы 14pt по вертикали, 16pt по горизонтали. Белый фон, радиус 12pt, лёгкая тень.

\begin{figure}[h!]
   \centering
   \includegraphics[width=0.35\linewidth]{img/elements/list-item.png}
   \caption{Элемент списка}
   \label{fig:list-item}
\end{figure}

\newpage
    \textbf{Поисковое поле} --- высота 48pt, радиус 12pt, иконка лупы 20pt слева, текст 16pt. Фон белый с лёгкой тенью. Placeholder серого цвета \#7F8C8D. Используется в справочнике грибов для быстрого поиска по названию.

\begin{figure}[h!]
   \centering
   \includegraphics[width=0.35\linewidth]{img/elements/search-bar.png}
   \caption{Поисковое поле}
   \label{fig:search-bar}
\end{figure}

    \textbf{Навигационная панель} --- высота 72pt, 5 кнопок равной ширины. Иконки 24pt, подписи 11pt. Активная вкладка: зелёный цвет текста \#2D5F3F, полужирное начертание, подчёркивание снизу 3pt высотой. Неактивные: серый цвет \#7F8C8D, обычное начертание.

\begin{figure}[h!]
   \centering
   \includegraphics[width=0.4\linewidth]{img/elements/navigation-bar.png}
   \caption{Навигационная панель}
   \label{fig:navigation-bar}
\end{figure}

    \subsection{Визуальные особенности}

    Шаблон реализует описанную ранее цветовую палитру и типографику:
    
    \begin{itemize}
        \item Карточки контента имеют белый фон, радиус скругления 12pt, лёгкую тень для создания эффекта "слоя".
        \item Элементы списков включают иконку слева (40×40pt в скруглённом контейнере), заголовок (17pt, полужирный) и подзаголовок (14pt, серый).
        \item Все интерактивные элементы реагируют на нажатие визуальным эффектом (уменьшение до 95--98\% размера).
        \item Общий фон приложения --- светло-серый \#FAFAFA для снижения контрастности и уменьшения утомляемости глаз.
    \end{itemize}

    Шаблон рассчитан на стандартную ширину мобильного экрана 375pt (iPhone, большинство Android-устройств) и может адаптироваться по высоте от 667pt до 844pt.

\begin{figure}[h!]
   \centering
   \includegraphics[width=0.4\linewidth]{img/template-screen.png}
   \caption{Шаблон экранной формы мобильного приложения "По грибы!"}
   \label{fig:template}
\end{figure}

\newpage
\phantom{text}
\newpage
    \section{Эскизы экранных форм}
    
    На основе разработанного шаблона созданы экранные формы для ключевых процессов приложения. Каждая форма реализует описанные ранее функции и соответствует принципам дизайна ISO 9241-161.

    \subsection{Экран планирования похода}

    Экран планирования реализует функции конструктора маршрутов и подготовки к походу. Пользователь (организатор) может выбрать маршрут на карте, установить дату и время, просмотреть прогноз погоды и пригласить участников.

    \textbf{Основные элементы экрана:}
    \begin{itemize}
        \item \textbf{Предварительный просмотр карты} --- интерактивная область высотой 200pt с наложенным маршрутом, кнопка "Выбрать на карте" для перехода к полноэкранной карте.
        \item \textbf{Информация о маршруте} --- карточка с основными параметрами: район (Токсово), расстояние (8.3 км), прогнозируемое время (4ч 30мин).
        \item \textbf{Селекторы даты и времени} --- крупные нажимаемые элементы с иконками календаря и часов, отображают выбранные значения.
        \item \textbf{Виджет погоды} --- показывает температуру, описание погоды, время восхода/заката, скорость ветра для выбранной даты.
        \item \textbf{Список участников} --- карточки с аватарами, именами, ролями и статусами подтверждения. Кнопка "Пригласить ещё" для добавления новых участников.
        \item \textbf{Кнопки действий} --- "Сохранить черновик" (вторичная) и "Создать поход" (основная, оранжевая).
    \end{itemize}

    Экран оптимизирован для быстрого планирования: все ключевые параметры видны без прокрутки, часто используемые действия доступны крупными кнопками. Прогноз погоды помогает организатору принять решение о целесообразности похода.

\begin{figure}[h!]
   \centering
   \begin{subfigure}[b]{0.30\linewidth}
       \centering
       \includegraphics[width=\textwidth]{img/planning-screen.png}
       \caption{Карта}
       \label{fig:planning-screen}
   \end{subfigure}
   \hfill
   \begin{subfigure}[b]{0.30\linewidth}
       \centering
       \includegraphics[width=\textwidth]{img/planning-screen2.png}
       \caption{Когда идём?}
       \label{fig:planning-screen2}
   \end{subfigure}
   \hfill
   \begin{subfigure}[b]{0.30\linewidth}
       \centering
       \includegraphics[width=\textwidth]{img/planning-screen3.png}
       \caption{Участники похода}
       \label{fig:planning-screen3}
   \end{subfigure}
   \caption{Экран планирования похода}
   \label{fig:planning-screens}
\end{figure}

\newpage
    \subsection{Экран навигации в походе}

    Экран навигации --- основной экран во время активного похода. Занимает полноэкранный режим с картой, поверх которой размещены информационные панели и элементы управления.

    \textbf{Основные элементы экрана:}
    \begin{itemize}
        \item \textbf{Полноэкранная карта} --- отображает местность, маршрут, контрольные точки и местоположение всех участников группы в реальном времени. Текущая позиция пользователя выделена синей пульсирующей точкой с анимацией расширяющегося кольца.
        
        \item \textbf{Панель состояния} --- расположена сверху, показывает критически важную информацию: уровень сигнала сети (3G/4G), заряд батареи (78\%), время в пути (2:15). Полупрозрачный белый фон для видимости на любой карте.
        
        \item \textbf{Компас-навигатор} --- крупная карточка над группой участников, содержит визуальный компас с направлением движения (стрелка указывает на север), название целевой точки ("До точки встречи №2"), расстояние до неё (1.2 км) и прогнозируемое время прибытия (примерно 25 мин). Зелёный градиентный круг компаса выделяет элемент.
        
        \item \textbf{Маркеры на карте} --- визуальные метки: аватары участников (Иван, Алиса), оранжевый круг с иконкой (контрольная точка).
    \end{itemize}

    Экран оптимизирован для использования в движении: все элементы управления имеют увеличенный размер (56×56pt), информация сгруппирована в легко читаемые карточки с тенями для отделения от карты. Анимация пульсации текущей позиции помогает быстро найти себя на карте даже при беглом взгляде.

\begin{figure}[h!]
   \centering
   \includegraphics[width=0.35\linewidth]{img/navigation-screen.png}
   \caption{Экран навигации в походе с картой и информационными панелями}
   \label{fig:navigation-screen}
\end{figure}

    \newpage
    \subsection{Экран семейной корзины}

    Экран отображает все найденные грибы с возможностью фильтрации, статистику похода и вклад каждого участника.

    \textbf{Основные элементы:}
    \begin{itemize}
        \item \textbf{Статистика} --- карточка с градиентным фоном показывает общее количество грибов (37), количество видов (6) и время в пути (2:15).
        \item \textbf{Вклад участников} --- три карточки с аватарами и счётчиками находок для каждого члена семьи (Иван: 18, Мария: 10, Алиса: 9).
        \item \textbf{Карточки находок} --- каждая содержит фото гриба, название, количество экземпляров, автора находки, время и местоположение. Ядовитые грибы выделены предупреждающими бейджами и комментариями.
    \end{itemize}

\begin{figure}[h!]
   \centering
   \begin{subfigure}[b]{0.34\linewidth}
       \centering
       \includegraphics[width=\textwidth]{img/basket-screen.png}
    %    \caption{Общий вид}
       \label{fig:basket-screen}
   \end{subfigure}
   \hspace{1cm}
   \begin{subfigure}[b]{0.34\linewidth}
       \centering
       \includegraphics[width=\textwidth]{img/basket-screen2.png}
    %    \caption{Детали}
       \label{fig:basket-screen2}
   \end{subfigure}
   \caption{Экран семейной корзины с находками}
   \label{fig:basket-screens}
\end{figure}

\newpage
    \subsection{Экран справочника грибов}

    Справочник содержит информацию о распространённых съедобных и ядовитых грибах с фотографиями и описаниями.

    \textbf{Основные элементы:}
    \begin{itemize}
        \item \textbf{Поисковая строка} --- быстрый поиск гриба по названию.
        \item \textbf{Фильтры} --- фильтрация по категориям: все, съедобные, ядовитые, условно-съедобные.
        \item \textbf{Карточки грибов} --- фотография, название (русское и латинское), бейдж съедобности, сезон сбора, описание признаков, метки мест обитания. Ядовитые грибы выделены красной рамкой и предупреждающим блоком о возможной путанице с похожими съедобными грибами.
    \end{itemize}

\begin{figure}[h!]
   \centering
   \includegraphics[width=0.35\linewidth]{img/guide-screen.png}
   \caption{Экран справочника грибов}
   \label{fig:guide-screen}
\end{figure}

    \newpage
    \subsection{Экран семейного чата}

    Чат обеспечивает оперативную коммуникацию между участниками похода с возможностью отправки текста, фотографий и геолокации.

    \textbf{Основные элементы:}
    \begin{itemize}
        \item \textbf{Область сообщений} --- прокручиваемый список с сообщениями участников, системными уведомлениями о достижении контрольных точек. Сообщения других участников слева с аватарами, свои сообщения справа в зелёных пузырях.
        \item \textbf{Типы сообщений} --- текстовые, фотографии грибов, карточки с геолокацией (показывают расстояние до отправителя), системные уведомления (начало похода, достижение точек).
        \item \textbf{Панель ввода} --- кнопки быстрых действий (камера, отправить геолокацию), поле ввода текста, кнопка отправки. Все элементы увеличенного размера для удобного использования в перчатках.
    \end{itemize}

\begin{figure}[h!]
   \centering
   \begin{subfigure}[b]{0.34\linewidth}
       \centering
       \includegraphics[width=\textwidth]{img/chat-screen.png}
       \label{fig:chat-screen}
   \end{subfigure}
   \hspace{1cm}
   \begin{subfigure}[b]{0.34\linewidth}
       \centering
       \includegraphics[width=\textwidth]{img/chat-screen2.png}
       \label{fig:chat-screen2}
   \end{subfigure}
   \caption{Экран семейного чата}
   \label{fig:chat-screens}
\end{figure}

    \newpage
    \section*{Заключение}
    \addcontentsline{toc}{section}{Заключение}
    
    В ходе работы выполнено проектирование интерфейса приложения для организации семейных походов за грибами. Описана предметная область и сформулированы цели приложения. Определены заинтересованные лица и их ожидания. Сформулированы требования к системе. Построена модель пользователей с описанием персонажей и их квалификации. Определены задачи приложения и описаны основные процессы. Перечислены функции приложения. Разработана структура диалога в виде графа состояний. Описаны технологии ввода данных и типичные ошибки пользователей. Разработан дизайн экранных форм: определены цветовая схема, типографика, иконки и элементы управления. Создан шаблон экранной формы и эскизы основных экранов приложения.

    \newpage
    \section*{Список литературы}
    \addcontentsline{toc}{section}{Список литературы}
    
    \vspace{-1.5cm}
    \begin{thebibliography}{0}
        \bibitem{novikov}
        Алан Купер. Об интерфейсе. Основы проектирования взаимодействия ИМВ, 2-е изд.
        Пер. с англ. — 2009. — 688 с.
    \end{thebibliography}
\end{document}
