Skip to content

Overview

Data from external Source (like REM)

This section shows the synchronization process between the Drupal portal and the Datacore. The Datacore is the master of the data and we have to care about the reliability of the records, because data can be changed from different external sources, like REM or a user adds a sub-user in Drupal manually.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
@startuml

[-> Datacore: Provide external data
activate Datacore

loop until queue is empty
Datacore -> Drupal: Request to process
activate Drupal
Drupal -> Drupal: Block adding data to queue
Drupal -> Datacore: Process data in queue
end
return yes

Datacore -> Drupal: Process external data
activate Drupal
Drupal -> Drupal: Process data
Drupal -> Drupal: Release block of queue
return successfull
deactivate Datacore


@enduml

Datacore

This section contains process logic and the current data model of the Datacore Application.

Receiving data

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
@startuml

(*) --> "Receive Data"
"Receive Data" --> "Check Data Origin"

if "is update needed" then
    --> [yes] "update user record"
else
    --> [no] (*)

"update user record" -->  (*)

@enduml

Use Cases

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
@startuml

actor "User" as user 
actor "Developer RE" as devel1 
actor "Developer Other" as devel2

package Portal {
    usecase "Add User" as UC1
    usecase "Add Role" as UC2
    usecase "Add Groups" as UC3
}

user --> UC1
user --> UC2
user --> UC3

@enduml