@@ -65,7 +65,9 @@ image::images/apwp_ep01.png[]
6565----
6666[plantuml, apwp_ep01, config=plantuml.cfg]
6767@startuml
68+ scale 4
6869hide empty members
70+
6971Workspace *- Folder : contains
7072Account *- Workspace : owns
7173Account *-- Package : has
@@ -264,78 +266,75 @@ image::images/apwp_ep02.png[]
264266----
265267[plantuml, apwp_ep02, config=plantuml.cfg]
266268@startuml
269+ scale 4
267270hide empty members
268271
269- class Document {
270-
271- add_version ()
272-
273- workspace: Workspace
274- parent: Folder
275-
276- versions: List[DocumentVersion]
277-
272+ together {
273+ class Document {
274+ add_version()
275+ workspace: Workspace
276+ parent: Folder
277+ versions: List[DocumentVersion]
278+
279+ }
280+
281+ class DocumentVersion {
282+ title : str
283+ version_number: int
284+ document: Document
285+
286+ }
287+ class Folder {
288+ parent: Workspace
289+ children: List[Folder]
290+ copy_to(target: Folder)
291+ add_document(document: Document)
292+ }
278293}
279294
280- class DocumentVersion {
281-
282- title : str
283- version_number: int
295+ together {
296+ class User {
297+ account: Account
298+ }
284299
285- document: Document
286300
287- }
288-
289- class Account {
290- add_package ()
291-
292- owner : User
293- packages : List[BillingPackage]
294- workspaces: List[Workspace]
301+ class Account {
302+ add_package()
303+ owner : User
304+ packages : List[BillingPackage]
305+ workspaces: List[Workspace]
306+ }
295307}
296308
297309
298310class BillingPackage {
299311}
300312
301313class Workspace {
302-
303314 add_member(member: User)
304-
305315 account: Account
306316 owner: User
307317 members: List[User]
308-
309318}
310319
311- class Folder {
312- parent: Workspace
313- children: List[Folder]
314-
315- copy_to(target: Folder)
316- add_document(document: Document)
317- }
318320
319- class User {
320- account: Account
321- }
322321
323322Account --> Workspace
324- Account --> BillingPackage
325- Account --> User
323+ Account -left -> BillingPackage
324+ Account -right -> User
326325Workspace --> User
327326Workspace --> Folder
328327Workspace --> Account
329328Folder --> Folder
330329Folder --> Document
331330Folder --> Workspace
332331Folder --> User
333- Document --> DocumentVersion
332+ Document -right -> DocumentVersion
334333Document --> Folder
335334Document --> User
336- DocumentVersion --> Document
335+ DocumentVersion -right -> Document
337336DocumentVersion --> User
338- User --> Account
337+ User -left -> Account
339338
340339@enduml
341340
@@ -348,13 +347,14 @@ image::images/apwp_ep03.png[]
348347----
349348[plantuml, apwp_ep03, config=plantuml.cfg]
350349@startuml
350+ scale 4
351351hide empty members
352352
353353frame Document {
354354
355355 class Document {
356356
357- add_version ()
357+ add_version()
358358
359359 workspace_id: int
360360 parent_folder: int
@@ -374,7 +374,7 @@ frame Document {
374374frame Account {
375375
376376 class Account {
377- add_package ()
377+ add_package()
378378
379379 owner : int
380380 packages : List[BillingPackage]
@@ -481,14 +481,17 @@ image::images/apwp_ep04.png[]
481481@startuml Ecommerce Context
482482!include images/C4_Context.puml
483483
484+ LAYOUT_LEFT_RIGHT
485+ scale 2
486+
484487Person_Ext(customer, "Customer", "Wants to buy furniture")
485488
486- System(fulfilment , "Fulfilment System", "Manages order fulfilment and logistics")
489+ System(fulfillment , "Fulfillment System", "Manages order fulfillment and logistics")
487490System(ecom, "Ecommerce website", "Allows customers to buy furniture")
488491
489492Rel(customer, ecom, "Uses")
490- Rel(fulfilment , ecom, "Updates stock and orders", "xml-rpc")
491- Rel(ecom, fulfilment , "Sends orders", "xml-rpc")
493+ Rel(fulfillment , ecom, "Updates stock and orders", "xml-rpc")
494+ Rel(ecom, fulfillment , "Sends orders", "xml-rpc")
492495
493496@enduml
494497----
@@ -504,17 +507,20 @@ image::images/apwp_ep05.png[]
504507@startuml Ecommerce Context
505508!include images/C4_Context.puml
506509
510+ LAYOUT_LEFT_RIGHT
511+ scale 2
512+
507513Person_Ext(customer, "Customer", "Wants to buy furniture")
508514
509515System(av, "Availability Service", "Calculates stock availability")
510- System(fulfilment , "Fulfilment System", "Manages order fulfilment and logistics")
516+ System(fulfillment , "Fulfillment System", "Manages order fulfillment and logistics")
511517System(ecom, "Ecommerce website", "Allows customers to buy furniture")
512518
513519Rel(customer, ecom, "Uses")
514520Rel(customer, av, "Uses")
515- Rel(fulfilment , av, "Publishes batch_created", "events")
521+ Rel(fulfillment , av, "Publishes batch_created", "events")
516522Rel(av, ecom, "Publishes out_of_stock", "events")
517- Rel(ecom, fulfilment , "Sends orders", "xml-rpc")
523+ Rel(ecom, fulfillment , "Sends orders", "xml-rpc")
518524
519525@enduml
520526----
@@ -733,16 +739,14 @@ image::images/apwp_ep06.png[]
733739@startuml View Fetcher Component Diagram
734740!include images/C4_Component.puml
735741
736- LAYOUT_LEFT_RIGHT
737-
738742ComponentDb(db, "Database", "RDBMS")
739743Component(fetch, "View Fetcher", "Reads data from db, returning list of tuples or dicts")
740744Component(build, "View Builder", "Filters and maps tuples")
741745Component(api, "API", "Handles HTTP and serialization concerns")
742746
743- Rel(fetch, db, "Read data from")
744- Rel(build, fetch, "Invokes")
745747Rel(api, build, "Invokes")
748+ Rel_R(build, fetch, "Invokes")
749+ Rel_D(fetch, db, "Reads data from")
746750
747751@enduml
748752----
0 commit comments