Apiaryは本日,分散開発チームへのAPIデザインのベストプラクティス促進のため,Apiary for Enterpriseの提供を開始した。この新製品は,APIの技術革新のスピードを妨げるようなガバナンスモデルのオーバヘッドを課することなく,内部定義された標準への準拠を保証が可能なツーリングを提供するものだ。
Apiary for Enterpriseは,同社の持つAPI設計ツールチェーンをベースとして,API設計がさまざまなベストプラクティスや内部標準を遵守していることを保証する,アサーション機能を追加した形で構成されている。アサーションの記述には,API Blueprint構造を評価可能なJavaScriptベースの言語が使用されている。
プレスリリースによると,
"Apiaryはすでに,当社のAPI開発プロセスにおいて必要不可欠な存在です",とSalecforce.com [SFDC] で Salesforce Marketing Cloud のAPIプロダクトマネージャを務めるKris Chant氏は述べています。"今回の新製品によって,Apiaryを使って当社のAPIスタイルガイドをコード化することが可能になります。不適切なAPI仕様が作られた場合には,当社の設計陣に対してそれがリアルタイムにフィードバックされるようになりますから,膨大な時間の削減とフラストレーションの解消が実現します。結果的にAPIの利用者に対して,よりよい,一貫性のあるAPIエクスペリエンスを提供できるでしょう。"
Apiary for Enterpriseでは,多くのユーザから提供されたアサーションのライブラリが提供される。将来的にはユーザコミュニティ間でアサーションの共有を実現し,ベストプラクティスの普及を促進する考えだ。
InfoQは,同社エンタープライズ製品の責任者であるAndrew Brown氏に,新製品について話を聞いた。
InfoQ: チームコラボレーションに関する機能について,Apiary for Treamとはどのように違うのでしょう?アクセスコントロールモデルが強化されているのでしょうか?
Andrew: "architect"というロールが追加された以外,アクセスコントロールモデルは変わっていません。このロールに所属する人たちの肩書きはさまざまですが,すべて同じような役割を担います。さまざまなチームメンバとコラボレートしてスタイルガイドを作り上げ,いくつものチームとの共同作業を通じて,APIのデザインパターンの普及と促進を目指すのです。結局私たちは,両方のグループを支援しています。スタイルガイドの成文化が実現したならば,今度はそれを読む必要がなくなるくらい,簡単に適合できるものにしていきます。
InfoQ: 企業チームはどのように参加するのでしょう?オンプレミスのLDAPや,他のユーザストアとの統合は可能なのでしょうか?
Andrew: 導入システム(invitation system)を利用すればとても簡単です。LDAPはまだサポートされませんが,ユーザプロビジョニングの拡張はロードマップ上に計画があります。LDAPよりもSAML 2ベースのSSOとの統合の要望が多いので,LADPよりもSSOの発表が先になると思います。
InfoQ: アサーションの開発言語としてJavaScriptを選んだのはなぜですか?
Andrew: 理由は2つあります。私たちの調査によると,この分野のユーザが一番使いやすい言語はJavaScriptだからです。これを実現するために私たちは,API Blueprintの中間的なJSON表現を作って,スタイルガイドに基づいたアサーションを簡単なJavaScriptで記述できるようにしました。JavaScriptは広範なユーザベースとJSON評価に関する優れた表現力を兼ね備えていますから,本当にすばらしいメディアです。
InfoQ: 最初から用意されているアサーションには,どのようなものがありますか?
Andrew: この設計アサーション言語をテストするために,ユーザグループのひとつが提供してくれたスタイルガイドを実際に適用して,価値があると思われるものを実装してみました。同梱されているアサーションとしては文字ケースのチェック(CamelやSnakeなど),HTTPステータスコードの妥当性チェック,適切なエラー形式,時刻形式の一貫性(UTC/Unix),監査フィールド(createdAt, modifiedAtなど),適切なUUIDフォーマット,さらにはニュージーランドのユーザ向けに全ドキュメントの英国形式でのスペルチェックなどもあります。
InfoQ: Apiary for Enterpriseが提供する信頼性とパフォーマンスのSLA(Service Level Agreement)はどのようなものでしょう?
Andrew: 企業ユーザに対しては,四半期ごとの可用性レポートに合わせて,プレミアムサポートとして回避手段のSLAを提供しています。
InfoQ: Apiary for Enterpriseをオンプレミスに展開する予定はありますか?
Andrew: オンプロミスへの展開には,要件として大きなチャンスがあります。近日中にこの種の機能について発表ができると思っています。