Unity を検索

検証済みソリューションパートナーの検証プロセスについて

2021年5月6日 カテゴリ: テクノロジー | 13 分 で読めます
VSP blog header image
VSP blog header image
取り上げているトピック
シェア

Unity のチームは、Unity エコシステムの中でクリエイターが成功できるようにすることを基本に考えて行動しています。私たちはこのビジョンを実現するために、Unity が所有するソリューションやパートナーが提供するソリューションをどのように活用するかを常に考えています。コミュニティとの継続的な対話を通じて、皆さんのニーズや課題をより深く理解し、得られた知見を活用して製品の開発方法をアップデートし、情報を提供するように努めています。

検証済みソリューションパートナー(Verified Solutions Partners; VSP)プログラムは、クリエイターのコミュニティから多く寄せられた「サードパーティ製品を購入する際、品質や性能を評価するのが難しい」という声に応えるために作られました。皆さんの目的に合ったサードパーティ製品を選択する際の不安やプレッシャーを解消するために、私たちは VSP プログラムを立ち上げました。VSP プログラムでは、Unity のコア製品の使い勝手をどのくらい向上させるかに基づいてサードパーティ製品の審査と選出を行っています。SDK やプラグイン、エディターアプリ、クラウドサービスなど、検証済みパートナーの提供するソリューションは技術的に検証され、Unity の最新バージョンや使用頻度の高いバージョンに対応していることが保証されています。では、この検証プロセスは具体的にどのようなもので、どのような仕組みになっているのでしょうか。今回はそこを詳しく掘り下げてみましょう。

Image of the unity verification process
...

技術的検証

検証済みソリューションパートナーとして認定されるためには、提供しているソフトウェアソリューションが Unity の技術基準に適合していることを確認するために、厳しい検証プロセスを経る必要があります。このため、検証チームはユーザーに対して品質保証とソフトウェアの互換性チェックの結果を提供します。この作業におけるガイドラインとして、検証チームは大きく 4 つの原則に従っています。

  1. 安定性 公式の Unity リリースである、2019.4(LTS)、2020.3(LTS)、2021.1(最新の TECH ストリームバージョン)で快適に動作すること
  2. 生産性 Unity エディターに容易に統合でき、かつ使いやすいこと
  3. 性能 エディターでの作業体験を損なわず、Unity アプリケーションまたはゲームのサイズを膨張させないこと
  4. 使いやすさ 最新版のドキュメントと、ソリューションの機能を解説する完成度の高いデモプロジェクトやシーンが備えられていること

安定性

検証チームは、最も広く使われている Unity のバージョンと LTS バージョン、それからパートナーのソリューションが将来にわたっても使えることを確かめるために、最新の TECH ストリームバージョンでもテストを行っています。これらのバージョンは半年ごとに更新されますが、現在サポートされている主なバージョンは、前述した通り 2019.4(LTS)、2020.3(LTS)、2021.1(最新の TECH ストリームバージョン)です。

さらに、検証チームは、VSP のソリューションがサポートするすべてのプラットフォーム(Android、iOS、Windows、Nintendo Switch、PlayStation 5、Xbox Series X/S など)でテストを行います。

ある会社を VSP のパートナーとして認定するまでに Unity のチームはテストを行い、修正が必要な重要なバグや大きなバグを報告して修正を求めます。また、比較的小さな問題についても、それを修正し、製品や全体的なユーザー体験を向上させるための提案も行います。

生産性

Unity の検証チームは、エンドユーザーの視点からテストに取り組んでいます。つまり、パートナーのソリューションをダウンロードして、他の Unity 開発者と同じように、エディターで新しいプロジェクトを立ち上げるのです。私たちにとって重要なのは、そのソリューションがエディター内で Unity の一部のように感じられ、また Unity の一部のように動作することであり、他の Unity の機能や既存のプロジェクトと簡単に統合できることです。サードパーティのソリューションを統合する目的は、生産性の向上です。検証チームは基本的に、ソリューションがプロジェクトに追加された数分後にはエディターで作業ができるような、直感的な UI 体験を求めています。

性能

検証チームがチェックする重要なパフォーマンスの指標は 2 つあります。1 つ目はスピードに関するもので、ソリューションがエディターのアプリケーションの実行速度を落とさないこと、2 つ目は体験の質に関するもので、エディター内でクラッシュや不具合が発生しないことです。また、Unity アプリやゲームの実行時のパフォーマンスに悪影響を与えていないかどうかもチェックします。

使いやすさ

使いやすさを慎重に評価するために、検証チームは、Unity 開発者コミュニティの中で、初心者も含めてあらゆるレベルのユーザーのことを常に考えています。私たちの経験上、パートナーソリューションとは、導入すればほぼそのまま使えて、最小限のコーディングと設定の経験しか必要としないものであってほしいものだと思います。また、プラグインをいじることではなく、素早く作業に取り掛かることが目的のはずです。インターフェイスは、Unity のユーザーが見慣れたものでなければなりません。

VSP self-help guides

自習用の資料

検証チームは、4 つの主要な指針に加えて、パートナーのすべてのソリューションについて、ソリューションのすべての機能について説明するドキュメントやデモプロジェクト、シーンなどの最新の参考資料が整備されていることを求めます。

ドキュメント

VSP プログラムに継続して参加するためには、パートナーはソリューションに関する最新のエンドユーザー向けドキュメントを提供する必要があります。詳細な製品情報や技術情報についてはウェブベースのドキュメントとしてまとめることをおすすめしていますが、オフラインですぐに参照するためには短い(1 ページ程度の)ドキュメントでも十分です。このようなクイックリファレンスには、以下の情報が含まれている必要があります。

  • バージョン番号
  • 機能の簡単なまとめ
  • サポートされているプラットフォームと Unity バージョン
  • オンラインドキュメントへのリンク
  • 既知の問題
  • デモプロジェクトへのリンク(Unity パッケージにデモシーンが同梱されていない場合)

デモプロジェクトまたはシーン

VSP のパートナーは、Unity パッケージ内に同梱されたデモシーン、または独立したデモプロジェクトのいずれかを提供する必要があります。Unity の検証チームは、すべてのデモをレビューし、それがパートナーから提案されたソリューションのワークフローと機能をユーザーに理解してもらえるものであるかを検証します。また、実装に利用できるすべての API を一通り使うようなデモを推奨しています。理想的には、パートナーは、ユーザーがソリューションを使い始める際の分かりやすさを考慮して、ドキュメントの中で適宜参照できるようにデモシーンやプロジェクトを作るようにするべきです。

What the VSP process looks like

技術的検証プロセスはどのようなものか

検証プロセスは 7 つのフェーズに分かれており、全体で 4 週間から 8 週間の時間をかけて行われます。

1. 提出物のチェック

Unity のチームは、検証プロセスを開始するために必要なすべてのドキュメントをパートナーが提出したかどうかを確認します。このドキュメントには以下のものが含まれます。

  • パートナーのソリューションの最新バージョン(リリース候補バージョンか安定リリースバージョンのいずれか)
  • ソリューションのドキュメント
  • デモシーン
  • ライセンス、テスト環境など

2. 検査

これはもちろん検証チームにとって最も楽しい部分です。提出されたデモプロジェクトやドキュメントを確認することができるからです。また、数日間エディターでソリューションを操作して、ソリューションの使用経験を積み、ワークフローを把握します。

3. テストケース作成

提案されたソリューションをしっかりと理解した上で、テストプロセスを進めるためにテストケースを作成します。テストケースとは、ソフトウェアアプリケーションの特定の機能を検証するために実行される一連のアクションのことです。典型的なテストケースは下の画像のようなものです。

VSP test case scenario

個々のテストケースには、ほとんどすべての要件を検証するための明確なテストステップとデータ、または特定のテストシナリオが含まれています。Unity のテストケースには、ソフトウェアソリューションが動作する Unity のバージョンやプラットフォームなども変数として含まれています。

4. テスト実行

Unity の検証チームはテストエンジニアで構成されており、テストケースを使って期待される結果と実際の結果を比較します。これにより、ソリューションが想定通りに動作しているかどうかを判断します。私たちは、サポートされているすべてのプラットフォーム(Windows、Mac、Android、iOS、Nintendo Switch、Playstation、Xbox など)、サポートされているすべてのバージョンの Unity でテストを行います。また、Unity プロジェクトがビルドされた後は、Unity エディター内でもテストを行います。問題が発見された場合は、検証レポートに問題を再現するための具体的な手順、スクリーンショット、ビデオ映像などをまとめ、パートナーがその根本原因を特定できるようにします。

5. レポート発行

すべてのテストケースを実行した後、検証チームは検証レポートを作成し、個々の問題やバグの深刻度を評価します。バグの深刻度とは、ソフトウェアの機能を使用しているときに、ある問題が機能に与える影響の度合いを表すものです。問題がソリューションを使用している人に与える影響に応じて、私たちはバグの深刻度を 4 つのレベルに分類しています。

  • Low(低):目に見えるシステムの不具合を起こさないバグ
  • Minor(軽度):予期しない動作を引き起こすものの、ソフトウェアの機能全体に障害を与えることはないバグ
  • Major(重大):システムの大部分に障害を与えうるバグ
  • Critical(致命的):システムを完全にシャットダウンさせる可能性のあるバグ

VSP パートナーとして認定されるには、「致命的」と「重大」に分類されたすべてのバグについて修正を行う必要があります。一方、「軽度」と「低」に分類されたバグもユーザー体験の向上のために報告されます。

6. 修正

検証レポートの結果をパートナーと共有し議論した後、バグの確認と修正に移ります。ほとんどの検証プロセスにおいて、Unity のチームは検証済みソリューションパートナーの認定に先立ち、修正が必要な問題を少なくとも 1 つは発見します。Unity のチームは実際のバグ修正には参加しませんが、一般的には、Unity とそのサードパーティのエコシステムに関する知識を活用して、問題解決に向けてパートナーを正しい方向に導くよう努めています。すべての未解決な問題がパートナーによって解決されると、検証チームはこれまで紹介した 4 番目のフェーズ(テスト実行)を再度実行します。このプロセスは、「致命的」と「重大」に分類された問題がすべて解決されるまで繰り返されます。

7. 検証

検証チームが未解決の問題がすべて解決されたことを確認すると、そのパートナーは技術的検証が済んだものとみなされます。これは、パートナーはマーケティング資料に検証済みソリューションパートナーのバッジを使用できるようになるなど、このプログラムで得られる多くのメリットを引き出すパートナーシップの大きな一歩となります。さらに、VSP は unity.com とアセットストアの両方で紹介され、Unity が運営する教育プログラムやマーケティングプログラムにも参加することができます。

検証プロセスはこれで終わりではありません。パートナーのソリューションのメジャーリリースや機能アップデートのたびに、パートナーは検証チームから再度検証を行うよう依頼を受けることになります。また、Unity の新バージョンがリリースされた場合も同様で、検証チームはパートナーのソリューションが最新の Unity 上でもスムーズに動作するかを確認します。再検証プロセスは、最初の検証と同じく、7 つのフェーズで構成されています。

まとめ

Unity の検証チームは、Unity のエンドユーザーのコミュニティと同様、開発者で構成されています。同じクリエイターとして、私たちは互換性と性能の重要性を理解しています。そのため、検証プロセスには細心の注意を払っています。私たちは、Unity で仕事をするすべての人に自信を持って仕事をしてもらいたいと考えており、その一助として、検証済みソリューションパートナープログラムであるサードパーティのソリューションを認定しているのであれば、そのソリューションの品質の高さは保証されているということを知っておいていただきたいと思い、今回の記事をまとめました。検証済みソリューションパートナープログラムの詳細については、こちらのページをご覧ください。

2021年5月6日 カテゴリ: テクノロジー | 13 分 で読めます
取り上げているトピック
関連する投稿