Overview
AREA II: Architectures
- Topic 3: Traceability of business goals in enterprise architectures
- Topic 4: Model-driven software migration
- Topic 5: Methods for Architecture Evaluation
AREA III: Method Engineering
- Topic 6: Engineering and Enactment of Software Engineering Methods with Moskitt4ME
- Topic 7: Modeling of Agile Methods with SPEM
- Topic 8: SPEM Process Enactment
- Topic 9: Method Engineering of User Interface Development
- Topic 10: Model-based user interface development (MBUID)
AREA IV: Natural Language Processing
AREA V: Language Engineering
- Topic 12: Domain Specific Modeling Languages
- Topic 13: A comparison of service discovery and composition approaches based on behavioral model matching
- Topic 14: A Comparison of Design Techniques for Core Languages
- Topic 15: Dynamic Meta Modeling and Rule Overriding
AREA I: Business Processes
Business Process MiningSupervisor: Mirko Rose
Student: Ivan Jovanovikj
Description:
Process mining techniques are able to extract knowledge from event logs commonly available in today’s information systems. These techniques provide new means to discover, monitor, and improve processes and process models in a variety of application domains. In doing so, they help organizations to improve their business process models.
Task:
To give an overview about the topic of process mining in general and to show some aspects of process mining in detail is the challenge of this seminar topic.
Literature:
[1] Aalst, Wil; Buijs, Joos; Dongen, Boudewijn (2012): Towards Improving the Representational Bias of Process Mining. In: Karl Aberer, Ernesto Damiani und Tharam Dillon (Hg.): Data-Driven Process Discovery and Analysis, Bd. 116: Springer Berlin Heidelberg (Lecture Notes in Business Information Processing), S. 39–54. Online: http://dx.doi.org/10.1007/978-3-642-34044-4_3.
Topic 2: Exception Handling approaches for Process Modeling
Supervisor: Enes Yigitbas
Student: Kwame Baffour Sampeney Banahene
Description:
Process modeling allows for analysis and improvement of processes that coordinate multiple people and tools working together to carry out a task. Process modeling typically focuses on the normative process, that is, how the collaboration transpires when everything goes as desired. Unfortunately, real-world processes rarely proceed that smoothly. A more complete analysis of a process requires that the process model also include details about what to do when exceptional situations arise.Task:
In this seminar thesis, the problem of exception handling in process models shall be analyzed. Different exception handling approaches for process models shall be investigated and compared.
Literature:
[1] Barbara Staudt Lerner, Stefan Christov, Leon J. Osterweil, Reda Bendraou, Udo Kannengiesser, Alexander E. Wise: Exception Handling Patterns for Process Modeling. IEEE Trans. Software Eng. 36(2): 162-183 (2010)
[2] Nick Russell, Wil M.P. van der Aalst, Arthur H.M. ter Hofstede: Exception Handling Patterns in Process-Aware Information Systems.(BPM-06-04) , Technical report, BPM Center. (2006)
[3] Claus Hagen, Gustavo Alonso: Exception Handling in Workflow Management Systems. IEEE Trans. Software Eng. 26(10): 943-958 (2000)
Business Process Mining
Supervisor: Mirko Rose
Student: Ivan Jovanovikj
Description:
Process mining techniques are able to extract knowledge from event logs commonly available in today’s information systems. These techniques provide new means to discover, monitor, and improve processes and process models in a variety of application domains. In doing so, they help organizations to improve their business process models.
Task:
To give an overview about the topic of process mining in general and to show some aspects of process mining in detail is the challenge of this seminar topic.
Literature:
[1] Aalst, Wil; Buijs, Joos; Dongen, Boudewijn (2012): Towards Improving the Representational Bias of Process Mining. In: Karl Aberer, Ernesto Damiani und Tharam Dillon (Hg.): Data-Driven Process Discovery and Analysis, Bd. 116: Springer Berlin Heidelberg (Lecture Notes in Business Information Processing), S. 39–54. Online: http://dx.doi.org/10.1007/978-3-642-34044-4_3.
Topic 2: Exception Handling approaches for Process Modeling
Supervisor: Enes Yigitbas
Student: Kwame Baffour Sampeney Banahene
Description:
Process modeling allows for analysis and improvement of processes that coordinate multiple people and tools working together to carry out a task. Process modeling typically focuses on the normative process, that is, how the collaboration transpires when everything goes as desired. Unfortunately, real-world processes rarely proceed that smoothly. A more complete analysis of a process requires that the process model also include details about what to do when exceptional situations arise.Task:
In this seminar thesis, the problem of exception handling in process models shall be analyzed. Different exception handling approaches for process models shall be investigated and compared.
Literature:
[1] Barbara Staudt Lerner, Stefan Christov, Leon J. Osterweil, Reda Bendraou, Udo Kannengiesser, Alexander E. Wise: Exception Handling Patterns for Process Modeling. IEEE Trans. Software Eng. 36(2): 162-183 (2010)
[2] Nick Russell, Wil M.P. van der Aalst, Arthur H.M. ter Hofstede: Exception Handling Patterns in Process-Aware Information Systems.(BPM-06-04) , Technical report, BPM Center. (2006)
[3] Claus Hagen, Gustavo Alonso: Exception Handling in Workflow Management Systems. IEEE Trans. Software Eng. 26(10): 943-958 (2000)
AREA II: Architectures
Topic 3: Traceability of business goals in enterprise architectures
Supervisor: Benjamin Nagel
Student: Sebastian Surminski
Description:
Business goal models describe strategic enterprise objectives in a structured way. "An enterprise-architecture (EA) is a high-level representation of the enterprise, used for managing the relation between business and IT" [1]. To ensure completeness and relevance, each element in the EA shall be traced to a business goal.
Task:
In this seminar thesis, the problem of business goal traceability shall be analyzed and requirements for an appropriate approach have to be elicitated. Existing approaches for traceability modeling shall be investigated and compared with respect to these requirements.
Literature:
[1] Engelsman, Wilco, und Roel Wieringa. „Goal-Oriented Requirements Engineering and Enterprise Architecture: Two Case Studies and Some Lessons Learned“. In Requirements Engineering: Foundation for Software Quality. Springer Berlin / Heidelberg, 2012.
[2] Gotel, O. C Z, und A. C W Finkelstein. „An analysis of the requirements traceability problem“. In Proceedings of the First International Conference on Requirements Engineering, 94–101, 1994.
[3] Ramesh, B., und M. Jarke. „Toward reference models for requirements traceability“. IEEE Transactions on Software Engineering, (2001).
Topic 4: Model-driven software migration
Supervisor: Marvin Grieger
Student: Benjamin Söltenfuß
Description:
In model-driven software migration, formal modals on different levels of abstraction are used to migrate an existing application into a new environment. Approaches in this context follow the reengineering horseshoe model, which comprises reverse engineering the legacy application, restructuring and concretising it [1].
Task:
The aim of this seminar topic is to give an overview of the general concepts of model-driven software migration on the one hand and to critically discuss the advantages and limitations of selected existing approaches on the other hand.
Literature:
[1] Kazman, R., Woods, S. G., & Carrière, S. J. "Requirements for integrating software architecture and reengineering models: CORUM II". InProceedings of the Fifth Working Conference on Reverse Engineering, 1998
[2] Pérez Castillo, R., de Guzmán, I. G. R., & Piattini, M. "Knowledge Discovery Metamodel-ISO/IEC 19506: A standard to modernize legacy systems". In Computer Standards & Interfaces 33.6 (2011), pp. 519-532.
[2] Heckel, R., Correia, R., Matos, C., El-Ramly, M., Koutsoukos, G., & Andrade, L. "Architectural transformations: From legacy to three-tier and services". In Software Evolution. Springer Berlin Heidelberg, 2008, pp. 139-170.
Topic 5: Methods for Architecture Evaluation
Supervisor: Fabian Christ
Student: Maitri Modasia
Description:
Getting the software architecture right is a hard task for any software development project. In the early phases of the development an initial architecture is often envisioned by the designers. But this architecture has to be refined and revised with any changes made to the software. Methods for architecture evaluation are needed to plan for architectural changes and decision making of how to evolve the architecture.
Task:
The student should review methods for architecture evaluation starting with the ATAM approach. Additionally, the student should scan the literature for related architecture description approaches and present a combined view of methods and usable languages.
Literature:
[1] Rick Kazman, Mark H. Klein, Paul C. Clements: ATAM: Method for Architecture Evaluation, Technical Report, CMU - Software Engineering Institute http://resources.sei.cmu.edu/library/asset-view.cfm?assetID=5177
[2] Paul Clements, Rick Kazman, Mark Klein: Evaluating Software Architectures: Methods and Case Studies by http://www.informit.com/store/evaluating-software-architectures-methods-and-case-9780201704822
Topic 3: Traceability of business goals in enterprise architectures
Supervisor: Benjamin Nagel
Student: Sebastian Surminski
Description:
Business goal models describe strategic enterprise objectives in a structured way. "An enterprise-architecture (EA) is a high-level representation of the enterprise, used for managing the relation between business and IT" [1]. To ensure completeness and relevance, each element in the EA shall be traced to a business goal.
Task:
In this seminar thesis, the problem of business goal traceability shall be analyzed and requirements for an appropriate approach have to be elicitated. Existing approaches for traceability modeling shall be investigated and compared with respect to these requirements.
Literature:
[1] Engelsman, Wilco, und Roel Wieringa. „Goal-Oriented Requirements Engineering and Enterprise Architecture: Two Case Studies and Some Lessons Learned“. In Requirements Engineering: Foundation for Software Quality. Springer Berlin / Heidelberg, 2012.
[2] Gotel, O. C Z, und A. C W Finkelstein. „An analysis of the requirements traceability problem“. In Proceedings of the First International Conference on Requirements Engineering, 94–101, 1994.
[3] Ramesh, B., und M. Jarke. „Toward reference models for requirements traceability“. IEEE Transactions on Software Engineering, (2001).
Topic 4: Model-driven software migration
Supervisor: Marvin Grieger
Student: Benjamin Söltenfuß
Description:
In model-driven software migration, formal modals on different levels of abstraction are used to migrate an existing application into a new environment. Approaches in this context follow the reengineering horseshoe model, which comprises reverse engineering the legacy application, restructuring and concretising it [1].
Task:
The aim of this seminar topic is to give an overview of the general concepts of model-driven software migration on the one hand and to critically discuss the advantages and limitations of selected existing approaches on the other hand.
Literature:
[1] Kazman, R., Woods, S. G., & Carrière, S. J. "Requirements for integrating software architecture and reengineering models: CORUM II". InProceedings of the Fifth Working Conference on Reverse Engineering, 1998
[2] Pérez Castillo, R., de Guzmán, I. G. R., & Piattini, M. "Knowledge Discovery Metamodel-ISO/IEC 19506: A standard to modernize legacy systems". In Computer Standards & Interfaces 33.6 (2011), pp. 519-532.
[2] Heckel, R., Correia, R., Matos, C., El-Ramly, M., Koutsoukos, G., & Andrade, L. "Architectural transformations: From legacy to three-tier and services". In Software Evolution. Springer Berlin Heidelberg, 2008, pp. 139-170.
Topic 5: Methods for Architecture Evaluation
Supervisor: Fabian Christ
Student: Maitri Modasia
Description:
Getting the software architecture right is a hard task for any software development project. In the early phases of the development an initial architecture is often envisioned by the designers. But this architecture has to be refined and revised with any changes made to the software. Methods for architecture evaluation are needed to plan for architectural changes and decision making of how to evolve the architecture.
Task:
The student should review methods for architecture evaluation starting with the ATAM approach. Additionally, the student should scan the literature for related architecture description approaches and present a combined view of methods and usable languages.
Literature:
[1] Rick Kazman, Mark H. Klein, Paul C. Clements: ATAM: Method for Architecture Evaluation, Technical Report, CMU - Software Engineering Institute http://resources.sei.cmu.edu/library/asset-view.cfm?assetID=5177
[2] Paul Clements, Rick Kazman, Mark Klein: Evaluating Software Architectures: Methods and Case Studies by http://www.informit.com/store/evaluating-software-architectures-methods-and-case-9780201704822
AREA III: Method Engineering
Topic 6: Engineering and Enactment of Software Engineering Methods with Moskitt4ME
Supervisor: Masud Fazal-Baqaie
Student: Dheeraj Balabhadruni
Description:
Nowadays it is commonly accepted that the approach of providing big books with standard software engineering knowledge applicable in all situations is not the best support of practitioners. Often, they found those methods not suitable for their situation and refrained from reading those big compendia. The stream of situational software engineering aims at supporting method engineers with the development of streamlined software engineering methods for a certain situation (e.g. project). A further goal is to support the development team during the enactment of the method beyond the scope of a written book on the desk.
The project Moskitt4ME provides a component-based approach for the creation of software engineering methods and their enactment with tool support.
Figure: An executable software engineering method
Task:
In this seminar thesis, the motivation, capabilities and limitations of the Moskitt4ME approach shall be analyzed and presented. In addition, the provided eclipse-based tooling shall be analyzed for its capabilities.
Literature:
[1] Cervera, Mario and Albert, Manoli and Torres, Victoria and Pelechano, Vicente: The MOSKitt4ME Approach: Providing Process Support in a Method Engineering Context. In P. Atzeni, D. Cheung, and S. Ram (eds.): Conceptual Modeling. LNCS 7532, Springer-Verlag, Berlin 2012, http://dx.doi.org/10.1007/978-3-642-34002-4_18
http://users.dsic.upv.es/~mcervera/moskitt4me/
Topic 7: Modeling of Agile Methods with SPEM
Supervisor: Silke Geisen
Student: Sharath Sajja
Description:
Agile Methods, e.g. Scrum, are getting more and more popular these days. These methods are a group of software engineering methods, which are based on incremental and iterative software development. In these methods the requirements and solutions evolve through collaboration between cross-functional and self-organizing teams and they promote adaptive planning, regular deliveries, most times a time-boxed iterative approach and especially they focus on flexible responses to change.
Method Engineering focuses on the creation of Software development method to give the system developer a guideline how to develop a software system. Nowadays software systems reach a high complexity, and in turn the software development method increase in complexity as well. In the field of method engineering the Software Process Engineering Metamodel (SPEM) is the most applied standardized language to model software development methods besides the ISO 24744. Though agile methods are suitable for method tailoring, mostly they are not concretely modeled.
Task:
The student should present the benefits and difficulties of modeling of agile methods with SPEM, starting with the example Scrum. It should be critically discussed, whether the modeling is “complete” or if there are still drawbacks in modeling agile methods (e.g. iterations, meetings etc.).
Literature:
[1] Ralf Ellner, Samir Al-Hilank, Johannes Drexler, Martin Jung, Detlef Kips, Michael Philippsen: eSPEM – a SPEM Extension for Enactable Behavior Modeling https://www2.cs.fau.de/publication/download/ecmfa2010_eSPEM.pdf
[2] Ernesto Damiani, Alberto Colombo, Fulvio Frati, Carlo Bellettini: A Metamodel for Modeling and Measuring Scrum Development Process http://link.springer.com/chapter/10.1007%2F978-3-540-73101-6_11
[3] OMG: Software & Systems Process Engineering Meta-Model Specification http://www.omg.org/spec/SPEM/2.0/PDF/
Topic 8: SPEM Process Enactment
Supervisor: Michael Spijkerman
Student:
Description:
Method Engineering focuses on the creation of Software development method to give the system developer a guideline how to develop a software system. Nowadays software systems reach a high complexity, and in turn the software development method increase in complexity as well. As a foundation we expect available software development methods that consist of an artifact model that describes all types of artifacts that are should be created during execution of the methods and a process model that describes the process which should be executed to reach the development goals. Managing a project with an underlying complex process model forces the need of monitoring capabilities, e.g. identifying the actual progress. Working in such a project will be easier when a developer can get the information of his actual and upcoming tasks. Process enactment tools that follow the execution semantic of a defined process model helps to gather the current project state at any time during the process execution.
In the field of method engineering the Software Process Engineering Metamodel (SPEM) is the most applied standardized language to model software development methods, but lacks of execution semantics. So, "one cannot benefit from context-sensitive process guidance, automated process conformance checking, or automated progress tracking when enacting detailed software process models" [1].
Task:
This seminar topic shall point out the advantages and challenges by providing executable SPEM based process models by presenting an overview of existing approaches [2].
Literature:
[1] Ralf Ellner, Samir Al-Hilank, Martin Jung, Detlef Kips, Michael Philippsen: An Integrated Tool Chain for Software Process Modeling and Execution. In Harald Störrle, Goetz Botterweck, Michel Bourdellès, Dimitris Kolovos, Richard Paige, Ella Roubtsova, Julia Rubin, Juha-Pekka Tolvanen (eds.): Joint Proceedings of co-located Events at the 8th European Conference on Modeling Foundations and Applications (ECMFA 2012), pp. 73—82, 2012
[2] Ruiz-Rube, Iván and Dodero, Juan M. and Palomo-Duarte, Manuel and Ruiz, Mercedes and Gawn, David: Uses and Applications of SPEM Process Models. A Systematic Mapping Study. In JOURNAL OF SOFTWARE MAINTENANCE AND EVOLUTION: RESEARCH AND PRACTICE, pp. 1 -32, 2012
Topic 9: Method Engineering of User Interface Development
Supervisor: Holger Fischer
Student: Deepak Chandra Veena
Description: The establishment of human-centered design within software development processes is still a challenge. Numerous usability methods and techniques exist that aim to increase the usability and user experience of a system. Nevertheless, the selection, definition, tailoring and integration of appropriate methods remains to be difficult, as there exist many different factors that have a significant influence on the appropriateness of the methods in their context of use.
Task: The seminar shall present an overview of existing approaches and discuss their advantages and challenges towards Usability Engineering.
Literature:
[1] Sousa, Kênia; Mendonça, Hildeberto & Vanderdonckt, Jean (2007): Towards Method Engineering of Model-driven User Interface Development. In: Winckler, M. et al. (eds.) TAMODIA 2007, LNCS 4849, pp. 112-125. Springer-Verlag, Berlin Heidelberg, 2007.
[2] Metzker, Eduard; Seffah, Ahmed (2009): Adoption of Usability Engineering Methods: A Measurement-Based Strategy. In: Abrahão, S. et al. (eds.) Proc. of the 2nd International Workshop on the Interplay between Usability Evaluation and Software Development (I-USED). CEUR Workshop Proceedings, Vol. 490.
Topic 10: Model-based user interface development (MBUID)
Supervisor: Enes Yigitbas
Student: Alexander Barbula
Description:
The development of user interfaces for interactive systems is a time consuming and thus expensive task. In addition, the growing number of different (mobile) devices is a challenge for developers. Developing applications with a variety of user interfaces (with different screen sizes, graphics libraries, resources, etc.) for various devices is a complex task. First, it is extremely difficult to meet defined requirements and, to be consistent in terms of functionality and presentation simultaneously across multiple platforms. Second, the development of applications for different platforms also means that developers have to master a variety of programming languages and methods. Because of the recurring development costs for individual solutions for a specific platform or modality is too high, a model-based approach provides help for the development of user interfaces.
Task:
The aim of this seminar thesis is to give an overview about the topic model-based user interface development (MBUID). Therefore essential concepts and methods of MBUID shall be investigated by analyzing the CAMELEON Reference Framework, which has established itself in recent years as reference architecture for MBUID.
Literature:
[1] Gaëlle Calvary, Joëlle Coutaz, David Thevenin, Quentin Limbourg, Laurent Bouillon, Jean Vanderdonckt: A Unifying Reference Framework for multi-target user interfaces. Interacting with Computers 15(3): 289-308 (2003)
[2] Gerrit Meixner, Fabio Paternò, Jean Vanderdonckt: Past, Present, and Future of Model-Based User Interface Development. i-com 10(3): 2-11 (2011)
Topic 6: Engineering and Enactment of Software Engineering Methods with Moskitt4ME
Supervisor: Masud Fazal-Baqaie
Student: Dheeraj Balabhadruni
Description:
Nowadays it is commonly accepted that the approach of providing big books with standard software engineering knowledge applicable in all situations is not the best support of practitioners. Often, they found those methods not suitable for their situation and refrained from reading those big compendia. The stream of situational software engineering aims at supporting method engineers with the development of streamlined software engineering methods for a certain situation (e.g. project). A further goal is to support the development team during the enactment of the method beyond the scope of a written book on the desk.
The project Moskitt4ME provides a component-based approach for the creation of software engineering methods and their enactment with tool support.
Figure: An executable software engineering method
Task:
In this seminar thesis, the motivation, capabilities and limitations of the Moskitt4ME approach shall be analyzed and presented. In addition, the provided eclipse-based tooling shall be analyzed for its capabilities.
Literature:
[1] Cervera, Mario and Albert, Manoli and Torres, Victoria and Pelechano, Vicente: The MOSKitt4ME Approach: Providing Process Support in a Method Engineering Context. In P. Atzeni, D. Cheung, and S. Ram (eds.): Conceptual Modeling. LNCS 7532, Springer-Verlag, Berlin 2012, http://dx.doi.org/10.1007/978-3-642-34002-4_18
http://users.dsic.upv.es/~mcervera/moskitt4me/
Topic 7: Modeling of Agile Methods with SPEM
Supervisor: Silke Geisen
Student: Sharath Sajja
Description:
Agile Methods, e.g. Scrum, are getting more and more popular these days. These methods are a group of software engineering methods, which are based on incremental and iterative software development. In these methods the requirements and solutions evolve through collaboration between cross-functional and self-organizing teams and they promote adaptive planning, regular deliveries, most times a time-boxed iterative approach and especially they focus on flexible responses to change.
Method Engineering focuses on the creation of Software development method to give the system developer a guideline how to develop a software system. Nowadays software systems reach a high complexity, and in turn the software development method increase in complexity as well. In the field of method engineering the Software Process Engineering Metamodel (SPEM) is the most applied standardized language to model software development methods besides the ISO 24744. Though agile methods are suitable for method tailoring, mostly they are not concretely modeled.
Task:
The student should present the benefits and difficulties of modeling of agile methods with SPEM, starting with the example Scrum. It should be critically discussed, whether the modeling is “complete” or if there are still drawbacks in modeling agile methods (e.g. iterations, meetings etc.).
Literature:
[1] Ralf Ellner, Samir Al-Hilank, Johannes Drexler, Martin Jung, Detlef Kips, Michael Philippsen: eSPEM – a SPEM Extension for Enactable Behavior Modeling https://www2.cs.fau.de/publication/download/ecmfa2010_eSPEM.pdf
[2] Ernesto Damiani, Alberto Colombo, Fulvio Frati, Carlo Bellettini: A Metamodel for Modeling and Measuring Scrum Development Process http://link.springer.com/chapter/10.1007%2F978-3-540-73101-6_11
[3] OMG: Software & Systems Process Engineering Meta-Model Specification http://www.omg.org/spec/SPEM/2.0/PDF/
Topic 8: SPEM Process Enactment
Supervisor: Michael Spijkerman
Student:
Description:
Method Engineering focuses on the creation of Software development method to give the system developer a guideline how to develop a software system. Nowadays software systems reach a high complexity, and in turn the software development method increase in complexity as well. As a foundation we expect available software development methods that consist of an artifact model that describes all types of artifacts that are should be created during execution of the methods and a process model that describes the process which should be executed to reach the development goals. Managing a project with an underlying complex process model forces the need of monitoring capabilities, e.g. identifying the actual progress. Working in such a project will be easier when a developer can get the information of his actual and upcoming tasks. Process enactment tools that follow the execution semantic of a defined process model helps to gather the current project state at any time during the process execution.
In the field of method engineering the Software Process Engineering Metamodel (SPEM) is the most applied standardized language to model software development methods, but lacks of execution semantics. So, "one cannot benefit from context-sensitive process guidance, automated process conformance checking, or automated progress tracking when enacting detailed software process models" [1].
Task:
This seminar topic shall point out the advantages and challenges by providing executable SPEM based process models by presenting an overview of existing approaches [2].
Literature:
[1] Ralf Ellner, Samir Al-Hilank, Martin Jung, Detlef Kips, Michael Philippsen: An Integrated Tool Chain for Software Process Modeling and Execution. In Harald Störrle, Goetz Botterweck, Michel Bourdellès, Dimitris Kolovos, Richard Paige, Ella Roubtsova, Julia Rubin, Juha-Pekka Tolvanen (eds.): Joint Proceedings of co-located Events at the 8th European Conference on Modeling Foundations and Applications (ECMFA 2012), pp. 73—82, 2012
[2] Ruiz-Rube, Iván and Dodero, Juan M. and Palomo-Duarte, Manuel and Ruiz, Mercedes and Gawn, David: Uses and Applications of SPEM Process Models. A Systematic Mapping Study. In JOURNAL OF SOFTWARE MAINTENANCE AND EVOLUTION: RESEARCH AND PRACTICE, pp. 1 -32, 2012
Topic 9: Method Engineering of User Interface Development
Supervisor: Holger Fischer
Student: Deepak Chandra Veena
Description: The establishment of human-centered design within software development processes is still a challenge. Numerous usability methods and techniques exist that aim to increase the usability and user experience of a system. Nevertheless, the selection, definition, tailoring and integration of appropriate methods remains to be difficult, as there exist many different factors that have a significant influence on the appropriateness of the methods in their context of use.
Task: The seminar shall present an overview of existing approaches and discuss their advantages and challenges towards Usability Engineering.
Literature:
[1] Sousa, Kênia; Mendonça, Hildeberto & Vanderdonckt, Jean (2007): Towards Method Engineering of Model-driven User Interface Development. In: Winckler, M. et al. (eds.) TAMODIA 2007, LNCS 4849, pp. 112-125. Springer-Verlag, Berlin Heidelberg, 2007.
[2] Metzker, Eduard; Seffah, Ahmed (2009): Adoption of Usability Engineering Methods: A Measurement-Based Strategy. In: Abrahão, S. et al. (eds.) Proc. of the 2nd International Workshop on the Interplay between Usability Evaluation and Software Development (I-USED). CEUR Workshop Proceedings, Vol. 490.
Topic 10: Model-based user interface development (MBUID)
Supervisor: Enes Yigitbas
Student: Alexander Barbula
Description:
The development of user interfaces for interactive systems is a time consuming and thus expensive task. In addition, the growing number of different (mobile) devices is a challenge for developers. Developing applications with a variety of user interfaces (with different screen sizes, graphics libraries, resources, etc.) for various devices is a complex task. First, it is extremely difficult to meet defined requirements and, to be consistent in terms of functionality and presentation simultaneously across multiple platforms. Second, the development of applications for different platforms also means that developers have to master a variety of programming languages and methods. Because of the recurring development costs for individual solutions for a specific platform or modality is too high, a model-based approach provides help for the development of user interfaces.
Task:
The aim of this seminar thesis is to give an overview about the topic model-based user interface development (MBUID). Therefore essential concepts and methods of MBUID shall be investigated by analyzing the CAMELEON Reference Framework, which has established itself in recent years as reference architecture for MBUID.
Literature:
[1] Gaëlle Calvary, Joëlle Coutaz, David Thevenin, Quentin Limbourg, Laurent Bouillon, Jean Vanderdonckt: A Unifying Reference Framework for multi-target user interfaces. Interacting with Computers 15(3): 289-308 (2003)
[2] Gerrit Meixner, Fabio Paternò, Jean Vanderdonckt: Past, Present, and Future of Model-Based User Interface Development. i-com 10(3): 2-11 (2011)
AREA IV: Natural Language Processing
Topic 11: Modeling the Argumentation of a Text for Sentiment Analysis
Supervisor: Henning Wachsmuth
Student: Andrey Pines
Description:
Sentiment analysis is a technique from natural language processing that aims to classify the attitude of the author of a text with respect the topic of the text. It plays a key role in today's business intelligence tools, because of its importance for customer relationship management. Many sentiment analysis approaches rely on a very simple text model such as the bag-of-words, which represents a text only by the words it contains. As a consequence, they fail to classify texts correctly where sentiment is not expressed explicitly. To improve classification, different models have been proposed in the last decade that capture the argumentation of a text.
Task:
In the seminar, a selection of approaches to model the argumentation of a text for the purpose of doing sentiment analysis shall be presented and discussed in terms of their benefits and limitations.
Literature:
[1] Roben Cohen (1981): "Analyzing the Structure of Argumentative Discourse". In: Computational Linguistics 13(1-2), pages 11-24.[2] Yi Mao and Guy Lebanon (2007): "Isotonic Conditional Random Fields and Local Sentiment Flow". In: Advances in Neural Information Processing Systems 19, pages 961–968.
[3] Bas Heershop, Frank Goossen, Alexander Hogenboom, Flavius Frasincar, Uzay Kaymak, and Franciska de Jong (2010): "Polarity Analysis of Texts using Discourse Structure". In: Proceedings of the 20th ACM Conference on Information and Knowledge Management, pages 1061-1070, Glasgow, UK.
[4] Subhabrata Mukherjee and Pushpak Bhattacharyya (2012): "Sentiment Analysis in Twitter with Lightweight Discourse Analysis". In: Proceedings of the 24th International Conference on Computational Linguistics, pages 1847-1864, Mumbai, India.
Topic 11: Modeling the Argumentation of a Text for Sentiment Analysis
Supervisor: Henning Wachsmuth
Student: Andrey Pines
Description:
Sentiment analysis is a technique from natural language processing that aims to classify the attitude of the author of a text with respect the topic of the text. It plays a key role in today's business intelligence tools, because of its importance for customer relationship management. Many sentiment analysis approaches rely on a very simple text model such as the bag-of-words, which represents a text only by the words it contains. As a consequence, they fail to classify texts correctly where sentiment is not expressed explicitly. To improve classification, different models have been proposed in the last decade that capture the argumentation of a text.
Task:
In the seminar, a selection of approaches to model the argumentation of a text for the purpose of doing sentiment analysis shall be presented and discussed in terms of their benefits and limitations.
Literature:
[1] Roben Cohen (1981): "Analyzing the Structure of Argumentative Discourse". In: Computational Linguistics 13(1-2), pages 11-24.
[2] Yi Mao and Guy Lebanon (2007): "Isotonic Conditional Random Fields and Local Sentiment Flow". In: Advances in Neural Information Processing Systems 19, pages 961–968.
[3] Bas Heershop, Frank Goossen, Alexander Hogenboom, Flavius Frasincar, Uzay Kaymak, and Franciska de Jong (2010): "Polarity Analysis of Texts using Discourse Structure". In: Proceedings of the 20th ACM Conference on Information and Knowledge Management, pages 1061-1070, Glasgow, UK.
[4] Subhabrata Mukherjee and Pushpak Bhattacharyya (2012): "Sentiment Analysis in Twitter with Lightweight Discourse Analysis". In: Proceedings of the 24th International Conference on Computational Linguistics, pages 1847-1864, Mumbai, India.
AREA V: Language Engineering
Topic 12: Domain Specific Modeling Languages
Supervisor: Dennis Bokermann
Student: Guangli Zhang
Description:
To develop a Domain Specific Modeling Language (DSML) both knowledge about the domain and meta-modeling is necessary. Only few people have knowledge about both. A common approach to create a DSML is to adapt the UML, and thereby, allowing the usage of existing language constructs and tools. Nevertheless, this approach requires knowledge about UML meta-modeling. Sanchez-Cuadrado et al. [1] present an approach to induce a meta-model for a DSML from example models, which can be created by domain experts, even if they have little or none knowledge about meta-modeling. Afterwards, the induced meta-model can be refined by meta-modeling experts, and eventually, the meta-model can be compiled into a concrete technology (e.g. EMF).
Task:
The student should present the key aspects of the approach of Sanchez-Cuadrado et al. [1] and compare it to the approach of creating DSMLs by adapting the UML. Furthermore, the suitability and limitations of approach of Sanchez-Cuadrado et al. should be analyzed. General information on Domain Specific Languages, which mostly should also be applicable to DSML, is provided in [2] and some advantages/disadvantages of using UML to create DSMLs can be found in [3].
Literature:
[1] Sanchez-Cuadrado, Jesus and De Lara, Juan and Guerra, Esther: Bottom-up meta-modelling: an interactive approach. In Proceedings of the 15th international conference on Model Driven Engineering Languages and Systems, MODELS'12, 2012
[2] Mernik, Marjan and Heering, Jan and Sloane, Anthony M.: When and how to develop domain-specific languages. In ACM Comput. Surv., 2005
[3] Selic, Bran: A Systematic Approach to Domain-Specific Language Design Using UML. In Object and Component-Oriented Real-Time Distributed Computing, 2007. ISORC '07
Topic 13: A comparison of service discovery and composition approaches based on behavioral model matching
Supervisor: Zille Huma
Student:
Description:
With the widespread use of modeling techniques in software engineering, different approaches in service-oriented computing (SOC) domain are also relying on these techniques at different stages of a service- oriented system development. An important aspect of this development process is the automatic service discovery and the composition/integration of the discovered services into a coherent system. For this purpose, different aspect, such as, the structure, behavior, and quality attributes of the requested/offered services can be considered.
Task:
The aim of this seminar topic is to particularly focus those approaches that focus on the behavioral matching of the requested and offered services and utilize the behavioral modeling techniques for this purpose. The comparison of these approaches can be based on different factors, such as, the considered behavioral aspects of the requested and offered services, the behavioral models used for this purpose, the matching techniques used to match the behavioral models, etc.
Literature:
[1] Spanoudaki, G., Zisman, A.: Discovering Services during Service-Based System Design Using UML. IEEE Trans. on Softw. Eng. 36(3), 371–389 (2010)
[2] Huma, Z., Gerth, C., Engels, G., Juwig, O.: Automated Service Composition for On-the-Fly SOAs. ICSOC'13, LNCS, vol. 8274, pp. 524-532. Springer,Heidelberg (2013)
[3] Srinivasmurthy, V. , Manvi, S., Gullapalli, R., Sathyamurthy, D., Reddy, N., Dattatreya, H., Singhal, S., Pruyne, J.: Web2Exchange: A Model-Based Service Transformation and Integration Environment. SCC’09, pp. 324–331. IEEE Computer Society (2009)
[4] Autili M., Di Ruscio D., Di Salle A., Inverardi P., Tivoli M.: A Model-Based Synthesis Process for Choreography Realizability Enforcement. Fundamental Approaches to Software Engineering, LNCS, vol. 7793, pp. 37-52. Springer,Heidelberg (2013)
Topic 14: A Comparison of Design Techniques for Core Languages
Supervisor: Svetlana Arifulina
Student: Eugen Traut
Description:
Nowadays, a large number of domain-specific modeling languages exist. Therefore, domain experts have to work with models provided in different language dialects. For that, domain experts have to learn many specification languages and, in particular, to keep the models synchronized in different notations resulting in high effort, errors and inconsistencies. The idea of a core language claims to overcome the lack of a standard language in a certain domain. Core languages allow interoperability of models described in different languages and the interoperability of the corresponding language infrastructure. Depending on a domain, core languages have different purposes and follow different construction principles.
Task:
Investigate and compare different design techniques for core languages. Consider their purpose, their construction principles, and their language infrastructure.
Literature:
[1] Ivano Malavolta, Henry Muccini, and Patrizio Pelliccione: "DUALLY: A framework for Architectural Languages and Tools Interoperability”. ASE, pages 483-484. IEEE, (2008)
[2] Sven Overhage "UnSCom: A Standardized Framework for the Specification of Software Components”. Net.ObjectDays, Vol. 3263 of Lecture Notes in Computer Science, pages 169-184. Springer, (2004)
Topic 15: Dynamic Meta Modeling and Rule Overriding
Supervisor: Stefan Heindorf
Student: Siby Thomas
Description:
Dynamic Meta Modeling (DMM) is a visual semantics specification technique targeted at languages based on a metamodel. A DMM specification consists of a runtime metamodel and operational rules which describe how instances of the runtime metamodel change over time. A known deficiency of the DMM approach is that it does not support the refinement of a DMM specification, e.g., in the case of defining the semantics for a refined and extended domain-specific language (DSL). Up to now, DMM specifications could only be reused by adding or removing DMM rules.
In this paper, DMM is enhanced such that DMM rules can override other DMM rules, similar to a method being overridden in a subclass, and it is shown how rule overriding can be realized with the graph transformation tool GROOVE. It is argued that rule overriding does not only have positive impact on reusability, but also improves the intuitive understandability of DMM semantics specifications.
Task:
Give an overview of the DMM approach and how DMM can be enhanced by rule overriding.
Literature:
[1] Christian Soltenborn, Gregor Engels: Using Rule Overriding to Improve Reusability and Understandability of Dynamic Meta Modeling Specifications. In Journal of Visual Languages and Computing, vol. 22, no. 3, pp. 233-250. Elsevier (Amsterdam, The Netherlands) (2011)
Topic 12: Domain Specific Modeling Languages
Supervisor: Dennis Bokermann
Student: Guangli Zhang
Description:
To develop a Domain Specific Modeling Language (DSML) both knowledge about the domain and meta-modeling is necessary. Only few people have knowledge about both. A common approach to create a DSML is to adapt the UML, and thereby, allowing the usage of existing language constructs and tools. Nevertheless, this approach requires knowledge about UML meta-modeling. Sanchez-Cuadrado et al. [1] present an approach to induce a meta-model for a DSML from example models, which can be created by domain experts, even if they have little or none knowledge about meta-modeling. Afterwards, the induced meta-model can be refined by meta-modeling experts, and eventually, the meta-model can be compiled into a concrete technology (e.g. EMF).
Task:
The student should present the key aspects of the approach of Sanchez-Cuadrado et al. [1] and compare it to the approach of creating DSMLs by adapting the UML. Furthermore, the suitability and limitations of approach of Sanchez-Cuadrado et al. should be analyzed. General information on Domain Specific Languages, which mostly should also be applicable to DSML, is provided in [2] and some advantages/disadvantages of using UML to create DSMLs can be found in [3].
Literature:
[1] Sanchez-Cuadrado, Jesus and De Lara, Juan and Guerra, Esther: Bottom-up meta-modelling: an interactive approach. In Proceedings of the 15th international conference on Model Driven Engineering Languages and Systems, MODELS'12, 2012
[2] Mernik, Marjan and Heering, Jan and Sloane, Anthony M.: When and how to develop domain-specific languages. In ACM Comput. Surv., 2005
[3] Selic, Bran: A Systematic Approach to Domain-Specific Language Design Using UML. In Object and Component-Oriented Real-Time Distributed Computing, 2007. ISORC '07
Topic 13: A comparison of service discovery and composition approaches based on behavioral model matching
Supervisor: Zille Huma
Student:
Description:
With the widespread use of modeling techniques in software engineering, different approaches in service-oriented computing (SOC) domain are also relying on these techniques at different stages of a service- oriented system development. An important aspect of this development process is the automatic service discovery and the composition/integration of the discovered services into a coherent system. For this purpose, different aspect, such as, the structure, behavior, and quality attributes of the requested/offered services can be considered.
Task:
The aim of this seminar topic is to particularly focus those approaches that focus on the behavioral matching of the requested and offered services and utilize the behavioral modeling techniques for this purpose. The comparison of these approaches can be based on different factors, such as, the considered behavioral aspects of the requested and offered services, the behavioral models used for this purpose, the matching techniques used to match the behavioral models, etc.
Literature:
[1] Spanoudaki, G., Zisman, A.: Discovering Services during Service-Based System Design Using UML. IEEE Trans. on Softw. Eng. 36(3), 371–389 (2010)
[2] Huma, Z., Gerth, C., Engels, G., Juwig, O.: Automated Service Composition for On-the-Fly SOAs. ICSOC'13, LNCS, vol. 8274, pp. 524-532. Springer,Heidelberg (2013)
[3] Srinivasmurthy, V. , Manvi, S., Gullapalli, R., Sathyamurthy, D., Reddy, N., Dattatreya, H., Singhal, S., Pruyne, J.: Web2Exchange: A Model-Based Service Transformation and Integration Environment. SCC’09, pp. 324–331. IEEE Computer Society (2009)
[4] Autili M., Di Ruscio D., Di Salle A., Inverardi P., Tivoli M.: A Model-Based Synthesis Process for Choreography Realizability Enforcement. Fundamental Approaches to Software Engineering, LNCS, vol. 7793, pp. 37-52. Springer,Heidelberg (2013)
Topic 14: A Comparison of Design Techniques for Core Languages
Supervisor: Svetlana Arifulina
Student: Eugen Traut
Description:
Nowadays, a large number of domain-specific modeling languages exist. Therefore, domain experts have to work with models provided in different language dialects. For that, domain experts have to learn many specification languages and, in particular, to keep the models synchronized in different notations resulting in high effort, errors and inconsistencies. The idea of a core language claims to overcome the lack of a standard language in a certain domain. Core languages allow interoperability of models described in different languages and the interoperability of the corresponding language infrastructure. Depending on a domain, core languages have different purposes and follow different construction principles.
Task:
Investigate and compare different design techniques for core languages. Consider their purpose, their construction principles, and their language infrastructure.
Literature:
[1] Ivano Malavolta, Henry Muccini, and Patrizio Pelliccione: "DUALLY: A framework for Architectural Languages and Tools Interoperability”. ASE, pages 483-484. IEEE, (2008)
[2] Sven Overhage "UnSCom: A Standardized Framework for the Specification of Software Components”. Net.ObjectDays, Vol. 3263 of Lecture Notes in Computer Science, pages 169-184. Springer, (2004)
Topic 15: Dynamic Meta Modeling and Rule Overriding
Supervisor: Stefan Heindorf
Student: Siby Thomas
Description:
Dynamic Meta Modeling (DMM) is a visual semantics specification technique targeted at languages based on a metamodel. A DMM specification consists of a runtime metamodel and operational rules which describe how instances of the runtime metamodel change over time. A known deficiency of the DMM approach is that it does not support the refinement of a DMM specification, e.g., in the case of defining the semantics for a refined and extended domain-specific language (DSL). Up to now, DMM specifications could only be reused by adding or removing DMM rules.
In this paper, DMM is enhanced such that DMM rules can override other DMM rules, similar to a method being overridden in a subclass, and it is shown how rule overriding can be realized with the graph transformation tool GROOVE. It is argued that rule overriding does not only have positive impact on reusability, but also improves the intuitive understandability of DMM semantics specifications.
Task:
Give an overview of the DMM approach and how DMM can be enhanced by rule overriding.
Literature:
[1] Christian Soltenborn, Gregor Engels: Using Rule Overriding to Improve Reusability and Understandability of Dynamic Meta Modeling Specifications. In Journal of Visual Languages and Computing, vol. 22, no. 3, pp. 233-250. Elsevier (Amsterdam, The Netherlands) (2011)