はじめに
ACS事業部亀崎です。昨日私達のチームは「Platform Engineering Kaigi 2024」に出展、参加しました。
会場そしてオンラインで多くの方がご参加したイベントとなり、大盛況に終わったのではないかと思います。 あらためまして、イベントを企画運営の方々に「お疲れさまでした」「ありがとうございました」と申し上げたいと思います。 また登壇された皆様、ブースの皆様、そしてご参加の皆様お疲れさまでした。 そして、私達エーピーコミュニケーションズのブースに立ち寄って頂き、また弊社上林およびマイクロソフト柳原様の共同登壇のセッションにご参加いただいた皆様に感謝いたします。
本当にありがとうございました
PlaTTシリーズ発表
さて、そんなPlatform Engineering Kaigiで弊社は「PlaTTシリーズ」という「Backstage」のマネージドサービスのリリースを発表いたしました。
私自身がこのPlaTTシリーズの開発者の一人でもありますので、なぜこうしたサービスをリリースするにいたったかを私なりの言葉でご紹介したいと思います。
Backstage導入・運用の認知負荷(めんどくささ)を解消したい
このブログでも何度もOSS Backstageを取り上げてまいりました。
私自身がBackstageを導入し、内部で利用した際に感じたのは 「とにかく導入の認知負荷が高い!!」ということです。
1) BackstageはOSSとして公開しているテンプレートを利用してソースコードを生成し、それにさまざまな機能(plugin)を追加導入して動かすものです。その中身は React(frontend)やexpressjs(backend) といったTypescriptの実装です。つまり、そうしたコード実装の知識がある程度必要になります。
2) さらに多様な機能と連携するため、それぞれに設定が必要となり、Backstageそのものも様々なオプション機能のコンフィグレーションをしなければなりません。さらにつらいことにドキュメントが十分に整備されてるとはいいにくい状況です。結果 Backstageのリポジトリ を参照して、ドキュメント化されていない部分を自分自身がコードから読み解かないといけない。
3) そしてこれは良い部分でもあるのですが、とても活発に開発が進んでいます。毎月リリースが行われており、機能追加なども多くあります。必要に応じてそうした更新に追従氏ていく必要があり、自身のBackstage環境も最低でも2−3ヶ月に一度はアップデートしていないといけない。
こうしたことを少しでも解決しようと「ちょこっとbackstage」というものを公開させていただきました。
開発者として、まず触ってみたいという方に向けて公開したものですが、実際の運用となるとまだまだ不十分です。
こうしたことから「マネージドサービス」としてのBackstageを企画し、今回のリリースとなっています。(「Backstage」の部分がPlaTT Baseというサービスになっています)
テンプレートの拡充も大変
Backstageの立ち上げ、運用はPlaTT Baseでカバーでき、次に課題となるのがBackstageを使いこなすことです。使いこなす部分の1つとしてポイントとなるのが「テンプレート」機能です。なにか開発を始めるときに、ボイラーテンプレートコードや、ベースとなるIaCファイルなど、標準化された様々なファイルをコピーして始めるといったことが多いかと思います。そうしたコピーを簡単にしてくれるのがBackstageの「テンプレート」機能です。 しかし、実際にそうしたことを行おうとすると、『実際何を用意したらよいのだろう』『最初から作っていくのはめんどう』といったことがおきるのではないでしょうか。そこで弊社であらかじめそうしたテンプレートを用意させていただき、皆さんにはそれをご利用いただくことで『テンプレート何したらいいかわからない』といった問題を解決しようとしています。そのサービスが「PlaTT Software Template」です。
学習支援が必要
Backstageは開発チームの全員が利活用していくものです。このため、全員がそうした使い方をある程度理解していかなければなりません。 しかし、Backstageの導入同様公式ドキュメント等がまだまだ十分でない部分が多いです。こうしたことを解消すべく、弊社でBackstageの使い方などを紹介するコンテンツを作成し、PlaTTシリーズ(Backstage)へのオンボーディングを少しでも楽にしようと考えました。こうして考えられたのが「PlaTT オンボーディング」です。
独自機能の開発
様々な対応をしても、「いやまだまだ認知負荷あるよね」って思うこともあります。BackstageはPluginという形で機能を拡張していけるのが特徴で、「まだまだ」な部分のPluginを開発することで対応できます。
私達が感じた「まだまだ」なのは実はBackstageではなく、開発シーンの中にあります。その1つが会議です。会議で大小さまざまなディシジョンを多数行っていますが、「あれ??あの件どういう結論だったけ?」など、過去に決めたことがどういったことだったかを整理する時間が多数発生していました。リモートワーク中心のチームであるため、会議はすべてオンラインで行われていたため、「ビデオ活用しよう」ということになりましたが、ビデオを見返すのは大変ですよね。そうした中で「ビデオから議事録を作成し、それを簡単に検索できるようにしよう」ということでAzure AI を活用した機能をPluginで実装しました。自然言語で問い合わせでき、さらに複数の議事録からサマライズなども行えるようにしたところ、「これはいいよね」となり、サービス化を検討しはじめました。
(画面は開発中のものです)
まずは議事録からですが、さまざまな情報を収集し、簡単に整理できるように、というのが最終的なサービスの目標となり、「PlaTT AIアシスタント」と命名され今回発表となりました。
PlaTTシリーズ発表のまとめ
このように、内部の開発上の課題を解決しさらにお客様のプラットフォームチームの課題を解決してきた弊社ならではの視点で、お客様のプラットフォーム提供の際の認知負荷をできる限り低減していこうということで今回PlaTTシリーズを発表させていただきました。
ぜひご利用を検討いただければと思います。
株式会社エーピーコミュニケーションズ ACS事業部 お問い合わせフォーム
よろしくお願いします。