読者です 読者をやめる 読者になる 読者になる

Fe and Ni

戯言だよ

「要求を仕様化する技術 表現する技術」読書メモ - 第1部第1章 要求仕様にまつわる問題

ソフトウェア品質保証

「改訂第2版 [入門+実践] 要求を仕様化する技術 表現する技術」(清水吉男著/技術評論社

を読み始めました。読み切れるか大いに不安ですが、序盤からぐさぐさ刺さってきて周りの人に本当読ませたい。

ほんとこれな

残念なプロジェクト

今回のプロジェクトは納期も大きく遅れた上に、テストしてみると要求した機能も十分に達成していない、という状態はしばしば発生しています。特に、異常操作の対応や全体の操作性や応答性などの品質が悪く、とても完成したものとは認められないケースもあります。

いったん製品が市場に出ると、それが競争相手からターゲットにされるので、その状態で次々と新しい機能を組み込んだり短期間で機能を改良したりすることが求められます。それができなければ市場から退場させられるのです。
双方の機能が拮抗している状態では、的確なデリバリを実現できるだけで市場を獲得できることがあるのです。
それを支えるのは保守性などの品質要求を実現するための設計技術なのです。

設計や実装の工程で明らかになった「仕様」は要求仕様書に書き戻されることはない

仕様が曖昧な状態をカバーしてくれるような設計技術はありません。あるとすれば、設計中にそこで扱っている機能の仕様の曖昧さに"気づかせてくれる"程度です。そのときに気づいたことを仕様書に書き戻さなければ、他の仕様との衝突や不均衡には気づかないのです。

顧客にまともな要求仕様書を書く能力がない => 設計者が要求の仕様化技術を習得する必要がある

依頼者にはまともな要求仕様書をかけないと認識していながら、自分たち(設計者側)はそれをカバーする手段を持とうとせず、仕様変更で混乱する責任を依頼者のせいにしているように見えます。
(略)
確かに、設計者達は、効果的な要求仕様書の書き方を身につけていることはほとんどありません。少なくとも、そのような訓練を受けていないと思われます。
(略)
したがって、まずは設計者に要求の仕様化技術を習得してもらう必要があります。実際にそれを解釈しソースコードに変換するのは、ソフトウェアエンジニア(設計者)の方ですから。

品質要求を仕様化できない

機能要求に限らず品質要求も、仕様化されない要求は実現しないのです。

もともと、機能要求でもうまく仕様化できないために、多くのトラブルが発生しているのです。それは、要求を仕様化する技術が不足していることを意味しています。ましてや、品質要求なんて仕様化したことがないのです。

メモ

バグの過半数が要求仕様に関連するもの

  • 仕様の記述モレ
  • 読み手による仕様の誤解釈
  • その仕様が自分に関係すると気付いていない
  • テストの段階で検出される仕様間の衝突
  • ((要求仕様の問題によって発生する)設計の遅れによって生じる)テスト不足
  • (要求仕様が提示されない・または提示の遅れによる)テストの遅延・不足

memo: 自案件でも本当にそうか?は要分析。個人的印象では上記に該当するものは確かに多い。

バグの原因プロセスを分析する際、「設計プロセス」とする組織は多いが、設計エラーではなく仕様エラーとした方が解決しやすい場合がある

届けられたデータをチェックしないでそのまま使ったところ、たまたま不正データが入ったままのデータに遭遇したことでプログラムが暴走した
(略)
受け取ったデータをそのまま仕様してはならないことを知らされていない状況では、設計エラーではなく、仕様エラーと分類

  • 設計エラーとすると「設計者が気付く」か定期的に注意アナウンスするしかない(具体的な解決策がない)
  • 仕様エラーの場合、気付くような書き方をする、という改善ができる
  • 派生開発での変更モレはほとんどが設計エラーに分類されるが、これは「実装仕様の変更を変更仕様として書き出す」という考え方がないため

memo:
とはいえ、自然言語で書かれた要求仕様書に完璧はない。精々仕様モレなどの発生確率を許容範囲のレベルに下げるだけ、とのことですが。

顧客からの仕様変更 => 実は設計者が問い合わせたタイミングで発生することが多い

設計者がコーディングを進めていく中で仕様の曖昧な箇所に遭遇し、そこで依頼者に質問のメールや確認のメールを発したことが仕様変更のきっかけになっているのです。

  • 依頼者は仕様と呼べるものを書けないことが多い
  • 設計者も早い時期に仕様の不足をカバーできていない
  • 仕様変更の多くは、設計者の問い合わせをきっかけに起きている
  • しかも設計段階から実装段階にかけて多発しているために作業が混乱している

仕様戦争

  • 終盤に発見された仕様の衝突は「(要求仕様の不備(=依頼者の責任)によって生じた)制限」として依頼者に提案される
  • 依頼者は提案を受け入れる代わりに他の「追加仕様」をねじ込む
  • 設計者側は提案タイミングが遅すぎることの気まずさから負荷の大きい追加仕様を受け入れざるをえない
  • 「初期の段階で仕様不備に気づき、補足すること」はできない(設計者が要求仕様化スキルを持たないため)

要求を満たさない

今回のプロジェクトは納期も大きく遅れた上に、テストしてみると要求した機能も十分に達成していない、という状態はしばしば発生しています。特に、異常操作の対応や全体の操作性や応答性などの品質が悪く、とても完成したものとは認められないケースもあります。

この本でその最大理由として挙げられているのが、

  • 「要求仕様書」が「仕様」といえるレベルに達していない
  • 完成品として含まれるべき「品質要求」も記述されていない
  • 関係者が、その不十分さに気づくためのスキルを持ち合わせていない

試作の弊害

  • 「実現可能か分からない要求仕様」は細かい仕様に展開されず、試作で確認されることが多い
  • しかし、安易な試作は仕様化・矛盾の検証などの不足につながる危険性がある
  • 仮の要求仕様であっても、「それを実現する場合に必要な仕様」を決めることで「仕様衝突の検出」などできる
  • 仕様には設計方法を誘導する力がある

派生開発のリスク

  • 特に派生開発において、ソフトウェアの全体を理解して開発することは実質的に不可能
  • 部分理解で対応せざるをえないにも関わらず、対応ミス・モレによる既存機能への悪影響は許されない
  • また、他人のソースコードから元の要求・設計思想を理解するには新規開発より高い技術が求められる
  • 一つの変更要求が複数の開発者に影響する場合、「関係することに気づかない(or伝えられない)」「(要求が曖昧な場合)人によって要求の解釈が違う」などが生じる可能性がある

memo:
1.8.3あたりの監視カメラの例は、この本ベースの勉強会するなら例題としてよさげ。
例えば

  • 参加したばかりの派生開発プロジェクトでこの要求の対応見積もりを依頼された。どのようなことを考えるか?
  • (隠れていた要求仕様を明らかにした後で)同様の事例を経験したことはあるか?
  • このようなリスクがあることを踏まえて、見積もりをどのように扱うのがよいか?(対顧客・チーム内それぞれ)

とか。

設計フェーズの成果物が設計書ではなく要求仕様書になってしまう

  • 本来の設計は(要求仕様をもとに)「データ構造・処理構造・制御構造」の3つの視点から(要求仕様の)実現方法を考えること
  • 設計には「アーキテクチャ設計・タスク設計・関数設計」などの段階があり、それぞれで上記各視点を用いる
  • 設計書とは設計の各段階で考えたこと、決めたこと(=仕様)が書かれたもの
  • 各段階の仕様は「元となる要求仕様と対応する」が「元の仕様を補足するものではない」
  • 設計の元になる要求仕様書が不完全な場合、設計の中で仕様が補われ、「設計書」としてまとめられる

memo:
設計には段階がある、というのはいわゆる外部設計・内部設計や詳細設計、などと読み替えてもよいのかも。
大事なのは 「設計書に書くべきなのは"元となる要求仕様の補足"ではなく"要求仕様に対応する(より低レイヤの)仕様"であり、そうなっていないなら元の要求仕様書に問題がある」 ということか
本には直接的に書かれていないけど、これによる問題は以下?

  • 設計書内の要求仕様が要求仕様書にフィードバックされないので要求仕様として管理されない・仕様の衝突や誤解釈に気づかない・仕様が関係者に伝わらない
  • 本来やるべき設計の時間が圧迫され、設計不備のリスクが増加

OVA クビキリサイクル 5 ネタバレ感想

アニメ

今回はあんまり省略がないかな。
佐々さん好きです。

  • キメ顔のてる子さんかわいい…。
  • 玖渚に抱きつかれたまま真顔のいーちゃん流石
  • 赤音さんの手に出ていたのは死斑…?
  • ディンプルキーなのか
  • ちゃんと赤音さん好みの和食(魚)を用意してあげる佐代野さん
  • あれ、なんか佐代野さんが可愛いぞ…?
  • 朝ごはん、結局イリアさんと怜さんくらいしか食べてないのでは?
  • なんでイリアさんミニスカなんだろう
  • 煽られるいーちゃんVSイリアさん感
  • 水冷なんだか水をかけたんだか?
  • 玖渚たんの黒タイツ!玖渚たんの黒タイツ!
  • 無駄に青春風なの何故なんだ
  • やっぱり窓が高すぎると思いますが
  • 上下移動って、階段だけで坂道はいいのかなぁ
  • 佐々さんのおかげか、副音声が比較的真面目だ?
  • 次回予告、なかなかよい

OVA クビキリサイクル 4 ネタバレ感想

アニメ

この巻の作画、なんか前までの巻と違う気がする…。

  • 2.3GBのMOですよ皆さん!
  • "ちぃくん"もそのイントネーションなんだ…
  • 映像化されてよかったランキング上位確定、イリア嬢の生着替えは流石のクオリティですが努めて平静を装ういーちゃん
  • それがどうかしましたか?(パンツ一枚で)
  • イリアさんそのパンツの履き方は挑発的ですよ!
  • つ・い・に・玲さんのセリフが来ましたよ!桑島さーん!
  • 螺旋階段室壁際の彫像適当すぎるよっ
  • 真姫さん見るなりレイプ目のいーちゃん激カワ
  • しかしこの時の二人はどんな話をしていたんでしょうねぇ…
  • 省力で作ったとは思えない中華…美味しそう…(佐代野さん今回セリフないですが)
  • JISでもUSでもないキーボードにもっと触れてあげないといーちゃんが機械音痴みたいになっちゃうでしょ!
  • 「風呂に入ってます」と言えばいいところ詳細を説明するあたりがなんていうか
  • 倉庫前だったのかここ…。
  • the post hoc fallacy
  • さらっと真理先生暗唱するの普通じゃない
  • 原作では気づかなかったけどこのシチュエーションで精神分析されるの辛いよね
  • 基本的に?ER3のハラキリマゾが?
  • 赤音さん着替えたの?
  • 玖渚の髪色はかなり薄い…もっと青くていいんだよ!
  • ひかりさんの前でつい格好つけちゃういーちゃん…!
  • サドい玖渚たん
  • spotted having lunch?
  • 拒否します!
  • 玖渚を疑念の目で見るいーちゃんマジ乙女

副音声は石丸小唄&哀川潤(頭から)なので全力過ぎて疲れた…。

  • ひかりさんの照れ顔&昼食、見たかったけどカット(真姫さんとの絡みが多すぎるからか)
  • ちぃくんの懲役周りとか健脚周りとかのエピソードはカット
  • そういえば真姫さん喫煙設定はカットなのか
  • 「君が女だったらよかったのに(意味深)」はカット
  • ひかりさんの哀川さん性格情報もカット(まぁ副音声聞けば分かりすぎるほどに分かるが…)
  • ちぃくんからのメールも余談部分はカット

OVA クビキリサイクル 3 ネタバレ感想

アニメ

今回は小休止というか幕間というか、書くことが少ない…。
いーちゃんがいちいち可愛すぎる。

  • ジャケットの真姫ちゃん可愛すぎるでしょう
  • いーちゃんの絵、この後もらったんでしたっけ?
  • わかってた。全裸はないよね
  • しかしこんなに広かったら走り幅跳びも普通にできると思うんですよ
  • 4月とはいえ半袖は寒くないですか
  • 玖渚のデフォルメ顔がなんともいえぬ
  • いーちゃんは目玉焼き+ご飯派/真姫ちゃんは飲兵衛らしく味噌汁+水
  • 何気に佐代野さんが一番食べている
  • 台詞をかぶせてくるイリアさん、若い
  • 玲さん頬杖でもなく、微妙なポーズ
  • 25時就寝05時起床って辛くないですか
  • メイド服のブローチで見分けがつくのか(赤:あかりちゃん/青:ひかりちゃん)
  • 赤音さん、何気に黒づくめですね
  • 警察は嫌いなんですよねー
  • 桜の枝を持ってきたのは三つ子メイドなのかな?
  • 潤さん早く来てー
  • 回転チェアで倒立後方回転とか無理くないですか
  • いーちゃん、腕時計したりしなかったり
  • イーゼルに絵の具が付いてないの、おかしいよね
  • 血が付きますよ、玖渚さん
  • 皆よく黒い服持ってるね
  • 4月にキャミソールワンピは寒くないですか

OVA クビキリサイクル 2 ネタバレ感想

アニメ

赤音さんとの飛車角金銀抜きチェス将棋はやっぱりカットだった…!
今回は作画が気合入っているカットとそうでないカットでムラがある感じ。

  • いい感じにいーちゃんの中二感が演出されている
  • イリアさん声可愛いなぁ。しかし全体的に皆胸が大きい…
  • OPのイリアさんは魔性な感じがよく出ている
  • 群青世界、SAOかな?と思うくらい爽やかだ
  • キャーテルコサンカッコイー
  • ようやく弥生さんの料理が結構出てきたよ!いーちゃんは子羊の王冠風のローストと卵入りポテトサラダしか食べてないけど。どれが誰の好物なんだろう。それぞれのキャラが食べてるものかな?
  • 弥生さんの色素が薄い感じ可愛い。自然に手を舐めてくるところがいい
  • 玖渚は哀川さんと会いたくなかった?なぜ?
  • "いつでもどこでもどこまでも楽しい"とか玖渚の異常さをもっと出していこうよ!
  • かなみさんと赤音さんの言い争いは普通に聞き苦しいよね
  • 言い争いを笑顔で見てるイリアさん腹黒
  • 玖渚が止めに入るシーンはもうちょっとたっぷりやった方が死線の蒼っぽかったのでは
  • 真姫さんの予言にwktkしてるイリアさんの横でニコニコしてる玲さんマジ可愛い
  • 真姫さんのいーちゃんいじりは本気でいーちゃんが哀れになってくるレベル
  • いーちゃんのキレ方が中二感あるよ
  • 風呂上がりいーちゃん最高。なぜか挿入されたセクシーポーズ。うにょい
  • コーラの蓋が赤くなりました
  • 地球温暖化のくだりあたり、玖渚が竹さんの絵に近い、気がする
  • 痛々しいところだったねぇ…
  • 深夜さん、無駄に格好いいという点でいーちゃんとは一線を画している
  • 真姫さんのいーちゃんいじりは本気でいーちゃんが哀れになってくるレベル(二回目)
  • いーちゃんのレイプ目がなんとも言えない味がある
  • ここの会話は結構かなみさんのキャラ出しに重要な気がするが結構カットされている
  • 思い出のコートにジェラっちゃういーちゃん可愛い
  • コートのサイズ、大きくなった?
  • 原作を読んだ時、玖渚のコートの下は裸だと思ってた (だって下に着てるって描写なかったし)。いよいよ次の巻で真相が明らかに!

真姫さんのいーちゃんいじめが全開過ぎていーちゃんがガリガリ消耗していく様子が最大の見所になっている…どう見ても尺が優遇されている…。
真姫さんどんだけいーちゃん嫌いなんだ。

SW2.0 世界設定考察 (ザルツ地方/冒険者人口)

SW2.0

ルルブI-III改訂版より

  • 大破局 (ディアボリック・トライアンフ)発生から300年
    • 大破局は何年で終結したのか?
  • 300年でテラスティア大陸の都市部から蛮族は駆逐された
  • 文明レベルは17世紀程度

ザルツ地方

距離感

  • ルキスラ-ダーレスブルグ間:徒歩7日
  • ルキスラ-フェンディル間:徒歩5日
  • ルキスラ-ロシレッタ間:徒歩10日
  • ルキスラ-自由都市同盟間:徒歩7日

3km/hで6-7時間移動できるとすると徒歩1日=約20km?

人口と守りの剣

  • ルキスラ帝国
    • ルキスラ (首都) ...人口80,000人/守りの剣8本
    • バーレス ...5,000人/2本
    • アルドレア ...8,000人/4本
    • ディザ ...7,000人/3本
    • クーデリア侯爵領 ...6,000人/2本
  • ダーレスブルグ公国
    • ダーレスブルグ ...40,000人/6本
  • フェンディル王国
    • ディルクール (首都) ...30,000人/5本
  • ロシレッタ
    • 港町 (ロシレッタ?) ...15,000人/3本
  • 自由都市同盟
    • エイラス ...3,000人/1本
    • バーリント ...10,000人/2本
    • セシュ ...6,000人/1本
    • ドランバル ...7,000人/2本
    • イルマー ...5,000人/1本
    • フットランド ...9,000人/1本
守りの剣の効果範囲考察

守りの剣の範囲は半径1km程度らしい。広めに面積約3.5km^2と見積もる。
単純に1人の占有面積で最低10m^2 (約6畳)必要とすると、人口1万で0.1km^2 (約3%)あればOKなので余裕か。
農地50%、居住地15%、商業地区10%、公共地区10%、その他10%、とか。

守りが十分に行き届いてはいないとのことなので、もう少し範囲が狭いか、必要な土地が多いのか。
(儀式中は守りの剣は無効化するようなので、各剣の守備範囲を重複させておかないといけないからか)
外縁部に農地を配置するにしても、全体を警備するのは無理だし。
そう考えると、1本しかない都市は本当危険だな。

冒険者人口比率考察

  • 人口1万人に対して8割が人間とする
    • 年齢比率が均等に 0代/10代/20代/30代/40代/50代&60代/70代以上 だとする
  • 冒険者ができるのは15-45歳程度とすると、冒険者に従事可能なのは全体の3/7 (約3500人)
    • うち10%が実際に従事するとすると350人
    • 1PTに平均3人の人間がいるとすると、116PT (約120PT)が存在する
      • この時PTの平均人数を4人とすると、人間以外の冒険者は100-150人程度? (人間冒険者と3:1程度の比率)
      • 1軒の冒険者の店に平均15PTが所属するとすると、冒険者の店は約8件
    • 120PTの内訳はこんな感じ?
Lv帯 カテゴリ PT数
1-3 初心者  45
3-5 駆け出し 35
5-7 中堅   20
7-9 ベテラン 12
9-11 一流   6
11-13 超一流  2

冒険者の店もある程度レベル帯ごとに分かれると思われるのでこんなか

カテゴリ 店舗
一流/超一流の店 1
ベテラン/中堅多めの店 2
駆け出し/初心者多めの店 5

剣のかけら消費量考察

  • 守りの剣は2,000人-10,000人に1本程度
  • 儀式は1週間に1度
  • 守りの剣にふりかける「剣のかけら」の量によって効果時間 (範囲も?)が変わる

1回の冒険でのかけらの適正値は冒険者レベルの1-2倍。
各PTが平均1週間に1回冒険をこなすとして、先の考察のPT分布だとすると530-1060個のかけらが集まる。
実際には1万人に1本では心許ないようなので、800個/週程度では1km^2を1週間維持できないのか?

1個のかけらで1gの粉末 (1円玉をアルミ粉にするイメージ)だとすると800g。
50枚の棒金が16本。
うーん、そんなもんかなぁ…多く感じないでもない。

冒険者が従事可能者の10%、という比率がもっと低いのかも。5%なら十分ありそう。 (400個/週)
2,000人/本の都市なら、より高い比率でないとノルマ達成できない。 (ノルマ自体が少なめの可能性は高いが)

OVA クビキリサイクル 1 ネタバレ感想

アニメ

2002年刊のものがなぜ今更…と思いながらも即ポチるよ!

ありがたいことだ…。

1巻1話の8巻構成、ということで、プロローグ - 3日目(1) サヴァンの群青 (のほぼ全て)まで。

3日目(1)ラスト、赤音さんとの異種格闘技戦のみ入らず…カットだろうか。

 

- プロローグ素晴らしい。潤さんの声をずっと聞いていたい

- 佐代野さんのスープリを赤音さんが奪うシーン、描いて欲しかった…

- 三つ子メイドの胸はもっとささやかでもいいんだよ!

- 玲さんのデザインが好みど直球だったけど物語全編でほぼ台詞がないので悲しい

- 玖渚との会話は、2016年では前時代感が出てしまうからか、カット。

- Geocide も扱いは控えめ。なぜtxtファイル。NeIDってなんだろう。1013C cntって、なぜ16進数なのか。電源ケーブルのような格好悪いものは無い。

- かなみさんはいい感じに嫌な奴ですね。あの車椅子、どうやって動かすんだ

- 原作で印象が薄い深夜さんは声がついてようやく存在感出てきた

- アトリエが非常に広いので、ペンキぶちまけても帰れそうなんだけど

- 石膏像に肘をつくとドレスが汚れますよ

- 床に叩きつけてカンバス割れるって、腕力すごいのでは

- いーちゃんクビツリを見据えるともう少し髪が長くてもよいのでは。伸びるの早いらしいが、流石に。

- 立ち居振舞いは想像通りで素晴らしい

- 朝赤音さんと話している時の表情が細かく表現されていて特によい

- 布団から出た時ショーパンだったので太ももにドキドキしたよ

- 真姫さんが来る直前、親指を回している。登場した真姫さんが話しながら親指を回すのは、何か意味があるのかな?

- 玖渚の汚れた髪は、もっと濃くしてほしかったんだよ

- 玖渚のコートは男物だから、袖とかもっとダボダボしててほしかったよ

- でも太ももがえろいくてけしからんから許す(おい)

- デスクにはコーラのペットボトル。蓋が黒いからダイエットコーク?玖渚が持ち込んだのだろう

- 館は全力で豪奢に描かれていて素晴らしい。この屋敷を3人でメンテナンスするメイドさん、有能過ぎる。城咲のマンションや千本中立売の4畳間がどうなるのか、楽しみ。

- 食堂、中空にあるので雨の日濡れそうだが、渡り部分に風が吹いている様子もなく、どういうことなのか。

- シャフ度とか原作に無いけど、いい感じに中二感を演出してるよ

 

玖渚や三つ子メイドが可愛いのは当然として、いーちゃんがとにかく可愛い。

前者が当たり前品質とすると、後者は魅力品質。

ここから真のヒロインを目指すことすら可能だよいーちゃん

 

音楽、背景、作画などは流石のクオリティで、非の打ち所がない。

仕方が無いことだが、カットされた部分が惜しい…。