• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 54
  • 8
  • 8
  • 1
  • Tagged with
  • 87
  • 87
  • 87
  • 87
  • 26
  • 23
  • 16
  • 14
  • 13
  • 13
  • 12
  • 12
  • 12
  • 10
  • 9
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
81

Linguagem e compilador para o paradigma orientado a notificações: avanços para facilitar a codificação e sua validação em uma aplicação de controle de futebol de robôs / Language and compiler for the notification-oriented paradigm: advances to facilitate coding and its validation in a robot control soccer application

Santos, Leonardo Araujo 31 March 2017 (has links)
As técnicas de programação baseadas no Paradigma Imperativo (PI) e Paradigma Declarativo (PD) apresentam limitações como redundâncias e acoplamentos, os quais podem prejudicar desenvolvimento e execução de softwares. Visando solucionar algumas das deficiências desses paradigmas de programação surgiu o Paradigma Orientado a Notificações (PON), o qual apresenta uma nova forma de realizar avaliações lógico-causais. Isto é realizado através de entidades computacionais de pequeno porte, reativas e desacopladas que colaboram por meio de notificações pontuais. O PON foi originalmente materializado na forma de um Framework, implementado na linguagem de programação C++. Este foi projetado de forma a fornecer interfaces de alto nível que facilitassem o desenvolvimento de aplicações PON. Entretanto, internamente o Framework usa estruturas de dados que induzem a uma sobrecarga de processamento computacional e consequente prejuízo ao desempenho das aplicações. Visando solucionar esse problema, uma linguagem de programação específica para o PON, nomeada LingPON, e respectivo compilador foram criados recentemente. Entretanto, em um primeiro esforço, apenas algumas poucas e simples aplicações PON foram criadas utilizando a LingPON, fato este que não permite sua consolidação mais efetiva. Isso se deve principalmente a algumas limitações que existem na atual versão da linguagem, as quais dificultam o desenvolvimento de aplicações complexas que solucionem problemas realísticos. Neste sentido, este trabalho propõe uma nova versão da LingPON (versão 1.2), baseada em agregações de entidades, na qual é possível criar aplicações complexas de forma mais fácil e direta. Os avanços são validados por meio do desenvolvimento de um \textit{software}, utilizando a LingPON (versão 1.0 e 1.2), para algo reconhecidamente complexo. O \textit{software em questão trata do controle para partidas de futebol de robôs (Robocup). Ao final, o software desenvolvido utilizando o LingPON é comparado quantitativamente e qualitativamente com um software equivalente desenvolvido o utilizando o Framework PON 2.0 e outro software equivalente desenvolvido com o Paradigma Orientado a Objetos utilizando a linguagem de programação C++ (este programado por outrem). Os resultados obtidos mostraram que ao utilizar a nova versão da LingPON, apresentada neste trabalho, é possível desenvolver aplicações PON de forma mais simples e com menor esforço. Ademais, as aplicações PON desenvolvidas apresentaram maior facilidade de manutenção quando comparadas a aplicação PI. Esses resultados obtidos, com o desenvolvimento de uma aplicação conhecidamente complexa utilizando a nova versão da LingPON, vêm ao encontro de colaborar na demonstração de propriedades previstas na própria teoria do PON. / Programming techniques based on the Imperative Paradigm (PI) and Declarative Paradigm (PD) have limitations such as redundancies and couplings, which may hamper the development and execution of software. In order to solve some of the deficiencies of these programming paradigms, the Notification Oriented Paradigm (NOP) has emerged, which presents a new way of performing logical/cause revisions. This is accomplished through small, reactive and decoupled computational entities that collaborate through timely notifications. The NOP was originally materialized in the form of a Framework, implemented in the C++ programming language. It is designed to provide high-level interfaces that facilitate the development of NOP applications. However, internally the Framework has data structures that induce an overhead of computational processing and consequent damage to the performance of the applications. In order to address this problem, a specific programming language for the NOP, named LingPON, and its compiler have been created recently. However, only a few, simple, NOP applications were created using LingPON, which does not allow its more effective consolidation. This is essentially for some limitations that exist in the current language version, as well as difficulties in developing complex applications that solve real problems. In this sense, this work proposes a new version of LingPON (version 1.2), with new features such as aggregations of entities, allowing an easier and more direct development of complex applications. The advances are validated by developing a more complex software using LingPON (version 1.0 and 1.2). The software in question deals with the autonomous control for soccer playing robots (Robocup). In the end, software developed using LingPON is compared quantitatively and qualitatively with equivalent software developed using the NOP 2.0 Framework and other equivalent software developed with the Object Oriented Paradigm using a C++ programming language (this one programmed by others). The results show that the use of the new version of LingPON, presented here, allows an easier development of NOP applications. Also, that the developed application was easier to maintain when compared to the PI application. These results, with the development of a known complex application using a new version of LingPON, allows the demonstration of the properties expected in the NOP theory itself.
82

Adaptação do paradigma orientado a notificações para desenvolvimento de sistemas fuzzy / Adaptation of the notification oriented paradigm for the development of fuzzy systems

Melo, Luiz Carlos Viana 26 August 2016 (has links)
Este trabalho trata do tema de Paradigma Orientado a Notificações (PON) e sua adequação para prover suporte a conceitos fuzzy. O PON se inspira em elementos dos paradigmas imperativo e declarativo, buscando resolver inconvenientes de ambos. Ao decompor uma aplicação em uma rede de entidades computacionais menores que são executadas apenas quando necessário, o PON elimina a necessidade de realizar computações desnecessárias e alcança melhor desacoplamento lógico-causal facilitando o reaproveitamento e distribuição. Ademais, o PON permite expressar o seu conhecimento lógico-causal em alto nível, por meio de regras no formato SE-ENTÃO. Os sistemas fuzzy, por sua vez, realizam inferências em bases de conhecimento lógico-causal (regras SE-ENTÃO) que lidam com problemas que envolvem imprecisão. Uma vez que o PON utiliza regras SE-ENTÃO de uma forma alternativa, reduzindo avaliações redundantes e acoplamento, este trabalho foi realizado para identificar, propor e avaliar as mudanças necessárias a serem realizadas sobre o PON para que este possa ser utilizado no desenvolvimento de sistemas fuzzy. Após a realização da proposta, foram criadas materializações na forma de um framework em linguagem C++, e uma linguagem de programação própria (LingPONFuzzy) com suporte a inferência fuzzy. A partir delas foram criados casos de estudo e realizados diversos testes para validar a solução proposta. Os resultados dos testes mostram uma redução significativa no número de regras avaliadas em relação a um sistema fuzzy desenvolvido utilizando ferramentas convencionais (frameworks), o que poderia representar uma melhoria no desempenho das aplicações. / This work proposes to adjust the Notification Oriented Paradigm (NOP) so that it provides support to fuzzy concepts. NOP is inspired by elements of imperative and declarative paradigms, seeking to solve some of the drawbacks of both. By decomposing an application into a network of smaller computational entities that are executed only when necessary, NOP eliminates the need to perform unnecessary computations and helps to achieve better logical-causal uncoupling, facilitating code reuse and application distribution over multiple processors or machines. In addition, NOP allows to express the logical-causal knowledge at a high level of abstraction, through rules in IF-THEN format. Fuzzy systems, in turn, perform logical inferences on causal knowledge bases (IF-THEN rules) that can deal with problems involving uncertainty. Since PON uses IF-THEN rules in an alternative way, reducing redundant evaluations and providing better decoupling, this research has been carried out to identify, propose and evaluate the necessary changes to be made on NOP allowing to be used in the development of fuzzy systems. After that, two fully usable materializations were created: a C++ framework, and a complete programming language (LingPONFuzzy) that provide support to fuzzy inference systems. From there study cases have been created and several tests cases were conducted, in order to validate the proposed solution. The test results have shown a significant reduction in the number of rules evaluated in comparison to a fuzzy system developed using conventional tools (frameworks), which could represent an improvement in performance of the applications.
83

Linguagem e compilador para o paradigma orientado a notificações (PON): avanços e comparações

Ferreira, Cleverson Avelino 28 August 2015 (has links)
Atuais paradigmas correntes de programação de software, mais precisamente o Paradigma Imperativo (PI) e o Paradigma Declarativo (PD), apresentam deficiências que afetam o desempenho das aplicações e a obtenção de “desacoplamento” (ou acoplamento mínimo) entre elementos de software. Com o objetivo de amenizar essas deficiências, foi desenvolvido o Paradigma Orientado a Notificações (PON). O PON se inspira nos conceitos do PI (e.g. objetos) e do PD (e.g. base de fatos e regras), mas altera a essência da execução ou inferência lógica-causal. Basicamente, o PON usa objetos para tratar de fatos e regras na forma de composições de outros objetos menores que, entretanto, apresentam características comportamentais de certa autonomia, independência, reatividade e colaboração por meio de notificações pontuais para fins de inferência. Isto dito, salienta-se que a materialização dos conceitos do PON se deu por meio de um arquétipo ou Framework elaborado em linguagem de programação C++. Tal materialização do PON vem sendo utilizada como uma alternativa para o desenvolvimento de aplicações sob o domínio desse paradigma e possibilitou, de fato, a criação de aplicações para ambientes computacionais usuais baseados na chamada arquitetura Von Neumann. Apesar destas contribuições para com a sua materialização, o desenvolvimento de aplicações no PON ainda não apresentava resultados satisfatórios em termos de desempenho tal qual deveria a luz do seu cálculo assintótico, nem a facilidade de programação que seria uma das suas características principais. Nesse âmbito, o presente trabalho propõe como evolução para o estado da técnica do PON a criação de uma linguagem e compilador para o paradigma. Sendo assim, este trabalho apresenta a definição da linguagem criada com a utilização de exemplos práticos guiados pelo desenvolvimento de aplicações. Subsequentemente são apresentados detalhes do compilador bem como sua estrutura. Para demonstrar a evolução do estado da técnica do paradigma, no tocante a desempenho (e.g. tempo de processamento) e facilidade de programação foram realizados estudos comparativos com a utilização da linguagem e compilador. Os estudos comparativos foram guiados com a elaboração de dois softwares denominados aplicação Mira ao Alvo e aplicação de Vendas. Essas aplicações foram desenvolvidas com base na linguagem PON e foram realizados experimentos simulando sequências de execução com o intuito de avaliar o tempo de processamento para o resultado gerado pelo compilador PON. Ainda, tais experimentos possibilitaram a avaliação de maneira subjetiva da linguagem de programação PON no tocante a facilidade de programação. Deste modo, foi possível observar com tais estudos comparativos que os resultados apresentados pelo compilador PON foram satisfatórios quando comparados aos resultados obtidos pelo Framework e por aplicações equivalentes desenvolvidas baseadas no Paradigma Orientado a Objetos (POO). / The current software development paradigms, specifically the Imperative Paradigm (IP) and the Declarative Paradigm (DP), have weaknesses that affect the applications performance and decoupling (or minimal coupling) between the software modules. In order to provide a solution regarding these weaknesses, the Notification Oriented Paradigm (NOP) was developed. NOP is inspired by the concepts of the IP (e.g. objects) and DP (e.g. base of facts and Rules). Basically, NOP uses objects to deal with facts and Rules as compositions of other, smaller, objects. These objects have the following behavioral characteristics: autonomy, independence, responsiveness and collaboration through notifications. Thus, it’s highlighted that the realization of these concepts was firstly instantiated through a Framework developed in C++. Such NOP materialization has been used as an alternative for Application development in the domain of this paradigm and made possible, in fact, the creation of applications for typical computing environments based on Von Neumann architecture. The development of the C++ materialization of NOP has not presented satisfactory results in terms of performance as it should when taking into account its asymptotic calculation and programming facility. In this context, this work presents an evolution of NOP by creating a specific programming language, and its respective compiler, for this paradigm. Therefore, this work presents the language definition and the details of the development of its compiler. To evaluate the evolution regarding to performance (e.g. processing time) and programming facility, some comparative studies using the NOP language and compiler are presented. These comparative studies were performed by developing two software applications called Target and Sales Application. These applications have been developed based on NOP language, and the experiments were performed simulating sequences of execution in order to evaluate the processing time for the generated results by NOP compiler. Still, these experiments allowed the evaluation of NOP programming language, in a subjective way, regarding to ease programming. Thus, with such comparative studies, it was possible to observe that the results presented by the compiler NOP were satisfactory when compared to the results achieved via Framework and for equivalent applications developed based on the Oriented Object Paradigm (OOP).
84

Linguagem e compilador para o paradigma orientado a notificações: avanços para facilitar a codificação e sua validação em uma aplicação de controle de futebol de robôs / Language and compiler for the notification-oriented paradigm: advances to facilitate coding and its validation in a robot control soccer application

Santos, Leonardo Araujo 31 March 2017 (has links)
As técnicas de programação baseadas no Paradigma Imperativo (PI) e Paradigma Declarativo (PD) apresentam limitações como redundâncias e acoplamentos, os quais podem prejudicar desenvolvimento e execução de softwares. Visando solucionar algumas das deficiências desses paradigmas de programação surgiu o Paradigma Orientado a Notificações (PON), o qual apresenta uma nova forma de realizar avaliações lógico-causais. Isto é realizado através de entidades computacionais de pequeno porte, reativas e desacopladas que colaboram por meio de notificações pontuais. O PON foi originalmente materializado na forma de um Framework, implementado na linguagem de programação C++. Este foi projetado de forma a fornecer interfaces de alto nível que facilitassem o desenvolvimento de aplicações PON. Entretanto, internamente o Framework usa estruturas de dados que induzem a uma sobrecarga de processamento computacional e consequente prejuízo ao desempenho das aplicações. Visando solucionar esse problema, uma linguagem de programação específica para o PON, nomeada LingPON, e respectivo compilador foram criados recentemente. Entretanto, em um primeiro esforço, apenas algumas poucas e simples aplicações PON foram criadas utilizando a LingPON, fato este que não permite sua consolidação mais efetiva. Isso se deve principalmente a algumas limitações que existem na atual versão da linguagem, as quais dificultam o desenvolvimento de aplicações complexas que solucionem problemas realísticos. Neste sentido, este trabalho propõe uma nova versão da LingPON (versão 1.2), baseada em agregações de entidades, na qual é possível criar aplicações complexas de forma mais fácil e direta. Os avanços são validados por meio do desenvolvimento de um \textit{software}, utilizando a LingPON (versão 1.0 e 1.2), para algo reconhecidamente complexo. O \textit{software em questão trata do controle para partidas de futebol de robôs (Robocup). Ao final, o software desenvolvido utilizando o LingPON é comparado quantitativamente e qualitativamente com um software equivalente desenvolvido o utilizando o Framework PON 2.0 e outro software equivalente desenvolvido com o Paradigma Orientado a Objetos utilizando a linguagem de programação C++ (este programado por outrem). Os resultados obtidos mostraram que ao utilizar a nova versão da LingPON, apresentada neste trabalho, é possível desenvolver aplicações PON de forma mais simples e com menor esforço. Ademais, as aplicações PON desenvolvidas apresentaram maior facilidade de manutenção quando comparadas a aplicação PI. Esses resultados obtidos, com o desenvolvimento de uma aplicação conhecidamente complexa utilizando a nova versão da LingPON, vêm ao encontro de colaborar na demonstração de propriedades previstas na própria teoria do PON. / Programming techniques based on the Imperative Paradigm (PI) and Declarative Paradigm (PD) have limitations such as redundancies and couplings, which may hamper the development and execution of software. In order to solve some of the deficiencies of these programming paradigms, the Notification Oriented Paradigm (NOP) has emerged, which presents a new way of performing logical/cause revisions. This is accomplished through small, reactive and decoupled computational entities that collaborate through timely notifications. The NOP was originally materialized in the form of a Framework, implemented in the C++ programming language. It is designed to provide high-level interfaces that facilitate the development of NOP applications. However, internally the Framework has data structures that induce an overhead of computational processing and consequent damage to the performance of the applications. In order to address this problem, a specific programming language for the NOP, named LingPON, and its compiler have been created recently. However, only a few, simple, NOP applications were created using LingPON, which does not allow its more effective consolidation. This is essentially for some limitations that exist in the current language version, as well as difficulties in developing complex applications that solve real problems. In this sense, this work proposes a new version of LingPON (version 1.2), with new features such as aggregations of entities, allowing an easier and more direct development of complex applications. The advances are validated by developing a more complex software using LingPON (version 1.0 and 1.2). The software in question deals with the autonomous control for soccer playing robots (Robocup). In the end, software developed using LingPON is compared quantitatively and qualitatively with equivalent software developed using the NOP 2.0 Framework and other equivalent software developed with the Object Oriented Paradigm using a C++ programming language (this one programmed by others). The results show that the use of the new version of LingPON, presented here, allows an easier development of NOP applications. Also, that the developed application was easier to maintain when compared to the PI application. These results, with the development of a known complex application using a new version of LingPON, allows the demonstration of the properties expected in the NOP theory itself.
85

Adaptação do paradigma orientado a notificações para desenvolvimento de sistemas fuzzy / Adaptation of the notification oriented paradigm for the development of fuzzy systems

Melo, Luiz Carlos Viana 26 August 2016 (has links)
Este trabalho trata do tema de Paradigma Orientado a Notificações (PON) e sua adequação para prover suporte a conceitos fuzzy. O PON se inspira em elementos dos paradigmas imperativo e declarativo, buscando resolver inconvenientes de ambos. Ao decompor uma aplicação em uma rede de entidades computacionais menores que são executadas apenas quando necessário, o PON elimina a necessidade de realizar computações desnecessárias e alcança melhor desacoplamento lógico-causal facilitando o reaproveitamento e distribuição. Ademais, o PON permite expressar o seu conhecimento lógico-causal em alto nível, por meio de regras no formato SE-ENTÃO. Os sistemas fuzzy, por sua vez, realizam inferências em bases de conhecimento lógico-causal (regras SE-ENTÃO) que lidam com problemas que envolvem imprecisão. Uma vez que o PON utiliza regras SE-ENTÃO de uma forma alternativa, reduzindo avaliações redundantes e acoplamento, este trabalho foi realizado para identificar, propor e avaliar as mudanças necessárias a serem realizadas sobre o PON para que este possa ser utilizado no desenvolvimento de sistemas fuzzy. Após a realização da proposta, foram criadas materializações na forma de um framework em linguagem C++, e uma linguagem de programação própria (LingPONFuzzy) com suporte a inferência fuzzy. A partir delas foram criados casos de estudo e realizados diversos testes para validar a solução proposta. Os resultados dos testes mostram uma redução significativa no número de regras avaliadas em relação a um sistema fuzzy desenvolvido utilizando ferramentas convencionais (frameworks), o que poderia representar uma melhoria no desempenho das aplicações. / This work proposes to adjust the Notification Oriented Paradigm (NOP) so that it provides support to fuzzy concepts. NOP is inspired by elements of imperative and declarative paradigms, seeking to solve some of the drawbacks of both. By decomposing an application into a network of smaller computational entities that are executed only when necessary, NOP eliminates the need to perform unnecessary computations and helps to achieve better logical-causal uncoupling, facilitating code reuse and application distribution over multiple processors or machines. In addition, NOP allows to express the logical-causal knowledge at a high level of abstraction, through rules in IF-THEN format. Fuzzy systems, in turn, perform logical inferences on causal knowledge bases (IF-THEN rules) that can deal with problems involving uncertainty. Since PON uses IF-THEN rules in an alternative way, reducing redundant evaluations and providing better decoupling, this research has been carried out to identify, propose and evaluate the necessary changes to be made on NOP allowing to be used in the development of fuzzy systems. After that, two fully usable materializations were created: a C++ framework, and a complete programming language (LingPONFuzzy) that provide support to fuzzy inference systems. From there study cases have been created and several tests cases were conducted, in order to validate the proposed solution. The test results have shown a significant reduction in the number of rules evaluated in comparison to a fuzzy system developed using conventional tools (frameworks), which could represent an improvement in performance of the applications.
86

Linguagem e compilador para o paradigma orientado a notificações (PON): avanços e comparações

Ferreira, Cleverson Avelino 28 August 2015 (has links)
Atuais paradigmas correntes de programação de software, mais precisamente o Paradigma Imperativo (PI) e o Paradigma Declarativo (PD), apresentam deficiências que afetam o desempenho das aplicações e a obtenção de “desacoplamento” (ou acoplamento mínimo) entre elementos de software. Com o objetivo de amenizar essas deficiências, foi desenvolvido o Paradigma Orientado a Notificações (PON). O PON se inspira nos conceitos do PI (e.g. objetos) e do PD (e.g. base de fatos e regras), mas altera a essência da execução ou inferência lógica-causal. Basicamente, o PON usa objetos para tratar de fatos e regras na forma de composições de outros objetos menores que, entretanto, apresentam características comportamentais de certa autonomia, independência, reatividade e colaboração por meio de notificações pontuais para fins de inferência. Isto dito, salienta-se que a materialização dos conceitos do PON se deu por meio de um arquétipo ou Framework elaborado em linguagem de programação C++. Tal materialização do PON vem sendo utilizada como uma alternativa para o desenvolvimento de aplicações sob o domínio desse paradigma e possibilitou, de fato, a criação de aplicações para ambientes computacionais usuais baseados na chamada arquitetura Von Neumann. Apesar destas contribuições para com a sua materialização, o desenvolvimento de aplicações no PON ainda não apresentava resultados satisfatórios em termos de desempenho tal qual deveria a luz do seu cálculo assintótico, nem a facilidade de programação que seria uma das suas características principais. Nesse âmbito, o presente trabalho propõe como evolução para o estado da técnica do PON a criação de uma linguagem e compilador para o paradigma. Sendo assim, este trabalho apresenta a definição da linguagem criada com a utilização de exemplos práticos guiados pelo desenvolvimento de aplicações. Subsequentemente são apresentados detalhes do compilador bem como sua estrutura. Para demonstrar a evolução do estado da técnica do paradigma, no tocante a desempenho (e.g. tempo de processamento) e facilidade de programação foram realizados estudos comparativos com a utilização da linguagem e compilador. Os estudos comparativos foram guiados com a elaboração de dois softwares denominados aplicação Mira ao Alvo e aplicação de Vendas. Essas aplicações foram desenvolvidas com base na linguagem PON e foram realizados experimentos simulando sequências de execução com o intuito de avaliar o tempo de processamento para o resultado gerado pelo compilador PON. Ainda, tais experimentos possibilitaram a avaliação de maneira subjetiva da linguagem de programação PON no tocante a facilidade de programação. Deste modo, foi possível observar com tais estudos comparativos que os resultados apresentados pelo compilador PON foram satisfatórios quando comparados aos resultados obtidos pelo Framework e por aplicações equivalentes desenvolvidas baseadas no Paradigma Orientado a Objetos (POO). / The current software development paradigms, specifically the Imperative Paradigm (IP) and the Declarative Paradigm (DP), have weaknesses that affect the applications performance and decoupling (or minimal coupling) between the software modules. In order to provide a solution regarding these weaknesses, the Notification Oriented Paradigm (NOP) was developed. NOP is inspired by the concepts of the IP (e.g. objects) and DP (e.g. base of facts and Rules). Basically, NOP uses objects to deal with facts and Rules as compositions of other, smaller, objects. These objects have the following behavioral characteristics: autonomy, independence, responsiveness and collaboration through notifications. Thus, it’s highlighted that the realization of these concepts was firstly instantiated through a Framework developed in C++. Such NOP materialization has been used as an alternative for Application development in the domain of this paradigm and made possible, in fact, the creation of applications for typical computing environments based on Von Neumann architecture. The development of the C++ materialization of NOP has not presented satisfactory results in terms of performance as it should when taking into account its asymptotic calculation and programming facility. In this context, this work presents an evolution of NOP by creating a specific programming language, and its respective compiler, for this paradigm. Therefore, this work presents the language definition and the details of the development of its compiler. To evaluate the evolution regarding to performance (e.g. processing time) and programming facility, some comparative studies using the NOP language and compiler are presented. These comparative studies were performed by developing two software applications called Target and Sales Application. These applications have been developed based on NOP language, and the experiments were performed simulating sequences of execution in order to evaluate the processing time for the generated results by NOP compiler. Still, these experiments allowed the evaluation of NOP programming language, in a subjective way, regarding to ease programming. Thus, with such comparative studies, it was possible to observe that the results presented by the compiler NOP were satisfactory when compared to the results achieved via Framework and for equivalent applications developed based on the Oriented Object Paradigm (OOP).
87

Hindrances to learning to program in an introductory programmimg module

Marokane, Thomas Selakane January 2017 (has links)
Introductory programming failure rate among students is high worldwide, including in South Africa. The failure rate remains a subject for investigation due to a high number of students who find learning to program difficult. This study evaluates factors that contribute to high failure rates in an introductory programming module at University of South Africa. The study evaluates curriculum, programming syllabus, and personal factors to evaluate reasons for high failure rates. Quantitative and qualitative research approaches are used to identify learning hindrances. The research results show that personal factors are the leading contributing factors, followed by the curriculum and then the programming syllabus. Personal factors relate to time, personal reasons, and commitments; curriculum involves tutorials; and programming syllabus factors are linked to programming concepts and application. The findings have implications for how teaching and learning in introductory programming can be improved. The study provides recommendations for improvement and future studies. Keywords: Learn to program; introductory programming; higher learning; personal / School of Computing / M. Tech (Information Technology)

Page generated in 0.0939 seconds