International Journal of Academic Multidisciplinary Research (IJAMR) ISSN: 2000-006X Vol. 2 Issue 2, February – 2018, Pages: 1-8 www.ijeais.org/ijamr 1 ITS for Teaching Introduction to CS Ahmad Marouf, Mohammed K. Abu Yousef, Mohammed N. Mukhaimer Department of Information technology, Faculty of Engineering and Information technology, Al-Azhar University, Gaza, Palestine Abstract: The paper describes the design of an intelligent tutoring system for teaching Introduction to Computer Science-a compulsory curriculum in Al-Azhar University of Gaza to students who attend the university. The basic idea of this system is a systematic introduction into computer science. The system presents topics with examples. The system is dynamically checks student's individual progress. An initial evaluation study was done to investigate the effect of using the intelligent tutoring system on the performance of students enrolled in computer science curriculum at Al-Azhar University, Gaza. The results showed a positive impact on the evaluators. Keywords: Intelligent Tutoring System, Computer Science, self-education, Computer Assisted Instruction (CAI), Expert Systems. 1. INTRODUCTION Intelligent Tutoring Systems (ITSs) first created in the '70s, when Carbonell involved methods of Artificial Intelligence (AI) in Computer Aided Instruction (CAI)[9]. Thus, man can say: the first generation of ITSs is a kind of "intelligent" CAI. Their main task is stated by Lelouche: "The basic principle of „intelligent‟ CAI is that it should know the taught material"[15]. Knowledge about the taught material is embedded in the ITS in form of expert systems, that is, the expert module [3, 11]. The integration of insights of cognitive science in ITSs, has led to what today is called an Intelligent Tutoring System [2]. In addition to the knowledge about the taught material, these systems have knowledge about pedagogical strategies and knowledge about the student, realized as pedagogical module and student module, respectively. 2. LITERATURE REVIEWS There are many designed and development of Intelligent Tutoring System, ITS has attracted much attention of the researchers. There are many intelligent tutoring systems, such as ITS that teach students English dialogues through interaction with students and it takes into account the individual differences of students through levels [3]. ITS Design based on Leeds Modeling System (LMS) to examine errors in algebra [4]. MYCIN [5] is expert system for diagnosing diseases such as cancers, based on MYCIN, Designed GUIDON to display the lessons of the disease and symptoms, showing rules in the knowledge base of the student [6]. A comparative study between Animated Intelligent Tutoring Systems (AITS) and Video-based Intelligent Tutoring Systems (VITS) [7], Affective tutoring systems (ATS) based on embedded devices is a system that relies on embedded devices for detecting the feelings, emotion, psychology student and also adapt to the student's mood such as angry, frustrated and fatigued etc. Based on the mood and feelings of the student, the student will learn [8, 9], teaching AI searching algorithms [10], teaching database to sophomore students in Gaza [11], Predicting learners performance using NT and ITS [12], learning to program in C++ [13], and advanced security course[41-51]. 3. ARCHITECTURE OF A TYPICAL ITS SYSTEM A typical ITS, has the following four basic components [20]. 1. The Domain model: The domain model (also known as the cognitive model/expert knowledge model) consists of the concepts, facts, rules, and problem-solving strategies of the domain in context. It serves as a source of expert knowledge, a standard for evaluation of the student‟s performance and diagnosis of errors. 2. The Student model: The student model is an overlay on the domain model. It emphasizes cognitive and affective states of the student in relation to their evolution as the learning process advances. As the student works step-by-step through their problem solving process, the system engages itself in model tracing process. Anytime there is any deviation from the predefined model, the system flags it as an error. 3. The Tutoring model: The tutor model (also called teaching strategy or pedagogic module) accepts information from the domain and student models and devices tutoring strategies with actions. This model regulates instructional interactions with student. It is closely linked to the student model, makes use of knowledge about the student and its own tutorial goal structure, to devise the International Journal of Academic Multidisciplinary Research (IJAMR) ISSN: 2000-006X Vol. 2 Issue 2, February – 2018, Pages: 1-8 www.ijeais.org/ijamr 2 pedagogic activity to be presented. It tracks the learner's progress, builds a profile of strengths and weaknesses relative to the production rules (termed as „knowledge-tracing‟). 4. User Interface model: This is the interacting front-end of the ITS. It integrates all types of information needed to interact with learner, through graphics, text, multi-media, key-board, mouse-driven menus, etc. Prime factors for user-acceptance are user-friendliness and presentation. Figure 1 presents a typical ITS architecture. Figure 1 : Architecture of a Typical ITS System 4. THE OBJECTIVES OF THE COMPUTER SCIENCE-COURSE TUTOR ARE: To build an intelligent tutoring system for problems for which the answers might not be always quantitative To have a system that is dynamically adapt at run time to the student‟s individual progress 5. COMPUTER SCIENCE-COURSE TUTOR DESIGN Over the years a few innovative tutoring tools have been studied in an attempt to improve the quality, flexibility and cost effectiveness of teaching and learning. Kashy developed a tutor called CAPA to help students in solving Physics problems[12]. Barker have developed a tutor for homework assignment in electronic and control system discipline [6]. Bridgeman developed Interactive tutors like: PILOT and SAIL [7,8]. PILOT was for Learning and grading. PILOT is a problem generation tool for graph algorithms, while SAIL is a LaTeX-based scripting tool for problem generation. Computer Science-Course Tutor is unique with respect to the previous work in the following manner: The intelligent tutoring system was built for problems for which the answers might not be always quantitative [1,2]. Computer Science-Course Tutor is designed to help students learn introduction to Computer Science by: 1. Gradually teaching the material to the students 2. Giving hints and examples using text and pictures 3. Obtaining the proper feedback. Computer Science-Course Tutor is designed to replace the teacher. It has the following modules: Pedagogical Module, Expert Module, Student Module, and Tutoring process module. 5.1 Computer Science Course -Tutor Pedagogical Module Design International Journal of Academic Multidisciplinary Research (IJAMR) ISSN: 2000-006X Vol. 2 Issue 2, February – 2018, Pages: 1-8 www.ijeais.org/ijamr 3 It has been noticed that students are having difficulties in understanding this course because it contains too much material with difficult scientific phrases. To overcome these difficulties, an Intelligent Tutoring System for teaching this course called Computer Science-Course -Tutor have been developed to students enrolled in Computer Science I as a compulsive course at Al-Azhar University in Gaza. Computer Science Course: a) First Chapter: An Introduction to Computers 1. Introduction 2. What is computer? 3. The constituents of computer 4. Using computers 5. categories of computers 6. elements of an information system 7. glossary b) Second Chapter: The Internet and www 1. The Internet 2. The World Wide Web 3. Web browsers and web address 4. Searching the web 5. Types of websites 6. E-commerce 7. Other internet services 5.2 Expert Module of Computer Science Course -Tutor Expert Module was implemented to gather the necessary information for generating the feedback [4]. In addition to whether the user‟s answer is correct/incorrect, the module can provide the student with the hints when it is requested. Furthermore, the module provides the student the proper feedback in response to the student's answer. 5.3 Student Module of Computer Science Course -Tutor A new student must create his own account to have a profile. The profile has information about the student such as his name, dates of login, score of each session, and learning progress during the each session. The student's score can be viewed at any time during the session as a table that describes the student performance in solving problems. 5.4 Tutoring process module of Computer Science Course -Tutor Tutoring process module works as a coordinator that controls the functionality of the whole system. Computer Science Course -Tutor User Interface Design International Journal of Academic Multidisciplinary Research (IJAMR) ISSN: 2000-006X Vol. 2 Issue 2, February – 2018, Pages: 1-8 www.ijeais.org/ijamr 4 Figure 2 shows the user-creation interface of the tutor. Figure 3: lesson interface International Journal of Academic Multidisciplinary Research (IJAMR) ISSN: 2000-006X Vol. 2 Issue 2, February – 2018, Pages: 1-8 www.ijeais.org/ijamr 5 Figure 4: the exercises interface Figure 5: ITS directs the learner to relearn the lesson International Journal of Academic Multidisciplinary Research (IJAMR) ISSN: 2000-006X Vol. 2 Issue 2, February – 2018, Pages: 1-8 www.ijeais.org/ijamr 6 Figure 6: ITS informs the learner about his degree Figure 7: Statistics about learner's progress 6. CONCLUSIONS AND FUTURE WORKS The design of an Intelligent Tutoring System called Computer Science Course -Tutor was described in this paper. Computer Science Course-Tutor was designed to teach students Computer Science Course to overcome their difficulties. Computer Science Course-Tutor is dynamically adapted at run time to the student‟s individual progress. An initial evaluation of Computer Science Course-Tutor was carried out by a lecturer and some students in the faculty of Engineering and Information Technology at Al Azhar University in Gaza. The outcome of the evaluation was positive and suggested that other intelligent tutoring systems should be designed for other courses. We recommend a comprehensive evaluation of the system to be carried out next time the course is offered. International Journal of Academic Multidisciplinary Research (IJAMR) ISSN: 2000-006X Vol. 2 Issue 2, February – 2018, Pages: 1-8 www.ijeais.org/ijamr 7 REFERENCES 1. Almasri, Abdelbaset, et al. "Intelligent Tutoring Systems Survey for the Period 2000-2018." (2019). 2. Almurshidi, S. H., & Abu-Naser, S. S. (2016). Design and Development of Diabetes Intelligent Tutoring System. 3. Almurshidi, S. H., & Abu-Naser, S. S. (2017). Stomach disease intelligent tutoring system. 4. Al-Nakhal, M. A., & Naser, S. S. A. (2017). Adaptive intelligent tutoring system for learning computer theory. 5. Al-Shawwa, M. O., Alshawwa, I. A., & Abu-Naser, S. S. (2019). An Intelligent Tutoring System for Learning Java. 6. Azaab, S., et al. (2000). "A proposed expert system for selecting exploratory factor analysis procedures." 7. Bakeer, H. M. S., & Abu-Naser, S. S. (2019). An Intelligent Tutoring System for Learning TOEFL. 8. Baker, J., et al. "& Heller, R.(1996)." Information Visualization. Information Technology Journal 7(2). 9. Baker, J., et al. (1996). "Information Visualization." Information Technology Journal 7(2): pp: 403-404. 10. Buhisi, N. I., & Abu Naser, S. S. (2009). Dynamic programming as a tool of decision supporting. Journal of Applied Sciences Research, 5(6), 671-676. 11. Chen, R.-S., et al. (2008). "Evaluating structural equation models with unobservable variables and measurement error." Information Technology Journal. 12. El Agha, M. I., et al. (2018). "SQL Tutor for Novice Students." International Journal of Academic Information Systems Research (IJAISR) 2(2): 1-7. 13. El Haddad, I. A., & Naser, S. S. A. (2017). ADO-Tutor: Intelligent Tutoring System for leaning ADO. NET. 14. Elnajjar, A. E. A., & Naser, S. S. A. (2017). DES-Tutor: An Intelligent Tutoring System for Teaching DES Information Security Algorithm. 15. Abu Elreesh, J. Y., & Abu-Naser, S. S. (2019). Cloud Network Security Based on Biometrics Cryptography Intelligent Tutoring System. 16. Ghali, M. J. A., & Abu-Naser, S. S. (2019). ITS for Data Manipulation Language (DML) Commands Using SQLite. 17. Hamed, M. A., & Naser, S. S. A. (2017). An intelligent tutoring system for teaching the 7 characteristics for living things. 18. Abu Ghali, M. J., et al. (2018). "An Intelligent Tutoring System for Teaching English Grammar." 19. Abu Hasanein, H. A., & Abu-Naser, S. S. (2017). An intelligent tutoring system for cloud computing. 20. Abu-Naser, S. S. (2001). A comparative study between animated intelligent tutoring systems AITS and video-based intelligent tutoring systems VITS. 21. Abu Naser, S. S. (2006). Intelligent tutoring system for teaching database to sophomore students in Gaza and its effect on their performance. 22. Abu Naser, S. S. (2008). Developing an intelligent tutoring system for students learning to program in C++. 23. Abu Naser, S. S. (2008). Developing visualization tool for teaching AI searching algorithms. 24. Abu Naser, S. S. (2012). A Qualitative Study of LP-ITS: Linear Programming Intelligent Tutoring System. 25. Abu-Naser, Samy S., et al. "Human Computer Interaction Design of the LP-ITS: Linear Programming Intelligent Tutoring Systems." (2011). 26. Abu-Nasser, B. (2017). Medical Expert Systems Survey. International Journal of Engineering and Information Systems (IJEAIS), 1(7), 218-224. 27. AbuEloun, N. N., & Naser, S. S. A. (2017). Mathematics intelligent tutoring system. 28. AbuEl-Reesh, J. Y., & Abu-Naser, S. S. (2018). An Intelligent Tutoring System for Learning Classical Cryptography Algorithms (CCAITS). 29. Abu-Naser, S. S. (2008). "JEE-Tutor: An Intelligent Tutoring System for Java Expression Evaluation." 30. Abu-Naser, S. S. (2016). "ITSB: An Intelligent Tutoring System Authoring Tool." Journal of Scientific and Engineering Research 3(5): 63-71. 31. Abu-Naser, S., et al. (1995). "& Beattie, GA (2000)." Expert system methodologies and applications-a decade review from: 9-26. 32. Akkila, A. E.-D. N. and S. S. Abu Naser (2018). ITS-Tutor for Teaching Rules of Tajweed the Holy Quran, Al-Azhar University, Gaza, Palestine. 33. Akkila, A. N., & Naser, S. S. A. (2017). Teaching the right letter pronunciation in reciting the holy Quran using intelligent tutoring system. 34. Akkila, A. N., & Abu-Naser, S. S. (2018). Rules of Tajweed the Holy Quran Intelligent Tutoring System. 35. Akkila, Alaa N., et al. "Survey of Intelligent Tutoring Systems up to the end of 2017." IJARW, 2019. 36. Al Rekhawi, H. A., & Abu-Naser, S. S. (2018). Android Applications UI Development Intelligent Tutoring System. 37. Alawar, M. W., & Naser, S. S. A. (2017). CSS-Tutor: An intelligent tutoring system for CSS and HTML. 38. Al-Bastami, B. G., & Naser, S. S. A. (2017). Design and Development of an Intelligent Tutoring System for C# Language. 39. Albatish, I., Mosa, M. J., & Abu-Naser, S. S. (2018). ARDUINO Tutor: An Intelligent Tutoring System for Training on ARDUINO. 40. Al-Bayed, M. H., & Naser, S. S. A. (2017). An intelligent tutoring system for health problems related to addiction of video game playing. 41. Al-Bayed, M. H., & Abu-Naser, S. S. (2018). Intelligent Multi-Language Plagiarism Detection System. 42. Aldahdooh, R., & Naser, S. S. A. (2017). Development and Evaluation of the Oracle Intelligent Tutoring System (OITS). 43. Alhabbash, M. I., Mahdi, A. O., & Naser, S. S. A. (2016). An Intelligent Tutoring System for Teaching Grammar English Tenses. 44. Al-Hanjori, M. M., Shaath, M. Z., & Naser, S. S. A. (2017). Learning computer networks using intelligent tutoring system. 45. Hasanein, H. A. A., & Abu-Naser, S. S. (2018). Developing Education in Israa University Using Intelligent Tutoring System. 46. Hilles, M. M., & Naser, S. S. A. (2017). Knowledge-based Intelligent Tutoring System for Teaching Mongo Database. 47. Hissi, H. E.-., et al. (2008). "Medical Informatics: Computer Applications in Health Care and Biomedicine." Journal of Artificial Intelligence 3(4). 48. Khella, R. A., & Abu-Naser, S. S. (2018). An Intelligent Tutoring System for Teaching French. 49. Li, L., et al. (2011). "Hybrid Quantum-inspired genetic algorithm for extracting association rule in data mining." Information Technology Journal 12(4). 50. Mahdi, A. O., Alhabbash, M. I., & Naser, S. S. A. (2016). An intelligent tutoring system for teaching advanced topics in information security. 51. Marouf, A., Yousef, M. K. A., Mukhaimer, M. N., & Abu-Naser, S. S. (2018). An Intelligent Tutoring System for Learning Introduction to Computer Science. 52. Mosa, M. J., Albatish, I., & Abu-Naser, S. S. (2018). ASP. NET-Tutor: Intelligent Tutoring System for leaning ASP. NET. 53. Nassr, M. S., & Abu-Naser, S. S. (2019). ITS for Enhancing Training Methodology for Students Majoring in Electricity. 54. Ng, S., et al. (2010). "Ad hoc networks based on rough set distance learning method." Information Technology Journal 10(9): 239-251. 55. Owaied, H. H., et al. (2009). "Using rules to support case-based reasoning for harmonizing melodies." Journal of Applied Sciences 11(14): pp: 31-41. 56. Qwaider, S. R., & Abu-Naser, S. S. (2018). Excel Intelligent Tutoring System. 57. Shaath, M. Z., Al-Hanjouri, M., Naser, S. S. A., & ALdahdooh, R. (2017). Photoshop (CS6) intelligent tutoring system. 58. Sulisel, O., et al. (2005). "Growth and Maturity of Intelligent Tutoring Systems." Information Technology Journal 7(7): 9-37. 59. Abu Naser, Samy S., et al. "Adaptation of Problem Presentation and Feedback in an Intelligent Mathematics Tutor." Information Technology Journal 5.5 (1995): 167-207. 60. Naser, S. A. (2008). An Agent Based Intelligent Tutoring System For Parameter Passing In Java Programming. Journal of Theoretical & Applied Information Technology, 4(7). 61. Al Rekhawi, H. A., & Abu Naser, S. S. (2018). An Intelligent Tutoring System for Learning Android Applications Ui Development. 62. Abu-Nasser, B. S., & Abu-Naser, S. S. (2018). Cognitive System for Helping Farmers in Diagnosing Watermelon Diseases. 63. Abu-Nasser, B. S., & Abu Naser, S. S. (2018). Rule-Based System for Watermelon Diseases and Treatment. 64. Abu-Naser, S., et al. "An intelligent tutoring system for learning java objects." International Journal of Artificial Intelligence and Applications (IJAIA) 2.2 (2011). 65. Marouf, A. and S. S. Abu-Naser (2019). "Intelligent Tutoring System for Teaching Computer Science I in Al-Azhar University, Gaza." International Journal of Academic and Applied Research (IJAAR) 3(3): 31-53. 66. Naser, S. (2009). Evaluating the effectiveness of the CPP-Tutor an intelligent tutoring system for students learning to program in C++. Journal of Applied Sciences Research, 67. Naser, S. S. A., & ALmursheidi, S. H. (2016). A Knowledge Based System for Neck Pain Diagnosis. World Wide Journal of Multidisciplinary Research and Development. 68. Abu Naser, S. S., et al. (2008). "A Proposed Expert System For Guiding Freshman Students In Selecting A Major In Al-Azhar University, Gaza." Journal of Theoretical & Applied Information Technology 4(9).