One of the subjects that undergraduate students learning Object Oriented (OO) design find hard to apply is the construction of class hierarchies in general, and the use of interface classes in particular. The design process requires decomposition and reconstruction of problems in order to model software classes. The common attributes and behaviors are usually modeled using class inheritance except when the common behaviors do not belong to the same class hierarchy; in such case, an interface class is preferred. In order to be able to properly design, the designer has to demonstrate the abstraction abilities on various levels. In this study, we aimed at examining the students' demonstration of abstraction levels during design of class hierarchy in general, and whether or not they use interface classes in particular. The results of the study reveal that a majority of students were able to build a reasonable class hierarchy; however, many of them did not use interface classes as a tool for expressing common behaviors. Nevertheless, all of them could identify and choose the best solution for a particular problem among four different solutions, which included the use of interface class.
The present study examines the difficulties novice data modelers face when asked to provide a data model addressing a given problem. In order to map these difficulties and their causes, two short data modeling problems were given to 82 students who had completed an introductory course in database modeling. Both problems involve three entity sets with relationships between them, either ternary or binary. The students' solutions were classified according to the types of errors they committed. More than half of the students provided faulty solutions. After an analysis of these results, open interviews were conducted with a selected group of students in order to figure out the reasons underlying the students' erroneous decisions regarding the data model. Among the reasons for their erroneous solutions were insufficient experience, lack of reflection on their solution, and lack of immediate feedback. In addition, the authors suggest instructional modifications derived from the research results.
Executive SummaryThis study discusses and presents various strategies employed by novice programmers concerning exception handling. The main contributions of this paper are as follows: we provide an analysis tool to measure the level of assimilation of exception handling mechanism; we present and analyse strategies to handle exceptions; we present and analyse solutions provided by novice programmers; we classify and analyse the participants' reflections concerning their solutions. Modern programming languages, such as Java, provide the programmer an elaborated object oriented exception mechanism; enable him to handle exceptions in a more convenient way. The aim of this study was to discover the strategies novice programmers are using to handle exceptions and whether they utilise the advantage of the modern exception handling mechanism. For that matter the participants (college students) had to provide a written solution to a given problem with a special focus on exception handling. In addition each of them was interviewed. The analysis of the solutions provided was carried out according to a set of software quality criteria (clarity, modularity and extensibility) adapted to exception handling characteristics. These criteria were used to explain the advantages and disadvantages of the solutions from a software engineering perspective. The solutions provided were also analysed according to a classification of levels of assimilation concerning the structure of exceptions, based on the SOLO taxonomy. The first level of assimilation refers to solutions in which no exception mechanism was used, and the errors were handled in the old fashion way (local handling or return of an error code). The fifth and last level refers to solutions that used adequate hierarchy of exception classes allowing easy extension according to future requirements and enabling the handling of multiple exception altogether or handle each separately. In between these levels there are strategies that used exception mechanisms without the exhausting of its advantages. The results obtained reveal that only few participants (7 out of 56) provided a solution that was classified to one of the two highest assimilation levels, while many (23 out of 56) did not use exception mechanism at all. The rest of the students (25 out of 56) used the exception mechanism poorly (i.e., used only Exception class or did not use hierarchy of exceptions). The participants had difficulties in utilising the advanced exception handling mechanisms and in exhibiting a high level of abstraction with regard to the proper design of a hierarchy of exceptions. The students' statements collected during the interviews were classified into the following categories: misconceptions concerning code quality; misconceptions concerning exception handling; difficulties in understanding the exception handling mechanism; the perceived importance of exception handling; and a lack of programming experience. During the interviews the students provided explanations concerning the reasons they wer...
Data modeling in the context of database design is a challenging task for any database designer, even more so for novice designers. A proper database schema is a key factor for the success of any information systems, hence conceptual data modeling that yields the database schema is an essential process of the system development. However, novice designers encounter difficulties in understanding and implementing such models. This study aims to identify the difficulties in understanding and implementing data models and explore the origins of these difficulties. This research examines the data model produced by students and maps the errors done by the students. The errors were classified using the SOLO taxonomy. The study also sheds light on the underlying reasons for the errors done during the design of the data model based on interviews conducted with a representative group of the study participants. We also suggest ways to improve novice designer's performances more effectively, so they can draw more accurate models and make use of advanced design constituents such as entity hierarchies, ternary relationships, aggregated entities, and alike. The research findings might enrich the data body research on data model design from the students' perspectives.
This article presents the research related to the work integrated learning (WIL) model. The objectives were to explore their characteristics and the techniques associated with them. The focus is models linked to the IT industry or IT department in non-IT industries. A systematic literature review (SLR) was applied as the methodology. The authors collected data reported from 2006 to 2016 from eight databases. There were 24 articles which matched their search criteria. The WIL models reported can be separated into four groups. The two key features are activities created by universities, and activities offered by industry. The model techniques are knowledge, methods, and tools for acquiring research problems and developing solutions. The authors found that the models offered are very broad and need to be narrowed down so that prospective careers and the needs of the digital workforce are prioritized. They suggest future trends in WIL models in the digital economy.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
hi@scite.ai
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.