1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

内製化の「詰み」を回避するローコード「Radzen」導入のすゝめ

1
Posted at

内製化の「詰み」を回避するローコード「Radzen」導入のすゝめ

【1】 現状の課題:ノーコードの限界と、Radzenとの出会い

IT人材不足や開発期間の長期化、費用の高騰に対処するため、多くの企業がノーコードツールを採用しています。
しかし、一般的なノーコードツールはデザインの自由度が低く、独自のUI表現にはJavaScriptでの複雑なカスタマイズが必要になります。あらかじめ用意された枠組みを超えるシステムを作ろうとした瞬間、開発が「詰み」になってしまうケースは少なくありません。

そんな中、私は2022年4月頃に、ASP.NET Core (Blazor) のソースコードを生成する米国製のローコードツール「Radzen」に出会いました。興味が湧き、サブスクリプションを自腹で購入して試してみたのです。

このツールの実力は圧倒的でした。SQL Serverなどのデータベースさえあれば、わずか数分でCRUD(登録・参照・更新・削除)画面を自動生成してくれます。
しかも、生成されたグリッドには、ページング、ソート、フィルタ、さらにはExcel出力機能まで簡単な指示で追加装備できました。当然、生成された画面はエラーなしで完璧に動作し、「爆速で開発スピードがアップする!」と驚いたのを覚えています。用意されているコンポーネントも豊富で、デザイナー不在でも十分に実用的な画面が作れます。

最大のメリットは、「ベンダーロックインがない」という点です。仮にRadzen社が倒産したとしても、手元には標準的なC#のプロジェクトが残るため、Visual Studioでそのまま開発を継続できます。経営視点で見ても、これ以上ないリスクヘッジだと感じました。

【2】ローコードツール「Radzen」を日本で実務利用する4つの壁

しかし、これほどのメリットがありながら、爆速でできあがったWebアプリを日本の実務でそのまま利用するには、以下のような「4つの高い壁」が存在していました。

  1. 完全な英語仕様:生成された画面項目やバリデーションのエラーメッセージがすべて英語で、日本の業務には馴染まない。
  2. Master/Detail画面の不在:注文画面などで一般的な、親データと明細データを同時に扱う画面が自動生成されず、事務効率が下がる。
  3. リバースプロキシの配置制約:ASP.NET Coreの標準マニュアル通りに設定するとアプリのサブディレクトリ配置ができず、1台のサーバーで複数アプリを稼働させにくい。
  4. カスタマイズの難易度:課題を解消するためのカスタマイズには、C#の知識だけでなく「Radzen独自の構造」の理解が必要で、プログラマにとっても難易度が高い。

私は趣味としてRadzenを触っていたため、当時は対応する時間が十分に取れず、しばらくこの問題を放置していました。

転機が訪れたのは少し前のことです。派遣契約の満了に伴い、一時的に自由な時間が生まれました。「これを機に本気でRadzenと向き合おう」と決意し、数ヶ月の時間を投資。AI(Gemini)の手助けを借りながら、上記の課題をすべて解決することに成功したのです。

とはいえ、特に「4)カスタマイズの難易度」という壁がある限り、現場のチームリーダーや企業がRadzenの採用に躊躇してしまうのは当然だとも感じました。実際、ちょっと複雑なカスタマイズを要求されたら、私自身も頭を抱えていたはずです。

ーーしかし、Radzenに搭載された「ある機能」が、この状況をガラリと変えることになります。

【3】新機能「Radzen Blazor MCP」でAIへの丸投げが可能に!

そんな中、今年4月、Radzenに「Radzen Blazor MCP (Model Context Protocol)」機能が追加されました。これが個人的に大きなブレイクスルーとなりました。

この機能は、Radzen自体がAIを内蔵しているわけではありません。Radzenが「MCPサーバー」として機能し、開発者が用意した外部AI(GeminiやGitHub Copilot、Claude Codeなど)と連携させる仕組みになっています。

これが実に見事な設計なのです。ユーザーが日本語で変更を指示すると、Radzen MCPサーバーが「現在作成中のソースコード情報」や「コンポーネントのプロパティ名」といった文脈(コンテキスト)をまるごと外部AIに引き渡してくれます。これにより、外部AIはRadzenの内部構造を完璧に理解した上で、C#コードの修正や設定ファイルの作成・変更を自動で行ってくれるようになります。

Radzen Blazorで画面編集中の画面

編集中のRadzen画面.png

「これならいけるかもしれない」と感じた私は、Radzenの公式サンプルアプリである「RadzenCRM」プロジェクトを使い、以下のような少し複雑な指示(多言語対応の無茶振り)をして、その実力を試してみました。

※与えたプロンプト:

RadzenCRMは、英語/日本語対応設定になっています。
このAddTask.razor画面については、各項目のリテラルの英語表示になっています。
この画面を多言語対応可能になっているので、リソースファイルで項目名を設定するように修正してください。
リソースファイルは、Resourcesフォルダを作成し、その下にSharedResource.ja-JP.resxとしてください。

正直、内蔵のMCP経由でGeminiに連動しているとはいえ、どこまで正しく修正してくれるかは半信半疑でした。しかし、結果はエラーなしの一発で完璧な修正でした。

AI(Gemini)が修正後、テスト実行中の画面

修正したアプリの画面.png

さらに感銘を受けたのは、修正プロセスにおける開発環境への配慮(安全性)です。
AIが裏で勝手に環境を書き換えるのではなく、フォルダやファイルを作成する際には、必ず「許可を求めるポップアップ」を表示して開発者に確認を求めてきます。
また、処理が完了すると修正内容のサマリーが綺麗にまとめて表示されるため、レビュー(結果確認)も非常に容易です。

ブラックボックスで環境を破壊されるリスクがなく、コントロール権が常に開発者側にある設計は、開発チームを率いるリーダー視点でも非常にポイントが高いと感じました。

【4】AI時代における「開発リーダーの新しい選択肢」

かつて私が派遣プログラマとして働いていた頃、Windows上のRadzenで作ったWebアプリをLinux上で動作させることに成功したことがありました。
手応えを感じた私は、当時の担当営業さんに「ローコードツールのRadzenを使って開発をしたいという取引先を探してもらえませんか?」と相談したことがあります。

しかし、営業さんからの回答は非情なものでした。
「どこもRadzenというソフトのことは知らないようです。知名度のないノーコード・ローコードのツールには興味がない」と言われてしまいました。

当時は非常に悔しい思いをしましたが、今振り返れば、その時点で興味を示す顧客が見つかったとしても、当時のツールの仕様では、顧客からの複雑なカスタマイズ要望に一人で応えきれず、どこかで破綻していたかもしれません。

しかし、状況は一変しました。Radzenの圧倒的な「コード生成能力と豊富なコンポーネント群」に、MCPを介した「高度なAIのコーディング能力」が掛け合わされたのです。
爆速でCRUD画面を立ち上げ、2段階認証や画面ごとのアクセス制御をノンコードで実現できるRadzenに、AIの柔軟なカスタマイズ能力が加わった今の状態は、まさに「鬼に金棒」です。

日本での知名度はまだ低くても、これだけの「実利」と「未来」が詰まったツールです。内製化や開発効率化の限界を感じている技術リーダーや経営者にとって、Radzenは今、検討に値する「新しい選択肢」になるのではないでしょうか。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?