Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ソフトウェア開発プロセスモデル、いろいろ

 ソフトウェア開発プロセスモデル、いろいろ

2025年02月26日に行われた某社の社内勉強会で使用した資料です。クラシックなソフトウェア開発プロセスモデルの背後にある原理原則や哲学から学べるものは多いぞ、ということが言いたかったような記憶があります。

Avatar for うきぐも ひろ

うきぐも ひろ

February 27, 2025
Tweet

More Decks by うきぐも ひろ

Other Decks in Technology

Transcript

  1. ソフトウェア開発プロセスモデルってなに? • 開発規模が⼤きくなると ⼯程を共通で理解して意思疎通を図らなければ破綻するようになる • そのため ソフトウェア開発の⼯程全体(ソフトウェア開発プロセス)のあり⽅を 定義する必要がある ▪ これを「ソフトウェア開発プロセスモデル」と呼ぶ

    ▪ 標準的なモデルをベースに 各プロジェクトに適したソフトウェア開発プロセスモデルを定義するのが理想 • e.g. スクラムをベースにカンバンでタスク管理をしてペアプロで開発をする ▪ 各⼯程にDoneの定義があり‧条件分岐やループ条件があり‧ 更新していくうちに肥⼤化/鈍重化し‧⾼品質に作るのがとても難しい • すなわち ソフトウェア開発プロセスもまたソフトウェアである 3
  2. ソフトウェア開発プロセスモデルの読み解き⽅ • 銀の弾丸は無い ▪ ウォーターフォール vs. アジャイルなんて⽚腹痛いですわ〜 • 各⼯程のお名前は気にしすぎない ▪

    e.g. 要件定義 vs. 要求分析 • 要するに「何を作るか決める」でええねん • 重要なのは背後にある原理原則や哲学 ▪ ⼿法をそのままマネると形骸化して失敗する ▪ 原理原則や哲学は幅広く応⽤が効く 4
  3. いろいろ⾒てみよう • ウォーターフォールモデル • V字モデル • クレープモデル • V&V(?)モデル •

    W字モデル • インクリメンタル‧イテレーティブ‧アジャイルは 今⽇は取り上げません!!!!! ググって!!! 5
  4. まとめ: ソフトウェア⼯学はいいぞ • ソフトウェア開発プロセスモデルからは ソフトウェア⼯学が発展‧深化させてきた原理原則や哲学が学べる ▪ ⼤きな作業は適度に分割しよう ▪ 抽象と具体を段階的にいったりきたりしよう ▪

    フィードバックループを確⽴しよう ▪ 早期にテスト(レビュー含む)をやるといいことが起こる ▪ (早期どころか) テストを先に作るともっといいことが起こる • ソフトウェア⼯学からはプロセス全体だけでなく 各⼯程ごとの原理原則や哲学も学べる 11
  5. 宣伝 • ソフトウェア⼯学系の輪読会イベントを最近やってみてます ▪ SERCuS(サーカス; Software Engineering Reading Club by

    Sansan) ▪ 現状2種類の本が並⾏して進⾏中 • 実践ソフトウェアエンジニアリング: 毎週⽉曜19:00〜 予習不要 • カオスエンジニアリング: 毎週⽇曜16:30〜 要予習 ▪ ⽿だけ参加も歓迎! 扱う書籍のご提案も⼤歓迎!! • https://sercus.connpass.com/ • https://discord.gg/kPeP8bQrde 12