おはようございます。渋屋です。
私のIT業界歴は10数年ですが、ずっとITインフラと呼ばれる部分を専門としてきました。
パソコンで言えば、CPUとかハードディスクとか、LAN(ネットワーク)の部分です。
そんなITインフラ屋の私でも、ソフトウェアの開発手法が大きく変わっていることに、興味を抱いています。
単なるソフトウェア開発手法としての可能性を越えて、企業経営の改革や、新しいものづくりなど、より幅広い範囲に適用できるのでは?と思っているからです。
そんなことを考えていたときに、ある方からご紹介頂いたのが、この本でした。
■従来のソフトウェア開発手法は?
これまで長く利用されていて、未だ多くの組織が利用しているソフトウェア開発手法が「ウォーターフォール」です。
名前の通り、前の工程が終わると、次の工程へ引き継がれていきます。
前提条件は、「顧客要件が変わらないこと」です。
最初に顧客要件をドキュメントとして整理します。
この合意が得られたら、次の工程(例:設計)へ進みます。
設計が終わったら、ドキュメントを作成し、合意が得られたら、次の工程(例:開発)へ進みます。
この過程を繰り返して、最終工程まで辿り着くと、顧客要件に沿ったシステムが出来上がる、という流れです。
■ウォーターフォールへの疑問
ただ、このウォーターフォールによる進め方には、様々な疑問が出てきます。
・顧客要件が開発期間(長いと数年)の間に変わらない、という前提条件は破綻していないか?
これだけマーケットの変化が早くなっていると、システムを利用するユーザの要件が変化することの方が一般的だと考えられます。
でき上がったシステムを見て、「自分達が欲しいのは、こんなものではない!」ということが、実際に良く起こっています。
悪いのはユーザでも、システム開発者でもないのですが、「顧客要件は変わらない」という前提条件が、既に崩れているからだと思います。
・ドキュメントによって工程が引き継がれるのは、苦痛ではないか?
私個人で言えば、「この仕事やっておいて」と資料だけ渡されるのは、非常に苦痛です。
その仕事をするための(熱い)想いを共有できなければ、やる気がでません。
そして細かな仕様書のように、文字だらけのドキュメントではなく、会話を通じて、その仕事を理解したいです。
とは言え、例えば法規制に縛りを受けているなどの理由で、要件が明確なシステムも世の中にはあることでしょう。
そのようなシステム開発をするには、従来通り、ウォーターフォールで開発するのが良いでしょう。
ということで、従来型開発手法であるウォーターフォールの問題点を解決すべく、アジャイル開発が生まれてきます。
明日に続けたいと思います。
■終わりに
今日は1日、自宅でテレワークです。
事務作業を一気に片付けます!
試しにトレーニング記録を書いてみます。
【昨日のトレーニング】
・体幹トレーニング・・・スイッチレベル1
・ストレッチ・・・マスト(+アルファ)
・RUN・・・5km/32分
次回、フルマラソン(古河)まで、あと125日。
しばらくは距離・速度は気にせず、むしろ長時間走れる体力づくりをしていきます。
その前提として、体幹とストレッチによるカラダ作りを確実に。
今日も素晴らしい1日になりそうです。感謝!!
===
今日の記事が、ほんの少しでも「面白かった」「役に立った」「参考になった」等と感じましたら、1日1回、このボタンをポチっと応援お願いします。
にほんブログ村