9,187 research outputs found
Instructional strategies and tactics for the design of introductory computer programming courses in high school
This article offers an examination of instructional strategies and tactics for the design of introductory computer programming courses in high school. We distinguish the Expert, Spiral and Reading approach as groups of instructional strategies that mainly differ in their general design plan to control students' processing load. In order, they emphasize topdown program design, incremental learning, and program modification and amplification. In contrast, tactics are specific design plans that prescribe methods to reach desired learning outcomes under given circumstances. Based on ACT* (Anderson, 1983) and relevant research, we distinguish between declarative and procedural instruction and present six tactics which can be used both to design courses and to evaluate strategies. Three tactics for declarative instruction involve concrete computer models, programming plans and design diagrams; three tactics for procedural instruction involve worked-out examples, practice of basic cognitive skills and task variation. In our evaluation of groups of instructional strategies, the Reading approach has been found to be superior to the Expert and Spiral approaches
Towards a Theory of Software Development Expertise
Software development includes diverse tasks such as implementing new
features, analyzing requirements, and fixing bugs. Being an expert in those
tasks requires a certain set of skills, knowledge, and experience. Several
studies investigated individual aspects of software development expertise, but
what is missing is a comprehensive theory. We present a first conceptual theory
of software development expertise that is grounded in data from a mixed-methods
survey with 335 software developers and in literature on expertise and expert
performance. Our theory currently focuses on programming, but already provides
valuable insights for researchers, developers, and employers. The theory
describes important properties of software development expertise and which
factors foster or hinder its formation, including how developers' performance
may decline over time. Moreover, our quantitative results show that developers'
expertise self-assessments are context-dependent and that experience is not
necessarily related to expertise.Comment: 14 pages, 5 figures, 26th ACM Joint European Software Engineering
Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE
2018), ACM, 201
Recommended from our members
Navigation in hypermedia learning systems: Experts vs. novices
With the advancement of Web technology, hypermedia learning systems are becoming more widespread in educational settings. Hypermedia learning systems present course content with non-sequential formats, so students are required to develop learning paths by themselves. Yet, empirical evidence indicates that not all students can benefit from hypermedia learning. Research into individual differences suggests that prior knowledge has significant effects on student learning in hypermedia systems, with experts and novices showing different preferences to the use of hypermedia learning systems and requiring different levels of navigation support. It is therefore essential to develop a mechanism to help designers understand the needs of experts and novices. To address this issue, this paper presents a framework to illustrate the needs of students with different levels of prior knowledge by analyzing the findings of previous research. The overall aim of this framework is to integrate students’ prior knowledge into the design of hypermedia learning systems. Finally, implications for the design of hypermedia learning systems are discussed
A reflective characterisation of occasional user
This work revisits established user classifications and aims to characterise a historically unspecified user category, the Occasional User (OU). Three user categories, novice, intermediate and expert, have dominated the work of user interface (UI) designers, researchers and educators for decades. These categories were created to conceptualise user's needs, strategies and goals around the 80s. Since then, UI paradigm shifts, such as direct manipulation and touch, along with other advances in technology, gave new access to people with little computer knowledge. This fact produced a diversification of the existing user categories not observed in the literature review of traditional classification of users. The findings of this work include a new characterisation of the occasional user, distinguished by user's uncertainty of repetitive use of an interface and little knowledge about its functioning. In addition, the specification of the OU, together with principles and recommendations will help UI community to informatively design for users without requiring a prospective use and previous knowledge of the UI. The OU is an essential type of user to apply user-centred design approach to understand the interaction with technology as universal, accessible and transparent for the user, independently of accumulated experience and technological era that users live in
Knowledge Reuse for Customization: Metamodels in an Open Design Community for 3d Printing
Theories of knowledge reuse posit two distinct processes: reuse for
replication and reuse for innovation. We identify another distinct process,
reuse for customization. Reuse for customization is a process in which
designers manipulate the parameters of metamodels to produce models that
fulfill their personal needs. We test hypotheses about reuse for customization
in Thingiverse, a community of designers that shares files for
three-dimensional printing. 3D metamodels are reused more often than the 3D
models they generate. The reuse of metamodels is amplified when the metamodels
are created by designers with greater community experience. Metamodels make the
community's design knowledge available for reuse for customization-or further
extension of the metamodels, a kind of reuse for innovation
- …