<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>CreativeStyle</title>
        <link>http://www.kadoppe.net/</link>
        <description>見たこと　聞いたこと　考えたこと</description>
        <language>ja</language>
        <copyright>Copyright 2008</copyright>
        <lastBuildDate>Thu, 03 Jul 2008 11:40:01 +0900</lastBuildDate>
        <generator>http://www.sixapart.com/movabletype/</generator>
        <docs>http://www.rssboard.org/rss-specification</docs>
        
        <item>
            <title>「ICSOC」という国際学会について調べてみた。</title>
            <description><![CDATA[<p>「ICSOC」という国際学会について調べてみました。</p>  <p>ICSOCとは「International Conference on Service Oriented Computing」の略で、サービスオリエンテッドコンピューティングと呼ばれる分野を取り扱う学会です。   <br /><a title="http://cgi.cse.unsw.edu.au/~soc/icsoc08/" href="http://cgi.cse.unsw.edu.au/~soc/icsoc08/">http://cgi.cse.unsw.edu.au/~soc/icsoc08/</a></p>  <p>2002年から開催されている、比較的新しい学会のようです。</p>  <p>サービスオリエンテッドコンピューティングとは、</p>  <blockquote>   <p>ソフトウェアアプリケーションの設計・構築・配布・消費の方法を変える分散コンピューティングのための、新しい学際的なパラダイム     <br />（Service oriented computing is an emerging cross-disciplinary paradigm for distributed computing that is changing the way software applications are designed, architected, delivered and consumed.）</p> </blockquote>  <p>を指すみたい。（日本語訳まずくてごめんなさい）。</p>  <p>「Call for Research Papers」を読んでみたところ、以下の分野に関する研究発表・論文を募集しているようです。   <br />（メモ代わりに書きましたが日本語訳まずいところたくさんです。ごめんなさい）</p>  <ul>   <li>サービス基盤（Service Foundations）</li>    <ul>     <li>サービスの概念の、形式的で明確な定義（Formal and precise definitions of the notion of service）</li>      <li>サービスのためのモデル技術と規格（specification and modeling techniques for services）</li>      <li>モデル駆動のサービス開発（model-driven service development）</li>      <li>機能的、非機能的な品質の側面（functional and non-functional quality aspects）</li>      <li>形式的な組織の関係（formal composition relations）</li>      <li>リスク査定と品質保証（risk assessment and quality assurance）</li>      <li>改良とリファクタリング（refinement and refactoring）</li>      <li>プログラミング・実行モデル（programming and runtime models）</li>      <li>互換性と適合性チェック（compatibility and conformance checking）</li>      <li>セキュリティと信頼性（security and trust）</li>      <li>変更管理（change management）</li>   </ul>    <li>ビジネスサービスモデリング（Business Service Modeling）</li>    <ul>     <li>ビジネスゴールと要件のキャプチャリングのための方法とツール（Methods and tools for capturing business goals and requirements）</li>      <li>ビジネスサービスへの分解（decomposition into business services）</li>      <li>ビジネスプロセス（business processes）</li>      <li>ビジネスポリシー（business policies）</li>      <li>ビジネスモデリング（modeling）</li>      <li>ビジネス解析（analysis）</li>      <li>ビジネスシミュレーション（simulation）</li>   </ul>    <li>サービスを用いたシステムの統合システム（Integrating Systems of Systems using Services）</li>    <ul>     <li>統合アーキテクチャのための解析・設計技術（Analysis and design techniques for integration architectures）</li>      <li>サービスとSOAのためのアーキテクチャとデザインパターン（architectures and design patterns for services and SOAs）</li>      <li>連合した認証と権限（federated authentication and authorization）</li>      <li>データとサービスの分散（data and service distribution）</li>      <li>ストレージと計算の仮想化（virtualization of storage and computation）</li>      <li>分散SOAのポリシー管理と統治（policy management and governance in distributed SOAs）</li>      <li>サービスのライフサイクル管理（service-lifecycle management）</li>      <li>サービス統合オントロジー（service integration ontologies）</li>      <li>変更管理（change management）</li>      <li>サービスのモビリティ（mobility of services）</li>   </ul>    <li>サービスエンジニアリング（Service Engineering）</li>    <ul>     <li>サービスの記述（service description）</li>      <li>発見（discovery）</li>      <li>コンフィグレーション（configuration）</li>      <li>サービスマイニング（service mining）</li>      <li>サービス開発・管理・検査・検証のための手法・ツール（service mining, methods and tools for service development, governance, verification and validation）</li>      <li>サービスに関する情報誘出（information elicitation about services）</li>      <li>サービスの告知（service advertisement）</li>      <li>意味ベースのサービス発見（semantics-based service discovery）</li>      <li>組織化されたサービスの発見（orchestration discovery）</li>      <li>制約のある仕様・施行（constraint specification and enforcement）</li>   </ul>    <li>サービスの構築（Service Assembly）</li>    <ul>     <li>サービスの開発と発見（Service development and discovery）</li>      <li>サービス構成アーキテクチャ（service composition architectures）</li>      <li>サービス・リソースのレジストリと関連づけられたメタデータ（service and resource registries and associated metadata）</li>      <li>サービスの起動・通知のための標準・技術（standards and technologies for service invocation and notification）</li>      <li>意味的なマッチング・契約・交渉（semantic matching, contracting and negotiation)</li>      <li>構築のための展開戦略（deployment strategies for assemblies）</li>      <li>サービスの配布とインストールのための戦略とアーキテクチャ（strategies and architectures for service delivery and installation）</li>      <li>展開トポロジと関連づけられたメタデータ（deployment topologies and associated metadata）</li>      <li>サービスのバージョニングとアップデート（service versioning and update）</li>   </ul>    <li>サービス管理（Service Management）</li>    <ul>     <li>サービスに関連したデータの集合（Instrumentation and service-related data aggregation）</li>      <li>エンドツーエンドの測定・解析・キャパシティプランニング（end-to-end measurement, analysis, modeling and capacity planning）</li>      <li>展開トポロジの定義（definition of deployment topology）</li>      <li>インフラのコンフィグレーション（infrastructure configuration）</li>      <li>SOAのための問題測定（problem determination for SOAs）</li>      <li>Information Technology Infrastructure Libraryのプロセス（ITIL processes）</li>      <li>ライブシステムでの変更管理（change management in live systems）</li>      <li>サービスの移動（service migration）</li>      <li>サービスのモビリティ（service mobility）</li>   </ul>    <li>SOAのランタイム（SOA Runtime）</li>    <ul>     <li>仲介・変形・ルーティングためのESB（Enterprise service bus for mediation, transformation and routing）</li>      <li>実行時の開発とサービスの登録（runtime development and service registries）</li>      <li>レガシーアプリケーションの統合（integration of legacy applications）</li>      <li>SOAアプリケーションと実行時の再コンフィグレーション（SOA adaptation and runtime reconfiguration）</li>      <li>データアクセス・データ統合・スケーラビリティ・トポロジ・最適化のための情報サービス（information services for data access and data integration, scalability, topology and optimization）</li>      <li>サービス指向のミドルウェア（service-oriented middleware）</li>      <li>ポリシーベースの設定と計算負荷管理（policy based configuration and workload management）</li>   </ul>    <li>QoS（Quality of Service）</li>    <ul>     <li>信頼性の高いサービス指向コンピューティング（Reliable service-oriented computing）</li>      <li>サービス指向コンピューティングにおけるセキュリティとプライバシー（security and privacy in service-oriented computing）</li>      <li>SLAとポリシー仕様と制定（SLA and policy specification and enactment）</li>      <li>QoSネゴシエーション（QoS negotiation）</li>      <li>サービスレベルの自律的な管理（autonomic management of service levels）</li>      <li>経験的な学習とQoSのベンチマーキング（empirical studies and benchmarking of QoS）</li>      <li>SoAにおける性能と信頼性予測（performance and dependability prediction in SOA）</li>   </ul>    <li>サービスアプリケーション（Service Application (Grid, E-science, Government, etc.)）</li>    <ul>     <li>下部構造資源の管理のためのサービス・アーキテクチャ（Services and architectures for management of infrastructural resources）</li>      <li>データ・計算に集中したアプリケーション（data- and compute-intensive applications）</li>      <li>ジョブスケジューリングのための実行と資源割り当てサービス（execution and resource allocation services for job scheduling）</li>      <li>複数資源管理の連携のためのプロトコル（protocols for coordination across multiple resource managers）</li>      <li>ビジネス価値ベースの割り当て（business-value based allocation）</li>      <li>センサーと作動装置情報の獲得と散布（acquisition and dissemination of sensor and actuator information）</li>      <li>プロトタイプシステムとツールキット（prototype systems and toolkits）</li>   </ul>    <li>サービスのビジネス・経済的側面（Business and Economical Aspects of Services）</li>    <ul>     <li>サービスとその展望のためのビジネス価値の見積もり（business value estimation for services and service landscapes）</li>      <li>サービスの移行に関して（in connection with service migration）</li>      <li>サービスの切断操作（disconnected operation of services）</li>      <li>モバイルサービスの発見とアクセス（discovery of and access to mobile services）</li>      <li>サービスネットワークの社会的側面（social aspects of service networks）</li>      <li>仮想的な企業や組織の生成・管理のための革新的な戦略（innovative strategies for creation and management of virtual enterprises and organizations）</li>   </ul> </ul>  <p>「サービス」という単語が頻繁に登場しています。   <br />SOAにおけるサービス（人間にとって意味のある処理の最小単位）と同義でしょうか？</p>  <p>今までの自分の研究分野とは少し違った学会なので、こんな研究もあるのか！と少しびっくりした感じです。   <br />自分にとって新しい分野に積極的に出て行くことができたらな、と思います。</p>]]></description>
            <link>http://www.kadoppe.net/2008/07/icsoc.html</link>
            <guid>http://www.kadoppe.net/2008/07/icsoc.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">研究</category>
            
            
            <pubDate>Thu, 03 Jul 2008 11:40:01 +0900</pubDate>
        </item>
        
        <item>
            <title>「BPEL4People」について少し調べてみました</title>
            <description><![CDATA[<p>「BPEL4People」について知る必要があったので、少し調べてみました。</p>  <h3>BPEL4Peopleとは</h3>  <p>BPEL4Peopleとは、「BPEL for People」、つまり人間のためのBPELのことを指します。</p>  <p>BPELは本来、SOAの概念を実現するためにWebサービスを連携させて一つのシステムを構築する際の、Webサービスの連携フローを記述するために用いられるXMLベースの言語です。</p>  <p>しかし、多くのシステムの稼働時では、人が参加して作業を実行したり確認したりすることが多くなっており、Webサービス同士の連携のみ記述できるBPELではシステムの動作・仕様を正確に表現することが難しくなってきたようです。</p>  <p>そこで、<strong>人の行動・アクティビティもWebサービスと同じようにサービスとして統一的に記述</strong>することができる、BPEL4Peopleが開発されました。    <br />人の行動をサービスとみなし、それらを含めたWebサービス同士の連携を記述可能とすることで、より詳細、正確なSOAに基づいたシステムが構築可能になるようです。</p>  <h3>まとめ</h3>  <p>人の行動もサービスとして統一的に記述するというBPEL4Peopleのアイデアに非常に関心を持ちました。</p>  <p>イレギュラーな行動をする可能性がある人をサービスとみなすことをは、非常に難しいことだと思います。   <br />しかし、これが実現されると、世界でもっとも知的なサービス（人をサービスとみなしたもの）を既に存在するWebサービスと連携して利用することが出来るようになります。</p>  <p>これはすごい。   <br />実用化例はあるんでしょうか？気になるところです。</p>  <p>自分の研究でも利用したいと思うので、下記の仕様書をより詳しく読んでみたいと思います。</p>  <ul>   <li><a href="http://www.ibm.com/developerworks/webservices/library/specification/ws-bpel4people/">WS-BPEL Extension for People</a></li> </ul>  <p>参考文献</p>  <ul>   <li><a href="http://journal.mycom.co.jp/news/2007/06/26/028/index.html">ITベンダーら6社、SOA環境でのBPMを拡張する「BPEL4People」仕様発表 | エンタープライズ | マイコミジャーナル</a></li>    <li><a href="http://www.beasys.co.jp/dev2dev/pub/a/2007/06/bpel4people.html">dev2dev： BPEL4People</a></li>    <li><a href="http://www.infoq.com/jp/news/2008/01/bpel4people-oasis">InfoQ: OASIS入りを目指すBPEL4PeopleとWS-HumanTask</a></li> </ul>]]></description>
            <link>http://www.kadoppe.net/2008/06/bpel4people.html</link>
            <guid>http://www.kadoppe.net/2008/06/bpel4people.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">インターネット</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">プログラミング</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">研究</category>
            
            
            <pubDate>Mon, 30 Jun 2008 18:22:00 +0900</pubDate>
        </item>
        
        <item>
            <title>「SOA」について少し調べてみました</title>
            <description><![CDATA[<p>「SOA」という言葉について知る必要が出てきたので、少しだけ調べてみました。</p>  <h3>SOAとは</h3>  <p>SOAとは、システム全体を「サービス」と呼ばれる部品を組み合わせることによって構築しようという手法、およびシステムアーキテクチャのことを指します。</p>  <p>部品を組み合わせてシステムを構築する手法は、オブジェクト指向などが従来にも存在していました。    <br />それらの従来手法とSOAの違いは、組み合わせる部品（SOAにおけるサービス）の定義にあります。</p>  <p>SOAにおけるサービスは、実際に人間にとって意味のある単位を最小単位としています。    <br />「人間にとって意味のある」というのは曖昧な表現ですが、しばしば業務上の処理単位を示しているようです。     <br />（注文受付、在庫確認、発注処理など）</p>  <p>つまりSOAとは、<strong>人間にとって意味のある業務上の処理を単位としてサービスを定義し、それらを組み合わせることで一つの大きなシステムを作り上げることのこと</strong>を指すのでしょうか。</p>  <p>SOAにおけるサービスは、グローバルに公開され、組織外における利用も想定されているため、標準的な技術によって実現、呼び出し可能であることが必要です。    <br />サービスの呼び出し方法・インタフェースとして、しばしばWebサービスが利用されるみたい。     <br />Webサービスは、XML、SOAP、WSDL、UDDIなどの標準的な技術によって構成されるので、SOAのサービスが満たすべき条件はクリアしていますね。     <br />サービスの処理部分は何で実装されていても（Java or .Net or その他）いいようです。</p>  <p>また、複数のサービスを連携して一つのシステムを作り上げる必要があるため、それらの連携を記述する方法も標準化されている必要があります。    <br />連携手順の記述言語としては、BPELと呼ばれるXMLベースの言語が用いられるみたい。     <br />BPELは、BPMNという表記法によって図として作成することができ、視覚的に簡単に作成可能だとか。</p>  <h3>まとめ</h3>  <p>少し勉強した感じですが、すごく便利そうな概念ですね。    <br />実際に世の中にSOAの考え方で構築されたシステムってどのくらい稼働しているんだろう。</p>  <p>あと、業務システムだけじゃなく、たとえば家電機器の連携に使ったりしても面白いんじゃないかと思いました。    <br />既に研究されているような気もしますが。</p>  <p>新しいことを勉強するのってすごく楽しいですね。    <br />これからも色々勉強したことをメモしていきまーす。</p>  <h3>参考文献</h3>  <ul>   <li><a href="http://ja.wikipedia.org/wiki/%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9%E6%8C%87%E5%90%91%E3%82%A2%E3%83%BC%E3%82%AD%E3%83%86%E3%82%AF%E3%83%81%E3%83%A3" target="_blank">サービス指向アーキテクチャ – Wikipedia</a> </li>    <li><a href="http://www.atmarkit.co.jp/aig/04biz/soa.html" target="_blank">＠IT情報マネジメント用語事典 [SOA (service-oriented architecture)]</a> </li>    <li><a href="http://e-words.jp/w/SOA.html" target="_blank">IT用語辞典 e-Words ： SOAとは 【サービス指向アーキテクチャ】 (Service Oriented Architecture) ─ 意味・解説</a> </li>    <li><a href="http://www-06.ibm.com/jp/software/websphere/developer/soa/">IBM WSDD | SOA入門 - Japan</a> </li> </ul>]]></description>
            <link>http://www.kadoppe.net/2008/06/soa.html</link>
            <guid>http://www.kadoppe.net/2008/06/soa.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">インターネット</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">プログラミング</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">研究</category>
            
            
            <pubDate>Mon, 30 Jun 2008 17:57:00 +0900</pubDate>
        </item>
        
        <item>
            <title>博士課程入学試験の参考書を入手</title>
            <description><![CDATA[<p>8月に行われる博士課程入学試験の参考書を入手しました。    <br />「情報学基礎」という科目の参考書です。</p>  <p>参考書として指定されているのは以下の2冊です。</p>  <p></p>  <table cellpadding="5" border="0"><tbody>     <tr>       <td colspan="2"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4756101585/creativestylekadoppe-22/ref=nosim/" target="_blank">やさしいコンピュータ科学 (Ascii books)</a></td>     </tr>      <tr>       <td valign="top"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4756101585/creativestylekadoppe-22/ref=nosim/" target="_blank"><img alt="やさしいコンピュータ科学 (Ascii books)" src="http://ecx.images-amazon.com/images/I/21C-lkS2sFL._SL160_.jpg" border="0" /></a></td>        <td valign="top"><font size="-1">Alan W. Biermann 和田 英一            <br />            <br />ASCII 1993-06             <br />売り上げランキング : 93388             <br />            <br /><strong>おすすめ平均 </strong><img alt="star" src="http://g-images.amazon.com/images/G/01/detail/stars-3-5.gif" />             <br /><img alt="star" src="http://g-images.amazon.com/images/G/01/detail/stars-5-0.gif" />やさしくて面白い             <br /><img alt="star" src="http://g-images.amazon.com/images/G/01/detail/stars-3-0.gif" />プログラミングの入門に             <br /><img alt="star" src="http://g-images.amazon.com/images/G/01/detail/stars-3-0.gif" />やさしい？？コンピューター科学             <br />            <br /><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4756101585/creativestylekadoppe-22/ref=nosim/" target="_blank">Amazonで詳しく見る</a></font><font size="-2"> by <a href="http://www.goodpic.com/mt/aws/index.html">G-Tools</a></font></td>     </tr>   </tbody></table>  <table cellpadding="5" border="0"><tbody>     <tr>       <td colspan="2"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4785601175/creativestylekadoppe-22/ref=nosim/" target="_blank">情報科学の基礎理論 (21世紀を指向した電子・通信・情報カリキュラムシリーズ)</a></td>     </tr>      <tr>       <td valign="top"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4785601175/creativestylekadoppe-22/ref=nosim/" target="_blank"><img alt="情報科学の基礎理論 (21世紀を指向した電子・通信・情報カリキュラムシリーズ)" src="http://images-jp.amazon.com/images/P/4785601175.09.MZZZZZZZ.jpg" border="0" /></a></td>        <td valign="top"><font size="-1">上林 弥彦            <br />            <br />昭晃堂 1997-05             <br />売り上げランキング : 465044             <br />            <br />            <br /><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4785601175/creativestylekadoppe-22/ref=nosim/" target="_blank">Amazonで詳しく見る</a></font><font size="-2"> by <a href="http://www.goodpic.com/mt/aws/index.html">G-Tools</a></font></td>     </tr>   </tbody></table>  <p>「やさしいコンピュータ科学」のプログラミング言語入門の項で使用されている言語は「Pascal」です。    <br />実際にさわったことはないので、少し勉強する必要があるかもしれません。</p>  <p>勉強がんばるぞー！</p>]]></description>
            <link>http://www.kadoppe.net/2008/06/post-36.html</link>
            <guid>http://www.kadoppe.net/2008/06/post-36.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">ライフ</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">研究</category>
            
            
            <pubDate>Fri, 27 Jun 2008 14:55:00 +0900</pubDate>
        </item>
        
        <item>
            <title>ソフトウェアエージェントって何だろう？</title>
            <description><![CDATA[<p>
「ソフトウェアエージェント」という言葉について知っておく必要が出てきたので、Wikipediaで簡単に調べてみました。<br /><a href="http://ja.wikipedia.org/wiki/%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E3%82%A8%E3%83%BC%E3%82%B8%E3%82%A7%E3%83%B3%E3%83%88" target="_blank">
ソフトウェアエージェント - Wikipedia</a>
</p>

<p>ソフトウェアエージェントとは、<strong>ユーザとユーザ、ユーザとソフトウェア、ソフトウェアとソフトウェアの間で仲介的な役割を果たすソフトウェア</strong>を示す言葉だそうです。
</p>

<p>ソフトウェアエージェントの定義は人によってまちまちみたいなのですが、その中でも共通する要素として、以下が挙げられるみたい。
</p>

<ul>
<li><strong>永続性</strong>
<p>
ソフトウェアエージェントは常に起動された状態で、何かの処理を行う時期を自分自身で判断します。
</p>
</li>
<li><strong>自律性</strong>
<p>
ソフトウェアエージェントは、種々の判断・行動を人間の手を借りることなく実行することができます。
</p>
</li>
<li><strong>社会性</strong>
<p>
ソフトウェアエージェントは、ほかのエージェントやソフトウェアと協力し、一つのタスクを協調して遂行することができます。
</p>
</li>
<li><strong>反応性</strong>
<p>
ソフトウェアエージェントは、自分の周りの環境を検知することが可能で、環境の変化にも柔軟に対応可能です。
</p>
</li>
</ul>

<p>
上の4項目をみると、永続性・自律性を満たすソフトウェアは結構ありふれた存在のように感じます。<br />
一方、社会性・反応性を十分に満たしているソフトウェアはあまり無い感じがするので、ソフトウェアエージェントという概念を説明するために重要な概念かもしれません。
</p>

<p>
ソフトウェアエージェントから派生する概念がいくつかあるみたいなんですが、ここでは4つだけ紹介します。
</p>

<ul>
<li><strong>知的エージェント</strong>
<p>
タスクの実行結果をよりよいものにするために、個々のエージェントが学習したり推論したりします。<br />
要は人工知能のようなものを備えたエージェントのことを指すのでしょうか？<br />
</p>
</li>
<li><strong>自律エージェント</strong>
<p>
ある目標を達成するための方法を、自分で考え出し、さらにその方法を実際に利用できるエージェントを指すみたいです（人間の手助けなしで）。<br />
エージェントが学習できる必要はあるはずなので、知的エージェントと重複する部分があるのかもしれません。
</p>
</li>

<li><strong>マルチエージェント</strong>
<p>エージェント単体では目的を達成できないのですが、ほかのエージェントと協調することで目的を達成可能とするエージェントを指すみたいです。<br />
実装しようとすれば、サーバクライアントシステムではなくて、P2Pシステムになる感じ？<br />
マルチエージェントシステムを実現するためのフレームワークとして<a href="http://gnubrain.org/" target="_blank">GNUBrain</a>というものがあるそうです（リンク先は現在PHPのエラーが出ているため閲覧不可orz）。
</p>
</li>
<li><strong>モバイルエージェント</strong>
<p>
実行環境（コンテキスト？）とともにコンピュータからコンピュータへと移動し、移動先のコンピュータでも動作することができるエージェントを指すみたいです。<br />
まさに移動するソフトウェア。<br />
モバイルエージェントを利用したP2Pプラットフォームとして<a href="http://www.piax.org/" target="_blank">PIAX</a>があります。
</p>
</li>
</ul>

<p>
個人的には、マルチエージェントとモバイルエージェント、あるいはそれらを組み合わせたようなシステムに非常に興味があります。<br />
どうやら「マルチモバイルエージェント」という言葉があるみたい。<br />
今度調べます。
</p>

<p>今回は完全にWikipedia情報を鵜呑みにしてしまいましたが、今後は論文も少しずつ読んでいって、エージェントに関する理解を深めていきたいと思います。<br />
自分の知らないことを調べたり勉強したりするのっておもしろいですね！
</p>
]]></description>
            <link>http://www.kadoppe.net/2008/06/post-34.html</link>
            <guid>http://www.kadoppe.net/2008/06/post-34.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">研究</category>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">network</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">p2p</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">research</category>
            
            <pubDate>Sun, 22 Jun 2008 17:02:55 +0900</pubDate>
        </item>
        
        <item>
            <title>博士課程に進学したら研究したいこと</title>
            <description><![CDATA[<p>博士課程に進学したら研究したいこと、というか研究計画書を考えなければいけない状況になってきました。</p>  <p>僕は現在、利用可能なネットワーク・コンピュータ環境が異なる地域間においてWebコミュニケーションを行う場合の問題を解決するための研究を行っています。</p>  <p>利用可能なネットワークの帯域幅が狭い地域の人々は、インターネットからファイルを取得するのに比較的時間がかかってしまいます。   <br />その問題をP2Pネットワーク技術により解決したいと考えています。</p>  <p>回線速度が遅い地域のファイル取得時間を、できるだけ速い地域の取得時間に近づける「インフラ」（と呼んでいいのかは微妙だけど・・）を作ることを修士論文研究の目標としています。</p>  <p>博士課程は、異文化コラボレーションを研究している、<a href="http://www.ai.soc.i.kyoto-u.ac.jp/intercultural_collaboration_j.html" target="_blank">石田・松原研究室</a>に進学したいと考えています。</p>  <p>「コラボレーション」とは「コミュニケーション」とは別のことを指している言葉で、コミュニケーションによって何かを生み出すための協調作業を行うことです。   <br />石田・松原研究室では、異なる文化を持つ人々がコラボレーションを行う場合に生じる種々の問題を明らかにして解決する取り組みが行われているようです。</p>  <p>もし進学できたら、僕は（「異文化」の本質からは少し離れてしまうかもしれませんが）異文化コラボレーションを行う際の<strong>ネットワーク</strong>における問題点を明らか、解決するような研究に携わりたいと思っています。    <br />インターネットガバナンスや情報格差などの問題点が存在する中で、どのようにすれば異文化・異地域間コラボレーションを上手く行えるのか、について考えていきたいです。</p>  <p>自分が好きなネットワークの技術を使って、異文化間・異地域間のコミュニケーション・コラボレーション問題を解決するための仕組み・システム作りに携われたら、すごく楽しそうですよね。</p>  <p>非常に大まかではありますが、現時点で考えている博士課程での研究内容はこんな感じです。   <br />もっともっと具体的にする必要がありますし、もしかしたら根本からひっくり返る可能性もあります。</p>  <p>例えば、複数のエージェントが協調して回線速度の遅い地域に全力でできる限り速くファイルを送り届けてくれるエージェントシステムを作るとか、そんなことが今日ボケッとしていたときに思い浮かんだんですが、研究としてはどうなんだろう・・・--;</p>  <p>それでも、今考えていることをどこかにアウトプットしておきたかったので書いてみました。   <br />もっと研究頑張らないと・・！</p>]]></description>
            <link>http://www.kadoppe.net/2008/06/post-35.html</link>
            <guid>http://www.kadoppe.net/2008/06/post-35.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">研究</category>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">research</category>
            
            <pubDate>Sun, 22 Jun 2008 12:08:26 +0900</pubDate>
        </item>
        
        <item>
            <title>自宅サーバ（Debian）にOpenVPNを導入（サーバ編）</title>
            <description><![CDATA[<p>いつでも・どこからでも、同じ環境で作業を行えるようにするため、自宅サーバ（Debian etch）にOpenVPNを導入してみました。</p>
<p>基本的な方針は以下の通り。</p>
<ul>
  <li>家の外にあるPC（外部PC）から自宅のVPNサーバに接続</li>

  <li>外部PCは自宅LANの仮装的なハブに接続する感じ</li>

  <li>外部PCは自宅LANと同じネットワークアドレスをもらえる</li>

  <li>「外部PC→自宅LAN内PC」アクセス可能</li>

  <li>「自宅LAN内PC→外部PC」アクセス可能</li>

  <li>別々に接続した外部PC同士も通信可能</li>
</ul>
<p>これが実現できたら凄く便利そうですよね。</p>
<p>それでは自分用メモということで、作業内容を書いていきたいと思います。<br />
今回はサーバ編ということで、サーバの設定作業が完了するまでの記録です。<br />
クライアント編はまた後日、別エントリーとして作成したいと思います。</p>
<p>以下のページを参考にさせていただきました。ありがとうございました。</p>
<ul>
  <li><a href="http://fedorasrv.com/openvpn.shtml" target="_blank">VPNサーバー構築(OpenVPN) - Fedoraで自宅サーバー構築</a><br /></li>

  <li><a href="http://w3.doshisha.ac.jp/~kueda/index.php?OpenVPN" target="_blank">OpenVPN - KUeda's Wiki @ NIS Lab.</a></li>
</ul>
<p><strong>1. 必要なものをaptでインストール</strong></p>
<p>まず、以下のファイルがサーバ上に存在するかどうか確認します。</p>
<pre>
/dev/net/tun
</pre>
<p>無事見つかったらaptによりopenvpnをインストールします。（ついでにopensslもインストール。）</p>
<pre>
# apt-get install openvpn openssl
</pre>
<p>次に、サーバにブリッジ用の仮想的なネットワークインタフェースを作るためのbridge-utilsをインストールします。</p>
<pre>
# apt-gtet install bridge-utils
</pre>
<p><strong>2. ブリッジの作成</strong></p>
<p>ブリッジを作成することで、VPN接続した外部PCを、あたかも自宅LANのスイッチングハブに繋いだかのように扱うことができるみたいです。</p>
<p>ブリッジを作成する前に、一旦サーバのネットワークを落としておきます。</p>
<pre>
# /etc/init.d/networking stop
</pre>
<p>次に、/etc/network/interfacesを以下のように書き換えます。（アドレス関係は各自読み替えてください）<br />
この設定により、br0（ブリッジインタフェース）で、eth0（実際に自宅LANと繋がっているインタフェース）とtan0（VPNで外部PCが接続するインタフェース）をブリッジすることができるようです。</p>
<pre>
auto lo
iface lo inet loopback
allow-hotplug eth0
auto eth0
iface eth0 inet static
auto br0
iface br0 inet static
       address 192.168.3.210
       netmask 255.255.255.0
       network 192.168.3.0
       broadcast 192.168.3.255
       gateway 192.168.3.1
       bridge_ports eth0 tap0
       pre-up /usr/sbin/openvpn --mktun --dev tap0
       pre-up /sbin/ifconfig tap0 0.0.0.0 promisc up
       pre-up /sbin/ifconfig eth0 0.0.0.0 promisc up
       pre-up /usr/sbin/brctl addbr br0
       pre-up /usr/sbin/brctl addif br0 eth0
       pre-up /usr/sbin/brctl addif br0 tap0
       post-down /usr/sbin/brctl delif br0 tap0
       post-down /usr/sbin/brctl delbr br0
       post-down /usr/sbin/openvpn --rmtun --dev tap0
       post-down /sbin/ifconfig eth0 down
</pre>
<p>設定が終わったらサーバのネットワークを起動します。</p>
<pre>
# /etc/init.d/networking start
</pre>
<p>ifconfigを実行し、br0に自宅LANのアドレスが割り当てられ、eth0とtan0に関する情報が表示されれば、一応ここまでは設定成功です</p>
<p><strong>3. IPフォワードの設定</strong></p>
<p>ブリッジを正常に機能させるためには、あるネットワークインタフェースで受信したパケットを別のネットワークインタフェースから送信できるようにしなければなりません（IPフォワード）。</p>
<p>有効にするため、/etc/sysctl.confに以下を追記します。</p>
<pre>
net.ipv4.ip_forward=1
</pre>
<p>さらに以下のコマンドを実行し、設定を有効にします。</p>
<pre>
# sysctl -p /etc/sysctl.conf
</pre>
<p>一旦サーバを再起動し、以下のコマンドを入力して「１」と表示されれば設定完了です。</p>
<p><strong>4. 証明書の作成</strong></p>
<p>次に、VPNサーバ構築・VPN接続に必要な証明書群を作成します。</p>
<p>まずはじめに、簡単に鍵・証明書が作成できるツール群をわかりやすい場所にコピーします。</p>
<pre>
# cp -r /usr/share/doc/openvpn/examples/easy-rsa /etc/openvpn/
# cd /etc/openvpn/easy-rsa/
</pre>
<p>次に、鍵生成用の環境設定ファイルを編集します。（設定内容は各自読み替えてください）</p>
<pre>
# vi vars
export KEY_COUNTRY="JP"
export KEY_PROVINCE="OSAKA"
export KEY_CITY="HIRAKATA"
export KEY_ORG="hoge.com"
export KEY_EMAIL="hogehoge@hoge.com"
</pre>
<p>編集が済んだら、以下のコマンドを実行し、設定を反映させます。<br />
さらに証明書作成ツールの初期化も行っておきます。</p>
<pre>
# source vars
# ./clean-all
</pre>
<p>下準備が終わったので、まずCAの証明書、および秘密鍵を作成します。<br />
以下のコマンドを入力し、生成ツールを起動します。<br />
何度か入力を求められますが、全て空ENTERで結構です。</p>
<pre>
# ./build-ca
</pre>
<p>作成が完了したら、以下のコマンドを実行し、作成した証明書を適切な場所に移動させます。</p>
<pre>
# cp keys/ca.crt /etc/openvpn/
</pre>
<p>次は、サーバの証明書および秘密鍵の作成です<br />
以下のコマンドを入力し、生成ツールを起動します。<br />
こちらも基本的に全て空ENTERでよいのですが、何カ所か入力すべき場所があるようなので要注意です。</p>
<pre>
# ./build-key-server server
Common Name (eg, your name or your server's hostname) [server] 【「server」と入力】
Sign the certificate? [y/n]: 【「y」と入力】
1 out of 1 certificate requests certified, commit? [y/n] 【「y」と入力】
</pre>
<p>作成が完了したら、以下のコマンドを実行し、作成した証明書を適切な場所に移動させます。</p>
<pre>
# cp keys/server.crt /etc/openvpn/
# cp keys/server.key /etc/openvpn/
</pre>
<p>次に、Diffie Hellmanパラメータというのを作成します。<br />
作成が完了したら（時間が掛かる）、先ほどと同じように適切な場所に移動させます。</p>
<pre>
# ./build-dh
# cp keys/dh1024.pem /etc/openvpn/
</pre>
<p>最後に、以下のコマンドを実行し、TLS認証鍵を生成します。</p>
<pre>
openvpn --genkey --secret /etc/openvpn/ta.key
</pre>
<p><strong>5. OpenVPNの設定</strong></p>
<p>ようやくOpenVPN自体の設定に移ります。</p>
<p>以下のコマンドを実行し、設定ファイルの作成・編集を行います。</p>
<pre>
# vi /etc/openvpn/server.conf
port 1194 # 使用するポート

proto udp # 使用するプロトコル

dev tap0 # 使用するデバイス。今回はLayer2をエミュレート

ca ca.crt # 使用する証明書 
cert server.crt
key server.key 
dh dh1024.pem

ifconfig-pool-persist ipp.txt # クライアントに割り当てられたIPアドレスを管理するファイル

server-bridge 192.168.3.210 255.255.255.0 192.168.3.220 192.168.3.230 # 超重要、[サーバのIPアドレス] [サブネットマスク] [クライアントに割り当てるIPアドレスの範囲（開始）] [範囲（終了）]

client-to-client # クライアント同士の接続を許可

keepalive 10 120 # タイムアウト対策

tls-auth ta.key 0 # tls認証を有効化

cipher BF-CBC        # Blowfish (default)

comp-lzo

user nobody # OpenVPN実行権限を下げる
group nogroup
persist-key
persist-tun

status openvpn-status.log # ログの出力先
log         /var/log/openvpn.log
log-append  /var/log/openvpn.log

verb 3 # ログの出力レベル

udp-mtu 1400 # mtuの設定
</pre>
<p><strong>6. OpenVPNの起動、仕上げ</strong></p>
<p>上記の設定がすべて終わったら、ようやくOpenVPNの起動を行うことができます。<br />
以下のコマンドを実行し、OpenVPNを起動します。</p>
<pre>
# /etc/init.d/openvpn start
</pre>
<p>無事起動したらとりあえずサーバの設定は完了です。</p>
<p>最後に忘れずに自宅のルータのポートフォワーディングの設定をします。<br />
僕の環境だと、1194番ポート宛のUDPパケットを192.168.3.210に転送するように設定しました。<br />
みなさんの環境にあわせて設定してみください。</p>
<p><strong>7. まとめ</strong></p>
<p>なんとかOpenVPNの稼働までこぎ着けました。<br />
少し長くなってしまいましたね・・・。</p>
<p>もしかしたら誤った記述などあるかもしれません。<br />
発見された方は、ここぞとばかりにコメントしていただけると、こちらとしても嬉しいです。</p>
<p>次回は、実際に外部のPCがVPN接続するまでを書きたいと思っています。</p>
<p>よろしくお願いしまーす。</p>
]]></description>
            <link>http://www.kadoppe.net/2008/06/debianopenvpn.html</link>
            <guid>http://www.kadoppe.net/2008/06/debianopenvpn.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">サーバ</category>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">network</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">server</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">vpn</category>
            
            <pubDate>Mon, 16 Jun 2008 01:16:48 +0900</pubDate>
        </item>
        
        <item>
            <title>第３回情報危機管理コンテストに出場させて頂きました</title>
            <description><![CDATA[<p>6/5から6/7に白浜で開催された、「第3回情報危機管理コンテスト」という大会に出場させて頂きました。</p>
<p>大会の概要は以下の通り。</p>
<blockquote>
  (１) 参加チームは、本委員会の監視チーム、および審査委員のもとで本コンテストを実施します。<br />
  (２) 参加チームは、各仮想企業の情報セキュリティ担当部署を演じていただき、提供されたインシデントの発生したシステム環境を調査し、かっこよく対応していただきます。<br />
  (３) 当該システム環境には、あらかじめ監視チームにより、インシデントあるいはこれを発生させるためのセキュリティホールが内包されています。<br />
  (４) 参加チームには、事前に当該システム環境と運用のフレームワーク概要をお知らせします。<br />
  (５) Bot系ツール、フィッシング、DoS（サービス不能攻撃）、パスワード走査と侵入、SQLインジェクション等、経路アナウンスの妨害など、さまざまなインシデントを想定してください。<br />
  (６) 監視チームは、ネットワーク上のトラフィック監視を中心に参加チームの対応状況を把握するとともに、顧客あるいは外部ユーザーを演じて適宜問い合わせや苦情のメールを送信します。<br />
  <a href="http://www.sccs-jp.org/SCCS2008/sccs03.html" target="_blank">http://www.sccs-jp.org/SCCS2008/sccs03.html</a>
</blockquote>
<p>五つの教育機関から五つのチームが出場し、それぞれが一つのブース（ネットワークやサーバが設置されている）を担当します。</p>
<p>一体何を競い合うのかというと、</p>
<ul>
  <li>復旧までの時間</li>

  <li>インシデントの対応手法</li>

  <li>上司への報告・提案</li>
</ul>
<p>の３つが主な評価指標だったと思います。<br />
これらを総合的に判断し、どのチームが一番かっこよく対応できたかを決める大会です。</p>
<p>僕が参加した同志社大学チームは、過去2大会で最優秀賞を頂いているチームです。（僕は昨年度の大会から参加）<br />
今年はやはり、3連覇という気持ちの良い数字がかかっていることと、僕は今年で卒業してしまうこともあってか、「絶対に最優秀賞を頂いてみせるぞ！」と意気込んで、それなりにたくさん準備をして大会に臨みました。<br />
結果、苦しみながらもなんとか最優秀賞（Best Award 賞）を頂くことができました。</p>
<p>表彰式で講評を頂いたのですが、その中で最も嬉しかったのが、前回課題とされいたことが克服できていたと評価していただいたことです。</p>
<p>前回は、</p>
<ul>
  <li>ネットワークに弱い（実はそうでもなかったのですが、実力を発揮できずorz）</li>

  <li>トラブルチケット（上司への報告）が最悪（前々回も同じ評価）</li>
</ul>
<p>という評価を頂いていました。<br />
この2点（特にトラブルチケット）を改善するのがチームの一員としての僕のテーマであったので、感無量になってしまいました。<br />
ありがとうございます。</p>
<p>このような手の掛かる大会を主催されている方々は、本当に大変だっただろうなと思います。<br />
主催者の皆様の血のにじむような準備のおかげで、僕たち参加者は素晴らしい経験をコンテストを通して得ることができました。<br />
この場をお借りして、感謝の言葉を述べさせていただきます。<br />
ありがとうございました。</p>
<p>もう少し時間があるので、僕たちのチームはどのようなことを考えて準備をしたか、について差し支えない程度に一部だけ紹介したいと思います。<br />
<strong>（まずかったらすぐ消します）</strong></p>
<p><strong>１．トラブルチケットをできるだけ詳しく</strong></p>
<p>トラブルチケットはできるだけ詳しく、詳しすぎるほど詳しく書いた方が良いみたいです。<br />
（実社会においてはどうなのかわかりませんが、少なくともコンテストにおいては）</p>
<p>駄目なトラブルチケットの例を挙げますと（実際に一昨年の第1回コンテストで作成したチケット）、</p>
<blockquote>
  Open Date: 2006/05/27 14:59<br />
  Close Date: 2006/05/27 15:11<br />
  報告者：hoge<br />
  担当者：hoge<br />
  内容：hogehoge（有）トップページにて、再び改竄を確認<br />
  対応：<br />
  調査したところWebDAVが有効になっていることを確認<br />
  http.confで阻止
</blockquote>
<p>こんな感じになります。<br />
これだと、</p>
<ul>
  <li>トラブルの具体的な内容がわからない。事細かに書くべき。</li>

  <li>「調査したところ」でとあるが、担当者がいつ・何を考え・どのように調査したのかわからない。</li>

  <li>WebDAVが有効になっていることが何故問題なのかがわからない。</li>

  <li>「http.confで阻止」とあるが、何をどう対処したのか全くわからない。</li>

  <li>今後同じトラブルが起こらないようにするにはどのようにすればいいのかがわからない。</li>
</ul>
<p>が問題になってしまうと思います。<br />
これらの点をきちんとカバーできるチケットを書けるようになるためのトレーニングが必要だと考えます。</p>
<p><strong>2. メンバー間における情報共有のためのインフラを作る</strong></p>
<p>上で紹介したようなチケットしかかけなかった最大の理由は、「メンバー間の情報共有が上手くできていなかった」ことだと考えます。<br />
そのため、メンバー間の情報共有をシームレスに行うためのインフラ・仕組みを構築して持って行くことが重要です。</p>
<p>具体的には、次のような情報の共有をメンバー間で行う必要があると思います。</p>
<ul>
  <li>時系列に並んだ各メンバーの詳細な作業履歴</li>

  <li>各メンバーの状態</li>

  <li>各メンバーの考えていること</li>
</ul>
<p>これらの情報を、時を遡ってメンバー全員が閲覧することができたとしたら、トラブルチケットを書く人もかなり楽になります。</p>
<p>問題は、どうやってこれらの情報を共有するためのインフラを作るか、なのですが、実現するための手段としては数え切れないくらいあると思います。</p>
<p>もちろん、メンバー全員が常に詳細な情報をコンテスト中に発信し続ける必要がありますが、その手間を上回る効果があると考えます。</p>
<p><strong>3. まとめ</strong></p>
<p>上に挙げたのは、チームとして準備したことのほんの一部です。<br />
他にいろいろと準備しなければならないことがたくさんあると思います。</p>
<p>そもそも、トラブルを解決できるだけの技術力がないと、情報を共有できたってらちがあかないですし・・・・orz</p>
<p>情報危機管理コンテストは、普段の大学・大学院生活ではほとんどの人が考えないようなことを真剣に考えることができる、素晴らしい大会だと思います。</p>
<p>僕は今年の大会で卒業してしまいますが、次回があれば、我こそはという人はエントリーしてみてはどうでしょうか？<br />
貴重な体験が待っていると思います。</p>
]]></description>
            <link>http://www.kadoppe.net/2008/06/post-33.html</link>
            <guid>http://www.kadoppe.net/2008/06/post-33.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">イベント</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">インターネット</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">サーバ</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">セキュリティ</category>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">event</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">internet</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">security</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">server</category>
            
            <pubDate>Wed, 11 Jun 2008 00:20:43 +0900</pubDate>
        </item>
        
        <item>
            <title>2008年5月の人気記事</title>
            <description><![CDATA[<p>当ブログにおける2008年5月の人気記事をランキング形式で10件紹介したいと思います。</p>
<p>なお、「人気度」は単純にページビューの数で判断しています。</p>
<h3>2008年5月の人気記事ランキング</h3>
<ol>
  <li><a href="http://www.kadoppe.net/2008/02/javaarraylist.html">[Java]ArrayListの中身をソートする</a>（3回目：↑） <a href="http://b.hatena.ne.jp/entry/http://www.kadoppe.net/2008/02/javaarraylist.html"><img src="http://b.hatena.ne.jp/entry/image/http://www.kadoppe.net/2008/02/javaarraylist.html" /></a></li>

  <li><a href="http://www.kadoppe.net/2007/12/mac-os-xleopardxcode.html">Mac OS X（Leopard）にXcodeをインストール</a>（5回目：↓） <a href="http://b.hatena.ne.jp/entry/http://www.kadoppe.net/2007/12/mac-os-xleopardxcode.html"><img src="http://b.hatena.ne.jp/entry/image/http://www.kadoppe.net/2007/12/mac-os-xleopardxcode.html" /></a></li>

  <li><a href="http://www.kadoppe.net/2007/12/mac-os-xleopardtomcat.html">Mac OS X(Leopard)にTomcatをインストール</a>（5回目：↑） <a href="http://b.hatena.ne.jp/entry/http://www.kadoppe.net/2007/12/mac-os-xleopardtomcat.html"><img src="http://b.hatena.ne.jp/entry/image/http://www.kadoppe.net/2007/12/mac-os-xleopardtomcat.html" /></a></li>

  <li><a href="http://www.kadoppe.net/2007/11/ns2windowsxpcygwin.html">NS2をWindowsXP（Cygwin）にインストール</a>（5回目：→） <a href="http://b.hatena.ne.jp/entry/http://www.kadoppe.net/2007/11/ns2windowsxpcygwin.html"><img src="http://b.hatena.ne.jp/entry/image/http://www.kadoppe.net/2007/11/ns2windowsxpcygwin.html" /></a></li>

  <li><a href="http://www.kadoppe.net/2008/01/strutsarraylistjsp.html">[Struts]ArrayListオブジェクトの各要素をJSPで扱う</a>（4回目：↑） <a href="http://b.hatena.ne.jp/entry/http://www.kadoppe.net/2008/01/strutsarraylistjsp.html"><img src="http://b.hatena.ne.jp/entry/image/http://www.kadoppe.net/2008/01/strutsarraylistjsp.html" /></a></li>

  <li><a href="http://www.kadoppe.net/2007/12/eclipsestruts.html">EclipseでStrutsの開発環境を構築する</a>（4回目：→）<a href="http://b.hatena.ne.jp/entry/http://www.kadoppe.net/2007/12/eclipsestruts.html"><img src="http://b.hatena.ne.jp/entry/image/http://www.kadoppe.net/2007/12/eclipsestruts.html" /></a></li>

  <li><a href="http://www.kadoppe.net/2007/11/gsviewwindowsxp-ni.html">GSViewをWindowsXPにインストール</a>（3回目：→） <a href="http://b.hatena.ne.jp/entry/http://www.kadoppe.net/2007/11/gsviewwindowsxp-ni.html"><img src="http://b.hatena.ne.jp/entry/image/http://www.kadoppe.net/2007/11/gsviewwindowsxp-ni.html" /></a></li>

  <li><a href="http://www.kadoppe.net/2008/02/mac-os-x-leopard-proxymacports.html">Mac OS X Leopard + Proxy環境内でMacPortsを利用する</a>（4回目：→） <a href="http://b.hatena.ne.jp/entry/http://www.kadoppe.net/2008/02/mac-os-x-leopard-proxymacports.html"><img src="http://b.hatena.ne.jp/entry/image/http://www.kadoppe.net/2008/02/mac-os-x-leopard-proxymacports.html" /></a></li>

  <li><a href="http://www.kadoppe.net/2007/12/mac-os-xmysql5051.html">Mac OS XにMySQL（5.0.51）をソースからインストール</a>（5回目：→） <a href="http://b.hatena.ne.jp/entry/http://www.kadoppe.net/2007/12/mac-os-xmysql5051.html"><img src="http://b.hatena.ne.jp/entry/image/http://www.kadoppe.net/2007/12/mac-os-xmysql5051.html" /></a></li>

  <li><a href="http://www.kadoppe.net/2007/12/mac-os-xleopardphpmyadmin.html">Mac OS X(Leopard)にphpMyAdmin 2.11 をインストール</a>（3回目：↑）<a href="http://b.hatena.ne.jp/entry/http://www.kadoppe.net/2007/12/mac-os-xleopardphpmyadmin.html"><img src="http://b.hatena.ne.jp/entry/image/http://www.kadoppe.net/2007/12/mac-os-xleopardphpmyadmin.html" /></a></li>
</ol>
<h3>まとめ</h3>
<p>初登場のエントリーなし！<br />
なんという動きのないエントリー。<br /></p>
<p>最近のエントリーはアクセス数稼いでないです。<br />
稼げるようなエントリーを書いていないんですが・・・。</p>
<p>集計開始以来、ずっと一位を保っていた「Mac OS X (Leopard)にXcodeをインストール」という記事が、要約一位から陥落しました。<br />
いいことです。</p>
<p>６月の目標はこのランキングをごっそり変えてやることですね。<br />
がんばるぞー！</p>
]]></description>
            <link>http://www.kadoppe.net/2008/06/20085.html</link>
            <guid>http://www.kadoppe.net/2008/06/20085.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">日記</category>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">ranking</category>
            
            <pubDate>Tue, 03 Jun 2008 11:48:55 +0900</pubDate>
        </item>
        
        <item>
            <title>大学の研究室の役割って何？</title>
            <description><![CDATA[<p>僕は今、大学院の研究室でM2の学生として研究をさせていただいています。</p>
<p>最近ふと思ったのですが、大学（または大学院）の研究室の役割って何でしょう？</p>
<p>研究としての成果を出すこと？<br />
学生を教育すること？<br />
その両方？</p>
<p>答えとしては「両方」というのが適切なのでしょうか？</p>
<p>でも、両方っていうのはもしかしたらなかなかしんどいことかもしれません。<br />
そうなったときに、どっちを優先するものなんでしょう。</p>
<p>僕個人の意見としては、大学や大学院はあくまでも教育機関であると思うので、やっぱり「教育すること」が最大の目的なんじゃないのかな？と思ったりします。<br />
もちろん、社会に最も近い教育機関として、社会で最も必要とされる「成果」を求めることも重要なんだとは思いますが、「過程」も同じくらい、あるいはそれ以上に重要だと思います。</p>
<p>少し色々なことの効率が落ちたとしても、長い目でみればよかった、というようにするのが良いんじゃないかなぁ？？<br />
現段階でもっとも効率のよいことをするよりも、色々な人に活躍の場を与えて将来的に効率が良くなるようにするのが良いと思います。</p>
<p>話は少しずれてしまいますが、最近小学校の先生で、生徒に「お前はどうしようもないくらい絵が下手だなぁ」と言う先生がいるようです。<br />
ほんと、何を考えて教師をしているんだろうと思います。<br />
子どもの芽を摘むようなことを教師がして、どうするんだろう。</p>
<p>小学生と大学生（院生）の違いはあれど、教育機関で学ぶ身としては基本的には同じような気がするんです。<br />
できないからといって切り捨てるんじゃなくて、できないならできるようになるために一緒に頑張って考えることが必要なのではないでしょうか？</p>
<p>でも、やっぱり僕自身の経験が浅すぎるので何が正しいのかわからないです。<br />
何も知らないのに、いろいろ書いても説得力ないですよね。</p>
<p>でも、今回はとりあえず今思ったことを書き留める意味で書いてみました。</p>
<p>教育の分野についても勉強してみたいと思います。</p>
]]></description>
            <link>http://www.kadoppe.net/2008/06/post-32.html</link>
            <guid>http://www.kadoppe.net/2008/06/post-32.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">ライフ</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">日記</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">研究</category>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">diary</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">life</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">research</category>
            
            <pubDate>Tue, 03 Jun 2008 01:31:18 +0900</pubDate>
        </item>
        
        <item>
            <title>[自宅サーバ]eo光のOP25B対策（Postfix）</title>
            <description><![CDATA[<p>今年の2月頃、自宅のインターネットプロバイダをYahoo BBからeo光に変えました。</p>
<p>それと時期を同じくして、自宅サーバから毎日送られてくるはずのログファイルが突然送られてこなくなってしまいました。<br />
結果として、当ブログに頂いたコメント・トラックバックに対するレスポンスが遅れてしまったりしました。<br />
ごめんなさい・・</p>
<p>問題の原因は「OP25B」をeo光が導入していたことです。</p>
<blockquote>
  OP25B　【Outbound Port 25 Blocking】<br />
  ネットワークの境界にあるルータなどの機器で、ネットワーク内から外部のコンピュータのTCPポート25番への通信を禁止すること。インターネットサービスプロバイダ(ISP)などが会員のパソコンからスパムメールが送信されるのをブロックするために行なっている。<br />
  <a href="http://e-words.jp/w/OP25B.html" target="_blank">OP25Bとは 【Outbound Port 25 Blocking】 - 意味・解説 ： IT用語辞典</a>
</blockquote>
<p>このままでは色々まずいと思い、今日対策を施しました。<br />
サーバの環境はFedora 6 + Postfixです。<br />
メールサーバは稼働させていないのですが、sendmailの設定は複雑そうだったので、サーバのrootからのメールを送信するためだけにPostfixを導入しました。</p>
<p>OP25B環境でサーバがメールを送信するためには、eo光のSMTPサーバにプロバイダから与えられたID、パスワードを使ってログインした後、メールをそのSMTPサーバに転送する必要があります。</p>
<p>設定には以下のページを参考にさせて頂きました。<br />
<a href="http://fedorasrv.com/op25b.shtml" target="_blank">OP25B(Outbound Port 25 Blocking)対策 - Fedoraで自宅サーバー構築</a></p>
<p>以下、<strong>eo光に特化</strong>した（といってもほとんど変わりありませんが）設定方法を紹介します。</p>
<p>(1)Postfixの設定<br />
スーパーユーザになって、以下のコマンドを入力し、Postfixの設定ファイルを開きます。</p>
<pre>
# vi /etc/postfix/main.cf
</pre>
<p>ファイルを開けたら、末尾に以下を追記します。</p>
<pre>
relayhost = [smtpauth.eonet.ne.jp]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/authinfo
smtp_sasl_security_options = noanonymous
</pre>
<p>(2)SMTP認証情報の設定<br />
以下のコマンドを入力し、 SMTPサーバの認証情報を設定します。<br />
ユーザ名とパスワードはプロバイダと契約したときの書類に書かれていると思います。<br />
（メールアドレスをデフォルトのものから変更した場合、ユーザ名も変更されるので注意）</p>
<pre>
# echo [smtpauth.eonet.ne.jp]:587 ユーザー名:パスワード &gt; /etc/postfix/authinfo
# chmod 604 /etc/postfix/authinfo
# postmap /etc/postfix/authinfo
</pre>
<p>(3)Postfix再起動<br />
以下のコマンドを入力し、Postfixを再起動して設定を反映させます。</p>
<pre>
# /etc/init.d/postfix restart
</pre>
<p>(4)動作確認<br />
以下のコマンドを入力し、rootからのテストメールが自分のメールアドレスに届いているかを確認します。</p>
<pre>
# echo test | mail root
</pre>
<h3>まとめ</h3>
<p>ようやく、サーバからのメールが自分宛に届くようになりました。</p>
<p>OP25Bはスパムメールが増える昨今、必要な技術だとは思います。<br />
が、自宅サーバを稼働させている人にとっては少し設定が面倒だなぁ、と思いました。</p>
<p>何はともあれ、メールが届くようになってよかった！<br />
めでたしめでたしです。</p>
]]></description>
            <link>http://www.kadoppe.net/2008/05/eoop25bpostfix.html</link>
            <guid>http://www.kadoppe.net/2008/05/eoop25bpostfix.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">インターネット</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">サーバ</category>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">linux</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">postfix</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">server</category>
            
            <pubDate>Sun, 25 May 2008 20:52:38 +0900</pubDate>
        </item>
        
        <item>
            <title>[論文]評価の書き方</title>
            <description><![CDATA[<p>論文の「評価」項目に書く内容を考えると、よく悩んでしまうことがあります。</p>
<p>どうやら「評価」項目の書き方にもいくつかのパターンがあるみたいなのでまとめてみます。</p>
<ol>
  <li>従来方式（システム）と提案方式の評価結果を比較し、良くなったこと、あるいは、悪くなったことについて述べる</li>

  <li>比較すべき従来方式が無い場合は、何らかのしっかりとした根拠により達成したい数値目標を定め、その値と提案方式のデータを比較する</li>

  <li>達成したい数値目標を論理的に導き出せない場合は、提案方式を使おうかなと考えている人が、データを見て使うか否かを判断できるように書く</li>

  <li>具体的なデータを取得できない場合は、考えられる複数の状況に従来方式と提案システムを適用した時に、どちらの方式の方が適しているのか、ということについて論理的に述べる</li>

  <li>比較すべき従来方式もなく、データも取れない場合は・・・・・わかんないです</li>
</ol>
<p>こんな感じでしょうか？</p>
<p>評価の書き方について悩んでしまった場合、いったん落ち着いて上のパターンのどれかに当てはめて書くことはできないか、考えてみるのも良いかもしれません。</p>
]]></description>
            <link>http://www.kadoppe.net/2008/05/post-31.html</link>
            <guid>http://www.kadoppe.net/2008/05/post-31.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">研究</category>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">research</category>
            
            <pubDate>Thu, 22 May 2008 16:06:40 +0900</pubDate>
        </item>
        
        <item>
            <title>コメント、トラックバックに関する謝罪</title>
            <description><![CDATA[<p>つい先ほど、当ブログにおける2月中旬頃からのコメント・トラックバックが全て保留のまま放置されていることに気がつきました。</p>
<p>先ほどスパム以外のすべてのコメント・トラックバックを有効にさせていただきました。</p>
<p>コメント・トラックバックをしてくださった皆さん、申し訳ありませんでした。</p>
<p>なぜ、保留のまま放置してしまったかと言いますと、2月中旬頃にインターネットプロバイダをeo光に変えてからサーバから送られてくるはずのメールが届かなくなったことが原因だと思います。</p>
<p>完全に僕の管理ミスです。</p>
<p>今後はこのようなことが無いように楽しくブログを運営していきたいと思います。</p>
<p>本当に申し訳ありませんでした。</p>
]]></description>
            <link>http://www.kadoppe.net/2008/05/post-30.html</link>
            <guid>http://www.kadoppe.net/2008/05/post-30.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">日記</category>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">blog</category>
            
            <pubDate>Thu, 22 May 2008 15:58:13 +0900</pubDate>
        </item>
        
        <item>
            <title>機器連携と機器操作</title>
            <description><![CDATA[<p>僕は、研究室に配属されてから今まで、ネットワークを介した組み込み機器連携のためのミドルウェアに関する研究を行ってきました。<br />
いわゆる、ホームネットワークという分野の研究です。</p>
<p>この間、「機器連携」という言葉は実際にはどういうことを指しているのか、ということについて考えたのでエントリーとして書こうと思います。</p>
<p>僕は、未定義機器（現在は世の中に存在していない、仕様が未知の機器）が、既存機器のみで構築されたネットワークに新たに接続された場合においても、機器連携を実現可能にするミドルウェアを、Jiniというミドルウェア技術を拡張することで提案しました。</p>
<p>僕が提案したミドルウェアは、機器の利用者は必ずGUIを利用してネットワークを介して機器を操作する、という制約を課すことで、既存機器が未定義機器に対応できるようにするものです。</p>
<p>でもゆくゆく考えると、GUIを利用して機器を操作することは「機器連携」とは呼ばないんじゃないか、そんな気がしてきました。</p>
<p>僕の考える「機器連携」は、人を介さない機器同士のインタラクションです。<br />
少し例を挙げます。<br /></p>
<blockquote>
  <p>ある家に、複数の音楽提供機器（オーディオコンポやPC、Musicサーバ）と複数のスピーカが存在し、それらがネットワーク（家庭内LANなど）で接続されていたとします。<br />
  そこの家の住人が、スピーカから出力される音の音質が気に入らず、ネットワークに繋げるだけで家中のスピーカの音質を向上させる小さな機器を買ってきました。<br />
  家について、買ってきた小さな機器を家のネットワークに接続するとあら不思議。<br />
  何の設定作業をすることなく、家中のスピーカから出力される音の音質が向上されました。</p>
</blockquote>
<p>本当は、上に挙げたようなことが「機器連携」なのではないかと思うのです。</p>
<p>僕の提案したミドルウェアは、人がGUIを利用して操作するためコマンドを機器に対して送信しなければならない、という点で「機器連携」を実現できているとは言えず、あくまで「機器操作」のためのミドルウェアなのだと思います。</p>
<p>言葉の定義の問題なのかもしれませんが、これはホームネットワークに用いるミドルウェアを考える上でとても重要なことだと思います。</p>
<p>あー、もっと早く気づいていればよかったなーorz</p>
]]></description>
            <link>http://www.kadoppe.net/2008/05/post-29.html</link>
            <guid>http://www.kadoppe.net/2008/05/post-29.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">研究</category>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">network</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">research</category>
            
            <pubDate>Wed, 21 May 2008 21:08:44 +0900</pubDate>
        </item>
        
        <item>
            <title>CNSR2008という国際学会に参加してきました</title>
            <description><![CDATA[<p>5/6から5/8にカナダのハリファックスという場所で行われた、「CNSR2008（Conference on Communication Networks and Services Research）」という国際学会で発表してきました。</p>
<p>僕にとっては初めての国際学会。<br />
英語で上手く発表できるかどうか不安でしたが、今の自分の英語能力を考えるとベストを尽くせたと思います。<br />
質問にもなんとか答えることが出来ました。</p>
<p>発表内容は以下のページで見ることが出来ます。<br />
<a href="http://w3.doshisha.ac.jp/japanese/news-1/2008/cnsr2008" target="_blank">CNSR2008 — NISLab HOME</a></p>
<p>卒業研究として行っていた研究の内容について発表させていただきました。</p>
<p>質問では、<br />
「あなたの提案システムと、W3Cで標準化が行われているWebサービスの発見方式は同じもの？」<br />
という質問をチェアの先生にしていただきました。</p>
<p>僕はその質問に対して、<br />
「私はW3CのWebサービス発見方式についてはよく知りません。ですが、それと私の提案方式は違うものです」<br />
と答えました。<br />
（実際はこんなに綺麗には答えられなかったけど・・）</p>
<p>頂いた質問は暗に、<br />
「個々のミドルウェアでサービスの発見方式や未定義サービスへの対応方法などを考えるよりも、すでに標準化が行われているWebサービスの技術を使った仕組みを考えた方がいいんじゃない？」<br />
という意味を含んでいるのかなと思いました。</p>
<p>このことについては、後日改めてエントリーとして書きたいと考えています。</p>
<p>英語を使ったプレゼンテーションを通して、度胸がついたのはもちろんのこと、英語を勉強することの必要性を実感できたなど、様々なためになる経験をすることが出来ました。<br />
まだ、国際学会での発表を経験していない大学院生・学部生は、積極的に研究室の外の世界に飛び出して、色々なことを学んでいけたらいいのではないかと思います。</p>
<p>今回の発表で、卒業研究から大分引っ張っていたテーマも一段落。</p>
<p>あとは、修論のテーマを進めるべく突っ走ります！<br /></p>
]]></description>
            <link>http://www.kadoppe.net/2008/05/cnsr2008.html</link>
            <guid>http://www.kadoppe.net/2008/05/cnsr2008.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">日記</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">研究</category>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">event</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">presentation</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">research</category>
            
            <pubDate>Wed, 21 May 2008 20:07:48 +0900</pubDate>
        </item>
        
    </channel>
</rss>
