scispace - formally typeset
Search or ask a question
Topic

Object-oriented design

About: Object-oriented design is a research topic. Over the lifetime, 5136 publications have been published within this topic receiving 144108 citations.


Papers
More filters
Proceedings ArticleDOI
25 Mar 1996
TL;DR: Data obtained in this experiment show how OO design mechanisms such as inheritance, polymorphism, information hiding and coupling, can influence quality characteristics like reliability or maintainability.
Abstract: Describes the results of a study where the impact of object-oriented (OO) design on software quality characteristics is experimentally evaluated. A suite of Metrics for OO Design (MOOD) was adopted to measure the use of OO design mechanisms. Data collected on the development of eight small-sized information management systems based on identical requirements were used to assess the referred impact. Data obtained in this experiment show how OO design mechanisms such as inheritance, polymorphism, information hiding and coupling, can influence quality characteristics like reliability or maintainability. Some predictive models based on OO design metrics are also presented.

320 citations

Proceedings ArticleDOI
01 Jan 1999
TL;DR: This work introduces a framework for recognizing actions and objects by measuring image-, object- and action-based information from video, which is appropriate for locating and classifying objects under a variety of conditions including full occlusion.
Abstract: Our goal is to exploit human motion and object context to perform action recognition and object classification. Towards this end, we introduce a framework for recognizing actions and objects by measuring image-, object- and action-based information from video. Hidden Markov models are combined with object context to classify hand actions, which are aggregated by a Bayesian classifier to summarize activities. We also use Bayesian methods to differentiate the class of unknown objects by evaluating detected actions along with low-level, extracted object features. Our approach is appropriate for locating and classifying objects under a variety of conditions including full occlusion. We show experiments where both familiar and previously unseen objects are recognized using action and context information.

319 citations

Journal ArticleDOI
TL;DR: The proposed methodology can be regarded as a semi-automatic approach since the designer will eventually decide whether a suggested refactoring should be applied or not based on conceptual or other design quality criteria.
Abstract: Placement of attributes/methods within classes in an object-oriented system is usually guided by conceptual criteria and aided by appropriate metrics. Moving state and behavior between classes can help reduce coupling and increase cohesion, but it is nontrivial to identify where such refactorings should be applied. In this paper, we propose a methodology for the identification of Move Method refactoring opportunities that constitute a way for solving many common feature envy bad smells. An algorithm that employs the notion of distance between system entities (attributes/methods) and classes extracts a list of behavior-preserving refactorings based on the examination of a set of preconditions. In practice, a software system may exhibit such problems in many different places. Therefore, our approach measures the effect of all refactoring suggestions based on a novel entity placement metric that quantifies how well entities have been placed in system classes. The proposed methodology can be regarded as a semi-automatic approach since the designer will eventually decide whether a suggested refactoring should be applied or not based on conceptual or other design quality criteria. The evaluation of the proposed approach has been performed considering qualitative, metric, conceptual, and efficiency aspects of the suggested refactorings in a number of open-source projects.

318 citations

Book ChapterDOI
26 Jul 1993
TL;DR: This paper introduces Abstract Communication Types (ACTs), which are objects that abstract interactions among objects that make it easier to model layered communication architectures, to enforce the invariant behavior among objects, to reduce the complexity of programs by hiding the interaction details in separate modules and to improve reusability through the application of object-oriented principles to ACT classes.
Abstract: It is generally claimed that object-based models are very suitable for building distributed system architectures since object interactions follow the client-server model. To cope with the complexity of today's distributed systems, however, we think that high-level linguistic mechanisms are needed to effectively structure, abstract and reuse object interactions. For example, the conventional object-oriented model does not provide high-level language mechanisms to model layered system architectures. Moreover, we consider the message passing model of the conventional object-oriented model as being too low-level because it can only specify object interactions that involve two partner objects at a time and its semantics cannot be extended easily. This paper introduces Abstract Communication Types (ACTs), which are objects that abstract interactions among objects. ACTs make it easier to model layered communication architectures, to enforce the invariant behavior among objects, to reduce the complexity of programs by hiding the interaction details in separate modules and to improve reusability through the application of object-oriented principles to ACT classes. We illustrate the concept of ACTs using the composition filters model.

312 citations

Journal ArticleDOI
TL;DR: This survey describes both academic and industrial efforts and describes work in both the United States and Europe on developing a common framework for object-oriented terminology and surveys two research activities that prescribe the design process.
Abstract: The state of object-oriented is evolving rapidly This survey describes what are currently thought to be the key ideas Although it is necessarily incomplete, it contains both academic and industrial efforts and describes work in both the United States and Europe It ignores well-known ideas, like that of Coad and Meyer [34], in favor of less widely known projectsResearch in object-oriented design can be divided many ways Some research is focused on describing a design process Some is focused on finding rules for good designs A third approach is to build tools to support design Most of the research described in this article does all threeWe first present work from Alan Snyder at Hewlett-Packard on developing a common framework for object-oriented terminology The goal of this effort is to develop and communicate a corporate-wide common language for specifying and communicating about objectsWe next look into the research activity at Hewlett-Packard, led by Dennis de Champeaux De Champeaux is developing a model for object-based analysis His current research focuses on the use of a trigger-based model for inter-object communications and development of a top-down approach to analysis using ensemblesWe then survey two research activities that prescribe the design process Rebecca Wirfs-Brock from Tektronix has been developing an object-oriented design method that focuses on object responsibilities and collaborations The method includes graphical tools for improving encapsulation and understanding patterns of object communication Trygve Reenskaug at the Center for Industriforskning in Oslo, Norway has been developing an object-oriented design method that focuses on roles, synthesis, and structuring The method, called Object-Oriented Role Analysis, Syntheses and Structuring, is based on first modeling small sub-problems, and then combining small models into larger ones in a controlled manner using both inheritance (synthesis) and run-time binding (structuring)We then present investigations by Ralph Johnson at the University of Illinois at Urbana-Champaign into object-oriented frameworks and the reuse of large-scale designs A framework is a high-level design or application architecture and consists of a suite of classes that are specifically designed to be refined and used as a group Past work has focused on describing frameworks and how they are developed Current work includes the design of tools to make it easier to design frameworksFinally, we present some results from the research group in object-oriented software engineering at Northeastern University, led by Karl Lieberherr They have been working on object-oriented Computer Assisted Software Engineering (CASE) technology, called the Demeterm system, which generates language-specific class definitions from language-independent class dictionaries The Demeter system include tools for checking design rules and for implementing a design

309 citations


Network Information
Related Topics (5)
Software development
73.8K papers, 1.4M citations
91% related
Software system
50.7K papers, 935K citations
89% related
Software construction
36.2K papers, 743.8K citations
89% related
Web service
57.6K papers, 989K citations
86% related
Software
130.5K papers, 2M citations
86% related
Performance
Metrics
No. of papers in the topic in previous years
YearPapers
20231
20226
20215
20209
201915
201828