初心者

難しい用語まとめ

続々追加予定

凝集度(cohesion/コヒージョン)

クラス内の演算の関連性が高いほど、そのクラスは理解しやすいという意味で凝集度が高い(tight cohesion)といったように使われる
凝集度が低い(weak cohesion)、ありとあらゆることができるクラスはgod objectと呼ばれるらしい...

オブジェクト指向のこころ より引用)

結合度

2つのクラス間の関連の強さ
他のクラストの関連性が柔軟 = 結合度が低い

可用性(availability)

システムを利用できる状態のこと
%であらわされることがおおい(e.g. 可用性実績 99.9%
マイクロサービスなど複数のサービスが連携している場合は両方含んだ結果を出す必要がある

e.g. A(可用性実績が95%)、B(可用性実績が95%)システムが直列につながっている
95/100 * 95/100 = 0.9025
大体90%の可用性実績となる

堅牢性

可用性とは別もの
データの欠損が発生しないことを示す指標
こちらも%で表す

冗長性(redundancy)

コンピューターやシステムの障害に備えて、予備装置を普段から配置、運用してサービスダウンを起こさないように準備しておくことを冗長化や冗長性のあるシステムという

単純に言うと単一障害点をなくすこと
これがキモで同じシステムを別のサーバーに置いたとしてもデータセンターが一緒だと天災があると一緒に落ちるので冗長性が低いのかもしれない
本当に突き詰めると、サーバーのOSが違うシステムを2種類用意するとかも冗長性の担保に入るらしい

整合性(integrity)

矛盾点がないこと

定量的(quantitative)/定性的(qualitative)

数字で表現できる、逆に数字で表現できない
2%売上がアップしましたー!とユーザーのサービスに対しての満足度が向上しましたの違い
定性的なものに関しては、定量的に図る環境が整備されていない場合やそもそも定量的に表すことができないものが当てはまる

フェデレーション(federation)

ID連携の仕組みのこと
FacebookとGithub、Qiitaを連携している状態で、Facebookで認証が完了するとGithub、Qiitaでは、それぞれで認証しなくてもログインそのままできるよね そういうこと

マジョリティ(majority)/マイノリティ(minority)

多数派/少数派
米国ではmajority groupで社会的多数派と呼ばれる 本当はgroupがついているのが正しいかも。

プロ(pros)/コン(cons)

賛成と反対