AI時代におけるプロトタイピングの進化と影響について「研究発表会vol.13〜nozomu編〜」

Date
February 15, 2025
image

はじめに

みなさまこんにちは。お久しぶりです、しくみ製作所のNozomuです。

今回のテーマは、成長著しい生成AI界隈の中でも、ソフトウェア開発現場、特にプロトタイピングの分野が大きく変化している点についてです。最近、個人的に研究しているテーマについて書こうと思います。

この分野を専門的に理解している方と比べると、内容は浅めになるかもしれませんが、「ビジネス企画兼エンジニア」という立場からの意見や活用方法をお伝えします。興味はあるけれど、まだ触れたことがないという方にとって、参考になれば嬉しいです。

一方で、「すでにエンジニアとしてCursorやClineをバリバリ活用している!」という方には、やや物足りない内容かもしれません。その点はご了承ください。

なお、プロトタイピングの説明は不要で本題を読みたい方は、こちらからどうぞ!

アイデアを即具現化・自動化がもたらす新時代

ソフトウェア開発会社においてプロトタイピングはさまざまな範囲を指します。会社ごとに定義が違うんじゃないかと思うぐらいなんですが、Geminiに聞いたところ下記のようなものを指すと教えてくれました。

プロトタイピングとは、試作品や原型を意味する「プロトタイプ」を作成する手法です。特に、ソフトウェア開発や製品開発の初期段階において、アイデアを具現化し、実際の動作や使用感を早期に確認するために行われます。

【プロトタイピングの目的】
・アイデアの具体化: 抽象的なアイデアを具体的な形にすることで、関係者間の共通認識を深め、議論を促進します。
・ユーザビリティの確認: 実際のユーザーに試用してもらうことで、操作性や使い勝手に関するフィードバックを得て、改善点を見つけ出すことができます。
・開発リスクの軽減: 早期に問題点を発見し、修正することで、手戻りを減らし、開発コストを抑制することができます。
・関係者間の合意形成: プロトタイプを共有することで、顧客や開発チームなど、関係者間のイメージのずれを解消し、スムーズなコミュニケーションを図ることができます。

【プロトタイピングの種類】
・ローファイプロトタイプ: 紙や簡単なツールで作成された、簡易的な試作品です。アイデアの概略を把握するのに適しています。
・ミドルファイプロトタイプ: 実際の操作に近い形で作成された試作品です。ユーザビリティの確認に適しています。
・ハイファイプロトタイプ: 実際の製品に近い形で作成された試作品です。最終的な評価やテストに用いられます。

【プロトタイピングの進め方】
・目的の明確化: プロトタイピングで何を検証したいのかを明確にします。
・プロトタイプの作成: 目的に合った種類のプロトタイプを作成します。
・評価: ユーザーや関係者に試用してもらい、フィードバックを収集します。
・改善: フィードバックに基づいて、プロトタイプを改善します。
・反復: 評価と改善を繰り返すことで、より完成度の高い製品を目指します。

【プロトタイピングの注意点】
・過度な作り込みをしない: プロトタイプはあくまで試作品であり、完成品ではありません。過度に作り込むと、時間やコストがかかりすぎてしまう可能性があります。
・ユーザーのフィードバックを重視する: プロトタイピングは、ユーザーの意見を聞き、それを製品に反映することが重要です。
・反復的なプロセスである: プロトタイピングは一度で終わるものではありません。評価と改善を繰り返すことで、より良い製品を作り出すことができます。
・プロトタイピングは、製品開発において非常に重要なプロセスです。アイデアを形にし、ユーザーのフィードバックを得ながら改善を重ねることで、より使いやすく、価値の高い製品を生み出すことができます。

なるほど、やはりソフトウェア開発においては、アイディアを具現化して試してみたい、ということですね。

弊社はアジャイル開発を推進し、UXを重視しているため、プロトタイプへの意識が高い傾向にあります。これまでのプロトタイピング手法は一般的で、主に以下の2つです。

  • デザインツールで画面遷移が分かるプロトタイプを作成
  • 動作をイメージできるモックをスクラッチで開発

これらに時間をかけ、意図のズレを防ぎ、より良いUXを構築することを目的としています。

もしプロトタイプがアイデアから自動で作れたら理想的ですよね。企画職は多忙で、ものづくりに割く時間を減らしたいもの。私自身もコーディングの時間を抑え、調査やマネジメントに集中しています。

そして今、その「夢のような話」が生成AIの登場によって現実になりつつあるのです。

ツールの進化とAIの台頭

これまでのプロトタイピングツールは、主にデザインに特化していました。Adobeから始まり、SketchやInVision、現在はFigmaが主流ですね。一時期Prottも試しましたが、競争の激しい市場で生き残るのは難しいようです。

デザインツールが中心だったのは、動くものを作るには専門的な知識が必要だったからです。ノーコードツールが登場しても、動きやデータ連携にはエンジニアの介在が不可欠でした。弊社でもStudioを活用していますが、プロトタイプではなくサービスとしてのHP制作に使っています。

しかし、生成AIの登場により、この状況が一変しました。

生成AIによるエンジニアレス開発

本題です。おそらくここまで読んでくれている方はエンジニアというより企画・営業職やUXデザイナーなどの非エンジニアの方が多いかと思います。そんなみなさんがエンジニアリングをほぼ勉強せずにプロトタイピングを行える時代がついに到来しました。

image

Chat GPTの衝撃から1〜2年が経過し、本格的に生成AIが社会実装されつつあります。その一例が、プロンプトのみで自律型エージェントにソフトウェア開発をさせる各種サービスです。

Chat GPT登場の初期こそ、プロンプトエンジニアリング、のようにプロンプトをチューニングすることでうまく活用しよう、みたいな専門的な話があったと思いますが、AI側の進歩により一瞬でそんな専門性はそれほど重要ではなくなりました。これについては自分もそうなると予測しており、あまり真面目に勉強していませんでした。正直、人間がプロンプトを学ぶ速度よりも、生成AIが進歩する速度の方が圧倒的に優位だと感じていたからです。実際、去年とは比較にならないほど状況は変化しています。

ここではサービスの一例としてReplitを取り上げようと思います。(後でBolt.newやClineについても少しだけ触れますが、ここではより非エンジニア向けのReplitを紹介します。)

非エンジニアでも使える柔軟な Replit

ブラウザ上で動作する統合開発環境(IDE)です。小難しい表現を使っていますが、要はブラウザ上でコーディングなどのアプリ開発がすべてできる、ということです。その特徴は、

  • 多言語対応:Python、JavaScript、C++、Javaなど、50以上のプログラミング言語に対応
  • リアルタイム共同編集:複数のユーザーが同時に同じプロジェクトで作業可能
  • AIによるコーディング支援:AIがコードの提案やエラーの検出を支援
  • 自動デプロイ:作成したアプリケーションを簡単に公開
  • 豊富なテンプレート:様々なプロジェクトのテンプレートが用意

といった感じで、ブラウザ上で完結するのは確かに偉いんですが、これだけだと他にいくらでもサービスやツールの選択肢があります。特に最近はCursorなどのAIベースのIDEが大幅に進化しているので、あえてReplitを選ぶ必要は全く感じません。

ではなぜReplitなのか?それはReplit Agentが使えるからです。

自然言語で開発可能な Replit Agent

自然言語プロンプトからアプリケーションを自動生成できるサービスです。「自然言語プロンプト」という表現は少し分かりにくいですが、要するに普段話したり書いたりしている言葉で指示が出せるということです。百聞は一見にしかず。実際に、簡単な指示でどのように作成されるのか、一例をご紹介します。

これが・・・

image

↓↓↓

こうなる!

image

ほんの少し前なら信じられない光景です。自分が指示(というかお願い)したのはただ献立を考えるためのアプリケーションが欲しい、と伝えただけです。これを一般的なWEBエンジニアに作ってもらおうと思ったら、「どういう仕様で・・・、どういうデザインで・・・、予算はいくらで・・・、何日かかって・・・、」といったやり取りをN回(飽きるほどやります)行い、その上で大きな資金が必要でした。それが、2行の文章を書いて数分待っていれば、簡易的でも動くものができてしまう。

恐ろしい時代になりました。

もちろん、これだけ曖昧な情報しか与えないと、意図から逸れたものが出来やすいので、ある程度仕様は作ってあげた方が良いです。自分は仕様作りのためにGeminiを併用しています。

こんな感じでGeminiに仕様を作ってもらう

image

Geminiを使って仕様を整理し、それをReplit Agentに渡すことで、ある程度精度の高い開発が可能になります。

ただし、一度のやり取りで開発が完了するわけではなく、エラーや機能の抜け漏れが発生するため、プロンプトでの修正が必要です。基本的に自然言語で指示できますが、現時点では専門知識がないと簡易的なものしか作れません。

特にエラー処理やデータの扱いはエージェントだけでは解決が難しく、場合によってはソースコードを直接修正した方が早いです。そのため、現状ではエンジニアの方が効率よく活用できますが、エージェントの進化により、この状況も大きく変わる可能性があります。それでも、簡単なプロトタイプなら即座に作成できるのが大きな強みです。

---

v0、Bolt.new、Clineなども似たサービスとして挙げられますが、Replitはデータベースの取り扱いが簡単で、初学者や非エンジニアに優しいと感じます。データ部分は初心者には難しい領域ですが、Replitなら取り扱いやすいです。また、費用も非常に安価で、教育機関での利用事例も多いので、その用途には非常に適しています。

Replitに向いているユーザー層としては、以下のような方々です

  • 企画職など、簡単な物作りをしたい非エンジニア
  • プロダクト開発に関わりたいと考えている方
  • エンジニアリングの基本的なフローを体験したい方

他のサービスとその対象ユーザーについても軽くまとめておきますが、これは筆者の個人的な見解ですので、参考程度にご覧ください。

サービス名
対象ユーザー
専門知識
Replit
非エンジニア職(特に企画系は相性◎)・エンジニア初学者
v0
企画職・デザイナー
Bolt.new
Replitと同じ(v0などのデザインよりでデータベース接続が外部サービスのため少し難し目)
Cline
エンジニア(各種AIのエンジンを自分で指定可能でエージェントの種類もオープンソースで選べる)
ある程度必要
Cursor
エンジニア(ここに含めるのはあまり正しくないかもしれないがアシスタントとして使えるので)
必須

ちょっとしたTipsですが、画面デザインを作成し、プロンプトに貼り付けると、エージェントがそれに沿って開発してくれます。例えば、v0やBolt.newなどでデザインだけ作成し、それを渡すことで、デザイン工程も自動化可能です。各サービスの得意領域は異なるため、組み合わせて使うのが理想ですが、コスト面は要検討ですね。(とはいえ、人に依頼するより格段に安いです)

この考え方は、AIエンジンの活用にも応用できます。ChatGPT、Gemini、Claude、DeepSeekなどはそれぞれ得意分野が異なり、同じプロンプトでも回答が変わります。その特性を活かし、複数のエンジンに同じ質問を投げて交差検定すると、より精度の高い回答が得られるでしょう。

さいごに

生成AIの登場によりプロトタイピングがどう変わってきているかについて記載しました。個人的にReplit Agentを使って約10個プロトタイプを作ってみましたが、1時間以内で終わるものから、少し気合を入れて2週間ほどかけたものまであります。といっても、基本的にプロンプトで指示を出しているだけなので自分の時間はほとんど使ってないんですよね。指示を与えて、待っている時間は別のことをしているのでものすごい作業効率が上がった気がします。

今後我々を取り巻く状況がどうなっていくか、ということについてですが、プロトタイピングに限らず生成AIをベースに開発する機会は間違いなく増えるでしょう。指示を与えにくい、難解な仕様以外はほとんど生成AI側で実装したほうが早い、みたいな世界観になる日もすぐそこまで来ているのではないかと考えています。もちろん、高度なことはエンジニアが介在したほうがスムーズに進められるでしょうが、ただ仕様に従って作るだけ、みたいな働き方をしているとこの先、生き残るのは難しくなるかもしれません。

弊社では生成AIを活用したプロダクト開発にも取り組んでいます。もし興味がありましたらHPのフォームから気軽にご相談ください。

🖋
新着記事