Tuesday, January 28, 2020

Design of an Interactive Graphics Framework

Design of an Interactive Graphics Framework Design of an Interactive Graphics Framework to Instruct Students on Computer Architecture Hardware Literature Review: The curriculum recommended by the ACM/IEEE-CS joint task force and documented in the computing curricula (ACM, 2013) defines a body of knowledge incorporating a wide variety of core topics one of which is computer architecture. Many of the topic areas within the body of knowledge are abstracted from a specific hardware implementation, computer architecture is one area for which specific implementation is essential (Taipala, 2014) as this course plays an important role in the computer science curriculum and also Students need to understand computer architecture in order to structure a program so that it runs more efficiently on a real machine. In selecting a system to use, they should be able to understand the trade off among various components, such as CPU clock speed vs. memory size. The pie chart below shows that computer technicians contribute more to total growth in science and engineering occupations which can be inferred as more number of jobs and a student can manage to get a job easily after graduation but few of the students from engineering and technology and majority of students from contrasting fields face difficulties in understanding computer architecture The computer involves many inter-related topics: digital logic, microprocessors, embedded systems, operating systems, and compiler and programming languages. This inter-relationship is pointed by Nisan and Schocken (2005) in the following way: â€Å"Of course machine language is also an abstraction an agreed upon set of binary codes. In order to make this abstraction formalism concrete, it must be realized by some hardware architecture. And this architecture, in turn, is implemented by a certain chip set, registers, memory units, ALU, and so on. Each level hides the artifacts and mechanisms of the previous lower level which makes the subject even more difficult to understand for students. This abstraction can be described by a top-down as well as a bottom-up approach. To encompass the whole domain and deal with its growing complexity, Knuth (2003), in his keynotes, recommended using a bottom-up education approach but this approach may not be efficient as in this hierarchy, the asse mbly language is the lower programming language and each of its instruction is the translation of one unique machine instruction which is the microcode of hardware activation. Hyde, in his book the Art of the Assembly Language, wrote that although assembly language has a pretty bad reputation, it is required to understand the backstage operation of computer processors (Hyde, 2003). It is a means of making the interaction of the hardware (CPU, memory, I/O) and software (the program) comprehensible (Yehezkel. 2003). The importance of learning computer architecture and the difficulties encountered by teachers assisting the students in understanding the course have been well documented (IEEE Micro, 2000; Cassel et al., 2000). Hence to improve the teaching of computer architecture, instructors must search for better pedagogical methods and tools. Moreover, at the curriculum level (as shown in the previous section), great efforts have to be invested to integrate the theoretical and practi cal aspects of computer architecture topics. Methodology: Based on a survey of software tools and technology Processing and Virtual Reality Modeling Language (VRML) are the computer graphics languages which are appropriate for doing the above mentioned work. These open source software are can build interactive programs easily with 2D or 3D outputs. Firstly an inventory of concepts needs to be created and sorted. These concepts are converted to interactive graphical simulations in order to help students understand better. To build an effective graphics framework data must be collected both from students who are enrolled in the computer architecture course and faculty who teach that course. Data can be collected by questionnaires or by conducting formal interviews with students and professors involved with computer architecture course, interview with faculty members gives the subject of study and interview with students helps in finding out on what topics they need more emphasis (Leibovitch, 2011), results from these interviews and questionna ires collectively outputs the ultimate topics which have to be converted to interactive graphical simulation. â€Å"Cheryl A Schmidt’s Complete CompTIA Guide to PCs† book covers all the fundamental topics of computer architecture and hardware which is appropriate for this research. Purdue University Calumet offers a course named computer architecture (ECET -11000) to freshmen which uses the above mentioned book as textbook and the course syllabus is designed according to the book. Information in their website clearly describes that the class attracts at least 20 students every semester since five years hence 20 counts of data can be collected. After looking at the results of interviews the topics can be finalized and can be converted to interactive 3D models and simulations (framework). Pre test and post test are given to students and these test results can be analyzed to check if this research helps in making the computer architecture course interesting, fun and easil y understandable. Data Collection: Eight to ten computer architecture text books from well established publications and authors need to be analyzed to create the inventory of concepts and these concepts are given as questionnaires to students to finalize and sort based on complexity. Questionnaire 1 (Sample questions to students, questions subject to change): The first three questions reveals about the knowledge of students about computers and their academic background, fourth question outputs the need for this research to be done and the rest of the questions are aimed at gathering the difficulty level of the course which presents the primary data that has to be converted to 3D models. Years and extent of association with computers? Concentrated major? Did you take any computer course(s) before, if yes please list them? How efficient is conventional learning experience with textbooks and labs? On a scale of 1 to 5 please rate the level of difficulty of the below mentioned concepts. Identification of parts of a mother board Mother board connections (assembling and disassembling a PC) Identification of different ports and their uses Different memory devices and their classification Configuring memory (RAM) Installing Hard Disk Redundant array of inexpensive disks (RAID technology) Sound drive installation Optical drive installation How a printer works Encrypting a file folder After analyzing the data from the above questionnaire the interactive graphical framework can be completed by using graphical tools and then be tested in class with the students and tests can be conducted, the students are tested on few computer architecture topics without the frame work then they are provided with the framework and tested again on the same questions. Analysis of the test score data can be used to draw conclusion about the efficiency of the framework in helping the students to deeply understand the course making it easy, fun and interesting. Test 1 (Sample test questions to students): The following test questions are designed according to the topics which are converted to 3D models and simulations, since the actual data is not yet collected these questions are subject to change. This test is conducted twice once without the framework and again with the framework. Even the questionnaire 1 will be given to students as post test after they have used the framework to see if they change the options from difficult to easy. What steps have to be taken while disassembling a PC? What is the use of RAID technology? How do you encrypt a file folder? How does a printer work? How do you configure RAM and calculate video memory Mention any five ports and write their uses. What type of hard disk will be chosen according to the type of CPU? Compare PATA, SATA, SCSI and SAS hard drives. Identify the parts of the below given motherboard In the following section, the basic units of the computer are presented. Illustrate, using arrows, the connection between the units. Describe the function next to each arrow. Data Analysis: The objective of this project is to help students to learn computer architecture course with building an ease in understanding and interest. To achieve this objective the interactive graphics simulator must be tested for its effectiveness. Questionnaires and interviews from students and faculty of computer architecture courses reveal the topics which are complex and have to be built in graphic simulation to make them look simple and easy. Questionnaires given to students have a scale of one to five which can be marked according to the level of difficulty of the specific concept. By analyzing the data quantitatively which is the concepts which get four or five marked in majority will be chosen to be converted to simulation. After the simulation is completed it is given to students and faculty to explore and go along with the computer architecture course. The main data analysis method to get the best result for this project is prestest and posttest. Description of the Pretest and Posttest The pretest was conducted before the course began, with the aim of determining the prior knowledge on the subject. The posttest was conducted at the end of course with the intention of determining the level of comprehension. Since the actual data is not collected the results cannot be interpreted and the questionnaires can be subject to change. The results of questionnaires before the simulator and after using the simulator are compared, if the student score in the posttest has increased drastically the simulator is considered to be effective and if there is no change or very less increment in the score then the simulator has to be developed more effectively. The figure below shows the example overall score of each student when compared to the percentage of correct answers vs prestest and posttest. Figure 1 In figure 1 the student has improved drastically after using the simulator but on the other hand if the results are opposite the simulator has to be developed more effectively. To develop a more effective simulator each question has to be compared with itself from pretest and posttest. The bar chart below represents the sample comparison of each correct answer to the question by the number of students from pretest and posttest. Figure 2 shows answers to questions which have improved and which have not improved. The first four questions in the questionnaire give the data about acquaintance of course to the student hence these four questions are removed from the comparison chart in Figure 2. From this result analysis can be made that the answers which have not improved are the concepts which are still difficult for the students to understand and be given a second thought to improve them in a different manner in the simulator thus improving its effectiveness. This way the simulator can be developed to achieve one hundred percent of usage in the class of computer architecture making the course easy, interesting and fun. Figure 2 References: Taipala, D. (2014) Teaching Computer Architecture in an Online Learning Environment using Simulation and Peer Instruction, 30(1), 87-98. Lazowaka, E.D. (2010). Where The Jobs are†¦ Retrieved from  http://www.cccblog.org/2010/01/04/where-the-jobs-are/ Nisan, N., Schocken, S. (2005) The Elements of Computing Systems, Building a Modern Computer from the First principles, MIT Press Stephen J. A., Roberts, E. (2008, July) â€Å"Point/Counterpoint. Technology curriculum for the early 21st century, Communications of the ACM, 51(7), 27-32. Leibovitch, C. Y. R., Levin, I. (2011). Reinforcing and Enhancing Understanding of Students in Learning Computer Architecture.Navigating Information Challenges. Hyde, R. (2003, September). The Art of Assembly Language Programming. Chapter 6: Memory Architecture. Retrieved from: http://webster.cs.ucr.edu/AoA/Windows/HTML/MemoryArchitecture.html. Lazowaka, E.D. (2010). Where The Jobs are†¦ Retrieved from  http://www.cccblog.org/2010/01/04/where-the-jobs-are/ IEEE Micro. (2000). Special Issue on Computer Architecture Education, 20(30). Joint Task Force on Computer Engineering Curricula: IEEE Computer Society/Association for Computing Machinery, Computer Engineering 2004: Curriculum Guidelines for Undergraduate Degree Programs in Computer Engineering, 30-31. Retrieved from: http://www.eng.auburn.edu/ece/CCCE/ Yehezkel, C., Ben-Ari, M., Dreyfus, T. (2007). The contribution of visualization to learning computer architecture, CSE on Special Issue on Teaching Hardware-software, 2(17), 117-127. Yehezkel, C. (2003). Making program execution comprehensible—one level above the machine language. 35(3), 124 – 128. Knuth, D. (2003). Bottom-up education, keynote in Proceedings of 8th annual conference on Innovation and technology in computer science education. Retrieved from: http://iticse2003.uom.gr/Iticse_day3 Kumar, D. and Cassel, L. (2002). A state of the course report: Computer organization and architecture. SIGCSE Bulletin, 34(3), 175 – 177. Purdue Calumet Class schedule. Retrieved From: https://banwebf.purduecal.edu/pls/proddad/Webctlg.P_CtlgProcInput?inputsubjcode=ECETinputsymbol==inputcrsenumb=11000inputcoursetype=2inputreqind=2callpage=clistquery Cheryl A(2014). Complete CompTIA Guide to PCs. Sample pages retrieved From: http://ptgmedia.pearsoncmg.com/images/9780789749765/samplepages/0789749769.pdf

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.