Article ID | Journal | Published Year | Pages | File Type |
---|---|---|---|---|
434306 | Science of Computer Programming | 2013 | 20 Pages |
This paper presents difficulties illustrated by software development practitioners with regard to the use and understanding of concepts and principles of the object-oriented paradigm. In order to understand these difficulties and the sources from which they stem, a theoretical framework borrowed from cognitive psychology, called the dual-process theory, was used. The empirical findings, collected using tools based on the qualitative research approach and analyzed through the lens of the dual-process theory, suggest that a tension between intuitive and logical thinking modes may lead to simple mistakes software engineers exhibit when practicing object-oriented analysis and design (OOA/D). Examining the understanding of OOA/D from this perspective helps explain some of the previously documented, as well as some newly identified difficulties in learning and practicing OOA/D, as well as guide the design of future quantitative experiments to understand how prevalent these phenomena are.
► Software designers experience difficulties in basic object-oriented (OO) concepts. ► They make mistakes that contradict knowledge they evidently hold. ► A tension between intuitive and logical thinking modes may cause such mistakes. ► Surface clues, misguiding the thought process and causing tension, were identified. ► This explains, and may help overcome, difficulties in learning and practicing OO.