Description

In recent years, object-oriented (OO) systems development models, methods, and techniques have become pervasive. Via innovations including integration of data and behavior, encapsulation, polymorphism, and inheritance, OO continues to promise significant improvements over structured methods. However, research into OO’s effectiveness has produced equivocal results. Further, research suggests that the standard OO grammar, the Unified Modeling Language (UML), is flawed, potentially explaining why UML use is relatively low and inconsistent. Given these findings, we propose a theory that OO itself may be sub-optimal for the analysis and design of broad classes of information systems (IS), including transaction-processing and decision support. This is based on the insight that many information systems entities inherently include either behavior or data, but not both, thus bringing into question the OO assumption that everything in a problem domain should be modeled as a domain object. From this, we propose implications for practice and research.

Share

COinS
 
Aug 10th, 12:00 AM

Is Object-Orientation Optimal for Modeling Information Systems?

In recent years, object-oriented (OO) systems development models, methods, and techniques have become pervasive. Via innovations including integration of data and behavior, encapsulation, polymorphism, and inheritance, OO continues to promise significant improvements over structured methods. However, research into OO’s effectiveness has produced equivocal results. Further, research suggests that the standard OO grammar, the Unified Modeling Language (UML), is flawed, potentially explaining why UML use is relatively low and inconsistent. Given these findings, we propose a theory that OO itself may be sub-optimal for the analysis and design of broad classes of information systems (IS), including transaction-processing and decision support. This is based on the insight that many information systems entities inherently include either behavior or data, but not both, thus bringing into question the OO assumption that everything in a problem domain should be modeled as a domain object. From this, we propose implications for practice and research.