AN OVERVIEW AND GENERAL PHILOSOPHY OF THE SCI COMPUTER SOFTWARE

An SCI computer System consists of a set of from one to many computers intending to share information and access to data files among this SCIOS community. A large number of programs and data files are installed within this hardware. It is these items, called software, which give the computer its purpose. All of these parts, taken together constitute a computer system in the true sense of the word; it is an admixture of computer hardware and software which handles quickly and conveniently the tasks which one normally encounters in business, governmental, and scientific data processing applications. The function of the system is to perform all manipulations and modifications upon a group of User generated files.

SCIOS was designed, written and implemented by John H. Letcher , Professor of Computer Science of the University of Tulsa and President of Synergistic Consultants Incorporated.

Categories of Computers in the Use of SCIOS

Computers employing the Synergistic Consultants Incorporated Operating System, SCIOS fall into two categories:

1. SCIOS clients, computers equipped with a Web browser such as Netscape 4.7.9, Internet Explorer 5.5, or a variety of other available browsers. These computers access SCIOS through a TCP/IP link to a computer that is an SCIOS server. This type of computer has no SCIOS systems software, per se, installed locally. No client need install any information about SCIOS, except the URL to find the server computer.

2. SCIOS servers, computers upon which SCIOS Systems software has been installed. Also, these are the computer onto which the user has installed the user Procedure software. Further, all data files reside here. For the server software to service remote terminals, TCP/IP must be active and IIS (or its equivalent) must be running, otherwise all of the SCIOS Systems software is available locally, only. When a server is configured to service remote requests, the server may still use all of the SCIOS software locally. The remote access may be through a local area network (intranet) or across a link to an Internet Service Provider(ISP) to allow clients to access from all over the World. Details of these topics are given elsewhere.

Procedure Software and System Software

All software within a computer system can be divided into two categories called Systems software and Procedure software.

The Procedure software is normally generated by the User after the machine is delivered. The User can direct the computer to execute a Procedure program, a set of instructions written in a simple, closed language which carries on most of the tasks of data movement and arithmetic. The language used is called Chaprola.

The System softwareis usually supplied, complete, by a vendor. Except for the Procedure software described above, all of the operations of the computer are accomplished through this large and complicated set of computer programs called the Systems software. These will not be discussed at this time because it it not the intent of this section to describe what programs are required on the systems level to make the computer work. Rather, the present purpose is to describe from the Users point of view how his part of the system works and how he may it use with facility.

Files

All software resides in the system as a set of files. A file is defined as an aggregate of information that is handled as a single entity. Multiple files may have the same structure. Usually, however, files are different enough in content and purpose to warrant a different structure. User files are broken into seven categories based on their intended use by the computer system. These types of files are called Text, Chaprola Source, Format, Display, Data, Procedure, Batch and Sort Key. Before the meaning of each type of file is described it would be instructive to discuss those attributes common to all files.

Each file has an attribute which is its length, expressed in characters (bytes). Files of as many different lengths as one wishes may be stored as long as the total capacity of the storage device is not exceeded. The allocation of storage (the precise location where each byte is stored) is solely the responsibility of the Systems programs and is of no concern to the User, whatsoever.

All Data files can be visualized as a sequence of data records, one after the other. Furthermore, each record can be visualized as a sequence of contiguous attributes (some people also call these fields), those data elements which are to be held for future use by the computer and to which access can be gained for inspection or modification. The record is characterized itself by a record length and it is assumed that each data record within a single file is laid out attribute after attribute in precisely the same manner. This file structure can be called "flat" for "Fixed Length Ascii Text". The file may not be actually stored on the disk in this manner, but this is of no concern, whatsoever, to the SCIOS user.

Any file on a disk can be visualized as a contiguous stream of characters. On the disk every file has attributes which are the beginning and an end called BOI and EOI for beginning of information and end of information, respectively. The operating system of the computer is sophisticated enough to allow a file to be read starting at any one of the characters within a data record. Furthermore, characters on the disk may be changed without altering the characters on either side of the ones changed. This procedure is known as "writing in place".

Data files are used on both the Procedure level and the System level.

Data files in SCIOS are self-defining to the operating system programs through the use of Format files. These make the data files palatable for consumption by the System programs to produce reports, perform retrievals, insert information, etc.

The Format file consists of a list of all of the attributes contained within a data record and consists of a sequence of lines, the number of which equals the number of attributes held in a data record. In these lines is given those pieces of information required to uniquely specify the layout of the data record to the computer. The attributes within a given record are numbered starting with the number one up to as many as it takes to satisfy the functional requirements for the particular Data file (2047 maximum). One of the System programs, Mercury, reads the Format file to determine how best to retrieve information from the Data file to which this Format file refers. See the separate document on Mercury. In other words, the SCIOS Systems programs calculate how best to access information in the file at the time that the data file is opened.

The Format File consists of a list of all of the attributes or data data elements which are to be contained within a data record. For those readers knowledgable in the higher level language COBOL, the Format file is only slightly different from the Data Divisions of all of the programs known to the system. The Format files are fixed format 80 character records, which contain such information as the attribute number, linkage number (in the Mercury sense), attribute names, its format i.e. how many character locations it is to occupy in the data record, and what type of field it is: A (for alphanumeric), I (for integer), F (floating point, a real number with a decimal point), and E (for the scientific exponential notation. Spaces are allowed for the programmer to insert the character and line number where that attribute is to be displayed when the data files to which this refers is loaded as a primary data record within one of the SCI real time entry systems programs. A more complete discussion of the construction of a Format file is given within the body of a companion document.

Needless to say, the design and building of Format files embodies essentially all of the data base design work which is to be done associated with the SCI system with the exception of two types of procedure level programs which can be written. These are the two program instruction files which must be specified by the User and entered directly into the machine. The system is sufficient at this point to allow the User to generate all datafiles directly by direct entry onto disk through the use of Systems programs.

It is possible for the user to generate a Format file by creating a Text file, a file containing a picture of the way the user would like to present the contents of a data record to the user using one of the entry programs. So, the generation of a Text file is the equivalent for the generation of a Format file.

The User can supply a Text file to the system if he is to be doing direct entry using one of the entry programs. This file dictates where on the face of the screen each attribute is displayed. For ease of reading and for additional fixed information to be held on the face of the display, capabilties of adding fixed text have been implemented. Furthermore, the ability to use lines as borders and elements of demarcation within the screen is also provided. This is very simply generated by offering to the computer a Text file containing the number of lines that the display screen can hold. These lines contain the fixed text as it is to appear on the screen during data entry.

These files are not difficult to design or implement. We simply caution the User that sufficient thought should go into the design of the first of the two files because these uniquely determine the organization of the files themselves and the design of the second file determines the ease with which information can be viewed and data entry performed. The SCIOS text editor program, Sciedit, described elsewhere, is ideal for entering and modifying Text files and making modifications to Format files. The real time entry programs such as Scientry and CGIentry have the capability of allowing the User to enter Format and Text files directly.

In order to take full advantage of the real time system, it is essential to carry on tasks other than insertion of new data and modification of existing data in Data files, i.e. arithmetic must be carried out to check, extract or replace information. Some of these tasks are accomplished by Procedure programs written in a straightforward English-like language, CHAPROLA, which is described elsewhere. The statements written in this language are inserted into a file called a Source file.

Chaprola Source Files

A Chaprola Source file contains commands in source form (i.e. as the User wrote them). The commands are written in the Chaprola language. This language was designed by SCI and was specifically intended to be easy to use by individuals with little or no computer experience. This language is used without any change whatsoever by every SCI program on any any computer upon which SCIOS Systems Software is installed.

The conversion of the appropriate Text file to the corresponding Display file is accomplished through the use of the System programs, e.g., Dispprep. This program creates a file called the Display file which is asked for by all of the formatted screen entry programs at the same time a Data file name is requested. The Display file contains enough information to paint the desired form onto the CRT and to offer to the real time entry program all that it needs to know to access, read, write, modify, and do arithmetic on the contents of a Data file.

The Source file is converted by a compiler into another file, the Procedure file, which is executed by a number of System programs to carry out the data processing tasks of the System.