Skip to content

Instantly share code, notes, and snippets.

@dulao5
Last active November 20, 2020 01:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save dulao5/c4d9dd33b727f08077feed9b6bc48cb9 to your computer and use it in GitHub Desktop.
Save dulao5/c4d9dd33b727f08077feed9b6bc48cb9 to your computer and use it in GitHub Desktop.
Fielding, Roy Thomas. Architectural Styles and the Design of Network-based Software Architectures. Doctoral dissertation, University of California, Irvine, 2000.

基本概念

image

2.2 評価

評価 image 追加スタイル image

概念間の転換 image

# http://www.graphviz.org/content/cluster /// http://viz-js.com/
digraph G {
rankdir=LR;
node [shape=circle, width="1.8"];
Elements[label="アーキテクチャ\n要素\n(Elements)"];
Configurations[label="アーキテクチャ\n構成\n(Configurations)"];
Properties[label="アーキテクチャ\nプロパティ\n(Properties)"];
Styles[label="アーキテクチャ\nスタイル\n(Styles)"];
Components[label="コンポネント\n(Components)"];
Connectors[label="コネクタ\n(Connectors)"];
Data[label="データ\n(Data)"];
Elements->Components[label="含む",style=dotted]
Elements->Connectors[label="含む",style=dotted]
Elements->Data[label="含む",style=dotted]
Components -> Configurations [label="組み合わせ"]
Connectors -> Configurations [label="組み合わせ"]
Data -> Configurations [label="組み合わせ"]
Constraints[label="制約\n(Constraints)"]
Requirements[label="要件"]
Principle [label="設計原則"]
Design [label="アーキテクチャ\nを\n設計する"]
Design_Goal[label="設計ゴール",style=dotted]
Design->Design_Goal[style=dotted]
Requirements -> Constraints[label="is",style=dotted]
Principle -> Constraints[label="is",style=dotted]
Constraints -> Design[label="影響",style=dotted];
Design -> Configurations;
Configurations -> Properties [label="出る"];
Design_Goal -> Properties[label="成果物", style=dotted];
Styles->Constraints[label="is a group"];
{rank=same; Design;Constraints;Configurations}
{rank=same; Styles;Properties;Design_Goal }
}
# http://www.graphviz.org/content/cluster
digraph G {
node [shape=circle, width="1.4"];
Root [label="null\nstyle", style=filled, width=0.4]
Style_A[label="既存\nStyle A"]
Style_B[label="既存\nStyle B"]
Root -> Style_A [label="Property A"]
Root -> Style_B [label="Property B"]
Style_A -> Style_AB [label="hybrid"]
Style_B -> Style_AB [label="hybrid"]
Style_C[label="新規\nStyle C"]
Root->Style_C[label="Property C"]
Style_C->Style_ABC [label="hybrid"]
Style_AB->Style_ABC [label="hybrid"]
{rank=same; Style_A; Style_B;Style_C}
{rank=same; Style_AB;Style_ABC}
}
# http://www.graphviz.org/content/cluster
digraph G {
rankdir=LR;
node [shape=circle, width="1.8"];
subgraph cluster_0 {
label="アーキテクチャ\nを評価する\n(Evaluating)"
identify[label="特定"]
comparing[label="比べる"]
examine[label="検査"]
}
/*Evaluating[label="アーキテクチャ\nを評価する\n(Evaluating)"];*/
Constraints[label="🔑\n制約\n(Constraints)"]
identify->Constraints[label="特定する"]
design_rationale[label="設計の\n理論根拠"]
Constraints->design_rationale[label="裏"]
examine->design_rationale
Properties[label="アーキテクチャ\nプロパティ\n(Properties)"];
Constraints -> Properties [label="得る"];
objectives[label="設計目的"]
comparing -> objectives;
comparing -> Properties;
{rank=same; Properties; Constraints}
}
# http://www.graphviz.org/content/cluster
digraph G {
node [shape=circle, width="1.6"];
graph [
rankdir = TB,
margin = 0.3,
layout = circo,
nodesep="1"]
Properties[label="アーキテクチャ\nプロパティ\n(Properties)"];
Constraints[label="アーキテクチャ\n制約\n(Constraints)"];
Styles[label="アーキテクチャ\nスタイル\n(Styles)"];
Properties->Constraints[label="理論"]
Constraints->Properties[label="得る"]
Constraints->Styles[label="命名"]
Styles->Constraints[label="内容"]
Styles->Properties[label="ゴール"]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment