Wiki source code of 2 Actors and Use Cases

Version 53.1 by Artur on 2025/07/14 10:19

Show last authors
1 {{box title="**Contents**"}}
2 {{toc/}}
3 {{/box}}
4
5 == {{id name="_Toc370963"/}}2.1 Introduction ==
6
7 In order to develop the data models it is necessary to understand the functions to be supported resulting from the requirements definition. These are defined in a use case model. The use case model comprises actors and use cases and these are defined below.
8
9 **Actor**
10
11 “//An actor defines a coherent set of roles that users of the system can play when interacting with it. An actor instance can be played by either an individual or an external system//”
12
13 **Use case**
14
15 “//A use case defines a set of use-case instances, where each instance is a sequence of actions a system performs that yields an observable result of value to a particular actor”//
16
17 The overall intent of the model is to support data and metadata reporting, dissemination, and exchange in the field of aggregated statistical data and related metadata. In order to achieve this, the model needs to support three fundamental aspects of this process:
18
19 * Maintenance of structural and provisioning definitions
20 * Data and [[reference metadata>>doc:sdmx:Glossary.Reference metadata.WebHome]] publishing (reporting), and consuming (using)
21 * Access to data, [[reference metadata>>doc:sdmx:Glossary.Reference metadata.WebHome]], and structural and provisioning definitions
22
23 This document covers the first two aspects, whilst the document on the Registry logical model covers the last aspect.
24
25 == {{id name="_Toc370964"/}}2.2 Use Case Diagrams ==
26
27 === {{id name="_Toc370965"/}}2.2.1 Maintenance of Structural and Provisioning Definitions ===
28
29 [[image:1747688571909-670.png]]
30
31 **Figure 6 Use cases for maintaining data and metadata structural and provisioning definitions**
32
33 ==== 2.2.1.2 Explanation of the Diagram ====
34
35 In order for applications to publish and consume data and [[reference metadata>>doc:sdmx:Glossary.Reference metadata.WebHome]] it is necessary for the structure and permitted content of the data and [[reference metadata>>doc:sdmx:Glossary.Reference metadata.WebHome]] to be defined and made available to the applications, as well as definitions that support the actual process of publishing and consuming. This is the responsibility of a [[Maintenance Agency>>doc:sdmx:Glossary.Maintenance agency.WebHome]].
36
37 All maintained [[artefacts>>doc:sdmx:Glossary.Artefact.WebHome]] are maintained by a [[Maintenance Agency>>doc:sdmx:Glossary.Maintenance agency.WebHome]]. For convenience the [[Maintenance Agency>>doc:sdmx:Glossary.Maintenance agency.WebHome]] actor is sub divided into two actor roles:
38
39 * maintaining structural definitions
40 * maintaining provisioning definitions
41
42 Whilst both these functions may be carried out by the same person, or at least by the same maintaining organization, the purpose of the definitions is different and so the roles have been differentiated: structural definitions define the format and permitted content of data and [[reference metadata>>doc:sdmx:Glossary.Reference metadata.WebHome]]
43
44 when reported or disseminated, whilst provisioning definitions support the process of reporting and dissemination (who reports what to whom, and when).
45
46 In a community based scenario where at least the structural definitions may be shared, it is important that the scheme of [[maintenance agencies>>doc:sdmx:Glossary.Maintenance agency.WebHome]] is maintained by a responsible organization (called here the Community Administrator), as it is important that the Id of the [[Maintenance Agency>>doc:sdmx:Glossary.Maintenance agency.WebHome]] is unique.
47
48 ==== 2.2.1.3 Definitions ====
49
50 (((
51 (% style="width:972.294px" %)
52 |(% style="width:187px" %)**Actor**|(% style="width:276px" %)**Use Case**|(% style="width:507px" %)**Description**
53 |(% style="width:187px" %)(((
54 [[image:1747688634771-438.png]]
55 Community Administrator
56 )))|(% style="width:276px" %) |(% style="width:507px" %)Responsible organisation that administers structural definitions common to the community as a whole.
57 |(% style="width:187px" %) |(% style="width:276px" %)(((
58 [[image:1747896154374-468.png]]
59 Maintain Maintenance Agency Scheme
60 )))|(% style="width:507px" %)Creation and maintenance of the top-level scheme of [[maintenance agencies>>doc:sdmx:Glossary.Maintenance agency.WebHome]] for the Community.
61 |(% style="width:187px" %)(((
62 [[image:1747688641349-114.png]]
63 Maintenance Agency
64 )))|(% style="width:276px" %) |(% style="width:507px" %)(((
65 Responsible agency for maintaining structural [[artefacts>>doc:sdmx:Glossary.Artefact.WebHome]] such as [[code lists>>doc:sdmx:Glossary.Code list.WebHome]], [[concept schemes>>doc:sdmx:Glossary.Concept scheme.WebHome]], [[Data Structure Definition>>doc:sdmx:Glossary.Data structure definition.WebHome]] structural definitions, [[metadata structure definitions>>doc:sdmx:Glossary.Metadata structure definition.WebHome]], data and metadata provisioning [[artefacts>>doc:sdmx:Glossary.Artefact.WebHome]] such as [[provision agreement>>doc:sdmx:Glossary.Provision agreement.WebHome]], and submaintenance agencies.
66 sub roles are:
67 Structural Definitions
68 [[Maintenance Agency>>doc:sdmx:Glossary.Maintenance agency.WebHome]]
69 Provisioning Definitions
70 [[Maintenance Agency>>doc:sdmx:Glossary.Maintenance agency.WebHome]]
71 )))
72 )))
73
74 (((
75 (% style="width:974.294px" %)
76 |(% style="width:191px" %)(((
77 [[image:1747688686425-680.png]]
78 Structural Definitions Maintenance Agency
79 )))|(% style="width:273px" %) |(% style="width:508px" %)Responsible for maintaining structural definitions.
80 |(% style="width:191px" %) |(% style="width:273px" %)(((
81 [[image:1747895989437-570.png]]
82 Maintain Structure Definitions
83 )))|(% style="width:508px" %)The maintenance of structural definitions. This use case has sub class use cases for each of the structural [[artefacts>>doc:sdmx:Glossary.Artefact.WebHome]] that are maintained.
84 |(% style="width:191px" %) |(% style="width:273px" %)(((
85 [[image:1747896004486-873.png]]
86 Maintain Code List
87
88 [[image:1747896009533-990.png]]
89 MaintainConcepts
90
91 [[image:1747896014277-453.png]]
92 Maintain Category Scheme
93
94 [[image:1747896017685-493.png]]
95 Maintain Data Structure Definition
96 )))|(% style="width:508px" %)(((
97 Creation and maintenance of the [[Data Structure Definition>>doc:sdmx:Glossary.Data structure definition.WebHome]], [[Metadata Structure Definition>>doc:sdmx:Glossary.Metadata structure definition.WebHome]], and the supporting [[artefacts>>doc:sdmx:Glossary.Artefact.WebHome]] that they use, such as [[code list>>doc:sdmx:Glossary.Code list.WebHome]] and  concepts
98 )))
99 )))
100
101 (((
102 (% style="width:976.294px" %)
103 |(% style="width:192px" %) |(% style="width:272px" %)(((
104 [[image:1747896022512-955.png]]
105 Maintain Metadata Structure Definition
106
107 [[image:1747896026313-659.png]]
108 Maintain Hierarchical Code Scheme
109
110 [[image:1747896030342-760.png]]
111 Maintain Reporting Taxonomy
112
113 [[image:1747896033858-560.png]]
114 Maintain Organisation Scheme
115
116 [[image:1747896037473-764.png]]
117 MaintainProcess
118
119 [[image:1747896048632-885.png]]
120 Maintain Dataflow Definition
121
122 [[image:1747896044576-648.png]]
123 Maintain Metadataflow Definition
124 )))|(% style="width:510px" %)(((
125 This includes Agency, [[Data Provider>>doc:sdmx:Glossary.Data provider.WebHome]], [[Data Consumer>>doc:sdmx:Glossary.Data consumer.WebHome]], and Organisation Unit Scheme
126 )))
127 |(% style="width:192px" %)(((
128 [[image:1747688686425-680.png]]
129 Provisioning Definitions Maintenance Agency
130 )))|(% style="width:272px" %) |(% style="width:510px" %)Responsible for maintaining data and metadata provisioning definitions.
131 )))
132
133 **Figure 7: Table of Actors and Use Cases for Maintenance of Structural and Provisioning Definitions**
134
135 === {{id name="_Toc370966"/}}2.2.2 Publishing and Using Data and Reference Metadata ===
136
137 ==== 2.2.2.1 Use Cases ====
138
139 [[image:1747910454498-819.png]]
140
141 **Figure 8: Actors and use cases for data and metadata publishing and consuming**
142
143 ==== 2.2.2.2 Explanation of the Diagram ====
144
145 Note that in this diagram “publishing” data and [[reference metadata>>doc:sdmx:Glossary.Reference metadata.WebHome]] is deemed to be the same as “reporting” data and [[reference metadata>>doc:sdmx:Glossary.Reference metadata.WebHome]]. In some cases the act of making the data available fulfils both functions. Aggregated data is published and in order for the Data Publisher to do this and in order for consuming applications to process the data and [[reference metadata>>doc:sdmx:Glossary.Reference metadata.WebHome]] its structure must be known. Furthermore, consuming applications may also require access to [[reference metadata>>doc:sdmx:Glossary.Reference metadata.WebHome]] in order to present this to the [[Data Consumer>>doc:sdmx:Glossary.Data consumer.WebHome]] so that the data is better understood. As with the data, the [[reference metadata>>doc:sdmx:Glossary.Reference metadata.WebHome]] also needs to be formatted in accordance with a maintained structure. The [[Data Consumer>>doc:sdmx:Glossary.Data consumer.WebHome]] and Metadata Consumer cannot use the data or [[reference metadata>>doc:sdmx:Glossary.Reference metadata.WebHome]] unless it is “published” and so there is a “[[data source>>doc:sdmx:Glossary.Data source.WebHome]]” or “metadata source” dependency between the “uses” and “publish” use cases.
146
147 In any data and [[reference metadata>>doc:sdmx:Glossary.Reference metadata.WebHome]] publishing and consuming scenario both the publishing and the consuming applications will need access to maintained Provisioning Definitions. These definitions may be as simple as who provides what data and [[reference metadata>>doc:sdmx:Glossary.Reference metadata.WebHome]] to whom, and when, or it can be more complex with constraints on the data and metadata that can be provided by a particular publisher, and, in a data sharing scenario where data and metadata are “pulled” from [[data sources>>doc:sdmx:Glossary.Data source.WebHome]], details of the source.
148
149 ==== 2.2.2.3 Definitions ====
150
151 (% style="width:1130.29px" %)
152 |(% colspan="1" style="width:180px" %)**Actor**|(% colspan="2" style="width:199px" %)**Use Case**|(% colspan="2" style="width:656px" %)**Description**
153 |(% colspan="1" style="width:180px" %)(((
154 [[image:1747688686425-680.png]]
155 Data Publisher
156 )))|(% colspan="2" style="width:199px" %) |(% colspan="2" style="width:656px" %)Responsible for publishing data according to a specified [[Data Structure Definition>>doc:sdmx:Glossary.Data structure definition.WebHome]] (data structure) definition, and relevant provisioning definitions.
157 |(% colspan="1" style="width:180px" %) |(% colspan="2" style="width:199px" %)(((
158 [[image:1747896053396-402.png]]
159 Publish Data
160 )))|(% colspan="2" style="width:656px" %)Publish a [[data set>>doc:sdmx:Glossary.Data set.WebHome]]. This could mean a physical [[data set>>doc:sdmx:Glossary.Data set.WebHome]] or it could mean to make the data available for access at a [[data source>>doc:sdmx:Glossary.Data source.WebHome]] such as a database that can process a query.
161 |(% colspan="1" style="width:180px" %)(((
162 [[image:1747688686425-680.png]]
163 Data Consumer
164 )))|(% colspan="2" style="width:199px" %) |(% colspan="2" style="width:656px" %)The user of the data. It may be a human consumer accessing via a user interface, or it could be an application such as a statistical production system.
165 |(% colspan="1" style="width:180px" %) |(% colspan="2" style="width:199px" %)(((
166 [[image:1747896057633-585.png]]
167 Uses Data
168 )))|(% colspan="2" style="width:656px" %)Use data that is formatted according to the structural definitions and made available according to the provisioning definitions. Data are often linked to metadata that may reside in a different location and be published and maintained independently.
169 |(% colspan="1" style="width:180px" %)(((
170 [[image:1747688686425-680.png]]
171 Metadata Publisher
172 )))|(% colspan="2" style="width:199px" %) |(% colspan="2" style="width:656px" %)Responsible for publishing [[reference metadata>>doc:sdmx:Glossary.Reference metadata.WebHome]] according to a specified [[metadata structure definition>>doc:sdmx:Glossary.Metadata structure definition.WebHome]], and relevant provisioning definitions.
173 |(% colspan="1" style="width:180px" %) |(% colspan="2" style="width:199px" %)(((
174 [[image:1747896069282-370.png]]
175 Publish Reference Metadata
176 )))|(% colspan="2" style="width:656px" %)Publish a [[reference metadata>>doc:sdmx:Glossary.Reference metadata.WebHome]] set. This could mean a physical [[metadata set>>doc:sdmx:Glossary.Metadata set.WebHome]] or it could mean to make the [[reference metadata>>doc:sdmx:Glossary.Reference metadata.WebHome]] available for access at a metadata source such as a [[metadata repository>>doc:sdmx:Glossary.Metadata repository.WebHome]] that can process a query.
177 |(% colspan="1" style="width:180px" %)(((
178 [[image:1747688686425-680.png]]
179 Metadata Consumer
180 )))|(% colspan="2" style="width:199px" %) |(% colspan="2" style="width:656px" %)The user of the [[reference metadata>>doc:sdmx:Glossary.Reference metadata.WebHome]]. It may be a human consumer accessing via a user interface, or it could be an application such as a statistical production or dissemination system.
181 |(% colspan="1" style="width:180px" %) |(% colspan="2" style="width:199px" %)(((
182 [[image:1747896074313-782.png]]
183 Uses Reference Metadata
184 )))|(% colspan="2" style="width:656px" %)Use [[reference metadata>>doc:sdmx:Glossary.Reference metadata.WebHome]] that is formatted according to the structural definitions and made available according to the provisioning definitions.