Academia.edu no longer supports Internet Explorer.
To browse Academia.edu and the wider internet faster and more securely, please take a few seconds to upgrade your browser.
1994, Journal of Object-Oriented Programming
…
9 pages
1 file
The system building process should start with a model of the relevant part of the real world, but most O-O systems work is concerned with the later stages, taking O-O languages as a given and looking at how to use them to build the system. This article discusses the origin of the object paradigm, and demonstrates the value of beginning with real-world modeling using an O-O approach.
This paper gives a schematic overview of the building of Object-Oriented systems, covering Object-Oriented Business Modeling, Information Modeling and Implementation Modeling. The components of Object-Oriented Business Models are discussed in detail, including consistent versus elementary Business models. A simple CAR-RENTAL model is used to illustrate the concepts. Next it is shown how Information Objects can be constructed around a Business Model. In contrast to earlier appraoches, the use of data stream connections between Business and Information Objects is avoided. The options for implementing Object-Oriented systems are Event-based versus Object-based. Event-based implementations can be performed on traditional technology by means of Object Dismemberment. Object-based implementations have variations on the localisation of the Business Rules. A solution package is available as an appendix.
Computing science notes, 1994
In this paper we discuss the fundamental concepts present in the object-oriented methodology. First we concentrate on the notion of an object, the key concept in this approach. A (software) object is the abstract representation of a physical or conceptual object. It consists of a name, a specified set of data-elements and methods. Data-elements can have values attached to them. Data-hiding is the feature that certain data and methods can be kept invisible (= hidden) for the outside of an object, thus facilitating its description. Only knowledge on the nature of the visible data-elements and methods is required to make proper use of the object. This is called data-abstraction. A related concept is encapsulation, a technique for achieving both data-hiding and data-abstraction. A class is a template for a number of similar objects. Classes do not prescribe values for the data-elements nor fixed implementations for their methods. A class can be seen as a set of objects that satisfy the same specification for data-elements and method-behavior. An alternative grouping of objects may take place by means of object types, as we will describe. A type is a set of objects that satisfy the same ezternai specification, i.e., specification of the visible data-elements and methods. Thus, a classification via types differs from an ordering into classes, as we shall explain. The notion of type brings along a notion of subtyping. We also discuss different forms of inheritance between classes. By means of inheritance a class can use data-and method-descriptions from another class. We describe, among other things, single inheritance, multiple inheritance and overriding. We also discuss mUltiple preferred inheritance and runtime inheritance. Finally, we show how actual programming can take place in an object oriented approach. For that we need a description of inter-object communication by means of messages. Relevant aspects are: synchronous and asynchronous message passing, scheduling and delegation. The paper concludes with an overview and a number of summarizing remarks. "'This paper originates from Marc van der Kammen's master's thesis "The logic of objects; object oriented programming in a logical perspective". It is the revised version of his chapter 0, which contains an overview of the most important basic notions concerning object-oriented programming.
Object-oriented development is expected to provide many benefits, but observations of industrial practice show that there are many problems to overcome. This paper discusses two issues: (1) The architectural issue of how to connect database, application, and screen objects. To what extent expected benefits such as seamless transition from analysis to design, improved usability, etc. can be obtained. The architectural issue appears to have a significant influence on the expected benefits.
IEEE Software, 1998
Object-oriented development is expected to provide many benefits, but observations of industrial practice show that there are many problems to overcome. This paper discusses two issues: (1) The architectural issue of how to connect database, application, and screen objects. To what extent expected benefits such as seamless transition from analysis to design, improved usability, etc. can be obtained. The architectural issue appears to have a significant influence on the expected benefits.
Colorado School of Mines. Arthur Lakes Library, 1991
ACM SIGSOFT Software Engineering Notes, 2003
Unlike other fads, the object-oriented paradigm is here to stay. The road towards an object-oriented approach is described and several object-oriented programming languages are reviewed. Since the object-oriented paradigm promised to revolutionize software development, in the 1990s, demand for object-oriented software systems increased dramatically; consequently, several methodologies have been proposed to support software development based on that paradigm. Also presented are a survey and a classification scheme for object-oriented methodologies.
Lecture Notes in Computer Science, 2003
2005
Today's large scale software systems are typically designed and implemented using the concepts of the object-oriented (OO) paradigm. However, there is still a need for existing OO languages and architectures to continuously adapt in response to demands for new features and innovative approaches. These new features, to name a few, include unanticipated software evolution, security, safety, distribution, and interoperability.
ACM SIGPLAN OOPS Messenger, 1990
We address the following questions for object-oriented programming: What is it? What are its goals? What are its origins? What are its paradigms? What are its design alternatives? What are its models of concurrency? What are its formal computational models? What comes after object-oriented programming? Starting from software engineering goals, we examine the origins and paradigms of object-oriented programming, explore its language design alternatives, consider its models of concurrency, and review its mathematical models to make them accessible to nonmathematical readers. Finally, we briefly speculate on what may come after object-oriented programming and conclude that it is a robust component-based modeling paradigm that is both effective and fundamental. This paper expands on the OOPSLA 89 keynote talk.
Loading Preview
Sorry, preview is currently unavailable. You can download the paper by clicking the button above.
Lecture Notes in Computer Science, 1993
Proceedings of the CERN School of Computing, …, 1986
conference proceedings on Object-oriented programming systems, languages, and applications - OOPSLA '92, 1992
Proceedings of the ACM Conference on Object-oriented Programming, Systems and Languages, OOPSLA'98, Vancouver, October 1998, ACM ISBN 1-58113-005, 1998
Lecture Notes in Computer Science, 1993
Sigplan Notices, 1992
Advances in Database Systems, 1994
Lecture Notes in Computer Science, 2010
International Journal of Computer Science and Informatics, 2013
Lecture Notes in Computer Science, 1999
Formal Methods for Open Object-Based Distributed Systems, 1999
Object-oriented concepts, databases, and applications, 1989
INCOSE International Symposium, 1995