Visit the COVID-19 Corona Virus South African Resource Portal on https://sacoronavirus.co.za/
An evaluation of programming assistance tools to support the learning of IT programming: a case study in South African secondary schools
- Authors: Koorsse, Melisa
- Date: 2012
- Subjects: Computer science , Computer literacy , Computer programming
- Language: English
- Type: Thesis , Doctoral , PhD
- Identifier: vital:10472 , http://hdl.handle.net/10948/d1010581 , Computer science , Computer literacy , Computer programming
- Description: Worldwide, there is a decline in interest in the computer science profession and in the subject at secondary school level. Novice programmers struggle to understand introductory programming concepts and this difficulty of learning to program is contributing to the lack of interest in the field of computer science. Information Technology (IT) learners in South African secondary schools are novice programmers, introduced to introductory programming concepts in the subject which also includes topics on hardware and system software, e-communication, social and ethical issues, spreadsheets and databases. The difficulties faced by IT learners are worsened by the lack of suitably qualified teachers, a saturated learning programme that allocates very little time to the understanding of complex programming concepts and limited class time where practical examples can be implemented with the support of the IT teacher. This research proposes that IT learners could be supported by a programming assistance tool (PAT). A PAT is a software program that can be used by novice programmers to learn how to program and/or improve their understanding of programming concepts. PATs use different techniques to assist novice programmers. The main objective of this research was to determine whether the use of a PAT impacted IT learners’ understanding of programming concepts and motivation towards programming. The literature study and feedback from IT learners and teachers were used to identify novice programming difficulties and IT learner programming difficulties, respectively. Selection criteria were derived from the programming difficulties identified. The selection criteria were grouped into three categories, namely, programming concepts, programming knowledge and programming skills. Existing PATs were evaluated using the selection criteria and three PATs, namely, RoboMind, Scratch and B#, were selected as suitable for use by IT learners. RoboMind was adapted in this research study, allowing it to support the Delphi programming language. The three PATs were evaluated by participating IT learners at four schools. The findings of this research provided no conclusive evidence that IT learners who used a PAT had a significantly better understanding of programming concepts and motivation towards programming than learners who did not use a PAT. IT learner feedback was used to identify the strengths and shortcomings of the three PATs and to provide recommendations for the development of PATs specifically to support IT learners. This research study has provided several theoretical and practical contributions, including the research design, selection criteria, adaptations to RoboMind and the evaluation of the three PATs. In addition, IT teachers and learners have been made aware of PATs and the support that can be provided by these PATs. IT teachers have also been provided with a means of selecting PATs applicable to the IT curriculum. All the research contributions have formed the basis for future work, such as improving and extending RoboMind’s functionality and support of programming concepts, the refinement of the selection criteria and, ultimately, the development of a new PAT, specifically designed to support IT learner understanding of programming concepts and motivation towards programming.
- Full Text:
The role of computational thinking in introductory computer science
- Authors: Gouws, Lindsey Ann
- Date: 2014
- Subjects: Computer science , Computational complexity , Problem solving -- Study and teaching
- Language: English
- Type: Thesis , Masters , MSc
- Identifier: vital:4690 , http://hdl.handle.net/10962/d1011152 , Computer science , Computational complexity , Problem solving -- Study and teaching
- Description: Computational thinking (CT) is gaining recognition as an important skill for students, both in computer science and other disciplines. Although there has been much focus on this field in recent years, it is rarely taught as a formal course, and there is little consensus on what exactly CT entails and how to teach and evaluate it. This research addresses the lack of resources for integrating CT into the introductory computer science curriculum. The question that we aim to answer is whether CT can be evaluated in a meaningful way. A CT framework that outlines the skills and techniques comprising CT and describes the nature of student engagement was developed; this is used as the basis for this research. An assessment (CT test) was then created to gauge the ability of incoming students, and a CT-specfic computer game was developed based on the analysis of an existing game. A set of problem solving strategies and practice activities were then recommended based on criteria defined in the framework. The results revealed that the CT abilities of first year university students are relatively poor, but that the students' scores for the CT test could be used as a predictor for their future success in computer science courses. The framework developed for this research proved successful when applied to the test, computer game evaluation, and classification of strategies and activities. Through this research, we established that CT is a skill that first year computer science students are lacking, and that using CT exercises alongside traditional programming instruction can improve students' learning experiences.
- Full Text:
A deep learning approach to classifying tyres using sidewall images
- Authors: Gifford, Dean
- Date: 2019
- Subjects: Image processing -- Digital techniques , Image processing , Computer science
- Language: English
- Type: Thesis , Masters , MSc
- Identifier: http://hdl.handle.net/10948/39720 , vital:35351
- Description: End of Life Tyres (ELT's) pose a potential health and environmental risk when dumped in illegal stockpiles. For recycling to be considered feasible, a profitable business opportunity needs to be created. One method of making the recycling process of tyres more profitable is by understanding the compounds found within each tyre. This study aims at classifying these tyres in order to achieve this knowledge. A literature review was done to investigate neural networks, convolutional neural networks as well as existing deep learning architectures for image classification. A deep learning approach was applied in order to classify the logos of tyres as these approaches have proved their success in both image classification and more specifically logo classification. Although tyre classification has been implemented in the past, a deep learning approach has not been applied and the logo has not been the classifying element in any other studies. The main difference of this study compared to previous research surrounding deep learning and logo classification is the properties of the tyre logo. Logos on tyres are very similar in colour as they are purely formed in rubber and very seldom have any colour to them. Additionally, the embossed logos can contain variation among same branded tyres due to small inconsistencies in the moulds. The implementation of this deep learning solution saw multiple convolutional neural networks implemented. Some of these architectures were also implemented using transferred learning. The metrics obtained as outputs from training and testing the architectures were the accuracy, precision, recall, and F1-score. These metrics were compared in conjunction with the confusion matrix produced from testing. To ensure that variance was accounted for in the experiments, the k-fold cross-validation technique was adopted. The results of this study identified that one convolutional neural network model, MobileNet, was particularly well suited for the context of classifying logos on tyre sidewalls. The MobileNet architecture had the highest performance metrics for both training from scratch (96.7% accuracy) and transferred learning (98.8% accuracy). Three other models performed particularly well when trained from scratch, these were a modification of the LeNet architecture, ResNet50 and InceptionV3. The transferred learning results were also impressive with four out of the 5 models achieving an accuracy above 94%. Interestingly, the ResNet50 architecture failed to train when transferred learning was applied. Contrasting to this, the two models VGG16 and VGG19 failed to train when trained from scratch but performed equally as well as the other models when transferred learning was implemented. This indicates that although transferred learning can improve the performance of models, it is highly dependent on the task as well as the model. Overall the results obtained proved that a deep learning approach could be applied in order to classify tyres accurately.
- Full Text:
Developing a Machine Learning Algorithm for Outdoor Scene Image Segmentation
- Authors: Zangwa, Yamkela
- Date: 2020
- Subjects: Computational intelligence , Computer science
- Language: English
- Type: Thesis , Masters , MSc (Computer Science )
- Identifier: http://hdl.handle.net/10353/12087 , vital:39150
- Description: Image segmentation is one of the major problems in image processing, computer vision and machine learning fields. The main reason for image segmentation existence is to reduce the gap between computer vision and human vision by training computers with different data. Outdoor image segmentation and classification has become very important in the field of computer vision with its applications in woodland-surveillance, defence and security. The task of assigning an input image to one class from a fixed set of categories seem to be a major problem in image segmentation. The main question that has been addressed in this research is how outdoor image classification algorithms can be improved using Region-based Convolutional Neural Network (R-CNN) architecture. There has been no one segmentation method that works best on any given problem. To determine the best segmentation method for a certain dataset, various tests have to be done in order to achieve the best performance. However deep learning models have often achieved increasing success due to the availability of massive datasets and the expanding model depth and parameterisation. In this research Convolutional Neural Network architecture is used in trying to improve the implementation of outdoor scene image segmentation algorithms, empirical research method was used to answer questions about existing image segmentation algorithms and the techniques used to achieve the best performance. Outdoor scene images were trained on a pre-trained region-based convolutional neural network with Visual Geometric Group-16 (VGG-16) architecture. A pre-trained R-CNN model was retrained on five different sample data, the samples had different sizes. Sample size increased from sample one to five, to increase the size on the last two samples the data was duplicated. 21 test images were used to evaluate all the models. Researchers has shown that deep learning methods perform better in image segmentation because of the increase and availability of datasets. The duplication of images did not yield the best results; however, the model performed well on the first three samples.
- Full Text:
A framework for selecting NoSQL Databases:a NetFlow use case
- Authors: Rheeder, Leon Albertus
- Date: 2018
- Subjects: Non-relational databases , Database management , Information technology , Computer science
- Language: English
- Type: Thesis , Masters , MIT
- Identifier: http://hdl.handle.net/10948/35061 , vital:33611
- Description: Making decisions regarding technology is difficult for IT practitioners, especially when they lack formal guidance. Ad hoc decisions are prone to be influenced by biases. This research study specifically considered decisions regarding NoSQL. The primary objective of this study was to develop a framework that can assist IT practitioners with decisions regarding NoSQL technologies. An investigation into typical decision-making problems encountered when having to make technology-based decisions provided an understanding of the problem context. The application context was explored through a literature study of the four NoSQL families. This study produces a framework to assist IT practitioners in making decisions regarding technology. The framework comprises two models. Firstly, a weighted decision model combines several constructs, thereby providing a general method of making decisions. Secondly, a 6-step process model that can be used to adapt the weighted decision-model to a specific type of technology and a specific use case is proposed. The feasibility and utility of the proposed framework are demonstrated by applying the framework to a NetFlow use case. If NetFlow data is to be used for analytical decision-making, the data must be stored long-term. NoSQL databases have increased in popularity, especially in decision-making contexts. Therefore, NoSQL is a logical storage choice. However, which NoSQL family to use is not self-evident. Therefore, the decision-maker may require assistance to make the right decision. To assist with this decision, the framework was adapted to be used in the NoSQL context. A set of criteria was developed to allow various NoSQL options to be uniformly compared. Furthermore, the four NoSQL families were graded based on this set of criteria. After adaptation, experts provided input regarding the requirements of the NetFlow use case. This resulted in the weighting of the criteria for this specific use case. Finally, a weighted score was calculated for each family. For the NetFlow use case, the model suggests that a document-based NoSQL database be used. The framework ensures that all NoSQL technologies are systematically investigated, thereby reducing the effect of biases. Thus, the problem identified in this study is addressed. The proposed model can also serve as a foundation for future research
- Full Text: