Microsoft Active Accessibility

Microsoft Active Accessibility (MSAA) は、ユーザーインターフェイスのアクセシビリティのためのアプリケーションプログラミングインターフェイス （API）である。 MSAAは、1997年にMicrosoft Windows 95プラットフォームの追加機能として導入された。 MSAAにより、 支援技術 （AT）製品がアプリケーション（またはオペレーティングシステム）の標準およびカスタムユーザーインターフェイス （UI）要素とやり取りし、アプリケーションのUI要素にアクセス、識別、および操作できるようになる。 支援技術製品はMSAA対応のアプリケーションと連携して、身体的または認知的困難を持つ障碍者が、対応アプリケーションをより使いやすくするよう支援する。 支援技術製品の例としては、視力障害のあるユーザー向けのスクリーンリーダー、身体的障害のあるユーザー向けのスクリーンキーボード、聴覚障害のあるユーザー向けのナレーターなどがある。 MSAAは、自動テストツール、RPAやコンピュータベースのトレーニングアプリケーションでも使用される。

MSAAの最新版は、Microsoft UI Automation Community Promise仕様の一部に含まれる。

歴史 
Active Accessibilityは当初OLE Accessibilityと呼ばれ、これはoleacc.dllといったバイナリファイルや、定義と宣言を含むヘッダーファイルoleacc.hなどの名前に反映されている。 1996年3月にはマイクロソフトはActiveXのブランド名を前面に押し出す施策の一環として、OLE AccessibilityはActiveX Accessibility（AXAとも呼ばれる）に改名され、1996年3月にサンフランシスコで開催されたMicrosoft Professional Developers Conferenceで発表された。 その後、ActiveXブランドはインターネット固有のテクノロジーに集約され、ActiveX AccessibilityはActive Accessibility、短縮名MSAAとなった。

MSAAは、1997年4月にMicrosoft Active Accessibility Software Developers Kit（SDK）バージョン1.0の一部として提供された。 SDKには、ドキュメント、プログラミングライブラリ、サンプルソースコード、および再配布可能キット（RDK）が含まれており、支援技術の提供ベンダーが製品に含めることができた。 RDKには、Microsoft Windows 95用の更新されたオペレーティングシステムコンポーネントが含まれていた。 Windows 98およびWindows NT 4.0 Service Pack 4以降、MSAAはWindowsプラットフォームのすべてのバージョンに組み込まれており、その後定期的に更新されている。

Windowsと支援技術アプリケーションのプログラムによる連携は、これまでMSAAを通じて行われてきた。 ただし、新しいアプリケーションでは、 Windows VistaおよびNET Framework 3.0で導入されたMicrosoft UI Automation (UIA) を使用するようになった。

バージョン履歴 
今までに次のActive Accessibilityバージョンがリリースされた。

目的 
MSAAは、基盤となるオペレーティングシステムやアプリケーションと、支援技術製品の間の、シームレスな通信メカニズムを可能にするために開発された。

MSAAのプログラム上の目標は、Windowsコントロールが、名前、画面上の場所、コントロールの種類などの基本情報、および表示/非表示や、有効/無効の状態、選択済みなどの状態情報を公開できるようにすることである。

技術的概要

利用できるオペレーティングシステム 
MSAAは当初、Windows 95の追加機能としてリリースされた。 以降のすべてのバージョンのWindowsに同梱されている。

関連テクノロジ 
Microsoft UI Automation （UIA） ：MSAAの後継は、UI Automation (UIA) である。しかし MSAA に依存するアプリケーションがまだ存在するため、UIA アプリケーションと MSAA アプリケーションの橋渡しが行われ、2つの API の間で情報共有が可能である。MSAA-to-UIA プロキシと UIA-to-MSAA ブリッジが開発された。前者は MSAA の情報を元に UIA クライアント API で利用可能とするコンポーネントである。後者は MSAA を使うクライアントアプリケーションが UIA を実装するアプリケーションにアクセスできるようにする仕組みである。

Accessible Rich Internet Applications （WAI-ARIA）：ARIA 属性から UIA への一般的なマッピングも利用できる。

IAccessible2 ：MSAAの機能をベースにしている。 IAccessible2はMSAAの実装活用し、追加機能を提供する。

Windows Automation API ：Windows 7 より、マイクロソフトはアクセシビリティテクノロジーを Windows Automation API と呼ばれるフレームワークにパッケージした。MSAA も UIA もこのフレームワークの一部となった。

Microsoft Active Accessibilityの実装 
Active Accessibilityは、Windows 95以降のすべてのバージョンで開発者が利用できる。 最初に導入されて以来、MSAAは、Microsoft Internet Explorer、Mozilla Firefox、Microsoft Officeなど、多くのビジネスおよびコンシューマアプリケーションのUIへのプログラムによるアクセスを行う方法として使用された。 スクリーンリーダー、画面拡大鏡、重度障害者用意思伝達装置などのアクセシビリティツールに加えて、このテクノロジーはQuickTest Pro、Functional Tester、SilkTestなどのテスト自動化ソフトウェアでも使用されている。

MSAAを実装しているアプリケーションおよび支援技術製品は、マイクロソフトアクセシビリティサイトまたは支援技術情報Webサイトで検索できる。

参考文献

外部リンク 

 
 アクセシビリティに対するマイクロソフトの取り組みの歴史
 UIアクセシビリティチェック
 UIA検証
 実際のアクセシビリティのプロファイル
 アクセシビリティ開発センター

マイクロソフトのAPI
Windows API
アクセシビリティAPI