: Designing an Intelligent Visual Tool for Teaching Data Communication and Network Information Systems

: DatComNet is a tutorial tool designed to assist students in understanding the concepts of designing, implementing and managing the data communication networks. It is particularly useful for computer science and computer engineering students in computer communication network courses. The DatComNet interface is written in C++ and clips. The use of Java as the language of implementation provides platform independent access to potential users through their web browser. The application utilizes an attractive, user-friendly graphical user interface (GUI) to direct the students step-by-step through the process learning data communication. For students, the proposed tutoring course is structured from seven modules and there are approximately 100 automated quiz question per module allowing them to test their knowledge of concepts on-line, an immediate response will let them to know how they are doing. Also, flash animation of selected figures from the course help networking concepts come to life. They can watch as the diagrams actively demonstrate their concepts. The proposed approach depends on using a bottom-up methodology. In this approach, students can learn first about telecommunications (lower layers) before learning about data communications (upper layers), i.e., students can learn about signaling, encoding, modulating and error detection before learning about data transfer across the Internet. This eliminates the need for two courses: one for telecommunications and one for data communication. The suggested tutorial tool has been implemented and applied on a classroom of thirty students. It is shown that this tutoring tool offers significant advantages over traditional education and training since it reduces costs, improves the consistency, gives flexible scheduling, improve timing and supports the streamlined logistics.


INTRODUCTION
Teachers at all levels are discovering the possibilities for facilitating meaningful learning with World Wide Web resources. Students working at a distance or at a different place than others, as well as those in a more traditional learning environment are able to use the Web as an actual method of instruction. The more time educators spend working with this instructional and informational mode, the clearer it becomes what types of interactive lessons and communication are conceivable using the web. Once teachers know what can be done, it is only a matter of time before they become comfortable enough to want to start planting their own seeds of information in the Web environment.
Online instructional materials span the range from supplemental-whereby the online material are used as resources for a traditional face-to-face course to distance education -in which case students are separated from the instructor and from each other by a distance and the entire course is delivered online. Most uses for online learning materials fall somewhere between these two extremes. However, teachers must carefully consider their instructional goals and intentions prior to investing the time and money to create online learning materials.
In this study, we present a DatComNet as a Webbased interactive tool designed to assist instructors in teaching data communication and networking for undergraduate computer science/computer engineering majors at the sophomore junior level. Its user interface is Java based making it ideally suited for access via the Internet. In fact, all the user needs is a browser and the URL. The DatComNet application consists of a number of relatively independent instructional modules each intended to tutor the students in some area normally covered in a data communication and network course.

MAIN COMPONENTS AND CHARACTERISTICS OF THE TUTORING TOOL
The proposed tutoring course is structured from seven modules. The first one emphasizes the physical layer, which is essential for understanding the rests of the layers. This module is particularly needed for students with no background in networking and telecommunications. The second Knowledge based the inference system, the database and the user interface. Module describes all issues related to local area networks. The third module discusses metropolitan area network. In module four, we describe switching techniques as a background preparation for wide area networks. Module five was dedicated for network layer functions and the topics of inter working local and wide area network together. Module six focuses on upper layer protocol (transport, session, presentation and application layers). The final module concerned with TCP/IP protocol suite.
The above independent modules are characterized by the following: 1. They are integrated into an intelligent, interactive instructional package that evaluate the progress of the students and tailors the materials presented to the needs of the students. 2. DatComNet is structured to provide instruction to the students and then allow the students work problems and answer questions related to the materials covered in that segment. 3. DatComNet maintains a file for each individual student and evaluates the student's progress and grasp of the material presented.

ARCHITECTURE OF THE USED INTELLIGENT SYSTEM MODULE
As we have mention previously, the DatComNet interface is written in Java and uses an expert system that is written in C++ and clips, we would like now to explain the major components of this expert system. A general block diagram of an expert system is illustrated in Fig. 1. The key components of this expert system are: the knowledge based the inference system, the database and the user interface.  Fig. 1, we see that the heart of any expert system is its knowledge base and there are many different methods representing knowledge in AI software. The designer can choose among: predicate calculus, lists, frames, semantic networks, scripts and production rules. Most commercial and experimental expert systems use the IF-THEN rule format.
Production rules are popular because their format is extremely flexible. Almost any kind of knowledge can be written to fit the IF-THEN rule format. Such rules are easy to write and it is relatively easy to build an impressive knowledge base quickly. The IF-THEN rule is formatted into two parts. The first IF part state some condition. This is called the left-hand side of the rule. The second THEN part of a production rule state a conclusion, action, or consequence that will take place if the conditions on the left-hand side of the rule have been met if the premises are true or the conditions met, the right-hand side part is also true. The rule is said to be triggered. Then, when the right hand side of the rule is implemented, the rule is said to have fired.
The rule is made up of what we call clauses. A clause is like a sentence with a subject, a verb and an object that states some fact. There is one IF clause and one THEN clause to every rule. The IF part of the rule may contain more than one premise and will contain a clause for each. These are called compound clauses and they are linked by conjunctions AND or OR.
Another important part of an expert system is the database. It contains a broad range of information about the current status of the problem solving. The database is referred to as the fact base because it record facts about the problem. Known facts are stored their initially. Then new facts, as they glinted from the inference process, are added. The fact base keeps track for all that is known during the inferencing operations. The database is also stores a list of rules that have been examined, fired and in what sequence. This help to keep track of the process. The rule sequence can be given later if the user requires explanations of the reasoning process.
The inference engine is software that implements search pattern matching operation. It is sometimes called a rule interpreter because its operation is somewhat like a software interpreter for a computer language. The rule interpreter examines the rule in a particular sequences looking for matching these conditions are found the rule are fired, thereby initiating the action specified. As the result continues to fire, they will references one another and form an inferences chain.
The rule interpreter can take two basic approaches to search for an answer. These are forward and backward chaining. There are two approaches to implement a search. The first to begin with some initial information and work forward, attempting to match that information with a rule. This is called forward chaining. In forward chaining, the rule interpreter attempts to match a fact or statement in the database to the situation stated in the left-hand or IF part of the rule. Once a fact in the database has been matched to the IF part of the rule, the rule is fired. The action or consequent stated could produce new knowledge or a new fact that is stored in the knowledge base. This new fact may then be used to search out the next appropriate rule. This searching and matching process continues until a final conclusion rule is fired.

STRUCTURE OF THE DATCOMNET TOOL
DatComNet is intended as an outside-the class supplement to assist students in understanding the material that are normally covered in a data communication and networking class. It utilizes computer visualization and animation to re-enforces concepts being presented. It utilizes an expert system to evaluate the individual student's progress on particular topics and several intelligent or expert system modules to evaluate student solutions to the homework problems that are provided to reinforce the materials being presented and to help evaluate the student's understanding of these materials. The user-friendly GUI interface is implemented in Java. The underlying intelligent modules are implemented in C++ or clips [1,2] .
DatComNet consists of semi-independent interrelated modules to provide instruction in most areas that covered in a data communication and networking classes. The application begins with a general login page that requires the user to register with the system. In this regard, the user is allowed to pick a username and password, which will be maintained for that individual (Fig. 2).

Fig. 2: Administration menu
After the user gives his username and password to the above menu, an introductory page shown in Fig. 3 has been appeared offering the user a number of options including a brief tutorial on how to use DatComNet and a description of the evaluation system. It includes a list of topics to be covered, from which the student may choose to work in a particular area of his / her interest or the student may simply choose to allow DatComNet to select the order in which the topic areas will be presented. and only two devices are connected by a dedicated link ii. A multipoint line configuration in which three or more devices share a link , network topology that refers to the physical or logical arrangement of network in which devices may be arranged in a mesh,star,tree,bus,ring or hybrid topology; iii. Communication between two devices which can be occurred in one of three transmission modes:simplex,half duplx,or full duplex where simplex transmission means that data flows in one direction only , half duplex transmission allows data to flow in both directions but not at the same time iv. Network configuration in which a network can be categorized as a local area network (LAN),a metropolitan area network (MAN) where a LAN is a data communication system within a building,plant,or campus, or between nearby building. A MAN is a data communication system covering an area of size of a town or city. A WAN is a data communication system spanning states, countries or the whole world. An internet is a network of networks.
The module that verifies the above explanation has been implemented. It utilizes diagrams of LAN,MAN,WAN,simplex,half duplex and full duplex transmission system. These configurations are shown diagrammatically connecting the different nodes with animation detailing the transmission of packets between the various hubs illustrating to students the operation concept of each category. The students should come away from this presentation with an understanding of concepts of categorizing the network either by its size, its ownership, the distance it cover and its physical architecture [3] .
The open system interconnected model: Representation of a model called Open System Interconnected (OSI) which allows diverse systems to communicate is explained. The tutorial includes the seven layers OSI model which provides guidelines for the development of universally compatible architecture, hardware and software as shown in Fig. 4.  Fig. 4, the seven layers of OSI are: the physical layer, data link layer and network layers are the network support layers. The session, presentation and application layers are the user support layers. The transport layer links the network support layers and the user support layers. The physical layer coordinates the functions required to transmit a bit stream over a physical medium. The data link layer is responsible for delivering data units from one station to the next without errors. The network layer is responsible for source to destination delivery of a packet across multiple network links. The transport layer is responsible for the source -to-destination delivery of the entire message. The session layer establishes, maintains and synchronizes the interactions between communicating devices. The presentation layer ensures interoperability between communicating devices through transformation of data into a mutually agreed upon format. The application layer enables the users to access the network. It was closed with an explanation of TCP/IP, a five -layer hierarchical protocol suite developed before the OSI model is the protocol suite used in the Internet [4] .
Analog and digital signals: Information and signals which can be either analog (continuous values) or digital (discrete values) is illustrated visually. The student is shown graphical representations of a signal either periodic or aperiodic .A signal is periodic if it consists of a continuously repeating pattern. Aperiodic signal can be decomposed into a set of sine waves. The user is allowed to manipulate the type of signal modulation either in amplitude which is the instantaneous height of the wave or a frequency which is the number of cycles per second or a phase which is the shift of the above along the time axis. Figure 5 shows the amplitude change and frequency change pattern that has been applied on the transmitted signal.
It is closed with an illustration for describing the digital signals in view point of bit rate (number of bits per second) and bit interval (duration of one bit). After the conversion of signals has been explained and the students have demonstrated an adequate understanding of categories of digital to digital receive data. The secondary responds with an ACK or a NAK [5] . Flow control is a regulation of data transmission so that the receiver buffer does not become overwhelmed by data. There are two main methods of flow control: 1. Stop-and-wait 2. Sliding window.
In stop-and-wait flo w control, each frame must be acknowledged by the receiver before the next frame can be sent. In sliding window flow control, the sending of data is constrained by an imaginary window that expands and contracts according to the acknowledgement received by the sender. Likewise, the receiving of data is constrained by an imaginary window that expands and contracts according to the data received.
Error control or how to handle lost or damaged data or acknowledgement is simply the retransmission of data. Retransmission of data is initiated by automatic repeat request (ARQ). There is three types of errors required ARQ: a damaged frame, a lost frame and a lost acknowledgement. The method used to handle error control depends on the method used for flow control.

Implementation phase of the user interface:
The user interface is implemented in Java. This section handles the user login procedure and sets up the files necessary to track the user's progress. This interface is responsible for interacting with the user to select the appropriate materials to be presented. Based on user preferences and the system's evaluation of user preformance, this unit calls appropriate modules to be presented. The main module also is responsible for invoking the underlying expert system that tracks student progress.
The individual interface of each of these modules is also implemented in Java. For each module interface, there is an underlying intelligent system which has been implemented to actually determine what materials are to be presented and the ordering of those materials. These underlying modules are also responsible for evaluating user solutions and answers and deriving corrected solutions where required. The structure of these intelligent modules is tailored to the task at hand. Some are written in C++ and some in Clips. The module for evaluating student progress is an expert system written in clips. The different instructional modules all involve in some degree Graphical illustration and animation. These displays are implemented in open GL language.

CONCLUSION AND FUTURE WORK
The su g ge s ted DatCo mN et will p ro ve to be a useful tool for teaching data communications and networking. Many CS students seem to be intimidated by the hardware aspects of the CS program. This seems particularly true of materials presented at the communications and network level. The presented visual approach should make the material more understandable. In particular, the portions of the system involving the lower level layer of OSI should be useful. A sustained amount of work has been done toward achieving the goal of covering the remaining layers of the OSI model and while must has been achieved much work remains to be done.
Among the open future work is the following: Plans for DatComNet include implementation of optional(user selected) vocal instruction and voice recognition capabilities intended to make DatComNet useful and accessible for physically impaired or otherwise handicapped individuals. Also, the voice tutorial and voice recognition module has not yet been implemented but this is planned. It is anticipated that speech recognition SDK version 5.1 will be used.