クイズの説明
Step 3「Internal Developer Portalを構築しよう」の理解度を確認します。IDP、Backstage、サービスカタログ、スキャフォールディングについて問います。
合格ライン: 80%(5問中4問正解)
問題
Q1. IDPの役割
Internal Developer Portal(IDP)の最も重要な役割はどれですか?
- A. 開発者がコードを書くためのオンラインIDEを提供する
- B. 開発者に必要なサービス情報、ドキュメント、テンプレート、セルフサービス機能への統一されたアクセスポイントを提供する
- C. マネージャーが開発者の生産性を監視するためのダッシュボードを提供する
- D. インフラチームがサーバーを管理するためのコンソールを提供する
答えを見る
正解: B
IDPの最も重要な役割は、開発者に必要なすべての情報とツールへの「ワンストップアクセス」を提供することです。サービスカタログ、ドキュメント、API仕様、テンプレート、セルフサービス機能を一箇所に集約し、情報の分散による認知負荷を軽減します。オンラインIDE(A)はIDPの機能ではなく、開発者の監視(C)は目的に反します。IDPは開発者を支援するためのポータルです。
Q2. Backstageのサービスカタログ
Backstageのcatalog-info.yamlの最大のメリットはどれですか?
- A. YAMLファイルが一番読みやすいフォーマットだから
- B. 各サービスのリポジトリにメタデータ定義ファイルを配置することで、サービスオーナーが自分のサービス情報を管理し、Gitで変更履歴が追跡される
- C. catalog-info.yamlを使うとKubernetesのデプロイが自動化される
- D. JSONよりファイルサイズが小さいから
答えを見る
正解: B
catalog-info.yamlの最大のメリットは、「Docs as Code」「Catalog as Code」の考え方に基づき、サービスのメタデータを各リポジトリのコードと一緒にバージョン管理できることです。サービスオーナーが自分のサービス情報を直接更新し、PRレビューを経て反映されるため、情報の正確性と鮮度が保たれます。中央管理のデータベースに比べて、オーナーシップが明確で、変更履歴も完全に追跡できます。
Q3. ヘルススコアカード
サービスヘルススコアカードの運用方法として最も適切なものはどれですか?
- A. スコアが低いサービスのチームを懲罰的に評価する
- B. スコアを全社に可視化し、チームが自発的に改善する動機を提供する。低スコアのサービスには改善サポートを提供する
- C. スコアが100点未満のサービスのデプロイを停止する
- D. スコアの計算は手動で行い、月次レポートでマネージャーに報告する
答えを見る
正解: B
ヘルススコアカードは「可視化と動機付け」のツールであり、懲罰(A)やデプロイ停止(C)のためのものではありません。全サービスのスコアを透明に公開し、チーム間の健全な競争意識を醸成します。スコアが低いサービスには改善のためのサポート(ペアリング、テンプレート活用支援等)を提供します。自動チェック(D)により手動作業を排除し、リアルタイムにスコアを更新することが重要です。
Q4. ソフトウェアテンプレート
Backstage Software Templateの実行で自動化される内容として正しいものはどれですか?
- A. サービスのビジネスロジックの実装まで自動生成される
- B. GitHubリポジトリの作成、CI/CDパイプライン設定、Kubernetesマニフェスト生成、カタログ登録など、新規サービスの立ち上げに必要な一連の作業が自動化される
- C. テストの実行と品質保証まで自動的に完了する
- D. 既存のサービスのリファクタリングが自動実行される
答えを見る
正解: B
Backstage Software Templateは、新規サービスの立ち上げに必要なインフラとプロジェクト構成の自動生成を行います。具体的には、テンプレートコードの生成、GitHubリポジトリの作成、CI/CDパイプラインの設定、Kubernetesマニフェストの生成、Argo CDへの登録、サービスカタログへの登録が自動化されます。ビジネスロジックの実装(A)は開発者が行う部分であり、テンプレートが生成するのはスケルトン(骨格)です。
Q5. IDP導入戦略
IDP導入で最も重要な成功要因はどれですか?
- A. 最新のフレームワーク(Backstage最新版)を使用すること
- B. catalog-info.yamlの情報鮮度を維持する仕組みを作り、開発者にとって信頼できる情報源にすること
- C. できるだけ多くのプラグインを導入し、機能を豊富にすること
- D. IDPのUIデザインを外部デザイナーに依頼し、美しくすること
答えを見る
正解: B
IDPの最も重要な成功要因は「データの信頼性」です。サービスカタログの情報が古かったり不正確だったりすると、開発者はIDPを信頼しなくなり、再び個別のツールやSlackで情報を探すようになります。catalog-info.yamlの更新をCI/CDで検証し、ヘルススコアカードで情報鮮度をチェックし、「IDPを見れば必ず正確な情報がある」という信頼を確立することが最重要です。多機能(C)より、少ない機能でも信頼性の高い情報源を目指すべきです。
結果
合格(4問以上正解)
Step 3の内容をよく理解しています。IDPの設計に必要な知識を身につけました。次のStep 4「Golden Pathとガードレールを整備しよう」に進みましょう。
不合格(3問以下正解)
Step 3の内容を復習しましょう。特に以下のポイントを重点的に確認してください:
- IDP — 5つのコンポーネントとワンストップアクセスの価値
- catalog-info.yaml — Catalog as Codeとオーナーシップ
- ヘルススコア — 可視化と動機付けのツール
- テンプレート — 新規サービス立ち上げの自動化
推定所要時間: 30分