Software Design 連載 第9回 復旧・復興支援制度データベース API ハッカソン【その 2】

Software Design 連載 第9回 復旧・復興支援制度データベース API ハッカソン【その 2】

の記事は、技術評論社 Software Design 2012年9月号の転載です。
記事のPDFはこちらからダウンロードできます。 技術評論社のご協力に感謝いたします。

Hack For Japan

エンジニアだからこそできる復興への一歩
“東日本大震災に対し、自分たちの開発スキルを役立てたい ”というエンジニアの声をもとに発足された「 Hack For Japan」。本コミュニティによるアイデアソンやハッカソンといった活動で集められた IT業界の有志たちによる知恵の数々を紹介します。

第9回
復旧・復興支援制度データベースAPIハッカソン【その2】

Hack For Japanスタッフ
及川 卓也 OIKAWA Takuya
Twitter @takoratta
鎌田 篤慎 KAMATA Shigenori
Twitter @4niruddha

 前回に引き続き、6月2日に開催された「復旧・復興支援制度データベースAPIハッカソン」の模様をお伝えします。前回はおもに午前中に行われた支援制度データベースAPI開発の背景や被災地の現状などについてお伝えしましたが、今回は午後のアイデアソン/ハッカソンの模様です。

アイデアソンからハッカソン

 発表者と参加者、さらには今回のデータベースとAPIを開発した㈱マイスターを交えての質疑応答や意見交換を経て、参加者より全部で9つほどのプロジェクトアイデアが提案されました。その後、グループごとに議論と開発が行われたプロジェクトについて、早速紹介していきましょう。

「中身検索ビジュアライズ」プロジェクト

 このプロジェクトは、これまでにも何度かハッカソンに参加してくださっている冴木元さんが、復興・復旧支援制度を視覚的にわかりやすくしようという発想のもと、今回のハッカソンに向けてプロトタイプを事前に作られていたものです(図1)。
 ひと目で全体像が見渡せるデザインと制度間の関係性を明らかにするために、登録されている支援制度のデータをもとにクラスタ分析を行い、ほかの支援制度との関係を樹形図に表すことでその関係性を可視化しています。ディレクトリをたどることで、求める支援制度にたどりつくようなUIを開発しています。

図1 可視化プロトタイプ

「検索ノーマライズ」プロジェクト

 こちらも参加前にアイデアを暖めてくださっていた本間雅史さんらによるもので、いわゆる「あいまい検索」を実現するアイデアです。「こども」だとヒットするが「子供」だとヒットしないなどの問題を解決するために、漢字でも仮名でも検索にヒットしたり、完全一致だけでなく曖昧一致などでも復旧・復興支援制度データベース(以降、支援制度DB)の検索結果でヒットさせようという試みでした。
 当日は、本文から仮名データを作成して仮名検索を実現したり、類義語で自動検索をしたり、検索候補のツリー表示や、わかりにくい検索画面のデザインを見直すなどの提案が行われました。

「ダッシュボード」プロジェクト

 伊津野さん、久保さんによるダッシュボードチームは、都道府県別や役所ごとの支援制度の数をグラフ化するなどして見やすく公開するダッシュボード注1の作成を目標に検討が進められました。現時点では支援制度DBやAPIに必要な機能が備わっていないため、すぐには開発できないことがわかりましたが、その中でも検索する行為自体の障壁を下げるためのアイデアがたくさん考えられ、当日の結果として発表されました。
 ほかのグループと同じように、このグループからもAPIに対しての要望があげられました。たとえば、日付順で支援制度を表示しようなどと試みたところ、そうした情報がフリーフォーマットのフィールドにばらついて登録されているので利用が困難であることなどが指摘され、登録時の入力フォーマットなどに対する建設的な意見が出されました。また、APIが返すデータとしてJSONが必要といった、Webエンジニアの視点での利用促進案が提案されました。

「地理情報」プロジェクト

 嘉山陽一さんらによるこのグループは、被災者が各種制度を利用する際、地理情報によって利便性を高めることを目的とした発表を行ってくださいました。支援制度は複雑な申請フローに加えてたくさんの申請書類が発生しますが、それらの書類をどこで入手したらよいのかをいちいち探し出す手間が、申請者にとって負担になっているのではないか?といった仮定でアイデアをブラッシュアップしています。
 被災地域では津波や原発問題により、居住区が元の場所とは異なっている被災者の方も多く、また申請書類を入手するために訪れる役所も1ヵ所ですむとは限りません。あちこち探し回る負担を減らすために、アプリケーション上で制度を選択すると手続きしたい人の現在位置の情報をもとに、申請に必要な書類とその書類を取得できる役所などが表示され、それをToDoリストにでき、地図とも連係するというサービスのアイデアが提案されました。さらには手続きを相談できる近隣の税理士や司法書士の方のリスト、その事務所への地図などとも連携することで、支援制度を利用する負担を大幅に軽減できると考えられたものです。
 ただし、これを実現するためには既存の支援制度DBの情報では足りないものもあり、今後の改善案として、申請書類とその取得先の対応関係のデータや、申請書類の提出締切などの期間データの提供を支援制度DBに求められていました。「プレゼンソン」プロジェクト 峯雄一さんと牟田学さんによるこのグループは支援制度DBに登録されている支援制度が複雑で、どういった条件で、どういった人が対象で、いつまでに申請しなければならないか、などといった情報がわかりにくい点に着目。これを誰でもわかるレベルまで噛み砕いてスライドにすることで、被災者の方が支援制度を知り、有効活用できるように支援しようという提案になりました。
 当初は、数は多いものの登録されている支援制度の大部分をスライド化できる見込みでした。しかし、実際に行政書士の方と組んでスライド制作を実施したところ、1つの制度をスライド化する作業に2人で1時間ほどを要したそうで、想像以上に時間がかかるということがわかりました。

「Facebook(Twitter)プッシュ」プロジェクト

 このグループは支援制度を必要としている被災者や被災地域の事業者向けに、支援情報をプッシュ通知で送ることができないかを検討しました。 議論する中で、まだ被災地では利用者が少ないFacebookではなく、震災時から利用が増えたTwitterにターゲットを変更。Twitter上でOAuth連携を行うことで、登録された居住区に対する支援制度が追加された際にプッシュ通知でお知らせしてくれるというサービスのプロトタイプを開発し、発表しました。

「復旧復興支援ナビ」プロジェクト

 このグループでは、NPO団体アスコエが運営する「復旧復興支援ナビ注2」を改善するために何ができるかという検討を、行政書士さんや税理士さんを中心に議論されました。議論の中で、こうしたサイト運営にかかる費用面の問題が大きいことがあらためてわかり、そのことからサイトのマネタイズによった案が多く寄せられました。さらにそこを起点に、サイト改善、被災者へのより良いデータ提供といった形に議論が発展し、発表が行われました。

「カレンダー」プロジェクト

 Hack For Japanのスタッフが多かったこのチームは、支援制度の情報の中でも、とくに締切などの期限が可視化されていない点に着目し、カレンダーなどでわかりやすく表現するためのアイデアを発表されました。
 図2がシステム案です。まず、cronでAPIを経由して支援制度DBの更新確認とGoogleカレンダーへのエントリ(制度開始/申請開始と申請期限)を実施します。そしてその結果を、Twitterのボットで地域ハッシュタグ付きでツイートする、といった利用例をいくつか挙げられました。
 しかし、システムの具体化を考える過程でAPIの課題であったり、登録されている支援制度の項目の課題、たとえば申請期限で「窓口にお問い合わせください」といったシステムとして利用するには困難なものが多数あることが判明しました。ほかにも、制度自体に依存関係が存在し、申請するにはその前に他の制度の申請が必要であったりするものがあり、単純にカレンダーに紐付けることが難しいこともわかりました。これらを解決するための、よりシンプルな形での支援制度のあり方の指摘もされました。

「API機能追加」プロジェクト

 こちらもHack For Japanスタッフが多く参加したグループです。公開された支援制度DB APIの問題点を、インターネット企業に務めるメンバー全員で棚卸しして列挙し、このAPIがもっと利用されるためにはどうしたらよいかを議論したうえ、参加されている経産省の方や開発にあたったマイスターの方々にお伝えすることで改善を促しました。
 大きな問題として最初に指摘したのは、APIの仕様書がPDFやWord形式で公開されている点で、Webでの閲覧性を高めるためにHTML化を実施する要望を出させていただきました。先の震災でも政府から公表されるデータがことごとくPDFであったため、公開データを利用しようとするエンジニアたちがわざわざOCRにかけてテキスト情報を抽出するといった手間をかけていたためです。
 余談ですが、メンバーの三廻部大さんがその場でPDFのAPI仕様書をHTML化して公開するという、インターネット企業のスピードを感じさせる一幕もありました。なお、このハッカソンの後、公式サイトにてHTMLでAPIの仕様が公開されました。
 他APIのレスポンス構造についての要望も出しました。現状ではシステムのデータベース設計まで想像できるような形になってしまっており、APIのレスポンスとしては不自然な個所やフリーフォーマットが多いため、その中に必要とする情報が埋もれてしまいがちです。このことから、自然言語処理をかけることで特徴語などを抽出し、タグ化などを行うことで情報への到達性を高めるための工夫を提案しました。
 各プロジェクトの発表時のスライドや当日の発表の様子を収めた
Ustreamのアーカイブは、Hack ForJapanブログに掲載されていますのでそちらをご覧ください。

今後に向けて

継続するプロジェクト

 プロジェクトグループの中にはハッカソン当日だけでなく、その後も開発を継続したグループがいくつかあります。使われるサービスを作るためには、完成させ、そして提供し、その後も改良を加えていくことが必要ですので、一過性のものとならずに開発が続くことは大変喜ばしいことです。
 たとえば、「検索ノーマライズ」プロジェクトはハッカソンから約1週間後に、わかりやすいユーザインターフェースを実装した検索サイト注3を立ち上げました(図3)。立ち上げの後も、機能の追加、改良が行われています。
 また、ハッカソン当日にプロジェクトとして発足したわけではないのですが、Twitterボットのようなものでの発信ができないかという意見に触発されて、ボットも作られています注4。執筆時点(7月初旬)はまだテスト運用中ですが、支援制度がデータベースに登録されると、その旨をツイートします。
プレゼンソンプロジェクトのメンバーは後日北鎌倉で合宿を行い、27のスライドを完成させて公開しています。プロジェクトの正式名称も「わかる! 支援制度」と名付けられました。
 以上のハッカソンの成果物はHack For Japanのサイト「震災復旧・復興支援制度関連情報注5」にまとめられています。

図3 検索ノーマライズ

要望書

 ハッカソン当日に支援制度DBやAPIに対しての要望も多く出されました。「この機能が足りないので実装できない」、「この機能はこうあってくれたら、もっと開発が楽になる」。このような声は実際に手を動かしてみたうえでの貴重なフィードバックです。
 Hack For Japanでは、これらを要望書の形でまとめ、窓口となっている経済産業省に提出することを考えています。震災復旧・復興に対してITからの貢献を考えるためにも、オープンガバメントの例として成功させるためにも、継続した開発や関係者との対話が必要です。今回のハッカソンを機会にぜひ進めていきたいと考えています。

参加者との記念撮影

脚注

注1) ここでは複数の情報源からデータを集め、それらを見やすくまとめて一覧表示するソフトウェア/サービスのことを指す。
注2) http://www.fsnavi.jp/Simin/Index.aspx
注3) http://masap.sakura.ne.jp/hack_for_japan/search_normalize/
注4) http://twitter.com/rrasbot
注5) http://www.hack4.jp/RelatedInfo/rassist

 
この文書は、クリエイティブ・コモンズライセンスの下に提供されています。
著作者の表示・非営利・改変禁止の条件に従い、この文書を再利用していただけます。

CC-BY-NC-ND