diff --git a/Samples/ToDoApp/Architecture/ToDoApp.yaml b/Samples/ToDoApp/Architecture/ToDoApp.yaml new file mode 100644 index 000000000..35abbbade --- /dev/null +++ b/Samples/ToDoApp/Architecture/ToDoApp.yaml @@ -0,0 +1,76 @@ +ToDoAppExample: + SoftwareSystems: + ToDoApp: + Containers: + Database: + Interfaces: + SelectTasks: {} + InsertTask: {} + UpdateTask: {} + DeleteTask: {} + WebApi: + Interfaces: + GetTasks: + Flows: + - Type: Use + Expression: Database.Interfaces.SelectTasks + AddTask: + Flows: + - Type: Use + Expression: Database.Interfaces.InsertTask + UpdateTask: + Flows: + - Type: Use + Expression: Database.Interfaces.UpdateTask + DeleteTask: + Flows: + - Type: Use + Expression: Database.Interfaces.DeleteTask + MarkTaskAsDone: + Flows: + - Type: Use + Expression: Database.Interfaces.UpdateTask + MobileApp: + Interfaces: + ViewTasks: + Flows: + - Type: Use + Expression: WebApi.Interfaces.GetTasks + AddTask: + Flows: + - Type: Use + Expression: WebApi.Interfaces.AddTask + UpdateTask: + Flows: + - Type: Use + Expression: WebApi.Interfaces.UpdateTask + DeleteTask: + Flows: + - Type: Use + Expression: WebApi.Interfaces.DeleteTask + MarkTaskAsDone: + Flows: + - Type: Use + Expression: WebApi.Interfaces.MarkTaskAsDone + WebApp: + Interfaces: + ViewTasks: + Flows: + - Type: Use + Expression: WebApi.Interfaces.GetTasks + AddTask: + Flows: + - Type: Use + Expression: WebApi.Interfaces.AddTask + UpdateTask: + Flows: + - Type: Use + Expression: WebApi.Interfaces.UpdateTask + DeleteTask: + Flows: + - Type: Use + Expression: WebApi.Interfaces.DeleteTask + MarkTaskAsDone: + Flows: + - Type: Use + Expression: WebApi.Interfaces.MarkTaskAsDone \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/.c4s/C4.puml b/Samples/ToDoApp/Diagrams/.c4s/C4.puml new file mode 100644 index 000000000..1db5bd355 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/.c4s/C4.puml @@ -0,0 +1,1658 @@ +' C4-PlantUML + +' Global pre-settings +' ################################## +' ENABLE_ALL_PLANT_ELEMENTS +' If ENABLE_ALL_PLANT_ELEMENTS is set BEFORE the first C4_* file is loaded, nearly "all" PlantUML elements can be used like +' Component(StorageA, "Storage A ", $baseShape="storage") +' ENABLE_ALL_PLANT_ELEMENTS can be set via +' !ENABLE_ALL_PLANT_ELEMENTS = 1 +' or with additional command line argument -DENABLE_ALL_PLANT_ELEMENTS=1 + +'Version +' ################################## +!function C4Version() + ' 2 spaces and ' are used as unique marker, that the release scripts makes the correct version update + !$c4Version = "2.10.0beta1" + !return $c4Version +!end function + +!procedure C4VersionDetails() +rectangle C4VersionDetailsArea <> [ +| PlantUML | **%version()** | +| C4-PlantUML | **C4Version()** | +] +!end procedure + +' Colors +' ################################## +!$ELEMENT_FONT_COLOR ?= "#FFFFFF" + +!$ARROW_COLOR ?= "#666666" +!$ARROW_FONT_COLOR ?= $ARROW_COLOR + +!$BOUNDARY_COLOR ?= "#444444" +!$BOUNDARY_BG_COLOR ?= "transparent" +!$BOUNDARY_BORDER_STYLE ?= "dashed" + +!$LEGEND_TITLE_COLOR ?= "#000000" +!$LEGEND_FONT_COLOR ?= "#FFFFFF" +!$LEGEND_BG_COLOR ?= "transparent" +!$LEGEND_BORDER_COLOR ?= "transparent" +' %darken(darkkhaki,50), #khaki +!$LEGEND_DARK_COLOR ?= "#66622E" +!$LEGEND_LIGHT_COLOR ?= "#khaki" + +!$SKETCH_BG_COLOR ?= "#EEEBDC" +!$SKETCH_FONT_COLOR ?= "" +!$SKETCH_WARNING_COLOR ?= "red" +!$SKETCH_FONT_NAME ?= "Comic Sans MS" + +' Labels +' ################################## + +!$LEGEND_SHADOW_TEXT ?= "shadow" +!$LEGEND_NO_SHADOW_TEXT ?= "no shadow" +!$LEGEND_NO_FONT_BG_TEXT ?= "last text and back color" +!$LEGEND_NO_FONT_TEXT ?= "last text color" +!$LEGEND_NO_BG_TEXT ?= "last back color" +!$LEGEND_NO_LINE_TEXT ?= "last line color" +!$LEGEND_ROUNDED_BOX ?= "rounded box" +!$LEGEND_EIGHT_SIDED ?= "eight sided" +!$LEGEND_DOTTED_LINE ?= "dotted" +!$LEGEND_DASHED_LINE ?= "dashed" +!$LEGEND_BOLD_LINE ?= "bold" +!$LEGEND_SOLID_LINE ?= "solid" + +!$LEGEND_BOUNDARY ?= "boundary" +' ignore (boundary) transparent atm, that the legend is smaller +' !$LEGEND_BOUNDARY_TRANSPARENT_INCL_COMA ?= "transparent, " +!$LEGEND_BOUNDARY_TRANSPARENT_INCL_COMA ?= "" +' (boundary) dashed should not be ignored atm +!$LEGEND_BOUNDARY_DASHED_INCL_COMA ?= "dashed, " +' !$LEGEND_BOUNDARY_DASHED_INCL_COMA ?= "" + +!$LEGEND_THICKNESS ?= "thickness" + +!$SKETCH_FOOTER_WARNING ?= "Warning:" +!$SKETCH_FOOTER_TEXT ?= "Created for discussion, needs to be validated" + +' Styling +' ################################## + +!$STEREOTYPE_FONT_SIZE ?= 12 +!global $TRANSPARENT_STEREOTYPE_FONT_SIZE = $STEREOTYPE_FONT_SIZE/2 +!$TECHN_FONT_SIZE ?= 12 + +!$ARROW_FONT_SIZE ?= 12 + +!$LEGEND_DETAILS_SMALL_SIZE ?= 10 +!$LEGEND_DETAILS_NORMAL_SIZE ?= 14 +!global $LEGEND_DETAILS_SIZE = $LEGEND_DETAILS_SMALL_SIZE + +' element symbols typically 4 times too big in legend +!$LEGEND_IMAGE_SIZE_FACTOR ?= 0.25 + +!$ROUNDED_BOX_SIZE ?= 25 +!$EIGHT_SIDED_SIZE ?= 18 + +' Default element wrap width (of an element) +!$DEFAULT_WRAP_WIDTH ?= 200 +' Maximum size in pixels, of a message (in a sequence diagram?) +!$MAX_MESSAGE_SIZE ?= 150 +' PlantUML supports no DETERMINISTIC/automatic line breaks of "PlantUML line" (C4 Relationships) +' therefore Rel...() implements an automatic line break based on spaces (like in all other objects). +' If a $type contains \n then these are used (and no automatic space based line breaks are done) +' $REL_TECHN_MAX_CHAR_WIDTH defines the automatic line break position +!$REL_TECHN_MAX_CHAR_WIDTH ?= 35 +!$REL_DESCR_MAX_CHAR_WIDTH ?= 32 + +' internal +' ################################## + +!global $ROUNDED_BOX = "roundedBox" +!global $EIGHT_SIDED = "eightSided" + +!global $DOTTED_LINE = "dotted" +!global $DASHED_LINE = "dashed" +!global $BOLD_LINE = "bold" +' solid is not defined in plantUML, but works as reset of all other styles too +!global $SOLID_LINE = "solid" + +!global $LEGEND_DETAILS_NONE = "none" +!global $LEGEND_DETAILS_NORMAL = "normal" +!global $LEGEND_DETAILS_SMALL = "small" + +skinparam defaultTextAlignment center + +skinparam wrapWidth $DEFAULT_WRAP_WIDTH +skinparam maxMessageSize $MAX_MESSAGE_SIZE + +skinparam LegendFontColor $LEGEND_FONT_COLOR +skinparam LegendBackgroundColor $LEGEND_BG_COLOR +skinparam LegendBorderColor $LEGEND_BORDER_COLOR + +skinparam rectangle<> { + backgroundcolor $LEGEND_BG_COLOR + bordercolor $LEGEND_BORDER_COLOR +} + +skinparam rectangle { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} + +skinparam database { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} + +skinparam queue { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} + +skinparam participant { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} + +skinparam arrow { + Color $ARROW_COLOR + FontColor $ARROW_FONT_COLOR + FontSize $ARROW_FONT_SIZE +} + +skinparam person { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} + +skinparam actor { + StereotypeFontSize $STEREOTYPE_FONT_SIZE + style awesome +} + +!if %variable_exists("ENABLE_ALL_PLANT_ELEMENTS") +skinparam agent { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} +skinparam artifact { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} +skinparam boundary { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} +skinparam card { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} +skinparam circle { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} +skinparam cloud { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} +skinparam collections { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} +skinparam control { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} +skinparam entity { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} +skinparam file { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} +skinparam folder { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} +skinparam frame { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} +skinparam hexagon { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} +skinparam interface { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} +skinparam label { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} +skinparam stack { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} +skinparam storage { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} +skinparam usecase { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} +skinparam person { + StereotypeFontSize $STEREOTYPE_FONT_SIZE +} +!endif + +' Some boundary skinparams have to be set as package skinparams too (PlantUML uses internal packages) +' UpdateBoundaryStyle() called in boundary section below +skinparam rectangle<> { + StereotypeFontSize $TRANSPARENT_STEREOTYPE_FONT_SIZE + StereotypeFontColor $BOUNDARY_BG_COLOR + BorderStyle $BOUNDARY_BORDER_STYLE +} + +skinparam package { + StereotypeFontSize $TRANSPARENT_STEREOTYPE_FONT_SIZE + StereotypeFontColor $BOUNDARY_BG_COLOR + FontStyle plain + BackgroundColor $BOUNDARY_BG_COLOR +} + +' Legend and Tags +' ################################## +!global $tagDefaultLegend = "" +!global $tagCustomLegend = "" + +' rel specific +!unquoted function $toStereos($tags) + !if (%strlen($tags) == 0) + !return '' + !endif + !$stereos = '' + !$brPos = %strpos($tags, "+") + !while ($brPos >= 0) + !$tag = %substr($tags, 0, $brPos) + !$stereos = $stereos + '<<' + $tag + '>>' +%set_variable_value("$" + $tag + "_LineLegend", %true()) + !$tags = %substr($tags, $brPos+1) + !$brPos = %strpos($tags, "+") + !endwhile + !if (%strlen($tags) > 0) + !$stereos = $stereos + '<<' + $tags + '>>' +%set_variable_value("$" + $tags + "_LineLegend", %true()) + !endif + !return $stereos +!endfunction + +' if $sprite/$techn is an empty argument, try to calculate it via the defined $tag +!unquoted function $toRelArg($arg, $tags, $varPostfix) + !if ($arg > "") + !return $arg + !endif + + !if (%strlen($tags) == 0) + !return $arg + !endif + !$brPos = %strpos($tags, "+") + !while ($brPos >= 0) + !$tag = %substr($tags, 0, $brPos) + !$newArg = %get_variable_value("$" + $tag + $varPostfix) + !if ($newArg > "") + !return $newArg + !endif + !$tags = %substr($tags, $brPos+1) + !$brPos = %strpos($tags, "+") + !endwhile + !if (%strlen($tags) > 0) + !$newArg = %get_variable_value("$" + $tags + $varPostfix) + !if ($newArg > "") + !return $newArg + !endif + !endif + !return $arg +!endfunction + +' element specific (unused are hidden based on mask) +!unquoted function $toStereos($elementType, $tags) + !if (%strlen($tags) == 0) + !$stereos = '<<' + $elementType + '>>' +%set_variable_value("$" + $elementType + "Legend", %true()) + !return $stereos + !endif + !$stereos = '' + !$mask = $resetMask() + !$brPos = %strpos($tags, "+") + !while ($brPos >= 0) + !$tag = %substr($tags, 0, $brPos) + !$stereos = $stereos + '<<' + $tag + '>>' + !$mergedMask = $combineMaskWithTag($mask, $tag) + !if ($mergedMask != $mask) +%set_variable_value("$" + $tag + "Legend", %true()) + !$mask = $mergedMask + !endif + !$tags = %substr($tags, $brPos+1) + !$brPos = %strpos($tags, "+") + !endwhile + !if (%strlen($tags) > 0) + !$stereos = $stereos + '<<' + $tags + '>>' + !$mergedMask = $combineMaskWithTag($mask, $tags) + !if ($mergedMask != $mask) +%set_variable_value("$" + $tags + "Legend", %true()) + !$mask = $mergedMask + !endif + !endif + ' has to be last, otherwise PlantUML overwrites all tag specific skinparams + !$stereos = $stereos + '<<' + $elementType + '>>' + !$mergedMask = $combineMaskWithTag($mask, $elementType) + !if ($mergedMask != $mask) +%set_variable_value("$" + $elementType + "Legend", %true()) + !$mask = $mergedMask + !endif + !return $stereos +!endfunction + +' if $sprite/$techn is an empty argument, try to calculate it via the defined $tag +!unquoted function $toElementArg($arg, $tags, $varPostfix, $elementType) + !if ($arg > "") + !return $arg + !endif + + !if (%strlen($tags) == 0) + !$newArg = %get_variable_value("$" + $elementType + $varPostfix) + !if ($newArg > "") + !return $newArg + !else + !return $arg + !endif + !endif + !$brPos = %strpos($tags, "+") + !while ($brPos >= 0) + !$tag = %substr($tags, 0, $brPos) + !$newArg = %get_variable_value("$" + $tag + $varPostfix) + !if ($newArg > "") + !return $newArg + !endif + !$tags = %substr($tags, $brPos+1) + !$brPos = %strpos($tags, "+") + !endwhile + !if (%strlen($tags) > 0) + !$newArg = %get_variable_value("$" + $tags + $varPostfix) + !if ($newArg > "") + !return $newArg + !endif + !$newArg = %get_variable_value("$" + $elementType + $varPostfix) + !if ($newArg > "") + !return $newArg + !endif + !endif + !return $arg +!endfunction + +' if $value is empty try to load it via variable, optional can it store the calculated value +!function $restoreEmpty($elementType, $property, $value, $store) + !$var = "$" + $elementType + "Restore" + $property + !if ($value == "") + !$value = %get_variable_value($var) + !elseif ($store) + %set_variable_value($var, $value) + !endif + !return $value +!endfunction + +' clear the restore property +!function $clearRestore($elementType, $property) + !$var = "$" + $elementType + "Restore" + $property + %set_variable_value($var, "") + !return "" +!endfunction + +!function $elementTagSkinparams($element, $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, $shape, $borderStyle, $borderThickness) + !$elementSkin = "skinparam " + $element + "<<" + $tagStereo + ">> {" + %newline() + !if ($fontColor != "") + !if (%strpos($tagStereo, "boundary") < 0) + !$elementSkin = $elementSkin + " StereotypeFontColor " + $fontColor + %newline() + !endif + !$elementSkin = $elementSkin + " FontColor " + $fontColor + %newline() + !endif + !if ($bgColor != "") + !$elementSkin = $elementSkin + " BackgroundColor " + $bgColor + %newline() + !endif + !if ($borderColor != "") + !$elementSkin = $elementSkin + " BorderColor " + $borderColor+ %newline() + !endif + !if ($shadowing == "true") + !$elementSkin = $elementSkin + " Shadowing<<" + $tagStereo + ">> " + "true" + %newline() + !endif + !if ($shadowing == "false") + !$elementSkin = $elementSkin + " Shadowing<<" + $tagStereo + ">> " + "false" + %newline() + !endif + ' only rectangle supports shape(d corners), define both skinparam that overlays are working + !if ($shape != "" && $element == "rectangle") + !if ($shape == $ROUNDED_BOX) + !$elementSkin = $elementSkin + " RoundCorner " + $ROUNDED_BOX_SIZE+ %newline() + !$elementSkin = $elementSkin + " DiagonalCorner " + "0" + %newline() + !elseif ($shape == $EIGHT_SIDED) + !$elementSkin = $elementSkin + " RoundCorner " + "0" + %newline() + !$elementSkin = $elementSkin + " DiagonalCorner " + $EIGHT_SIDED_SIZE+ %newline() + !endif + !endif + !if ($borderStyle != "") + !$elementSkin = $elementSkin + " BorderStyle " + $borderStyle + %newline() + !endif + !if ($borderThickness != "") + !$elementSkin = $elementSkin + " BorderThickness " + $borderThickness + %newline() + !endif + !$elementSkin = $elementSkin + "}" + %newline() + !return $elementSkin +!endfunction + +!unquoted procedure $defineSkinparams($tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, $shape, $borderStyle, $borderThickness) + ' only rectangle supports shape(d corners) + !$tagSkin = $elementTagSkinparams("rectangle", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, $shape, $borderStyle, $borderThickness) + !$tagSkin = $tagSkin + $elementTagSkinparams("database", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + !$tagSkin = $tagSkin + $elementTagSkinparams("queue", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + ' plantuml.jar bug - actor have to be after person + !$tagSkin = $tagSkin + $elementTagSkinparams("person", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + ' actor has style awesome, therefore $fontColor is ignored and text uses $bgColor too + !$tagSkin = $tagSkin + $elementTagSkinparams("actor", $tagStereo, $bgColor, $bgColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + ' sequence requires participant + !$tagSkin = $tagSkin + $elementTagSkinparams("participant", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + !$tagSkin = $tagSkin + $elementTagSkinparams("sequencebox", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + !if (%strpos($tagStereo, "boundary") >= 0 && $bgColor != "") + !$tagSkin = $tagSkin + "skinparam package<<" + $tagStereo + ">>StereotypeFontColor " + $bgColor + %newline() + !$tagSkin = $tagSkin + "skinparam rectangle<<" + $tagStereo + ">>StereotypeFontColor " + $bgColor + %newline() + !endif + !if %variable_exists("ENABLE_ALL_PLANT_ELEMENTS") + !$tagSkin = $tagSkin + $elementTagSkinparams("agent", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + !$tagSkin = $tagSkin + $elementTagSkinparams("artifact", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + !$tagSkin = $tagSkin + $elementTagSkinparams("card", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + !$tagSkin = $tagSkin + $elementTagSkinparams("cloud", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + !$tagSkin = $tagSkin + $elementTagSkinparams("collections", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + !$tagSkin = $tagSkin + $elementTagSkinparams("file", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + !$tagSkin = $tagSkin + $elementTagSkinparams("folder", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + !$tagSkin = $tagSkin + $elementTagSkinparams("frame", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + !$tagSkin = $tagSkin + $elementTagSkinparams("hexagon", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + !$tagSkin = $tagSkin + $elementTagSkinparams("package", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + !$tagSkin = $tagSkin + $elementTagSkinparams("stack", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + !$tagSkin = $tagSkin + $elementTagSkinparams("storage", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + !$tagSkin = $tagSkin + $elementTagSkinparams("usecase", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + ' elements without background: font uses $bgColor + !$tagSkin = $tagSkin + $elementTagSkinparams("boundary", $tagStereo, $bgColor, $bgColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + !$tagSkin = $tagSkin + $elementTagSkinparams("circle", $tagStereo, $bgColor, $bgColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + !$tagSkin = $tagSkin + $elementTagSkinparams("control", $tagStereo, $bgColor, $bgColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + !$tagSkin = $tagSkin + $elementTagSkinparams("entity", $tagStereo, $bgColor, $bgColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + !$tagSkin = $tagSkin + $elementTagSkinparams("interface", $tagStereo, $bgColor, $bgColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + ' label uses wrong font color? (should be $bgColor too) + !$tagSkin = $tagSkin + $elementTagSkinparams("label", $tagStereo, $bgColor, $bgColor, $borderColor, $shadowing, "", $borderStyle, $borderThickness) + !endif +$tagSkin +!endprocedure + +' arrow colors cannot start with # (legend background has to start with #) +!function $colorWithoutHash($c) + !if (%substr($c, 0, 1) == "#") + !$c = %substr($c,1) + !endif + !return $c +!endfunction + +!unquoted procedure $defineRelSkinparams($tagStereo, $textColor, $lineColor, $lineStyle, $lineThickness) + !$elementSkin = "skinparam arrow<<" + $tagStereo + ">> {" + %newline() + !if ($lineColor != "") || ($textColor != "") || ($lineStyle != "") + !$elementSkin = $elementSkin + " Color " + !if ($lineColor != "") + !$elementSkin = $elementSkin + $colorWithoutHash($lineColor) + !endif + !if ($textColor != "") + !$elementSkin = $elementSkin + ";text:" + $colorWithoutHash($textColor) + !endif + !if ($lineStyle != "") + !$elementSkin = $elementSkin + ";line." + $lineStyle + !endif + !$elementSkin = $elementSkin + %newline() + !endif + !if ($lineThickness != "") + !$elementSkin = $elementSkin + " thickness " + $lineThickness + %newline() + !endif + !$elementSkin = $elementSkin + "}" + %newline() +$elementSkin +!endprocedure + +' %is_dark() requires PlantUML version >= 1.2021.6 +!if (%function_exists("%is_dark")) + !$PlantUMLSupportsDynamicLegendColor = %true() +!else + !$PlantUMLSupportsDynamicLegendColor = %false() + !log "dynamic undefined legend colors" requires PlantUML version >= 1.2021.6, therefore only static assigned colors are used +!endif + +!unquoted function $contrastLegend($color) + !if (%is_dark($color)) + !$value = $LEGEND_LIGHT_COLOR + !else + !$value = $LEGEND_DARK_COLOR + !endif + !return $value +!endfunction + +!unquoted function $flatLegend($color) + !if (%is_dark($color)) + !$value = $LEGEND_DARK_COLOR + !else + !$value = $LEGEND_LIGHT_COLOR + !endif + !return $value +!endfunction + +' legend background has to start with # +!function $colorWithHash($c) + !if (%substr($c, 0, 1) != "#") + !$c = "#" + $c + !endif + !return $c +!endfunction + +!function $addMaskFlag($mask, $attr) + !if ($attr == "") + !$mask = $mask + "0" + !else + !$mask = $mask + "1" + !endif + !return $mask +!endfunction + +!function $orFlags($flag1, $flag2) + !if ($flag1 == "0" && $flag2 == "0") + !return "0" + !endif + !return "1" +!endfunction + +!function $tagLegendMask($bgColor, $fontColor, $borderColor, $shadowing, $shape, $sprite, $borderStyle, $borderThickness) + !$mask = "" + !$mask = $addMaskFlag($mask, $bgColor) + !$mask = $addMaskFlag($mask, $fontColor) + !$mask = $addMaskFlag($mask, $borderColor) + !$mask = $addMaskFlag($mask, $shadowing) + !$mask = $addMaskFlag($mask, $shape) + !$mask = $addMaskFlag($mask, $sprite) + !$mask = $addMaskFlag($mask, $borderStyle) + !$mask = $addMaskFlag($mask, $borderThickness) + !return $mask +!endfunction + +!function $resetMask() + !return "00000000" +!endfunction + +!function $combineMasks($mask1, $mask2) + !$mask = "" + !$mask = $mask + $orFlags(%substr($mask1, 0, 1), %substr($mask2, 0, 1)) + !$mask = $mask + $orFlags(%substr($mask1, 1, 1), %substr($mask2, 1, 1)) + !$mask = $mask + $orFlags(%substr($mask1, 2, 1), %substr($mask2, 2, 1)) + !$mask = $mask + $orFlags(%substr($mask1, 3, 1), %substr($mask2, 3, 1)) + !$mask = $mask + $orFlags(%substr($mask1, 4, 1), %substr($mask2, 4, 1)) + !$mask = $mask + $orFlags(%substr($mask1, 5, 1), %substr($mask2, 5, 1)) + !$mask = $mask + $orFlags(%substr($mask1, 6, 1), %substr($mask2, 6, 1)) + !$mask = $mask + $orFlags(%substr($mask1, 7, 1), %substr($mask2, 7, 1)) + !return $mask +!endfunction + +!function $combineMaskWithTag($mask1, $tag) + !$mask2 = %get_variable_value("$" + $tag+ "LegendMask") + !if ($mask2 == "") + ' !log combineMaskWithTag $mask1, $tag, ... only $mask1 + !return $mask1 + !endif + + ' !log combineMaskWithTag $mask1, $tag, $mask2 ... $combineMasks($mask1, $mask2) + !return $combineMasks($mask1, $mask2) +!endfunction + +' element symbols typically 4 times too big in legend +!function $smallVersionSprite($sprite) + ' ,scale= ... has to be first (...,color=black,scale=0.25... is invalid too) + !if (%strpos($sprite, "=") < 0) + !if (%substr($sprite, 0, 4) == "img:") + !$smallSprite = $sprite + "{scale=" + $LEGEND_IMAGE_SIZE_FACTOR + "}" + !else + !$smallSprite = $sprite + ",scale=" + $LEGEND_IMAGE_SIZE_FACTOR + !endif + !else + !$smallSprite = $sprite + !endif + !return $smallSprite +!endfunction + +' format sprite that it can be used in diagram +!function $getSprite($sprite) + ' if it starts with & it's a OpenIconic, details see https://useiconic.com/open/ + ' if it starts with img: it's an image, details see https://plantuml.com/creole + !if (%substr($sprite, 0, 1) != "&" && %substr($sprite, 0, 4) != "img:") + !$formatted = "<$" + $sprite + ">" + !else + !$formatted = "<" + $sprite + ">" + !endif + !return $formatted +!endfunction + +!function $setTagLegendVariables($tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, $shape, $legendText, $legendSprite, $borderStyle, $borderThickness) + !$bg = $bgColor + !$fo = $fontColor + !$bo = $borderColor + + !if ($fo == "") + !if ($bg != "") +!if ($PlantUMLSupportsDynamicLegendColor) + !$fo = $contrastLegend($bg) +!else + !$fo = $LEGEND_DARK_COLOR +!endif + !else + !if ($bo == "") + !$fo = $LEGEND_DARK_COLOR + !$bg = $LEGEND_LIGHT_COLOR + !else +!if ($PlantUMLSupportsDynamicLegendColor) + !$fo = $flatLegend($bo) + !$bg = $contrastLegend($bo) +!else + !$fo = $LEGEND_DARK_COLOR + !$bg = $LEGEND_LIGHT_COLOR +!endif + !endif + !endif + !else + !if ($bg == "") +!if ($PlantUMLSupportsDynamicLegendColor) + !$bg = $contrastLegend($fo) +!else + !$bg = $LEGEND_LIGHT_COLOR +!endif + !endif + !endif + + !if ($bo == "") + !$bo = $bg + !endif + + !$tagEntry = "|" + !$tagDetails = "(" + !$tagEntry = $tagEntry + "<" + $colorWithHash($bg) +">" + ' ..white rectangle + !$tagEntry = $tagEntry + " " + !$tagEntry = $tagEntry + "" + !if ($legendSprite != "") + !$tagEntry = $tagEntry + $getSprite($legendSprite) + " " + !endif + + !$isBoundary = 0 + !if ($legendText == "") + !if (%strpos($tagStereo, "boundary") >= 0) + !if ($tagStereo == "boundary") + !$isBoundary = 1 + !$tagEntry = $tagEntry + " " + $LEGEND_BOUNDARY + " " + !else + ' if contains/ends with _boundary remove _boundary and add "boundary (dashed)" + !$pos = %strpos($tagStereo, "_boundary") + !if ($pos > 0) + !$isBoundary = 1 + !$tagEntry = $tagEntry + " " + %substr($tagStereo, 0 ,$pos) + " " +$LEGEND_BOUNDARY + " " + !endif + !endif + !endif + !if ($isBoundary == 0) + !$tagEntry = $tagEntry + " " + $tagStereo + " " + !endif + + !if ($isBoundary == 1 && ($bgColor == "#00000000" || %lower($bgColor) == "transparent")) + !$tagDetails = $tagDetails + $LEGEND_BOUNDARY_TRANSPARENT_INCL_COMA + !endif + !if ($shadowing == "true") + !$tagDetails = $tagDetails + $LEGEND_SHADOW_TEXT + ", " + !endif + !if ($shadowing == "false") + !$tagDetails = $tagDetails + $LEGEND_NO_SHADOW_TEXT + ", " + !endif + !if ($shape == $ROUNDED_BOX) + !$tagDetails = $tagDetails + $LEGEND_ROUNDED_BOX + ", " + !endif + !if ($shape == $EIGHT_SIDED) + !$tagDetails = $tagDetails + $LEGEND_EIGHT_SIDED + ", " + !endif + !if ($fontColor == "" && $bgColor == "") + !$tagDetails = $tagDetails + $LEGEND_NO_FONT_BG_TEXT + ", " + !else + !if ($fontColor == "") + !$tagDetails = $tagDetails + $LEGEND_NO_FONT_TEXT + ", " + !endif + !if ($bgColor == "") + !$tagDetails = $tagDetails + $LEGEND_NO_BG_TEXT + ", " + !endif + !endif + !if ($borderStyle != "") + !if ($borderStyle == $DOTTED_LINE) + !$tagDetails = $tagDetails + $LEGEND_DOTTED_LINE + ", " + !elseif ($borderStyle == $DASHED_LINE) + !if ($isBoundary == 1) + !$tagDetails = $tagDetails + $LEGEND_BOUNDARY_DASHED_INCL_COMA + !else + !$tagDetails = $tagDetails + $LEGEND_DASHED_LINE + ", " + !endif + !elseif ($borderStyle == $BOLD_LINE) + !$tagDetails = $tagDetails + $LEGEND_BOLD_LINE + ", " + !elseif ($borderStyle == $SOLID_LINE) + !$tagDetails = $tagDetails + $LEGEND_SOLID_LINE + ", " + !else + !$tagDetails = $tagDetails + $lineStyle + ", " + !endif + !endif + !if ($borderThickness != "") + !$tagDetails = $tagDetails + $LEGEND_THICKNESS + " " + $borderThickness + ", " + !endif + !if ($tagDetails=="(" || $tagDetails=="(, ") + !$tagDetails = "" + !else + !$tagDetails = %substr($tagDetails, 0, %strlen($tagDetails)-2) + !$tagDetails = $tagDetails + ")" + !endif + !else + !$brPos = %strpos($legendText, "\n") + !if ($brPos > 0) + !$tagEntry = $tagEntry + %substr($legendText, 0, $brPos) + " " + !$details = %substr($legendText, $brPos + 2) + !if ($details=="") + !$tagDetails = "" + !else + !$tagDetails = $tagDetails + $details + ")" + !endif + !else + !$tagEntry = $tagEntry + " " + $legendText + " " + !$tagDetails = "" + !endif + !endif + + !$tagDetails = $tagDetails + " " + !$tagDetails = $tagDetails + "|" +%set_variable_value("$" + $tagStereo + "LegendEntry", $tagEntry) +%set_variable_value("$" + $tagStereo + "LegendDetails", $tagDetails) + !return $tagEntry +!endfunction + +!function $setTagRelLegendVariables($tagStereo, $textColor, $lineColor, $lineStyle, $legendText, $legendSprite, $lineThickness) + !$tc = $textColor + !$lc = $lineColor + + !if ($tc == "") + !if ($PlantUMLSupportsDynamicLegendColor) + !$tc = $flatLegend($ARROW_FONT_COLOR) + !else + !$tc = $LEGEND_DARK_COLOR + !endif + !endif + !if ($lc == "") + !if ($PlantUMLSupportsDynamicLegendColor) + !$lc = $flatLegend($ARROW_COLOR) + !else + !$lc = $LEGEND_DARK_COLOR + !endif + !endif + + !$tagEntry = "|" + !$tagDetails = "(" + ' ..white line + !$tagEntry = $tagEntry + " " + !$tagEntry = $tagEntry + "" + !if ($legendSprite != "") + !$tagEntry = $tagEntry + $getSprite($legendSprite) + " " + !endif + !if ($legendText == "") + !$tagEntry = $tagEntry + " " + $tagStereo + " " + !if ($textColor == "") + !$tagDetails = $tagDetails + $LEGEND_NO_FONT_TEXT + ", " + !endif + !if ($lineColor == "") + !$tagDetails = $tagDetails + $LEGEND_NO_LINE_TEXT + ", " + !endif + !if ($lineStyle != "") + !if ($lineStyle == $DOTTED_LINE) + !$tagDetails = $tagDetails + $LEGEND_DOTTED_LINE + ", " + !elseif ($lineStyle == $DASHED_LINE) + !$tagDetails = $tagDetails + $LEGEND_DASHED_LINE + ", " + !elseif ($lineStyle == $BOLD_LINE) + !$tagDetails = $tagDetails + $LEGEND_BOLD_LINE + ", " + !else + !$tagDetails = $tagDetails + $lineStyle + ", " + !endif + !endif + !if ($lineThickness != "") + !$tagDetails = $tagDetails + $LEGEND_THICKNESS + " " + $lineThickness + ", " + !endif + !if ($tagDetails=="(") + !$tagDetails = "" + !else + !$tagDetails = %substr($tagDetails, 0, %strlen($tagDetails)-2) + !$tagDetails = $tagDetails + ")" + !endif + !else + !$brPos = %strpos($legendText, "\n") + !if ($brPos > 0) + !$tagEntry = $tagEntry + " " + %substr($legendText, 0, $brPos) + " " + !$details = %substr($legendText, $brPos + 2) + !if ($details=="") + !$tagDetails = "" + !else + !$tagDetails = $tagDetails + $details + ")" + !endif + !else + !$tagEntry = $tagEntry + " " + $legendText + " " + !$tagDetails = "" + !endif + !endif + + !$tagDetails = $tagDetails + " " + !$tagDetails = $tagDetails + "|" +%set_variable_value("$" + $tagStereo + "_LineLegendEntry", $tagEntry) +%set_variable_value("$" + $tagStereo + "_LineLegendDetails", $tagDetails) + !return $tagEntry +!endfunction + +!unquoted procedure $addTagToLegend($tagStereo, $bgColor="", $fontColor="", $borderColor="", $shadowing="", $shape="", $legendText="", $legendSprite="", $borderStyle="", $borderThickness="") +'' if a combined element tag is defined (e.g. "v1.0&v1.1") then it is typically a merged color, +'' like a new $fontColor="#fdae61" therefore it should be added to the legend +'' and the & combined tags will be not removed +' !if (%strpos($tagStereo, "&") < 0) + !$dummyAlreadyVariables = $setTagLegendVariables($tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, $shape, $legendText, $legendSprite, $borderStyle, $borderThickness) + !$tagCustomLegend = $tagCustomLegend + $tagStereo + "\n" + !$tagMask = $tagLegendMask( $bgColor, $fontColor, $borderColor, $shadowing, $shape, $sprite, $borderStyle, $borderThickness) +%set_variable_value("$" + $tagStereo + "LegendMask", $tagMask) +' !endif +!endprocedure + +!unquoted procedure $addRelTagToLegend($tagStereo, $textColor="", $lineColor="", $lineStyle="", $legendText="", $legendSprite="", $lineThickness="") +'' Arrows have a bug with stereotype/skinparams and cannot combine text colors of one stereotype +'' and the line color of another stereotype. Therefore the text color of one tag and the line color +'' of another tag have to be combined via a "workaround" tag ("v1.0&v1.1"). +'' This workaround tag could be theoretically removed in the legend but after that there would +'' be an inconsistency between the element tags and the rel tags and therefore +'' & combined workaround tags are not removed too (and in unlikely cases the color itself could be changed) +' !if (%strpos($tagStereo, "&") < 0) + !$dummyAlreadyVariables = $setTagRelLegendVariables($tagStereo, $textColor, $lineColor, $lineStyle, $legendText, $legendSprite, $lineThickness) + !$tagCustomLegend = $tagCustomLegend + $tagStereo + "_Line\n" +' !endif +!endprocedure + +!procedure $showActiveLegendEntries($allDefined) + !$brPos = %strpos($allDefined, "\n") + !while ($brPos >= 0) + !$tagStereo = %substr($allDefined, 0, $brPos) + !$allDefined = %substr($allDefined, $brPos+2) + !$brPos = %strpos($allDefined, "\n") + !if (%variable_exists("$" + $tagStereo + "Legend")) + ' is part of legendDetails + !$part1 = %get_variable_value("$" + $tagStereo + "LegendEntry") + !$partSize = "" + !$part2 = %get_variable_value("$" + $tagStereo + "LegendDetails") + !$line = $part1 + $partSize + $part2 +$line + !endif + !endwhile + !if (%strlen($allDefined) > 0) + !$tagStereo = $allDefined + !if (%variable_exists("$" + $tagStereo + "Legend")) + ' is part of legendDetails + !$part1 = %get_variable_value("$" + $tagStereo + "LegendEntry") + !$partSize = "" + !$part2 = %get_variable_value("$" + $tagStereo + "LegendDetails") + !$line = $part1 + $partSize + $part2 +$line + !endif + !endif +!endprocedure + +!function RoundedBoxShape() +!return $ROUNDED_BOX +!endfunction + +!function EightSidedShape() +!return $EIGHT_SIDED +!endfunction + +!function DottedLine() +!return $DOTTED_LINE +!endfunction + +!function DashedLine() +!return $DASHED_LINE +!endfunction + +!function BoldLine() +!return $BOLD_LINE +!endfunction + +!function SolidLine() +!return $SOLID_LINE +!endfunction + +' used by new defined tags +!unquoted procedure AddElementTag($tagStereo, $bgColor="", $fontColor="", $borderColor="", $shadowing="", $shape="", $sprite="", $techn="", $legendText="", $legendSprite="", $borderStyle="", $borderThickness="") +$defineSkinparams($tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, $shape, $borderStyle, $borderThickness) + !if ($sprite!="") +%set_variable_value("$" + $tagStereo + "ElementTagSprite", $sprite) + !if ($legendSprite == "") + !$legendSprite = $smallVersionSprite($sprite) + !endif + !endif + !if ($techn != "") +%set_variable_value("$" + $tagStereo + "ElementTagTechn", $techn) + !endif +$addTagToLegend($tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, $shape, $legendText, $legendSprite, $borderStyle, $borderThickness) +!endprocedure + +!unquoted procedure $addElementTagInclReuse($elementName, $tagStereo, $bgColor="", $fontColor="", $borderColor="", $shadowing="", $shape="", $sprite="", $techn="", $legendText="", $legendSprite="", $borderStyle="", $borderThickness="") + !$bgColor=$restoreEmpty($elementName, "bgColor", $bgColor, %false()) + !$fontColor=$restoreEmpty($elementName, "fontColor", $fontColor, %false()) + !$borderColor=$restoreEmpty($elementName, "borderColor", $borderColor, %false()) + !$shadowing=$restoreEmpty($elementName, "shadowing", $shadowing, %false()) + !$shape=$restoreEmpty($elementName, "shape", $shape, %false()) + !$sprite=$restoreEmpty($elementName, "sprite", $sprite, %false()) + !$techn=$restoreEmpty($elementName, "techn", $techn, %false()) + ' new style should has its own legend text + ' !$legendText=$restoreEmpty($elementName, "legendText", $legendText, %false()) + !$legendSprite=$restoreEmpty($elementName, "legendSprite", $legendSprite, %false()) + !$borderStyle=$restoreEmpty($elementName, "borderStyle", $borderStyle, %false()) + !$borderThickness=$restoreEmpty($elementName, "borderThickness", $borderThickness, %false()) + + AddElementTag($tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, $shape, $sprite, $techn, $legendText, $legendSprite, $borderStyle, $borderThickness) +!endprocedure + +' used by new defined rel tags +!unquoted procedure AddRelTag($tagStereo, $textColor="", $lineColor="", $lineStyle="", $sprite="", $techn="", $legendText="", $legendSprite="", $lineThickness="") +$defineRelSkinparams($tagStereo, $textColor, $lineColor, $lineStyle, $lineThickness) + !if ($sprite != "") +%set_variable_value("$" + $tagStereo + "RelTagSprite", $sprite) + !if ($legendSprite == "") + ' relation symbols typically 1:1 no additional scale required + !$legendSprite = $sprite + !endif + !endif + !if ($techn != "") +%set_variable_value("$" + $tagStereo + "RelTagTechn", $techn) + !endif +$addRelTagToLegend($tagStereo, $textColor, $lineColor, $lineStyle, $legendText, $legendSprite, $lineThickness) +!endprocedure + +' update the style of existing elements like person, ... +!unquoted procedure UpdateElementStyle($elementName, $bgColor="", $fontColor="", $borderColor="", $shadowing="", $shape="", $sprite="", $techn="", $legendText="", $legendSprite="", $borderStyle="", $borderThickness="") +!$bgColor=$restoreEmpty($elementName, "bgColor", $bgColor, %true()) +!$fontColor=$restoreEmpty($elementName, "fontColor", $fontColor, %true()) +!$borderColor=$restoreEmpty($elementName, "borderColor", $borderColor, %true()) +!$shadowing=$restoreEmpty($elementName, "shadowing", $shadowing, %true()) +!$shape=$restoreEmpty($elementName, "shape", $shape, %true()) +!$sprite=$restoreEmpty($elementName, "sprite", $sprite, %true()) +!$techn=$restoreEmpty($elementName, "techn", $techn, %true()) +!$legendText=$restoreEmpty($elementName, "legendText", $legendText, %true()) +!$legendSprite=$restoreEmpty($elementName, "legendSprite", $legendSprite, %true()) +!$borderStyle=$restoreEmpty($elementName, "borderStyle", $borderStyle, %true()) +!$borderThickness=$restoreEmpty($elementName, "borderThickness", $borderThickness, %true()) + +$defineSkinparams($elementName, $bgColor, $fontColor, $borderColor, $shadowing, $shape, $borderStyle, $borderThickness) + !if ($sprite != "") +%set_variable_value("$" + $elementName + "ElementTagSprite", $sprite) + !if ($legendSprite == "") + !$legendSprite = $smallVersionSprite($sprite) + !endif + !endif + !if ($techn != "") +%set_variable_value("$" + $elementName + "ElementTagTechn", $techn) + !endif + !$dummyAlreadyVariables = $setTagLegendVariables($elementName, $bgColor, $fontColor, $borderColor, $shadowing, $shape, $legendText, $legendSprite, $borderStyle, $borderThickness) + ' default tags sets at least bgColor and fontColor + !$tagMask = $tagLegendMask("CHANGED", "CHANGED", $borderColor, $shadowing, $shape, $sprite, $borderStyle, $borderThickness) +%set_variable_value("$" + $elementName + "LegendMask", $tagMask) +!endprocedure + +/' @deprecated in favor of UpdateElementStyle '/ +!unquoted procedure UpdateSkinparamsAndLegendEntry($elementName, $bgColor="", $fontColor="", $borderColor="", $shadowing="") +UpdateElementStyle($elementName, $bgColor, $fontColor, $borderColor, $shadowing) +!endprocedure + +' update the style of default relation, it has to set both properties (combined statement not working) +!unquoted procedure UpdateRelStyle($textColor, $lineColor) + !$elementSkin = "skinparam arrow {" + %newline() + !$elementSkin = $elementSkin + " Color " + $lineColor + %newline() + !$elementSkin = $elementSkin + " FontColor " + $textColor + %newline() + !$elementSkin = $elementSkin + "}" + %newline() +$elementSkin +!endprocedure + +' tags/stereotypes have to be delimited with \n +!unquoted procedure SetDefaultLegendEntries($tagStereoEntries) + !$tagDefaultLegend = $tagStereoEntries +!endprocedure + +' Links +' ################################## + +!function $getLink($link) + !if ($link != "") + !return "[[" + $link + "]]" + !else + !return "" + !endif +!endfunction + +' Line breaks +' ################################## + +!unquoted function $breakText($text, $usedNewLine, $widthStr="-1") +!$width = %intval($widthStr) +!$multiLine = "" +!if (%strpos($text, "\n") >= 0) + !while (%strpos($text, "\n") >= 0) + !$brPos = %strpos($text, "\n") + !if ($brPos > 0) + !$multiLine = $multiLine + %substr($text, 0, $brPos) + $usedNewLine + !else + ' non breaking change that newLine breaks with formats can be used with \n\n + !$multiLine = $multiLine + "" + $usedNewLine + !endif + !$text = %substr($text, $brPos+2) + !if (%strlen($text) == 0) + !$text = "" + !endif + !endwhile +!else + !while ($width>0 && %strlen($text) > $width) + !$brPos = $width + !while ($brPos > 0 && %substr($text, $brPos, 1) != ' ') + !$brPos = $brPos - 1 + !endwhile + + !if ($brPos < 1) + !$brPos = %strpos($text, " ") + !else + !endif + + !if ($brPos > 0) + !$multiLine = $multiLine + %substr($text, 0, $brPos) + $usedNewLine + !$text = %substr($text, $brPos + 1) + !else + !$multiLine = $multiLine+ $text + !$text = "" + !endif + !endwhile +!endif +!if (%strlen($text) > 0) + !$multiLine = $multiLine + $text +!endif +!return $multiLine +!endfunction + +!unquoted function $breakLabel($text) +!$usedNewLine = "\n== " +!$multiLine = $breakText($text, $usedNewLine) +!return $multiLine +!endfunction + +!unquoted function $breakDescr($text, $widthStr) + !$usedNewLine = "\n" + !return $breakText($text, $usedNewLine, $widthStr) +!endfunction + +' $breakTechn() supports //...//; $breakNode() in C4_Deployment supports no //....// +!unquoted function $breakTechn($text, $widthStr) + !$usedNewLine = '//\n//' + !return $breakText($text, $usedNewLine, $widthStr) +!endfunction + +' Element base layout +' ################################## + +!function $getElementBase($label, $techn, $descr, $sprite) + !$element = "" + !if ($sprite != "") + !$element = $element + $getSprite($sprite) + !if ($label != "") + !$element = $element + '\n' + !endif + !endif + !if ($label != "") + !$element = $element + '== ' + $breakLabel($label) + !else + !$element = $element + '.' + !endif + !if ($techn != "") + !$element = $element + '\n//[' + $breakTechn($techn, '-1') + ']//' + !endif + !if ($descr != "") + !$element = $element + '\n\n' + $descr + !endif + !return $element +!endfunction + +!function $getElementLine($umlShape, $elementType, $alias, $label, $techn, $descr, $sprite, $tags, $link) + !$sprite=$toElementArg($sprite, $tags, "ElementTagSprite", $elementType) + !$techn=$toElementArg($techn, $tags, "ElementTagTechn", $elementType) + !$baseProp = $getElementBase($label, $techn, $descr, $sprite) + $getProps() + !$stereo = $toStereos($elementType,$tags) + !$calcLink = $getLink($link) + + !$line = $umlShape + " " + %chr(34) + $baseProp + %chr(34) +" " + $stereo + " as " + $alias + $calcLink + !return $line +!endfunction + +' Element properties +' ################################## + +' collect all defined properties as table rows +!global $propTable = "" +!global $propTableCaption = "" +!global $propColCaption = "=" + +!unquoted function SetPropertyHeader($col1Name, $col2Name, $col3Name = "", $col4Name = "") + !$propColCaption = "" + !$propTableCaption = "|= " + $col1Name + " |= " + $col2Name + " |" + !if ($col3Name != "") + !$propTableCaption = $propTableCaption + "= " + $col3Name + " |" + !endif + !if ($col4Name != "") + !$propTableCaption = $propTableCaption + "= " + $col4Name + " |" + !endif + !return "" +!endfunction + +!unquoted function WithoutPropertyHeader() + !$propTableCaption = "" + !$propColCaption = "=" + !return "" +!endfunction + +!unquoted function AddProperty($col1, $col2, $col3 = "", $col4 = "") + !if ($propTable == "") + !if ($propTableCaption != "") + !$propTable = $propTableCaption + "\n" + !endif + !else + !$propTable = $propTable + "\n" + !endif + !$propTable = $propTable + "| " + $col1 + " |" + $propColCaption + " " + $col2 + " |" + !if ($col3 != "") + !$propTable = $propTable + " " + $col3 + " |" + !endif + !if ($col4 != "") + !$propTable = $propTable + " " + $col4 + " |" + !endif + !return "" +!endfunction + +!unquoted function $getProps($alignedNL = "\n") + !if ($propTable != "") + !$retTable = $alignedNL + $propTable + !$propTable = "" + !return $retTable + !endif + !return "" +!endfunction + +!unquoted function $getProps_L() + !return $getProps("\l") +!endfunction + +!unquoted function $getProps_R() + !return $getProps("\r") +!endfunction + +SetPropertyHeader("Property","Value") + +' Layout +' ################################## + +!function $getLegendDetailsSize($detailsFormat) + !if $detailsFormat == $LEGEND_DETAILS_NONE + !$size = 0 + !elseif $detailsFormat == $LEGEND_DETAILS_SMALL + !$size = $LEGEND_DETAILS_SMALL_SIZE + !else + !$size = $LEGEND_DETAILS_NORMAL_SIZE + !endif + !return $size +!endfunction + +!procedure $getHideStereotype($hideStereotype) +!if ($hideStereotype == "true") +hide stereotype +!endif +!endprocedure + +!procedure $getLegendTable($detailsFormat) +!global $LEGEND_DETAILS_SIZE = $getLegendDetailsSize($detailsFormat) +<$colorWithHash(transparent),$colorWithHash(transparent)>|**Legend** | +$showActiveLegendEntries($tagDefaultLegend) +$showActiveLegendEntries($tagCustomLegend) +!endprocedure + +!procedure $getLegendArea($areaAlias, $hideStereotype, $details) +$getHideStereotype($hideStereotype) +rectangle $areaAlias<> [ +$getLegendTable($details) +] +!endprocedure + +!procedure HIDE_STEREOTYPE() +hide stereotype +!endprocedure + +!unquoted procedure SET_SKETCH_STYLE($bgColor="_dont_change_", $fontColor="_dont_change_", $warningColor="_dont_change_", $fontName="_dont_change_", $footerWarning="_dont_change_", $footerText="_dont_change_") +!if $bgColor != "_dont_change_" + !global $SKETCH_BG_COLOR = $bgColor +!endif +!if $fontColor != "_dont_change_" + !global $SKETCH_FONT_COLOR = $fontColor +!endif +!if $warningColor != "_dont_change_" + !global $SKETCH_WARNING_COLOR = $warningColor +!endif +!if $fontName != "_dont_change_" + !global $SKETCH_FONT_NAME = $fontName +!endif +!if $footerWarning != "_dont_change_" + !global $SKETCH_FOOTER_WARNING = $footerWarning +!endif +!if $footerText != "_dont_change_" + !global $SKETCH_FOOTER_TEXT = $footerText +!endif +!endprocedure + +!procedure LAYOUT_AS_SKETCH() + skinparam handwritten true +!if $SKETCH_BG_COLOR > "" + skinparam backgroundColor $SKETCH_BG_COLOR +!endif +!if $SKETCH_FONT_COLOR > "" + skinparam footer { + FontColor $SKETCH_FONT_COLOR + } + !if $ARROW_COLOR == "#666666" + !global $ARROW_COLOR = $SKETCH_FONT_COLOR + !global $ARROW_FONT_COLOR = $SKETCH_FONT_COLOR + skinparam arrow { + Color $ARROW_COLOR + FontColor $ARROW_FONT_COLOR + } + !endif + !if $BOUNDARY_COLOR == "#444444" + !global $BOUNDARY_COLOR = $SKETCH_FONT_COLOR + skinparam rectangle<> { + FontColor $BOUNDARY_COLOR + BorderColor $BOUNDARY_COLOR + } + !endif +!endif +!if $SKETCH_FONT_NAMES > "" + skinparam defaultFontName $SKETCH_FONT_NAME +!endif +!if $SKETCH_FOOTER_WARNING > "" || $SKETCH_FOOTER_TEXT > "" + !$line = "footer "+ $SKETCH_FOOTER_WARNING + " " + $SKETCH_FOOTER_TEXT + $line +!endif +!endprocedure + +!global $fix_direction=%false() + +!function $down($start,$end) +!if ($fix_direction) +!return $start+"RIGHT"+$end +!else +!return $start+"DOWN"+$end +!endif +!endfunction + +!function $up($start,$end) +!if ($fix_direction) +!return $start+"LEFT"+$end +!else +!return $start+"UP"+$end +!endif +!endfunction + +!function $left($start,$end) +!if ($fix_direction) +!return $start+"UP"+$end +!else +!return $start+"LEFT"+$end +!endif +!endfunction + +!function $right($start,$end) +!if ($fix_direction) +!return $start+"DOWN"+$end +!else +!return $start+"RIGHT"+$end +!endif +!endfunction + +!procedure LAYOUT_TOP_DOWN() +!global $fix_direction=%false() +top to bottom direction +!endprocedure + +!procedure LAYOUT_LEFT_RIGHT() +!global $fix_direction = %false() +left to right direction +!endprocedure + +!procedure LAYOUT_LANDSCAPE() +!global $fix_direction = %true() +left to right direction +!endprocedure + +' legend details can displayed as Normal(), Small(), None() +!function None() +!return $LEGEND_DETAILS_NONE +!endfunction + +!function Normal() +!return $LEGEND_DETAILS_NORMAL +!endfunction + +!function Small() +!return $LEGEND_DETAILS_SMALL +!endfunction + +' has to be last call in diagram +!unquoted procedure SHOW_LEGEND($hideStereotype="true", $details=Small()) +$getHideStereotype($hideStereotype) +legend right +$getLegendTable($details) +endlegend +!endprocedure + +/' @deprecated in favor of SHOW_LEGEND '/ +!unquoted procedure SHOW_DYNAMIC_LEGEND($hideStereotype="true") +SHOW_LEGEND($hideStereotype) +!endprocedure + +' legend is reserved and cannot be uses as alias of SHOW_FLOATING_LEGEND() therefore +' LEGEND() is introduced. It returns the default name of the floating alias "floating_legend_alias" +' and can be used in the Lay_Distance() calls +!function LEGEND() +!return "floating_legend_alias" +!endfunction + +' enables that legend can be located in drawing area of the diagram. It has to be last call in diagram followed by Lay_Distance() +!unquoted procedure SHOW_FLOATING_LEGEND($alias=LEGEND(), $hideStereotype="true", $details=Small()) +$getLegendArea($alias, $hideStereotype, $details) +!endprocedure + +' Boundaries +' ################################## + +!unquoted procedure UpdateBoundaryStyle($elementName="", $bgColor="", $fontColor="", $borderColor="", $shadowing="", $shape="", $type="", $legendText="", $borderStyle="", $borderThickness="") + !if ($elementName != "") + !$elementBoundary = $elementName + '_boundary' + UpdateElementStyle($elementBoundary, $bgColor, $fontColor, $borderColor, $shadowing, $shape, "", $type, $legendText, "", $borderStyle, $borderThickness) + !else + UpdateElementStyle("boundary", $bgColor, $fontColor, $borderColor, $shadowing, $shape, "", $type, $legendText, "", $borderStyle, $borderThickness) + ' simulate color inheritance + UpdateBoundaryStyle("enterprise", $bgColor, $fontColor, $borderColor, $shadowing, $shape, "Enterprise", "", $borderStyle, $borderThickness) + UpdateBoundaryStyle("system", $bgColor, $fontColor, $borderColor, $shadowing, $shape, "System", "", $borderStyle, $borderThickness) + UpdateBoundaryStyle("container", $bgColor, $fontColor, $borderColor, $shadowing, $shape, "Container", "", $borderStyle, $borderThickness) + !endif +!endprocedure + +!unquoted procedure AddBoundaryTag($tagStereo, $bgColor="", $fontColor="", $borderColor="", $shadowing="", $shape="", $type="", $legendText="", $borderStyle="", $borderThickness="") + !$tagBoundary = $tagStereo + '_boundary' + AddElementTag($tagBoundary, $bgColor, $fontColor, $borderColor, $shadowing, $shape, "", $type, $legendText, "", $borderStyle, $borderThickness) +!endprocedure + +' add _boundary to all tags that short tag version can be used +!unquoted function $addBoundaryPostfix($tags) + !if (%strlen($tags) == 0) + !return '' + !endif + !$boundaryTags = '' + !$brPos = %strpos($tags, "+") + !while ($brPos >= 0) + !$tag = %substr($tags, 0, $brPos) + !$boundaryTags = $boundaryTags + $tag + '_boundary+' + !$tags = %substr($tags, $brPos+1) + !$brPos = %strpos($tags, "+") + !endwhile + !if (%strlen($tags) > 0) + !$boundaryTags = $boundaryTags + $tags + '_boundary' + !endif + !return $boundaryTags +!endfunction + +!function $getBoundary($label, $type) + !if ($type == "") + !return '== ' + $breakLabel($label) + !endif + !if (type != "") + !return '== ' + $breakLabel($label) + '\n[' + $type + ']' + !endif +!endfunction + +!unquoted procedure Boundary($alias, $label, $type="", $tags="", $link="") +!$boundaryTags = $addBoundaryPostfix($tags) +' nodes $type reuses $techn definition of $boundaryTags +!$type=$toElementArg($type, $boundaryTags, "ElementTagTechn", "boundary") +rectangle "$getBoundary($label, $type)" $toStereos("boundary", $boundaryTags) as $alias $getLink($link) +!endprocedure + +' Boundary Styling +UpdateBoundaryStyle("", $bgColor=$BOUNDARY_BG_COLOR, $fontColor=$BOUNDARY_COLOR, $borderColor=$BOUNDARY_COLOR, $borderStyle=DashedLine()) + +' Index +' ################################## + +' Dynamic/Sequence diagram supports (automatically) numbered interactions: +' preferred function calls +' (Uppercase) LastIndex(): return the last used index (function which can be used as argument) +' (Uppercase) Index($offset=1): returns current index and calculates next index (function which can be used as argument) +' (Uppercase) SetIndex($new_index): returns new set index and calculates next index (function which can be used as argument) + +' old procedures calls +' (lowercase) increment($offset=1): increase current index (procedure which has no direct output) +' (lowercase) setIndex($new_index): set the new index (procedure which has no direct output) + +!$lastIndex = 0 +!$index = 1 + +!procedure increment($offset=1) + !$lastIndex = $index + !$index = $index + $offset +!endprocedure + +!procedure setIndex($new_index) + !$lastIndex = $index + !$index = $new_index +!endprocedure + +!function Index($offset=1) + !$lastIndex = $index + !$index = $lastIndex + $offset + !return $lastIndex +!endfunction + +!function LastIndex() + !return $lastIndex +!endfunction + +!function SetIndex($new_index, $offset=1) + !$lastIndex = $new_index + !$index = $new_index + $offset + !return $lastIndex +!endfunction + +!unquoted function $getPrefix($index) + !if ($index == "") + !$pre = Index() + ": " + !else + !$pre = $index + ": " + !endif + !return $pre +!endfunction + +' Relationship +' ################################## + +!function $getRel($direction, $alias1, $alias2, $label, $techn, $descr, $sprite, $tags, $link) + !$sprite = $toRelArg($sprite, $tags, "RelTagSprite") + !$techn = $toRelArg($techn, $tags, "RelTagTechn") + !$rel = $alias1 + ' ' + $direction + ' ' + $alias2 + !if ($tags != "") + !$rel = $rel + ' ' + $toStereos($tags) + !endif + !$rel = $rel + ' : ' + !if ($link != "") + !$rel = $rel + '**[[' + $link + ' ' + !endif + !if ($sprite != "") + !$rel = $rel + $getSprite($sprite) + !if ($label != "") + !$rel = $rel + ' ' + !endif + !endif + !if ($link != "") + !$usedNewLine = ']]**\n**[[' + $link + ' ' + ' if sprite and label is empty than the link url is shown (otherwise link cannot be activated at all) + !$rel = $rel + $breakText($label, $usedNewLine) + ']]**' + !else + !if ($label != "") + !$usedNewLine = '**\n**' + !$rel = $rel + '**' + $breakText($label, $usedNewLine) + '**' + !else + !$rel = $rel + '.' + !endif + !endif + !if ($techn != "") + ' line break is not deterministic, calculate it + !$rel = $rel + '\n//[' + $breakTechn($techn, $REL_TECHN_MAX_CHAR_WIDTH) + ']//' + !endif + !if ($descr != "") + ' line break is not deterministic, calculate it + !$rel = $rel + '\n\n' + $breakDescr($descr, $REL_DESCR_MAX_CHAR_WIDTH) + !endif + !$prop = $getProps() + !if ($prop != "") + ' reuse table + !$rel = $rel + $prop + !endif + !return $rel +!endfunction + +!unquoted procedure Rel_($alias1, $alias2, $label, $direction) +$getRel($direction, $alias1, $alias2, $label, "", "", "", "", "") +!endprocedure +!unquoted procedure Rel_($alias1, $alias2, $label, $techn, $direction) +$getRel($direction, $alias1, $alias2, $label, $techn, "", "", "", "") +!endprocedure + +!unquoted procedure Rel($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel("-->>", $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure BiRel($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel("<<-->>", $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure Rel_Back($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel("<<--", $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure Rel_Neighbor($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel("->>", $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure BiRel_Neighbor($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel("<<->>", $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure Rel_Back_Neighbor($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel("<<-", $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure Rel_D($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel($down("-","->>"), $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure +!unquoted procedure Rel_Down($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel($down("-","->>"), $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure BiRel_D($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel($down("<<-","->>"), $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure +!unquoted procedure BiRel_Down($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel($down("<<-","->>"), $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure Rel_U($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel($up("-","->>"), $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure +!unquoted procedure Rel_Up($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel($up("-","->>"), $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure BiRel_U($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel($up("<<-","->>"), $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure +!unquoted procedure BiRel_Up($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel($up("<<-","->>"), $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure Rel_L($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel($left("-","->>"), $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure +!unquoted procedure Rel_Left($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel($left("-","->>"), $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure BiRel_L($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel($left("<<-","->>"), $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure +!unquoted procedure BiRel_Left($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel($left("<<-","->>"), $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure Rel_R($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel($right("-","->>"), $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure +!unquoted procedure Rel_Right($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel($right("-","->>"), $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure BiRel_R($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel($right("<<-","->>"), $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure +!unquoted procedure BiRel_Right($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +$getRel($right("<<-","->>"), $from, $to, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +' Layout Helpers +' ################################## + +!function $getHiddenLine($distance) + !return '-[hidden]' + %substr('------------', 0, %intval($distance) + 1) +!endfunction + +!unquoted procedure Lay_D($from, $to) +$from -[hidden]D- $to +!endprocedure +!unquoted procedure Lay_Down($from, $to) +$from -[hidden]D- $to +!endprocedure + +!unquoted procedure Lay_U($from, $to) +$from -[hidden]U- $to +!endprocedure +!unquoted procedure Lay_Up($from, $to) +$from -[hidden]U- $to +!endprocedure + +!unquoted procedure Lay_R($from, $to) +$from -[hidden]R- $to +!endprocedure +!unquoted procedure Lay_Right($from, $to) +$from -[hidden]R- $to +!endprocedure + +!unquoted procedure Lay_L($from, $to) +$from -[hidden]L- $to +!endprocedure +!unquoted procedure Lay_Left($from, $to) +$from -[hidden]L- $to +!endprocedure + +' PlantUML bug: lines which does "not match" with the orientation/direction of the diagram +' use the same length therefore the method offers no direction at all. +' If a direction is required the Lay_...() methods can be used +!unquoted procedure Lay_Distance($from, $to, $distance="0") +$from $getHiddenLine($distance) $to +!endprocedure \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/.c4s/C4_Component.puml b/Samples/ToDoApp/Diagrams/.c4s/C4_Component.puml new file mode 100644 index 000000000..36cb0f2dc --- /dev/null +++ b/Samples/ToDoApp/Diagrams/.c4s/C4_Component.puml @@ -0,0 +1,83 @@ +' convert it with additional command line argument -DRELATIVE_INCLUDE="relative/absolute" to use locally +!if %variable_exists("RELATIVE_INCLUDE") + !include ./C4_Container.puml +!else + !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Container.puml +!endif + +' Scope: A single container. +' Primary elements: Components within the container in scope. +' Supporting elements: Containers (within the software system in scope) plus people and software systems directly connected to the components. +' Intended audience: Software architects and developers. + +' Colors +' ################################## + +!$COMPONENT_FONT_COLOR ?= "#000000" +!$COMPONENT_BG_COLOR ?= "#85BBF0" +!$COMPONENT_BORDER_COLOR ?= "#78A8D8" + +!$EXTERNAL_COMPONENT_FONT_COLOR ?= $COMPONENT_FONT_COLOR +!$EXTERNAL_COMPONENT_BG_COLOR ?= "#CCCCCC" +!$EXTERNAL_COMPONENT_BORDER_COLOR ?= "#BFBFBF" + +' Styling +' ################################## + +UpdateElementStyle("component", $COMPONENT_BG_COLOR, $COMPONENT_FONT_COLOR, $COMPONENT_BORDER_COLOR) +UpdateElementStyle("external_component", $EXTERNAL_COMPONENT_BG_COLOR, $EXTERNAL_COMPONENT_FONT_COLOR, $EXTERNAL_COMPONENT_BORDER_COLOR) + +' shortcuts with default colors +!unquoted procedure AddComponentTag($tagStereo, $bgColor="", $fontColor="", $borderColor="", $shadowing="", $shape="", $sprite="", $techn="", $legendText="", $legendSprite="", $borderStyle="", $borderThickness="") + $addElementTagInclReuse("component", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, $shape, $sprite, $techn, $legendText, $legendSprite, $borderStyle, $borderThickness) +!endprocedure +!unquoted procedure AddExternalComponentTag($tagStereo, $bgColor="", $fontColor="", $borderColor="", $shadowing="", $shape="", $sprite="", $techn="", $legendText="", $legendSprite="", $borderStyle="", $borderThickness="") + $addElementTagInclReuse("external_component", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, $shape, $sprite, $techn, $legendText, $legendSprite, $borderStyle, $borderThickness) +!endprocedure + +' Layout +' ################################## + +SetDefaultLegendEntries("person\nsystem\ncontainer\ncomponent\nexternal_person\nexternal_system\nexternal_container\nexternal_component\nenterprise_boundary\nsystem_boundary\ncontainer_boundary\nboundary") + +!procedure LAYOUT_WITH_LEGEND() +hide stereotype +legend right +|**Legend** | +|<$PERSON_BG_COLOR> person | +|<$SYSTEM_BG_COLOR> system | +|<$CONTAINER_BG_COLOR> container | +|<$COMPONENT_BG_COLOR> component | +|<$EXTERNAL_PERSON_BG_COLOR> external person | +|<$EXTERNAL_SYSTEM_BG_COLOR> external system | +|<$EXTERNAL_CONTAINER_BG_COLOR> external container | +|<$EXTERNAL_COMPONENT_BG_COLOR> external component | +endlegend +!endprocedure + +' Elements +' ################################## + +!unquoted procedure Component($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="", $baseShape="rectangle") + $getElementLine($baseShape, "component", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure ComponentDb($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="") + $getElementLine("database", "component", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure ComponentQueue($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="") + $getElementLine("queue", "component", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure Component_Ext($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="", $baseShape="rectangle") + $getElementLine($baseShape, "external_component", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure ComponentDb_Ext($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="") + $getElementLine("database", "external_component", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure ComponentQueue_Ext($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="") + $getElementLine("queue", "external_component", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/.c4s/C4_Container.puml b/Samples/ToDoApp/Diagrams/.c4s/C4_Container.puml new file mode 100644 index 000000000..1879ed0d0 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/.c4s/C4_Container.puml @@ -0,0 +1,103 @@ +' convert it with additional command line argument -DRELATIVE_INCLUDE="relative/absolute" to use locally +!if %variable_exists("RELATIVE_INCLUDE") + !include ./C4_Context.puml +!else + !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Context.puml +!endif + +' Scope: A single software system. +' Primary elements: Containers within the software system in scope. +' Supporting elements: People and software systems directly connected to the containers. +' Intended audience: Technical people inside and outside of the software development team; including software architects, developers and operations/support staff. + +' Colors +' ################################## + +!$CONTAINER_FONT_COLOR ?= $ELEMENT_FONT_COLOR +!$CONTAINER_BG_COLOR ?= "#438DD5" +!$CONTAINER_BORDER_COLOR ?= "#3C7FC0" + +!$CONTAINER_BOUNDARY_COLOR ?= $BOUNDARY_COLOR +!$CONTAINER_BOUNDARY_BG_COLOR ?= $BOUNDARY_BG_COLOR +!$CONTAINER_BOUNDARY_BORDER_STYLE ?= $BOUNDARY_BORDER_STYLE + +!$EXTERNAL_CONTAINER_FONT_COLOR ?= $ELEMENT_FONT_COLOR +!$EXTERNAL_CONTAINER_BG_COLOR ?= "#B3B3B3" +!$EXTERNAL_CONTAINER_BORDER_COLOR ?= "#A6A6A6" + +' Styling +' ################################## +UpdateElementStyle("container", $CONTAINER_BG_COLOR, $CONTAINER_FONT_COLOR, $CONTAINER_BORDER_COLOR) +UpdateElementStyle("external_container", $EXTERNAL_CONTAINER_BG_COLOR, $EXTERNAL_CONTAINER_FONT_COLOR, $EXTERNAL_CONTAINER_BORDER_COLOR) + +UpdateBoundaryStyle("container", $bgColor=$CONTAINER_BOUNDARY_BG_COLOR, $fontColor=$CONTAINER_BOUNDARY_COLOR, $borderColor=$CONTAINER_BOUNDARY_COLOR, $type="Container") + +' shortcuts with default colors +!unquoted procedure AddContainerTag($tagStereo, $bgColor="", $fontColor="", $borderColor="", $shadowing="", $shape="", $sprite="", $techn="", $legendText="", $legendSprite="", $borderStyle="", $borderThickness="") + $addElementTagInclReuse("container", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, $shape, $sprite, $techn, $legendText, $legendSprite, $borderStyle, $borderThickness) +!endprocedure +!unquoted procedure AddExternalContainerTag($tagStereo, $bgColor="", $fontColor="", $borderColor="", $shadowing="", $shape="", $sprite="", $techn="", $legendText="", $legendSprite="", $borderStyle="", $borderThickness="") + $addElementTagInclReuse("external_container", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, $shape, $sprite, $techn, $legendText, $legendSprite, $borderStyle, $borderThickness) +!endprocedure + +!unquoted procedure UpdateContainerBoundaryStyle($bgColor=$CONTAINER_BOUNDARY_BG_COLOR, $fontColor=$CONTAINER_BOUNDARY_COLOR, $borderColor=$CONTAINER_BOUNDARY_COLOR, $shadowing="", $shape="", $type="Container", $legendText="", $borderStyle="", $borderThickness="") + UpdateBoundaryStyle("container", $bgColor, $fontColor, $borderColor, $shadowing, $shape, $type, $legendText, $borderStyle, $borderThickness) +!endprocedure + +' Layout +' ################################## + +SetDefaultLegendEntries("person\nsystem\ncontainer\nexternal_person\nexternal_system\nexternal_container\nenterprise_boundary\nsystem_boundary\ncontainer_boundary\nboundary") + +!procedure LAYOUT_WITH_LEGEND() +hide stereotype +legend right +|**Legend** | +|<$PERSON_BG_COLOR> person | +|<$SYSTEM_BG_COLOR> system | +|<$CONTAINER_BG_COLOR> container | +|<$EXTERNAL_PERSON_BG_COLOR> external person | +|<$EXTERNAL_SYSTEM_BG_COLOR> external system | +|<$EXTERNAL_CONTAINER_BG_COLOR> external container | +endlegend +!endprocedure + +' Elements +' ################################## + +!unquoted procedure Container($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="", $baseShape="rectangle") + $getElementLine($baseShape , "container", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure ContainerDb($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="") + $getElementLine("database", "container", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure ContainerQueue($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="") + $getElementLine("queue", "container", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure Container_Ext($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="", $baseShape="rectangle") + $getElementLine($baseShape , "external_container", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure ContainerDb_Ext($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="") + $getElementLine("database", "external_container", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure ContainerQueue_Ext($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="") + $getElementLine("queue", "external_container", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +' Boundaries +' ################################## + +!unquoted procedure Container_Boundary($alias, $label, $tags="", $link="") + !if ($tags != "") + !$allTags = $tags + '+container' + !else + !$allTags = 'container' + !endif + ' $type defined via $tag style + Boundary($alias, $label, "", $allTags, $link) +!endprocedure \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/.c4s/C4_Context.puml b/Samples/ToDoApp/Diagrams/.c4s/C4_Context.puml new file mode 100644 index 000000000..1a716fd54 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/.c4s/C4_Context.puml @@ -0,0 +1,434 @@ +' convert it with additional command line argument -DRELATIVE_INCLUDE="relative/absolute" to use locally +!if %variable_exists("RELATIVE_INCLUDE") + !include ./C4.puml +!else + !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4.puml +!endif + +' Scope: A single software system. +' Primary elements: The software system in scope. +' Supporting elements: People and software systems directly connected to the software system in scope. +' Intended audience: Everybody, both technical and non-technical people, inside and outside of the software development team. + +' Colors +' ################################## + +!$PERSON_FONT_COLOR ?= $ELEMENT_FONT_COLOR +!$PERSON_BG_COLOR ?= "#08427B" +!$PERSON_BORDER_COLOR ?= "#073B6F" + +!$EXTERNAL_PERSON_FONT_COLOR ?= $ELEMENT_FONT_COLOR +!$EXTERNAL_PERSON_BG_COLOR ?= "#686868" +!$EXTERNAL_PERSON_BORDER_COLOR ?= "#8A8A8A" + +!$SYSTEM_FONT_COLOR ?= $ELEMENT_FONT_COLOR +!$SYSTEM_BG_COLOR ?= "#1168BD" +!$SYSTEM_BORDER_COLOR ?= "#3C7FC0" + +!$SYSTEM_BOUNDARY_COLOR ?= $BOUNDARY_COLOR +!$SYSTEM_BOUNDARY_BG_COLOR ?= $BOUNDARY_BG_COLOR +!$SYSTEM_BOUNDARY_BORDER_STYLE ?= $BOUNDARY_BORDER_STYLE + +!$EXTERNAL_SYSTEM_FONT_COLOR ?= $ELEMENT_FONT_COLOR +!$EXTERNAL_SYSTEM_BG_COLOR ?= "#999999" +!$EXTERNAL_SYSTEM_BORDER_COLOR ?= "#8A8A8A" + +!$ENTERPRISE_BOUNDARY_COLOR ?= $BOUNDARY_COLOR +!$ENTERPRISE_BOUNDARY_BG_COLOR ?= $BOUNDARY_BG_COLOR +!$ENTERPRISE_BOUNDARY_BORDER_STYLE ?= $BOUNDARY_BORDER_STYLE + +' Styling +' ################################## + +UpdateElementStyle("person", $PERSON_BG_COLOR, $PERSON_FONT_COLOR, $PERSON_BORDER_COLOR) +UpdateElementStyle("external_person", $EXTERNAL_PERSON_BG_COLOR, $EXTERNAL_PERSON_FONT_COLOR, $EXTERNAL_PERSON_BORDER_COLOR) +UpdateElementStyle("system", $SYSTEM_BG_COLOR, $SYSTEM_FONT_COLOR, $SYSTEM_BORDER_COLOR) +UpdateElementStyle("external_system", $EXTERNAL_SYSTEM_BG_COLOR, $EXTERNAL_SYSTEM_FONT_COLOR, $EXTERNAL_SYSTEM_BORDER_COLOR) + +UpdateBoundaryStyle("system", $bgColor=$SYSTEM_BOUNDARY_BG_COLOR, $fontColor=$SYSTEM_BOUNDARY_COLOR, $borderColor=$SYSTEM_BOUNDARY_COLOR, $type="System") +UpdateBoundaryStyle("enterprise", $bgColor=$ENTERPRISE_BOUNDARY_BG_COLOR, $fontColor=$ENTERPRISE_BOUNDARY_COLOR, $borderColor=$ENTERPRISE_BOUNDARY_COLOR, $type="Enterprise") + +' shortcuts with default colors +!unquoted procedure AddPersonTag($tagStereo, $bgColor="", $fontColor="", $borderColor="", $shadowing="", $shape="", $sprite="", $legendText="", $legendSprite="", $type="", $borderStyle="", $borderThickness="") + $addElementTagInclReuse("person", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, $shape, $sprite, $type, $legendText, $legendSprite, $borderStyle, $borderThickness) +!endprocedure +!unquoted procedure AddExternalPersonTag($tagStereo, $bgColor="", $fontColor="", $borderColor="", $shadowing="", $shape="", $sprite="", $legendText="", $legendSprite="", $type="", $borderStyle="", $borderThickness="") + $addElementTagInclReuse("external_person", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, $shape, $sprite, $type, $legendText, $legendSprite, $borderStyle, $borderThickness) +!endprocedure +!unquoted procedure AddSystemTag($tagStereo, $bgColor="", $fontColor="", $borderColor="", $shadowing="", $shape="", $sprite="", $legendText="", $legendSprite="", $type="", $borderStyle="", $borderThickness="") + $addElementTagInclReuse("system", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, $shape, $sprite, $type, $legendText, $legendSprite, $borderStyle, $borderThickness) +!endprocedure +!unquoted procedure AddExternalSystemTag($tagStereo, $bgColor="", $fontColor="", $borderColor="", $shadowing="", $shape="", $sprite="", $legendText="", $legendSprite="", $type="", $borderStyle="", $borderThickness="") + $addElementTagInclReuse("external_system", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, $shape, $sprite, $type, $legendText, $legendSprite, $borderStyle, $borderThickness) +!endprocedure + +!unquoted procedure UpdateEnterpriseBoundaryStyle($bgColor=$ENTERPRISE_BOUNDARY_BG_COLOR, $fontColor=$ENTERPRISE_BOUNDARY_COLOR, $borderColor=$ENTERPRISE_BOUNDARY_COLOR, $shadowing="", $shape="", $type="Enterprise", $legendText="", $borderStyle="", $borderThickness="") + UpdateBoundaryStyle("enterprise", $bgColor, $fontColor, $borderColor, $shadowing, $shape, $type, $legendText, $borderStyle, $borderThickness) +!endprocedure +!unquoted procedure UpdateSystemBoundaryStyle($bgColor=$SYSTEM_BOUNDARY_BG_COLOR, $fontColor=$SYSTEM_BOUNDARY_COLOR, $borderColor=$SYSTEM_BOUNDARY_COLOR, $shadowing="", $shape="", $type="System", $legendText="", $borderStyle="", $borderThickness="") + UpdateBoundaryStyle("system", $bgColor, $fontColor, $borderColor, $shadowing, $shape, $type, $legendText, $borderStyle, $borderThickness) +!endprocedure + +' Sprites +' ################################## + +sprite $person [48x48/16] { +000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000 +0000000000000000000049BCCA7200000000000000000000 +0000000000000000006EFFFFFFFFB3000000000000000000 +00000000000000001CFFFFFFFFFFFF700000000000000000 +0000000000000001EFFFFFFFFFFFFFF80000000000000000 +000000000000000CFFFFFFFFFFFFFFFF6000000000000000 +000000000000007FFFFFFFFFFFFFFFFFF100000000000000 +00000000000001FFFFFFFFFFFFFFFFFFF900000000000000 +00000000000006FFFFFFFFFFFFFFFFFFFF00000000000000 +0000000000000BFFFFFFFFFFFFFFFFFFFF40000000000000 +0000000000000EFFFFFFFFFFFFFFFFFFFF70000000000000 +0000000000000FFFFFFFFFFFFFFFFFFFFF80000000000000 +0000000000000FFFFFFFFFFFFFFFFFFFFF80000000000000 +0000000000000DFFFFFFFFFFFFFFFFFFFF60000000000000 +0000000000000AFFFFFFFFFFFFFFFFFFFF40000000000000 +00000000000006FFFFFFFFFFFFFFFFFFFE00000000000000 +00000000000000EFFFFFFFFFFFFFFFFFF800000000000000 +000000000000007FFFFFFFFFFFFFFFFFF100000000000000 +000000000000000BFFFFFFFFFFFFFFFF5000000000000000 +0000000000000001DFFFFFFFFFFFFFF70000000000000000 +00000000000000000BFFFFFFFFFFFF500000000000000000 +0000000000000000005DFFFFFFFFA1000000000000000000 +0000000000000000000037ABB96100000000000000000000 +000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000 +000000000000025788300000000005886410000000000000 +000000000007DFFFFFFD9643347BFFFFFFFB400000000000 +0000000004EFFFFFFFFFFFFFFFFFFFFFFFFFFB1000000000 +000000007FFFFFFFFFFFFFFFFFFFFFFFFFFFFFD200000000 +00000006FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE10000000 +0000003FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB0000000 +000000BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5000000 +000003FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD000000 +000009FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF200000 +00000DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF600000 +00000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF800000 +00001FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA00000 +00001FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB00000 +00001FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB00000 +00001FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB00000 +00001FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA00000 +00000EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF700000 +000006FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE100000 +0000008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD3000000 +000000014555555555555555555555555555555300000000 +000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000 +} + +sprite $person2 [48x48/16] { +0000000000000000000049BCCA7200000000000000000000 +0000000000000000006EFFFFFFFFB3000000000000000000 +00000000000000001CFFFFFFFFFFFF700000000000000000 +0000000000000001EFFFFFFFFFFFFFF80000000000000000 +000000000000000CFFFFFFFFFFFFFFFF6000000000000000 +000000000000007FFFFFFFFFFFFFFFFFF100000000000000 +00000000000001FFFFFFFFFFFFFFFFFFF900000000000000 +00000000000006FFFFFFFFFFFFFFFFFFFF00000000000000 +0000000000000BFFFFFFFFFFFFFFFFFFFF40000000000000 +0000000000000EFFFFFFFFFFFFFFFFFFFF70000000000000 +0000000000000FFFFFFFFFFFFFFFFFFFFF80000000000000 +0000000000000FFFFFFFFFFFFFFFFFFFFF80000000000000 +0000000000000DFFFFFFFFFFFFFFFFFFFF60000000000000 +0000000000000AFFFFFFFFFFFFFFFFFFFF40000000000000 +00000000000006FFFFFFFFFFFFFFFFFFFE00000000000000 +00000000000000EFFFFFFFFFFFFFFFFFF800000000000000 +000000000000007FFFFFFFFFFFFFFFFFF100000000000000 +000000000000000BFFFFFFFFFFFFFFFF5000000000000000 +0000000000000001DFFFFFFFFFFFFFF70000000000000000 +00000000000000000BFFFFFFFFFFFF500000000000000000 +0000000000000000005DFFFFFFFFA1000000000000000000 +0000000000000000000037ABB96100000000000000000000 +000000000002578888300000000005888864100000000000 +0000000007DFFFFFFFFD9643347BFFFFFFFFFB4000000000 +00000004EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB10000000 +0000007FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD2000000 +000006FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE100000 +00003FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB00000 +0000BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50000 +0003FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0000 +0009FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF2000 +000DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6000 +000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8000 +001FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB000 +001FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB000 +001FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB000 +001FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA000 +000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8000 +000DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6000 +0009FFFFFFFF8FFFFFFFFFFFFFFFFFFFFFF8FFFFFFFF2000 +0003FFFFFFFF8FFFFFFFFFFFFFFFFFFFFFF8FFFFFFFD0000 +0000BFFFFFFF8FFFFFFFFFFFFFFFFFFFFFF8FFFFFFF50000 +00003FFFFFFF8FFFFFFFFFFFFFFFFFFFFFF8FFFFFFB00000 +000006FFFFFF8FFFFFFFFFFFFFFFFFFFFFF8FFFFFE100000 +0000007FFFFF8FFFFFFFFFFFFFFFFFFFFFF8FFFFD2000000 +00000004EFFF8FFFFFFFFFFFFFFFFFFFFFF8FFFB10000000 +0000000007DF8FFFFFFFFFFFFFFFFFFFFFF8FB4000000000 +000000000002578888888888888888888864100000000000 +} + +sprite $robot [48x48/16] { +000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000 +000000000005BFFFFFFFFFFFFFFFFFFFFFE9100000000000 +0000000000AFFFFFFFFFFFFFFFFFFFFFFFFFE30000000000 +0000000007FFFFFFFFFFFFFFFFFFFFFFFFFFFE1000000000 +000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFF8000000000 +000000004FFFFFFFFFFFFFFFFFFFFFFFFFFFFFC000000000 +000000005FFFFFFFFFFFFFFFFFFFFFFFFFFFFFD000000000 +000000005FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE000000000 +000000005FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE000000000 +000699405FFFFFFC427FFFFFFFFFC427FFFFFFE009982000 +008FFF705FFFFFE10006FFFFFFFE00007FFFFFE00FFFF100 +00CFFF705FFFFFA00001FFFFFFF900002FFFFFE00FFFF500 +00DFFF705FFFFFB00002FFFFFFFA00003FFFFFE00FFFF500 +00DFFF705FFFFFF4000AFFFFFFFF3000BFFFFFE00FFFF500 +00DFFF705FFFFFFFA8DFFFFFFFFFFA8DFFFFFFE00FFFF500 +00DFFF705FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE00FFFF500 +00DFFF705FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE00FFFF500 +00DFFF705FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE00FFFF500 +00DFFF705FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE00FFFF500 +00DFFF705FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE00FFFF500 +00CFFF705FFFFFF87777777777777777CFFFFFE00FFFF500 +008FFF705FFFFFF100000000000000009FFFFFE00FFFF100 +000699405FFFFFF76666666666666666CFFFFFE009982000 +000000005FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE000000000 +000000005FFFFFFFFFFFFFFFFFFFFFFFFFFFFFE000000000 +000000004FFFFFFFFFFFFFFFFFFFFFFFFFFFFFC000000000 +000000000EFFFFFFFFFFFFFFFFFFFFFFFFFFFF7000000000 +0000000005FFFFFFFFFFFFFFFFFFFFFFFFFFFD0000000000 +00000000004CFFFFFFFFFFFFFFFFFFFFFFFF910000000000 +000000000000011111111111111111111110000000000000 +000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000 +} + +sprite $robot2 [48x48/16] { +000000000000000088888888888888880000000000000000 +000000000000000AFFFFFFFFFFFFFFFFA000000000000000 +00000000000000CFFFFFFFFFFFFFFFFFFC00000000000000 +00000000000004EFFFFFFFFFFFFFFFFFFE40000000000000 +0000000000000AFFFFFFFFFFFFFFFFFFFFA0000000000000 +00000000000008FFFFFFFFFFFFFFFFFFFF80000000000000 +00000000000008FFFFFFFFFFFFFFFFFFFF80000000000000 +00000000000008FFFFFFFFFFFFFFFFFFFF80000000000000 +00000000000888FFFFFFFFFFFFFFFFFFFF88800000000000 +00000000008FF8FFFFFFFFFFFFFFFFFFFF8FF80000000000 +00000000008FF8FFFFFFFFFFFFFFFFFFFF8FF80000000000 +00000000008FF8FFFFFFFFFFFFFFFFFFFF8FF80000000000 +00000000008FF8FFFFFFFFFFFFFFFFFFFF8FF80000000000 +00000000008FF8FFFFFFFFFFFFFFFFFFFF8FF80000000000 +00000000008FF8FFFFFFFFFFFFFFFFFFFF8FF80000000000 +00000000000888FFFFFFFFFFFFFFFFFFFF88800000000000 +00000000000008FFFFFFFFFFFFFFFFFFFF80000000000000 +00000000000008FFFFFFFFFFFFFFFFFFFF80000000000000 +00000000000008FFFFFFFFFFFFFFFFFFFF80000000000000 +00000000000008FFFFFFFFFFFFFFFFFFFF80000000000000 +00000000000008FFFFFFFFFFFFFFFFFFFF80000000000000 +00000000000004CFFFFFFFFFFFFFFFFFFC40000000000000 +000000488888848CFFFFFFFFFFFFFFFFC848888884000000 +00000CFFFFFFFFC888888888888888888CFFFFFFFFC00000 +00008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80000 +0000CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0000 +0008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8000 +0008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8000 +0008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8000 +0008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8000 +0008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8000 +0008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8000 +0008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8000 +0008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8000 +0008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8000 +0008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8000 +0008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8000 +0008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8000 +0008FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8000 +0008FFFFFFFF8FFFFFFFFFFFFFFFFFFFFFF8FFFFFFFF8000 +0008FFFFFFFF8FFFFFFFFFFFFFFFFFFFFFF8FFFFFFFF8000 +0008FFFFFFFF8FFFFFFFFFFFFFFFFFFFFFF8FFFFFFFF8000 +0008FFFFFFFF8FFFFFFFFFFFFFFFFFFFFFF8FFFFFFFF8000 +0000CFFFFFFF8FFFFFFFFFFFFFFFFFFFFFF8FFFFFFFC0000 +00008FFFFFFF8FFFFFFFFFFFFFFFFFFFFFF8FFFFFFF80000 +00000CFFFFFF8FFFFFFFFFFFFFFFFFFFFFF8FFFFFFC00000 +000000488887578888888888888888888864688884000000 +000000000000000000000000000000000000000000000000 +} + +' Layout +' ################################## + +SetDefaultLegendEntries("person\nsystem\nexternal_person\nexternal_system\nenterprise_boundary\nsystem_boundary\nboundary") + +!procedure LAYOUT_WITH_LEGEND() +hide stereotype +legend right +|**Legend** | +|<$PERSON_BG_COLOR> person | +|<$SYSTEM_BG_COLOR> system| +|<$EXTERNAL_PERSON_BG_COLOR> external person | +|<$EXTERNAL_SYSTEM_BG_COLOR> external system | +endlegend +!endprocedure + +!global $defaultPersonSprite = "person" +!$dummy = $restoreEmpty("person", "sprite", $defaultPersonSprite, %true()) +UpdateElementStyle("person") +' workaround of plantuml.jar bug - person overwrites external_person setting +!$dummy = $restoreEmpty("external_person", "sprite", $defaultPersonSprite, %true()) +UpdateElementStyle("external_person") +!global $portraitPerson = "false" + +!procedure $clearPersonRestore() + !$dummy = $clearRestore("person", "sprite") + !$dummy = $clearRestore("person", "legendSprite") + %set_variable_value("$" + "person" + "ElementTagSprite", "") + UpdateElementStyle("person") + ' workaround of plantuml.jar bug - person overwrites external_person setting + !$dummy = $clearRestore("external_person", "sprite") + !$dummy = $clearRestore("external_person", "legendSprite") + %set_variable_value("$" + "external_person" + "ElementTagSprite", "") + UpdateElementStyle("external_person") +!endprocedure + +!procedure HIDE_PERSON_SPRITE() + !$defaultPersonSprite = "" + !$portraitPerson = "false" + $clearPersonRestore() +!endprocedure + +!unquoted procedure SHOW_PERSON_SPRITE($sprite="") + !if ($sprite == "") + !$defaultPersonSprite = "person" + !else + !$defaultPersonSprite = $sprite + !endif + !$dummy = $restoreEmpty("person", "sprite", $defaultPersonSprite, %true()) + UpdateElementStyle("person") + ' workaround of plantuml.jar bug - person overwrites external_person setting + !$dummy = $restoreEmpty("external_person", "sprite", $defaultPersonSprite, %true()) + UpdateElementStyle("external_person") + !$portraitPerson = "false" +!endprocedure + +!unquoted procedure SHOW_PERSON_PORTRAIT() + !$defaultPersonSprite = "" + !$portraitPerson = "portrait" + $clearPersonRestore() +!endprocedure + +!unquoted procedure SHOW_PERSON_OUTLINE() + !$defaultPersonSprite = "" + !$portraitPerson = "outline" + $clearPersonRestore() +!endprocedure + +' Elements +' ################################## + +!function $getPerson($label, $type, $descr, $sprite) + !if ($sprite == "") && ($defaultPersonSprite != "") + !$sprite = $defaultPersonSprite + !endif + !return $getElementBase($label, $type, $descr, $sprite) +!endfunction + +!unquoted procedure Person($alias, $label, $descr="", $sprite="", $tags="", $link="", $type="") +!$sprite=$toElementArg($sprite, $tags, "ElementTagSprite", "person") +' $type reuses $techn definition of $tags +!$type=$toElementArg($type, $tags, "ElementTagTechn", "person") +!if ($portraitPerson == "portrait") && ($sprite == "") +actor "$getPerson($label, $type, $descr, $sprite)$getProps()" $toStereos("person", $tags) as $alias $getLink($link) +!elseif ($portraitPerson == "outline") && ($sprite == "") +person "$getPerson($label, $type, $descr, $sprite)$getProps()" $toStereos("person", $tags) as $alias $getLink($link) +!else +rectangle "$getPerson($label, $type, $descr, $sprite)$getProps()" $toStereos("person", $tags) as $alias $getLink($link) +!endif +!endprocedure + +!unquoted procedure Person_Ext($alias, $label, $descr="", $sprite="", $tags="", $link="", $type="") +!$sprite=$toElementArg($sprite, $tags, "ElementTagSprite", "external_person") +' $type reuses $techn definition of $tags +!$type=$toElementArg($type, $tags, "ElementTagTechn", "external_person") +!if ($portraitPerson == "portrait") && ($sprite == "") +actor "$getPerson($label, $type, $descr, $sprite)$getProps()" $toStereos("external_person", $tags) as $alias $getLink($link) +!elseif ($portraitPerson == "outline") && ($sprite == "") +person "$getPerson($label, $type, $descr, $sprite)$getProps()" $toStereos("external_person", $tags) as $alias $getLink($link) +!else +rectangle "$getPerson($label, $type, $descr, $sprite)$getProps()" $toStereos("external_person", $tags) as $alias $getLink($link) +!endif +!endprocedure + +!unquoted procedure System($alias, $label, $descr="", $sprite="", $tags="", $link="", $type="", $baseShape="rectangle") + ' $type reuses $techn definition of $tags + $getElementLine($baseShape, "system", $alias, $label, $type, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure SystemDb($alias, $label, $descr="", $sprite="", $tags="", $link="", $type="") + ' $type reuses $techn definition of $tags + $getElementLine("database", "system", $alias, $label, $type, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure SystemQueue($alias, $label, $descr="", $sprite="", $tags="", $link="", $type="") + ' $type reuses $techn definition of $tags + $getElementLine("queue", "system", $alias, $label, $type, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure System_Ext($alias, $label, $descr="", $sprite="", $tags="", $link="", $type="", $baseShape="rectangle") + ' $type reuses $techn definition of $tags + $getElementLine($baseShape , "external_system", $alias, $label, $type, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure SystemDb_Ext($alias, $label, $descr="", $sprite="", $tags="", $link="", $type="") + ' $type reuses $techn definition of $tags + $getElementLine("database", "external_system", $alias, $label, $type, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure SystemQueue_Ext($alias, $label, $descr="", $sprite="", $tags="", $link="", $type="") + ' $type reuses $techn definition of $tags + $getElementLine("queue", "external_system", $alias, $label, $type, $descr, $sprite, $tags, $link) +!endprocedure + +' Boundaries +' ################################## + +!unquoted procedure Enterprise_Boundary($alias, $label, $tags="", $link="") + !if ($tags != "") + !$allTags = $tags + '+enterprise' + !else + !$allTags = 'enterprise' + !endif + ' $type defined via $tag style + Boundary($alias, $label, "", $allTags, $link) +!endprocedure + +!unquoted procedure System_Boundary($alias, $label, $tags="", $link="") + !if ($tags != "") + !$allTags = $tags + '+system' + !else + !$allTags = 'system' + !endif + ' $type defined via $tag style + Boundary($alias, $label, "", $allTags, $link) +!endprocedure \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/.c4s/C4_Deployment.puml b/Samples/ToDoApp/Diagrams/.c4s/C4_Deployment.puml new file mode 100644 index 000000000..b780d0e7c --- /dev/null +++ b/Samples/ToDoApp/Diagrams/.c4s/C4_Deployment.puml @@ -0,0 +1,140 @@ +' convert it with additional command line argument -DRELATIVE_INCLUDE="relative/absolute" to use locally +!if %variable_exists("RELATIVE_INCLUDE") + !include ./C4_Container.puml +!else + !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Container.puml +!endif + +' Colors +' ################################## + +!$NODE_FONT_COLOR ?= "#000000" +!$NODE_BG_COLOR ?= "#FFFFFF" +!$NODE_BORDER_COLOR ?= "#A2A2A2" + +' Styling +' ################################## + +' PlantUML supports no automatic line breaks of "PlantUML containers" (C4 Deployment_Node is a "PlantUML container") +' therefore (Deployment_)Node() implements an automatic line break based on spaces (like in all other objects). +' If a $type contains \n then these are used (and no automatic space based line breaks are done) +' $NODE_TYPE_MAX_CHAR_WIDTH defines the automatic line break position +!$NODE_TYPE_MAX_CHAR_WIDTH ?= 35 +!$NODE_DESCR_MAX_CHAR_WIDTH ?= 32 + +UpdateElementStyle("node", $bgColor=$NODE_BG_COLOR, $fontColor=$NODE_FONT_COLOR, $borderColor=$NODE_BORDER_COLOR) +skinparam rectangle<> { + FontStyle normal +} + +' shortcuts with default colors +' node specific: $techn is only used in old scripts, new scripts uses $type ($techn has to remain, it could be called via named argument) +!unquoted procedure AddNodeTag($tagStereo, $bgColor="", $fontColor="", $borderColor="", $shadowing="", $shape="", $sprite="", $type="", $legendText="", $legendSprite="", $techn="", $borderStyle="", $borderThickness="") + !$type=$type+$techn + $addElementTagInclReuse("node", $tagStereo, $bgColor, $fontColor, $borderColor, $shadowing, $shape, $sprite, $type, $legendText, $legendSprite, $borderStyle, $borderThickness) +!endprocedure + +' Layout +' ################################## + +' comment if node should not be added to legend. No calculated legend extension required +SetDefaultLegendEntries("person\nsystem\ncontainer\nexternal_person\nexternal_system\nexternal_container\nnode\nenterprise_boundary\nsystem_boundary\ncontainer_boundary\nboundary") + +' Line breaks +' ################################## + +' $breakTechn() in C4 supports //...//; $breakNode() in C4_Deployment supports no //....// +!unquoted function $breakNode($text, $widthStr) + !$usedNewLine = '\n' + !return $breakText($text, $usedNewLine, $widthStr) +!endfunction + +' Elements +' ################################## + +!function $getNode($label, $type, $descr, $sprite) + !$nodeText = "" + !if ($sprite != "") + !$nodeText = $nodeText + $getSprite($sprite) + '\n' + !endif + !$nodeText = $nodeText + '== ' + $breakText($label, "\n== ") + !if ($type != "") + !$nodeText = $nodeText + '\n[' + $breakNode($type, $NODE_TYPE_MAX_CHAR_WIDTH) + ']' + !endif + !if ($descr != "") + !$nodeText = $nodeText + '\n\n' + $breakDescr($descr, $NODE_DESCR_MAX_CHAR_WIDTH) + !endif + !return $nodeText +!endfunction + +!function $getNode_L($label, $type, $descr, $sprite) + !$nodeText = "" + !if ($sprite != "") + !$nodeText = $nodeText + $getSprite($sprite) + '\l' + !endif + !$nodeText = $nodeText + '== ' + $breakText($label, "\l== ") + !if ($type != "") + !$nodeText = $nodeText + '\l[' + $breakNode($type, $NODE_TYPE_MAX_CHAR_WIDTH) + ']' + !endif + !if ($descr != "") + !$nodeText = $nodeText + '\l\l' + $breakDescr($descr, $NODE_DESCR_MAX_CHAR_WIDTH) + !endif + !return $nodeText +!endfunction + +!function $getNode_R($label, $type, $descr, $sprite) + !$nodeText = "" + !if ($sprite != "") + !$nodeText = $nodeText + $getSprite($sprite) + '\r' + !endif + !$nodeText = $nodeText + '== ' + $breakText($label, "\r== ") + !if ($type != "") + !$nodeText = $nodeText + '\r[' + $breakNode($type, $NODE_TYPE_MAX_CHAR_WIDTH) + ']' + !endif + !if ($descr != "") + !$nodeText = $nodeText + '\r\r' + $breakDescr($descr, $NODE_DESCR_MAX_CHAR_WIDTH) + !endif + !return $nodeText +!endfunction + +!unquoted procedure Deployment_Node($alias, $label, $type="", $descr="", $sprite="", $tags="", $link="") +!$sprite=$toElementArg($sprite, $tags, "ElementTagSprite", "node") +' nodes $type reuses $techn definition of $tags +!$type=$toElementArg($type, $tags, "ElementTagTechn", "node") +rectangle "$getNode($label, $type, $descr, $sprite)$getProps()" $toStereos("node",$tags) as $alias $getLink($link) +!endprocedure + +!unquoted procedure Deployment_Node_L($alias, $label, $type="", $descr="", $sprite="", $tags="", $link="") +!$sprite=$toElementArg($sprite, $tags, "ElementTagSprite", "node") +' nodes $type reuses $techn definition of $tags +!$type=$toElementArg($type, $tags, "ElementTagTechn", "node") +rectangle "$getNode_L($label, $type, $descr, $sprite)$getProps_L()" $toStereos("node",$tags) as $alias $getLink($link) +!endprocedure + +!unquoted procedure Deployment_Node_R($alias, $label, $type="", $descr="", $sprite="", $tags="", $link="") +!$sprite=$toElementArg($sprite, $tags, "ElementTagSprite", "node") +' nodes $type reuses $techn definition of $tags +!$type=$toElementArg($type, $tags, "ElementTagTechn", "node") +rectangle "$getNode_R($label, $type, $descr, $sprite)$getProps_R()" $toStereos("node",$tags) as $alias $getLink($link) +!endprocedure + +!unquoted procedure Node($alias, $label, $type="", $descr="", $sprite="", $tags="", $link="") +!$sprite=$toElementArg($sprite, $tags, "ElementTagSprite", "node") +' nodes $type reuses $techn definition of $tags +!$type=$toElementArg($type, $tags, "ElementTagTechn", "node") +rectangle "$getNode($label, $type, $descr, $sprite)$getProps()" $toStereos("node",$tags) as $alias $getLink($link) +!endprocedure + +!unquoted procedure Node_L($alias, $label, $type="", $descr="", $sprite="", $tags="", $link="") +!$sprite=$toElementArg($sprite, $tags, "ElementTagSprite", "node") +' nodes $type reuses $techn definition of $tags +!$type=$toElementArg($type, $tags, "ElementTagTechn", "node") +rectangle "$getNode_L($label, $type, $descr, $sprite)$getProps_L()" $toStereos("node",$tags) as $alias $getLink($link) +!endprocedure + +!unquoted procedure Node_R($alias, $label, $type="", $descr="", $sprite="", $tags="", $link="") +!$sprite=$toElementArg($sprite, $tags, "ElementTagSprite", "node") +' nodes $type reuses $techn definition of $tags +!$type=$toElementArg($type, $tags, "ElementTagTechn", "node") +rectangle "$getNode_R($label, $type, $descr, $sprite)$getProps_R()" $toStereos("node",$tags) as $alias $getLink($link) +!endprocedure \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/.c4s/C4_Sequence.puml b/Samples/ToDoApp/Diagrams/.c4s/C4_Sequence.puml new file mode 100644 index 000000000..ee40694ac --- /dev/null +++ b/Samples/ToDoApp/Diagrams/.c4s/C4_Sequence.puml @@ -0,0 +1,398 @@ +' convert it with additional command line argument -DRELATIVE_INCLUDE="relative/absolute" to use locally +!if %variable_exists("RELATIVE_INCLUDE") + !include ./C4_Component.puml +!else + !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Component.puml +!endif + +' Scope: Interactions in an enterprise, software system or container. +' Primary and supporting elements: Depends on the diagram scope - +' enterprise - people and software systems Related to the enterprise in scope +' software system - see system context or container diagrams, +' container - see component diagram. +' Intended audience: Technical and non-technical people, inside and outside of the software development team. + +' Sequence diagram introduces (automatically) numbered interactions: +' (lowercase) increment($offset=1): increase current index (procedure which has no direct output) +' (lowercase) setIndex($new_index): set the new index (procedure which has no direct output) +' +' (Uppercase) LastIndex(): return the last used index (function which can be used as argument) +' (Uppercase) Index($offset=1): returns current index and calculates next index (function which can be used as argument) +' (Uppercase) SetIndex($new_index): returns new set index and calculates next index (function which can be used as argument) + +' enables multi-level boxes +!pragma teoz true + + +' Legend redefintion +' ################################## +' sequence has no dashed boxes +!if ($LEGEND_DASHED_BOUNDARY == "dashed") + !$LEGEND_DASHED_BOUNDARY = "" +!endif +!if ($LEGEND_DASHED_TRANSPARENT_BOUNDARY == "dashed") + !$LEGEND_DASHED_TRANSPARENT_BOUNDARY = "" +!endif +UpdateBoundaryStyle("", $bgColor=$BOUNDARY_BG_COLOR, $fontColor=$BOUNDARY_COLOR, $borderColor=$BOUNDARY_COLOR) +UpdateBoundaryStyle("enterprise", $bgColor=$ENTERPRISE_BOUNDARY_BG_COLOR, $fontColor=$ENTERPRISE_BOUNDARY_COLOR, $borderColor=$ENTERPRISE_BOUNDARY_COLOR, $type="Enterprise") +UpdateBoundaryStyle("system", $bgColor=$SYSTEM_BOUNDARY_BG_COLOR, $fontColor=$SYSTEM_BOUNDARY_COLOR, $borderColor=$SYSTEM_BOUNDARY_COLOR, $type="System") +UpdateBoundaryStyle("container", $bgColor=$CONTAINER_BOUNDARY_BG_COLOR, $fontColor=$CONTAINER_BOUNDARY_COLOR, $borderColor=$CONTAINER_BOUNDARY_COLOR, $type="Container") + +' Styling and Layout +' ################################## + +!global $display_element_description = %false() + +' typically the element/participant descriptions are not displayed in a sequence diagram, but it can be activated with this call +!unquoted procedure SHOW_ELEMENT_DESCRIPTIONS($show="true") +!if ($show == "true") + !global $display_element_description = %true() +!else + !global $display_element_description = %false() +!endif +!endprocedure + +' typically the foot boxes descriptions are not displayed in a sequence diagram, but it can be activated with this call +!unquoted procedure SHOW_FOOT_BOXES($show="true") +!if ($show == "true") + show footbox +!else + hide footbox +!endif +!endprocedure + +!global $show_index = %false() +' All relation specific (default) ordinary index numbers can be shown with this call +!unquoted procedure SHOW_INDEX($show="true") +!if ($show == "true") + !global $show_index = %true() +!else + !global $show_index = %false() +!endif +!endprocedure + +' ======= if no theme is defined hide foot box and activate C4_blue styles +!if (%variable_exists("$THEME")) +!else +' $BOUNDARY_BG_COLOR... have to be defined in theme itself that it can be used in styles,... +' (no default values which are defined in C4.puml) +' If skinparams and styles are defined with concrete values no variables are required +!$BOUNDARY_BG_COLOR ?= "transparent" +!$BOUNDARY_COLOR ?= "#444444" +!$ARROW_COLOR ?= "#666666" + +' replace transparent with concrete background that it can be used as font color too +!if ($BOUNDARY_BG_COLOR == "transparent") + !$SEQUENCE_BG_COLOR = white +!else + !$SEQUENCE_BG_COLOR = $BOUNDARY_BG_COLOR +!endif + +' "C4 styled" default is no foot boxes +hide footbox +' "C4 styled" default is that lifeline is arrow color +skinparam SequenceLifelineBorderColor $ARROW_COLOR + +skinparam SequenceGroupBodyBackgroundColor $SEQUENCE_BG_COLOR +skinparam SequenceGroupFontColor $BOUNDARY_COLOR +skinparam SequenceGroupBackgroundColor $BOUNDARY_COLOR +skinparam SequenceGroupHeaderFontColor $SEQUENCE_BG_COLOR +skinparam SequenceGroupBorderColor $BOUNDARY_COLOR + +skinparam SequenceReferenceBackgroundColor $SEQUENCE_BG_COLOR +skinparam SequenceReferenceFontColor $BOUNDARY_COLOR +skinparam SequenceReferenceHeaderBackgroundColor $BOUNDARY_COLOR +' VIA STYLE +' skinparam SequenceReferenceHeaderFontColor $SEQUENCE_BG_COLOR + +skinparam SequenceReferenceBorderColor $BOUNDARY_COLOR + +skinparam SequenceDividerBackgroundColor $SEQUENCE_BG_COLOR +skinparam SequenceDividerFontColor $BOUNDARY_COLOR +skinparam SequenceDividerBorderColor $BOUNDARY_COLOR + +' VIA STYLE +' skinparam SequenceDelayFontColor green + +!endif +' ======= if no theme is defined hide foot box and activate C4_blue styles + +' Elements redefinition +' ################################## + +' all elements have to be displayed as participant +' participants requires ` %newline()` instead of `\n` + +!unquoted function $breakWithNewline($text, $lineEnd, $lineStart, $widthStr="-1") +!$width = %intval($widthStr) +!$multiLine = "" +!if (%strpos($text, "\n") >= 0) + !while (%strpos($text, "\n") >= 0) + !$brPos = %strpos($text, "\n") + !if ($brPos > 0) + !$multiLine = $multiLine + %substr($text, 0, $brPos) + $lineEnd + %newline() + $lineStart + !else + ' non breaking change that newLine breaks with formats can be used with \n\n + !$multiLine = $multiLine + "" + $lineEnd + %newline() + $lineStart + !endif + !$text = %substr($text, $brPos+2) + !if (%strlen($text) == 0) + !$text = "" + !endif + !endwhile +!else + !while ($width>0 && %strlen($text) > $width) + !$brPos = $width + !while ($brPos > 0 && %substr($text, $brPos, 1) != ' ') + !$brPos = $brPos - 1 + !endwhile + + !if ($brPos < 1) + !$brPos = %strpos($text, " ") + !else + !endif + + !if ($brPos > 0) + !$multiLine = $multiLine + %substr($text, 0, $brPos) + $lineEnd + %newline() + $lineStart + !$text = %substr($text, $brPos + 1) + !else + !$multiLine = $multiLine+ $text + !$text = "" + !endif + !endwhile +!endif +!if (%strlen($text) > 0) + !$multiLine = $multiLine + $text +!endif +!return $multiLine +!endfunction + +!unquoted function $breakNewLineLabel($text) +!$multiLine = $breakWithNewline($text, "", "==") +!return $multiLine +!endfunction + +!unquoted function $breakNewLineDescr($text) + !return $breakWithNewline($text, "", "", $REL_DESCR_MAX_CHAR_WIDTH) +!endfunction + +!unquoted function $breakNewLineTechn($text) + !$lineStart = "//" + !$lineEnd = '//' + !return $breakWithNewline($text, $lineStart, $lineEnd, $REL_TECHN_MAX_CHAR_WIDTH) +!endfunction + +' description is not displayed (size too big, line breaks not supported) +' properties are not displayed in sequence diagram (size would be too big) +' $breakLabel() not required by participant +!procedure $getParticipant($elementType, $alias, $label, $techn, $descr, $sprite, $tags, $link) + !$sprite=$toElementArg($sprite, $tags, "ElementTagSprite", $elementType) + !$techn=$toElementArg($techn, $tags, "ElementTagTechn", $elementType) + !$stereo = $toStereos($elementType,$tags) + !$calcLabel = "== " + $breakNewLineLabel($label) + !$calcTech = "//[" + $breakNewLineTechn($techn) + "]//" + !$calcDescr = $breakNewLineDescr($descr) + !$calcLink = $getLink($link) + +participant $alias $stereo $calcLink [ +!if ($sprite != "") +$getSprite($sprite) +!endif +!if ($label != "") +$calcLabel +!endif +!if ($techn != "") +$calcTech +!endif +!if ($display_element_description == %true() && $descr != "") + +$calcDescr +!endif +] +!endprocedure + + +!unquoted procedure Person($alias, $label, $descr="", $sprite="", $tags="", $link="", $type="") + ' $type reuses $techn definition of $tags + $getParticipant("person", $alias, $label, $type, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure Person_Ext($alias, $label, $descr="", $sprite="", $tags="", $link="", $type="") + ' $type reuses $techn definition of $tags + $getParticipant("external_person", $alias, $label, $type, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure System($alias, $label, $descr="", $sprite="", $tags="", $link="", $type="", $baseShape="rectangle") + ' $type reuses $techn definition of $tags + $getParticipant("system", $alias, $label, $type, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure SystemDb($alias, $label, $descr="", $sprite="", $tags="", $link="", $type="") + ' $type reuses $techn definition of $tags + $getParticipant("system", $alias, $label, $type, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure SystemQueue($alias, $label, $descr="", $sprite="", $tags="", $link="", $type="") + ' $type reuses $techn definition of $tags + $getParticipant("system", $alias, $label, $type, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure System_Ext($alias, $label, $descr="", $sprite="", $tags="", $link="", $type="", $baseShape="rectangle") + ' $type reuses $techn definition of $tags + $getParticipant("external_system", $alias, $label, $type, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure SystemDb_Ext($alias, $label, $descr="", $sprite="", $tags="", $link="", $type="") + ' $type reuses $techn definition of $tags + $getParticipant("external_system", $alias, $label, $type, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure SystemQueue_Ext($alias, $label, $descr="", $sprite="", $tags="", $link="", $type="") + ' $type reuses $techn definition of $tags + $getParticipant("external_system", $alias, $label, $type, $descr, $sprite, $tags, $link) +!endprocedure + + + +!unquoted procedure Container($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="", $baseShape="rectangle") + $getParticipant("container", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure ContainerDb($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="") + $getParticipant("container", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure ContainerQueue($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="") + $getParticipant("container", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure Container_Ext($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="", $baseShape="rectangle") + $getParticipant("external_container", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure ContainerDb_Ext($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="") + $getParticipant("external_container", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure ContainerQueue_Ext($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="") + $getParticipant("external_container", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + + + +!unquoted procedure Component($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="", $baseShape="rectangle") + $getParticipant("component", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure ComponentDb($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="") + $getParticipant("component", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure ComponentQueue($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="") + $getParticipant("component", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure Component_Ext($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="", $baseShape="rectangle") + $getParticipant("external_component", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure ComponentDb_Ext($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="") + $getParticipant("external_component", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + +!unquoted procedure ComponentQueue_Ext($alias, $label, $techn="", $descr="", $sprite="", $tags="", $link="") + $getParticipant("external_component", $alias, $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure + + +' Boundary redefinition +' ################################## + +' all boundaries have to be displayed as box and +' !!! important changes: without { at the end; and boundary ends with Boundary_End() instead of } + +' alias ignored +' $breakLabel() not required by participant + +!unquoted procedure Boundary($alias, $label, $type="", $tags="", $link="") +!$boundaryTags = $addBoundaryPostfix($tags) +' nodes $type reuses $techn definition of $boundaryTags +!$type=$toElementArg($type, $boundaryTags, "ElementTagTechn", "boundary") +!if ($link != "") + !$usedNewLine = ']]\n== [[' + $link + ' ' + !$labelType = '== [[' + $link + ' ' + $breakText($label, $usedNewLine) + ']]' +!else + !$usedNewLine = '\n== ' + !$labelType = $breakText($label, $usedNewLine) +!endif +!if (type != "") + !$labelType = $labelType + '\n[' + $type + ']' +!endif +box "$labelType" $toStereos("boundary", $boundaryTags) +!endprocedure + +!procedure Boundary_End() +end box +!endprocedure + +!unquoted procedure Enterprise_Boundary($alias, $label, $tags="", $link="") + !if ($tags != "") + !$allTags = $tags + '+enterprise' + !else + !$allTags = 'enterprise' + !endif + ' $type defined via $tag style + Boundary($alias, $label, "", $allTags, $link) +!endprocedure + +!unquoted procedure System_Boundary($alias, $label, $tags="", $link="") + !if ($tags != "") + !$allTags = $tags + '+system' + !else + !$allTags = 'system' + !endif + ' $type defined via $tag style + Boundary($alias, $label, "", $allTags, $link) +!endprocedure + +!unquoted procedure Container_Boundary($alias, $label, $tags="", $link="") + !if ($tags != "") + !$allTags = $tags + '+container' + !else + !$allTags = 'container' + !endif + ' $type defined via $tag style + Boundary($alias, $label, "", $allTags, $link) +!endprocedure + +' Relationship (redefinition) +' ################################## + +' only Rel is supported in sequence diagram + +' first Rel() supports the $index and $rel argument too; second Rel() overwrites C4.puml definition +' don't add empty lines in procedure otherwise & calls are not working anymore '& a -> b: call' are not working anymore +!unquoted procedure Rel($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="", $index="", $rel="") + !if ($show_index == %true()) + !$pre = $getPrefix($index) + !else + !$pre = "" + !endif + !if ($rel == "") + !$rel = "->" + !endif +$getRel($rel, $from, $to, $pre + $label, $techn, $descr, $sprite, $tags, $link) +!endprocedure +!unquoted procedure Rel($from, $to, $label, $techn="", $descr="", $sprite="", $tags="", $link="") +Rel($from, $to, $label, $techn, $descr, $sprite, $tags, $link, "", "") +!endprocedure \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/Container - C4 Static.png new file mode 100644 index 000000000..866554830 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/Container - C4 Static.puml new file mode 100644 index 000000000..0cb048ec3 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/Container - C4 Static.puml @@ -0,0 +1,33 @@ +@startuml +!include ..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title All Software Systems - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Uses") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Uses") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Uses") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/Container - C4 Static.svg new file mode 100644 index 000000000..bb6895c79 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/Container - C4 Static.svg @@ -0,0 +1 @@ +All Software Systems - C4 Static - Container levelTo Do App[System]DatabaseWeb ApiMobile AppWeb AppUsesUsesUsesLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/Container - C4.png new file mode 100644 index 000000000..8a45d0edd Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/Container - C4.puml new file mode 100644 index 000000000..32feea853 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/Container - C4.puml @@ -0,0 +1,33 @@ +@startuml +!include ..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title All Software Systems - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Select Tasks\nInsert Task\nUpdate Task\nDelete Task") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Get Tasks\nAdd Task\nUpdate Task\nDelete Task\nMark Task As Done") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Get Tasks\nAdd Task\nUpdate Task\nDelete Task\nMark Task As Done") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/Container - C4.svg new file mode 100644 index 000000000..ecb5e3c72 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/Container - C4.svg @@ -0,0 +1 @@ +All Software Systems - C4 - Container levelTo Do App[System]DatabaseWeb ApiMobile AppWeb AppSelect TasksInsert TaskUpdate TaskDelete TaskGet TasksAdd TaskUpdate TaskDelete TaskMark Task As DoneGet TasksAdd TaskUpdate TaskDelete TaskMark Task As DoneLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/Context - C4 Static.png new file mode 100644 index 000000000..d28a92519 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/Context - C4 Static.puml new file mode 100644 index 000000000..48a33946d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title All Software Systems - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/Context - C4 Static.svg new file mode 100644 index 000000000..6c49f7ccf --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/Context - C4 Static.svg @@ -0,0 +1 @@ +All Software Systems - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/Context - C4.png new file mode 100644 index 000000000..e58e1db5c Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/Context - C4.puml new file mode 100644 index 000000000..f4910586b --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title All Software Systems - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/Context - C4.svg new file mode 100644 index 000000000..0397c8bc4 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/Context - C4.svg @@ -0,0 +1 @@ +All Software Systems - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Container - C4 Static.png new file mode 100644 index 000000000..31a646691 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Container - C4 Static.puml new file mode 100644 index 000000000..ff4405932 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Container - C4 Static.puml @@ -0,0 +1,33 @@ +@startuml +!include ..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Uses") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Uses") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Uses") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Container - C4 Static.svg new file mode 100644 index 000000000..fb829851a --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - C4 Static - Container levelTo Do App[System]DatabaseWeb ApiMobile AppWeb AppUsesUsesUsesLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Container - C4.png new file mode 100644 index 000000000..815794e87 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Container - C4.puml new file mode 100644 index 000000000..e4f099caa --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Container - C4.puml @@ -0,0 +1,33 @@ +@startuml +!include ..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Select Tasks\nInsert Task\nUpdate Task\nDelete Task") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Get Tasks\nAdd Task\nUpdate Task\nDelete Task\nMark Task As Done") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Get Tasks\nAdd Task\nUpdate Task\nDelete Task\nMark Task As Done") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Container - C4.svg new file mode 100644 index 000000000..0cb44b10b --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Container - C4.svg @@ -0,0 +1 @@ +To Do App - C4 - Container levelTo Do App[System]DatabaseWeb ApiMobile AppWeb AppSelect TasksInsert TaskUpdate TaskDelete TaskGet TasksAdd TaskUpdate TaskDelete TaskMark Task As DoneGet TasksAdd TaskUpdate TaskDelete TaskMark Task As DoneLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Container - C4 Static.png new file mode 100644 index 000000000..01930e647 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Container - C4 Static.puml new file mode 100644 index 000000000..d829ae8ce --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Container - C4 Static.puml @@ -0,0 +1,27 @@ +@startuml +!include ..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Database - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Container - C4 Static.svg new file mode 100644 index 000000000..38d08a800 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Database - C4 Static - Container levelTo Do App[System]DatabaseLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Container - C4.png new file mode 100644 index 000000000..49d979e6a Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Container - C4.puml new file mode 100644 index 000000000..89e0c17f1 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Container - C4.puml @@ -0,0 +1,27 @@ +@startuml +!include ..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Database - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Container - C4.svg new file mode 100644 index 000000000..04082ff9a --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Database - C4 - Container levelTo Do App[System]DatabaseLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4 Sequence.png new file mode 100644 index 000000000..ae3b2eae2 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4 Sequence.puml new file mode 100644 index 000000000..283d24ee0 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4 Sequence.puml @@ -0,0 +1,15 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Database - Delete Task - C4 Sequence - Container level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +Boundary_End() + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Delete Task") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4 Sequence.svg new file mode 100644 index 000000000..bb6fd564c --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App[System]To Do App - Database - Delete Task - C4 Sequence - Container level«external_system»External«container»DatabaseDelete Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4 Static.png new file mode 100644 index 000000000..f00e3080b Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4 Static.puml new file mode 100644 index 000000000..0b6369b29 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4 Static.puml @@ -0,0 +1,27 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Database - Delete Task - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4 Static.svg new file mode 100644 index 000000000..c93f2de86 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Database - Delete Task - C4 Static - Container levelTo Do App[System]DatabaseLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4.png new file mode 100644 index 000000000..d43f6d7db Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4.puml new file mode 100644 index 000000000..0414a0f04 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4.puml @@ -0,0 +1,27 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Database - Delete Task - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4.svg new file mode 100644 index 000000000..5876f3ccc --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Database - Delete Task - C4 - Container levelTo Do App[System]DatabaseLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - Sequence.png new file mode 100644 index 000000000..27487cb58 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - Sequence.puml new file mode 100644 index 000000000..c139d39b2 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - Sequence.puml @@ -0,0 +1,15 @@ +@startuml + +title To Do App - Database - Delete Task - Sequence - Container level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem + +box "To Do App" #White + participant "Database" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database +end box + + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database : Delete Task + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - Sequence.svg new file mode 100644 index 000000000..7a072f0d3 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Container - Sequence.svg @@ -0,0 +1 @@ +To Do App - Database - Delete Task - Sequence - Container levelTo Do AppExternalExternalDatabaseDatabaseDelete Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4 Sequence.png new file mode 100644 index 000000000..8495bd7d3 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4 Sequence.puml new file mode 100644 index 000000000..6ca425341 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4 Sequence.puml @@ -0,0 +1,12 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Database - Delete Task - C4 Sequence - Context level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp, "Delete Task") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4 Sequence.svg new file mode 100644 index 000000000..81d0ff64e --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App - Database - Delete Task - C4 Sequence - Context level«external_system»External«system»To Do AppDelete Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4 Static.png new file mode 100644 index 000000000..4e8180c48 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4 Static.puml new file mode 100644 index 000000000..e1297da7d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Database - Delete Task - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4 Static.svg new file mode 100644 index 000000000..e76b2b6fc --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Database - Delete Task - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4.png new file mode 100644 index 000000000..3cf4c5c74 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4.puml new file mode 100644 index 000000000..806cf3413 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Database - Delete Task - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4.svg new file mode 100644 index 000000000..5241d2375 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - C4.svg @@ -0,0 +1 @@ +To Do App - Database - Delete Task - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - Sequence.png new file mode 100644 index 000000000..16567982b Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - Sequence.puml new file mode 100644 index 000000000..6cb86d6f9 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - Sequence.puml @@ -0,0 +1,11 @@ +@startuml + +title To Do App - Database - Delete Task - Sequence - Context level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem +participant "To Do App" as ToDoAppExample.SoftwareSystems.ToDoApp + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp : Delete Task + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - Sequence.svg new file mode 100644 index 000000000..e892e413f --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Delete Task/Context - Sequence.svg @@ -0,0 +1 @@ +To Do App - Database - Delete Task - Sequence - Context levelExternalExternalTo Do AppTo Do AppDelete Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4 Sequence.png new file mode 100644 index 000000000..a81bc69ac Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4 Sequence.puml new file mode 100644 index 000000000..e125e3bc5 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4 Sequence.puml @@ -0,0 +1,15 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Database - Insert Task - C4 Sequence - Container level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +Boundary_End() + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Insert Task") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4 Sequence.svg new file mode 100644 index 000000000..7c81bb19b --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App[System]To Do App - Database - Insert Task - C4 Sequence - Container level«external_system»External«container»DatabaseInsert Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4 Static.png new file mode 100644 index 000000000..814b509f2 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4 Static.puml new file mode 100644 index 000000000..e153f30ca --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4 Static.puml @@ -0,0 +1,27 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Database - Insert Task - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4 Static.svg new file mode 100644 index 000000000..c86762154 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Database - Insert Task - C4 Static - Container levelTo Do App[System]DatabaseLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4.png new file mode 100644 index 000000000..d1a8b02ff Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4.puml new file mode 100644 index 000000000..a877620f7 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4.puml @@ -0,0 +1,27 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Database - Insert Task - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4.svg new file mode 100644 index 000000000..dd213c88c --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Database - Insert Task - C4 - Container levelTo Do App[System]DatabaseLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - Sequence.png new file mode 100644 index 000000000..4559679b8 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - Sequence.puml new file mode 100644 index 000000000..9e1c8e93f --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - Sequence.puml @@ -0,0 +1,15 @@ +@startuml + +title To Do App - Database - Insert Task - Sequence - Container level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem + +box "To Do App" #White + participant "Database" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database +end box + + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database : Insert Task + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - Sequence.svg new file mode 100644 index 000000000..f8499da14 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Container - Sequence.svg @@ -0,0 +1 @@ +To Do App - Database - Insert Task - Sequence - Container levelTo Do AppExternalExternalDatabaseDatabaseInsert Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4 Sequence.png new file mode 100644 index 000000000..e711177b9 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4 Sequence.puml new file mode 100644 index 000000000..c8c84c2f6 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4 Sequence.puml @@ -0,0 +1,12 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Database - Insert Task - C4 Sequence - Context level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp, "Insert Task") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4 Sequence.svg new file mode 100644 index 000000000..38feefb1b --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App - Database - Insert Task - C4 Sequence - Context level«external_system»External«system»To Do AppInsert Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4 Static.png new file mode 100644 index 000000000..6120921fd Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4 Static.puml new file mode 100644 index 000000000..281d8859f --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Database - Insert Task - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4 Static.svg new file mode 100644 index 000000000..9af2ece6a --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Database - Insert Task - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4.png new file mode 100644 index 000000000..b19cb99b7 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4.puml new file mode 100644 index 000000000..df20f352f --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Database - Insert Task - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4.svg new file mode 100644 index 000000000..ad2c9954f --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - C4.svg @@ -0,0 +1 @@ +To Do App - Database - Insert Task - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - Sequence.png new file mode 100644 index 000000000..c92bde778 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - Sequence.puml new file mode 100644 index 000000000..d0ae3623f --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - Sequence.puml @@ -0,0 +1,11 @@ +@startuml + +title To Do App - Database - Insert Task - Sequence - Context level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem +participant "To Do App" as ToDoAppExample.SoftwareSystems.ToDoApp + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp : Insert Task + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - Sequence.svg new file mode 100644 index 000000000..64a82968b --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Insert Task/Context - Sequence.svg @@ -0,0 +1 @@ +To Do App - Database - Insert Task - Sequence - Context levelExternalExternalTo Do AppTo Do AppInsert Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4 Sequence.png new file mode 100644 index 000000000..3bf5b2bf6 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4 Sequence.puml new file mode 100644 index 000000000..2bca993ed --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4 Sequence.puml @@ -0,0 +1,15 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Database - Select Tasks - C4 Sequence - Container level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +Boundary_End() + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Select Tasks") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4 Sequence.svg new file mode 100644 index 000000000..68b5c6190 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App[System]To Do App - Database - Select Tasks - C4 Sequence - Container level«external_system»External«container»DatabaseSelect Tasks \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4 Static.png new file mode 100644 index 000000000..0eefd5e7e Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4 Static.puml new file mode 100644 index 000000000..7d5a13c70 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4 Static.puml @@ -0,0 +1,27 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Database - Select Tasks - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4 Static.svg new file mode 100644 index 000000000..29302b44c --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Database - Select Tasks - C4 Static - Container levelTo Do App[System]DatabaseLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4.png new file mode 100644 index 000000000..91205fa9e Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4.puml new file mode 100644 index 000000000..f88b8399c --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4.puml @@ -0,0 +1,27 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Database - Select Tasks - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4.svg new file mode 100644 index 000000000..9711d811d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Database - Select Tasks - C4 - Container levelTo Do App[System]DatabaseLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - Sequence.png new file mode 100644 index 000000000..75c83a6af Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - Sequence.puml new file mode 100644 index 000000000..69bffb15a --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - Sequence.puml @@ -0,0 +1,15 @@ +@startuml + +title To Do App - Database - Select Tasks - Sequence - Container level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem + +box "To Do App" #White + participant "Database" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database +end box + + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database : Select Tasks + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - Sequence.svg new file mode 100644 index 000000000..8368a4707 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Container - Sequence.svg @@ -0,0 +1 @@ +To Do App - Database - Select Tasks - Sequence - Container levelTo Do AppExternalExternalDatabaseDatabaseSelect Tasks \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4 Sequence.png new file mode 100644 index 000000000..91da39b59 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4 Sequence.puml new file mode 100644 index 000000000..2ef6d8f0d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4 Sequence.puml @@ -0,0 +1,12 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Database - Select Tasks - C4 Sequence - Context level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp, "Select Tasks") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4 Sequence.svg new file mode 100644 index 000000000..5bfa116a9 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App - Database - Select Tasks - C4 Sequence - Context level«external_system»External«system»To Do AppSelect Tasks \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4 Static.png new file mode 100644 index 000000000..405b90ff4 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4 Static.puml new file mode 100644 index 000000000..4f652969d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Database - Select Tasks - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4 Static.svg new file mode 100644 index 000000000..15db2848b --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Database - Select Tasks - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4.png new file mode 100644 index 000000000..9630a6e2b Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4.puml new file mode 100644 index 000000000..eb1018786 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Database - Select Tasks - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4.svg new file mode 100644 index 000000000..4b0372475 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - C4.svg @@ -0,0 +1 @@ +To Do App - Database - Select Tasks - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - Sequence.png new file mode 100644 index 000000000..d37b7c749 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - Sequence.puml new file mode 100644 index 000000000..a488fc48b --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - Sequence.puml @@ -0,0 +1,11 @@ +@startuml + +title To Do App - Database - Select Tasks - Sequence - Context level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem +participant "To Do App" as ToDoAppExample.SoftwareSystems.ToDoApp + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp : Select Tasks + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - Sequence.svg new file mode 100644 index 000000000..15065af96 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Select Tasks/Context - Sequence.svg @@ -0,0 +1 @@ +To Do App - Database - Select Tasks - Sequence - Context levelExternalExternalTo Do AppTo Do AppSelect Tasks \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4 Sequence.png new file mode 100644 index 000000000..969b66b90 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4 Sequence.puml new file mode 100644 index 000000000..e718d0f5e --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4 Sequence.puml @@ -0,0 +1,15 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Database - Update Task - C4 Sequence - Container level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +Boundary_End() + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Update Task") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4 Sequence.svg new file mode 100644 index 000000000..665ddd487 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App[System]To Do App - Database - Update Task - C4 Sequence - Container level«external_system»External«container»DatabaseUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4 Static.png new file mode 100644 index 000000000..d60d931a1 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4 Static.puml new file mode 100644 index 000000000..a7f4e08af --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4 Static.puml @@ -0,0 +1,27 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Database - Update Task - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4 Static.svg new file mode 100644 index 000000000..58d1b0ce5 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Database - Update Task - C4 Static - Container levelTo Do App[System]DatabaseLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4.png new file mode 100644 index 000000000..7323630de Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4.puml new file mode 100644 index 000000000..2230b0220 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4.puml @@ -0,0 +1,27 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Database - Update Task - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4.svg new file mode 100644 index 000000000..7a1e2051f --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Database - Update Task - C4 - Container levelTo Do App[System]DatabaseLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - Sequence.png new file mode 100644 index 000000000..1abeba88a Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - Sequence.puml new file mode 100644 index 000000000..c06020018 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - Sequence.puml @@ -0,0 +1,15 @@ +@startuml + +title To Do App - Database - Update Task - Sequence - Container level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem + +box "To Do App" #White + participant "Database" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database +end box + + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database : Update Task + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - Sequence.svg new file mode 100644 index 000000000..fe5c605a0 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Container - Sequence.svg @@ -0,0 +1 @@ +To Do App - Database - Update Task - Sequence - Container levelTo Do AppExternalExternalDatabaseDatabaseUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4 Sequence.png new file mode 100644 index 000000000..27c26cb92 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4 Sequence.puml new file mode 100644 index 000000000..3469c102d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4 Sequence.puml @@ -0,0 +1,12 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Database - Update Task - C4 Sequence - Context level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp, "Update Task") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4 Sequence.svg new file mode 100644 index 000000000..e653cbb00 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App - Database - Update Task - C4 Sequence - Context level«external_system»External«system»To Do AppUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4 Static.png new file mode 100644 index 000000000..f99d29f77 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4 Static.puml new file mode 100644 index 000000000..66b9aeab6 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Database - Update Task - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4 Static.svg new file mode 100644 index 000000000..1f47cb48b --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Database - Update Task - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4.png new file mode 100644 index 000000000..59841a972 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4.puml new file mode 100644 index 000000000..874224b3d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Database - Update Task - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4.svg new file mode 100644 index 000000000..a49efc254 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - C4.svg @@ -0,0 +1 @@ +To Do App - Database - Update Task - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - Sequence.png new file mode 100644 index 000000000..c999096d1 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - Sequence.puml new file mode 100644 index 000000000..42dd180fe --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - Sequence.puml @@ -0,0 +1,11 @@ +@startuml + +title To Do App - Database - Update Task - Sequence - Context level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem +participant "To Do App" as ToDoAppExample.SoftwareSystems.ToDoApp + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp : Update Task + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - Sequence.svg new file mode 100644 index 000000000..a2e30c9c9 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Database/Interfaces/Update Task/Context - Sequence.svg @@ -0,0 +1 @@ +To Do App - Database - Update Task - Sequence - Context levelExternalExternalTo Do AppTo Do AppUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Container - C4 Static.png new file mode 100644 index 000000000..7402d3320 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Container - C4 Static.puml new file mode 100644 index 000000000..dd350d5cb --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Container - C4 Static.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Uses") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Uses") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Container - C4 Static.svg new file mode 100644 index 000000000..d7ad28f8a --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Mobile App - C4 Static - Container levelTo Do App[System]Mobile AppWeb ApiDatabaseUsesUsesLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Container - C4.png new file mode 100644 index 000000000..1cdafbf72 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Container - C4.puml new file mode 100644 index 000000000..9f5938ac1 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Container - C4.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Get Tasks\nAdd Task\nUpdate Task\nDelete Task\nMark Task As Done") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Select Tasks\nInsert Task\nUpdate Task\nDelete Task") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Container - C4.svg new file mode 100644 index 000000000..85eb1319d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Mobile App - C4 - Container levelTo Do App[System]Mobile AppWeb ApiDatabaseGet TasksAdd TaskUpdate TaskDelete TaskMark Task As DoneSelect TasksInsert TaskUpdate TaskDelete TaskLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4 Sequence.png new file mode 100644 index 000000000..1f24f7428 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4 Sequence.puml new file mode 100644 index 000000000..c0bc7dd7b --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4 Sequence.puml @@ -0,0 +1,23 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Mobile App - Add Task - C4 Sequence - Container level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +Boundary_End() + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Add Task") +group Add Task +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Add Task") +group Add Task +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Insert Task") +end +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4 Sequence.svg new file mode 100644 index 000000000..d1705ab3e --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App[System]To Do App - Mobile App - Add Task - C4 Sequence - Container level«external_system»External«container»Mobile App«container»Web Api«container»DatabaseAdd TaskAdd TaskAdd TaskAdd TaskInsert Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4 Static.png new file mode 100644 index 000000000..c84069ba0 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4 Static.puml new file mode 100644 index 000000000..187ef63b6 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4 Static.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - Add Task - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Uses") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Uses") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4 Static.svg new file mode 100644 index 000000000..600bd1a0d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Add Task - C4 Static - Container levelTo Do App[System]Mobile AppWeb ApiDatabaseUsesUsesLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4.png new file mode 100644 index 000000000..ee332408d Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4.puml new file mode 100644 index 000000000..28a9e24dd --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - Add Task - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Add Task") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Insert Task") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4.svg new file mode 100644 index 000000000..23e2a1241 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Add Task - C4 - Container levelTo Do App[System]Mobile AppWeb ApiDatabaseAdd TaskInsert TaskLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - Sequence.png new file mode 100644 index 000000000..bbda39550 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - Sequence.puml new file mode 100644 index 000000000..7e1bf1705 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - Sequence.puml @@ -0,0 +1,23 @@ +@startuml + +title To Do App - Mobile App - Add Task - Sequence - Container level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem + +box "To Do App" #White + participant "Mobile App" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp + participant "Web Api" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi + participant "Database" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database +end box + + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp : Add Task +group Add Task +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi : Add Task +group Add Task +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database : Insert Task +end +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - Sequence.svg new file mode 100644 index 000000000..6c6d8fe46 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Container - Sequence.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Add Task - Sequence - Container levelTo Do AppExternalExternalMobile AppMobile AppWeb ApiWeb ApiDatabaseDatabaseAdd TaskAdd TaskAdd TaskAdd TaskInsert Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4 Sequence.png new file mode 100644 index 000000000..55f88b445 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4 Sequence.puml new file mode 100644 index 000000000..359e646ff --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4 Sequence.puml @@ -0,0 +1,12 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Mobile App - Add Task - C4 Sequence - Context level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp, "Add Task") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4 Sequence.svg new file mode 100644 index 000000000..2e86fda5d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Add Task - C4 Sequence - Context level«external_system»External«system»To Do AppAdd Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4 Static.png new file mode 100644 index 000000000..98f7f161d Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4 Static.puml new file mode 100644 index 000000000..c9b287860 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - Add Task - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4 Static.svg new file mode 100644 index 000000000..2f87b638f --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Add Task - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4.png new file mode 100644 index 000000000..2fc46180c Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4.puml new file mode 100644 index 000000000..4d042e3dc --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - Add Task - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4.svg new file mode 100644 index 000000000..e78b7bdd1 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - C4.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Add Task - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - Sequence.png new file mode 100644 index 000000000..aada16c53 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - Sequence.puml new file mode 100644 index 000000000..928c72686 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - Sequence.puml @@ -0,0 +1,11 @@ +@startuml + +title To Do App - Mobile App - Add Task - Sequence - Context level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem +participant "To Do App" as ToDoAppExample.SoftwareSystems.ToDoApp + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp : Add Task + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - Sequence.svg new file mode 100644 index 000000000..426159759 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Add Task/Context - Sequence.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Add Task - Sequence - Context levelExternalExternalTo Do AppTo Do AppAdd Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4 Sequence.png new file mode 100644 index 000000000..88d14dc31 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4 Sequence.puml new file mode 100644 index 000000000..d19bca603 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4 Sequence.puml @@ -0,0 +1,23 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Mobile App - Delete Task - C4 Sequence - Container level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +Boundary_End() + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Delete Task") +group Delete Task +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Delete Task") +group Delete Task +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Delete Task") +end +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4 Sequence.svg new file mode 100644 index 000000000..7faa71ed5 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App[System]To Do App - Mobile App - Delete Task - C4 Sequence - Container level«external_system»External«container»Mobile App«container»Web Api«container»DatabaseDelete TaskDelete TaskDelete TaskDelete TaskDelete Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4 Static.png new file mode 100644 index 000000000..266424199 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4 Static.puml new file mode 100644 index 000000000..22b7c6a94 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4 Static.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - Delete Task - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Uses") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Uses") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4 Static.svg new file mode 100644 index 000000000..46ac51484 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Delete Task - C4 Static - Container levelTo Do App[System]Mobile AppWeb ApiDatabaseUsesUsesLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4.png new file mode 100644 index 000000000..a4a4db7ff Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4.puml new file mode 100644 index 000000000..a2caaf095 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - Delete Task - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Delete Task") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Delete Task") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4.svg new file mode 100644 index 000000000..a1dfea2af --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Delete Task - C4 - Container levelTo Do App[System]Mobile AppWeb ApiDatabaseDelete TaskDelete TaskLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - Sequence.png new file mode 100644 index 000000000..697543637 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - Sequence.puml new file mode 100644 index 000000000..1fd0ee1a7 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - Sequence.puml @@ -0,0 +1,23 @@ +@startuml + +title To Do App - Mobile App - Delete Task - Sequence - Container level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem + +box "To Do App" #White + participant "Mobile App" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp + participant "Web Api" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi + participant "Database" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database +end box + + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp : Delete Task +group Delete Task +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi : Delete Task +group Delete Task +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database : Delete Task +end +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - Sequence.svg new file mode 100644 index 000000000..22e7c82eb --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Container - Sequence.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Delete Task - Sequence - Container levelTo Do AppExternalExternalMobile AppMobile AppWeb ApiWeb ApiDatabaseDatabaseDelete TaskDelete TaskDelete TaskDelete TaskDelete Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4 Sequence.png new file mode 100644 index 000000000..62fbc1b2d Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4 Sequence.puml new file mode 100644 index 000000000..d7205276a --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4 Sequence.puml @@ -0,0 +1,12 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Mobile App - Delete Task - C4 Sequence - Context level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp, "Delete Task") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4 Sequence.svg new file mode 100644 index 000000000..041a82fdb --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Delete Task - C4 Sequence - Context level«external_system»External«system»To Do AppDelete Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4 Static.png new file mode 100644 index 000000000..606a06301 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4 Static.puml new file mode 100644 index 000000000..01e12fd4f --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - Delete Task - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4 Static.svg new file mode 100644 index 000000000..45551a7a9 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Delete Task - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4.png new file mode 100644 index 000000000..d94670c6a Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4.puml new file mode 100644 index 000000000..56a102818 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - Delete Task - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4.svg new file mode 100644 index 000000000..31c44d91b --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - C4.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Delete Task - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - Sequence.png new file mode 100644 index 000000000..13bafb389 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - Sequence.puml new file mode 100644 index 000000000..c8c34292d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - Sequence.puml @@ -0,0 +1,11 @@ +@startuml + +title To Do App - Mobile App - Delete Task - Sequence - Context level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem +participant "To Do App" as ToDoAppExample.SoftwareSystems.ToDoApp + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp : Delete Task + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - Sequence.svg new file mode 100644 index 000000000..b92ab2baa --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Delete Task/Context - Sequence.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Delete Task - Sequence - Context levelExternalExternalTo Do AppTo Do AppDelete Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4 Sequence.png new file mode 100644 index 000000000..277ea3d72 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4 Sequence.puml new file mode 100644 index 000000000..63ebf3458 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4 Sequence.puml @@ -0,0 +1,23 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Mobile App - Mark Task As Done - C4 Sequence - Container level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +Boundary_End() + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mark Task As Done") +group Mark Task As Done +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Mark Task As Done") +group Mark Task As Done +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Update Task") +end +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4 Sequence.svg new file mode 100644 index 000000000..d2be9eeb1 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App[System]To Do App - Mobile App - Mark Task As Done - C4 Sequence - Container level«external_system»External«container»Mobile App«container»Web Api«container»DatabaseMark Task As DoneMark Task As DoneMark Task As DoneMark Task As DoneUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4 Static.png new file mode 100644 index 000000000..9a277445f Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4 Static.puml new file mode 100644 index 000000000..5ebb1252b --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4 Static.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - Mark Task As Done - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Uses") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Uses") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4 Static.svg new file mode 100644 index 000000000..c58e57a09 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Mark Task As Done - C4 Static - Container levelTo Do App[System]Mobile AppWeb ApiDatabaseUsesUsesLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4.png new file mode 100644 index 000000000..189f4b377 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4.puml new file mode 100644 index 000000000..8dc3797a2 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - Mark Task As Done - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Mark Task As Done") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Update Task") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4.svg new file mode 100644 index 000000000..cac650af5 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Mark Task As Done - C4 - Container levelTo Do App[System]Mobile AppWeb ApiDatabaseMark Task As DoneUpdate TaskLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - Sequence.png new file mode 100644 index 000000000..e4668c3ad Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - Sequence.puml new file mode 100644 index 000000000..e3a95175b --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - Sequence.puml @@ -0,0 +1,23 @@ +@startuml + +title To Do App - Mobile App - Mark Task As Done - Sequence - Container level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem + +box "To Do App" #White + participant "Mobile App" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp + participant "Web Api" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi + participant "Database" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database +end box + + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp : Mark Task As Done +group Mark Task As Done +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi : Mark Task As Done +group Mark Task As Done +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database : Update Task +end +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - Sequence.svg new file mode 100644 index 000000000..a7bbbf70b --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Container - Sequence.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Mark Task As Done - Sequence - Container levelTo Do AppExternalExternalMobile AppMobile AppWeb ApiWeb ApiDatabaseDatabaseMark Task As DoneMark Task As DoneMark Task As DoneMark Task As DoneUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4 Sequence.png new file mode 100644 index 000000000..14ceb6718 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4 Sequence.puml new file mode 100644 index 000000000..65b777698 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4 Sequence.puml @@ -0,0 +1,12 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Mobile App - Mark Task As Done - C4 Sequence - Context level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp, "Mark Task As Done") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4 Sequence.svg new file mode 100644 index 000000000..87cb99231 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Mark Task As Done - C4 Sequence - Context level«external_system»External«system»To Do AppMark Task As Done \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4 Static.png new file mode 100644 index 000000000..bc5525249 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4 Static.puml new file mode 100644 index 000000000..8819c3717 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - Mark Task As Done - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4 Static.svg new file mode 100644 index 000000000..617374473 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Mark Task As Done - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4.png new file mode 100644 index 000000000..cf4471024 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4.puml new file mode 100644 index 000000000..cb712a20b --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - Mark Task As Done - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4.svg new file mode 100644 index 000000000..d7f249a4d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - C4.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Mark Task As Done - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - Sequence.png new file mode 100644 index 000000000..69c5d32ca Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - Sequence.puml new file mode 100644 index 000000000..cfccda4ad --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - Sequence.puml @@ -0,0 +1,11 @@ +@startuml + +title To Do App - Mobile App - Mark Task As Done - Sequence - Context level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem +participant "To Do App" as ToDoAppExample.SoftwareSystems.ToDoApp + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp : Mark Task As Done + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - Sequence.svg new file mode 100644 index 000000000..91de5dd76 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Mark Task As Done/Context - Sequence.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Mark Task As Done - Sequence - Context levelExternalExternalTo Do AppTo Do AppMark Task As Done \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4 Sequence.png new file mode 100644 index 000000000..460ca5d5b Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4 Sequence.puml new file mode 100644 index 000000000..3a39a033b --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4 Sequence.puml @@ -0,0 +1,23 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Mobile App - Update Task - C4 Sequence - Container level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +Boundary_End() + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Update Task") +group Update Task +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Update Task") +group Update Task +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Update Task") +end +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4 Sequence.svg new file mode 100644 index 000000000..340770667 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App[System]To Do App - Mobile App - Update Task - C4 Sequence - Container level«external_system»External«container»Mobile App«container»Web Api«container»DatabaseUpdate TaskUpdate TaskUpdate TaskUpdate TaskUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4 Static.png new file mode 100644 index 000000000..e8da4c845 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4 Static.puml new file mode 100644 index 000000000..f7bbdf873 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4 Static.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - Update Task - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Uses") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Uses") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4 Static.svg new file mode 100644 index 000000000..d75b3a0ce --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Update Task - C4 Static - Container levelTo Do App[System]Mobile AppWeb ApiDatabaseUsesUsesLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4.png new file mode 100644 index 000000000..48523baeb Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4.puml new file mode 100644 index 000000000..6a3374939 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - Update Task - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Update Task") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Update Task") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4.svg new file mode 100644 index 000000000..00fb48509 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Update Task - C4 - Container levelTo Do App[System]Mobile AppWeb ApiDatabaseUpdate TaskUpdate TaskLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - Sequence.png new file mode 100644 index 000000000..f3ad62170 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - Sequence.puml new file mode 100644 index 000000000..628148fc3 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - Sequence.puml @@ -0,0 +1,23 @@ +@startuml + +title To Do App - Mobile App - Update Task - Sequence - Container level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem + +box "To Do App" #White + participant "Mobile App" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp + participant "Web Api" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi + participant "Database" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database +end box + + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp : Update Task +group Update Task +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi : Update Task +group Update Task +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database : Update Task +end +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - Sequence.svg new file mode 100644 index 000000000..ef10e3429 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Container - Sequence.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Update Task - Sequence - Container levelTo Do AppExternalExternalMobile AppMobile AppWeb ApiWeb ApiDatabaseDatabaseUpdate TaskUpdate TaskUpdate TaskUpdate TaskUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4 Sequence.png new file mode 100644 index 000000000..9161a7067 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4 Sequence.puml new file mode 100644 index 000000000..adc25d082 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4 Sequence.puml @@ -0,0 +1,12 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Mobile App - Update Task - C4 Sequence - Context level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp, "Update Task") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4 Sequence.svg new file mode 100644 index 000000000..fc76c6d68 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Update Task - C4 Sequence - Context level«external_system»External«system»To Do AppUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4 Static.png new file mode 100644 index 000000000..e0c83b6a8 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4 Static.puml new file mode 100644 index 000000000..e7981fc31 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - Update Task - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4 Static.svg new file mode 100644 index 000000000..c944c5811 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Update Task - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4.png new file mode 100644 index 000000000..a69eab3c9 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4.puml new file mode 100644 index 000000000..e3e2184e5 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - Update Task - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4.svg new file mode 100644 index 000000000..c67db41f4 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - C4.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Update Task - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - Sequence.png new file mode 100644 index 000000000..b6e1f482d Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - Sequence.puml new file mode 100644 index 000000000..5894e1473 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - Sequence.puml @@ -0,0 +1,11 @@ +@startuml + +title To Do App - Mobile App - Update Task - Sequence - Context level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem +participant "To Do App" as ToDoAppExample.SoftwareSystems.ToDoApp + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp : Update Task + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - Sequence.svg new file mode 100644 index 000000000..ae72b0e2e --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/Update Task/Context - Sequence.svg @@ -0,0 +1 @@ +To Do App - Mobile App - Update Task - Sequence - Context levelExternalExternalTo Do AppTo Do AppUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4 Sequence.png new file mode 100644 index 000000000..357bd614b Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4 Sequence.puml new file mode 100644 index 000000000..a52a7d409 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4 Sequence.puml @@ -0,0 +1,23 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Mobile App - View Tasks - C4 Sequence - Container level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +Boundary_End() + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "View Tasks") +group View Tasks +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Get Tasks") +group Get Tasks +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Select Tasks") +end +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4 Sequence.svg new file mode 100644 index 000000000..16663dede --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App[System]To Do App - Mobile App - View Tasks - C4 Sequence - Container level«external_system»External«container»Mobile App«container»Web Api«container»DatabaseView TasksView TasksGet TasksGet TasksSelect Tasks \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4 Static.png new file mode 100644 index 000000000..a420f2429 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4 Static.puml new file mode 100644 index 000000000..15823f615 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4 Static.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - View Tasks - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Uses") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Uses") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4 Static.svg new file mode 100644 index 000000000..06feebe92 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Mobile App - View Tasks - C4 Static - Container levelTo Do App[System]Mobile AppWeb ApiDatabaseUsesUsesLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4.png new file mode 100644 index 000000000..485381542 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4.puml new file mode 100644 index 000000000..7f3f37aab --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - View Tasks - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, "Mobile App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Get Tasks") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Select Tasks") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4.svg new file mode 100644 index 000000000..0ca4adaa2 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Mobile App - View Tasks - C4 - Container levelTo Do App[System]Mobile AppWeb ApiDatabaseGet TasksSelect TasksLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - Sequence.png new file mode 100644 index 000000000..ad830c53f Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - Sequence.puml new file mode 100644 index 000000000..44e6de51d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - Sequence.puml @@ -0,0 +1,23 @@ +@startuml + +title To Do App - Mobile App - View Tasks - Sequence - Container level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem + +box "To Do App" #White + participant "Mobile App" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp + participant "Web Api" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi + participant "Database" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database +end box + + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp : View Tasks +group View Tasks +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.MobileApp -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi : Get Tasks +group Get Tasks +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database : Select Tasks +end +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - Sequence.svg new file mode 100644 index 000000000..4b42c288e --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Container - Sequence.svg @@ -0,0 +1 @@ +To Do App - Mobile App - View Tasks - Sequence - Container levelTo Do AppExternalExternalMobile AppMobile AppWeb ApiWeb ApiDatabaseDatabaseView TasksView TasksGet TasksGet TasksSelect Tasks \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4 Sequence.png new file mode 100644 index 000000000..cc9621291 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4 Sequence.puml new file mode 100644 index 000000000..b2f7f2c63 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4 Sequence.puml @@ -0,0 +1,12 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Mobile App - View Tasks - C4 Sequence - Context level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp, "View Tasks") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4 Sequence.svg new file mode 100644 index 000000000..d52e7b2e9 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App - Mobile App - View Tasks - C4 Sequence - Context level«external_system»External«system»To Do AppView Tasks \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4 Static.png new file mode 100644 index 000000000..b61d53aa8 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4 Static.puml new file mode 100644 index 000000000..9ae122cee --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - View Tasks - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4 Static.svg new file mode 100644 index 000000000..5e9aca2c7 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Mobile App - View Tasks - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4.png new file mode 100644 index 000000000..9df88cbf6 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4.puml new file mode 100644 index 000000000..76fd65857 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Mobile App - View Tasks - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4.svg new file mode 100644 index 000000000..176829ab3 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - C4.svg @@ -0,0 +1 @@ +To Do App - Mobile App - View Tasks - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - Sequence.png new file mode 100644 index 000000000..d9df59993 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - Sequence.puml new file mode 100644 index 000000000..9720c6d91 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - Sequence.puml @@ -0,0 +1,11 @@ +@startuml + +title To Do App - Mobile App - View Tasks - Sequence - Context level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem +participant "To Do App" as ToDoAppExample.SoftwareSystems.ToDoApp + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp : View Tasks + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - Sequence.svg new file mode 100644 index 000000000..40d99695a --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Mobile App/Interfaces/View Tasks/Context - Sequence.svg @@ -0,0 +1 @@ +To Do App - Mobile App - View Tasks - Sequence - Context levelExternalExternalTo Do AppTo Do AppView Tasks \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Container - C4 Static.png new file mode 100644 index 000000000..bfdccf938 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Container - C4 Static.puml new file mode 100644 index 000000000..256e4fb88 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Container - C4 Static.puml @@ -0,0 +1,29 @@ +@startuml +!include ..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Uses") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Container - C4 Static.svg new file mode 100644 index 000000000..f3f6f969d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web Api - C4 Static - Container levelTo Do App[System]Web ApiDatabaseUsesLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Container - C4.png new file mode 100644 index 000000000..6964a54e8 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Container - C4.puml new file mode 100644 index 000000000..4aab51a55 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Container - C4.puml @@ -0,0 +1,29 @@ +@startuml +!include ..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Select Tasks\nInsert Task\nUpdate Task\nDelete Task") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Container - C4.svg new file mode 100644 index 000000000..234cdc85c --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Web Api - C4 - Container levelTo Do App[System]Web ApiDatabaseSelect TasksInsert TaskUpdate TaskDelete TaskLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4 Sequence.png new file mode 100644 index 000000000..a16e2fa0a Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4 Sequence.puml new file mode 100644 index 000000000..bd5c91620 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4 Sequence.puml @@ -0,0 +1,19 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Web Api - Add Task - C4 Sequence - Container level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +Boundary_End() + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Add Task") +group Add Task +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Insert Task") +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4 Sequence.svg new file mode 100644 index 000000000..b75f510d2 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App[System]To Do App - Web Api - Add Task - C4 Sequence - Container level«external_system»External«container»Web Api«container»DatabaseAdd TaskAdd TaskInsert Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4 Static.png new file mode 100644 index 000000000..c81385b85 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4 Static.puml new file mode 100644 index 000000000..c470f89ac --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4 Static.puml @@ -0,0 +1,29 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - Add Task - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Uses") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4 Static.svg new file mode 100644 index 000000000..8ad00ba16 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web Api - Add Task - C4 Static - Container levelTo Do App[System]Web ApiDatabaseUsesLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4.png new file mode 100644 index 000000000..67e3719fc Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4.puml new file mode 100644 index 000000000..bbcf24f76 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4.puml @@ -0,0 +1,29 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - Add Task - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Insert Task") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4.svg new file mode 100644 index 000000000..0d5e3b46a --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Web Api - Add Task - C4 - Container levelTo Do App[System]Web ApiDatabaseInsert TaskLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - Sequence.png new file mode 100644 index 000000000..34fd8efe9 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - Sequence.puml new file mode 100644 index 000000000..cbf4f0efa --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - Sequence.puml @@ -0,0 +1,19 @@ +@startuml + +title To Do App - Web Api - Add Task - Sequence - Container level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem + +box "To Do App" #White + participant "Web Api" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi + participant "Database" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database +end box + + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi : Add Task +group Add Task +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database : Insert Task +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - Sequence.svg new file mode 100644 index 000000000..16e90ce53 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Container - Sequence.svg @@ -0,0 +1 @@ +To Do App - Web Api - Add Task - Sequence - Container levelTo Do AppExternalExternalWeb ApiWeb ApiDatabaseDatabaseAdd TaskAdd TaskInsert Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4 Sequence.png new file mode 100644 index 000000000..f5975be94 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4 Sequence.puml new file mode 100644 index 000000000..f051bdfc1 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4 Sequence.puml @@ -0,0 +1,12 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Web Api - Add Task - C4 Sequence - Context level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp, "Add Task") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4 Sequence.svg new file mode 100644 index 000000000..0322cb4b7 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App - Web Api - Add Task - C4 Sequence - Context level«external_system»External«system»To Do AppAdd Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4 Static.png new file mode 100644 index 000000000..c5e902672 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4 Static.puml new file mode 100644 index 000000000..2eff0ac2c --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - Add Task - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4 Static.svg new file mode 100644 index 000000000..c92e05e9a --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web Api - Add Task - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4.png new file mode 100644 index 000000000..53e8d5cfe Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4.puml new file mode 100644 index 000000000..81bf63298 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - Add Task - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4.svg new file mode 100644 index 000000000..4ff7466a4 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - C4.svg @@ -0,0 +1 @@ +To Do App - Web Api - Add Task - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - Sequence.png new file mode 100644 index 000000000..27896c1d2 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - Sequence.puml new file mode 100644 index 000000000..d01306d50 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - Sequence.puml @@ -0,0 +1,11 @@ +@startuml + +title To Do App - Web Api - Add Task - Sequence - Context level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem +participant "To Do App" as ToDoAppExample.SoftwareSystems.ToDoApp + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp : Add Task + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - Sequence.svg new file mode 100644 index 000000000..fca62a4a7 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Add Task/Context - Sequence.svg @@ -0,0 +1 @@ +To Do App - Web Api - Add Task - Sequence - Context levelExternalExternalTo Do AppTo Do AppAdd Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4 Sequence.png new file mode 100644 index 000000000..d39a046ab Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4 Sequence.puml new file mode 100644 index 000000000..a6f95e466 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4 Sequence.puml @@ -0,0 +1,19 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Web Api - Delete Task - C4 Sequence - Container level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +Boundary_End() + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Delete Task") +group Delete Task +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Delete Task") +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4 Sequence.svg new file mode 100644 index 000000000..7c02d1fde --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App[System]To Do App - Web Api - Delete Task - C4 Sequence - Container level«external_system»External«container»Web Api«container»DatabaseDelete TaskDelete TaskDelete Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4 Static.png new file mode 100644 index 000000000..998ff8f04 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4 Static.puml new file mode 100644 index 000000000..2a24f07da --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4 Static.puml @@ -0,0 +1,29 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - Delete Task - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Uses") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4 Static.svg new file mode 100644 index 000000000..7a2a80bbd --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web Api - Delete Task - C4 Static - Container levelTo Do App[System]Web ApiDatabaseUsesLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4.png new file mode 100644 index 000000000..a5b239c57 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4.puml new file mode 100644 index 000000000..42a06ed57 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4.puml @@ -0,0 +1,29 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - Delete Task - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Delete Task") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4.svg new file mode 100644 index 000000000..e4f9154a8 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Web Api - Delete Task - C4 - Container levelTo Do App[System]Web ApiDatabaseDelete TaskLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - Sequence.png new file mode 100644 index 000000000..5225f3e67 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - Sequence.puml new file mode 100644 index 000000000..d99562c0d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - Sequence.puml @@ -0,0 +1,19 @@ +@startuml + +title To Do App - Web Api - Delete Task - Sequence - Container level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem + +box "To Do App" #White + participant "Web Api" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi + participant "Database" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database +end box + + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi : Delete Task +group Delete Task +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database : Delete Task +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - Sequence.svg new file mode 100644 index 000000000..63c10c98a --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Container - Sequence.svg @@ -0,0 +1 @@ +To Do App - Web Api - Delete Task - Sequence - Container levelTo Do AppExternalExternalWeb ApiWeb ApiDatabaseDatabaseDelete TaskDelete TaskDelete Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4 Sequence.png new file mode 100644 index 000000000..0f704ae4b Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4 Sequence.puml new file mode 100644 index 000000000..8e41777a7 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4 Sequence.puml @@ -0,0 +1,12 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Web Api - Delete Task - C4 Sequence - Context level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp, "Delete Task") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4 Sequence.svg new file mode 100644 index 000000000..bd2a7623d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App - Web Api - Delete Task - C4 Sequence - Context level«external_system»External«system»To Do AppDelete Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4 Static.png new file mode 100644 index 000000000..8aae871f3 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4 Static.puml new file mode 100644 index 000000000..8bacec362 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - Delete Task - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4 Static.svg new file mode 100644 index 000000000..37d2983aa --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web Api - Delete Task - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4.png new file mode 100644 index 000000000..15e84665d Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4.puml new file mode 100644 index 000000000..a27533672 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - Delete Task - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4.svg new file mode 100644 index 000000000..00428e27e --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - C4.svg @@ -0,0 +1 @@ +To Do App - Web Api - Delete Task - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - Sequence.png new file mode 100644 index 000000000..8e6339312 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - Sequence.puml new file mode 100644 index 000000000..ef9b187aa --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - Sequence.puml @@ -0,0 +1,11 @@ +@startuml + +title To Do App - Web Api - Delete Task - Sequence - Context level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem +participant "To Do App" as ToDoAppExample.SoftwareSystems.ToDoApp + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp : Delete Task + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - Sequence.svg new file mode 100644 index 000000000..11abd74b3 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Delete Task/Context - Sequence.svg @@ -0,0 +1 @@ +To Do App - Web Api - Delete Task - Sequence - Context levelExternalExternalTo Do AppTo Do AppDelete Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4 Sequence.png new file mode 100644 index 000000000..8b35b316a Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4 Sequence.puml new file mode 100644 index 000000000..25ddd2171 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4 Sequence.puml @@ -0,0 +1,19 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Web Api - Get Tasks - C4 Sequence - Container level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +Boundary_End() + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Get Tasks") +group Get Tasks +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Select Tasks") +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4 Sequence.svg new file mode 100644 index 000000000..b206ed91a --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App[System]To Do App - Web Api - Get Tasks - C4 Sequence - Container level«external_system»External«container»Web Api«container»DatabaseGet TasksGet TasksSelect Tasks \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4 Static.png new file mode 100644 index 000000000..cfd35fb27 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4 Static.puml new file mode 100644 index 000000000..f67a23de5 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4 Static.puml @@ -0,0 +1,29 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - Get Tasks - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Uses") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4 Static.svg new file mode 100644 index 000000000..c5e51217f --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web Api - Get Tasks - C4 Static - Container levelTo Do App[System]Web ApiDatabaseUsesLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4.png new file mode 100644 index 000000000..6938be11f Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4.puml new file mode 100644 index 000000000..856c06209 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4.puml @@ -0,0 +1,29 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - Get Tasks - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Select Tasks") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4.svg new file mode 100644 index 000000000..1017aacd6 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Web Api - Get Tasks - C4 - Container levelTo Do App[System]Web ApiDatabaseSelect TasksLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - Sequence.png new file mode 100644 index 000000000..c0607a86d Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - Sequence.puml new file mode 100644 index 000000000..7db152ce4 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - Sequence.puml @@ -0,0 +1,19 @@ +@startuml + +title To Do App - Web Api - Get Tasks - Sequence - Container level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem + +box "To Do App" #White + participant "Web Api" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi + participant "Database" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database +end box + + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi : Get Tasks +group Get Tasks +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database : Select Tasks +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - Sequence.svg new file mode 100644 index 000000000..070727383 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Container - Sequence.svg @@ -0,0 +1 @@ +To Do App - Web Api - Get Tasks - Sequence - Container levelTo Do AppExternalExternalWeb ApiWeb ApiDatabaseDatabaseGet TasksGet TasksSelect Tasks \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4 Sequence.png new file mode 100644 index 000000000..6c57c4156 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4 Sequence.puml new file mode 100644 index 000000000..8800094dc --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4 Sequence.puml @@ -0,0 +1,12 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Web Api - Get Tasks - C4 Sequence - Context level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp, "Get Tasks") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4 Sequence.svg new file mode 100644 index 000000000..e82e66146 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App - Web Api - Get Tasks - C4 Sequence - Context level«external_system»External«system»To Do AppGet Tasks \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4 Static.png new file mode 100644 index 000000000..a81d00eed Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4 Static.puml new file mode 100644 index 000000000..80514b809 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - Get Tasks - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4 Static.svg new file mode 100644 index 000000000..618a7c34b --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web Api - Get Tasks - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4.png new file mode 100644 index 000000000..0ab99fbcc Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4.puml new file mode 100644 index 000000000..3c0d9e04d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - Get Tasks - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4.svg new file mode 100644 index 000000000..09da74280 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - C4.svg @@ -0,0 +1 @@ +To Do App - Web Api - Get Tasks - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - Sequence.png new file mode 100644 index 000000000..14fc9e145 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - Sequence.puml new file mode 100644 index 000000000..d4aaf9835 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - Sequence.puml @@ -0,0 +1,11 @@ +@startuml + +title To Do App - Web Api - Get Tasks - Sequence - Context level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem +participant "To Do App" as ToDoAppExample.SoftwareSystems.ToDoApp + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp : Get Tasks + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - Sequence.svg new file mode 100644 index 000000000..bde0c0aa7 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Get Tasks/Context - Sequence.svg @@ -0,0 +1 @@ +To Do App - Web Api - Get Tasks - Sequence - Context levelExternalExternalTo Do AppTo Do AppGet Tasks \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4 Sequence.png new file mode 100644 index 000000000..117e5a062 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4 Sequence.puml new file mode 100644 index 000000000..7896a6f46 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4 Sequence.puml @@ -0,0 +1,19 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Web Api - Mark Task As Done - C4 Sequence - Container level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +Boundary_End() + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Mark Task As Done") +group Mark Task As Done +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Update Task") +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4 Sequence.svg new file mode 100644 index 000000000..4026c46b6 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App[System]To Do App - Web Api - Mark Task As Done - C4 Sequence - Container level«external_system»External«container»Web Api«container»DatabaseMark Task As DoneMark Task As DoneUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4 Static.png new file mode 100644 index 000000000..74415950b Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4 Static.puml new file mode 100644 index 000000000..70d3105af --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4 Static.puml @@ -0,0 +1,29 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - Mark Task As Done - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Uses") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4 Static.svg new file mode 100644 index 000000000..f9a899af3 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web Api - Mark Task As Done - C4 Static - Container levelTo Do App[System]Web ApiDatabaseUsesLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4.png new file mode 100644 index 000000000..d58e439a3 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4.puml new file mode 100644 index 000000000..c90531502 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4.puml @@ -0,0 +1,29 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - Mark Task As Done - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Update Task") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4.svg new file mode 100644 index 000000000..5ade41660 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Web Api - Mark Task As Done - C4 - Container levelTo Do App[System]Web ApiDatabaseUpdate TaskLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - Sequence.png new file mode 100644 index 000000000..f3111ca9c Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - Sequence.puml new file mode 100644 index 000000000..30fea3c0b --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - Sequence.puml @@ -0,0 +1,19 @@ +@startuml + +title To Do App - Web Api - Mark Task As Done - Sequence - Container level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem + +box "To Do App" #White + participant "Web Api" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi + participant "Database" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database +end box + + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi : Mark Task As Done +group Mark Task As Done +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database : Update Task +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - Sequence.svg new file mode 100644 index 000000000..84a2955d9 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Container - Sequence.svg @@ -0,0 +1 @@ +To Do App - Web Api - Mark Task As Done - Sequence - Container levelTo Do AppExternalExternalWeb ApiWeb ApiDatabaseDatabaseMark Task As DoneMark Task As DoneUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4 Sequence.png new file mode 100644 index 000000000..e87e324e8 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4 Sequence.puml new file mode 100644 index 000000000..25120789d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4 Sequence.puml @@ -0,0 +1,12 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Web Api - Mark Task As Done - C4 Sequence - Context level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp, "Mark Task As Done") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4 Sequence.svg new file mode 100644 index 000000000..c716941c2 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App - Web Api - Mark Task As Done - C4 Sequence - Context level«external_system»External«system»To Do AppMark Task As Done \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4 Static.png new file mode 100644 index 000000000..e0d183b2c Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4 Static.puml new file mode 100644 index 000000000..ea8d92c99 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - Mark Task As Done - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4 Static.svg new file mode 100644 index 000000000..1aa863dc7 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web Api - Mark Task As Done - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4.png new file mode 100644 index 000000000..bb7b02e92 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4.puml new file mode 100644 index 000000000..0c54e6cec --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - Mark Task As Done - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4.svg new file mode 100644 index 000000000..8feab0e08 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - C4.svg @@ -0,0 +1 @@ +To Do App - Web Api - Mark Task As Done - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - Sequence.png new file mode 100644 index 000000000..f75096efa Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - Sequence.puml new file mode 100644 index 000000000..a462caef2 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - Sequence.puml @@ -0,0 +1,11 @@ +@startuml + +title To Do App - Web Api - Mark Task As Done - Sequence - Context level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem +participant "To Do App" as ToDoAppExample.SoftwareSystems.ToDoApp + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp : Mark Task As Done + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - Sequence.svg new file mode 100644 index 000000000..2a3155b3e --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Mark Task As Done/Context - Sequence.svg @@ -0,0 +1 @@ +To Do App - Web Api - Mark Task As Done - Sequence - Context levelExternalExternalTo Do AppTo Do AppMark Task As Done \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4 Sequence.png new file mode 100644 index 000000000..6f591c93f Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4 Sequence.puml new file mode 100644 index 000000000..cc297f41b --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4 Sequence.puml @@ -0,0 +1,19 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Web Api - Update Task - C4 Sequence - Container level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +Boundary_End() + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Update Task") +group Update Task +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Update Task") +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4 Sequence.svg new file mode 100644 index 000000000..853509c49 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App[System]To Do App - Web Api - Update Task - C4 Sequence - Container level«external_system»External«container»Web Api«container»DatabaseUpdate TaskUpdate TaskUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4 Static.png new file mode 100644 index 000000000..700bf01a9 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4 Static.puml new file mode 100644 index 000000000..6828a5a26 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4 Static.puml @@ -0,0 +1,29 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - Update Task - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Uses") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4 Static.svg new file mode 100644 index 000000000..c5f02347a --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web Api - Update Task - C4 Static - Container levelTo Do App[System]Web ApiDatabaseUsesLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4.png new file mode 100644 index 000000000..7d845af47 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4.puml new file mode 100644 index 000000000..a40366407 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4.puml @@ -0,0 +1,29 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - Update Task - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Update Task") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4.svg new file mode 100644 index 000000000..2b521ec71 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Web Api - Update Task - C4 - Container levelTo Do App[System]Web ApiDatabaseUpdate TaskLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - Sequence.png new file mode 100644 index 000000000..3cc28a6fa Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - Sequence.puml new file mode 100644 index 000000000..95f4ef262 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - Sequence.puml @@ -0,0 +1,19 @@ +@startuml + +title To Do App - Web Api - Update Task - Sequence - Container level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem + +box "To Do App" #White + participant "Web Api" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi + participant "Database" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database +end box + + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi : Update Task +group Update Task +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database : Update Task +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - Sequence.svg new file mode 100644 index 000000000..7d4219b14 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Container - Sequence.svg @@ -0,0 +1 @@ +To Do App - Web Api - Update Task - Sequence - Container levelTo Do AppExternalExternalWeb ApiWeb ApiDatabaseDatabaseUpdate TaskUpdate TaskUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4 Sequence.png new file mode 100644 index 000000000..bea9af145 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4 Sequence.puml new file mode 100644 index 000000000..9f87ec6e8 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4 Sequence.puml @@ -0,0 +1,12 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Web Api - Update Task - C4 Sequence - Context level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp, "Update Task") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4 Sequence.svg new file mode 100644 index 000000000..821b78a23 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App - Web Api - Update Task - C4 Sequence - Context level«external_system»External«system»To Do AppUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4 Static.png new file mode 100644 index 000000000..4a1283aca Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4 Static.puml new file mode 100644 index 000000000..74b4c5207 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - Update Task - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4 Static.svg new file mode 100644 index 000000000..a1210cad3 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web Api - Update Task - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4.png new file mode 100644 index 000000000..84f1635c0 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4.puml new file mode 100644 index 000000000..f80c6c979 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web Api - Update Task - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4.svg new file mode 100644 index 000000000..39000aebc --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - C4.svg @@ -0,0 +1 @@ +To Do App - Web Api - Update Task - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - Sequence.png new file mode 100644 index 000000000..5b4d3e099 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - Sequence.puml new file mode 100644 index 000000000..76b6a9b14 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - Sequence.puml @@ -0,0 +1,11 @@ +@startuml + +title To Do App - Web Api - Update Task - Sequence - Context level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem +participant "To Do App" as ToDoAppExample.SoftwareSystems.ToDoApp + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp : Update Task + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - Sequence.svg new file mode 100644 index 000000000..a4d42d319 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web Api/Interfaces/Update Task/Context - Sequence.svg @@ -0,0 +1 @@ +To Do App - Web Api - Update Task - Sequence - Context levelExternalExternalTo Do AppTo Do AppUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Container - C4 Static.png new file mode 100644 index 000000000..68db20e55 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Container - C4 Static.puml new file mode 100644 index 000000000..388d500b1 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Container - C4 Static.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Uses") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Uses") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Container - C4 Static.svg new file mode 100644 index 000000000..41e65987c --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web App - C4 Static - Container levelTo Do App[System]Web AppWeb ApiDatabaseUsesUsesLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Container - C4.png new file mode 100644 index 000000000..4400f6b50 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Container - C4.puml new file mode 100644 index 000000000..12ed1eef6 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Container - C4.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Get Tasks\nAdd Task\nUpdate Task\nDelete Task\nMark Task As Done") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Select Tasks\nInsert Task\nUpdate Task\nDelete Task") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Container - C4.svg new file mode 100644 index 000000000..73ec69b11 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Web App - C4 - Container levelTo Do App[System]Web AppWeb ApiDatabaseGet TasksAdd TaskUpdate TaskDelete TaskMark Task As DoneSelect TasksInsert TaskUpdate TaskDelete TaskLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4 Sequence.png new file mode 100644 index 000000000..943b16d13 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4 Sequence.puml new file mode 100644 index 000000000..6d0e21863 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4 Sequence.puml @@ -0,0 +1,23 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Web App - Add Task - C4 Sequence - Container level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +Boundary_End() + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Add Task") +group Add Task +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Add Task") +group Add Task +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Insert Task") +end +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4 Sequence.svg new file mode 100644 index 000000000..b5b93db52 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App[System]To Do App - Web App - Add Task - C4 Sequence - Container level«external_system»External«container»Web App«container»Web Api«container»DatabaseAdd TaskAdd TaskAdd TaskAdd TaskInsert Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4 Static.png new file mode 100644 index 000000000..4b8f895a4 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4 Static.puml new file mode 100644 index 000000000..64323aa9c --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4 Static.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - Add Task - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Uses") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Uses") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4 Static.svg new file mode 100644 index 000000000..4c43c123a --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web App - Add Task - C4 Static - Container levelTo Do App[System]Web AppWeb ApiDatabaseUsesUsesLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4.png new file mode 100644 index 000000000..92bb2a4a9 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4.puml new file mode 100644 index 000000000..1e378ff6e --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - Add Task - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Add Task") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Insert Task") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4.svg new file mode 100644 index 000000000..3a524caa5 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Web App - Add Task - C4 - Container levelTo Do App[System]Web AppWeb ApiDatabaseAdd TaskInsert TaskLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - Sequence.png new file mode 100644 index 000000000..f5fb7a5c4 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - Sequence.puml new file mode 100644 index 000000000..cdfaf6b72 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - Sequence.puml @@ -0,0 +1,23 @@ +@startuml + +title To Do App - Web App - Add Task - Sequence - Container level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem + +box "To Do App" #White + participant "Web App" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp + participant "Web Api" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi + participant "Database" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database +end box + + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp : Add Task +group Add Task +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi : Add Task +group Add Task +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database : Insert Task +end +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - Sequence.svg new file mode 100644 index 000000000..1e06b66f1 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Container - Sequence.svg @@ -0,0 +1 @@ +To Do App - Web App - Add Task - Sequence - Container levelTo Do AppExternalExternalWeb AppWeb AppWeb ApiWeb ApiDatabaseDatabaseAdd TaskAdd TaskAdd TaskAdd TaskInsert Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4 Sequence.png new file mode 100644 index 000000000..dc5627e2e Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4 Sequence.puml new file mode 100644 index 000000000..a70d27a88 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4 Sequence.puml @@ -0,0 +1,12 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Web App - Add Task - C4 Sequence - Context level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp, "Add Task") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4 Sequence.svg new file mode 100644 index 000000000..7fb59b6aa --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App - Web App - Add Task - C4 Sequence - Context level«external_system»External«system»To Do AppAdd Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4 Static.png new file mode 100644 index 000000000..b46762c3e Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4 Static.puml new file mode 100644 index 000000000..745bb5beb --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - Add Task - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4 Static.svg new file mode 100644 index 000000000..1e05d8e2d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web App - Add Task - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4.png new file mode 100644 index 000000000..602ba7b0a Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4.puml new file mode 100644 index 000000000..2f146621c --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - Add Task - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4.svg new file mode 100644 index 000000000..73ac32457 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - C4.svg @@ -0,0 +1 @@ +To Do App - Web App - Add Task - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - Sequence.puml new file mode 100644 index 000000000..a7713925e --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - Sequence.puml @@ -0,0 +1,11 @@ +@startuml + +title To Do App - Web App - Add Task - Sequence - Context level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem +participant "To Do App" as ToDoAppExample.SoftwareSystems.ToDoApp + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp : Add Task + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - Sequence.svg new file mode 100644 index 000000000..5679a2624 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Add Task/Context - Sequence.svg @@ -0,0 +1 @@ +To Do App - Web App - Add Task - Sequence - Context levelExternalExternalTo Do AppTo Do AppAdd Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4 Sequence.png new file mode 100644 index 000000000..367780ed7 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4 Sequence.puml new file mode 100644 index 000000000..5a36bc5e4 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4 Sequence.puml @@ -0,0 +1,23 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Web App - Delete Task - C4 Sequence - Container level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +Boundary_End() + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Delete Task") +group Delete Task +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Delete Task") +group Delete Task +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Delete Task") +end +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4 Sequence.svg new file mode 100644 index 000000000..a5eaa9bf7 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App[System]To Do App - Web App - Delete Task - C4 Sequence - Container level«external_system»External«container»Web App«container»Web Api«container»DatabaseDelete TaskDelete TaskDelete TaskDelete TaskDelete Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4 Static.png new file mode 100644 index 000000000..cd494d692 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4 Static.puml new file mode 100644 index 000000000..814574d74 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4 Static.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - Delete Task - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Uses") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Uses") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4 Static.svg new file mode 100644 index 000000000..62c1fa814 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web App - Delete Task - C4 Static - Container levelTo Do App[System]Web AppWeb ApiDatabaseUsesUsesLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4.png new file mode 100644 index 000000000..2378764f2 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4.puml new file mode 100644 index 000000000..fed85ad65 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - Delete Task - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Delete Task") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Delete Task") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4.svg new file mode 100644 index 000000000..1318c9ba0 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Web App - Delete Task - C4 - Container levelTo Do App[System]Web AppWeb ApiDatabaseDelete TaskDelete TaskLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - Sequence.png new file mode 100644 index 000000000..e6c802424 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - Sequence.puml new file mode 100644 index 000000000..23289e262 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - Sequence.puml @@ -0,0 +1,23 @@ +@startuml + +title To Do App - Web App - Delete Task - Sequence - Container level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem + +box "To Do App" #White + participant "Web App" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp + participant "Web Api" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi + participant "Database" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database +end box + + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp : Delete Task +group Delete Task +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi : Delete Task +group Delete Task +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database : Delete Task +end +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - Sequence.svg new file mode 100644 index 000000000..60ec641c4 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Container - Sequence.svg @@ -0,0 +1 @@ +To Do App - Web App - Delete Task - Sequence - Container levelTo Do AppExternalExternalWeb AppWeb AppWeb ApiWeb ApiDatabaseDatabaseDelete TaskDelete TaskDelete TaskDelete TaskDelete Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4 Sequence.png new file mode 100644 index 000000000..1102b3f85 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4 Sequence.puml new file mode 100644 index 000000000..be1339028 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4 Sequence.puml @@ -0,0 +1,12 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Web App - Delete Task - C4 Sequence - Context level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp, "Delete Task") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4 Sequence.svg new file mode 100644 index 000000000..179d3862e --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App - Web App - Delete Task - C4 Sequence - Context level«external_system»External«system»To Do AppDelete Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4 Static.png new file mode 100644 index 000000000..b3230c42c Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4 Static.puml new file mode 100644 index 000000000..0fb566624 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - Delete Task - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4 Static.svg new file mode 100644 index 000000000..ffacf3040 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web App - Delete Task - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4.png new file mode 100644 index 000000000..35df8f0d2 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4.puml new file mode 100644 index 000000000..1a133c4df --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - Delete Task - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4.svg new file mode 100644 index 000000000..bfbffaa60 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - C4.svg @@ -0,0 +1 @@ +To Do App - Web App - Delete Task - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - Sequence.png new file mode 100644 index 000000000..1a2c326a2 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - Sequence.puml new file mode 100644 index 000000000..2bd01bf1f --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - Sequence.puml @@ -0,0 +1,11 @@ +@startuml + +title To Do App - Web App - Delete Task - Sequence - Context level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem +participant "To Do App" as ToDoAppExample.SoftwareSystems.ToDoApp + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp : Delete Task + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - Sequence.svg new file mode 100644 index 000000000..7517d1d40 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Delete Task/Context - Sequence.svg @@ -0,0 +1 @@ +To Do App - Web App - Delete Task - Sequence - Context levelExternalExternalTo Do AppTo Do AppDelete Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4 Sequence.png new file mode 100644 index 000000000..c3e72027e Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4 Sequence.puml new file mode 100644 index 000000000..1eb519194 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4 Sequence.puml @@ -0,0 +1,23 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Web App - Mark Task As Done - C4 Sequence - Container level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +Boundary_End() + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Mark Task As Done") +group Mark Task As Done +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Mark Task As Done") +group Mark Task As Done +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Update Task") +end +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4 Sequence.svg new file mode 100644 index 000000000..75c9acb46 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App[System]To Do App - Web App - Mark Task As Done - C4 Sequence - Container level«external_system»External«container»Web App«container»Web Api«container»DatabaseMark Task As DoneMark Task As DoneMark Task As DoneMark Task As DoneUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4 Static.png new file mode 100644 index 000000000..327981ca8 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4 Static.puml new file mode 100644 index 000000000..6265d24e6 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4 Static.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - Mark Task As Done - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Uses") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Uses") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4 Static.svg new file mode 100644 index 000000000..e41389411 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web App - Mark Task As Done - C4 Static - Container levelTo Do App[System]Web AppWeb ApiDatabaseUsesUsesLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4.png new file mode 100644 index 000000000..24351f2ca Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4.puml new file mode 100644 index 000000000..3fa27f6c7 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - Mark Task As Done - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Mark Task As Done") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Update Task") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4.svg new file mode 100644 index 000000000..ca57d3bee --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Web App - Mark Task As Done - C4 - Container levelTo Do App[System]Web AppWeb ApiDatabaseMark Task As DoneUpdate TaskLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - Sequence.png new file mode 100644 index 000000000..c8993d334 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - Sequence.puml new file mode 100644 index 000000000..f587f174b --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - Sequence.puml @@ -0,0 +1,23 @@ +@startuml + +title To Do App - Web App - Mark Task As Done - Sequence - Container level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem + +box "To Do App" #White + participant "Web App" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp + participant "Web Api" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi + participant "Database" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database +end box + + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp : Mark Task As Done +group Mark Task As Done +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi : Mark Task As Done +group Mark Task As Done +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database : Update Task +end +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - Sequence.svg new file mode 100644 index 000000000..a8a00718e --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Container - Sequence.svg @@ -0,0 +1 @@ +To Do App - Web App - Mark Task As Done - Sequence - Container levelTo Do AppExternalExternalWeb AppWeb AppWeb ApiWeb ApiDatabaseDatabaseMark Task As DoneMark Task As DoneMark Task As DoneMark Task As DoneUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4 Sequence.png new file mode 100644 index 000000000..3386138a3 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4 Sequence.puml new file mode 100644 index 000000000..456682b13 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4 Sequence.puml @@ -0,0 +1,12 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Web App - Mark Task As Done - C4 Sequence - Context level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp, "Mark Task As Done") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4 Sequence.svg new file mode 100644 index 000000000..ebb0e4b19 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App - Web App - Mark Task As Done - C4 Sequence - Context level«external_system»External«system»To Do AppMark Task As Done \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4 Static.png new file mode 100644 index 000000000..f120c080d Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4 Static.puml new file mode 100644 index 000000000..fa289b4c6 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - Mark Task As Done - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4 Static.svg new file mode 100644 index 000000000..0e116686f --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web App - Mark Task As Done - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4.png new file mode 100644 index 000000000..e46df0fe4 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4.puml new file mode 100644 index 000000000..48b64b0cd --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - Mark Task As Done - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4.svg new file mode 100644 index 000000000..88a36aec4 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - C4.svg @@ -0,0 +1 @@ +To Do App - Web App - Mark Task As Done - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - Sequence.png new file mode 100644 index 000000000..be6abddd2 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - Sequence.puml new file mode 100644 index 000000000..0b400122c --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - Sequence.puml @@ -0,0 +1,11 @@ +@startuml + +title To Do App - Web App - Mark Task As Done - Sequence - Context level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem +participant "To Do App" as ToDoAppExample.SoftwareSystems.ToDoApp + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp : Mark Task As Done + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - Sequence.svg new file mode 100644 index 000000000..74fd97c90 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Mark Task As Done/Context - Sequence.svg @@ -0,0 +1 @@ +To Do App - Web App - Mark Task As Done - Sequence - Context levelExternalExternalTo Do AppTo Do AppMark Task As Done \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4 Sequence.png new file mode 100644 index 000000000..7e9e6e8be Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4 Sequence.puml new file mode 100644 index 000000000..ed350e4ec --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4 Sequence.puml @@ -0,0 +1,23 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Web App - Update Task - C4 Sequence - Container level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +Boundary_End() + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Update Task") +group Update Task +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Update Task") +group Update Task +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Update Task") +end +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4 Sequence.svg new file mode 100644 index 000000000..16c5230f0 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App[System]To Do App - Web App - Update Task - C4 Sequence - Container level«external_system»External«container»Web App«container»Web Api«container»DatabaseUpdate TaskUpdate TaskUpdate TaskUpdate TaskUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4 Static.png new file mode 100644 index 000000000..8e2a2fe27 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4 Static.puml new file mode 100644 index 000000000..0d04acdcf --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4 Static.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - Update Task - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Uses") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Uses") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4 Static.svg new file mode 100644 index 000000000..38b00eb99 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web App - Update Task - C4 Static - Container levelTo Do App[System]Web AppWeb ApiDatabaseUsesUsesLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4.png new file mode 100644 index 000000000..21069fbd6 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4.puml new file mode 100644 index 000000000..b954c81f5 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - Update Task - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Update Task") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Update Task") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4.svg new file mode 100644 index 000000000..4e9b19ba9 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Web App - Update Task - C4 - Container levelTo Do App[System]Web AppWeb ApiDatabaseUpdate TaskUpdate TaskLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - Sequence.png new file mode 100644 index 000000000..1c50addc6 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - Sequence.puml new file mode 100644 index 000000000..2458695ea --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - Sequence.puml @@ -0,0 +1,23 @@ +@startuml + +title To Do App - Web App - Update Task - Sequence - Container level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem + +box "To Do App" #White + participant "Web App" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp + participant "Web Api" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi + participant "Database" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database +end box + + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp : Update Task +group Update Task +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi : Update Task +group Update Task +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database : Update Task +end +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - Sequence.svg new file mode 100644 index 000000000..e55100585 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Container - Sequence.svg @@ -0,0 +1 @@ +To Do App - Web App - Update Task - Sequence - Container levelTo Do AppExternalExternalWeb AppWeb AppWeb ApiWeb ApiDatabaseDatabaseUpdate TaskUpdate TaskUpdate TaskUpdate TaskUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4 Sequence.png new file mode 100644 index 000000000..457799911 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4 Sequence.puml new file mode 100644 index 000000000..7fcfe7250 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4 Sequence.puml @@ -0,0 +1,12 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Web App - Update Task - C4 Sequence - Context level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp, "Update Task") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4 Sequence.svg new file mode 100644 index 000000000..a5436f9c8 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App - Web App - Update Task - C4 Sequence - Context level«external_system»External«system»To Do AppUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4 Static.png new file mode 100644 index 000000000..403fc9768 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4 Static.puml new file mode 100644 index 000000000..dbd3cabf1 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - Update Task - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4 Static.svg new file mode 100644 index 000000000..f60f27010 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web App - Update Task - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4.png new file mode 100644 index 000000000..1501e47c0 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4.puml new file mode 100644 index 000000000..12a5493ca --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - Update Task - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4.svg new file mode 100644 index 000000000..6e8d46a6f --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - C4.svg @@ -0,0 +1 @@ +To Do App - Web App - Update Task - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - Sequence.png new file mode 100644 index 000000000..414fcd3d1 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - Sequence.puml new file mode 100644 index 000000000..5c7c8fef9 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - Sequence.puml @@ -0,0 +1,11 @@ +@startuml + +title To Do App - Web App - Update Task - Sequence - Context level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem +participant "To Do App" as ToDoAppExample.SoftwareSystems.ToDoApp + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp : Update Task + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - Sequence.svg new file mode 100644 index 000000000..48c30136d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/Update Task/Context - Sequence.svg @@ -0,0 +1 @@ +To Do App - Web App - Update Task - Sequence - Context levelExternalExternalTo Do AppTo Do AppUpdate Task \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4 Sequence.png new file mode 100644 index 000000000..77c029ffe Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4 Sequence.puml new file mode 100644 index 000000000..9807d9a4d --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4 Sequence.puml @@ -0,0 +1,23 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Web App - View Tasks - C4 Sequence - Container level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +Boundary_End() + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "View Tasks") +group View Tasks +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Get Tasks") +group Get Tasks +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Select Tasks") +end +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4 Sequence.svg new file mode 100644 index 000000000..820ee3f65 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App[System]To Do App - Web App - View Tasks - C4 Sequence - Container level«external_system»External«container»Web App«container»Web Api«container»DatabaseView TasksView TasksGet TasksGet TasksSelect Tasks \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4 Static.png new file mode 100644 index 000000000..9f28e6ff1 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4 Static.puml new file mode 100644 index 000000000..1377810c0 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4 Static.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - View Tasks - C4 Static - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Uses") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Uses") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4 Static.svg new file mode 100644 index 000000000..e9d51a6e2 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web App - View Tasks - C4 Static - Container levelTo Do App[System]Web AppWeb ApiDatabaseUsesUsesLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4.png new file mode 100644 index 000000000..8d95f902a Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4.puml new file mode 100644 index 000000000..384725902 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4.puml @@ -0,0 +1,31 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Container.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - View Tasks - C4 - Container level + + +System_Boundary(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App") { + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, "Web App", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Web Api", "", "") + Container(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Database", "", "") +} + +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, "Get Tasks") +Rel(ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi, ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database, "Select Tasks") + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4.svg new file mode 100644 index 000000000..88b394b39 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - C4.svg @@ -0,0 +1 @@ +To Do App - Web App - View Tasks - C4 - Container levelTo Do App[System]Web AppWeb ApiDatabaseGet TasksSelect TasksLegend  container  system boundary(dashed)  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - Sequence.png new file mode 100644 index 000000000..23237f12a Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - Sequence.puml new file mode 100644 index 000000000..12138bccf --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - Sequence.puml @@ -0,0 +1,23 @@ +@startuml + +title To Do App - Web App - View Tasks - Sequence - Container level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem + +box "To Do App" #White + participant "Web App" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp + participant "Web Api" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi + participant "Database" as ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database +end box + + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp : View Tasks +group View Tasks +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApp -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi : Get Tasks +group Get Tasks +ToDoAppExample.SoftwareSystems.ToDoApp.Containers.WebApi -> ToDoAppExample.SoftwareSystems.ToDoApp.Containers.Database : Select Tasks +end +end + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - Sequence.svg new file mode 100644 index 000000000..2d14be88b --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Container - Sequence.svg @@ -0,0 +1 @@ +To Do App - Web App - View Tasks - Sequence - Container levelTo Do AppExternalExternalWeb AppWeb AppWeb ApiWeb ApiDatabaseDatabaseView TasksView TasksGet TasksGet TasksSelect Tasks \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4 Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4 Sequence.png new file mode 100644 index 000000000..1a3019e20 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4 Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4 Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4 Sequence.puml new file mode 100644 index 000000000..2f1f8803a --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4 Sequence.puml @@ -0,0 +1,12 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Sequence.puml + +title To Do App - Web App - View Tasks - C4 Sequence - Context level + +System_Ext(C4InterFlow.SoftwareSystems.ExternalSystem, "External", "") +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + +Rel(C4InterFlow.SoftwareSystems.ExternalSystem, ToDoAppExample.SoftwareSystems.ToDoApp, "View Tasks") + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4 Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4 Sequence.svg new file mode 100644 index 000000000..9335ee955 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4 Sequence.svg @@ -0,0 +1 @@ +To Do App - Web App - View Tasks - C4 Sequence - Context level«external_system»External«system»To Do AppView Tasks \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4 Static.png new file mode 100644 index 000000000..5ae77fb05 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4 Static.puml new file mode 100644 index 000000000..026b265d9 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - View Tasks - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4 Static.svg new file mode 100644 index 000000000..408b38eb6 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4 Static.svg @@ -0,0 +1 @@ +To Do App - Web App - View Tasks - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4.png new file mode 100644 index 000000000..990cd7bde Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4.puml new file mode 100644 index 000000000..02c05b0a4 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\..\..\..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - Web App - View Tasks - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4.svg new file mode 100644 index 000000000..e7ec149d5 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - C4.svg @@ -0,0 +1 @@ +To Do App - Web App - View Tasks - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - Sequence.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - Sequence.png new file mode 100644 index 000000000..9efc5ca1a Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - Sequence.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - Sequence.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - Sequence.puml new file mode 100644 index 000000000..ce699f2a2 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - Sequence.puml @@ -0,0 +1,11 @@ +@startuml + +title To Do App - Web App - View Tasks - Sequence - Context level + +participant "External" as C4InterFlow.SoftwareSystems.ExternalSystem +participant "To Do App" as ToDoAppExample.SoftwareSystems.ToDoApp + +C4InterFlow.SoftwareSystems.ExternalSystem -> ToDoAppExample.SoftwareSystems.ToDoApp : View Tasks + + +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - Sequence.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - Sequence.svg new file mode 100644 index 000000000..a3d800b41 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Containers/Web App/Interfaces/View Tasks/Context - Sequence.svg @@ -0,0 +1 @@ +To Do App - Web App - View Tasks - Sequence - Context levelExternalExternalTo Do AppTo Do AppView Tasks \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Context - C4 Static.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Context - C4 Static.png new file mode 100644 index 000000000..62197c277 Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Context - C4 Static.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Context - C4 Static.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Context - C4 Static.puml new file mode 100644 index 000000000..4ff77fe7a --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Context - C4 Static.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - C4 Static - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Context - C4 Static.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Context - C4 Static.svg new file mode 100644 index 000000000..4a9da8ee5 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Context - C4 Static.svg @@ -0,0 +1 @@ +To Do App - C4 Static - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Context - C4.png b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Context - C4.png new file mode 100644 index 000000000..45733e51e Binary files /dev/null and b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Context - C4.png differ diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Context - C4.puml b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Context - C4.puml new file mode 100644 index 000000000..e41dbe0e9 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Context - C4.puml @@ -0,0 +1,24 @@ +@startuml +!include ..\..\.c4s\C4_Context.puml + +AddElementTag("state:new", $bgColor=green, $fontColor=#ffffff, $borderColor=green, $shadowing="False") +AddElementTag("state:changed", $bgColor=orange, $fontColor=#ffffff, $borderColor=orange, $shadowing="False") +AddElementTag("state:removed", $bgColor=red, $fontColor=#ffffff, $borderColor=red, $shadowing="False") + +AddRelTag("state:new", $textColor=green, $lineColor=green) +AddRelTag("state:changed", $textColor=orange, $lineColor=orange) +AddRelTag("state:removed", $textColor=red, $lineColor=red) + +SHOW_PERSON_PORTRAIT() +LAYOUT_TOP_DOWN() + +skinparam linetype polyline + +title To Do App - C4 - Context level + +System(ToDoAppExample.SoftwareSystems.ToDoApp, "To Do App", "") + + + +SHOW_LEGEND() +@enduml diff --git a/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Context - C4.svg b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Context - C4.svg new file mode 100644 index 000000000..51ad31f86 --- /dev/null +++ b/Samples/ToDoApp/Diagrams/Software Systems/To Do App/Context - C4.svg @@ -0,0 +1 @@ +To Do App - C4 - Context levelTo Do AppLegend  system  \ No newline at end of file diff --git a/Samples/ToDoApp/draw-diagrams.bat b/Samples/ToDoApp/draw-diagrams.bat new file mode 100644 index 000000000..1bba354ab --- /dev/null +++ b/Samples/ToDoApp/draw-diagrams.bat @@ -0,0 +1,47 @@ +@echo off +:: Possible values: TRUE, FALSE +set "redraw-all=TRUE" +::::::::::::::::::::::::::::::: + +set "aac-root-namespace=ToDoAppExample" +set "cli-exe=C:\\C4InterFlow.Cli.exe" +set "diagrams-dir=.\Diagrams" +set "aac-reader-strategy=C4InterFlow.Automation.Readers.YamlAaCReaderStrategy,C4InterFlow.Automation" +set "aac-input-paths=.\Architecture" + +echo redraw-all: %redraw-all% +echo aac-root-namespace: %aac-root-namespace% +echo cli-output-dir: %cli-output-dir% +echo cli-exe: %cli-exe% +echo diagrams-dir: %diagrams-dir% +echo aac-reader-strategy: %aac-reader-strategy% +echo aac-input-paths: %aac-input-paths% + +if not %redraw-all%==TRUE if not %redraw-all%==FALSE ( + echo ERROR: 'redraw-all' can only be set either to 'TRUE' or 'FALSE'. Edit script and re-run. + pause + goto end +) + +echo Check the above settings. +pause + +echo Clearing diagrams... +:: pause +if %redraw-all%==TRUE ( +powershell.exe -Command "if (Test-Path '%diagrams-dir%\*') { Remove-Item -Path '%diagrams-dir%\*' -Recurse -Force }" +) else ( +powershell.exe -Command "if (Test-Path '%diagrams-dir%\*') { Get-ChildItem -Path '%diagrams-dir%' -Recurse | Where-Object { $_.Extension -eq '.puml' } | ForEach-Object { Remove-Item -Path $_.FullName -Force } }" +) + +echo Draw Diagrams with '%aac-reader-strategy%' AaC reader strategy and '%aac-input-paths%' AaC input path +pause + +echo Drawing Diagrams... +if %redraw-all%==TRUE ( +%cli-exe% draw-diagrams --interfaces %aac-root-namespace%.SoftwareSystems.*.Containers.*.Interfaces.* --levels-of-details context container --aac-reader-strategy "%aac-reader-strategy%" --aac-input-paths "%aac-input-paths%" --output-dir "%diagrams-dir%" --formats png svg +) else ( +%cli-exe% draw-diagrams --interfaces %aac-root-namespace%.SoftwareSystems.*.Containers.*.Interfaces.* --levels-of-details context container --aac-reader-strategy "%aac-reader-strategy%" --aac-input-paths "%aac-input-paths%" --output-dir "%diagrams-dir%" +) +pause +:end \ No newline at end of file