Skip to content

Instantly share code, notes, and snippets.

@romansklenar
Created December 18, 2019 19:28
Show Gist options
  • Save romansklenar/e3f0abcce85d922daff53b837f0d6739 to your computer and use it in GitHub Desktop.
Save romansklenar/e3f0abcce85d922daff53b837f0d6739 to your computer and use it in GitHub Desktop.
GWI puml definition
!define GWI_BG_COLOR #d4007b
!define GWI_BORDER_COLOR #abcdef
skinparam rectangle<<gwi_system>> {
StereotypeFontColor ELEMENT_FONT_COLOR
FontColor #ELEMENT_FONT_COLOR
BackgroundColor GWI_BG_COLOR
BorderColor GWI_BORDER_COLOR
}
skinparam database<<gwi_database>> {
StereotypeFontColor ELEMENT_FONT_COLOR
FontColor #ELEMENT_FONT_COLOR
BackgroundColor GWI_BG_COLOR
BorderColor GWI_BORDER_COLOR
}
skinparam database<<database>> {
StereotypeFontColor ELEMENT_FONT_COLOR
FontColor #ELEMENT_FONT_COLOR
BackgroundColor SYSTEM_BG_COLOR
BorderColor #3C7FC0
}
skinparam database<<external_database>> {
StereotypeFontColor ELEMENT_FONT_COLOR
FontColor ELEMENT_FONT_COLOR
BackgroundColor EXTERNAL_SYSTEM_BG_COLOR
BorderColor #8A8A8A
}
!function LAYOUT_WITH_LEGEND()
hide stereotype
legend right
| |= Type |
|<PERSON_BG_COLOR> | person |
|<EXTERNAL_PERSON_BG_COLOR> | external person |
|<SYSTEM_BG_COLOR> | system |
|<EXTERNAL_SYSTEM_BG_COLOR> | external system |
|<GWI_BG_COLOR> | gwi |
endlegend
!endfunction
!function SoftRel($from, $to, $label, $techn)
Rel_($from, $to, $label, $techn, "..>")
!endfunction
!function SoftRel_Up($from, $to, $label, $techn)
Rel_($from, $to, $label, $techn, ".UP.>")
!endfunction
!function SoftRel_Down($from, $to, $label, $techn)
Rel_($from, $to, $label, $techn, ".DOWN.>")
!endfunction
!function SoftRel_Left($from, $to, $label, $techn)
Rel_($from, $to, $label, $techn, ".LEFT.>")
!endfunction
!function SoftRel_Right($from, $to, $label, $techn)
Rel_($from, $to, $label, $techn, ".RIGHT.>")
!endfunction
!function HardRel($from, $to, $label, $techn)
Rel_($from, $to, $label, $techn, "-->")
!endfunction
!function HardRel_Up($from, $to, $label, $techn)
Rel_($from, $to, $label, $techn, "-UP->")
!endfunction
!function HardRel_Down($from, $to, $label, $techn)
Rel_($from, $to, $label, $techn, "-DOWN->")
!endfunction
!function HardRel_Left($from, $to, $label, $techn)
Rel_($from, $to, $label, $techn, "-LEFT->")
!endfunction
!function HardRel_Right($from, $to, $label, $techn)
Rel_($from, $to, $label, $techn, "-RIGHT->")
!endfunction
!function define_system($shape, $alias, $team, $label, $description, $template)
$shape "==$label\n<size:TECHN_FONT_SIZE><<$team>></size>\n\n $description" <<$template>> as $alias
!endfunction
!function user_def()
Person_Ext(user, "External user", "I'm not from GWI")
!endfunction
!function gwiuser_def()
Person(gwiuser, "GWI user", "GWI Employee")
!endfunction
!function louvre_def($template)
define_system("rectangle", "louvre", "RMP", "Louvre", "Project gallery", $template)
!endfunction
!function conduit_def($template)
define_system("rectangle", "conduit", "RMP", "Conduit", "Survey processing pipeline for Qualtrics custom and Pollpass projects", $template)
!endfunction
!function pyxecutor_def($template)
define_system("rectangle", "pyxecutor", "RMP", "Pyxecutor", "Syndicated projects processor", $template)
!endfunction
!function lagoon_def($template)
define_system("rectangle", "lagoon", "RMP", "Lagoon", "Syndicated projects DSL code and weighting spec repository", $template)
!endfunction
!function squad_def($template)
define_system("rectangle", "squad", "RMP", "Squad", "In-house GWI fieldwork management tool", $template)
!endfunction
!function sire_def($template)
define_system("rectangle", "sire", "RMP", "Sire", "Data tooling spawner tool through argo", $template)
!endfunction
!function freight_def($template)
define_system("rectangle", "freight", "RMP", "Freight", "Downloads data from gs and loads them to Chronicle", $template)
!endfunction
!function diverge_def($template)
define_system("rectangle", "diverge", "RMP", "Diverge", "Extract, transform and analyse data from Core API", $template)
!endfunction
!function shield_def($template)
define_system("rectangle", "shield", "RMP", "Shield", "Survey shield", $template)
!endfunction
!function ingestor_def($template)
define_system("rectangle", "ingestor", "RMP", "Ingestor", "Data ingestion from Qualtrics", $template)
!endfunction
!function jupyterhub_def($template)
define_system("rectangle", "jupyterhub", "RMP", "Jupyterhub", "jupyterhub", $template)
!endfunction
!function labels_def($template)
define_system("rectangle", "labels", "RMP", "Labels", "Manages data labeling", $template)
!endfunction
!function crowds_def($template)
define_system("rectangle", "crowds", "RMP", "Crowds", "Exports chronicle data for respondents in a PRO audience", $template)
!endfunction
!function shingle_def($template)
define_system("rectangle", "shingle", "RMP", "Shingle", "Tool converting raw chronicle GWIQ data into survey-like response format for the platform", $template)
!endfunction
!function lumberjack_def($template)
define_system("rectangle", "lumberjack", "DAAM", "Lumberjack", "GWIQ impressions ingestion system", $template)
!endfunction
!function qpipeline_def($template)
define_system("rectangle", "qpipeline", "DAAM", "Qpipeline", "ETL system producing overlaps and respondent datapoints from impressions", $template)
!endfunction
!function gwiq_manager_def($template)
define_system("rectangle", "gwiq_manager", "DAAM", "Gwiq manager", "Ad-tech campaigns registry", $template)
!endfunction
!function chronicle_def($template)
define_system("rectangle", "chronicle", "DAAM", "Chronicle", "Database for storing versioned Respondent data and GWIQ overlaps", $template)
!endfunction
!function chronicle_pro_sink_def($template)
define_system("rectangle", "chronicle_pro_sink", "DAAM", "Chronicle pro sink", "Populates PRO Elasticsearch indexes from Chronicle", $template)
!endfunction
!function connections_manager_def($template)
define_system("rectangle", "connections_manager", "DAAM", "Connections manager", "Persists and exposes connections between respondents and cookies", $template)
!endfunction
!function connections_def($template)
define_system("rectangle", "connections", "DAAM", "Connections", "Generates ad-hoc and recurring reports of respondents for external company clients", $template)
!endfunction
!function autocoding_def($template)
define_system("rectangle", "autocoding", "DAAM", "Autocoding", "Transform open-ended survey questions with text responses into structured columns with (usually) binary values", $template)
!endfunction
!function druid_def($template)
define_system("database", "druid", "DAAM", "Druid", "Stores additional weighting information", $template)
!endfunction
!function platform_def($template)
define_system("rectangle", "platform", "AT", "Platform", "Data analytics web application", $template)
!endfunction
!function gateway_def($template)
define_system("rectangle", "gateway", "AT", "Gateway", "API Gateway to expose systems publicly", $template)
!endfunction
!function calculations_def($template)
define_system("rectangle", "calculations", "AT", "Calculations", "Calculations APIs and other APIs required for Platform", $template)
!endfunction
!function susi_def($template)
define_system("rectangle", "susi", "Internal", "Susi", "Signing in and up", $template)
!endfunction
!function admin_def($template)
define_system("rectangle", "admin", "Internal", "Admin", "Admin for various GWI systems", $template)
!endfunction
!function users_def($template)
define_system("rectangle", "users", "Internal", "Users", "Stores users, provides authentication and authorization, generates JWTs", $template)
!endfunction
!function products_def($template)
define_system("rectangle", "products", "Internal", "Products", "Stores reports, infographics and charts of the day", $template)
!endfunction
!function mailer_def($template)
define_system("rectangle", "mailer", "Internal", "Mailer", "Sends e-mails via 3rd party tools", $template)
!endfunction
!function analytics_def($template)
define_system("rectangle", "analytics", "Internal", "Analytics", "Sends analytics via 3rd party tools", $template)
!endfunction
!function qualtrics_def($template)
define_system("rectangle", "qualtrics", "external", "Qualtrics", "Survey provider", $template)
!endfunction
!function pollpass_def($template)
define_system("rectangle", "pollpass", "external", "Pollpass", "Another survey provider", $template)
!endfunction
!function bigquery_def($template)
define_system("database", "bigquery", "external", "Bigquery", "Stores pollpass responses", $template)
!endfunction
!function sengrid_def($template)
define_system("rectangle", "sengrid", "external", "Sengrid", "Tool for sending e-mails and managing templates", $template)
!endfunction
!function segment_def($template)
define_system("rectangle", "segment", "external", "Segment", "Distributes analytics", $template)
!endfunction
!function mixpanel_def($template)
define_system("rectangle", "mixpanel", "external", "Mixpanel", "Exploratory analytics platform", $template)
!endfunction
!function hubspot_def($template)
define_system("rectangle", "hubspot", "external", "Hubspot", "Marketing platform", $template)
!endfunction
!function intercom_def($template)
define_system("rectangle", "intercom", "external", "Intercom", "Customer communication platform", $template)
!endfunction
!function salesforce_def($template)
define_system("rectangle", "salesforce", "external", "Salesforce", "Customer relationship management platform", $template)
!endfunction
!function bugsnag_def($template)
define_system("rectangle", "bugsnag", "external", "Bugsnag", "Collects information about runtime errors", $template)
!endfunction
!function gcs_def($template)
define_system("rectangle", "gcs", "external", "Google Cloud Storage", "File storage", $template)
!endfunction
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment