̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ IT ニュース&コラム 2016/ 9/12 通巻721号 技術版 ソフトウェアデザイン館 Sage Plaisir 21  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄     数字があれば詳細に分析できているとは限らない  見積りはその根拠となる定性的な事実より定量的な客観的事実のほうが 正確になると考える人が多いと言われていますが、定性的か定量的かに関わらず、 より細かく分析したほうが根拠が多く正確になる可能性が高いと考えるべきでしょう。 また、誤った定量評価を使ってしまうと定性評価不足のときよりも大きく外れた 見積りになってしまいます。 例を示して説明したいと思います。  分かりやすくするために、「予算1万円でなるべく良い商品を買う」という ケースで考えてみましょう。 単に目的の商品を買うのであれば、単に 1万円以下の 商品を選べばいいだけですが、なるべく良いものを買いたいですよね。 商品を買った 後、たまたま見たネットの広告で、そっちのほうが安くなっていて、そっちが買えた のかよーと、くやしい思いをしたなんてことはよくあります。  そこで、めんどくさいけど、いろいろな店の値段を見てから(見積りを取って から)買うようにすれば、予算内でよりよい商品がゲットできるようになります。 発注の基本ですね。  しかし、多くの見積り法では、この行為をタブーとしています。 開発期間( =値段)を見積もるのに参考にする開発期間を根拠にできないのです。 それは、 KKD法(前号を参照)なので良くないというのです。  では、どうするかというと、たとえば、LOC(Lines of Code、ソース コードの 行数)やファンクションポイントという開発期間とは別の根拠とする数字から 開発期間を見積もります。 ありえません。 買い物でいえば、他の価格を判断材料に 使えないなら、食品に書いてある原材料の相場とグラム数から原価を計算しよう、 という回りくどい方法と同じ発想です。 数字を計算したことを見せられると、 正確である気がしますが、大量購入すれば単価は安くなりますし、原材料の割合 なんて企業秘密です。 高級な食材を使っていたら量のわずかな違いによって 見積りを大きく外してしまいます。 販売価格より高くなってしまうという 明らかに間違いになることもあります。 こんな状況では正しく計算できるわけが ありません。  フェントン(N. Fenton)のソフトウェアの世界における測定に関する言葉を以下に 引用します。   測定とは、明確に定義された基準に従うことなどによって、数や記号を現実の   測定対象についての属性として割り当てる手順のことである。物理学や医学、   経済学、最近では社会科学においても、従来測定できないと考えられてきた   属性が測定できるようになってきた。当然これらは、多くの物理学的な測定   ほどには洗練されていない。それでも測定は実際に行われており、測定した   結果にもとづいて重要な決定が行われている。対象の理解を深めるために   『測定できないものを測定できるように』しなくてはいけないという考えは、   ソフトウェアエンジニアリングにおいても他の分野のように強くなってきて   いると感じられる。  物質の化学構造の解析においては定性分析があります。 元素の特定をするときは、 陽子と中性子の数を数えるわけではありません。 高校生レベルでは資料を過熱して 炎色反応の様子を観察することで特定します。 実際は、蛍光X線分析などを行い ます。 色の濃さなどを数値化することで元素の特定をするので、程度(の数字)を 根拠としているのですが、その数字から導かれる結論に間違いはなく洗練されています。  客観的なデータから正しい結論が得られるなら、主観的要素は不要ですし、 誤りの原因を取り除くために主観的要素は排除すべきですが、客観的なデータから 正しい結論が得られないのであれば、主観的要素が正しい結論が得られる要因に なる可能性があるので、主観的要素を排除できません。  見積りにおいて数字を扱う(測定する)ときは、どの属性を使うか正しく選択する ことと、その係数が洗練されていることを確認する必要があります。 つまり、 定量評価だけでなく定性評価もしなければなりません。 定性評価をせず、単に数字を 扱えばいいのであれば、工程数でもよくなってしまいます。 要求定義、機能定義、 製作、結合テスト、総合テストなら 5 です。 何かの標準プロセスを適用したら、 どの数字も固定されてしまいます。 ざっくりとした進捗度合であれば、要求定義 だけが済んでいるなら 1/5 = 20% と把握することはできます。 おや、信ぴょう性 がありそうな数字になってしまいましたね。  ソフトウェア開発データ白書の活用(2012)によると、要件定義、基本設計、 詳細設計、製作、結合テスト、総合テスト(ベンダ確認)の工数は、8%、14%、 17%、36%、16%、12% なので、要求定義だけが済んでいるなら進捗度合は 8% となります。 もし、要求定義が 8人月かかった仕様を、自分の会社で制作 のみ行うのなら、36人月と計算できます。 このような重みづけを行ったことで、 より信ぴょう性が上がったように見えます。 これでも、定量評価と見なされる ことはあるので、これ以上分析しても意味がないと思えば、その評価で終わら せてもいいでしょう。  制作とテストは同じ担当者がするべきではないという説がありますが、上記の 5つの工程においては、単体テストは制作に含まれているようです。 なぜなら 制作の次は結合テストですから。 もし、単体テストが済んでいないのに 36人月 を消費していたら、突然遅れが発生したことになり大慌てになります。1つの 工程の定義が違っていたことが原因ですね。 そして、その原因は、作業工程の 定性的な分析不足と考えることができます。  つまり、数字を使っているから正確だろうと判断するのは間違いで、数字が 使えない状況なら、数字を使わない定性的な方法であっても、より細かく分析 していくことが重要なのです。 数字を使わないことを定性評価、数字を使うことを 定量評価というざっくりとした定義の場合、定性評価より定量評価のほうが より詳細である場合と、定量評価より定性評価のほうがより詳細である場合の 両方があるのです。 分析するときに数字を使うほうが正確になるか(正しい結論が 得られる係数があるかどうか)、使わないほうが正確になるか、の判断が必要なの です。 その知識がないと、1つぐらいは定量評価があるだろうから、とにかく 定量評価しろとしか言えません。 印象が大事なら適当な数字を並べておきましょう。  なお、分解した構成要素や数字はすべてを網羅していない(漏れがある)ことが 多いため、数字を使っていても使っていなくてもマージンは必要になります。 参考: http://news.mynavi.jp/column/system/002/ http://bizzine.jp/article/detail/621 http://hogese.cocolog-nifty.com/hogehogese/2005/12/loclines_of_cod_e14a.html https://ja.wikipedia.org/wiki/%E5%AE%9A%E6%80%A7%E5%88%86%E6%9E%90 https://www.ipa.go.jp/files/000004088.pdf http://www.ginkouin.com/rensai/shinsa/2.html 注目ニュース 一覧 ◇ PS4 Proと薄型PS4、初代PS4詳細スペック比較。どれを選ぶべき?薄型と初代にも意外な差。 http://japanese.engadget.com/2016/09/07/ps4-pro-ps4-ps4/ … Pro は大きく重たく高くなったが、スリム版と並列することで松竹梅的な売り方へ。 ◇ コレ1枚で分かる 人工知能研究の2つのアプローチ。 http://www.itmedia.co.jp/enterprise/articles/1609/05/news043_2.html … 論理思考からパターン認識へ。 プログラミングでは、仕様ベースからTDDへ、に対応。 ◇ 3DCG女子高生Saya2016がヤバい出来に。完全に不気味の谷を超えた。 http://japanese.engadget.com/2016/09/09/3dcg-saya2016/ … 綺麗すぎないのといい顔をしていないのが逆にリアル。 ◇ シン・ゴジラ 最大の課題は、総監督 庵野秀明のこだわり。制作裏話を聞いた。 http://japan.cnet.com/interview/35088333/ … 天才 庵野秀明のアイデアを引き出す体制づくり。 ◇ Windows 10 Anniversary Updateで搭載した Bash を使ってみた! 〜UbuntuがWindows 10で動く! http://pc.watch.impress.co.jp/docs/column/nishikawa/1017333.html … ssh や Apatche も動く。 ◇ Google Cast が Chrome ブラウザに統合。拡張機能から格上げ。 http://japan.cnet.com/news/service/35088267/ … ブラウザーの画面を大画面へ。オフラインで拡張機能をインストールできないときでも。 ◇ USB Type-C ←→ HDMI ケーブル、2017年初頭にも登場へ。 http://www.itmedia.co.jp/news/articles/1609/05/news062.html … 本体に HDMI コネクターも不要に。 ◇ OpenOffice(Apache OpenOffice)が開発者不足のためプロジェクト終了へ。 http://gigazine.net/news/20160905-openoffice-shut-down/ … 買収しても開発者はフリーソフトの LibreOffice へ流れた。 ◇ Linuxサーバを狙う新手のランサムウェア、Webフォルダを人質に身代金要求。 http://www.itmedia.co.jp/enterprise/articles/1608/31/news054.html … Linux サーバーに置いてあったファイルを消して身代金を要求するファイルができる。 ソフトウェアデザイン館 Sage Plaisir 21 ホームページ >>> http://www.sage-p.com/ メルマガ >>> http://www.mag2.com/m/0000083983.html ブログ >>> http://blog.livedoor.jp/sage_p/ ツイッター >>> http://twitter.com/Ts_Neko ダウンロード >>> http://www.sage-p.com/freesoft.htm サポート掲示板 >>> http://www.sage-p.com/kg_ban09/z6037C8.cgi 東日本大震災 >>> http://www.sage-p.com/saigai.html メール >>> ts-neko◇sage-p.com ←◇を@に変えてください 緊急メールは件名に「うどんメール」を付けてください。 このメルマガの登録・解除 - http://www.mag2.com/m/0000083983.htm