NotesFAQContact Us
Collection
Advanced
Search Tips
Showing all 11 results Save | Export
Peer reviewed Peer reviewed
Direct linkDirect link
Austin M. Shin; Ayaan M. Kazerouni – ACM Transactions on Computing Education, 2024
Background and Context: Students' programming projects are often assessed on the basis of their tests as well as their implementations, most commonly using test adequacy criteria like branch coverage, or, in some cases, mutation analysis. As a result, students are implicitly encouraged to use these tools during their development process (i.e., so…
Descriptors: Feedback (Response), Programming, Student Projects, Computer Software
Peer reviewed Peer reviewed
Direct linkDirect link
Yiting Wang; Tong Li; Jiahui You; Xinran Zhang; Congkai Geng; Yu Liu – ACM Transactions on Computing Education, 2025
Understanding software modelers' difficulties and evaluating their performance is crucial to Model-Driven Engineering (MDE) education. The software modeling process contains fine-grained information about the modelers' analysis and thought processes. However, existing research primarily focuses on identifying obvious issues in the software…
Descriptors: Computer Software, Engineering Education, Models, Identification
Peer reviewed Peer reviewed
Direct linkDirect link
Bolloju, Narasimha – ACM Transactions on Computing Education, 2022
Domain models in software engineering--often represented as class diagrams--depict relevant classes in a given problem domain along with necessary relationships among those classes. These models are important because they establish links between the requirements of a given system under development and the subsequent phases of the systems…
Descriptors: Models, Computer Software, Student Attitudes, Cooperation
Peer reviewed Peer reviewed
Direct linkDirect link
Diana Kirk; Andrew Luxton-Reilly; Ewan Tempero – ACM Transactions on Computing Education, 2025
Objectives: Code style is an important aspect of text-based programming because programs written with good style are considered easier to understand and change and so improve the maintainability of the delivered software product. However teaching code style is complicated by the existence of many style guides and standards that contain…
Descriptors: Computer Science Education, Programming, Computer Software, Teaching Methods
Peer reviewed Peer reviewed
Direct linkDirect link
Thomas, Paul J.; Patel, Devang; Magana, Alejandra J. – ACM Transactions on Computing Education, 2021
Software modeling is an integral practice for software engineers, especially as the complexity of software solutions increases. Unified Modeling Language (UML) is the industry standard for software modeling. however, it is often used incorrectly and misunderstood by novice software designers. This study is centered around understanding patterns of…
Descriptors: Computer Science Education, Models, Computer Software, Programming Languages
Peer reviewed Peer reviewed
Direct linkDirect link
Luburic, Nikola; Sladic, Goran; Slivka, Jelena; Milosavljevic, Branko – ACM Transactions on Computing Education, 2019
With ever-greater reliance of the developed world on information and communication technologies, constructing secure software has become a top priority. To produce secure software, security activities need to be integrated throughout the software development lifecycle. One such activity is security design analysis (SDA), which identifies security…
Descriptors: Computer Security, Case Studies, Blended Learning, Models
Peer reviewed Peer reviewed
Direct linkDirect link
Braught, Grant; MacCormick, John; Bowring, James; Burke, Quinn; Cutler, Barbara; Goldschmidt, David; Krishnamoorthy, Mukkai; Turner, Wesley; Huss-Lederman, Steven; Mackellar, Bonnie; Tucker, Allen – ACM Transactions on Computing Education, 2018
Many computer science programs have capstone experiences or project courses that allow students to integrate knowledge from the full breadth of their major. Such capstone projects may be student-designed, instructor-designed, designed in conjunction with outside companies, or integrated with ongoing free and open source (FOSS) projects. The…
Descriptors: Computer Science Education, Open Source Technology, Computer Software, Social Values
Peer reviewed Peer reviewed
Direct linkDirect link
Mitra, Sandeep – ACM Transactions on Computing Education, 2014
This article presents the use of a model-centric approach to facilitate software development projects conforming to the three-tier architecture in undergraduate software engineering courses. Many instructors intend that such projects create software applications for use by real-world customers. While it is important that the first version of these…
Descriptors: Computer Science Education, Computer Software, Models, Undergraduate Students
Peer reviewed Peer reviewed
Direct linkDirect link
Gestwicki, Paul; McNely, Brian – ACM Transactions on Computing Education, 2016
We define and describe the academic studio model for interdisciplinary, undergraduate, project-oriented education. This model brings faculty, students, and community partners together to investigate an openended academic question, and their collaboration yields an original product that represents their inquiry. The academic studio integrates agile…
Descriptors: Interdisciplinary Approach, Student Projects, Undergraduate Students, Teaching Methods
Peer reviewed Peer reviewed
Direct linkDirect link
Dolog, Peter; Thomsen, Lone Leth; Thomsen, Bent – ACM Transactions on Computing Education, 2016
Problem-Based Learning (PBL) has often been seen as an all-or-nothing approach, difficult to apply in traditional curricula based on traditional lectured courses with exercise and lab sessions. Aalborg University has since its creation in 1974 practiced PBL in all subjects, including computer science and software engineering, following a model…
Descriptors: Problem Based Learning, Teaching Methods, Computer Software, Computer Science Education
Peer reviewed Peer reviewed
Direct linkDirect link
Carro, Manuel; Herranz, Angel; Marino, Julio – ACM Transactions on Computing Education, 2013
We present an undergraduate course on concurrent programming where formal models are used in different stages of the learning process. The main practical difference with other approaches lies in the fact that the ability to develop correct concurrent software relies on a systematic transformation of formal models of inter-process interaction (so…
Descriptors: Computer Science Education, Programming, Models, Teaching Methods