1.基本スペックの確認

レポートの「概要」タブで、設計の基本スペックを確認しましょう。


性能、コスト、複雑性

1. レポートの「概要」タブを選択します。

2. タブの下にある二つの数値は、最大性能と最大コストを表します。

rps (Request Per Second): 各用途が1秒間に処理するリクエスト数の最大値で、数値が大きいほど要求性能が高くなります。利用者が多い、アクセスが集中する、ページあたりの表示部品が多いなどの条件で数値は変動します。

円/月: クラウド利用の月間概算コストです。通貨単位は表示言語に連動して変化し、USドルを基準とした価格に特定の為替レートを乗じて計算されます。ForkMe!で計算可能なクラウドリソースの種類や為替レートは、「?」アイコンのクリックで確認できます。

サービス開始コスト: 要求ボリュームが最小であった場合の性能とコストを示します。 クラウドは一般的に、要求ボリュームに応じて価格が変動します。

3. 各タブの数字が大きいほど、情報量が多く複雑な設計です。

「概要」タブの数値: 設計に含まれるファイル数です。ファイルにはCloudDesign仕様、各クラウドベンダーのプロビジョニングコードが含まれます。

「アクター」タブの数値: 設計に含まれるアクター(システム利用者)の種類です。

「リソース」タブの数値: 設計に含まれるリソース(クラウドリソース)の種類です。

「コンテキスト」タブの数値: 設計に含まれるコンテキスト(システム利用用途)の種類です。

用途

1. レポートの「概要」タブを選択します。

2. 中段にクラウドの利用用途が表示されます。1行目は設計者が記載した説明文、2行目以降はForkMe!が設計コードから自動生成した要約文です。


品質

1. レポートの「概要」タブを選択します。

2. 下段に設計の監査結果が表示されます。警告を示す赤のマークがある場合、設計の品質は高くありません。 一方で黄色のマークは標準的な推奨事項です。設計によっては準拠できない場合があるため、あくまで注意喚起とご認識ください。

3. 監査結果の下に表示される関係者は、品質評価に役立ちます。「認証済み」マークのついた関係者の「メンバーの情報」をクリックし、 設計履歴を確認しましょう。活動量が多いほど、多くの設計ノウハウを蓄積していると考えられます。 なお「認証済み」マークは、設計者がForkMe!のユーザーである場合に付与されます。


ライセンス

1. レポートの「概要」タブを選択します。

2. 設計タイトルの下に、公開/非公開とライセンスの種別が表示されます。ForkMe!以外の出版物、メディアへの転載に設計を転載する場合は、本ライセンスの使用条件に従ってください。なおForkMe!はすばらしい設計の自由な流通を支援するため、設計者にクリエイティブコモンズの「CC0」ライセンスの採用を推奨しています。

2.用途の確認

ForkMe!はクラウドの用途を「コンテキスト」と呼んでいます。 ソフトウェア工学のユースケースやユーザーストーリーと同様に、 ユーザーとシステムのやり取りを、目的別にまとめた設計の単位です。 レポートの「コンテキスト」タブで、詳細を確認できます。


要求のボリューム

1. レポートの「コンテキスト」タブを選択します。

2. 一覧の各コンテキストに、用途別の要求性能を示す「最大スループット」が表示されます。 これはシステムが1秒間に受付ける(時限処理の場合は自己発火する)リクエストの最大値です。

3.コンテキストをクリックすると、詳細な要求ボリュームが表示されます。 なおForkMe!は各用途の利用開始点を「トリガー」と呼び、トリガーからクラウドへの通信量を要求ボリュームとして計算しています。 トリガーの種類には、利用者のサイト訪問などを示す「ウェブアクセス」と、定期バッチの起動などを示す「時限処理」があります。

「種別」が「ウェブアクセス」の場合

月間PV: ユーザー数×日間アクティブユーザー率(DAU)x30日で計算された、月間のページ閲覧数です。
DAU: 全ユーザーのうち何%が1日に訪れるかを示す数値の、月の平均値です。
日間繁忙時間: 1日の中でアクセスが集中する時間数の、月の平均値です。
訪問毎ページ: ユーザーが訪問ごとに閲覧するページ数です。
ページ毎リクエスト: 1ページに含まれる、平均リスエスト数です。
訪問毎投稿率: ユーザーの訪問あたり何%が閲覧だけでなく投稿を行うかを示します。
ページサイズ: 1ページあたりの閲覧(ユーザーへのデータ送信)サイズです。
投稿サイズ: 1投稿あたりの投稿(ユーザーからのデータ受信)サイズです。
スループット: ユーザーからの秒間リクエスト数です。
最大性能の月間持続時間: スループットの最大値が持続する時間の月間比率です。
リクエスト: ユーザーからの月間リクエスト数です。
「種別」が「時限処理」の場合

月間リクエスト: 時限処理で発火する月間のリクエスト数です。コスト評価に必要なリクエストの総量を示します。
スループット: 時限処理で発火する秒間リクエスト数です。性能評価に必要なリクエストの集中度を示します。
リクエスト毎サイズ: リクエストごとに発生し、後続システムが受信するデータサイズを示します。
レスポンス毎サイズ: リクエストに対するレスポンスとして、後続システムからトリガーに返却されるデータサイズを示します。

応答のボリューム

1. レポートの「コンテキスト」タブを選択します。

2.一覧の各コンテキストに、用途別の応答ボリュームを示す「データ送信」が表示されます。 これはシステムが、利用者や連携する外部システムに対し、1か月間に送信するデータの総量です。

3.コンテキストをクリックすると、詳しい応答ボリュームが確認できます。 ForkMe!は利用者や連携する外部システムを総称して「アクター」と呼んでおり、応答ボリュームはアクターとの間で発生する通信量です。

データ受信: アクターからのデータ受信サイズです。
データ送信: アクターへのデータ送信サイズです。
データ保管: アクターから受信したデータをシステム内に蓄積するサイズです。

データの流れ

1. レポートの「コンテキスト」タブを選択します。

2. 一覧から、詳細を見たいコンテキストをクリックしてください。

3. 画面右に、データの流れを示す図が表示されます。 データの流れは、左端のトリガーから右のリソースまたはアクターへつながるように表現されます。 図面をクリック&ホールドして左右にドラッグすると、隠れた部分が表示できます。

白枠で灰色塗のボックスは、クラウドのリソースを示します。
この例ではロードバランサーを示し、2つのアイコンによりAWSのELB関連リソースが2種類含まれることがわかります。 またボックスをクリックすると、左のレポートは「リソース」タブへ移動し、当該リソースが選択状態(赤の括弧)になります。
白枠で灰色塗以外のボックスは、アクターを示します。
青塗は不特定多数を示す「マーケット」タイプのアクター、オレンジ塗は特定利用者を示す「個人」タイプのアクター、 緑塗は連携する外部システムを示す「外部システム」タイプのアクターです。 ボックスをクリックすると、左のレポートは「アクター」タブへ移動し、当該アクターが選択状態(赤の括弧)になります。
ボックス間をつなぐ太線は、通信経路を示します。
赤塗はインターネット通信、グレー塗は非インターネット通信です。 鍵のあいた赤のアイコンは通信制限がない状態、 鍵のかかった緑のアイコンはIP制限などの通信制限がかかっている状態です。 そして鍵マークの左には、通信ポートと情報の種別名称が表示されます。 種別名称は設計者が自由に設定でき、個人情報や機密情報の有無属性を持ちます。 これらの組み合わせを見ることで、セキュリティ考慮の甘さをチェックすることができます。
太線にカーソルをあわせた状態で待つと、通信の詳細がTips表示されます。
通信経路ごとの、スループット、データ送信、データ受信量が表示されます。

全体像

1. レポートの「コンテキスト」タブを選択します。

2. 概要の「システム俯瞰図」で、全コンテキストの要約が確認できます。「最大スループット」は全コンテキストの中で最大の 要求性能、「データ送信」は全コンテキストの応答ボリュームの合計値を表示します。

3.「システム俯瞰図」行をクリックすると、詳しい情報が確認できます。

スループット: 本設計の中で最大のスループット値です。 スループットはトリガーが1秒間に発行するリクエスト数で、要求性能を示す指標です。
データ受信: アクターから受信するデータサイズの合計です。
データ送信: アクターに送信するデータサイズの合計です。
データ保管: アクターから受信してシステム内に蓄積するデータサイズの合計です。
取り扱う情報: 設計者が定義した、システムが取り扱う情報種別です。各種別とも、 個人情報あり/機密情報あり/公開情報のみ、の何れかの属性を持ちます。

4. 画面右に、アクター、リソース、コンテキストの関連性を示す図が表示されます。 左にアクター、中央にコンテキスト、右にリソースが並び、関係あるものが結線されます。

青線:不特定多数を示す「マーケット」タイプのアクターと、コンテキストの関連
オレンジ線:特定利用者を示す「個人」タイプのアクターと、コンテキストの関連
緑線:連携する外部システムを示す「外部システム」タイプのアクターと、コンテキストの関連
灰線:コンテキストとリソースの関連

5. 各結線や要素をクリックすると、関連するアクター、リソース、コンテキストが左のレポートで選択されます。
注意:選択中のアイテムを示す赤い括弧マークが見当たらない場合、一覧をスクロールしてください。 また選択対象は1件とは限りません。件数は一覧の最上段、左端に表示されています。

3.利用者の確認

ForkMe!はクラウドの利用者を「アクター」と呼んでいます。 アクターは、不特定多数の「マーケット」タイプ、運用者などの特定された「利用者」タイプ、連携APIなどの「外部システム」タイプの3種類に分類されます。 レポートの「アクター」タブで、詳細が確認できます。


マーケット

1. レポートの「アクター」タブを選択します。

2. 地球アイコンがついたアイテムは「マーケット」タイプのアクターです。 不特定多数の利用者群を表現します。

3.アイテムをクリックすると、詳細が表示されます。

算定根拠: 利用者の算定根拠で、市場規模×シェアで表現されます。なお、市場規模の詳細は下の青枠内に表示されます。
マーケット: 市場の名称です。
市場規模: 市場の人数です。
詳細: 市場の説明です。
作成者: 市場を定義した人や団体の名称です。
作成日: 市場を定義した日です。
「ソースコードを確認」ボタン: 右のコードエディタで、この市場を定義したコードが選択されます。

4. 詳細の上にある「関連コンテキストを開く」をクリックすると、コンテキストタブに移動し、この利用者が関連するコンテキストが選択されます。 「ソースコードを確認」をクリックすると、右のコードエディタで、この利用者を定義したコードが選択されます。


利用者

1. レポートの「アクター」タブを選択します。

2. 住所録アイコンがついたアイテムは「利用者」タイプのアクターです。 運用担当者など、特定の利用者を表現します。

3.アイテムをクリックすると、詳細が表示されます。 「IPアドレス/ドメイン等のグループ」に「ソースコードを確認」ボタンが表示される場合、クリックするとコードエディタの記載箇所が選択されます。 なお同一のグループ名が複数の利用者で流用されている場合、クリックするたびにそれらがローテーションで選択されます。

4. 詳細の上にある「関連コンテキストを開く」をクリックすると、コンテキストタブに移動し、この利用者が関連するコンテキストが選択されます。 「ソースコードを確認」をクリックすると、右のコードエディタで、この利用者を定義したコードが選択されます。


外部システム

1. レポートの「アクター」タブを選択します。

2. ロボットアイコンがついたアイテムは「外部システム」タイプのアクターです。 連携するAPIなど、特定の外部システムを表現します。

3.アイテムをクリックすると、詳細が表示されます。 「IPアドレス/ドメイン等のグループ」に「ソースコードを確認」ボタンが表示される場合、クリックするとコードエディタの記載箇所が選択されます。 なお同一のグループ名が複数の利用者で流用されている場合、クリックするたびにそれらがローテーションで選択されます。

4. 詳細の上にある「関連コンテキストを開く」をクリックすると、コンテキストタブに移動し、この利用者が関連するコンテキストが選択されます。 「ソースコードを確認」をクリックすると、右のコードエディタで、この利用者を定義したコードが選択されます。

4.システム構成の確認

ForkMe!はクラウドのサーバや各種サービスを「リソース」と呼んでいます。 リソースの種類はクラウドベンダーごとに異なり、多岐に渡ります。 レポートの「リソース」タブで、詳細が確認できます。


リソース

1. レポートの「リソース」タブを選択します。

2. 各リソースの概要が一覧表示されます。

1行目: 設計者が設定したリソース名称です。
2行目: リソースIDです。設計内でリソースを参照する際に利用されます。
3行目: 各クラウドベンダーが定義する、リソース種別コードです。
最大スループット: リソースへの最大要求性能です。
概算コスト: 概算コストです。「?」マークをクリックして算出の前提事項をご確認ください。

3.アイテムをクリックすると、詳細が表示されます。

種別: 各クラウドベンダーが定義する、リソース種別コードです。
スループット: 要求性能です。
データ受信: 受信データ量です。
データ送信: 送信データ量です。
リクエスト: 受信するリクエスト数です。
データ保管: 受信するデータ量のうち、リソース内に蓄積するデータ量です。
コスト明細: コストの明細です。

4. 詳細の上にある「関連コンテキストを開く」をクリックすると、コンテキストタブに移動し、この利用者が関連するコンテキストが選択されます。 「ソースコードを確認」をクリックすると、右のコードエディタで、この利用者を定義したコードが選択されます。

付録


ForkMe!とReindeer


ForkMe!はReindeerTechnologyPTE.LTD.の提供です。
Reindeerはクラウド活用の支援を通じ、すべての人々につくる力を届けたいと願っています。
誰もが自分の力でサービスを創造できる社会は、表現の自由や価値観の多様性をもたらすだけではありません。それはまた、すべての人々に対する富の再分配を促進し、世界中の人々に平等な富と幸福をもたらすと信じています。


ForkMe!

Reindeer Technology PTE. LTD.



商標

・アマゾン ウェブ サービス、Amazon Web Services、AWS、およびかかる資料で使用されるその他のAWS商標は、Amazon.com, Inc.またはその関連会社の商標です。
・Google、「 Google Cloud Platform (GCP) 」「 Google Cloud Platform (GCP) ロゴ 」は、 Google LLCの商標または登録商標です。
・Microsoft、Microsoft Azureは、米国Microsoft Corporationの、米国およびその他の国における登録商標または商標です。
・Terraformは、HashiCorpの登録商標または商標です。
・その他、記載されている会社名および商品・サービス名は各社の登録商標または商標です。