今日の役に立たない一言 - Today’s Trifle! -

古い記事ではさまざまなテーマを書いていますが、2007年以降はプログラミング関連の話がほとんどです。

ソフトウェアエンジニアリング基礎知識体系―SWEBOK

昨日も紹介した本だが、プライベート ジャイアンで、

私にはまだ難しいか。

と書かれていた。そんな心配はまったく不要だ。
この本は簡単に言えば「ソフトウェアエンジニアリング大事典」なわけで、ソフトウェアに携わる人ならスキルに関係なく価値がある。参考のため少しだけ引用する。

I ソフトウェア設計の基礎的概念
(略)
■ ソフトウェア設計のための推奨技法
(略)
抽象化 「異なるものを、あたかも同一のものと見なして扱うために、詳細を忘却するプロセス」.ソフトウェア設計においては,パラメータを用いた抽象化,および仕様化による抽象という,二つの主要な抽象化のメカニズムが存在する.これらから,さらに三つの重要な抽象化,すなわち手続き抽象,データ抽象,および制御(繰り返し)抽象が導かれる.
相互結合と凝集強度 (略)
分割とモジュール化 (略)
カプセル化情報隠蔽 (略)
インタフェースと実現の分離 (略)
十分性,完全性および原子性 ソフトウェアコンポーネントが,抽象化による重要な特性をすべて備え,他の余計な性質を備えていないことを保証すること.

全般的に、ソフトウェア用語を定義したり解説している本だと思ってもらってだいたい間違いは無い。もちろん用語の定義や解説にとどまらないが、詳しい内容を知りたい場合は併記してある参考文献を参照する必要があるだろう。そういう意味では、ソフトウェアエンジニアリング全般の情報に関しての、ポータルの役割を果たしているとも言える。
知識=スキルでもないが、この本に書かれていることをどれだけ知っているかというのも、自分の実力を顧みるときの目安にもなる。