GB2273799A - Ensuring data integrity of input data - Google Patents

Ensuring data integrity of input data Download PDF

Info

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
Application number
GB9226771A
Other versions
GB2273799B (en
GB9226771D0 (en
Inventor
John Climax
Ronan Lambe
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHELBOURNE
Original Assignee
SHELBOURNE
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SHELBOURNE filed Critical SHELBOURNE
Priority to GB9226771A priority Critical patent/GB2273799B/en
Priority to BE9201162A priority patent/BE1005188A6/en
Publication of GB9226771D0 publication Critical patent/GB9226771D0/en
Publication of GB2273799A publication Critical patent/GB2273799A/en
Application granted granted Critical
Publication of GB2273799B publication Critical patent/GB2273799B/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1608Error detection by comparing the output signals of redundant hardware
    • G06F11/1616Error detection by comparing the output signals of redundant hardware where the redundant component is an I/O device or an adapter therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording 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/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data 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)

CLAIMS.
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.
GB9226771A 1992-12-23 1992-12-23 Processes for ensuring data integrity Expired - Lifetime GB2273799B (en)

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)

* Cited by examiner, † Cited by third party
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

Cited By (2)

* Cited by examiner, † Cited by third party
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