skip to main content
10.1145/1370164acmconferencesBook PagePublication PagesicseConference Proceedingsconference-collections
ROA '08: Proceedings of the 2nd international workshop on The role of abstraction in software engineering
ACM2008 Proceeding
Publisher:
  • Association for Computing Machinery
  • New York
  • NY
  • United States
Conference:
ICSE '08: International Conference on Software Engineering Leipzig Germany 11 May 2008
ISBN:
978-1-60558-028-9
Published:
11 May 2008
Sponsors:
Next Conference
Bibliometrics
Skip Abstract Section
Abstract

It is our great pleasure to welcome you to the 2nd Workshop on The Role of Abstraction in Software Engineering (ROA).

Abstraction is a central topic both in Computer Science and in Software Engineering. It is a cognitive means according to which, in order to overcome complexity at a specific stage of a problem solving situation, we concentrate on the essential features of our subject of thought, and ignore irrelevant details. Abstraction is especially essential in solving complex problems as it enables the problem solver to think in terms of conceptual ideas rather than in terms of their details.

The first workshop on the Role of Abstraction in Software Engineering was held in conjunction with ICSE 2006 - the 28th International Conference on Software Engineering with a subsequent report in ACM SIGSOFT Software Engineering Notes. In this workshop, based on the accepted papers and several activities, we continue to explore the potential benefits, as well as the barriers, of using abstraction in software engineering.

The one-day workshop consists of theory- and practice-based presentations, group work and discussions. It is envisaged that the workshop will contribute to the state of software engineering research, practice and teaching. The workshop consists of three parts: Abstraction in software engineering processes, educational perspective of abstraction and the nature of abstraction. In each part, papers will be presented in order to facilitate the discussions and activities.

The call for papers attracted 9 submissions. The program committee accepted 7 papers. We would like to express our gratitude to the program committee -- Daniel M. Berry, Shing Chi Cheung, Yael Dubinsky, Carlo Ghezzi, Leah Goldin, Frank Maurer, Tetsuo Tamai, Sebastian Uchitel and Axel van Lamsweerde -- for their cooperation. We would like to thank also the authors for providing the content of the program.

Skip Table Of Content Section
SESSION: Abstraction in software engineering processes
research-article
Language features meet design patterns: raising the abstraction bar

In the context of software engineering, abstraction is the means by which we move from layer to layer in the realization of the solution to a large problem. It has been recognized for over a decade that design patterns are one of the key mechanisms for ...

research-article
Towards IDE support for abstract thinking

Abstract thinking is considered to be a high level cognitive skill that enables a comprehensive understanding of a specific concept or a problem using different levels of detailing. Based on a lab activity we conducted on the matter of abstraction, we ...

SESSION: Educational perspective at abstraction
research-article
Applying abstraction to master complexity

Aptitude for managing abstraction may be a distinguishing characteristic of computer science majors. If this is so, and if this aptitude can be recognized among potential majors, those who are well suited for computer science but have not considered it ...

SESSION: The nature of abstraction in software engineering
research-article
Abstraction abstracted

An abstraction is the reification and conceptualization of a distinction. We use the process of forming abstractions to make sense of the world, i.e., to form concepts. Once created we are often able to externalize these concepts as software. ...

research-article
"Large" abstractions for software engineering

Abstraction is one of the primary intellectual tools we have for managing complexity in software systems. When we think of abstractions we usually think about "small" abstractions, such as data abstraction (parameterization), type abstraction (...

research-article
Abstractness, specificity, and complexity in software design

Abstraction is one of the fundamental concepts of software design. Consequently, the determination of an appropriate abstraction level for the multitude of artefacts that form a software system is an integral part of software engineering. However, the ...

research-article
A hierarchical abstraction model for software engineering

Abstraction is a basic foundation and a powerful means in science and engineering, such as philosophy, mathematics, cognitive informatics, computing, and software engineering, because any complex inference process is based on it. A Hierarchical ...

Contributors
  • Technion - Israel Institute of Technology
  • Imperial College London
  1. Proceedings of the 2nd international workshop on The role of abstraction in software engineering

    Recommendations