GB2273799A - Ensuring data integrity of input data - Google Patents
Ensuring data integrity of input data Download PDFInfo
- Publication number
- GB2273799A GB2273799A GB9226771A GB9226771A GB2273799A GB 2273799 A GB2273799 A GB 2273799A GB 9226771 A GB9226771 A GB 9226771A GB 9226771 A GB9226771 A GB 9226771A GB 2273799 A GB2273799 A GB 2273799A
- Authority
- GB
- United Kingdom
- Prior art keywords
- data
- database
- controller
- database controller
- workstation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1608—Error detection by comparing the output signals of redundant hardware
- G06F11/1616—Error detection by comparing the output signals of redundant hardware where the redundant component is an I/O device or an adapter therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
Abstract
To ensure that data is correct before it is written to a database structure in a disk array 3, data is inputted at two separate workstations 4(a) and 4(b) and is compared. To help users input data a preformatted screen is used which simulates the filling of forms. The input data is stored in separate memory maps 5(a) and 5(b) for comparison. The database structure, the memory map and the signals to generate the display screens for the workstations 4 are all related to document simulation which is carried out by a simulator 6 initially. A particular application is in the collection of medical data in clinical pharmocology. <IMAGE>
Description
'Processes for Ensuring Data Integrity" The invention relates to processes for maintaining data integrity. More particularly, the invention relates to such processes carried out by a database controller in communication with a number of workstations which are used for, among other things, inputting of data for storage in a database.
There are many situations where it is vital to ensure that data integrity is maintained in a database. One example is collection of medical data such as in clinical pharmacology. In such a situation it is absolutely vital that the stored data be correct, as errors could possibly lead in this situation to false grounds for approval of a drug.
Heretofore, much work has been carried out in developing fault tolerant systems in which there may be at least two stable memory banks and possibly a separate stable memory controller in addition to a host processor. The manner in which writes are performed and in which stable memory operations are performed ensure that memory operations are "atomic".
Controllers such as that described in European Patent
Specification No. 0 201,356 El (Tandem) help to ensure that data integrity is maintained in an input/output controller protecting against internal faults. In
European Patent Specification No. 0 218,413,B1 (IBM) a system and method is disclosed for correcting errors in coded data recorded on a diskfile. Thus, many systems and methods have been devised to help ensure data integrity or protection against various faults which may arise.
However, there is one major fault which the above prior art does not protect against, namely, the inputting of false data in the first instance. In many database systems, verification operations are carried out to ensure that the format of the data, for example, the number of characters is checked on inputting of the data. In addition, there may be some checks to ensure that the data is within a range of parameter values. Such an approach would not be sufficient where it is absolutely vital that data integrity is maintained for all items of data stored in a large database.
According to the invention, there is provided a method of receiving and storing data to ensure that integrity, the method being carried out by a database controller connected to a bank of fixed disks, to a local area network to which are connected - a plurality of workstations, to a memory circuit and to a document simulator, the method comprising an initialisation process, a data inputting process, and a database update process, wherein:
the initialisation process comprises the steps
of::
the document simulator in communication with
the database controller initially carrying
out document simulation operations,
identifying data input fields and
automatically generating a database structure
in the fixed disks for storage of data
received for the data fields;
the database controller identifying at least
two workstations associated with the
database, generating a security code which
applies to the database and to the
workstation and automatically transmitting
the document simulation screen data to each
identified workstation;
the database controller generating a memory
map in the memory circuit, there being one
memory map associated with each workstation;;
and
the database controller selecting from a
fixed disk a set of verification commands for
use in verifying data format and storing said
commands in a different portion of a fixed
disk, the data inputting process comprises the steps of:
the database controller verifying user
authorisations for the workstations by
reference to the storage security code;
an authorised work station displaying a
document simulation screen, receiving data
and automatically transmitting the received
data to the database controller;
the database controller automatically
verifying format of the received data by
reference to the stored verification commands
and writing the verified data to the
associated memory map in the memory circuit;;
a second workstation which has been
authorised displaying the document simulation
data receiving data and automatically
transmitting the data to the database
controllers; and
a database controller automatically verifying
format of the received set of data and
writing it to the second memory map in the
memory circuit, and
the updating process comprises the steps of:
the database controller automatically
carrying out resolution operations between
data in the two memory maps;
the database controller generating a log of
any detected errors; and
the database controller storing verified data
in the database structure of the fixed disk
drive.
In one embodiment, the method comprises the further step of automatically recording all data entry operations at each workstation to generate a data entry history file during the data inputting process.
Preferably, the resolution operation comprises:
carrying out a sequence of low-level
verification operations by testing field
lengths and nature of the data; and
carrying out a sequence of higher-level
verification operations by reference to a
knowledge database relating to the nature of
the data.
The invention will be more clearly understood from the following description of some preferred embodiments thereof#, given by way of example only with reference to the accompanying drawings in which:
Fig. 1 is a diagrammatic representation of a
database system of the invention;
Fig. 2 is a flow diagram illustrating an
initialisation process carried out by a database
controller of the database system; and
Fig. 3 is a flow chart illustrating data inputting
operations and database update operations carried
out by this system.
A database system 1 is shown in Fig. 1 which comprises a database controller 2. The database controller 2 is in this embodiment a microcomputer file server which is connected to a bank of disk drives 3 having a capacity of 650 MB. The controller 2 is connected to a number of user workstations 4 by a local area network 7. In addition, the controller 2 is connected to a memory circuit 5 and to a document simulator 6. The document simulator 6 is a special purpose workstation for the generation of display screens which simulate physical documents. The simulator 6 may include optical character recognition and scanning devices, as appropriate.
The system 1 is constructed by hard-coded programs and by construction of the necessary circuits to carry out various technical steps to ensure integrity of data which is received at the workstations 4. These technical steps include an initialisation process before a data inputting session is initiated and subsequently a data inputting session followed by a database update session to the disk drives 3.
Referring to Fig. 2, the initialisation process 19 is illustrated. In step 20 a set of documents is simulated.
The set of documents may, for example, be for collection of data by general practitioners from patients involved in a clinical pharmacology scheme. Document simulation is carried out by the simulator 6 and the ultimate result is the storage of video display instructions for a screen which simulates appearance of the relevant document. The sub-steps of this step may involve the scanning of documents and carrying out optical character recognition or indeed it may involve manually inputting pixel control signals to simulate the document.
The document simulation data is transmitted by the simulator 6 to the database controller 2, which stores it in the memory circuit 5. The database controller 2 then identifies data fields within the simulation data in step 21 and uses the data fields to generate a database structure for the fixed disks 3 in step 22. The database structure corresponds directly to the structure of the document and the user scheme, whereby there is one record for each document, one data field for each field of the document, and a similar data format for each field of information used such as the number of characters, the type of characters. At the end of step 22 there is a database structure generated for one set of documents which has been simulated in step 20. Such a set of documents may relate to one project for clinical pharmacology, for example.
In step 23, the database controller 2 identifies a workstation 4(a), 4(b), 4(c), 4(e), 4(f) or 4(g) to be used for that project and that database. In step 24 it automatically generates a security code which is stored in a disk drive 3 and which is to be used at a later stage for authorisation of users at the workstations. The security code is unique to a particular workstation. In step 25 the database controller 2 transmits the simulation data 2 to selected workstations. In this embodiments the data controller is instructed to identify two workstations for communication in respect of a particular database andproject. Accordingly, in step 26 a decision is made as to whether or not the second workstation has been identified and if not, in step 27 the controller identifies a second workstation and repeats step 24 and step 25 for that workstation.In this embodiment, workstations 4(a) and 4(b) are identified for use with the particular database.
Subsequently, in step 28 the controller automatically generates a memory map of the memory circuit 5 associated with each of the workstations 4(a) and 4(b). The size of the memory map is generated according to the number of data fields in the document simulation data. In this embodiment, the relevant memory maps for the workstations 4(a) and 4(b) are identified as 5(a) and 5(b). In step 29 the database controller 2 retrieves from a fixed disk 3 selected verification commands for use in verifying the data. The verification commands are selected by reference to the simulation data which includes ranges of parameter values for the data.
When the database system 1 has been initialised by the process 19 it is ready for the reception and storage of data for a particular data collecting project such as field tests for a particular drug. Other initialisation processes may be carried out for other projects and these would involve use of different workstations and different maps within this circuit 5 and different database structures on the disk drives 3. This is an important aspect of the invention as it allows use of a single database system for the collection of data in an error free manner for a number of different projects.
Referring now to Fig. 3, the technical steps which are carried out by the database controller 3 and the workstations 4(a) and 4(b) while they communicate via the bi-directional local area network 7 are described. These steps ensure that the data which is received is correct by detection of inputting errors and incorrect data generally. The data inputting and database updating process is indicating by the numeral 29.
In step 30 of the process 29 the database controller 22 communicates with the workstations 4(a) and 4(b) to receive user identifiers and passwords and subsequently verifies these by reference to the authorisation code which has previously been stored in the disks 3. If these are correct the controller 2 authorises the user and-this authorisation applies for that particular workstation and for that particular data project only. Following authorisation of the users, in step 31 the controller 2 transmits signals on the local area network 7 to the workstation 4(a) to activate the workstation. Upon activation, the workstation 4(a) retrieves the stored simulation data and generates display signals for its screen so that a screen is displayed which simulates a portion of a document.This display screen both informs the user as to exactly which data is to be inputted and also prompts the user to input variable data. The format for inputting variable data is the same as that by which a form is filled in physically. It helps to ensure that confusion does not arise in the inputting of data. The technical step involved in the simulation considerable helps in ensuring data integrity.
In step 33 the data is inputted at the workstation 4(a) and in step 34 the workstation 4(a) automatically transmits the data via the bi-directional local area network 7 to the controller 2. The data may be from documents such as ccase record forms (C.R.F's) for clinical pharmacology. The controller 2 automatically recognises the source of the data and immediately writes it to the memory map 5(a) in the memory circuit 5. Steps 32 to 35 inclusive continue for all of the simulation screens which are stored and subsequently displayed by the workstation 4(a). When this data inputting session is complete, the controller 2 in step 37 activates the second workstation 4(b) if this has not been done already, as indicated by the step 36 in the process 29.
Steps 32, 33, 34 and 35 are repeated for the workstation 4(b) and the end result is that the memory map 5(b) has stored variable data which has been received from the workstation 4(b).
At this stage in the process 29, two sets. of variable data are stored in separate memory maps 5(a) and 5(b) of the memory circuit 5. This data has been inputted under conditions which simulate the physical filling in of forms and thus, there is little chance that errors have been made. In addition, the steps 35 of the controller 2 writing the data to the relevant map in the memory circuit 5 involves carrying out in-line verification operations to check for errors in format of the data.
In step 38, the controller 2 begins the process of resolution of the data in the memory circuit 5. Resolution of the data involves comparison of the two sets of data, which two sets should be identical. Thus, if one user has made an error in inputting data, it is highly unlikely that the second user will have made the very same error, the second user working from the same documentation. In the first pass 38 of the resolution process, the controller 2 compares size and content of each of the data fields in sequence. In the second resolution pass 39, the controller 2 carries out a higher level of verification operations by reference to a knowledge database stored in a disk 3. The knowledge database stores a relatively high level of information and it will ensure that a large number of errors have not been made.A simple example in the field of clinical pharmacology is that the second pass ensures that all male patients not have data inputted relating to pregnancy tests. Steps 40 involves the controller automatically logging any differences which are detected and carrying out a statistical analysis of all of the errors. This data is written to a log file in a disk 3 in step 40.
The controller then interactively communicates with the relevant workstations and prompts input of corrected-data where necessary and repeats the resolution steps 38 and 39 until the contents of the two memory maps are identical.
At this stage the controller 2 writes the data from one of the memory maps to the relevant database structure. This write operation may be carried out very efficiently because the database structure has been automatically generated from the simulation data, and the order of the variable data received and stored in the memory map is also consistent with it and in the same format as the simulation data. This consistency throughout the initialisation, inputting and updating steps helps to ensure that the controller 2 operates with a high degree of efficiency and provides fast response times. This is particularly important where there are a number of data collection projects being handled by the one database controller 2 in communication with more than two workstations 4. It will be appreciated that the resolution operations, the in-line verification operations and the manner in which the controller 2 automatically communicates with two different workstations for inputting of data to separate memory maps help to ensure that data integrity is maintained.
The invention is not limited to the embodiments hereinbefore described, but may be varied in construction and detail.
Claims (4)
1. A method of receiving and storing data to ensure
that integrity, the method being carried out by a
database controller connected to a bank of fixed
disks, to a local area network to which are
connected a plurality of workstations, to a
memory circuit and to a document simulator, the
method comprising an initialisation process, a
data inputting process, and a database update
process, wherein:
the initialisation process comprises the steps
of::
the document simulator in communication with
the database controller initially carrying
out document simulation operations,
identifying data input fields - and
automatically generating a database structure
in the fixed disks for storage of data
received for the data fields;
the database controller identifying at least
two workstations associated with the
database, generating a security code which
applies to the database and to the
workstation and automatically transmitting
the document simulation screen data to each
identified workstation;
the database controller generating a memory
map in the memory circuit, there being one
memory map associated with each workstation;;
and
the database controller selecting from a
fixed disk a set of verification commands for
use in verifying data format and storing said
commands in a different portion of a fixed
disk, the data inputting process comprises the steps of:
the database controller verifying user
authorisations for the workstations by
reference to the storage security code;
an authorised work station displaying a
document simulation screen, receiving data
and automatically transmitting the received
data to the database controller;
the database controller automatically
verifying format of the received data by
reference to the stored verification commands
and writing the verified data to the
associated memory map in the memory circuit;;
a second workstation which has been
authorised displaying the document simulation
data receiving data and automatically
transmitting the data to the database
controllers; and
a database controller automatically verifying
format of the received set of data and
writing it to the second memory map in the
memory circuit, and the updating process comprises the steps of:
the database controller automatically
carrying out resolution operations between
data in the two memory maps;
the database controller generating a log of
any detected errors; and
the database controller storing verified data
in the database structure of the fixed disk
drive.
2. A method as claimed in claim 1, comprising the
further step of automatically recording all data
entry operations at each workstation to generate
a data entry history file during the data
inputting process.
3. A method as claimed in claims 1 or 2 wherein the
resolution operation comprises:
carrying out a sequence of low-level
verification operations by testing field
lengths and nature of the data; and
carrying out a sequence of higher-level
verification operations by reference to a
knowledge database relating to the nature of
the data.
4. A method substantially as hereinbefore described,
with reference to the and as illustrated in the
accompanying drawings.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9226771A GB2273799B (en) | 1992-12-23 | 1992-12-23 | Processes for ensuring data integrity |
BE9201162A BE1005188A6 (en) | 1992-12-23 | 1992-12-29 | Procedures to ensure the safety of data. |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9226771A GB2273799B (en) | 1992-12-23 | 1992-12-23 | Processes for ensuring data integrity |
BE9201162A BE1005188A6 (en) | 1992-12-23 | 1992-12-29 | Procedures to ensure the safety of data. |
Publications (3)
Publication Number | Publication Date |
---|---|
GB9226771D0 GB9226771D0 (en) | 1993-02-17 |
GB2273799A true GB2273799A (en) | 1994-06-29 |
GB2273799B GB2273799B (en) | 1996-11-27 |
Family
ID=25662686
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB9226771A Expired - Lifetime GB2273799B (en) | 1992-12-23 | 1992-12-23 | Processes for ensuring data integrity |
Country Status (2)
Country | Link |
---|---|
BE (1) | BE1005188A6 (en) |
GB (1) | GB2273799B (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2349718A (en) * | 1999-05-07 | 2000-11-08 | Quality Systems & Software Ltd | Producing systems engineering models |
US7885825B2 (en) | 2006-09-19 | 2011-02-08 | Shelbourne Data Management Limited | Data management system and method |
-
1992
- 1992-12-23 GB GB9226771A patent/GB2273799B/en not_active Expired - Lifetime
- 1992-12-29 BE BE9201162A patent/BE1005188A6/en not_active IP Right Cessation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2349718A (en) * | 1999-05-07 | 2000-11-08 | Quality Systems & Software Ltd | Producing systems engineering models |
US7885825B2 (en) | 2006-09-19 | 2011-02-08 | Shelbourne Data Management Limited | Data management system and method |
Also Published As
Publication number | Publication date |
---|---|
GB2273799B (en) | 1996-11-27 |
BE1005188A6 (en) | 1993-05-18 |
GB9226771D0 (en) | 1993-02-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5347518A (en) | Method of automating a build verification process | |
US5022028A (en) | Software verification apparatus | |
CA2077975C (en) | System and method for computer aided software engineering | |
US6212600B1 (en) | Method and apparatus for sanitization of fixed storage devices | |
US5642504A (en) | Method of testing an application on a server which accesses a database | |
US6678706B1 (en) | Hypertext marker and method for dynamically displaying help information in an interactive data processing system | |
EP1238337B1 (en) | System and method for printer output regression testing using display lists | |
EP0762301A2 (en) | System and method for accurate and efficient geodetic database retrieval | |
EP0632377A1 (en) | Method for testing a message-driven operating system | |
US6957366B1 (en) | System and method for an interactive web-based data catalog for tracking software bugs | |
US7992046B2 (en) | Test system with simulation control device for testing functions of electronic devices | |
US9230450B1 (en) | Systems and methods for distributed adaptive simulator training | |
CN110413522A (en) | A kind of determination method, apparatus, storage medium and the electronic equipment of test database | |
GB2273799A (en) | Ensuring data integrity of input data | |
US20060129781A1 (en) | Offline configuration simulator | |
US7017150B2 (en) | Method and apparatus for automatically isolating minimal distinguishing stimuli in design verification and software development | |
US6845478B2 (en) | Method and apparatus for collecting and displaying bit-fail-map information | |
IE922922A1 (en) | Processes for ensuring data integrity | |
CN105653445A (en) | Implementation method capable of meeting DO-178C test result | |
JP3022326B2 (en) | File change history management system | |
US20080001959A1 (en) | System, Method and Computer Program Product for Performing Information Transfer Using a Virtual Operator | |
Towne et al. | Generalized maintenance trainer simulator: Development of hardware and software | |
Washburn | TMACS test procedure TP012: Panalarm software bridge | |
CN117555786A (en) | Method and device for testing target function and computer readable storage medium | |
JP2906413B2 (en) | Image processing apparatus and font file management method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
732E | Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977) |
Free format text: REGISTERED BETWEEN 20110922 AND 20110928 |
|
PE20 | Patent expired after termination of 20 years |
Expiry date: 20121222 |