\documentclass[a4paper,twocolumn]{jsarticle}
\usepackage[dvips]{graphicx}
\pagestyle{empty}
\西暦
\setlength{\textheight}{240mm}
\setlength{\topmargin}{-10mm}
\setlength{\textwidth}{165mm}
\hyphenation{front-end}

\title{アドレス帳同期システムの開発}
\date{}%ここはブランク
\author{05H101 藤木仙雅}

\begin{document}
\maketitle

 \section{はじめに}
 
 今日では様々な場所にアドレス帳が分散している。
 例えばパーソナルコンピュータ(以下、コンピュータ)内に
 年賀状作成ソフトウェア、メーラ、Webメールなどのアドレス帳が存在し、
 さらには携帯電話端末にもアドレス帳が存在する。
 このように複数のアドレス帳を扱っていると管理するのは容易ではなく、
 全てのアドレス帳に一つずつ情報を入力していくには非常に手間がかかる。
 さらには情報の入力洩れなども起こりうる。
 そこでアドレス帳同期、共有システムを用いて分散したアドレス帳を集約し、
 アドレス帳管理を容易にすることができる。
 そこで本研究ではアドレス帳同期システムを開発した。
 
 \section{研究の目的}

 コンピュータ内や携帯電話端末などに分散されたアドレス帳を集約し
 同期させることを目的とする。
 幅広いユーザが扱いやすいシステムにするため、マルチプラットフォー
 ムに対応させ、GUIとCUIで動作させるようにする事も目的とする。
  
 \section{アドレス帳同期システム(Address-Book Synchronous System)}

  本システムではアドレス帳を1件ずつ入力し集約、同期させていく。
  アドレス帳を集約する際に同一名称で登録されているデータを発見すれば、
  ユーザ側に双方のデータが同一ユーザか判断させる。判断材料として、各
  データの氏名、住所、電話番号やE-MAILアドレスを表示。全ての集約が完
  了すればRFC2426で定められているvCard形式のデータ型(``X-''で始まる
  非標準の型を除く)に当てはめる。
  集約が完了すれば、Backupデータを作成し、アドレス帳を同期させる。
  同期させる際には各アドレス帳のvCard形式のversionと文字コードを調べ、
  対応したversionと文字コードに変換させ同期させる。文字コードの変換には
  nkfを用いる。
  アドレス帳の更新の際には同期させているアドレス帳の最終更新時間を取得。
  最終更新時間の新しいものとBackupデータの更新時間を比較し、Backupデータ
  の更新時間が古ければ更新を開始する。
  また付加した機能として同期させたアドレス帳一覧の表示、同期させたアドレ
  ス帳の解除やアドレス帳更新の確認がある。
  
 \section{まとめ}

 本研究では、分散したアドレス帳を集約し、同期させるシステムを開発した。
 これにより複数のアドレス帳の管理を容易にし、情報入力の手間を省いた。
 また、対応するアドレス帳にvCard形式を用いることにより、様々なソフトウェアに
 対応することができる。

 テスト運用として、携帯電話端末(docomo P905i)、MS-Windowsに標準搭載
 されている``アドレス帳''ソフトウェアとGmailアドレス帳を用いてアドレス
 帳の同期を行い、アドレス帳同期システムとして稼働することを確認した。

 現状の問題点として、Backupデータは過去一回分しか作成しておらず、ユーザ
 の誤操作により意図しない結果により更新してしまった場合のことを考慮して
 いない。
 CUIでしか実行できないのでGUIでも実行できるようにする。
 Ruby環境のマシンでしか稼働せず、MS-Windowsで稼働させるためにExerbや
 RubyScript2Exeを用いてWindows実行形式であるexeファイルに変換させる。
 携帯電話端末のアドレス帳はJIS X 0201右側部分が使われている。
 本システムではJIS X 0201右側部分が認識されておらず携帯電話端末で集約したア
 ドレス帳を読み込んだ際、振り仮名が空白となってしまう。

 今後の課題として、現状の問題点やヒューマンエラーなどを出来るだけ駆除し、
 アドレス帳同期システムとして扱いやすいシステムを構築していく。

\end{document}
