view paper/implmodel.tex @ 24:a802b0ca855b

writed temporal
author Nobuyasu Oshiro <dimolto@cr.ie.u-ryukyu.ac.jp>
date Sun, 31 Mar 2013 05:52:08 +0900
parents 3dffc77b5cee
children 604e67890d15
line wrap: on
line source

\section{Webアプリケーションとしての実装}
まず作成するアプリケーションのユースケース図を図\ref{fig:usecase}に示す.
\begin{figure}[tb]
  \begin{center}
   \includegraphics[scale=0.30]{figure/usecase.pdf}
    \caption{ユースケース図}
    \label{fig:usecase}
  \end{center}
\end{figure}

まず, ユーザ(ステークホルダ)は主張を立てることができる.
この時, たてた主張は自分以外のユーザに対して合意要求を出さなければならない.
ユーザは自分に対して合意要求を出している主張を見ることができ, その合意要求に対して
合意・否認・保留のどれかを選択することができる.
また, 既にある主張に対して関係をはる主張を立てることができる.
ここでいう関係は反論・質問・提案のどれかである.

上記の操作で合意形成支援を行うWebアプリケーションを作成する.
また, 今回は合意がとられている様子がみられるよう, リアルタイムでデータが更新されていく
ものを作る.

\subsection{具体的な実装内容}
サーバサイドの実装はTinkerPopでデータを保持し, play frameworkがREST APIを提供する.
クライアントサイドはJavaScript/HTML/CSSを用いる.
クライントサイドはサーバサイドが提供するREST APIを叩いてデータを取得しブラウザへと
表示をおこなう.
実装の概略を図\ref{fig:arch}に示す.

\begin{figure}[tb]
  \begin{center}
   \includegraphics[scale=0.30]{figure/architecture.pdf}
    \caption{Webアプリ実装概要}
    \label{fig:arch}
  \end{center}
\end{figure}


\subsection{モデルの実装}




\subsection{時系列ごとにみられる合意状況}
合意形成を行う最中に, 一度否認された主張が合意されたり, 合意されていた主張が別の主張の登場で
否認されるといったことも起きることが考えられた.
この場合, 合意状態の時間的な変化も見ることより説明責任が果たせるのでは無いかと思われた.
そこでタイムスタンプをノードのプロパティとして新たに追加し, 更に主張同士の繋がりでできる木構造
のデータのコピーを行うことにした.
コピーされた木は最新の木に対してprevエッジで繋げた.
これにより, prevエッジを辿ることで前の合意状態を見ることができるようになった(図\ref{fig:temporal}).

\begin{figure}[tb]
  \begin{center}
   \includegraphics[scale=0.30]{figure/temporal.pdf}
    \caption{時系列毎の合意状態の保存}
    \label{fig:temporal}
  \end{center}
\end{figure}