Öğrenci işleri otomasyonu - Kazaz, Hakan (Fen Bilimleri Enstitüsü, 1993)
Bu çalışmada î.T.ü. fakülteleri öğrenci işleri bürolarında kullanılmak üzere, öğrenci kaydı ve durumunun izlenmesi amacıyla bir öğrenci işleri Otomasyonu tasarlanıp gerçeklenmiştir. Konu ele alınırken, hazırlanacak otomasyonun (tezde otomasyon kelimesi öğrenci işleri otomasyonu deyimi yerine kullanılmıştır) halen bazı öğrenci bürolarında kullanılan kayıt programı ve veritabanı ile uyumlu olması istenmiştir. Bir veritabanında (DB) veri kümelerini ile birlikte aralarındaki ilişkiler de saklanır. Genel olarak bu veriler kalıcı, güncel ve paylaşılır olabilirken bulundukları sistemin yapısına göre bu sıfatların anlamı değişebilir veya bazılarından yoksun kalabilirler. Bir veritabanı sistemi, veritabanı (DB) ve üzerinde çalışan yönetici yazılımdan (VTYS-DBMS) oluşan bir sistemdir. Otomasyonda tasarlanan veritabanı dosyalar kümesinden meydana gelmektedir. Bu küme otomasyonun temel ve destek dosyalarından oluşmaktadır. Otomasyonda veri dosyalarına erişim performansını arttırmak amacıyla yaygın bir yöntem olan B+ Ağacı indeksleme yöntemi kullanılmıştır. Otomasyon kendi içinde süreçlere ayrılmıştır. Her süreci yöneten bir veya birden fazla program bulunmakla beraber, bazı programlar da birden fazla sürece hizmet vermektedir. Bu özellik veritabanı dosyaları için de geçerlidir. Böyle bir organizasyonun nedeni, daha önce yapılan bazı çalışmaların yeniden organize edilerek- otomasyona katılımını sağlamaktır. Geliştirilen otomasyonunda aşağıdaki fonksiyonlar gerçeklenmiştir: öğrenci özlük bilgilerinin saklanması ve rektörlükteki merkezi bilgisayarda SQL/DS ortamına aktarımı için bir arabirim dosyasının oluşturulması, - Yarıyıl öğrenci kayıtlarının yapılması, - öğrenci kartonlarının hazırlanması ve izlenmesi ve - Raporlamalar.

In this study, a database and an application were designed and implemented on the personal computing environment for handling the student oriented services including basic functions of the faculty students of ITU such as education tracking. While constructing these applications, previous studies and some professional applications packages including Turbo Turbo Professional from Turbo Power and Borland's Turbo Pascal Compiler and Turbo Access Database toolbox have been used. All of the programs were written in Borland's Turbo Pascal Compiler. The minimal configuration required to run these applications is an IBM PC/AT compatible computer running the MSDOS 4.0 or higher version operating system. A Database System A database is a set of stored data or more precisely, stored information which is interrelated. The basic interrelated information set is the stored record. A database inlcudes data that not only the real values needed by the users, but also that some special values which the database uses for management and control. Information is the data which has meaning for the users i.e. end users or application programs. The basic properties of the information in a database are: - persistency, vii - updat ability and - sharability. Database Models A database model is required to represent the entire physical database itself. Nowadays there are several database models which are used in database systems. The primary task of the models is to organize the database and to provide an environment for accessing data. The most widely known database models are: - The Hierarchical Model, - The Network Model and - The Relational Model. Some additional models such as The Fuzzy Relational model and The Object-Oriented model have been developed. In a database on the hierarchical model, data is accessed in tree structures. There is a parent-child type relationship among the data. Users can access the information by scanning the data on the branch of the trees. The data is stored in a node or a segment of the tree and no data can be accessed until a path on data is defined. All related records are linked together unidirectional ly within the scope of the hierarchy. The linking can be done by using pointers. In a tree, the top of the record is the physical record itself and the others are virtual records which are pointed by the records -that physical or virtual- from the upper levels. For this reason although the record accessing speed is very high, the insertion and the deletion functions are comlez and slow. Only experienced users can use this kind of database. IMS (Information Management System) is a hierarchical model database system. vxxi The network model is the generalized version of the hierarchical model. Any two nodes can be linked together with one or more links. There are links in both directions between the segments. As a result more complex structure must be defined and more operations are needed for accessing data. This also requires experienced and skilled personnel for managing the database. It is clear that the insertion and the deletion functions are more complex than the others and the record accessing performance is low. IDMS (Integrated Database Managenemt System) is a network model database system. The ralational model uses the properties of the relational algebra in the database management. All the files in a database correspond to tables in a relational model database. The whole system information is also stored in table structures. Every table defines a relation and consists of columns (fields). Each row (record) in a table corresponds to a tuple in the relational algebra. The well-defined relational algebra operations such as select, product, union, set difference and «join, are used for managing tables. Users can access to the information only by querying with the columns which are specific to the tables. The relational model database system provides an interactive user environment for the terminal users. Non professional users can access the database using only a few easy commands. DB2 and SQL (Structured Query Language) are the most known relational database systems. The following figure illustrates a table in relational database as it can be seen by the users: Rows, tuples. A table, a n-ary relation Figure 1. A table view on Relational Database. ix The object-oriented model uses the concepts of abstract data, encapsulation and object inherintence for the handling the data. It is one of the newest models and it is often used in intelligent database systems. In this model, objects are clssified into various files such as the data file and the message file. The operations which had been defined affect the objects. The fuzzy relational model uses the fuzzy set theory and related concepts in database systems. Predefined membership functions provide the user accessing data with fuzzy queries. Database Architecture According to the ANSI/SPARC standart, a database architecture can be examined into three different levels: The External (logical) Level, The Conceptual Level and The Internal (physical) Level. Each level's view is defined by that level's schema and each schema consists of definitions of the different types of its database records. These records are defined by that level's DDL (Data Definition Language). The Insertion and the deletion operations is managed by that level's DML (Database Manipulation Language) and each data is queried by using that level's DQL (Database Query Language). All data definitions are compiled and stored to the Data Dictionary (DD). Most of the database systems provide a DDL at the external level for embedded use. The external level is the individual user* level. It is the level which is closest to the users. It has an abstract view of the conceptual level database. Different users can have different views. Each user may access any subset of the total database. At the conceptual level, there is an abstract view of the total database. It represents all the information in the database, and for every user it is shared and common. Conceptual DDL definitions are not interested in the storage structure and the access details. There must be only the definitions of content of the information. Thus the data- independence can be provided. The Internal level is the one closest to the data which physically stored. End User 1 End User 2 Appl. Program The External Level Abstract represent, of the total DB The External/ Conceptual Mappings The Conceptual Level The Conceptual/ Internal Mapping The Stored Database The Internal Level Figure 2. ANSI/SPARC's three level database architecture, The internal level is concerned with the way the data is actually stored i.e. it is concerned with the techniques for achieving the maximum performance to access the database records (minimum disk access). Several techniques have been used to minimize the disk access time. Some most important techniques are clustering, hashing and indexing. By doing clustering, logically related records are stored physically adjacently. Thus accessing a record after another that logically related will require less time relatively. xi Hashing is a translation from a field -hashed field- to a record address. It provides fast direct access to the data file. This translation is managed by a function called The Hash Function. The Input of the hash function is the primary key of a file which will be hashed and output is the record address which the key is related. It is obvious that for every key value there must be a different output. But in practice that is not possible and collisions were detected and overflow areas are used to solve this problem. The indexing method is useful for both searching and and accessing a data file with minimum disk I/O. Moreover, a data file can have several index files but only one hash file and the indexing method lets the users search the data file sequent ialy but the hashing does not. A particularly common and important way of indexing can be made by using the B-Tree method. Nowadays, most of the database systems use the B-Tree (or B+Tree) method to access their data file records with the minimum disk I/O. The B+ tree structure consists of the dense and the nondense indexes. The dense index is an index which there is an one to one correspondence between the entries of the index file and entries of the indexed file. In the nondense index, there is no one to one correspondance and only the specific keys of the data file records are indexed by the index file. If the ordered entries of the dense index file are grouped, then it can be -again- indexed with a nondense index file. The maximum number of entries of a B+ Tree segment describes the order of the B-Tree. A B+ Tree of order of M is a tree that satisfies the following contraints: xxi - Excluding root, all pages have at least M entries. Each page has at least 2 and atmost 2*M items, Either a page is a leaf with no active node reference or it has one page reference for each entry in the segment plus one and All leaf nodes must be on the same level, If a data file with N records is indexed with a B+ tree order of M, then at most order of LOG ( N ) /LOG ( M ) disk I/O will be required to access any record in the data file. Designed and Implemented Application This thesis is intended to design and implement a student service application package to be used in the student service offices of the faculties of ITU. This package will be used for keeping the faculties' student information and tracking their successes and graduations primaly. Since the package is required to be compatible with the programs and the database implemented before such as student record keeping system, the package has been developed on some particular definitions and rules. Thus the package's programs has been written on the Turbo Pascal language and the database has been created on the B+ Tree indexing technique. Also this technique gives better access performance on the PC enviroment than the others. In the package the consist of several programs. The most important ones are: CLASS, ENTEGRE and NOT. All these ones, particularly the CLASS. PAS program, uses several units. These units are classified into 4 category: The video tools written by Turbo Power Software Co: Tpcrt, Tpdos, Tppick, Tpwindow, Tpmenu, Tpentry, Tpstring, Tpmemchk, Opkey. xiii The definition, the creation and the accessing to the database files units are Types2, Karraccs2 (this unit is same as TACCESS unit of the Borland's but only its units and some definition files that the unit uses are different). Support units that supports the main units: Destekl, Destek2 and Destek31. Main units : Classeri, Class31, Class2, Classll, Classrll, Classsta, Classozl and Classdul. Also, the package consist of logical processes. The first one is the 'Karton' process which is used to track the students' successes and to control the graduation. Infact the whole package is centered to this process. Preparation for recording student process is required to able to record the studendts information, Record process records the students to the lessons in each term and Mark manipulation process. Some of these processes use more than one program in the package. Yet, some programs serve more than one process. The DBMS facilities is distributed to these programs. The DBMS interfaces in the package do not look like the database models that mentioned before. In fact they are the custom interfaces and can not be used for general queries, only the specific queries can be made. The basic functions of the DBMS are the creation and the deletion of the files in the database sys.tem and insertion, the changing and the deletion of the records in a database file. As stated before all most accessable xiv files are accessed by using B+Tree indexing technique. Conclusion In this study the following functions were developed by using Turbo Pascal v5.5 compiler, some extended video tools and B+Tree database utility tools. All these elements and custom database queries make the package faster than any Database Management packages written for general use. But since the poor computing environment (IBM PC hardware with 640 KB main memory and particularly MSDOS operating system) leave the resposibilities of the security, the sharablity and the extendibility of the database to the application programmer. In the package the following functions are supported: Keeping the faculty students' family information, Students registration to a faculty, Tracking and keeping all of the students' education, Reports. While developing the package it is required to be compatible with the programs and the student record keeping system mad before. For this reason, the package has been developed on some particular definitions and rules. These programs referenced by the other programs because of the 'compatibility' problem in the package. This limitation can be overcame by reanalyzing the system, understanding the customer's (office staff) requests, restructuring the database -particularly- by using an database management system. It is recommended that this kind of applications must be developed on more reliable and multi-user operating and database management systems and central control must be provided.
Design and implementation of a student service application an personal computers
Tez (Yüksek Lisans) -- İstanbul Teknik Üniversitesi, Fen Bilimleri Enstitüsü, 1993
Keywords: Bilgisayar ve Kontrol; Otomasyon; Öğrenci işleri; Computer Science and Control; Otomasyon; Automation; Student affairs