|
|
\chapter{Модель продукта}
|
|
|
\section{Структурированное текстовое описание процесса}
|
|
|
\subsection{Сценарий 1. Регистрация на мероприятие}
|
|
|
|
|
|
\textbf{Актор:} Посетитель.
|
|
|
|
|
|
\subsubsection{Основной поток}
|
|
|
|
|
|
\begin{enumerate}
|
|
|
\item Актор решает посетить мероприятие.
|
|
|
\item Актор выбирает мероприятие.
|
|
|
\item \label{actor-register}Актор регистрируется на мероприятие.
|
|
|
\end{enumerate}
|
|
|
|
|
|
\subsubsection{Расширения}
|
|
|
|
|
|
\begin{description}
|
|
|
\item[\ref{actor-register}a] Актор указал неверные данные. Переход к п.\ref{actor-register} сценария 1.
|
|
|
\item[\ref{actor-register}b] Регистрация на мероприятие закрыта.
|
|
|
\end{description}
|
|
|
|
|
|
\subsection{Сценарий 2. Добавление ограничений}
|
|
|
\textbf{Актор:} Супер-пользователь.
|
|
|
|
|
|
\subsubsection{Основной поток}
|
|
|
|
|
|
\begin{enumerate}
|
|
|
\item \label{rule-creation}Актор создаёт ограничение для одного дня.
|
|
|
\end{enumerate}
|
|
|
|
|
|
\subsubsection{Расширения}
|
|
|
\begin{description}
|
|
|
\item[\ref{rule-creation}a] Актор создаёт ограничение для периода дней.
|
|
|
\item[\ref{rule-creation}b] Актор создаёт ограничение для интервала дней.
|
|
|
\end{description}
|
|
|
|
|
|
\subsection{Сценарий 3. Добавление мероприятия}
|
|
|
\textbf{Актор:} Пользователь.
|
|
|
|
|
|
\subsubsection{Основной поток}
|
|
|
|
|
|
\begin{enumerate}
|
|
|
\item Актор получает информацию о мероприятии.
|
|
|
\item Актор создаёт мероприятие.
|
|
|
\item \label{user-event-info}Актор заполняет информацию о мероприятии.
|
|
|
\end{enumerate}
|
|
|
|
|
|
\subsubsection{Расширения}
|
|
|
\begin{description}
|
|
|
\item[\ref{user-event-info}a] Информация не проходит валидацию. Повтор пункта.
|
|
|
\item[\ref{user-event-info}b] Актор загружает программу в формате DOC.
|
|
|
\item[\ref{user-event-info}c] Актор добавляет ограничение на количество посетителей.
|
|
|
\item[\ref{user-event-info}d] Мероприятие уже утверждено. Изменения отвергаются.
|
|
|
\end{description}
|
|
|
|
|
|
\section{Диаграммы}
|
|
|
|
|
|
Система спалнирована с учётом методологии HMVC. Благодаря этому любая из триад может быть изменена или удалена без ущерба для остальных.
|
|
|
|
|
|
Каждый модуль обрабатывает свой тип запроса. Тип запроса определяет загрузчик.
|
|
|
|
|
|
\begin{figure}[ht]
|
|
|
\centering
|
|
|
\includegraphics[angle=90,height=0.7\textheight]{diagram0.jpeg}
|
|
|
\caption{Диаграмма IDEF0}
|
|
|
\end{figure}
|
|
|
|
|
|
\begin{figure}[ht]
|
|
|
\centering
|
|
|
\includegraphics[angle=90,width=\textwidth]{diagram1.jpeg}
|
|
|
\caption{Диаграмма IDEF3}
|
|
|
\end{figure}
|
|
|
|
|
|
\begin{figure}[ht]
|
|
|
\centering
|
|
|
\includegraphics[width=\textwidth]{ER.png}
|
|
|
\caption{ER-модель}
|
|
|
\end{figure}
|