Skip to content

Commit 3a315a3

Browse files
authored
Merge pull request #232 from qorix-group/piotrkorkus_test_stats
docs: requirements statistics dashboard
2 parents 5d9f822 + ac72465 commit 3a315a3

File tree

16 files changed

+229
-78
lines changed

16 files changed

+229
-78
lines changed

BUILD

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,10 @@ alias(
9999
visibility = ["//visibility:public"],
100100
)
101101

102+
exports_files(
103+
["pyproject.toml"],
104+
)
105+
102106
# Add target for formatting checks
103107
use_format_targets()
104108

MODULE.bazel

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,10 +82,15 @@ bazel_dep(name = "platforms", version = "1.0.0")
8282
bazel_dep(name = "score_baselibs", version = "0.1.2")
8383
bazel_dep(name = "score_bazel_platforms", version = "0.0.3")
8484

85-
bazel_dep(name = "score_docs_as_code", version = "2.3.0", dev_dependency = True)
85+
bazel_dep(name = "score_docs_as_code", version = "3.0.0", dev_dependency = True)
8686
bazel_dep(name = "score_platform", version = "0.5.2", dev_dependency = True)
87-
bazel_dep(name = "score_process", version = "1.4.0", dev_dependency = True)
87+
git_override(
88+
module_name = "score_platform",
89+
commit = "7d252e75b733b09225f1a383bb00d5d7d79fa5ae", # override with main until next release
90+
remote = "https://github.com/eclipse-score/score.git",
91+
)
8892

93+
bazel_dep(name = "score_process", version = "1.4.3")
8994
bazel_dep(name = "score_python_basics", version = "0.3.4")
9095
bazel_dep(name = "score_tooling", version = "1.1.0")
9196

docs/persistency/docs/safety_mgt/module_safety_plan.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ Module Workproducts List
8686
* - :need:`wp__fdr_reports` (module Safety Plan)
8787
- :need:`gd_chklst__safety_plan`
8888
- :ndf:`copy('status', need_id='gd_chklst__safety_plan')`
89-
- :need:`doc__persistency_safety_plan_v2`
89+
- :need:`doc__persistency_safety_plan_v2_fdr_v2`
9090

9191
* - :need:`wp__fdr_reports` (module Safety Package)
9292
- :need:`gd_chklst__safety_package`

docs/persistency/docs/security_mgt/module_security_plan.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -155,14 +155,14 @@ Security Module Workproducts
155155
- :need:`gd_temp__req_comp_req`
156156
- :ndf:`copy('status', need_id='gd_temp__req_comp_req')`
157157
- <Link to issue>
158-
- :need:`doc__persistency_kvs_requirements`
158+
- :need:`doc__persistency_kvs_requirements_v2`
159159
- <automated>
160160

161161
* - :need:`wp__requirements_comp_aou`
162162
- :need:`gd_temp__req_aou_req`
163163
- :ndf:`copy('status', need_id='gd_temp__req_aou_req')`
164164
- <Link to issue>
165-
- :need:`doc__persistency_kvs_requirements`
165+
- :need:`doc__persistency_kvs_requirements_v2`
166166
- <automated>
167167

168168
* - :need:`wp__requirements_inspect`
@@ -176,7 +176,7 @@ Security Module Workproducts
176176
- :need:`gd_temp__arch_comp`
177177
- :ndf:`copy('status', need_id='gd_temp__arch_comp')`
178178
- <Link to issue>
179-
- :need:`doc__persistency_kvs_architecture`
179+
- :need:`doc__persistency_kvs_architecture_v2`
180180
- <automated>
181181

182182
* - :need:`wp__sw_component_security_analysis`

docs/persistency/kvs/docs/architecture/index.rst

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,9 +65,9 @@ The components are designed to cover the expectations from the feature architect
6565
:security: YES
6666
:safety: ASIL_B
6767
:status: invalid
68+
:belongs_to: comp__persistency_kvs
6869
:implements:
69-
:fulfils:
70-
:includes: comp_arc_sta__persistency__2_v2
70+
:fulfils: comp_req__persistency__key_naming_v2
7171

7272
.. needarch::
7373
:scale: 50
@@ -83,7 +83,8 @@ Dynamic Architecture
8383
:security: YES
8484
:safety: ASIL_B
8585
:status: invalid
86-
:fulfils:
86+
:belongs_to: comp__persistency_kvs
87+
:fulfils: comp_req__persistency__key_naming_v2
8788

8889
put here a sequence diagram
8990

@@ -109,6 +110,8 @@ Lower Level Components
109110
:safety: ASIL_B
110111
:security: YES
111112
:implements:
113+
:belongs_to: comp__persistency_kvs
114+
:fulfils: comp_req__persistency__key_naming_v2
112115

113116
no architecture but detailed design
114117

docs/persistency/kvs/docs/index.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,7 @@ Footnotes
146146
:hidden:
147147

148148
requirements/index.rst
149+
requirements/statistics.rst
149150
architecture/index.rst
150151
safety_analysis/fmea.rst
151152
safety_analysis/dfa.rst

docs/persistency/kvs/docs/requirements/index.rst

Lines changed: 37 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ Requirements
2929
:safety: ASIL_B
3030
:satisfies: feat_req__persistency__support_datatype_keys
3131
:status: valid
32+
:belongs_to: comp__persistency_kvs
3233

3334
The component shall accept keys that consist solely of alphanumeric characters, underscores, or dashes.
3435

@@ -39,7 +40,8 @@ Requirements
3940
:safety: ASIL_B
4041
:satisfies: feat_req__persistency__support_datatype_keys
4142
:status: valid
42-
43+
:belongs_to: comp__persistency_kvs
44+
4345
The component shall encode each key as valid UTF-8.
4446

4547
.. comp_req:: Key Uniqueness
@@ -49,6 +51,7 @@ Requirements
4951
:safety: ASIL_B
5052
:satisfies: feat_req__persistency__support_datatype_keys
5153
:status: valid
54+
:belongs_to: comp__persistency_kvs
5255

5356
The component shall guarantee that each key is unique.
5457

@@ -59,6 +62,7 @@ Requirements
5962
:safety: ASIL_B
6063
:satisfies: feat_req__persistency__support_datatype_keys
6164
:status: valid
65+
:belongs_to: comp__persistency_kvs
6266

6367
The component shall limit the maximum length of a key to 32 bytes.
6468

@@ -69,7 +73,8 @@ Requirements
6973
:safety: ASIL_B
7074
:satisfies: feat_req__persistency__support_datatype_value
7175
:status: valid
72-
76+
:belongs_to: comp__persistency_kvs
77+
7378
The component shall accept only values of the following data types: Number,
7479
String, Null, Array[Value], or Dictionary{Key:Value}.
7580

@@ -80,6 +85,7 @@ Requirements
8085
:safety: ASIL_B
8186
:satisfies: feat_req__persistency__support_datatype_value
8287
:status: valid
88+
:belongs_to: comp__persistency_kvs
8389

8490
The component shall serialize and deserialize all values to and from JSON.
8591

@@ -90,6 +96,7 @@ Requirements
9096
:safety: ASIL_B
9197
:satisfies: feat_req__persistency__support_datatype_value
9298
:status: valid
99+
:belongs_to: comp__persistency_kvs
93100

94101
The component shall limit the maximum length of a value to 1024 bytes.
95102

@@ -100,6 +107,7 @@ Requirements
100107
:safety: ASIL_B
101108
:satisfies: feat_req__persistency__support_datatype_value,feat_req__persistency__default_values
102109
:status: valid
110+
:belongs_to: comp__persistency_kvs
103111

104112
The component shall support unset values and shall provide a default value
105113
when a value is unset.
@@ -111,6 +119,7 @@ Requirements
111119
:safety: ASIL_B
112120
:satisfies: feat_req__persistency__support_datatype_value,feat_req__persistency__default_values
113121
:status: valid
122+
:belongs_to: comp__persistency_kvs
114123

115124
The component shall allow resetting a value to its default if a default is
116125
defined.
@@ -122,6 +131,7 @@ Requirements
122131
:safety: ASIL_B
123132
:satisfies: feat_req__persistency__default_values,feat_req__persistency__default_value_get,feat_req__persistency__reset_to_default,feat_req__persistency__default_value_file
124133
:status: valid
134+
:belongs_to: comp__persistency_kvs
125135

126136
The component shall accept default values of only permitted value data
127137
types.
@@ -133,6 +143,7 @@ Requirements
133143
:safety: ASIL_B
134144
:satisfies: feat_req__persistency__default_values,feat_req__persistency__default_value_get,feat_req__persistency__reset_to_default,feat_req__persistency__default_value_file
135145
:status: valid
146+
:belongs_to: comp__persistency_kvs
136147

137148
The component shall provide an API to retrieve default values.
138149

@@ -143,6 +154,7 @@ Requirements
143154
:safety: ASIL_B
144155
:satisfies: feat_req__persistency__default_values,feat_req__persistency__default_value_get,feat_req__persistency__reset_to_default,feat_req__persistency__default_value_file
145156
:status: valid
157+
:belongs_to: comp__persistency_kvs
146158

147159
The component shall allow configuration of default values in code or in a
148160
separate configuration file.
@@ -154,6 +166,7 @@ Requirements
154166
:safety: ASIL_B
155167
:satisfies: feat_req__persistency__default_values,feat_req__persistency__default_value_get,feat_req__persistency__reset_to_default,feat_req__persistency__default_value_file
156168
:status: valid
169+
:belongs_to: comp__persistency_kvs
157170

158171
The component shall secure the configuration file for default values with an
159172
associated checksum file when default values are stored in a file.
@@ -165,6 +178,7 @@ Requirements
165178
:safety: ASIL_B
166179
:satisfies: feat_req__persistency__cfg
167180
:status: valid
181+
:belongs_to: comp__persistency_kvs
168182

169183
The component shall allow configuration of KVS constraints at compile-time
170184
using source code constants or at runtime using a configuration file.
@@ -176,6 +190,7 @@ Requirements
176190
:safety: ASIL_B
177191
:satisfies: feat_req__persistency__concurrency
178192
:status: valid
193+
:belongs_to: comp__persistency_kvs
179194

180195
The component shall implement thread-safe mechanisms to enable concurrent
181196
access to data without data races.
@@ -187,6 +202,7 @@ Requirements
187202
:safety: ASIL_B
188203
:satisfies: feat_req__persistency__multiple_kvs
189204
:status: valid
205+
:belongs_to: comp__persistency_kvs
190206

191207
The component shall manage all runtime variables within an instance to
192208
enable creation and use of multiple KVS instances concurrently within a
@@ -199,6 +215,7 @@ Requirements
199215
:safety: ASIL_B
200216
:satisfies: feat_req__persistency__integrity_check,feat_req__persistency__store_data
201217
:status: valid
218+
:belongs_to: comp__persistency_kvs
202219

203220
The component shall use the file API and the JSON data format to persist data.
204221

@@ -209,6 +226,7 @@ Requirements
209226
:safety: ASIL_B
210227
:satisfies: feat_req__persistency__integrity_check,feat_req__persistency__store_data
211228
:status: valid
229+
:belongs_to: comp__persistency_kvs
212230

213231
The component shall generate a checksum for each data file and shall store
214232
it alongside the data.
@@ -220,6 +238,7 @@ Requirements
220238
:safety: ASIL_B
221239
:satisfies: feat_req__persistency__integrity_check,feat_req__persistency__load_data
222240
:status: valid
241+
:belongs_to: comp__persistency_kvs
223242

224243
The component shall verify the checksum when loading data.
225244

@@ -230,6 +249,7 @@ Requirements
230249
:safety: ASIL_B
231250
:satisfies: feat_req__persistency__integrity_check,feat_req__persistency__store_data
232251
:status: valid
252+
:belongs_to: comp__persistency_kvs
233253

234254
The component shall use the file API to persist data.
235255

@@ -240,6 +260,7 @@ Requirements
240260
:safety: ASIL_B
241261
:satisfies: feat_req__persistency__integrity_check,feat_req__persistency__store_data
242262
:status: valid
263+
:belongs_to: comp__persistency_kvs
243264

244265
The component shall use the JSON data format to persist data.
245266

@@ -250,6 +271,7 @@ Requirements
250271
:safety: ASIL_B
251272
:satisfies: feat_req__persistency__versioning,feat_req__persistency__update_mechanism
252273
:status: valid
274+
:belongs_to: comp__persistency_kvs
253275

254276
The component shall not provide built-in versioning.
255277

@@ -260,6 +282,7 @@ Requirements
260282
:safety: ASIL_B
261283
:satisfies: feat_req__persistency__versioning,feat_req__persistency__update_mechanism
262284
:status: valid
285+
:belongs_to: comp__persistency_kvs
263286

264287
The component shall use a JSON file storage format that enables the
265288
application to implement versioning, including upgrade and downgrade paths,
@@ -272,6 +295,7 @@ Requirements
272295
:safety: ASIL_B
273296
:satisfies: feat_req__persistency__snapshot_create
274297
:status: valid
298+
:belongs_to: comp__persistency_kvs
275299

276300
The component shall create a snapshot each time data is stored.
277301

@@ -282,6 +306,7 @@ Requirements
282306
:safety: ASIL_B
283307
:satisfies: feat_req__persistency__cfg
284308
:status: valid
309+
:belongs_to: comp__persistency_kvs
285310

286311
The component shall maintain a configurable maximum number of snapshots.
287312

@@ -292,6 +317,7 @@ Requirements
292317
:safety: ASIL_B
293318
:satisfies: feat_req__persistency__snapshot_create
294319
:status: valid
320+
:belongs_to: comp__persistency_kvs
295321

296322
The component shall assign the ID 1 to the newest snapshot and shall increment the IDs of older snapshots accordingly.
297323

@@ -302,6 +328,7 @@ Requirements
302328
:safety: ASIL_B
303329
:satisfies: feat_req__persistency__snapshot_remove, feat_req__persistency__snapshot_restore
304330
:status: valid
331+
:belongs_to: comp__persistency_kvs
305332

306333
The component shall rotate and delete the oldest snapshot when the maximum number is reached.
307334

@@ -312,6 +339,7 @@ Requirements
312339
:safety: ASIL_B
313340
:satisfies: feat_req__persistency__snapshot_restore
314341
:status: valid
342+
:belongs_to: comp__persistency_kvs
315343

316344
The component shall allow restoration of a snapshot by its ID.
317345

@@ -322,6 +350,7 @@ Requirements
322350
:safety: ASIL_B
323351
:satisfies: feat_req__persistency__snapshot_remove
324352
:status: valid
353+
:belongs_to: comp__persistency_kvs
325354

326355
The component shall allow deletion of individual snapshots.
327356

@@ -332,6 +361,7 @@ Requirements
332361
:safety: ASIL_B
333362
:satisfies: feat_req__persistency__dev_mode
334363
:status: valid
364+
:belongs_to: comp__persistency_kvs
335365

336366
The component shall provide an engineering mode that can be enabled during
337367
build time to display debugging and internal information.
@@ -343,6 +373,7 @@ Requirements
343373
:safety: ASIL_B
344374
:satisfies: feat_req__persistency__prod_mode
345375
:status: valid
376+
:belongs_to: comp__persistency_kvs
346377

347378
The component shall provide a field mode that can be enabled during build
348379
time to restrict access as much as possible.
@@ -354,6 +385,7 @@ Requirements
354385
:safety: ASIL_B
355386
:satisfies: feat_req__persistency__async_api
356387
:status: valid
388+
:belongs_to: comp__persistency_kvs
357389

358390
The component shall provide an asynchronous API in addition to the standard API.
359391

@@ -364,6 +396,7 @@ Requirements
364396
:safety: ASIL_B
365397
:satisfies: feat_req__persistency__access_control
366398
:status: valid
399+
:belongs_to: comp__persistency_kvs
367400

368401
The component shall rely on the underlying filesystem for access and
369402
permission management and shall not implement its own access or permission
@@ -376,6 +409,7 @@ Requirements
376409
:safety: ASIL_B
377410
:satisfies: feat_req__persistency__access_control
378411
:status: valid
412+
:belongs_to: comp__persistency_kvs
379413

380414
The component shall report any access or permission errors encountered at
381415
the filesystem level to the application.
@@ -387,6 +421,7 @@ Requirements
387421
:safety: ASIL_B
388422
:satisfies: feat_req__persistency__async_api, feat_req__persistency__async_completion
389423
:status: valid
424+
:belongs_to: comp__persistency_kvs
390425

391426
The component shall provide an API for registering callbacks that are triggered by data change events.
392427

0 commit comments

Comments
 (0)