|
| 1 | +@startuml OSMTracker-System-Context |
| 2 | +!pragma layout smetana |
| 3 | +!theme plain |
| 4 | + |
| 5 | +' C4-PlantUML Context diagram |
| 6 | +!include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Context.puml |
| 7 | + |
| 8 | +LAYOUT_TOP_DOWN() |
| 9 | + |
| 10 | +title OSMTracker for Android – System Context |
| 11 | +caption Context diagram showing OSMTracker for Android in its environment |
| 12 | + |
| 13 | +Person(user, "OSM Mapper / Outdoor User", "Records GPS tracks and adds POIs while surveying") |
| 14 | + |
| 15 | +System(system, "OSMTracker for Android", "Mobile app to record GPX tracks, capture photos/voice notes, and mark POIs") |
| 16 | + |
| 17 | +System_Ext(openStreetMap, "OpenStreetMap", "Uploads GPX traces, notes and provides map tiles for on-device maps") |
| 18 | +System_Ext(androidOS, "Android Operating System Services (GPS/Network/Media)", "Provides location updates and captures photos and voice notes via Android Camera/Media APIs") |
| 19 | +System_Ext(githubApi, "GitHub API", "Uploads GPX/trace files to a repository; lists repos; creates PRs") |
| 20 | + |
| 21 | +Rel(user, system, "Records tracks, creates POIs, takes photos/notes") |
| 22 | + |
| 23 | +Rel(system, androidOS, "Receives location updates and captures media", "Android APIs") |
| 24 | + |
| 25 | +Rel(system, openStreetMap, "Uploads GPX traces/notes and fetches data", "HTTPS/REST") |
| 26 | +Rel(system, githubApi, "Lists repos, uploads files, opens PRs", "HTTPS/REST with token") |
| 27 | + |
| 28 | +UpdateElementStyle(user, $fontColor="black", $bgColor="#CFE8FF", $borderColor="#3A8DFF") |
| 29 | +UpdateElementStyle(system, $fontColor="black", $bgColor="#C7F0D8", $borderColor="#1B8C3E") |
| 30 | +UpdateElementStyle(openStreetMap, $bgColor="#FFE4C4") |
| 31 | +UpdateElementStyle(githubApi, $bgColor="#FFE4C4") |
| 32 | + |
| 33 | +SHOW_LEGEND() |
| 34 | + |
| 35 | +footer Generated with C4-PlantUML. |
| 36 | +@enduml |
0 commit comments