Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【ITニュース解説】Next.js × Hono × モノレポで実践する「リアルオプション戦略」:初期の開発速度と将来の柔軟性を両立させるWebシステム設計

2025年10月01日に「Zenn」が公開したITニュース「Next.js × Hono × モノレポで実践する「リアルオプション戦略」:初期の開発速度と将来の柔軟性を両立させるWebシステム設計」について初心者にもわかりやすく解説しています。

作成日: 更新日:

ITニュース概要

ある企業が業務システム開発で「リアルオプション戦略」を採用。Next.js, Hono, モノレポを使い、初期の開発速度と将来の柔軟性両立を目指すWebシステム設計だ。不確実性の高いプロジェクトで、将来の選択肢を残しつつ開発を進める具体的な手法を紹介している。

ITニュース解説

ASSIGN社は、転職エージェント向けの業務管理システムをこれまでに内製で開発してきた。しかし、昨年度から新たに新卒就活支援事業を開始することになり、この新しい事業のための業務管理システムも構築する必要が生じた。新規事業のシステム開発は、特に不確実性が高いという特徴を持つ。

このプロジェクトにはいくつかの大きな課題があった。一つは、多くの関係者、例えばシステムを使う社内のエージェント、サービスを利用する求職者や企業など、多様な立場の人々の要望をまとめてシステム要件を定義するのが非常に難しかった点だ。事業が始まったばかりで、どのような機能が本当に必要とされ、どのように使われるかが見通しにくい状況だった。もう一つは、新規事業であるため、市場やユーザーがどのような反応を示し、事業が将来的にどのように成長・変化していくか未知数であるという事業上の不確実性だ。加えて、開発に投入できるリソース、つまり開発メンバーの数にも制約があった。

このような、先行きが不透明で変化の可能性が高い状況において、開発チームが採用したのは「リアルオプション戦略」という考え方だ。これは、ソフトウェア開発プロジェクトにおいて、将来の不確実な変化に柔軟に対応できるよう、現時点ですべての技術や設計を固めてしまわず、後から最適な選択ができるような「選択肢(オプション)」をあらかじめ確保しておく戦略を指す。具体的には、初期段階では最小限の投資で迅速にシステムを立ち上げつつ、将来の要件変更や事業の方向転換に際して、システム全体を大幅に作り直すことなく、効率的に対応できるように柔軟性を持たせることを目指すものだ。この戦略により、初期の開発速度を保ちながら、将来の変化にも柔軟に対応できるWebシステム設計を実現しようとした。

このリアルオプション戦略を具体的な技術選定に落とし込んだ結果、フロントエンド、バックエンド、そしてプロジェクト全体の管理方法に特定の技術が採用された。

まず、ユーザーが直接触れる画面側であるフロントエンドの開発には、Next.jsというフレームワークが選ばれた。Next.jsは、Reactという広く使われているJavaScriptライブラリを基盤としているため、多くの開発者にとって馴染み深く、豊富な開発ツールやライブラリが揃っている。これにより、開発者は効率的にコードを書くことができ、初期段階での開発速度を大きく高めることが可能となる。Next.jsがリアルオプション戦略に貢献する最大の点は、その柔軟性にある。これは、ウェブページを表示する際に、どの部分をサーバー側で準備するか(サーバーサイドレンダリング)、どの部分をユーザーのブラウザ側で準備するか(クライアントサイドレンダリング)、あるいは事前に完全に準備しておくか(静的サイト生成)を、システムの要件に応じて柔軟に選択し、後からでも切り替えられる能力を持っているためだ。例えば、初期はユーザーの操作に素早く反応するクライアントサイドレンダリングで素早くシステムを立ち上げ、後に検索エンジンからの集客が重要になった際には、SEOに有利なサーバーサイドレンダリングに切り替えるといった対応が容易にできる。このように、Next.jsは多様なレンダリング方法の選択肢を提供することで、将来の要件変化に柔軟に対応できる基盤をフロントエンドに構築する。

次に、システムの裏側でデータ処理やビジネスロジックを実行するバックエンドの開発には、Honoという軽量なフレームワークが採用された。Honoは非常に少ないリソースで高速に動作することが特徴であり、TypeScriptをネイティブでサポートしているため、開発者は型安全なコードを効率良く書けるというメリットがある。リアルオプション戦略の観点からHonoが重要であるのは、将来的に「Edge Runtime」と呼ばれる、ユーザーに物理的に近い場所で処理を行う高速な実行環境への移行が容易である点だ。例えば、世界中に分散配置されたサーバー上でプログラムを実行する「Cloudflare Workers」のようなサービスはEdge Runtimeの一種だが、Honoはこのような環境での動作に最適化されている。新規事業ではユーザー数が予測しにくいため、初期から大規模なサーバーを用意するのではなく、Honoで軽量に開発を進め、将来的にユーザー数が増加し、より高いパフォーマンスが求められた際に、エッジコンピューティング環境へスムーズに移行できる選択肢を確保しているのだ。もちろん、必要であれば一般的なNode.jsのバックエンドフレームワークへも比較的容易に切り替えられる柔軟性も持ち合わせている。

さらに、フロントエンドやバックエンドといった複数の独立したプロジェクト、さらにはそれらが共通で利用する部品(共通ライブラリ)などを効率的に管理するために、「モノレポ」というプロジェクト構成が採用された。モノレポとは、これらすべてのプロジェクトを一つの大きなリポジトリ(コードを保管する場所)で管理する手法を指す。具体的には、Turborepoやpnpmといったツールが活用されている。このモノレポ構成の大きなメリットは、プロジェクト間で共通のコードやロジックを簡単に共有し、再利用できる点にある。これにより、同じようなコードを何度も書く手間を省き、開発の効率を高めることができる。また、異なるプロジェクト間での変更管理も一元化されるため、システム全体の一貫性を保ちやすくなり、CI/CD(継続的インテグレーション・継続的デリバリー)と呼ばれる開発プロセスの自動化も効率的に行える。新規事業では、将来的にサービスの機能や種類が増える可能性が高いため、モノレポを採用することで、複数のサービスをシームレスに開発・管理できる拡張性をあらかじめ確保し、将来の多様なニーズに対応できる盤石な開発基盤を築いている。

このように、Next.jsをフロントエンドに、Honoをバックエンドに、そしてモノレポ構成を採用することで、ASSIGN社のシステム開発は「リアルオプション戦略」を実践している。初期段階では、それぞれの技術が持つ開発速度や効率性を最大限に活用し、不確実性の高い新規事業においても素早くシステムを立ち上げることを可能にする。同時に、各技術が持つ柔軟性や拡張性により、将来的に事業の方向性やシステム要件が変化した場合でも、技術スタックやシステム構成を大幅に作り直すことなく、迅速かつ効率的に対応できる複数の選択肢を保持しているのだ。これは、先行きが不透明な新規事業において、開発リスクを最小限に抑えつつ、最大限の成果を目指すための非常に賢明なシステム設計アプローチであると言える。

関連コンテンツ

関連IT用語