You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+28-28Lines changed: 28 additions & 28 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -17,34 +17,6 @@ Actors definition:
17
17
> [!NOTE]
18
18
> These are a beforehand sketch of the ideal use cases. Not all are, nor will be, implemented.
19
19
20
-
# General decisions
21
-
22
-
- Many of the design choices, naming, not making extensive documentation on APIs (or public members, of any sort), have been taken with the idea that this is "pet project", and that my default and preferred way of working is collaboratively with practices like pair and ensemble programing. In this scenario, unless stated otherwise to avoid interruption of flow, discussions occur on the go and decisions are taken withing seconds (as well as code reviews). Also, knowledge silos are mostly mitigated in this way.
23
-
- As the only person in the team is me, obviously neither pair nor ensemble programming has taken place.
24
-
- As with many things, I would discuss with the team if they prefer another way of working.
25
-
26
-
## Docs
27
-
The UML usage style in this project is _sketching_, as described by Marting Fowler e.g. _UML Distilled, Martin Fowler (2009)_. This basically means that it is used as a quick sketch to clarify ideas in broad strokes, and is neither intended to be kept up to date nor describe the project fully.
28
-
29
-
> [!IMPORTANT]
30
-
> In a real-life scenario, I'd discuss with the team if they are conformable with this approach or if another is needed.
31
-
32
-
### Documenting architectural, design or almost any decision made
33
-
34
-
Regarding keeping track of pretty much any kind of decision that the team takes, I like to use the [Architectural Decision Records (ADRs), by Michael Nygard](https://www.cognitect.com/blog/2011/11/15/documenting-architecture-decisions). For example, why one technology is used in favor of others, the reason why the API does things in a certain way, or even a convention that the team has decided following.
35
-
36
-
Given the simplicity of this project and that I am the only contributor, I've decided not to use them.
37
-
38
-
### Tools
39
-
40
-
#### PlantUML
41
-
42
-
Textual DSL for diagrams. [Refer to the official docs](https://plantuml.com/). It's my tool of choice given it is free software (under GPL-3.0) and supports changing the arrows orientation (something `Mermaid` does not). It's also worth mentioning [PlantText](https://www.planttext.com/) as an online PlantUML editor.
43
-
44
-
#### GitHub Alerts
45
-
46
-
Usage of [Alerts](https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax#alerts) in order to remark some info and lighten the burden of having to read extensive paragraphs.
47
-
48
20
# Architecture
49
21
50
22

@@ -90,3 +62,31 @@ Conventions:
90
62
91
63
-**Test API**: any test code that serves the purpose of making tests easier, more readable or maintainable in general by encapsulating knowledge or boilerplate code.
92
64
- It may well be synonym of `test helpers`, `test utils`, etc.
65
+
66
+
# General decisions
67
+
68
+
Many of the design choices, naming, not making extensive documentation on APIs (or public members, of any sort), have been taken with the idea that this is "pet project", and that my default and preferred way of working is collaboratively with practices like pair and ensemble programing. In this scenario, unless stated otherwise to avoid interruption of flow, discussions occur on the go and decisions are taken withing seconds (as well as code reviews). Also, knowledge silos are mostly mitigated in this way.
69
+
- As the only person in the team is me, obviously neither pair nor ensemble programming has taken place.
70
+
- As with many things, I would discuss with the team if they prefer another way of working.
71
+
72
+
## Docs
73
+
The UML usage style in this project is _sketching_, as described by Marting Fowler e.g. _UML Distilled, Martin Fowler (2009)_. This basically means that it is used as a quick sketch to clarify ideas in broad strokes, and is neither intended to be kept up to date nor describe the project fully.
74
+
75
+
> [!IMPORTANT]
76
+
> In a real-life scenario, I'd discuss with the team if they are conformable with this approach or if another is needed.
77
+
78
+
### Documenting architectural, design or almost any decision made
79
+
80
+
Regarding keeping track of pretty much any kind of decision that the team takes, I like to use the [Architectural Decision Records (ADRs), by Michael Nygard](https://www.cognitect.com/blog/2011/11/15/documenting-architecture-decisions). For example, why one technology is used in favor of others, the reason why the API does things in a certain way, or even a convention that the team has decided following.
81
+
82
+
Given the simplicity of this project and that I am the only contributor, I've decided not to use them.
83
+
84
+
### Tools
85
+
86
+
#### PlantUML
87
+
88
+
Textual DSL for diagrams. [Refer to the official docs](https://plantuml.com/). It's my tool of choice given it is free software (under GPL-3.0) and supports changing the arrows orientation (something `Mermaid` does not). It's also worth mentioning [PlantText](https://www.planttext.com/) as an online PlantUML editor.
89
+
90
+
#### GitHub Alerts
91
+
92
+
Usage of [Alerts](https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax#alerts) in order to remark some info and lighten the burden of having to read extensive paragraphs.
0 commit comments