Teaching

Co-Advised Theses

Thomas Biasion A Network-based Business Model Framework for the Internet of Things (Master Thesis)
Thomas Hießl Optimizing the Placement of Stream Processing Operators in the Fog (Master Thesis)
Andres Carrasco Scalability for Data Stream Processing Frameworks (Bachelor Thesis)
Roland Ganaus Deployment Techniques for Dynamic Application Scenarios (Bachelor Thesis)
Bernhard Knasmüller Master Thesis in Progress

Lecturer

184.269 Advanced Internet Computing

The goal of this lecture is to discuss theoretical foundations, technologies, architectures, standards and examples of recent developments regarding service-based applications. In particular we focus on Service-oriented Computing, Web services, and Cloud Computing.

Teaching Assistant

184.269 Advanced Internet Computing

The goal of this lecture is to discuss theoretical foundations, technologies, architectures, standards and examples of recent developments regarding service-based applications. In particular we focus on Service-oriented Computing, Web services, and Cloud Computing.

188.403 Software Engineering and Projectmanagement

The aim of the course is the introduction to basic concepts and methods of Software Engineering and Project Management.
  • Obtain experience in constructing software solutions to real world tasks in a joint team effort
  • Project management
  • Become acquainted with current tools for constructing software
  • Get accustomed to essential concepts in software engineering
  • Application of essential methods of software engineering

188.405 Advanced Software Engineering

The aim of the course is to acquire in-depth knowledge on designing and building advanced software systems.
  • Overview on characteristics of advanced software systems
    • System size and complexity
    • System dependability, Quality of Service (QoS)
    • Extended Software Lifecycle
    • Mission / safety criticality
  • Software Engineering approaches for advanced software systems
    • Architecture styles, such as component-based software engineering
    • Lifecycle management and documentation
    • Automated software engineering
  • Overview on research and industrial topics in software engineering, including the benefits and limits of selected solution approaches.

188.407 Management of Software Projects

During the lecture, the following aspects of the management of software projects are covered:
  • Characteristics and classification of a project, kinds of projects
  • Project planning and controlling: work breakdown structure, work packages, Gantt diagrams, network planning technique (precedence diagram method) various tools, considerations on the correct amount of documentation
  • Effort estimation and cost calculation
  • Forms of project organization
  • The role of teams and project personnel: selection, motivation, education
  • Quality assurance and risk management

188.409 Requirements Engineering and Specification

The aim of this course the introduction to basic concepts and methods of Requirements Engineering. Requirements Engineering (RE) plays a crucial role for the quality of software systems and the success of development projects. RE deals with principles, methods, and tools for eliciting, negotiating, analysing, documenting, validating, and managing requirements throughout the software life cycle. After a short introduction this course presents selected topics in RE: We will present negotiation-based and scenario-based methods for eliciting and analysing requirements. The course will further cover methods for dealing with quality requirements and approaches for relating requirements and the software architecture. Finally, the course will address the role of requirements in product line engineering. During the course the participants will explore the presented methods in hands-on excercises, role plays, and group tasks.