Sie sind auf Seite 1von 6

Preliminary Report Format for Mini Project

1. Introduction 1.1Problem Statement A data structure is a particular way of storing and organizing data in a computer so that it can be used efficiently. Different kinds of data structures are suited to different kinds of applications, and some are highly specialized to specific tasks. For example, Btrees are particularly well-suited for implementation of databases, while compiler implementations usually use hash tables to look up identifiers. Data structures are used in almost every program or software system. Data structures provide a means to manage huge amounts of data efficiently, such as large databases and internet indexing services. Usually, efficient data structures are a key to designing efficient algorithms. Hence this vast topic is difficult to comprehend completely. 1.2Project Scope / Objective To Simulate the various operations performed on various types of trees (data structure) This project familiarizes with some of the frequently used trees. All the operations like creation, insertion, deletion, traversal etc are presented in a very simple form which is easy to understand. Excellent graphical interface enhances the knowledge on the topic. This application mainly concentrates on the frequently encountered trees, namely o AA trees o AVL trees o Binary trees o Binary search trees o Threaded binary trees o Red-black tree Certain other types like Search Trees,Interval Trees,Segment Trees, Orthogonal Range Trees, b tree and b+ tree are not in the scope of this project. This project is developed in the windows framework and the tools are not platform independent. 2. Literature survey and summary of current state of art Much research has already been done on this topic. Some prominent works include the following. The Intelligent Tutoring System: ADIS is completely implemented in Java to allow platform-independent standalone usage or internet delivery, either of proprietary origin (i.e. conventional market Web Browsers such as Netscape Navigator or Microsoft Internet Explorer), or on one designed specifically for the ITS (Hypermedia browser [Verhoeven & Warendorf 1997]). The system consists of several core modules, which are relatively independent of each

other to allow easy upgradability and portability to other teaching domains:

a.

Personalized Student Models, each of which will monitor the progress of one student. b. An Expert Model, which stores instructions for each exercise as well as the initial state (if any). This model also provides the template by which to compare student actions, to detect constraint violations made by the student. c. An Expert Tutor, which operates on the Student and Expert Models. It is responsible for the validation of each move by the student in an exercise (by means of pattern matching the corresponding steps from both models). The tutor uses the constraint based tutoring module as proposed by [Ohlsson 1992] and described in detail in [Warendorf and Tan 1997]. d. The Graphical User Interface (GUI) Shell which serves as the bridge or HCI interpreter between students and the ITS [Warendorf 1997]. Currently every user has his own copy of the Expert and Student model. In the future development of ADIS there will be many student hosts (clients) but only one central expert (server). Each student still has his/her own Student model but all will use the same copy of the Expert model in the Expert's Knowledge Database. The Data Structure Modules available can be easily expanded by adding new microworlds to the system. The prerequisite for this is laid by defining a general communication protocol and implementing the tutor engine without any knowledge about the domain being taught. Communication between the Expert and the GUI, The Atomic Action Class: Implementing an Intelligent Tutoring System as a Client/Server model encounters a severe problem concerning the response time to the student. Not only does the appropriate response to the student have to be computed, but the request has to be sent forward to the server and an answer awaited. Even though the current version has the client/server support not implemented, e.g. Remote Method Invocation (RMI), due lack of support of conventional browsers, its design is catered for this purpose. In order to achieve this, interaction between the different components, e.g. GUI, tutor and database must be kept to a minimum. The communication is based on single or atomic actions between the two sides. Each step by the user is reported to the expert as an AtomicAction and is evaluated as described below. The datum of information transfer between the Expert and the GUI is the AtomicAction object. This object contains complete information about the action just performed by a student. The

Expert will compare the AtomicAction object with its template, to determine if the student is on-track in the exercise. This object is also the unit of storage in the Expert and Student model databases. It is stored in the Expert model in the form of the initial state for each exercise, and in the Student model as the student's exercise history. Each instance of an AtomicAction object either contains only an action component, or an action plus a corresponding Bubble object describing the action. AtomicAction objects are generated by the GUI whenever a student executes some action through the interface. A clone of this instance will be passed to the Expert for processing and any necessary storage in the Student model database.

Information Passing Mechanism

3. Proposal for dissertation

In today's Information Technology (IT) age, the traditional role of teachers and learners is being changed by multimedia courseware. Hypermedia offers much to learners in terms of providing an environment that engages the learner, allowing the construction of knowledge in a meaningful way. However, these packages lack intelligent tutors. Some means of Multimedia Tutoring can offer some solutions by providing students multimedia interface features to provide guidance towards the correct solution using methods of constraint-based tutoring. It has been shown that multimedia helps to make education more attractive and hence more effective. In computer science education, the visualization and interactive animation of abstract data structures has a positive effect on learning algorithms and is regarded as attractive by students. This project aims at providing such an interface and platform for beginners to understand the concept of the data structure, tree. It mainly focuses on a user level interaction between the system and the student and concentrates on some commonly used trees. 4. Tentative specification and System Overview <Provide a general description of the software system including its functionality> 4.1. System Architecture <Provide a high level architecture diagram showing different components and their interactions and then give a description> 4.1.1. <Component 1/Module 1 name or description> 4.1.2. <Component 2/Module 2 name or description> 4.2. Product specification <List the features of a what a not-yet-designed product is intended to do and give details about the all the possible outcomes of software > 4.3. External Interface Requirements <Description about external interfaces of your system including user interfaces, hardware interfaces, software interfaces. A sample of the GUI used for the main page could be included here> 4.4. Software and Hardware Requirements <Description about the software and hardware used for the software> 5. Work plan including time table <Describe in detail what you plan to do until completion of your project, list the stages of your project in a table format, indicate deadlines you have set for completing each stage of the project, including any work you have already completed, discuss any particular challenges that need to be overcome>

STAGE

DEADLINE

6. Implications of Research As the designer better understands the operation of the higher level components through the use of the simulator, the lower level components may then be designed and subsequently simulated for verification and performance evaluation. Simulators can be used as an effective means for teaching or demonstrating concepts to students. This is particularly true of simulators that make intelligent use of computer graphics and animation. Such simulators dynamically show the behaviour and relationship of all the simulated system's components, thereby providing the user with a meaningful understanding of the system's nature. During the presentation of the design and implementation of the simulator in this report, it will be shown how positive attributes can be incorporated both in the simulator engine and its user interface. All these features mentioned above can lead to futuristic application by using extensions lik 3d graphics and other tools. The teaching aid can further be substituted as a teacher itself by integrating with the concepts of speech recognition and response. 7. Risks and Challenges <Provide the risks that may lead to unsuccessful completion of the project> Risks include: 1. Integration of adobe flash player with the script in C#. 2. Invalid inputs given by the user during the interaction. 3. Failure of this program in another platform. Challenges include: 1. Effectiveness of the GUI through C#. 2.

8. Conclusion <Provide a concluding note related to the report > 9. Bibliography <A list of referenced and/or related publications>

Das könnte Ihnen auch gefallen