先端技術研究所 (Key Technology Laboratory; 略称 KTL)は、株式会社SRAの研究開発部門として、ソフトウェア技術に関する次の3つの領域で研究開発活動を進めています。
組織やプロジェクトにおける知識流通
ソフトウェア開発をはじめとする、デジタルなコミュニケーションメディアを活用する業務形態において、プロジェクトメンバー間の情報の共有、知識の伝達と、蓄積のための技術支援のコンサルテーションをおこなっています。個々の開発者のモチベーションとインセンティブを考慮し、知識や情報をどのように蓄積するか、ではなく、蓄積された知識や情報を<使う>状況の視点からみた、情報共有システムのインタラクションデザインを進めています。
ナレッジインタラクションデザイン
文章を書く、プレゼンテーション資料を作る、といった、知的創造活動のためのツールのインタラクションデザインをナレッジインタラクションデザインと呼びます。東京大学先端科学技術研究センターと共同で、ARTwareの構築をおこないながら研究を進めています。ARTware は、情報創出の支援を目的として研究開発をおこなっているソフトウェアツール群です。心地良いユーザ体験を重視して、インタラクションデザイナとプログラマとが密にコミュニケーションをとり、手描きスケッチやインタラクティビティを体感するためのプロトタイプなどを多用しながら、共創的なやりとりをしながら開発を進めています。従来のソフトウェア開発ではみられないユニークな特徴を有する、この過程で観察されるミュニケーションの形態や構築されるアーティファクトの分析を通して、操作感が重要となるソフトウェアや高度なインタラクティビティが要求されるシステムを開発する際に重要となる要因について研究を進めています。
検索駆動型ソフトウェア開発
プログラムや設計文書といったものは情報アーティファクトであり、管理、設計、プログラミング、保守といったソフトウェア開発に関する諸活動も、既存のソースコードや設計文書などの情報アーティファクトから必要となる情報を収集・利用しながら新しい情報アーティファクトを作成するプロセスであると考えられます。 「検索駆動型ソフトウェア開発」は、ソフトウェア開発者の情報ニーズと情報検索に注目した研究分野であり、ソフトウェア開発者のいま目の前にあるタスクに必要となる情報と知識を簡単、迅速、柔軟に提供できるメカニズムの開発を目指しています。ソースコード検索エンジン、レコメンダーによるAPIの利用支援、人間関係に配慮したエキスパートファインダーなどの製品とプロトタイプ開発を進めています。
Javaライブラリのモジュール化と利用支援
JavaにおけるJigsawやOSGiなどのモジュール化の流れを鑑み、これまでに開発してきた膨大なJavaライブラリの提供する様々な機能を明確にすることを主たる目的として、ライブラリに含まれるクラス群の依存関係を適切に整理し、モジュール群への再編を行っています。モジュール群の利用者が必要なモジュールを探し、見つけ、理解し、利用することを支援する場としてのサービスの提供、および、開発プロジェクトにおいてモジュール群を利用するために必要となるサーバ機能や開発環境についての研究を進めています。
ソフトウェア開発におけるコミュニケーション支援
ソフトウェア開発におけるコミュニケーションの役割を明らかにし、ソフトウェア開発を知識共創として捉えた、人間中心のソフトウェア開発におけるコミュニケーション支援の研究をおこなっています。オープンソースソフトウェア開発やアジャイルな開発手法が広まるにつれて、ソフトウェア開発におけるコミュニケーションの捉え方が、<減らすべきもの>から<支えるべきもの>へと変化しつつあります。ソフトウェア開発におけるモチベーションやクリエイティビティといった人的要因も考慮しながら、ソフトウェア開発に特化した、より効果的なコミュニケーション支援を探っています。
ユーザ参加型のシステム
Web 2.0を含むユーザ参加型システムの成否を左右する要因は技術的なものだけではなく、ソーシャル的な考量も重要な鍵であります。持続可能なユーザ参加型システムをデザイン、開発するために、技術的側面とソーシャル的な側面との両方に取り組むソシオテクニカル・アプローチが重要であるとされています。 ユーザ参加型システムの機能、ガバナンスポリシー、および両者間のインタラクションと相関性を考慮したデザイン方法論とデザインガイドラインの確立に関する研究を行っています。ユーザコミュニティの活発度を測定するフレームワークを提案し、オープンソースコミュニティと企業の知識共有サイトを対象に、ユーザの積極的な参加を阻害、促進する要因の分析を行っています。
レコメンダー・システム
インターネットや記憶媒体の発達により、インターネット上でのクチコミ情報、eコマースで扱う商品情報、音楽や映像のコレクションといった、個人が取り扱える情報の量が飛躍的に増大しました。レコメンダー(推薦)・システムは、このような大量かつ煩雑な情報を整理し、ユーザの負荷を低減しながら情報の有効な活用をはかるための鍵となる技術の一つです。レコメンダー・システムのアーキテクチャや応用に関する研究、および、レコメンダー・システムを簡単に実装するためのアプリケーション・フレームワークの研究開発を進めています。
アノテーションフレームワーク
インターネットの世界では、<コンテンツの共有>から<コンテキストの共有>へとコンテンツ利用の方法が拡張されています。コンテンツそのものだけでなく、そのコンテンツをオーサリングする(生成する)人や作成過程、消費する(見る、聴く)人やその状況なども含めたコンテキストを蓄積し、コンテンツとコンテキストの双方を共有することにより、コンテンツ理解や人同士の相互理解をより向上することができると考えています。アノテーションフレームワークは、ムービーや画像などのコンテンツを見る人の行動や状況をアノテーションとして扱い、それを入力したり提示するためのフレームワークを提供することを目指し研究開発しています。
VSE向け開発プロセス簡易アセスメントおよびコンサルティング
特に小規模組織や小規模プロジェクトなどのVSE(Very Small Entity)を対象とする、開発プロセスの簡易アセスメント(診断)、および必須となるドキュメントの診断によるコンサルティングをおこなっています。アウトソーシングの広まりにより、小規模の組織やプロジェクト(VSE)が、ライフサイクルの一部の作業を契約によって遂行する機会がますます多くなりつつあります。VSEにとって発展の鍵となるのは、該当プロセスの実施能力向上と、適正な能力評価を得ることです。VSEが提供する製品やサービスを調達の一部としている側にとっては、そのVSEの開発能力や管理能力を的確に判断することが、成功の鍵となると考えられますが、CMMI(Capability Maturity Model Integration)やISO/IEC15504のプロセスアセスメントの通称であるSPICE(Software Process Improvement and Capability dEtermination)といった、ライフサイクル全般を対象とした大掛かりなアセスメントや改善活動を、VSEに適用することは不適切です。ISOでは、2010年の制定を目指し、VSE向けのプロセス簡易診断を実施するための根拠となるプロセスを、必要な基本規格を適切にプロファイリングし組み合わせて構成し規定する活動が審議中です。KTLでは、この審議中の規格を基に、アウトソース先の開発能力簡易診断法を研究中です。
人間中心のユーザインタフェースおよびインタラクションデザイン
主に組込み機器を対象とする、人間中心のユーザインタフェース(UI)デザインやインタラクション(HCI)デザインのプロセス、技法、プラクティスについての研究をおこなっています。組込み機器の多様化、高機能化に伴い、機能品質に加えて操作性品質がシステムの価値を左右するようになりつつあります。利用者(ユーザ)の使い勝手や使い心地を左右する操作性は、ユーザインタフェースデザインに依るところとなりますが、機器が提供する機能の複雑化に伴い、機能を呼び出すための画面の絵を個別に考えていく、といった開発プロセスでは、操作品質の高いUIを開発することは不可能です。既存システムの機能のユーザビリティを高めたり、ユーザの新体験創出をめざしたりするソフトウェアインテンシブなプロダクトのためのインタラクションデザインに、認知科学的、デザイン学的手法でアプローチしています。