<< 前 ホーム 次 >>

bakaid: 200707301

(追記:?bakaid=20080413)

もう一度おさらい。ソフトウェア開発というものを
『活動』という視点から見てみようという話でした:

* ソフトウェア開発

  * 計画を立てる

    * 要件を洗い出す

    * 見積もりを出す

  * プログラミング

    * コーディング

    * テスティング

というふうに、大きく2つ、小さく4つの活動に分けられると。
で、今回は、『計画を立てる』ということについてもう
ちょっと。

こういうことを書いてた時点で気になってたことが1つ
あって。それは最近自分が度々書いていた『どういう
手順で作るか』ということが見えてないことです。

計画を立てるっていうのは、要件を洗い出しました、
見積もりも出しました、で話は終わりじゃないんですね。
現実には見積もった作業を線状に並べないといけない
わけです。いわゆる『線引き』っていうヤツですね。
この線引きされたものが本当の『計画』になるわけです。
だから、細かくいえば:

  * 計画を立てる

    * 要件を洗い出す

    * 見積もりを出す

    * 線引きする

っていうことになります。まぁ、実際には、見積もりを
出す時点で、作業間の依存関係は見えてたりするもんで、
あんまり時間をかけることはないんですけど。

とはいえ、線引きが重要なのは間違いない話です。XPでは、
『ビジネス価値の高いものから手をつける』っていう
ルールがあるくらいですから。

ただ、話を単純にするために、線引きを見積もりに含め
ちゃおっかなーと。だから:

* ソフトウェア開発

  * 計画を立てる

    * 要件を洗い出す

    * 見積もりを出す

      * 線引きする

  * プログラミング

    * コーディング

    * テスティング

くらいにしておこうかと。あんまり細かくすると、
『だったら設計も別にしろ!』とかいわれちゃいます
からね。(繰り返しますけど、自分は『コーディングと
設計は不可分だ』と主張してるわけです。)

--

たまには図でも載せちゃおっかなー:



図ぅ描くの、ヘタなんすよ。すんません。

4つの活動の基本的なフィードとフィードバックの関係
です。実線の矢印がフィード、点線の矢印がフィード
バックです。

向かい合う活動 (要件とコーディング、見積もりと
テスティング) の間にもフィードとフィードバックは
あるんですけど、とりあえずわかりやすく描いてみました。

フィードと同じように、フィードバックも連鎖を起こす
可能性があります。

  テストが通らない → 実装できない → 見積もれない

というように、テスティングからコーディング、見積もり
算出、さらには要件策定までフィードバックが遡及する
こともあり得ます。

--

要件策定、コーディング、テスティングの3つの関係は、
仕様というもので結ばれています。わざわざ図にする
必要もないんですけど:



要件から仕様が作られて、それがコーディングと
テスティングの入力になるわけです。もちろん、その
入力にもフィードバックはかかります。面倒だから
両方向の矢印で描いちゃいますけど。

要件をテスト可能にしたものが仕様ということもできるん
じゃないでしょうかね。

--

それから、見積もり算出、コーディング、テスティングの
3つの関係は、スケジュールで結ばれています。これも
単純な図なんですけど:



よくあるでしょ? 『テストのスケジュール組んで
なかった!』なんてことが (笑)。

便宜上、『コーディングは終わりか?』って入れました
けど、ほんとは『要件を実現できたか?』で、つまりは
次の要件の実現に取りかかれるということです。

重量級なんかだと、要件の洗い出しもスケジュールに
組み入れる場合もありますけどね。agileだと、全体の
スケジュールから見ればごくわずかな期間なのがフツー
です。だから、まぁ、要件策定が見積もりに影響するか
どうかは、開発スタイルによりますね。

--

一連の自分の書いた記事を読んで、『単純化しすぎてる!』
って思う人もいると思うんですけど。でもね、個々の
活動の詳細なテクニックを云々するよりも、こういう
開発の全体像を把握しておくことのほうが大切だと思うん
ですよ、自分は。

前にも書きましたけど、4つの活動のうち、どれか1つ
でも手ぇ抜いたら、それに引きずられて全体の質が落ち
ちゃうんですよね。それは、1つの活動と他の活動とが
強く結びついてるからなんですね。

だから、平凡な集団でも、基本の活動をしっかりやってれば、
そこでソフトウェア開発っていうビジネスは回ってると。
もちろん、基本しっかりやってても、外部要因でおかしな
ことになるかもしんないけど。でも、そういう外からの
波も、基本ができてればある程度は耐えられると思うん
ですよね。

--

imgってpreの中に置けるの? 置けるっぽいんだけど。

本家Permlink

<< 前 ホーム 次 >>


Copyright © 1905 tko at jitu.org

バカが征く on Rails