Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Gunter Saake is active.

Publication


Featured researches published by Gunter Saake.


Science of Computer Programming | 2014

FeatureIDE: An extensible framework for feature-oriented software development

Thomas Thüm; Christian Kästner; Fabian Benduhn; Jens Meinicke; Gunter Saake; Thomas Leich

FeatureIDE is an open-source framework for feature-oriented software development (FOSD) based on Eclipse. FOSD is a paradigm for the construction, customization, and synthesis of software systems. Code artifacts are mapped to features, and a customized software system can be generated given a selection of features. The set of software systems that can be generated is called a software product line (SPL). FeatureIDE supports several FOSD implementation techniques such as feature-oriented programming, aspect-oriented programming, delta-oriented programming, and preprocessors. All phases of FOSD are supported in FeatureIDE, namely domain analysis, requirements analysis, domain implementation, and software generation.


Archive | 2013

Feature-Oriented Software Product Lines

Sven Apel; Don S. Batory; Christian Kästner; Gunter Saake

Inevitably, reading is one of the requirements to be undergone. To improve the performance and quality, someone needs to have something new every day. It will suggest you to have more inspirations, then. However, the needs of inspirations will make you searching for some sources. Even from the other people experience, internet, and many books. Books and internet are the recommended media to help you improving your quality and performance.


ACM Computing Surveys | 2014

A Classification and Survey of Analysis Strategies for Software Product Lines

Thomas Thüm; Sven Apel; Christian Kästner; Ina Schaefer; Gunter Saake

Software-product-line engineering has gained considerable momentum in recent years, both in industry and in academia. A software product line is a family of software products that share a common set of features. Software product lines challenge traditional analysis techniques, such as type checking, model checking, and theorem proving, in their quest of ensuring correctness and reliability of software. Simply creating and analyzing all products of a product line is usually not feasible, due to the potentially exponential number of valid feature combinations. Recently, researchers began to develop analysis techniques that take the distinguishing properties of software product lines into account, for example, by checking feature-related code in isolation or by exploiting variability information during analysis. The emerging field of product-line analyses is both broad and diverse, so it is difficult for researchers and practitioners to understand their similarities and differences. We propose a classification of product-line analyses to enable systematic research and application. Based on our insights with classifying and comparing a corpus of 123 research articles, we develop a research agenda to guide future research on product-line analyses.


generative programming and component engineering | 2005

FeatureC++: on the symbiosis of feature-oriented and aspect-oriented programming

Sven Apel; Thomas Leich; Marko Rosenmüller; Gunter Saake

This paper presents FeatureC++, a novel language extension to C++ that supports Feature-Oriented Programming (FOP) and Aspect-Oriented Programming (AOP). Besides well-known concepts of FOP languages, FeatureC++ contributes several novel FOP language features, in particular multiple inheritance and templates for generic programming. Furthermore, FeatureC++ solves several problems regarding incremental software development by adopting AOP concepts. Starting our considerations on solving these problems, we give a summary of drawbacks and weaknesses of current FOP languages in expressing incremental refinements. Specifically, we outline five key problems and present three approaches to solve them: Multi Mixins, Aspectual Mixin Layers, and Aspectual Mixins that adopt AOP concepts in different ways. We use FeatureC++ as a representative FOP language to explain these three approaches. Finally, we present a case study to clarify the benefits of FeatureC++ and its AOP extensions.


Logics for databases and information systems | 1998

Logics for databases and information systems

Jan Chomicki; Gunter Saake

1. Introduction to Logics for Databases and Information Systems J. Chomicki, G. Saake. 2. A Logic Primer S. Conrad. 3. Temporal Logic in Information Systems J. Chomicki, D. Toman. 4. The Role of Deontic Logic in the Specification of Information Systems J.-J.Ch. Meyer, et al. 5. A Logic for Programming Database Transactions A.J. Bonner, M. Kifer. 6. Logics for Specifying Concurrent Information Systems H.-D. Ehrich, et al. 7. Evolving Logical Specification in Information Systems S. Conrad, et al. 8. Description Logics for Conceptual Data Modeling D. Calvanese, et al. 9. Integrity Constraints: Semantics and Applications P. Godfrey, et al. 10. Logical Approaches to Incomplete Information: A Survey R. van der Meyden. 11. Declarative Frameworks for Inheritance L.V.S. Lakshmanan, K. Thirunarayan. 12. On Logical Foundations of Active Databases G. Lausen, et al. Index.


IEEE Transactions on Software Engineering | 2008

Aspectual Feature Modules

Sven Apel; Thomas Leich; Gunter Saake

Two programming paradigms are gaining attention in the overlapping fields of software product lines (SPLs) and incremental software development (ISD). Feature-oriented programming (FOP) aims at large-scale compositional programming and feature modularity in SPLs using ISD. Aspect-oriented programming (AOP) focuses on the modularization of crosscutting concerns in complex software. Although feature modules, the main abstraction mechanisms of FOP, perform well in implementing large-scale software building blocks, they are incapable of modularizing certain kinds of crosscutting concerns. This weakness is exactly the strength of aspects, the main abstraction mechanisms of AOP. We contribute a systematic evaluation and comparison of FOP and AOP. It reveals that aspects and feature modules are complementary techniques. Consequently, we propose the symbiosis of FOP and AOP and aspectual feature modules (AFMs), a programming technique that integrates feature modules and aspects. We provide a set of tools that support implementing AFMs on top of Java and C++. We apply AFMs to a nontrivial case study demonstrating their practical applicability and to justify our design choices.


international conference on software engineering | 2009

FeatureIDE: A tool framework for feature-oriented software development

Christian Kästner; Thomas Thüm; Gunter Saake; Janet Feigenspan; Thomas Leich; Fabian Wielgorz; Sven Apel

Tools support is crucial for the acceptance of a new programming language. However, providing such tool support is a huge investment that can usually not be provided for a research language. With FeatureIDE, we have built an IDE for AHEAD that integrates all phases of feature-oriented software development. To reuse this investment for other tools and languages, we refactored FeatureIDE into an open source framework that encapsulates the common ideas of feature-oriented software development and that can be reused and extended beyond AHEAD. Among others, we implemented extensions for FeatureC++ and FeatureHouse, but in general, FeatureIDE is open for everybody to showcase new research results and make them usable to a wide audience of students, researchers, and practitioners.


ACM Transactions on Software Engineering and Methodology | 2012

Type checking annotation-based product lines

Christian Kästner; Sven Apel; Thomas Thüm; Gunter Saake

Software product line engineering is an efficient means of generating a family of program variants for a domain from a single code base. However, because of the potentially high number of possible program variants, it is difficult to test them all and ensure properties like type safety for the entire product line. We present a product-line-aware type system that can type check an entire software product line without generating each variant in isolation. Specifically, we extend the Featherweight Java calculus with feature annotations for product-line development and prove formally that all program variants generated from a well typed product line are well typed. Furthermore, we present a solution to the problem of typing mutually exclusive features. We discuss how results from our formalization helped implement our own product-line tool CIDE for full Java and report of our experience with detecting type errors in four existing software product line implementations.


international conference on software engineering | 2006

Aspectual mixin layers: aspects and features in concert

Sven Apel; Thomas Leich; Gunter Saake

Feature-Oriented Programming (FOP) decomposes complex software into features. Features are main abstractions in design and implementation. They reflect user requirements and incrementally refine one another. Although, features crosscut object-oriented architectures they fail to express all kinds of crosscutting concerns. This weakness is exactly the strength of aspects, the main abstraction mechanism of Aspect-Oriented Programming (AOP). In this article we contribute a systematic evaluation and comparison of both paradigms, AOP and FOP, with focus on incremental software development. It reveals that aspects and features are not competing concepts. In fact AOP has several strengths to improve FOP in order to implement crosscutting featuresSymmetrically, the development model of FOP can aid AOP in implementing incremental designs. Consequently, we propose the architectural integration of aspects and features in order to profit from both paradigms. We introduce aspectual mixin layers (AMLs), an implementation approach that realizes this symbiosis. A subsequent evaluation and a case study reveal that AMLs improve the crosscutting modularity of features as well as aspects become well integrated into incremental development style.


Information Systems | 1987

Monitoring dynamic integrity constraints based on temporal logic

Udo W. Lipeck; Gunter Saake

Abstract Dynamic integrity constraints are used to specify admissible sequences of database states. We present algorithmic fundamentals of monitoring constraints expressed in temporal logic. The essential means are finite transition graphs which can be constructed from temporal formulae by utilizing an appropriate normalform. To ensure admissibility of a state sequence, the integrity monitor has to follow a corresponding path through the graph and to check certain nontemporal conditions in each state; these conditions are provided as edge labels. Thus, monitoring dynamic integrity is reduced to a controlled checking of static integrity. All errors in present database behaviour are detected as well as many inevitable future errors.

Collaboration


Dive into the Gunter Saake's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Thomas Thüm

Braunschweig University of Technology

View shared research outputs
Top Co-Authors

Avatar

Kai-Uwe Sattler

Technische Universität Ilmenau

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Veit Köppen

Otto-von-Guericke University Magdeburg

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Stefan Conrad

Johannes Kepler University of Linz

View shared research outputs
Top Co-Authors

Avatar

Reimar Schröter

Otto-von-Guericke University Magdeburg

View shared research outputs
Top Co-Authors

Avatar

Marko Rosenmüller

Otto-von-Guericke University Magdeburg

View shared research outputs
Researchain Logo
Decentralizing Knowledge