Elsevier

Journal of Systems and Software

Volume 59, Issue 2, 15 November 2001, Pages 163-179
Journal of Systems and Software

Illustrating the cognitive consequences of object-oriented systems development

https://doi.org/10.1016/S0164-1212(01)00060-7Get rights and content

Abstract

The purported “naturalness” of object-oriented (OO) approaches refers to the assertion that an alignment exists among the innate cognitive activities of system designers and the characteristics of OO system development approaches. That is, designers can think about the objects that make up the system in the same way they think about objects in the world. This fit of cognitive activities and OO characteristics appeals to many system developers. Contrary to the claim of naturalness, many students and practitioners report difficulties learning and using OO techniques. To understand why OO approaches seem to be difficult to learn and use, we illustrate the consistency of common characteristics of OO techniques and the cognitive activities of systems designers. A group of graduate students identified 148 beliefs, facts, and ideas pertaining to OO complexity. Researchers classified each item in terms of the abstraction, communication, problem-orientation, and shared behavior characteristics common to OO approaches. Then classified each item in terms of the problem understanding, problem decomposition, and design solution cognitive activities. The consistency of the two classifications confirms that claims are supported by usage. However, it seems that methodology and project management are part of the task of developing information systems (ISs) that are not adequately addressed by OO approaches.

Introduction

Claims about the naturalness and usefulness of object-oriented (OO) techniques are driving their adoption by information systems (ISs) organizations (Booch, 1994; Coad and Yourdon, 1991a, Coad Yourdon, 1991b). Researchers suggest that the abstraction, communication, problem-orientation, and shared behavior characteristics of OO methods can facilitate the creation of a computational representation that matches closely the problem domain (Rosson and Alpert, 1990; Rosson and Gold, 1989). Naturalness refers to the consistency of these common OO characteristics with designers' innate problem solving activities.

Research on the cognitive activities of experienced software designers shows that these activities include problem understanding, problem decomposition, and design solution (Guindon, 1990; Rosson et al., 1988). Based on the identified activities, a rationale for the cognitive consequences of OO design has been proposed (Rosson and Alpert, 1990). The common characteristics of OO methods (abstraction, communication, problem-orientation, and shared behavior) were suggested to complement the understanding, decomposing, and solving cognitive activities of software designers.

Despite claims of naturalness, both students and experienced developers report difficulties in learning and using OO techniques. Adopters are cautioned that the scope of organizational change required by OO, the cognitive load of OO environments, and complexity of the techniques are factors contributing to these difficulties (Fichman and Kemerer, 1993; Rosson and Carroll, 1990; Vessey and Conger, 1994). Similarly, system users also report difficulties understanding OO analyses (Moynihan, 1996).

It seems contradictory that a “natural” approach is difficult to learn. Presumably, designers already have the innate cognitive activities and know how to use them, so learning OO approaches should be a simple matter of recognizing the need for and applying familiar patterns. So, where does the problem of learning originate, in the claims of naturalness or in the usage of OO techniques. This leads to the following question:

Why are so-called natural OO approaches difficult to learn?

Understanding what is difficult about learning OO techniques requires investigating the perceptions of designers that recently learned OO techniques. Evaluating these perceptions in terms of the OO characteristics and cognitive activities allows observation of the consistency of OO characteristics and cognitive activities.

It is this observation that is of interest when defining the “naturalness” of OO systems. The expression of OO characteristics in terms of cognitive activities reveals the match (or mismatch) that may indicate reasons for difficulties in learning and/or imply techniques for controlling these difficulties.

Section snippets

Review of literature

Understanding the cognitive activities of system designers has been an area of interest to researchers over three decades. Several models that describe the cognitive activities of design have been proposed over the years (Brooks, 1977; Malhotra et al., 1980; Kant and Newell, 1984; Guindon et al., 1987; Rosson and Alpert, 1990). These models can be represented as consisting of three cognitive activities including problem understanding, problem decomposition, and solution specification. A primary

Research model

The key contribution of Rosson and Alpert (1990) is the relationships among the OO characteristics and cognitive activities they propose and logically support. Starting with the cognitive activities of problem understanding, problem decomposition, and solution they describe how the OO characteristics of abstraction, communication, shared behavior, and polymorphism support the cognitive activities. The relationships they identify are summarized in Fig. 1. For example, the decomposition cognitive

Methodology

The procedures used for investigating the relationships in Fig. 1 and assessing the relative importance and interaction of the activities and OO characteristics consisted of four steps. First, the participants' perceptions about what they believed was difficult about OO techniques were collected. Second, their perceptions were classified in terms of the problem understanding, decomposition, and solution cognitive activities. Third, their perceptions were classified in terms of the abstraction,

Results

Participants identified 148 concepts in the electronic brainstorming session. They identified 10 categories that grouped the concepts in terms of the similarity of the ideas and issues represented in the words and phrases. They each placed each concept in one of the categories. Most concepts – 80% (118) – were placed in one of the ten categories by a majority (four or more) of the participants. Moderate agreement existed among the individual classifications, K(Kappa)=0.50,Z=69.23 p<0.001 (

Discussion

The results were consistent with expected cognitive consequences of OO design (Rosson and Alpert, 1990). Looking at the concepts and categories in the characteristics and activities implies how OO techniques can be perceived as natural, yet be difficult to learn. In this section, we discuss the results from the perspective of the consistency of the cognitive activities with the OO characteristics and we suggest implications for teaching, research, and practice.

Conclusions and future research

There are two primary conclusions from this research. First, as expected, the cognitive activities and OO characteristics classifications are consistent, i.e., they have a high degree of overlap. However, the association of multiple cognitive activities with a single OO characteristic, implying a lack of fit, contradicts the genuine high level fit implied from an overview perspective. This may interfere with learning OO techniques and cause students to report difficulty. So, OO techniques are

Steven D. Sheetz is an Assistant Professor of Information Systems at the Pamplin College of Business at Virginia Tech. He received his BSc in Computer Science from Texas Tech University in 1984 and Ph.D. in Information Systems from the University of Colorado in 1996. He has years of industry experience in database design and systems development. His research interests include the cognitive complexity of developing information systems, learning and use of Object-Oriented development techniques,

References (30)

  • P. Coad et al.

    Object-Oriented Analysis

    (1991)
  • P. Coad et al.

    Object-Oriented Design

    (1991)
  • Dalkey, N., Rourke, D., 1971. Experimental assessment of Delphi procedures with group value judgments, R-612-ARPA. RAND...
  • C. Eden et al.

    The analysis of cause maps

    Journal of Management Studies

    (1992)
  • C.W. Emory et al.

    Business Research Methods

    (1991)
  • Cited by (8)

    • A 3D Metaphor for Software Code Visualization to Help Students to learn Object-Oriented Concepts

      2021, Proceedings - 2021 9th International Conference in Software Engineering Research and Innovation, CONISOFT 2021
    • Literature based modeling learning: An imaginative assignment to learn software modeling

      2020, Proceedings - 2020 8th Edition of the International Conference in Software Engineering Research and Innovation, CONISOFT 2020
    View all citing articles on Scopus

    Steven D. Sheetz is an Assistant Professor of Information Systems at the Pamplin College of Business at Virginia Tech. He received his BSc in Computer Science from Texas Tech University in 1984 and Ph.D. in Information Systems from the University of Colorado in 1996. He has years of industry experience in database design and systems development. His research interests include the cognitive complexity of developing information systems, learning and use of Object-Oriented development techniques, participatory design, and the application of Group Support Systems technology. He has published articles in the Journal of Management Information Systems, Decision Support Systems, and Object-Oriented Systems.

    David P. Tegarden is an Associate Professor in Information Systems in the Pamplin College of Business and a Fellow in the Center for Human-Computer Interaction at Virginia Tech. He received a Ph.D. in Information Systems from the University of Colorado in 1991. His current research emphases are in the areas of object-oriented software engineering, the development of cognitively-based software complexity measurements, psychology of programming, and the application of virtual reality and visualization technologies in business. He has published articles in Object-Oriented Systems, Journal of Management Information Systems, Decision Support Systems, and Software Quality Journal.

    View full text