# HG changeset patch # User Nobuyasu Oshiro # Date 1364761323 -32400 # Node ID 590aeefbfb794283bff5db63185aafb603b50bf4 # Parent 296354ad0003eb80b7fe347f57f1be39898c1140 modified implmodel.tex diff -r 296354ad0003 -r 590aeefbfb79 paper/.DS_Store Binary file paper/.DS_Store has changed diff -r 296354ad0003 -r 590aeefbfb79 paper/figure/TOModel0_2.pdf Binary file paper/figure/TOModel0_2.pdf has changed diff -r 296354ad0003 -r 590aeefbfb79 paper/figure/d_add.pdf Binary file paper/figure/d_add.pdf has changed diff -r 296354ad0003 -r 590aeefbfb79 paper/figure/deos_proccess.pdf Binary file paper/figure/deos_proccess.pdf has changed diff -r 296354ad0003 -r 590aeefbfb79 paper/implmodel.tex --- a/paper/implmodel.tex Mon Apr 01 02:41:10 2013 +0900 +++ b/paper/implmodel.tex Mon Apr 01 05:22:03 2013 +0900 @@ -19,20 +19,61 @@ また, 今回は合意がとられている様子がみられるよう, リアルタイムでデータが更新されていく ものを作る. -\subsection{モデルの実装に使うデータベース} -ここ修正必要. -GraphDBはノードとエッジにより表されるグラフ構造であるデータの扱いが得意なデータベースである. -データの情報をノードとエッジで持ち, ノードとエッジはそれぞれプロパティを持つことができる. -ノード同士はエッジで繋がれ, トラバースと呼ばれる操作でノード間を渡り歩き情報を +\subsection{モデルの実装に使用するデータベース} +提案するモデルは木構造で議論を深めていく. +このことを念頭に, モデルの実装に使用するデータベースについて考えた. +結果, モデルの実装にはGraphDBを使用することにした. +なぜなら, 木構造は閉路を持たないグラフであり, GraphDBはグラフのデータの扱いが特異な +データベースだからである. + +GraphDBはデータの情報をノードとエッジで持ち, ノードとエッジはそれぞれプロパティを持つことができる. +ノード同士はエッジで繋ぐこともでき, トラバースと呼ばれる操作でノード間を渡り歩き情報を 引き出すことができる. -エッジには関係があり, トラバースは渡り歩くエッジの関係を指定することで行える. +また, エッジには関係が定義され, トラバースは渡り歩くエッジの関係を指定することで行える. -GraphDBは各ノードが自身に繋がっているエッジの情報を保持しているため次のノードへと +GraphDBは各ノード, 各エッジが自身に繋がっているエッジ, ノードの情報を保持しているため次のノードへと 渡り歩くことが容易である. -しかしRDBでこれを表そうとするとindexを引いてエッジの情報をとってきて次のノードの情報をとるという -手間がかかる.GraphDBを用いることでその手間のなくすことを狙いとする. +仮に, RDBでグラフを表そうとすると, まずノードの情報を引き, 次にindexを引いてエッジの情報をとってきて +次のノードの情報をとるという手間がかかる. +GraphDBを用いることでその手間のなくすことを狙いとする. + +\subsection{GraphDBによるモデルの表現} +GraphDBを用いて提案したモデルを表現する. +提案するモデルの{\bf ユーザ}と{\bf 主張}がノードで, {\bf 関係}がエッジにあたる. +各主張とユーザとの関係を示したものが\figref{fig:tomodel0}となる.四角がノードを, 矢印がエッジをそれぞれ表している. + +\begin{figure}[tb] + \begin{center} + \includegraphics[scale=0.35]{figure/TOModel0_2.pdf} + \caption{主張ノードとユーザノードの繋がり} + \label{fig:tomodel0} + \end{center} +\end{figure} -次は, 合意形成支援を行うに辺り提案したモデルを説明する. +今回使用したGraphDBはTinkerPopになる. +TinkerPopで実際にノードとエッジを作成するコードの例を示す. +\begin{lstlisting} +Graph g = new TinkerGraph(); +Vertex claim = g.addVertex(ID); +Edge relation = g.addEdge(ID,From,To,Label); +claim.setProperty(PropertyName,PropertyValue); +\end{lstlisting} + +1行目はグラフの作成を行っている. +引数にパスをいれると, パスにデータが保存される. +2行目ではノードの作成を行なっている. +引数には設定したいIDを引数に取る. +3行目では関係(エッジ)の作成を行なっている. +設定したいIDを引数に取る. +引数のFromとToはそれぞれノードで, FromからTo向きへのエッジが作成される. +4行目ではプロパティの作成を行っている. +ノード・エッジともに同様のメソッドでプロパティの作成ができる. + +このようにノードとエッジ, それとプロパティの作成を行なっていく. +\figref{fig:tomodel0}において主張2,3からユーザへのエッジは省略しているが、 +各主張ノードからはそれぞれ作者と合意要求の関係となるエッジがユーザノードへと繋げられる. + + \subsection{実装内容} diff -r 296354ad0003 -r 590aeefbfb79 paper/introduction.tex --- a/paper/introduction.tex Mon Apr 01 02:41:10 2013 +0900 +++ b/paper/introduction.tex Mon Apr 01 05:22:03 2013 +0900 @@ -6,7 +6,7 @@ DEOSプロジェクトは2006年に独立行政法人科学技術機構(JST)はCRESTプログラムの1つとして始まったプロジェクトである.\cite{d_add2012} DEOSプロジェクトは, 変化し続ける目的や環境の中でシステムを適切に対応させ, 継続的にユーザが求めるサービスを提供することができるシステムの構築法を 開発することを目標としている.\cite{deos2012} -DEOSプロジェクトではそれらの技術体系を「オープンシステムディペンダビリティ」として定義し, それをDEOSプロセスとしてまとめた.(\figref{fig:deos_process}) +DEOSプロジェクトではそれらの技術体系を「オープンシステムディペンダビリティ」として定義し, それをDEOSプロセスとしてまとめた.(\figref{fig:deos_proccess}) DEOSプロセスにおいて, 全てのデータを保持するD-ADD(DEOS Agreement Description Database)と呼ばれるデータベースがある. D-ADDで扱うデータにはステークホルダ間で合意された契約書等も含まれる. @@ -18,7 +18,7 @@ \begin{figure}[tb] \begin{center} \includegraphics[scale=0.22]{figure/deos_proccess.pdf} - \caption{DEOS プロセス\cite{deos_proccess2013}} - \label{fig:deos_process} + \caption{DEOS プロセス} + \label{fig:deos_proccess} \end{center} \end{figure} diff -r 296354ad0003 -r 590aeefbfb79 paper/model.tex --- a/paper/model.tex Mon Apr 01 02:41:10 2013 +0900 +++ b/paper/model.tex Mon Apr 01 05:22:03 2013 +0900 @@ -1,6 +1,6 @@ \section{提案するモデル} ある事柄に対して合意を取る場合, 議論が行われる. -そこで, 合意形成支援を行うため, 議論のモデルから考えてみた. +そこで, 合意形成支援を行うため, 議論のモデルから考えた. %いくつか上げられたモデルのうちの1つが次のモデルとなる. \subsection{モデルの概要} @@ -40,23 +40,6 @@ \end{itemize} \end{itemize} -\subsection{GraphDBによる表現} -GraphDBを用いて上記のモデルを表現する. -提案するモデルの{\bf ユーザ}と{\bf 主張}がノードで, {\bf 関係}がエッジにあたる. -各主張とユーザとの関係を示したものが\figref{fig:tomodel0}となる.四角がノードを, 矢印がエッジをそれぞれ表している. - -\begin{figure}[tb] - \begin{center} - \includegraphics[scale=0.35]{figure/TOModel0_2.pdf} - \caption{主張ノードとユーザノードの繋がり} - \label{fig:tomodel0} - \end{center} -\end{figure} - -%主張が合意されたという状態になるのは, 合意要求をだしている相手から合意をもらえたときとなる. -\figref{fig:tomodel0}において主張2,3からユーザへのエッジは省略しているが、 -各主張ノードからはそれぞれ作者と合意要求の関係となるエッジがユーザノードへと繋げられる. - \subsection{合意状況の計算} このモデルにおいて主張は一人以上のユーザに合意要求を出して合意してもらわなければならない. @@ -105,10 +88,10 @@ \end{figure} -\subsection{トゥールミンモデル} +\subsection{主張のモデル} また, それぞれ個々の主張に対してもモデルを考えてみる. 今回は, トゥールミンモデルと呼ばれるモデルを適用する. -トゥールミンモデルは1つの主張には以下の5つの情報も必要であるとするモデルである. +トゥールミンモデルは1つの主張に以下の5つの情報も必要であるとするモデルである. \begin{itemize} \item データ(Data) \item 根拠(Warrant) diff -r 296354ad0003 -r 590aeefbfb79 paper/omni/TOModel0_2.graffle --- a/paper/omni/TOModel0_2.graffle Mon Apr 01 02:41:10 2013 +0900 +++ b/paper/omni/TOModel0_2.graffle Mon Apr 01 05:22:03 2013 +0900 @@ -53,6 +53,124 @@ Bounds + {{161.5, 277}, {81, 18}} + Class + ShapedGraphic + ID + 37 + Magnets + + {1, 1} + {1, -1} + {-1, -1} + {-1, 1} + {0, 1} + {0, -1} + {1, 0} + {-1, 0} + {-0.5, -0.233518} + {-0.49144199999999999, 0.26006299999999999} + {0.50711799999999996, -0.22408600000000001} + {0.50711799999999996, 0.267179} + {-0.27431, -0.474028} + {0.27977999999999997, -0.47847800000000001} + {0.29393799999999998, 0.54304399999999997} + {-0.28623199999999999, 0.55380399999999996} + + Shape + Rectangle + Style + + fill + + Draws + NO + + shadow + + Draws + NO + + stroke + + Draws + NO + + + Text + + Text + {\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf510 +{\fonttbl\f0\fnil\fcharset128 HiraKakuProN-W3;} +{\colortbl;\red255\green255\blue255;} +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc + +\f0\fs24 \cf0 \'8a\'d6\'8c\'57} + VerticalPad + 0 + + + + Bounds + {{45, 277}, {81, 18}} + Class + ShapedGraphic + ID + 36 + Magnets + + {1, 1} + {1, -1} + {-1, -1} + {-1, 1} + {0, 1} + {0, -1} + {1, 0} + {-1, 0} + {-0.5, -0.233518} + {-0.49144199999999999, 0.26006299999999999} + {0.50711799999999996, -0.22408600000000001} + {0.50711799999999996, 0.267179} + {-0.27431, -0.474028} + {0.27977999999999997, -0.47847800000000001} + {0.29393799999999998, 0.54304399999999997} + {-0.28623199999999999, 0.55380399999999996} + + Shape + Rectangle + Style + + fill + + Draws + NO + + shadow + + Draws + NO + + stroke + + Draws + NO + + + Text + + Text + {\rtf1\ansi\ansicpg1252\cocoartf1138\cocoasubrtf510 +{\fonttbl\f0\fnil\fcharset128 HiraKakuProN-W3;} +{\colortbl;\red255\green255\blue255;} +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc + +\f0\fs24 \cf0 \'8a\'d6\'8c\'57} + VerticalPad + 0 + + + + Bounds {{156, 314}, {92, 52}} Class ShapedGraphic @@ -643,7 +761,7 @@ MasterSheets ModificationDate - 2013-03-30 19:06:29 +0000 + 2013-03-31 18:45:59 +0000 Modifier Nobuyasu Oshiro NotesVisible diff -r 296354ad0003 -r 590aeefbfb79 paper/omni/d_add.graffle --- a/paper/omni/d_add.graffle Mon Apr 01 02:41:10 2013 +0900 +++ b/paper/omni/d_add.graffle Mon Apr 01 05:22:03 2013 +0900 @@ -105,7 +105,7 @@ {\colortbl;\red255\green255\blue255;} \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\qc -\f0\fs24 \cf0 \'83\'4f\'83\'89\'83\'74DB\ +\f0\fs24 \cf0 GraphDB\ Key/Value Store\ \'83\'68\'83\'4c\'83\'85\'83\'81\'83\'93\'83\'67DB} VerticalPad @@ -489,7 +489,7 @@ MasterSheets ModificationDate - 2013-03-30 13:25:35 +0000 + 2013-03-31 18:09:37 +0000 Modifier Nobuyasu Oshiro NotesVisible diff -r 296354ad0003 -r 590aeefbfb79 paper/sigos.tex --- a/paper/sigos.tex Mon Apr 01 02:41:10 2013 +0900 +++ b/paper/sigos.tex Mon Apr 01 05:22:03 2013 +0900 @@ -1,6 +1,22 @@ \documentclass[techrep]{ipsjpapers} \usepackage[dvipdfm]{graphicx} \usepackage{url} +\usepackage{listings,jlisting} + +\lstset{%listings +breaklines=true, +tabsize=2, +frame=shadowbox, +basicstyle=\scriptsize, +showstringspaces=false, +numbers=left, +framexleftmargin=6mm, +numberstyle=\scriptsize, +stepnumber=1, +numbersep=1zw, +language=java +} + \input{dummy.tex} %% Font @@ -76,7 +92,6 @@ \input{acknowledgments} -\nocite{deos_proccess2013} \nocite{deos2012} \nocite{d_add2012} \nocite{toulmin}