Fabian Christ:
Automatische Kompatibilitätsprüfung Framework-basierter Anwendungen. PhD thesis, Universität Paderborn
(2012)
[
Show Abstract]

Software-Architekturen betrieblicher Informationssysteme bestehen aus Architekturbausteinen wie Frameworks, Komponenten und Bibliotheken. Die Entwicklung dieser Architekturen unter Einbeziehung wiederverwendbarer Architekturbausteine ist eine Voraussetzung einer industriell organisierten Software-Entwicklung. Für eine effiziente Trennung der Zuständigkeiten werden dabei häufig Architekturbausteine von Drittanbietern wiederverwendet.
Frameworks als erweiterbare Architekturbausteine bieten besondere Vorteile. Sie erlauben sowohl die Wiederverwendung der Funktionalität als auch der durch das Framework vorgegebenen Software-Architektur. Beispiele sind Frameworks für Benutzungsoberflächen oder für die Anbindung von Datenbanken. Durch Implementierung anwendungsspezifischer Erweiterungen wird ein Framework für den konkreten Anwendungsfall angepasst. Eine Anwendung, deren Software-Architektur ein Framework einsetzt, benutzt das Framework über dessen Erweiterungspunkte.
Im Laufe der Evolution einer solchen Anwendung entsteht häufig die Situation, dass das Framework durch eine neuere Version aktualisiert werden soll. Die Aktualisierung enthält das Risiko, dass Inkompatibilitäten zwischen bestehender Anwendung und neuer Framework-Version auftreten, die wiederum zu aufwendigen Anpassungen führen. Daher müssen mögliche Inkompatibilitäten vor der Aktualisierung erkannt und bewertet werden. Nach aktuellem Stand der Technik ist dies nicht möglich, so dass es in der industriellen Praxis zu unvorhergesehenen Problemen verbunden mit hohen Kosten kommt.
Wir stellen ein Verfahren zur automatischen Kompatibilitätsanalyse Framework-basierter Anwendungen vor, mit dem das beschriebene Problem gelöst wird. Durch eine Kombination aus Codeanalyse und neuartiger Framework-Beschreibung lassen sich mögliche Inkompatibilitäten vor Durchführung der Aktualisierung automatisch berechnen. Eine prototypische Implementierung des Verfahrens im Werkzeug »Companian« demonstriert die praktische Einsetzbarkeit unseres Verfahrens.
Für die Definition der benötigten Framework-Beschreibungssprache mittels Meta-Modellierung setzen wir die neuartige Modellierungstechnik der parametrisierten Meta-Modelle ein. Die Technik unterstützt unseren Ansatz einer anforderungsbasierten Wiederverwendung von Sprachen. Mit diesem Ansatz können bestehende Sprachen für Teilaspekte neu definierter Sprachen wiederverwendet werden. Unser pragmatischer Ansatz stellt dabei sicher, dass hierbei nur die Sprachen benutzt werden können, die syntaktisch und semantisch den geforderten Sprachen entsprechen.
[
Show BibTeX]

@phdthesis{Christ2012,
author = {Fabian Christ},
title = {Automatische Kompatibilit{\"a}tspr{\"u}fung Framework-basierter Anwendungen},
school = {Universit{\"a}t Paderborn},
year = {2012},
abstract = {Software-Architekturen betrieblicher Informationssysteme bestehen aus Architekturbausteinen wie Frameworks, Komponenten und Bibliotheken. Die Entwicklung dieser Architekturen unter Einbeziehung wiederverwendbarer Architekturbausteine ist eine Voraussetzung einer industriell organisierten Software-Entwicklung. F{\"u}r eine effiziente Trennung der Zust{\"a}ndigkeiten werden dabei h{\"a}ufig Architekturbausteine von Drittanbietern wiederverwendet.Frameworks als erweiterbare Architekturbausteine bieten besondere Vorteile. Sie erlauben sowohl die Wiederverwendung der Funktionalit{\"a}t als auch der durch das Framework vorgegebenen Software-Architektur. Beispiele sind Frameworks f{\"u}r Benutzungsoberfl{\"a}chen oder f{\"u}r die Anbindung von Datenbanken. Durch Implementierung anwendungsspezifischer Erweiterungen wird ein Framework f{\"u}r den konkreten Anwendungsfall angepasst. Eine Anwendung, deren Software-Architektur ein Framework einsetzt, benutzt das Framework {\"u}ber dessen Erweiterungspunkte.Im Laufe der Evolution einer solchen Anwendung entsteht h{\"a}ufig die Situation, dass das Framework durch eine neuere Version aktualisiert werden soll. Die Aktualisierung enth{\"a}lt das Risiko, dass Inkompatibilit{\"a}ten zwischen bestehender Anwendung und neuer Framework-Version auftreten, die wiederum zu aufwendigen Anpassungen f{\"u}hren. Daher m{\"u}ssen m{\"o}gliche Inkompatibilit{\"a}ten vor der Aktualisierung erkannt und bewertet werden. Nach aktuellem Stand der Technik ist dies nicht m{\"o}glich, so dass es in der industriellen Praxis zu unvorhergesehenen Problemen verbunden mit hohen Kosten kommt.Wir stellen ein Verfahren zur automatischen Kompatibilit{\"a}tsanalyse Framework-basierter Anwendungen vor, mit dem das beschriebene Problem gel{\"o}st wird. Durch eine Kombination aus Codeanalyse und neuartiger Framework-Beschreibung lassen sich m{\"o}gliche Inkompatibilit{\"a}ten vor Durchf{\"u}hrung der Aktualisierung automatisch berechnen. Eine prototypische Implementierung des Verfahrens im Werkzeug »Companian« demonstriert die praktische Einsetzbarkeit unseres Verfahrens.F{\"u}r die Definition der ben{\"o}tigten Framework-Beschreibungssprache mittels Meta-Modellierung setzen wir die neuartige Modellierungstechnik der parametrisierten Meta-Modelle ein. Die Technik unterst{\"u}tzt unseren Ansatz einer anforderungsbasierten Wiederverwendung von Sprachen. Mit diesem Ansatz k{\"o}nnen bestehende Sprachen f{\"u}r Teilaspekte neu definierter Sprachen wiederverwendet werden. Unser pragmatischer Ansatz stellt dabei sicher, dass hierbei nur die Sprachen benutzt werden k{\"o}nnen, die syntaktisch und semantisch den geforderten Sprachen entsprechen.}
}
[
DOI]
Benjamin Nagel, Christian Gerth, Enes Yigitbas, Fabian Christ, Gregor Engels:
Model-driven Specification of Adaptive Cloud-based Systems. In Proceedings of 1st International Workshop on Model-Driven Engineering for High Performance and Cloud Computing (MDHPCL) at MODELS'12.
(2012)
[
Show BibTeX]

@inproceedings{nagel_mdhpcl12,
author = {Benjamin Nagel AND Christian Gerth AND Enes Yigitbas AND Fabian Christ AND Gregor Engels},
title = {Model-driven Specification of Adaptive Cloud-based Systems},
booktitle = {Proceedings of 1st International Workshop on Model-Driven Engineering for High Performance and Cloud Computing (MDHPCL) at MODELS'12},
year = {2012}
}
Fabian Christ, Benjamin Nagel, Reto Bachman-Gmür, Rupert Westenthaler:
Semantisches Content Management. In
JavaMagazin, vol. 8, pp. 96-100. Software & Support Media GmbH
(2012)
[
Show BibTeX]

@article{Christ2012,
author = {Fabian Christ AND Benjamin Nagel AND Reto Bachman-Gm{\"u}r AND Rupert Westenthaler},
title = {Semantisches Content Management},
journal = {JavaMagazin},
year = {2012},
volume = {8},
pages = {96--100},
month = {August}
}
Fabian Christ, Benjamin Nagel:
A Reference Architecture for Semantic Content Management Systems. In M. Nüttgens, O. Thomas, B. Weber (eds.): Proceeding of the Enterprise Modelling and Information Systems Architectures Workshop 2011 (EMISA'11), Hamburg (Germany). GI, LNI, vol. P-190, pp. 135-148
(2011)
[
Show Abstract]

Content Management Systems (CMS) lack the ability of managing semantic information that is part of the content stored in a CMS. On the other hand, a lot of research has been done in the field of Information Extraction (IE) and Information Retrieval (IR), respectively. Additionally, the vision of the Semantic Web yields to new software components that make semantic technology usable for application developers. In this paper, we combine IE/IR concepts with the technologies of the Semantic Web and propose a new family of CMS, called Semantic CMS (SCMS), with advanced semantic capabilities. We provide a reference architecture for SCMS and prove its value along two implementations. One implementation was created as part of the Interactive Knowledge Stack research project and another one in a one-year student project exploring the design of an SCMS for the software engineering domain.
[
PDF] [
Show BibTeX]

@inproceedings{Christ2011a,
author = {Fabian Christ AND Benjamin Nagel},
title = {A Reference Architecture for Semantic Content Management Systems},
booktitle = {Proceeding of the Enterprise Modelling and Information Systems Architectures Workshop 2011 (EMISA'11), Hamburg (Germany)},
year = {2011},
editor = {M. N{\"u}ttgens, O. Thomas, B. Weber},
pages = {135--148},
publisher = {GI},
abstract = {Content Management Systems (CMS) lack the ability of managing semantic information that is part of the content stored in a CMS. On the other hand, a lot of research has been done in the field of Information Extraction (IE) and Information Retrieval (IR), respectively. Additionally, the vision of the Semantic Web yields to new software components that make semantic technology usable for application developers. In this paper, we combine IE/IR concepts with the technologies of the Semantic Web and propose a new family of CMS, called Semantic CMS (SCMS), with advanced semantic capabilities. We provide a reference architecture for SCMS and prove its value along two implementations. One implementation was created as part of the Interactive Knowledge Stack research project and another one in a one-year student project exploring the design of an SCMS for the software engineering domain.},
series = {LNI},
volume = {P-190}
}
Fabian Christ, Jan-Christopher Bals:
Kompatibilitätsanalyse bei Evolution framework-basierter Anwendungen. In R. Reussner, A. Pretschner, S. Jähnichen (eds.): Proceedings of the 3rd Design for Future Workshop held at the Software Engineering 2011 Conference (SE2011), Karlsruhe (Germany). GI, LNI, vol. P-184, pp. 29-40
(2011)
[
Show Abstract]

Die Entwicklung betrieblicher Informationssysteme basiert auf dem Einsatz von Frameworks. Diese bieten ein hohes Maß an Wiederverwendung und sind flexibel anpassbar. Mit der Evolution der eingesetzten Frameworks unabhängig von der Anwendung entsteht die Notwendigkeit, Frameworks durch neuere Versionen zu ersetzen, um Fehler zu beheben oder neue Funktionen benutzen zu können. Etwaige Inkompatibilitäten neuer Versionen erfordern Anpassungen an der Anwendung. In der Praxis entsteht das Problem, dass die erforderlichen Anpassungen schwierig zu bestimmen sind. In dieser Arbeit zeigen wir einen Ansatz zur automatischen Kompatibilitätsanalyse bei der Evolution framework-basierter Anwendungen.
[
PDF] [
Show BibTeX]

@inproceedings{Christ2011,
author = {Fabian Christ AND Jan-Christopher Bals},
title = {Kompatibilit{\"a}tsanalyse bei Evolution framework-basierter Anwendungen},
booktitle = {Proceedings of the 3rd Design for Future Workshop held at the Software Engineering 2011 Conference (SE2011), Karlsruhe (Germany)},
year = {2011},
editor = {R. Reussner, A. Pretschner, S. J{\"a}hnichen},
pages = {29--40},
publisher = {GI},
abstract = {Die Entwicklung betrieblicher Informationssysteme basiert auf dem Einsatz von Frameworks. Diese bieten ein hohes Ma{\ss} an Wiederverwendung und sind flexibel anpassbar. Mit der Evolution der eingesetzten Frameworks unabh{\"a}ngig von der Anwendung entsteht die Notwendigkeit, Frameworks durch neuere Versionen zu ersetzen, um Fehler zu beheben oder neue Funktionen benutzen zu k{\"o}nnen. Etwaige Inkompatibilit{\"a}ten neuer Versionen erfordern Anpassungen an der Anwendung. In der Praxis entsteht das Problem, dass die erforderlichen Anpassungen schwierig zu bestimmen sind. In dieser Arbeit zeigen wir einen Ansatz zur automatischen Kompatibilit{\"a}tsanalyse bei der Evolution framework-basierter Anwendungen.},
series = {LNI},
volume = {P-184}
}
Frank Brüseke, Fabian Christ, Stefan Sauer, Andreas Wübbeke:
Testen von Software-Produktlinien. s-lab Report , no. 4. University of Paderborn, Software Quality Lab (s-lab)
(2011)
[
Show BibTeX]

@techreport{bcsw2010,
author = {Frank Br{\"u}seke AND Fabian Christ AND Stefan Sauer AND Andreas W{\"u}bbeke},
title = {Testen von Software-Produktlinien},
institution = {University of Paderborn, Software Quality Lab (s-lab)},
year = {2011},
type = {s-lab Report },
number = {4},
note = {(t.a.)}
}
Fabian Christ, Jan-Christopher Bals, Gregor Engels, Christian Gerth, Markus Luckey:
A Generic Meta-Model-based Approach for Specifying Framework Functionality and Usage. In J. Vitek (eds.): Proceedings of the 48th International Conference on Objects, Models, Components and Patterns (TOOLS'10), Málaga (Spain). Springer (Berlin/Heidelberg), LNCS, vol. 6141, pp. 21-40
(2010)
[
Show Abstract]

Enterprise software development is based on the usage of frameworks. However, well-established concepts to specify framework functionality and how to use it can hardly be found. As consequence, there are poor framework documentations. Various problems arise from this, e.g. a high effort for learning a framework and therefore the need of framework specialists. Existing framework description languages (FDL) focus on parts of the problem but do not cover all aspects of specifying framework functionality and usage. In this paper, we present a generic approach for specifying all aspects of framework functionality and usage. We collected requirements to identify relevant aspects and defined a generic meta-model for FDLs. The generic meta-model is the base for defining concrete FDLs while guaranteeing that all relevant framework aspects are covered. Particularly, due to its generic character, parts of the meta-model representing specific framework aspects can be instantiated by existing or newly defined languages.
[
PDF] [
Show BibTeX]

@inproceedings{Christ2010,
author = {Fabian Christ AND Jan-Christopher Bals AND Gregor Engels AND Christian Gerth AND Markus Luckey},
title = {A Generic Meta-Model-based Approach for Specifying Framework Functionality and Usage},
booktitle = {Proceedings of the 48th International Conference on Objects, Models, Components and Patterns (TOOLS'10), M{'a}laga (Spain)},
year = {2010},
editor = {J. Vitek},
pages = {21--40},
publisher = {Springer},
address = {Berlin/Heidelberg},
month = {June},
abstract = {Enterprise software development is based on the usage of frameworks. However, well-established concepts to specify framework functionality and how to use it can hardly be found. As consequence, there are poor framework documentations. Various problems arise from this, e.g. a high effort for learning a framework and therefore the need of framework specialists. Existing framework description languages (FDL) focus on parts of the problem but do not cover all aspects of specifying framework functionality and usage. In this paper, we present a generic approach for specifying all aspects of framework functionality and usage. We collected requirements to identify relevant aspects and defined a generic meta-model for FDLs. The generic meta-model is the base for defining concrete FDLs while guaranteeing that all relevant framework aspects are covered. Particularly, due to its generic character, parts of the meta-model representing specific framework aspects can be instantiated by existing or newly defined languages.},
journal = {LNCS},
series = {LNCS},
volume = {6141}
}
[
DOI]
Fabian Christ, Stefan Sauer:
Open Source Stacks. In M. Asche, W. Bauhus, B. Kaddatz and B. Seel (eds.): Open Source: Kommerzialisierungsmöglichkeiten und Chancen für die Zusammenarbeit von Hochschulen und Unternehmen, pp. 133-154. Waxmann Verlag
(2008)
[
Show BibTeX]

@incollection{Christ2008,
author = {Fabian Christ AND Stefan Sauer},
title = {Open Source Stacks},
booktitle = {Open Source: Kommerzialisierungsm{\"o}glichkeiten und Chancen f{\"u}r die Zusammenarbeit von Hochschulen und Unternehmen},
year = {2008},
editor = {M. Asche, W. Bauhus, B. Kaddatz and B. Seel},
pages = {133--154},
publisher = {Waxmann Verlag}
}
Jan-Christopher Bals, Fabian Christ, Gregor Engels, Martin Erwig:
ClassSheets - model-based, object-oriented design of spreadsheet applications. In Proceedings of the TOOLS Europe Conference (TOOLS 2007), Zürich (Swiss). Journal of Object Technology, vol. 6, no. 9, pp. 383-398
(2007)
[
Show Abstract]

Using spreadsheets is the preferred method to calculate, display or store anything that fits into a table-like structure. They are often used by end users to create applications. But they have one critical drawback - they are very error-prone.
To reduce the error-proneness, we purpose a new way of object-oriented modeling of spreadsheets prior to using them. These spreadsheet models, termed ClassSheets, are used to generate concrete spreadsheets on the instance level.
By this approach sources of errors are reduced and spreadsheet applications are easier to understand.
[
PDF] [
Show BibTeX]

@inproceedings{Bals07,
author = {Jan-Christopher Bals AND Fabian Christ AND Gregor Engels AND Martin Erwig},
title = {ClassSheets - model-based, object-oriented design of spreadsheet applications},
booktitle = {Proceedings of the TOOLS Europe Conference (TOOLS 2007), Z{\"u}rich (Swiss)},
year = {2007},
pages = {383--398},
publisher = {Journal of Object Technology},
month = {October },
abstract = {Using spreadsheets is the preferred method to calculate, display or store anything that fits into a table-like structure. They are often used by end users to create applications. But they have one critical drawback - they are very error-prone.To reduce the error-proneness, we purpose a new way of object-oriented modeling of spreadsheets prior to using them. These spreadsheet models, termed ClassSheets, are used to generate concrete spreadsheets on the instance level.By this approach sources of errors are reduced and spreadsheet applications are easier to understand. },
journal = {Journal of Object Technology},
volume = {6}
}
[
DOI]
Jan-Christopher Bals, Fabian Christ, Gregor Engels, Stefan Sauer:
Software-Qualität - überall! - Excel-lente Software. In
Forschungsforum Paderborn, vol. 10, pp. 56-60. University of Paderborn
(2007)
[
PDF] [
Show BibTeX]

@article{Bals2007,
author = {Jan-Christopher Bals AND Fabian Christ AND Gregor Engels AND Stefan Sauer},
title = {Software-Qualit{\"a}t - {\"u}berall! - Excel-lente Software},
journal = {Forschungsforum Paderborn},
year = {2007},
volume = {10},
pages = {56--60},
month = {January}
}