A FRAMEWORK FOR DEVELOPING
WEB BASED INFORMATION SYSTEMS


By
C. M. MARAN
Faculty - Department of Management Studies
TKM Institute of Management
Karuvelil(PO), Kollam-691505 ,Kerala
Tel: 04742482465, 2482466
E-mail:
cmaran78@yahoo.com / cmaran1978@rediffmail.com
 


Abstract : In this paper the frame work to build web based information system is presented. The frame work is based on set of rules that define general data storage model independent of underlying database management system. A set of high level data types, customized and optimized for usage in WWW environment, is defined in the data storage model. The benefits of using this proposed framework are independent design and content management, multilingual support, independence from database management system  and automatic support for multimedia information. The proposal of this frame work is based on RDBMS and has ActiveX Object Oriented programming interface.

Keywords : Information system, Data Storage, Application Programming Interface, Application layer.

1 Introduction

Web based information system for a city enables the target information about business, tourist, medical, educational, cultural, sport etc . Implementation of this type of Information system is very complex, so a framework is proposed, which is based on set of rules that define general database model independent of underlying database management system. A set of high-level data types is defined in general database model to simplify development of web based information systems.

A brief description of requirements for a city information system. Implementation of the city information system is described in section 3 and the conclusions are given in section 4.

2 Goals and Requirements

The main goal of the project is to collect information usable for population of a City, for potential tourists and for business persons in a city. The version of the information system has more information because the local language is also published on teletext, on cable TV and on INFO terminals. The information is divided into static which is not changed frequently(city guides, on line maps) and dynamic which is changed daily (events, sports results , business indexes , news etc)

For static documents such as tourist guides and virtual tour of the city were developed by HTML documents. Information for dynamic documents is gathered from different sources ( for ex : TV and radio stations and other daily news to the information server). some information is collected from other information systems (government servers, municipality servers etc) . Information in the information system is divided into more than number of entities and it is exported to other information systems.

 Each entity has a corresponding class a definition of structure and behavior. The structure of the class (for ex: a class describing a hotel) is described with attributes and the context of these attributes is divided into five categories.

* Required data (address, telephone numbers, name of object etc.)
* Specifically required data (category of hotel, number of rooms etc.)
* Descriptive data (swimming pool, casino, shop, travel agency)
* Statistical data (number of occupied rooms for defined day, months or year, citizenship of tourists etc.) and
* Detailed description, which is paid by hotel.

To build an efficient and flexible information system, the following requirements are to be fulfilled.

Extensibility : It has to possible to add new classes or to changes the structure and behavior of existing at run-time, without the need to change the application

Cross-references : It has to be possible to define references between objects of different classes (for example a class describing a hotel consists of entity for description of building, entity for description of their accommodation offer, entity for description of their recreation offer, entity for description of their restaurant offer, entity for their offer of events etc.)

Structure inheritance : New classes could be derived out of existing classes. New class would inherit the structure and behavior of the super class, but new attributes and different behavior could be applied to them.

Portability and scalability : The information system should be independent of the data management system. The data management system should be plugable, so it would be possible to scale the performance of the information system, simply by changing the DBMS.

Dynamic layout and design : Because the information published in different media, it should be possible to create customized documents for each type of media.

Filters : Attributes of the classes have different levels of importance :, internal, local, regional and international. When attribute is defined the level of importance is selected. The level of importance is taken into consideration when the replication of data between databases is performed.

Multiple charset support : Because WWW is not based on a common, well defined charset standard, it should be possible to produce documents with different charsets.

Definition of authorization for changing data, adding attributes in entities and adding entities to database.

Multilingual support : Information gathered in the information system should be available in many languages. While some information is of local interest only and can be available only in local language, there is information of broad interest and it should be available in different international languages.

Control over information : Data in the information system should be automatically checked for expiration and removed from the information system. Changes of the data should also be detected and reported.

Import and export interfaces : It should be possible to define data transfer interfaces between this information system and other information systems.

The information system is open and can be connected with other systems like hotel and ticket reservations (3), virtual stores, on line selling of used cars and on line selling of real estate.

3. Implementation of the Information System

In the first implementation of the information system (2), the MHTML language has been used. MHTML scripts are processed server-side and results of their execution are HTML documents. Main features enabled administrators to create efficient outlook of information system, querying through database and maintenance of information. Part of the MHTML system is the specialized database management system. DBMS supports different types and has fixed record length, which is used to speed up the database operations. It has two level indexes to improve search performance.


However, the first implementation of the information system had some drawbacks :

* Searching through the database has been very slow.
* creating static HTML documents from the database.
* It has been very hard to change the outlook of information system without detailed knowledge on MHTML language.
* It is impossible to have different designs of the same information system (we need three types of designs for WWW, separate design for info terminals)
* Only administrator can change the design.
* Translation of documents to different char sets is done off line.

Meanwhile new technologies have emerged and the implementation of the information system.

The information system is divided into three layers : data layer, abstraction layer and application layer. The data layer represents the data storage, where all the information is gathered and stored. The abstraction layer is an object-oriented application-programming interface, which is used for accessing and manipulation of the data storage. The application layer connects with data storage through abstraction layer to perform functions of the information system.

3.1 Data Storage

The data storage has been designed to meet the requirements of the information system. It can be implemented with any DBMS, but this implementation is based on ODBC-compliant RDBMS. This gave us the possibility to optimize the price/performance ratio in different situations. We use MS SQL Server 6.5 database to run data storage on central data servers and MS Access database to run local data storage on workstations. Regardless of the actual RDBMS, the data storage always supports these features.

* Dynamic data dictionary : New classes can be dined at run-time and are immediately available in the system.

* Structure inheritance : New classes can only be derived out of existing entities and they inherit their structure. The classes (elements of the data dictionary) are organized in a tree-like structure with respect to the class/subclass relations between them.

* Multilingual support : The data storage can maintain many versions of the data in different languages. Through abstraction layer, it is possible to transparently switch between available languages.

* Cross-references : Cross-references between objects are part of the class definition. One or more attributes of the referencing class define lookups to other classes ( for example : class describing the hotel, could have a lookup attribute to class describing the restaurant). Users can select one or more objects of the lookup class and associate them with the object of the referencing class.

The data storage is responsible only for basic data management ; all other functions are defined and implemented in abstraction layer.

Data objects are store in the database in an implementation independent format based on XML. XML has the significant advantage of being both language and platform independent and two major downsides : the size of the representation and time needed to parse the data.

3.2 Application Programming Interface

Data Storage Application Programming Interface (DSAPI) is set of COM interface designed to access objects in the database. In the manner of multi-tiered system, the DS API has bee designed to simplify manipulation of objects in the data storage and to protect the top layer from design details of the data storage. If design of the data storage should be modified, only the implementation of the DSAPI would have to be adapted. With DS API, it is possible to access and manipulate the data storage in a uniform way, regardless of the actual implementations of the data storage and the DSAPI. Current implementation of the DSAPI uses ODBC to communicate with the data storage. This is very important from the perspective of the scalability of the system. It is possible to scale the performance of the system, simply by choosing a different RDBMS, without changing the DSAPI. If that would not be enough, then we could still provide an alternative implementation of the DSAPI, possibly using native DB library and thus eliminating ODBC. In both case, the application layer would continue to work without changes.

All implementations of the DSAPI have to support these functions.

* Connection Management : Before any other operations on the data storage are issued, a connection with the data storage must be established. Once the connection is established, all actions issued through that connection are executed in its context.

* Control over data dictionary : Some of the DSAPI objects are intended to control and manipulate the data dictionary. With these objects, it is possible to inspect the class-tree or structure of the classes. It is also possible to create new entities or delete existing ones. The DS API guarantee that consistency of the data storage is preserved across these operations.

* Insertion, updates and retrieval of data objects : These operations are essential to the information system. It is possible to retrieve all object of selected class, but it is also possible to limit the number of retrieved objects by specifying the constraints.

This implementation of the DS API is developed for Microsoft Windows platform and makes heavy use of technologies like COM/Active X. Microsoft Transaction Server and Active Server Pages. COM is used to design and implement DS API. The DS API components are exploiting the transaction support and object management services of Microsoft Transaction Server runtime environment.

3.3 Application Layer

The application layer of the city information system divided in two applications. The first is a Win desktop application running on workstations and the second is a web application developed with Microsoft's Active Server Pages technology. They both use same implementation of the DS API to connect with the data storage. The primary purpose of the Win application is to enter and edit data in the information system, while the web application is focused on searching for the data the information system.

Each workstation has its own installation of the data storage and the data is replicated between the workstations and the central data servers on the daily basis. The data storage installed on the workstations does not contain the whole structure of the information system, but only the entities that are of interest for the office, where the workstation is installed.

The objects that have expired are removed from the information system once per day, just before the replication process. Some objects are not removed, but are only marked unavailable, as they will become interesting after a certain period (like traditional events etc.)

Whenever a new class is added to the data dictionary, web application uses generic scripts to perform operations upon objects of this class. With built-in customization system, it is possible to customize these scripts for selected classes. For customized classes, the references to generic scripts are replaced with references on customized scripts. Creation of new classes and customization are responsibilities of the system administrator.

3.4 Components of a Web based Information System

We use a web browser on our client PC to connect with a Web Network Server. This server runs web server software to access and transfer the web pages we request. The website uses a hyper media data base consisting of HTML (Hyper Text Markup Language) pages, GIF (Graphic Images Files) files and Video files. The web server software acts as a Database Management System to manage the use of the Inter Related Hyper Media Pages of the Website.


The framework aims to speed up and simplify the implementation of information systems oriented towards data gathering and presentation. With the framework, a more generic view on the data is possible and the changes on the data storage do not cause the changes in the application. Because every part of the framework is well specified, it is possible to provide different implementations of each part of the framework ( the data storage and the API). This is leading to a better scalability and good control over price/performance ratio.

References:

1. How to build an efficient City Information System, Advanced in Information Technologies : the business challenge, Jean-Yves Roger, Brian Stanford-Smith, Paul T Kidd, IOS Press.
2. Management Information Systems, Managing Information Technology in the Internet worked Enterprise, James A O Brien, McGraw Hill 4th edn.
3. Management Information Systems, CSV. Moorthy, Himalaya Publications, Millennium edn.
4. Management Information Systems, Laudon and Laudon, MCGraw Hill, 9th edn.
 


C. M. MARAN
Faculty / Department of Management Studies
TKM Institute of Management
Karuvelil(PO), Kollam-691505 ,Kerala
Tel: 04742482465, 2482466
E-mail:
cmaran78@yahoo.com / cmaran1978@rediffmail.com
 

Source : E-mail December 15, 2004

 

B A C K

 

Important Note :
Site Best Viewed in Internet
Explorer in 1024x768 pixels
Browser text size: Medium