Wiki source code of 04. Technické informace

Last modified by Branislav ŠIŠKA on 2024/09/12 19:22

Hide last authors
Branislav ŠIŠKA 2.1 1 = {{id name="04.Technickéinformace-1.Hardware"/}}1. Hardware =
2
Branislav ŠIŠKA 7.1 3 Software Clindata běží na serverech umístěných v Institutu molekulární a translační medicíny (IMTM), Lékařské a stomatologické fakulty, Univerzity Palackého v Olomouci. Zařízení je zabezpečeno a pod dohledem globálního sledování.
Branislav ŠIŠKA 2.1 4
Branislav ŠIŠKA 6.1 5 === {{id name="04.Technickéinformace-Popishardwaru"/}}**Popis hardwaru** ===
Branislav ŠIŠKA 2.1 6
Branislav ŠIŠKA 7.1 7 **Server zapojený ve virtualizaci proxmox**
Branislav ŠIŠKA 2.1 8
Branislav ŠIŠKA 7.1 9 Paměť: 48 GB
Branislav ŠIŠKA 2.1 10
Branislav ŠIŠKA 7.1 11 Procesory: 8 jader
Branislav ŠIŠKA 2.1 12
Branislav ŠIŠKA 6.1 13 (% style="color: rgb(55,65,81);" %)**Datová úložiště**
Branislav ŠIŠKA 2.1 14
Branislav ŠIŠKA 6.1 15 (% style="color: rgb(55,65,81);" %)Objektové úložiště
Branislav ŠIŠKA 5.1 16
Branislav ŠIŠKA 2.1 17 **Firewall**
18
Branislav ŠIŠKA 7.1 19 FortiGate 600E
Branislav ŠIŠKA 2.1 20
21 **~ **
22
23 = {{id name="04.Technickéinformace-2.Software"/}}2. Software =
24
Branislav ŠIŠKA 6.1 25 === {{id name="04.Technickéinformace-Požadavkynasoftware"/}}(% style="color: rgb(55,65,81);" %)Požadavky na software(%%) ===
Branislav ŠIŠKA 2.1 26
Branislav ŠIŠKA 6.1 27 (% style="color: rgb(55,65,81);" %)Jediným požadavkem pro použití softwaru Clindata je webový prohlížeč podporující standard HTML5. Seznam podporovaných prohlížečů:
Branislav ŠIŠKA 2.1 28
Branislav ŠIŠKA 6.1 29 * Chrome: ((% style="color: rgb(55,65,81);" %)Aktuální(%%) - 1) a a(% style="color: rgb(55,65,81);" %)ktuální
30 * Edge: ((% style="color: rgb(55,65,81);" %)Aktuální(%%) - 1) a a(% style="color: rgb(55,65,81);" %)ktuální
31 * Firefox: ((% style="color: rgb(55,65,81);" %)Aktuální(%%) - 1) a a(% style="color: rgb(55,65,81);" %)ktuální
Branislav ŠIŠKA 2.1 32 * Internet Explorer: 11+
Branislav ŠIŠKA 6.1 33 * Safari: ((% style="color: rgb(55,65,81);" %)Aktuální(%%) - 1) a a(% style="color: rgb(55,65,81);" %)ktuální
34 * Opera: (% style="color: rgb(55,65,81);" %)Aktuální
Branislav ŠIŠKA 2.1 35
Branislav ŠIŠKA 6.1 36 (% style="color: rgb(55,65,81);" %)(Aktuální znamená poslední dostupná verze daného prohlížeče)
Branislav ŠIŠKA 2.1 37
Branislav ŠIŠKA 6.1 38 === {{id name="04.Technickéinformace-Programovacíjazyk"/}}Programovací jazyk ===
Branislav ŠIŠKA 2.1 39
Branislav ŠIŠKA 6.1 40 Hlavním programovacím jazykem používaným pro vývoj aplikace Clindata je Java 8. Další technologie používané při vývoji jsou:
Branislav ŠIŠKA 2.1 41
42 * Spring Framework v5.
43 * HTML, CSS
44 * JavaScript
45 * jQuery
46 * jQuery UI
47 * Bootstrap
48 * MathJS
49 * Datatables
50 * SQL
51 * Oracle database
52
Branislav ŠIŠKA 6.1 53 === {{id name="04.Technickéinformace-Operačnísystém"/}}Operační systém ===
Branislav ŠIŠKA 2.1 54
Branislav ŠIŠKA 7.1 55 Operační systém nainstalovaný na produkčních serverech je RedHat Enterprise Linux 9.4.
Branislav ŠIŠKA 2.1 56
57 === {{id name="04.Technickéinformace-Proxyserver"/}}Proxy server ===
58
Branislav ŠIŠKA 6.1 59 Jako brána z vnějšího světa do vnitřní aplikace běžící na produkčním serveru se používá Apache HTTP Server.
Branislav ŠIŠKA 2.1 60
Branislav ŠIŠKA 6.1 61 === {{id name="04.Technickéinformace-Aplikačníserver"/}}Aplikační server ===
Branislav ŠIŠKA 2.1 62
Branislav ŠIŠKA 6.1 63 Aplikace ClinData běží na Apache Tomcat, což je open-source Java Servlet Container vyvíjený nadací Apache Software Foundation.
Branislav ŠIŠKA 2.1 64
65 **~ **
66
Branislav ŠIŠKA 6.1 67 = {{id name="04.Technickéinformace-3.Databáze"/}}3. Databáze =
Branislav ŠIŠKA 2.1 68
Branislav ŠIŠKA 6.1 69 === {{id name="04.Technickéinformace-DatabázeClindata"/}}Databáze Clindata ===
Branislav ŠIŠKA 2.1 70
Branislav ŠIŠKA 6.1 71 Databáze používaná pro ukládání dat ze softwaru Clindata je Oracle Database (obvykle označovaná jako Oracle RDBMS), kterou vyvíjí společnost Oracle Corporation. Verze databáze je 12.1. Standard Edition.
Branislav ŠIŠKA 2.1 72
Branislav ŠIŠKA 6.1 73 Oracle databáze běží na odděleném serveru založeném na Linuxu, který je chráněn firewallem před vnější sítí (Internetem). Tento databázový server není přístupný zvenčí organizace, ale pouze ze zapsaných vnitřních serverů (aplikační a záložní servery).
Branislav ŠIŠKA 2.1 74
Branislav ŠIŠKA 6.1 75 = {{id name="04.Technickéinformace-4.Zálohy"/}}4. Zálohy =
Branislav ŠIŠKA 2.1 76
Branislav ŠIŠKA 6.1 77 Existují více úrovní archivace dat, které zajišťují bezpečnost dat a rychlé obnovení databáze. Data jsou archivována na úrovni databáze a operačního systému.
Branislav ŠIŠKA 2.1 78
Branislav ŠIŠKA 6.1 79 1. Zálohy na úrovni databáze
80 Nástroj **RMAN** je nedílnou součástí Oracle databáze. Vytváří binární kopii celé databáze a ukládá ji do souborového systému. Nástroj RMAN je spuštěn každý týden. Soubory jsou uloženy interně na serveru databáze a jsou zkopírovány na dvě nezávislá záložní místa.
Branislav ŠIŠKA 9.1 81 **EXPDP/IMPDP** je datová pumpa, která exportuje data do textových záloh. Nástroj EXPDP je spuštěn každých 24 hodin. Cílem zálohování je stejné jako u RMAN. Data jsou uložena na dvou nezávislých záložních místech.
Branislav ŠIŠKA 6.1 82 **Redo Logy** jsou každý den archivovány do souborového systému.
83 1. Zálohy na úrovni operačního systému
Branislav ŠIŠKA 10.1 84 Aplikační server je zálohován na úrovni operačního systému pravidelně ve virtualizaci **Proxmox**.
Branislav ŠIŠKA 9.1 85 \\
Branislav ŠIŠKA 2.1 86
Branislav ŠIŠKA 6.1 87 RMAN konfigurační soubor
Branislav ŠIŠKA 2.1 88
89 CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
90 CONFIGURE BACKUP OPTIMIZATION OFF; # default
91 CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
92 CONFIGURE CONTROLFILE AUTOBACKUP ON;
93 CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
94 CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
95 CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
96 CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
97 CONFIGURE MAXSETSIZE TO UNLIMITED; # default
98 CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
99 CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
100 CONFIGURE RMAN OUTPUT TO KEEP FOR 7 DAYS; # default
101 CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
102 CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/../../oracle/12c/dbs/snapcf_imtm.f'; # default
103
104 EXPDP configuration file
105
106 DIRECTORY=dtpump
107 DUMPFILE=registry.dmp
108 LOGFILE=registry.log
109 CONTENT=ALL
110 COMPRESSION=NONE
111 JOB_NAME=registry_migration
112 SCHEMAS=registry,registry_aud
113
Branislav ŠIŠKA 6.1 114 = {{id name="04.Technickéinformace-05.Bezpečnostpřipojení"/}}05. Bezpečnost připojení =
Branislav ŠIŠKA 2.1 115
Branislav ŠIŠKA 6.1 116 === {{id name="04.Technickéinformace-Zabezpečenépřipojení"/}}Zabezpečené připojení ===
Branislav ŠIŠKA 2.1 117
Branislav ŠIŠKA 6.1 118 Jelikož aplikace Clindata je webová aplikace, je nezbytné zajistit zabezpečenou komunikaci mezi serverem a klientovým počítačem. To je dosaženo pomocí komunikačního protokolu HTTPS, který je šifrován pomocí protokolu Transport Layer Security (TLS). Tento protokol je široce používán pro veškeré bezpečné transakce na internetu (platby, e-maily atd.) a je považován za bezpečný a nedekódovatelný. Chrání proti útokům prostředníka. Komunikace bez bezpečnostní vrstvy (HTTP) může být narušena útočníky, kteří ji mohou odposlouchávat nebo měnit.
Branislav ŠIŠKA 2.1 119
Branislav ŠIŠKA 6.1 120 === {{id name="04.Technickéinformace-Přesměrovánízabezpečení"/}}Přesměrování zabezpečení ===
Branislav ŠIŠKA 2.1 121
Branislav ŠIŠKA 6.1 122 Všechny požadavky uživatele přicházející prostřednictvím nezabezpečeného protokolu HTTP jsou automaticky přesměrovány na zabezpečený protokol HTTPS. Veškerá komunikace mezi klientem a serverem je zabezpečena a není možné se připojit k softwaru Clindata prostřednictvím nezabezpečeného spojení.
Branislav ŠIŠKA 2.1 123
Branislav ŠIŠKA 6.1 124 === {{id name="04.Technickéinformace-Certifikát"/}}Certifikát ===
Branislav ŠIŠKA 2.1 125
Branislav ŠIŠKA 6.1 126 Pro zabezpečenou komunikaci je vyžadován certifikát uložený na webovém serveru. Certifikát musí být podepsán důvěryhodnou certifikační autoritou. Server Clindata používá certifikát, který je digitálně podepsán autoritou TERENA.
Branislav ŠIŠKA 2.1 127
Branislav ŠIŠKA 6.1 128 = {{id name="04.Technickéinformace-06.Autenzizaceaautorizace"/}}06. Autenzizace a autorizace =
Branislav ŠIŠKA 2.1 129
Branislav ŠIŠKA 6.1 130 === {{id name="04.Technickéinformace-Správauživatelů"/}}Správa uživatelů ===
Branislav ŠIŠKA 2.1 131
Branislav ŠIŠKA 6.1 132 Všichni uživatelé používající aplikaci Clindata musí být registrováni před přihlášením. Není možné získat neoprávněný přístup k serveru ani pro demonstrační účely. Existuje specializovaná aplikace pro správu uživatelů - nástroj IMTM Admin.
Branislav ŠIŠKA 2.1 133
Branislav ŠIŠKA 6.1 134 Nástroj Admin je zodpovědný za:
Branislav ŠIŠKA 2.1 135
Branislav ŠIŠKA 6.1 136 * Správu institucí, společností, nemocnic a jejich oddělení. Může existovat neomezený počet úrovní organizací, například univerzita může mít strukturu univerzita-fakulta-oddělení-laboratoř. Každá úroveň organizace může získat odlišnou sadu oprávnění a rolí. Správa uživatelů. Každý uživatel je identifikován e-mailovou adresou jako přihlašovacím jménem a heslem.
137 * Uživatelé jsou přiřazeni ke svým organizacím. Uživatelé mohou pracovat na více projektech s různými rolemi. To je umožněno pomocí uživatelských profilů. Počet profilů pro jednoho uživatele není omezen. Každý profil může mít odlišnou sadu oprávnění a rolí.
138 * Správa rolí a profilů.
Branislav ŠIŠKA 2.1 139
Branislav ŠIŠKA 6.1 140 Databáze Admin s uživatelskými údaji je uložena v Oracle databázi jako samostatné schéma. Přístup k tomuto schématu je omezen pouze pro správce. Server s Oracle databází je oddělen firewallem od veřejné sítě a není přístupný z internetu.
Branislav ŠIŠKA 2.1 141
Branislav ŠIŠKA 6.1 142 Nový účet uživatele může být vytvořen pouze administrátorem. Uživatel nemá možnost vytvořit si účet sám.
Branislav ŠIŠKA 2.1 143
Branislav ŠIŠKA 6.1 144 Následující kroky musí být dodrženy při vytváření nového účtu:
Branislav ŠIŠKA 2.1 145
Branislav ŠIŠKA 6.1 146 * Nový uživatel požádá vlastníka projektu o vytvoření nového účtu.
147 * Vlastník projektu požádá administrátora o vytvoření nového účtu s určenými oprávněními a rolími.
148 * Administrátor vytvoří nový účet a nastaví požadovaná oprávnění a role.
149 * Vlastník projektu zkontroluje nastavení účtu a schválí ho.
150 * Nový uživatel obdrží přihlašovací údaje a může se přihlásit.
Branislav ŠIŠKA 2.1 151
Branislav ŠIŠKA 6.1 152 === {{id name="04.Technickéinformace-Centrálníautentizačníslužba(CAS)"/}}Centrální autentizační služba (CAS) ===
Branislav ŠIŠKA 2.1 153
Branislav ŠIŠKA 6.1 154 Aplikace Clindata musí být propojena s daty z IMTM Admin k ovládání účtů, rolí a oprávnění. To se provádí integrací technologie CAS do softwaru ClinData. Technologie CAS se skládá z CAS serveru a CAS klienta. CAS server je zodpovědný za ověřování uživatelů a poskytování přístupu k aplikacím. CAS klienti chrání aplikace CAS a získávají identitu povolených uživatelů ze serveru CAS.
Branislav ŠIŠKA 2.1 155
Branislav ŠIŠKA 6.1 156 = {{id name="04.Technickéinformace-07.Roleaoprávnění"/}}07. Role a oprávnění =
Branislav ŠIŠKA 2.1 157
Branislav ŠIŠKA 6.1 158 === {{id name="04.Technickéinformace-Omezenípřístupu"/}}Omezení přístupu ===
Branislav ŠIŠKA 2.1 159
Branislav ŠIŠKA 6.1 160 Přístup uživatele může být omezen ve dvou různých oblastech:
Branislav ŠIŠKA 2.1 161
Branislav ŠIŠKA 6.1 162 * omezení přístupu k funkcionalitě ClinData
163 * omezení přístupu k datům uloženým v softwaru ClinData
Branislav ŠIŠKA 2.1 164
Branislav ŠIŠKA 6.1 165 Veškerá omezení jsou nastavena v nástroji IMTM Admin.
Branislav ŠIŠKA 2.1 166
Branislav ŠIŠKA 6.1 167 === {{id name="04.Technickéinformace-Omezenífunkcí"/}}Omezení funkcí ===
Branislav ŠIŠKA 2.1 168
Branislav ŠIŠKA 6.1 169 === {{id name="04.Technickéinformace-Oprávnění"/}}Oprávnění ===
Branislav ŠIŠKA 2.1 170
Branislav ŠIŠKA 6.1 171 Oprávnění k přístupu určují, ke kterým objektům v ClinData může uživatel prohlížet nebo je upravovat. Každá funkcionalita v softwaru ClinData je odrážena v odpovídajícím oprávnění, takže přístup ke všem funkcím je kontrolován. Každý uživatel nebo skupina uživatelů může mít přístup k přiděleným nebo omezeným oprávněním.
Branislav ŠIŠKA 2.1 172
Branislav ŠIŠKA 6.1 173 === {{id name="04.Technickéinformace-Role"/}}Role ===
Branislav ŠIŠKA 2.1 174
Branislav ŠIŠKA 6.1 175 Role jsou virtuální entity, které slouží jako kontejnery pro více oprávnění.
Branislav ŠIŠKA 2.1 176
Branislav ŠIŠKA 6.1 177 Existují předdefinované role a uživatelé nebo skupiny uživatelů mohou být jim přiřazeny. Nejčastěji používané role jsou:
Branislav ŠIŠKA 2.1 178
Branislav ŠIŠKA 6.1 179 * admin systému ClinData - plný přístup ke všem funkcím v ClinData, žádná omezení, vytváření nových projektů
180 * projekt admin systému ClinData - plný přístup ke všem funkcím ve vybraném projektu včetně tvorby studií
181 * manažer dat projektu ClinData - přístup ke všem funkcím potřebným pro vkládání nebo aktualizaci dat pacienta
182 * monitor dat projektu ClinData - přístup ke všem funkcím potřebným pro sledování studie, validaci a dokončení CRFs (formuláře pro sběr dat)
183 * prohlížeč dat projektu ClinData - pouze čtení vybraných dat
Branislav ŠIŠKA 2.1 184
Branislav ŠIŠKA 6.1 185 === {{id name="04.Technickéinformace-Omezenídat"/}}Omezení dat ===
Branislav ŠIŠKA 2.1 186
Branislav ŠIŠKA 6.1 187 Výchozí nastavení pro přístup k datům v softwaru ClinData je maximálně omezené. Uživatel vidí pouze data, která sám vložil. Výchozí nastavení neumožňuje vidět žádná data vložená jiným uživatelem. Přístup k ostatním datům musí být explicitně povolen.
Branislav ŠIŠKA 2.1 188
Branislav ŠIŠKA 6.1 189 Tato nastavení lze upravit:
Branislav ŠIŠKA 2.1 190
Branislav ŠIŠKA 6.1 191 * uživatel vidí pouze svá data
192 * uživatel vidí data vložená jiným uživatelem nebo skupinou uživatelů
193 * uživatel vidí data spojená s organizací
194 * uživatel vidí všechna data ve studii
Branislav ŠIŠKA 2.1 195
Branislav ŠIŠKA 6.1 196 === {{id name="04.Technickéinformace-Osobníúdaje"/}}Osobní údaje ===
Branislav ŠIŠKA 2.1 197
Branislav ŠIŠKA 6.1 198 Studie nebo registry mohou obsahovat osobní údaje. Přístup k těmto údajům může být omezen pomocí speciálního oprávnění.
Branislav ŠIŠKA 2.1 199
Branislav ŠIŠKA 6.1 200 Tato nastavení lze upravit:
Branislav ŠIŠKA 2.1 201
Branislav ŠIŠKA 6.1 202 * uživatel vidí osobní údaje
203 * uživatel nevidí osobní údaje
Branislav ŠIŠKA 2.1 204
Branislav ŠIŠKA 6.1 205 = {{id name="04.Technickéinformace-8.Logování"/}}8. Logování =
Branislav ŠIŠKA 2.1 206
Branislav ŠIŠKA 6.1 207 Systém ClinData zaznamenává všechny události, které se v systému odehrávají. Administrátor může tyto záznamy procházet v uživatelsky přívětivé formě a analyzovat potenciální problémy, sledovat aktivity uživatelů atd.
Branislav ŠIŠKA 2.1 208
Branislav ŠIŠKA 6.1 209 Existují tři různé typy mechanismů pro zaznamenávání událostí:
Branislav ŠIŠKA 2.1 210
Branislav ŠIŠKA 6.1 211 * Záznamy softwaru se provádějí na úrovni programovacího jazyka a jsou velmi podrobné. Soubory se záznamy obsahují údaje o vnitřním stavu celého systému v době události. Tento přístup slouží pro podrobnou analýzu problémů, které se v minulosti vyskytly.
212 * Záznamy přístupu jsou určeny k řízení činnosti uživatelů. Záznam o přístupu obsahuje údaje o tom, kdo provedl akci a kdy. Zaznamenává veškeré akce provedené na objektech v systému. Objektem může být studie, pacient, formulář CRF, soubor. Zaznamenávají se následující akce:
213 ** vytvoření
214 ** otevření
215 ** změna
216 ** přidání
217 ** odebrání
218 ** smazání
Branislav ŠIŠKA 2.1 219 ** export
Branislav ŠIŠKA 6.1 220 * Audit je zaměřený na změny provedené ve formulářích CRF. Zaznamenává kompletní historii toho, co bylo uživateli změněno. Jeden záznam obsahuje údaje o:
221 ** kdy byla změna provedena
222 ** kdo změnil data
223 ** co bylo změněno
224 ** jaká je nová hodnota
Branislav ŠIŠKA 2.1 225
Branislav ŠIŠKA 6.1 226 Důležitou informací je, že systém ClinData neodstraňuje žádné záznamy. Každý záznam v databázi má systémový příznak AKTIVNÍ. Smazání řádku pouze nastaví tento příznak AKTIVNÍ na hodnotu false. Neaktivní řádky se nezobrazují ve softwaru ClinData, ale stále jsou uloženy v databázi.
Branislav ŠIŠKA 2.1 227
Branislav ŠIŠKA 6.1 228 = {{id name="04.Technickéinformace-9.Vývojsoftwaru"/}}9. Vývoj softwaru =
Branislav ŠIŠKA 2.1 229
Branislav ŠIŠKA 6.1 230 === {{id name="04.Technickéinformace-Sledováníproblémů"/}}Sledování problémů ===
Branislav ŠIŠKA 2.1 231
Branislav ŠIŠKA 6.1 232 Jakýkoli problém nalezený ve softwaru ClinData je zdokumentován a vytvořen jako nový problém v softwaru JIRA. JIRA software je vyvíjen společností Atlassian a slouží jako nástroj pro sledování problémů. Nový problém je analyzován a je mu přiřazena priorita. Seznam problémů je řazen podle priorit a zpracováván vývojáři. Pokud je závažný problém opraven, je publikován ve nové verzi softwaru ClinData. Problém je také uzavřen jako vyřešený v JIRA.
Branislav ŠIŠKA 2.1 233
Branislav ŠIŠKA 6.1 234 === {{id name="04.Technickéinformace-Správazměn"/}}Správa změn ===
Branislav ŠIŠKA 2.1 235
Branislav ŠIŠKA 6.1 236 Všechny požadavky na změny plánované ve softwaru ClinData jsou uloženy v JIRA. Když přichází nový požadavek, je analyzován, provedena časová odhad a přiřazena priorita. Seznam problémů je řazen podle priorit a zpracováván vývojáři.
Branislav ŠIŠKA 2.1 237
Branislav ŠIŠKA 6.1 238 === {{id name="04.Technickéinformace-Verzování"/}}Verzování ===
Branislav ŠIŠKA 2.1 239
Branislav ŠIŠKA 6.1 240 Zdrojový kód softwaru ClinData je uložen v repozitáři GIT, který umožňuje sledování změn v souborech. Je možné procházet historii libovolného souboru se zdrojovým kódem v repozitáři. Každá změna je také zdokumentována, aby bylo snadné pochopit vývojový cyklus.
Branislav ŠIŠKA 2.1 241
Branislav ŠIŠKA 6.1 242 === {{id name="04.Technickéinformace-Revizekódu"/}}Revize kódu ===
Branislav ŠIŠKA 2.1 243
Branislav ŠIŠKA 6.1 244 Jakákoliv změna provedená ve zdrojovém kódu softwaru ClinData musí být zkontrolována jiným vývojářem. Tento proces se nazývá revize kódu. Tento proces minimalizuje počet chyb ve zdrojovém kódu, protože vše je dvojnásobně zkontrolováno. Pro revize kódu se používá software Bitbucket (vyvinutý společností Atlassian). Tento software brání vývojářům v používání neprokázaného kódu ve veřejných verzích softwaru ClinData.
Branislav ŠIŠKA 2.1 245
Branislav ŠIŠKA 6.1 246 = {{id name="04.Technickéinformace-10.Zajišteníkvality"/}}10. Zajištení kvality =
Branislav ŠIŠKA 2.1 247
Branislav ŠIŠKA 6.1 248 === {{id name="04.Technickéinformace-Testovacíprostředí"/}}Testovací prostředí ===
Branislav ŠIŠKA 2.1 249
Branislav ŠIŠKA 6.1 250 Všechny nové verze softwaru ClinData musí být otestovány a ověřeny jako funkční a správné před jejich zveřejněním. Existuje zvláštní prostředí, které se používá k testování nové verze před jejím zveřejněním. Testovací prostředí musí být podobné produkčnímu prostředí, aby se předešlo problémům s konfigurací.
Branislav ŠIŠKA 2.1 251
Branislav ŠIŠKA 6.1 252 === {{id name="04.Technickéinformace-Unittestování"/}}Unit testování ===
Branislav ŠIŠKA 2.1 253
Branislav ŠIŠKA 6.1 254 Unit testování je metoda testování softwaru, při které jsou testovány jednotlivé části zdrojového kódu, aby se zjistilo, zda jsou vhodné k použití. Ve zdrojovém kódu softwaru ClinData existuje více než tisíc unit testů. Všechny kritické části zdrojového kódu jsou pokryty unit testem téměř na 100 %. Celkový zdrojový kód je pokryt unit testem více než 85 %. Jakýkoli problém v unit testování je blokující pro zveřejnění verze softwaru.
Branislav ŠIŠKA 2.1 255
Branislav ŠIŠKA 6.1 256 === {{id name="04.Technickéinformace-Testováníaplikace"/}}Testování aplikace ===
Branislav ŠIŠKA 2.1 257
Branislav ŠIŠKA 6.1 258 Celá aplikace je testována prostřednictvím průzkumného testování aplikace před jejím zveřejněním. Testování aplikace se provádí v testovacím prostředí. Jakýkoli problém při testování aplikace je blokující pro zveřejnění verze.
Branislav ŠIŠKA 2.1 259
Branislav ŠIŠKA 6.1 260 === {{id name="04.Technickéinformace-Zveřejnění"/}}Zveřejnění ===
Branislav ŠIŠKA 2.1 261
Branislav ŠIŠKA 6.1 262 Proces zveřejnění znamená, že nová verze softwaru ClinData je uvolněna a zpřístupněna uživatelům. Pro sestavení a zveřejnění nových verzí se používá software Bamboo (vyvinutý společností Atlassian). Jednotkové testování je také součástí procesu zveřejnění nové verze. V případě jakéhokoli problému v jednotkovém testování je celý proces zveřejnění přerušen a zodpovědným osobám je zasláno oznámení emailem.