忍者ブログ

最強のソフトウェア開発

最強のソフトウェア開発を目指した知識等を提供する

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。


復合設計

プログラムの構造化を行うもの。

プログラムを、それを構成するモジュールへ分割する。

次の手順で行う。

(1) プログラムを構成するすべてのモジュールの定義

(2) モジュールの階層構造の決定

(3) モジュール間のインターフェースの決定




PR



ソフトウェア要件の特性

ソフトウェア特性は、次の特性を持つべきである

・明確

・正しい

・一貫している

・分かりやすい

・修正できる

・試験できる

・優先順位付けできる

・曖昧でない

・追跡できる

・ソースが特定できる




CPA定理

CPA定理は、次の3つの性質は、同時に3つとも満たすことは、できない

というもの。

1.一貫性(Consisitency)

システムにあるオペレーションを行った後に

一貫性が保たれているか

分散システムで、一貫性を担保するためには

あるノードでupdateが発生すると、他のノードにも

その結果を反映しなければならない

2.可用性(Availability)

ノードの一部が故障しても

システムとしては、稼動し続けなければならない

3.分断耐性(Partition Tolerance)

ネットワークが分断しても、システムとしては

稼動し続けなければならない



NoSQLは、3つのうち、1つを諦め、残りの2つを満たすように設計されている

どの2つを満たすか、により、NoSQLも分類できる。