自分の頭の中を整理したいので書きます。が、時折愚痴が入ります。(^^;)
つまんないので読まないほうがよいかも。
ソフトウェア開発の基本的な流れ
分析・設計・実装・テスト
分析によって、何を(What)する必要があるのかを洗い出し、
それを元に、どのように(How)構築するを考え、設計する。
そして、その設計を元に、実装を行う。
不具合がなく、仕様どおりに出来ているを確認するために、テストを行う。
これを順に行うのがウォーターフォール。
繰り返し行うのがスパイラル開発やRUP。アジャイル開発も同じ。
うーん、ほんとに基本中の基本だ。
ただ、これを忘れている人・これすら知らない人が多すぎ。
すっごく単純な分析と、ただただ実装のみに注力している人がいる。
分析がないと、何を作ればよいのか分からない、つまり、正しい設計が出来ない。
設計がないと、グズグズなソフトで、メンテナンス性も悪く、理解しにくいプログラムができる。そして、何が正しいのか分からないのでテストもすることが出来ない。あるいは何をテストすればよいのか分からない。
なのに、早く作らなきゃいけないと、実装を優先してやる。
すると、結局バグだらけで手戻りが発生して余計な時間が掛かる。
でも、目先のことにとらわれて、分析・設計をしない。テストは後回しにされる。
で、それを当たり前だと思っている人もいる。
そうじゃないのに。
・・・結局愚痴が言いたかっただけなのかも(笑)