近年、AIを開発現場に採り入れているシステム開発会社が増えています。開発会社がAIを活用することで、発注企業にはどのようなメリットがあるのでしょうか。株式会社セルティアは自社の開発プロセスに積極的にAIを採り入れ、数々の実績を積み重ねてきた企業のひとつです。そんな同社の代表取締役である梶原信次氏に、AIを活用した開発がもたらす具体的な効果と可能性について詳しくお話を伺いました。
プログラムコードの作成にAIを活用!開発するシステムに合わせて開発手法も柔軟に構成していく
―― AIを活用した開発を推進しているとのことですが、具体的にどのように開発プロジェクトを進めているのですか?
梶原氏: システムソフトウェアの要件定義、技術選定、設計などはエンジニアの手で行い、プログラムのコードを作成する部分でAIを活用しています。
当社ではクラウドサーバー上に開発環境を構築し、そのサーバー上で開発を進めています。お客様の課題を聞き取り、どのようなスペックのサーバーが必要か、どのような技術・開発ツールが最適かといったことをエンジニアが判断して環境を整えていきます。そして基本設計、詳細設計を行った後、AIを活用してプログラムコードを作成していきます。
ざっくりと言えば、SE(システムエンジニア)の仕事は主に人間が、プログラマの仕事は主にAIが担当しているというイメージです。
―― 最初に全体の設計を細部まで固めてからAIを活用していくイメージですか。
梶原氏: そこはケースバイケースです。当社ではウォーターフォール型の開発とアジャイル型の開発のどちらも手掛けていますので、開発するシステムに合わせて柔軟に開発手法を決めていきます。
―― 最初に全体を細部まで設計をしておいて、その後は製造、テストという下流工程に流れていく「ウォーターフォール型」と、最初は基本的な部分が動作するように作り上げ、その後、細部について設計・製造・テストを繰り返しながら仕上げていく「アジャイル型」の、どちらも手掛けているのですね。
梶原氏: はい。対象となるシステムに、どちらの開発手法が適しているのかについても、当社の経験豊富なエンジニアが判断します。また、場合によっては1つのシステムの中でも開発手法を分けて、どこをウォーターフォール型で開発し、どこをアジャイル型で行うかという、プロジェクト自体の設計も人間の手で行っています。当社には大手広告代理店である電通の出身者や、SaaSシステム(年間億単位)のBtoB営業に従事し、数多くの導入実績を持つ経験者もおりプロジェクト全体を俯瞰的に見た上で、効率的かつ効果的に進めていく、といったことも得意としています。
開発現場へのAI導入により、納期は確実に短縮。ソウトウェア品質も向上。間接的なコスト低減も!
―― 発注企業にとっては、どのようなメリットがありますか。
梶原氏: 工期はすべてを人手で進める場合に比べると確実に短縮します。概ね3分の2程度で済むか、うまくいけば2分の1程度まで短縮できることもあります。
―― なるほど。短納期をご希望のお客様には大きなメリットになりますね。
梶原氏: しかも、下流工程にAIを活用することで、総合力が高い人材を、設計や調査などの上流工程に割けます。また、テスト工程で時間をかけられるため、時間が足りずにしっかりとしたテストが行えないといったことが無くなります。これによりクオリティを大きく向上させることができます。
―― ソフトウェアのクオリティは要件定義や設計などの上流工程と、テスト工程がとても大事だと言われています。確かにそれはとても安心ですね。コスト面でもメリットがありますか。
梶原氏: 開発コストだけを見るとケースバイケースだと思います。現在は、さまざまな技術を導入し、それを活用できるエンジニアを育成するなど、AI活用のためのさまざまな投資を行い、工期短縮という付加価値の創出し、お客様にご提供している段階です。
なお、直接的な開発コストではありませんが、間接的にお客様側のコスト負担低減につながる部分もあります。
―― それはどのような部分ですか。
梶原氏: ミーティングでの要件をまとめるのにもAIを活用しているのですが、その結果、お客様企業側の社内要件をまとめるために、お客様企業側のディレクター役を用意する必要がなくなりました。関係各部署が、それぞれのフォーマットで、要件をそのままご提出いただけます。地味ですが、お客様側の工数が減り、人件費も若干の削減が期待できます。
―― そのほか、何かメリットはありますか。
梶原氏: 将来のシステム改修もスムーズに進むでしょう。システムが一度完成し、その後に追加開発する際、数年の運用を続けてからだと、改修業務に当たるエンジニアが中身を把握するのに時間がかかってしまうことがあります。なぜなら、ソースコードを追加したり書き換えたりすることにより、他の部分に悪影響が出ないように、事前に仕様書やソースコードを読み込んでおく必要があるからです。この部分にAIを活用することで、どの部分がどの部分に影響するかを事前把握するのが迅速かつ容易に行えるようになります。結果として改修作業が捗ります。
AIを使えばみな同じではない。株式会社セルティアが蓄積してきたノウハウが大きな差につながる。
―― AIが普及し、他の開発会社もAIを導入するようになると差別化が難しくなりますか。
梶原氏: AIもさまざまな種類が登場しており、目的に最適なツールがどれか、どの機能がどう成り立っているのかという知見が重要になってきます。しばらくは、その蓄積がアドバンテージになるでしょう。
それに当社の強みはAIだけではありません。当社はデータベースの設計・構築なども得意としています。AIでソースコードを生成するだけならどの開発会社も差が無くなるかもしれませんが、システムの周辺環境をどう構成するかで、結果は大きく違ってきます。
たとえばデータベースの設計を入念に行い、あらかじめ最適化しておかなければ、データベースを処理するサーバーに必要なサーバーのリソースが増加します。クラウド環境下ではリソースが大きいほど月々の利用料が高額になるため、こうした知見の有無は、お客様のシステム運用コストに跳ね返ってきます。
その点当社なら、利用目的に沿った最適な周辺環境を構成できます。これはお客様にとっても大きなメリットでしょう。
―― 同じAIでコードを作成するようになれば、どの開発会社でも同じクオリティのシステム開発が可能になるのですか。
梶原氏: そうでもありません。AIを活用してコードを生成させるのはそれほど難しいことではありませんが、たとえば、システムと連動するデータベースにはクセがあるものもあり、そこを押さえていないと、実運用や機能追加に対応できるコードを生成させるのは難しいということもあります。同じAIでコードを作成するにしても、周辺システムや各種ライブラリに関する知識、サーバー環境についての知見などで、最終的な成果は大きく異なるでしょう。
なお、当社ではエンジニアの社内教育も進めています。エンジニアにはAIによるコード生成だけでなく、プログラミングについても深いところまで勉強させています。AIが使えるだけで、意味が分からないままプログラムを組んでしまっている状況では、何かトラブルが発生した際にきちんとした原因究明ができません。AIが作成したコードをレビューできるように、エンジニアのスキルも磨き上げています。
―― 受験勉強で丸暗記した知識は、背景をきちんと勉強した知識に比べて応用が効かない、というのに似ているかもしれません。そこまでしっかり押さえているというのは、とても安心できます。
お客様のビジネスにAIを採り入れたシステムの開発も。学習モデルの作成から、それを組み込んだシステムの開発までトータルにお任せください。
―― 開発にAIを利用するというお話でした。一方で対象となるシステムにAIを連動させるような開発はされていますか。
梶原氏: はい。自社の業務にAIを導入したいというご要望は年々増えつつあり、当社でも承っています。
現在取り組んでいるのが、膨大な商品群を国際的な基準に照らして比較・分類していくというシステムの開発です。ある分野の商品ではジャンルが5000種に分かれているのですが、対象の商品をどのジャンルに分類するかの判断を自動化させたい、というものです。
誰もが「そんなのAIを使えば一発で出来そうじゃん!」と思うかもしれません。しかし、実際にやってみると、分類の精度を高めるのが難しく、なかなか「一発で」というわけにはいきません。しかも、分類を間違ったときに、AIがどこをどのように判断したのか、なぜ間違ったのかが分からないのです。学習データをもっと増やせれば、精度は上がるかもしれませんが、用意できるデータが限られていては、そうもいきません。
このような場合、手前で条件分岐を入れると、より正確に分類できるようになることがあります。こうした実践的な手法は、ある程度開発実績を積まなければ、なかなか得られません。そうした面でも当社の持つノウハウは大いに役立つものと考えています。
―― さまざまなAIが登場する中、自社のシステムにどのAIを利用するべきか、というのも悩ましそうです。本当にそのAIで良いのか、将来サービス提供が停止してしまうのではないかという不安がつきまといます。
梶原氏: 特定のベンダーの技術に決め打ちせず、後から差し替えることを前提でシステムを設計しておけば、学習モデルの部分は、後からいくらでも差し替えられます。
当社には、大学のAIの授業で非常勤講師を務めている人物が、当社の開発にも非常勤で勤務しています。学習モデルの作成も行えます。学習させるデータや環境をお持ちでしたら、ぜひ一度、当社にご相談ください。
―― 今後、積極的に取り組んでいきたい開発テーマなどがあれば教えてください。
梶原氏: 大きく2つあります。1つは、ビジネス的な決済が伴うサービスサイトの開発をもっと手掛けていきたいと考えています。決済済みのユーザーを認証して閲覧を許可するなど会員制のビジネスを運営したいお客様に向けた開発をもっと手掛けていきたいですね。
もう1つは、チャットボットを応用したサービスの開発です。当社はゲームやゲーム関連のサービス開発も多数行っています。ゲームのキャラクターやVTuberを動かすような処理についても多くの知見を持ち合わせています。それらをチャットボットと組み合わせて、ビジュアルと音声がシンクロする高品質なUI/UXを持った問い合わせサイトの構築なども手掛けてみたいと考えています。
もちろん、それ以外にも「AIでこんなことができないか?」というご相談はいつでも大歓迎です。新しいシステムの導入を検討されているお客様は、ぜひ当社をご指名ください。
●株式会社セルティアの社員・技術スタッフの皆さん