masayuki5160's diary

滋賀県大津市に住むソフトウェアエンジニアの日常

"とりあえず"実装してみるってあり?なし? ━ ソフトウェア工学チャンネル

とりあえず実装してみる、いわゆるプロトタイピングのようなプロセスを採用することはありか、についてお話ししました。以前お話しした開発プロセスに関する話題も出しながら説明しています。

なお、本記事はYoutubeチャンネル投稿内容(参考:とりあえず実装してから考えるってあり?なし?)をもとに、Geminiに動画の内容をまとめてもらったことを記載しています。

導入:とりあえず実装は「あり」か「なし」か?

ソフトウェア開発の現場では、「やってみないとわからない」という状況がよくあります [01:18]。特にデザインやUX、あるいはリファクタリングなど、実際に試してみないと感触がつかめないケースは少なくありません [01:54]。しかし、従来の開発プロセスでは、要件定義、設計、実装という順序が重視されてきたため、気軽に「とりあえずやってみる」というアプローチが取りづらい雰囲気があるのが現状です [01:27]。

この疑問に対する動画の結論は、「どちらでもOK」 [00:49]、つまりケースバイケースであるというものです [01:13]。

ソフトウェア開発におけるプロセスの柔軟性

ソフトウェアはハードウェアと異なり、形がないため、開発のどのフェーズにおいても修正や手直しが可能です [03:13]。オンラインでのアップデートも一般的であり、この柔軟性が「とりあえず実装してみる」というアプローチを可能にしています [03:57]。

動画では、様々な開発プロセスモデルが存在することに触れています。

  • ウォーターフォールモデル [05:50]
  • インクリメンタルプロセスモデル [05:54]
  • プロトタイピング [05:55]
  • スパイラルモデル [05:57]
  • スクラム [06:00]

重要なのは、プロダクトやプロジェクトの状況に応じて最適なプロセスを選択することです [06:16]。

問題の背景:「とりあえず実装」が難しい理由

「とりあえず実装」というアプローチが敬遠される背景には、いくつかの要因があります [06:53]。

  • 過去の成功体験への固執: これまでのやり方がうまくいってきたため、それが常に正しいと思い込んでしまうことがあります [07:09]。
  • 柔軟なプロセスの選択肢に関する知識不足: プロダクトやプロジェクトの特性に合わせてプロセスを柔軟に選択する知識や考え方が不足している場合、適切な判断ができないことがあります [08:31]。

「とりあえず実装」を避けた場合のアンチパターン

プロトタイピングなどの「とりあえず実装」を避けることで、以下のような問題が発生する可能性があります [09:02]。

  • 後工程での手戻り: 後工程になって初めて、プロトタイピングが適していたプロジェクトだと判明し、想定以上の難易度やステークホルダーからのフィードバックによって大幅な手戻りが発生することがあります [09:26]。
  • 問題の早期発見機会の損失: 早期に「とりあえずやってみる」ことで防げた問題に、後になって遭遇してしまう可能性があります [10:13]。

改善策と判断のポイント

「とりあえず実装」を適切に取り入れるためには、以下の点を考慮することが重要です [11:13]。

  • 知識の習得: プロダクトやプロジェクトの性質や状況に合わせて最適なプロセスを選択する必要性を理解することです [11:27]。
  • 判断材料:
    • チャレンジングな要素: 技術的な課題や今までと異なるアプローチを試す場合、プロトタイピングが有効なケースが多いです [12:05]。
    • 実装難易度: 実装の難易度が高い場合も、事前に試作することでリスクを低減できます [12:27]。
    • 後工程への良い影響: 試しに作ってみることが、後の工程に良い影響をもたらす可能性があるかどうかも判断材料になります [12:31]。

これらの要素を総合的に判断し、今回のプロジェクトで「とりあえず実装(プロトタイピング)」を行うべきかどうかを検討することが推奨されます [12:40]。

まとめ

「とりあえず実装してから考える」というアプローチは、ケースバイケースで「あり」でも「なし」でもあります [13:16]。重要なのは、プロダクトやプロジェクトの性質、および状況に合わせて、プロトタイピングなどのプロセスを柔軟に選択することです [13:28]。

www.youtube.com

おまけ)おすすめ記事のご紹介

ソフトウェア工学を学ぶ際に参考になる書籍をまとめていますのでご興味ある方ぜひご覧ください。

masaytan.com

ソフトウェアエンジニアも体が資本。若い時と同じくらい、とまではなかなか難しいかもしれませんが、体力があれば考え続けることもできます。

というわけで個人的におすすめしている体調管理術についてご紹介している記事を置いておきます。向き不向きはあると思うのでご注意いただきたいですが、これからも楽しくソフトウェアを作ることをしていきたい方にはお勧めです。ご覧いただければ幸いです。

masaytan.com