Abstractness, Specificity, and Complexity in Software Design

Size: px
Start display at page:

Download "Abstractness, Specificity, and Complexity in Software Design"

Transcription

1 Abstractness, Specificity, and Complexity in Software Design Stefan Wagner and Florian Deißenböck Technische Universität München, Germany Florian Deißenböck ROA, Fakultät für Informatik Lehrstuhl für Software & Systems Engineering

2 Abstraction Examples C Assembler Microcode CPU

3 Abstraction Examples Simulink C Assembler Microcode CPU

4 Abstraction Examples Simulink BPEL C Assembler Microcode CPU

5 Abstraction Examples Simulink BPEL C Web Service Framework Assembler HTTP Library Microcode Networking Library CPU Network Adapter

6 Abstraction Examples Simulink BPEL C Web Service Framework GUI Builder Assembler HTTP Library GUI Framework Microcode Networking Library Operating System CPU Network Adapter Graphics Adapter

7 Abstraction Examples Simulink BPEL Persistence Framework C Web Service Framework GUI Builder SQL Assembler HTTP Library GUI Framework B-Tree Microcode Networking Library Operating System Database CPU Network Adapter Graphics Adapter

8 Abstraction Examples Business Application Construction Kit Simulink BPEL Persistence Framework C Web Service Framework GUI Builder SQL Assembler HTTP Library GUI Framework B-Tree Microcode Networking Library Operating System Database CPU Network Adapter Graphics Adapter

9 Abstraction Examples Business Application Construction Kit Simulink BPEL Persistence Framework C Web Service Framework GUI Builder SQL Assembler HTTP Library GUI Framework B-Tree Microcode Networking Library Operating System Database CPU Network Adapter Graphics Adapter

10 Abstraction Examples Business Application Construction Kit Simulink C Assembler Microcode BPEL An abstraction for a software artifact is a succinct Web Service description that GUI suppresses Builder the Framework details that are unimportant to a software developer and emphasizes the information that is important. HTTP Library Networking Library GUI Framework C. W. Krueger Operating System Persistence Framework SQL B-Tree Database CPU Network Adapter Graphics Adapter

11 Problem Statement Abstraction is of paramount importance for software development. Simulink BPEL What are the implications on specificity? What are the implications on complexity? What are the implications and trade-offs in abstractions? How to design and use abstractions? C Assembler Microcode CPU

12 Two Levels of Abstraction Variable Abstraction Specification Vn Vn-1 V2 V1 Abstraction Realization [C. W. Krueger. Software Reuse. 1992]

13 Two Levels of Abstraction Variable Abstraction Specification Vn Abstraction Realization Vn-1 Example public JFrame createwindow(string title) { JFrame frame = new JFrame(title); V2 frame.setcloseop(exit_on_close); V1 frame.pack(); frame.setvisible(true); return frame; } [C. W. Krueger. Software Reuse. 1992]

14 Abstractness & Specificity Abstractness Abstraction means information loss Remove explicit detail model building Defined by amount of variable information Specificity Defined by the number of contexts it can be used in The larger the variable part, the more generic The larger the fixed part, the more specific generic specific Variable

15 Complexity Complexity reduction is a main goal of abstraction Various definitions (even philosophy has not a unique one) Detail complexity*: Number of parts Dynamic complexity*: Cause and effect relationships Detail Complexity Dynamic Complexity * [Peter M. Senge. The Fifth Discipline. 1990]

16 Types of Abstraction C1 t1 C2 t2

17 Types of Abstraction C1 t1 JFrame f = new JFrame( Choose Target File ); JFrame f = new JFrame( Choose Source File ); f.setcloseop(exit_on_close); f.setcloseop(exit_on_close); C2 t2

18 Types of Abstraction Cg p:t C1 t1 JFrame f = new JFrame( Choose Target File ); JFrame f = new JFrame( Choose Source File ); f.setcloseop(exit_on_close); f.setcloseop(exit_on_close); C2 t2

19 Types of Abstraction Cg p:t public JFrame createwindow(string title) { } C1 t1 JFrame f = new JFrame( Choose Target File ); JFrame f = new JFrame( Choose Source File ); f.setcloseop(exit_on_close); f.setcloseop(exit_on_close); C2 t2

20 Types of Abstraction Cg p:t public JFrame createwindow(string title) { } Generalizing Abstraction C1 t1 JFrame f = new JFrame( Choose Target File ); JFrame f = new JFrame( Choose Source File ); f.setcloseop(exit_on_close); f.setcloseop(exit_on_close); C2 t2

21 Types of Abstraction C t Cg p:t public JFrame createwindow(string title) { } Generalizing Abstraction C1 t1 JFrame f = new JFrame( Choose Target File ); JFrame f = new JFrame( Choose Source File ); f.setcloseop(exit_on_close); f.setcloseop(exit_on_close); C2 t2

22 Types of Abstraction C t public JFrame createfilewindow() { return createwindow( Choose File ); } Cg p:t public JFrame createwindow(string title) { } Generalizing Abstraction C1 t1 JFrame f = new JFrame( Choose Target File ); JFrame f = new JFrame( Choose Source File ); f.setcloseop(exit_on_close); f.setcloseop(exit_on_close); C2 t2

23 Types of Abstraction C t public JFrame createfilewindow() { return createwindow( Choose File ); } Simplifying Abstraction Cg p:t public JFrame createwindow(string title) { } Generalizing Abstraction C1 t1 JFrame f = new JFrame( Choose Target File ); JFrame f = new JFrame( Choose Source File ); f.setcloseop(exit_on_close); f.setcloseop(exit_on_close); C2 t2

24 The Influences of Abstraction Type Specificity Detail Complexity Dynamic Complexity Simplifying Abstraction Generalizing - 0/- + Simplifying + - +/- t1 p:t Generalizing Abstraction t2

25 Consequences 1. Generalizing abstraction increases dynamic complexity 2. Simplifying abstraction increases specificity 3. To manage complexity, design specific and generic

26 Consequences 1. Generalizing abstraction increases dynamic complexity 2. Simplifying abstraction increases specificity 3. To manage complexity, design specific and generic Example Swing JFrame can be used by setting only one of its > 65 parameters.

27 Conclusions Motivation Abstraction is an essential activity in software engineering Used to increase comprehensibility and reuse Effects are rarely discussed and not well understood Contribution Two basic types of abstraction: simplifying and generalizing Influences on specificity and complexity Future work Developing more examples Formal framework Relation to redundancy?

Software product quality control Dr. Stefan Wagner Dr. Florian Deißenböck Technische Universität München

Software product quality control Dr. Stefan Wagner Dr. Florian Deißenböck Technische Universität München Tool-supported Software product quality control Dr. Stefan Wagner Dr. Florian Deißenböck Technische Universität München Google Developer Day Munich November 9, 2010 Continuous Quality Control Quality Model

More information

A Framework for Supporting the Workflow for Archaeo-related Sciences: Managing, Synchronizing and Analyzing Data

A Framework for Supporting the Workflow for Archaeo-related Sciences: Managing, Synchronizing and Analyzing Data Ludwig-Maximilians-Universität München Institut für Informatik Lehrstuhl für Datenbanksysteme und Data Mining Presentation: Daniel Kaltenthaler A Framework for Supporting the Workflow for Archaeo-related

More information

Produced by. Design Patterns. MSc in Computer Science. Eamonn de Leastar

Produced by. Design Patterns. MSc in Computer Science. Eamonn de Leastar Design Patterns MSc in Computer Science Produced by Eamonn de Leastar (edeleastar@wit.ie)! Department of Computing, Maths & Physics Waterford Institute of Technology http://www.wit.ie http://elearning.wit.ie

More information

Dependent Types and Irrelevance

Dependent Types and Irrelevance Dependent Types and Irrelevance Christoph-Simon Senjak Technische Universität München Institut für Informatik Boltzmannstraße 3 85748 Garching PUMA Workshop September 2012 Dependent Types Dependent Types

More information

Fundamental Algorithms

Fundamental Algorithms Technische Universität München Fakultät für Informatik Lehrstuhl für Effiziente Algorithmen Dmytro Chibisov Sandeep Sadanandan Winter Semester 7/ Solution Sheet 5 November, 7 Fundamental Algorithms Problem

More information

Management. Software Quality. Dr. Stefan Wagner Technische Universität München. Garching 28 May 2010

Management. Software Quality. Dr. Stefan Wagner Technische Universität München. Garching 28 May 2010 Technische Universität München Software Quality Management Dr. Stefan Wagner Technische Universität München Garching 28 May 2010 Some of these slides were adapted from the tutorial "Clone Detection in

More information

MutanT: A Modular and Generic Tool for Multi-Sensor Data Processing

MutanT: A Modular and Generic Tool for Multi-Sensor Data Processing 12th International Conference on Information Fusion Seattle, WA, USA, July 6-9, 2009 MutanT: A Modular and Generic Tool for Multi-Sensor Data Processing Simon Hawe, Ulrich Kirchmaier, Klaus Diepold Lehrstuhl

More information

Creating Software Architecture Documentation for MediaWiki Software Master s Thesis Final Presentation , Uliana Bakhtina

Creating Software Architecture Documentation for MediaWiki Software Master s Thesis Final Presentation , Uliana Bakhtina Creating Software Architecture Documentation for MediaWiki Software Master s Thesis Final Presentation 14.09.2015, Uliana Bakhtina Software Engineering für betriebliche Informationssysteme (sebis) Fakultät

More information

Event Correlation Engine

Event Correlation Engine Event Correlation Engine Master s Thesis Final Presentation Andreas Müller Tutors: Christoph Göldi, Bernhard Tellenbach Supervisor: Prof. B. Plattner Institut für Technische Informatik und Kommunikationsnetze

More information

Advanced Topics in Software Engineering (02265) Ekkart Kindler

Advanced Topics in Software Engineering (02265) Ekkart Kindler Advanced Topics in Software Engineering (02265) Recapitulation (I. Introduction ) 2 Levels of models ClassDiagram is an instance of PetriNet * Object * Class 1 start 1 end * Association concrete syntax

More information

Using NetBeans IDE for Desktop Development. Geertjan Wielenga

Using NetBeans IDE for Desktop Development. Geertjan Wielenga Using NetBeans IDE for Desktop Development Geertjan Wielenga http://blogs.sun.com/geertjan Introduction Standards Resurgence of Swing Performance & look and feel Delivery over the web Layout manager &

More information

Introduction to Robotics

Introduction to Robotics Jianwei Zhang zhang@informatik.uni-hamburg.de Universität Hamburg Fakultät für Mathematik, Informatik und Naturwissenschaften Technische Aspekte Multimodaler Systeme 05. July 2013 J. Zhang 1 Task-level

More information

Lecture Notes on CASE-Tools: Together

Lecture Notes on CASE-Tools: Together Lecture Notes on CASE-Tools: Together Software Engeneering Christoph Vilsmeier Technische Universität München Institut für Informatik 2 (based on slides from Günter Teubner) Friday, 10 th Nov. 2000 Christoph

More information

Towards an EA View Template Marketplace

Towards an EA View Template Marketplace Towards an EA View Template Marketplace 29.06.2016, Prof. Dr. Florian Matthes Software Engineering für betriebliche Informationssysteme (sebis) Fakultät für Informatik Technische Universität München wwwmatthes.in.tum.de

More information

Towards Context-Aware Adaptable Web Services

Towards Context-Aware Adaptable Web Services Towards Context-Aware Adaptable Web Services Markus Keidl Universität Passau Fakultät für Mathematik und Informatik D-94030 Passau keidl@db.fmi.uni-passau.de Alfons Kemper TU München Fakultät für Informatik

More information

Model-driven Multi-Quality Auto-Tuning of Robotic Applications

Model-driven Multi-Quality Auto-Tuning of Robotic Applications Fakultät Informatik Institut für Software- und Multimediatechnik Lehrstuhl für Softwaretechnologie Model-driven Multi-Quality Auto-Tuning of Robotic Applications MORSE 2015 Christian Piechnick, Sebastian

More information

Part II Black-Box Composition Systems 20. Finding UML Business Components in a Component-Based Development Process

Part II Black-Box Composition Systems 20. Finding UML Business Components in a Component-Based Development Process Fakultät Informatik - Institut Software- und Multimediatechnik - Softwaretechnologie Prof. Aßmann - CBSE Part II Black-Box Composition Systems 20. Finding UML Business Components in a Component-Based Development

More information

Implementing a Web Client for Social Content and Task Management Master s Thesis Final Presentation , Björn Michelsen

Implementing a Web Client for Social Content and Task Management Master s Thesis Final Presentation , Björn Michelsen Implementing a Web Client for Social Content and Task Management Master s Thesis Final Presentation 10.10.2016, Björn Michelsen Software Engineering für betriebliche Informationssysteme (sebis) Fakultät

More information

A System for Seamless Abstraction Layers for Model-based Development of Embedded Software

A System for Seamless Abstraction Layers for Model-based Development of Embedded Software A System for Seamless Abstraction Layers for Model-based Development of Embedded Software Judith Thyssen, Daniel Ratiu, Wolfgang Schwitzer, Alexander Harhurin, Martin Feilkas Technische Universität München

More information

Mastering complexity through modeling and early prototyping

Mastering complexity through modeling and early prototyping Mastering complexity through modeling and early prototyping Reinhard Stolle, Christian Salzmann, Tillmann Schumm BMW Car IT, Petuelring 116, 80809 München, Germany {reinhard.stolle,christian.salzmann,tillmann.schumm}@bmw-carit.de

More information

Guido Sandmann MathWorks GmbH. Michael Seibt Mentor Graphics GmbH ABSTRACT INTRODUCTION - WORKFLOW OVERVIEW

Guido Sandmann MathWorks GmbH. Michael Seibt Mentor Graphics GmbH ABSTRACT INTRODUCTION - WORKFLOW OVERVIEW 2012-01-0962 AUTOSAR-Compliant Development Workflows: From Architecture to Implementation Tool Interoperability for Round-Trip Engineering and Verification & Validation Copyright 2012 The MathWorks, Inc.

More information

For our sample application we have realized a wrapper WWWSEARCH which is able to retrieve HTML-pages from a web server and extract pieces of informati

For our sample application we have realized a wrapper WWWSEARCH which is able to retrieve HTML-pages from a web server and extract pieces of informati Meta Web Search with KOMET Jacques Calmet and Peter Kullmann Institut fur Algorithmen und Kognitive Systeme (IAKS) Fakultat fur Informatik, Universitat Karlsruhe Am Fasanengarten 5, D-76131 Karlsruhe,

More information

Interface Implementation

Interface Implementation Interface Implementation HCI Lecture 11 David Aspinall Informatics, University of Edinburgh 26th October 2007 Outline Overview Software Engineering Usability Engineering Explaining Design Implementation

More information

Praktikum Ingenieurmäßige Software-Entwicklung

Praktikum Ingenieurmäßige Software-Entwicklung Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Praktikum Ingenieurmäßige Software-Entwicklung Palladio Component Model Part IV (PCM) Prof. Dr. R. H. Reussner (reussner@ipd.uka.de) Lehrstuhl

More information

Technische Universitat Munchen. Institut fur Informatik. D Munchen.

Technische Universitat Munchen. Institut fur Informatik. D Munchen. Developing Applications for Multicomputer Systems on Workstation Clusters Georg Stellner, Arndt Bode, Stefan Lamberts and Thomas Ludwig? Technische Universitat Munchen Institut fur Informatik Lehrstuhl

More information

Lehrstuhl für Netzarchitekturen und Netzdienste Fakultät für Informatik Technische Universität München. ilab. Lab 8 SSL/TLS and IPSec

Lehrstuhl für Netzarchitekturen und Netzdienste Fakultät für Informatik Technische Universität München. ilab. Lab 8 SSL/TLS and IPSec Lehrstuhl für Netzarchitekturen und Netzdienste Fakultät für Informatik Technische Universität München ilab Lab 8 SSL/TLS and IPSec Outlook: On Layer 4: Goal: Provide security for one specific port SSL

More information

Middleware for Heterogeneous and Distributed Information Systems Exercise Sheet 8

Middleware for Heterogeneous and Distributed Information Systems Exercise Sheet 8 AG Heterogene Informationssysteme Prof. Dr.-Ing. Stefan Deßloch Fachbereich Informatik Technische Universität Kaiserslautern Middleware for Heterogeneous and Distributed Information Systems Exercise Sheet

More information

13 AutoFocus 3 - A Scientific Tool Prototype for Model-Based Development of Component-Based, Reactive, Distributed Systems

13 AutoFocus 3 - A Scientific Tool Prototype for Model-Based Development of Component-Based, Reactive, Distributed Systems 13 AutoFocus 3 - A Scientific Tool Prototype for Model-Based Development of Component-Based, Reactive, Distributed Systems Florian Hölzl and Martin Feilkas Institut für Informatik Technische Universität

More information

Creating a Software Architecture Documentation for MediaWiki Software Master s Thesis Kick-Off Presentation , Uliana Bakhtina

Creating a Software Architecture Documentation for MediaWiki Software Master s Thesis Kick-Off Presentation , Uliana Bakhtina Creating a Software Architecture Documentation for MediaWiki Software Master s Thesis Kick-Off Presentation 23.03.2015, Uliana Bakhtina Software Engineering für betriebliche Informationssysteme (sebis)

More information

Graphical Interaction

Graphical Interaction Fakultät für Informatik Technische Universität München Bachelor s thesis: Graphical Interaction on Enterprise Architecture Visualisations Referee: Björn Kirschner Supervisor: Sascha Roth 1 Structure 1.

More information

Event Driven Programming

Event Driven Programming Event Driven Programming Part 1 Introduction Chapter 12 CS 2334 University of Oklahoma Brian F. Veale 1 Graphical User Interfaces So far, we have only dealt with console-based programs Run from the console

More information

Mobile robots control architectures

Mobile robots control architectures 1 Mobile robots control architectures Dimitri Popov Universität Hamburg Fakultät für Mathematik, Informatik und Naturwissenschaften Department Informatik Integriertes Seminar Intelligent Robotics 10 1.

More information

MVC: Model View Controller

MVC: Model View Controller MVC: Model View Controller Computer Science and Engineering College of Engineering The Ohio State University Lecture 26 Motivation Basic parts of any application: Data being manipulated A user-interface

More information

Transformational Design with

Transformational Design with Fakultät Informatik, Institut für Software- und Multimediatechnik, Lehrstuhl für Softwaretechnologie Transformational Design with Model-Driven Architecture () Prof. Dr. U. Aßmann Technische Universität

More information

Using Electronic Document Repositories (EDR) for Collaboration A first definition of EDR and technical implementation

Using Electronic Document Repositories (EDR) for Collaboration A first definition of EDR and technical implementation Using Electronic Document Repositories (EDR) for Collaboration A first definition of EDR and technical implementation Hilda Tellioglu Vienna University of Technology, Department for CSCW Argentinierstrasse

More information

53) Feature Models, Domain Models and Product Lines

53) Feature Models, Domain Models and Product Lines Fakultät Informatik, Institut für Software- und Multimediatechnik, Lehrstuhl für Softwaretechnologie 53) Feature Models, Domain Models and Product Lines 1. Feature Models 2. Product Linie Configuration

More information

From Types to Sets in Isabelle/HOL

From Types to Sets in Isabelle/HOL From Types to Sets in Isabelle/HOL Extented Abstract Ondřej Kunčar 1 and Andrei Popescu 1,2 1 Fakultät für Informatik, Technische Universität München, Germany 2 Institute of Mathematics Simion Stoilow

More information

SafeDispatch Securing C++ Virtual Calls from Memory Corruption Attacks by Jang, Dongseok and Tatlock, Zachary and Lerner, Sorin

SafeDispatch Securing C++ Virtual Calls from Memory Corruption Attacks by Jang, Dongseok and Tatlock, Zachary and Lerner, Sorin SafeDispatch Securing C++ Virtual Calls from Memory Corruption Attacks by Jang, Dongseok and Tatlock, Zachary and Lerner, Sorin in NDSS, 2014 Alexander Hefele Fakultät für Informatik Technische Universität

More information

Exercises on Semantics of Programming Languages

Exercises on Semantics of Programming Languages Technische Universität Wien SS 2014 Fakultät für Informatik Repetition sheet Assist. Prof. Florian Zuleger Tuesday, 8 April 2014 Assist. Prof. Georg Weissenbacher Univ. Prof. Agata Ciabattoni Moritz Sinn,

More information

Chapter 3. Architecture and Design

Chapter 3. Architecture and Design Chapter 3. Architecture and Design Design decisions and functional architecture of the Semi automatic generation of warehouse schema has been explained in this section. 3.1. Technical Architecture System

More information

Software Architectures

Software Architectures Software Architectures 2 SWS Lecture 1 SWS Lab Classes Hans-Werner Sehring Miguel Garcia Arbeitsbereich Softwaresysteme (STS) TU Hamburg-Harburg HW.Sehring@tuhh.de Miguel.Garcia@tuhh.de http://www.sts.tu-harburg.de/teaching/ss-05/swarch/entry.html

More information

Lecture Notes on CASE-Tools: TogetherJ

Lecture Notes on CASE-Tools: TogetherJ Lecture Notes on CASE-Tools: TogetherJ Vinko Novak (novak@in.tum.de) Software Engeneering Technische Universität München 2 Institut für Informatik Friday, 16 th Nov. 2001 Vinko Novak Component based Software

More information

Modeling Choreographies: BPMN 2.0 versus BPEL-based Approaches

Modeling Choreographies: BPMN 2.0 versus BPEL-based Approaches Institute of Architecture of Application Systems Modeling Choreographies: BPMN 2.0 versus BPEL-based Approaches Oliver Kopp, Frank Leymann, Sebastian Wagner Institute of Architecture of Application Systems,

More information

EMMSAD Workshop, , Amsterdam

EMMSAD Workshop, , Amsterdam Enterprise Meta Modeling Methods Combining a Stakeholder-Oriented and a Causality-Based Approach Robert Lagerström, Jan Saat, Ulrik Franke, Stephan Aier, Mathias Ekstedt EMMSAD Workshop, 09.06.2009, Amsterdam

More information

Fiona A Tool to Analyze Interacting Open Nets

Fiona A Tool to Analyze Interacting Open Nets Fiona A Tool to Analyze Interacting Open Nets Peter Massuthe and Daniela Weinberg Humboldt Universität zu Berlin, Institut für Informatik Unter den Linden 6, 10099 Berlin, Germany {massuthe,weinberg}@informatik.hu-berlin.de

More information

Available online at ScienceDirect. Conference on Systems Engineering Research (CSER 2014)

Available online at  ScienceDirect. Conference on Systems Engineering Research (CSER 2014) Available online at www.sciencedirect.com ScienceDirect Procedia Computer Science 28 ( 2014 ) 187 194 Conference on Systems Engineering Research (CSER 2014) Eds.: Azad M. Madni, University of Southern

More information

Coordination Patterns

Coordination Patterns Coordination Patterns 1. Coordination Patterns Design Patterns and their relevance for Coordination Oscar Nierstrasz Software Composition Group Institut für Informatik (IAM) Universität Bern oscar@iam.unibe.ch

More information

Elena Baralis and Tania Cerquitelli 2013 Politecnico di Torino 1

Elena Baralis and Tania Cerquitelli 2013 Politecnico di Torino 1 Databases Databases Data model Data access Advantages and disadvantages of DBMS Unit 1 Introduction DB M BG2 Information is recorded and exchanged in different forms D B M G4 Information is recorded and

More information

ExCuSe A Method for the Model-Based Safety Assessment of Simulink and Stateflow Models

ExCuSe A Method for the Model-Based Safety Assessment of Simulink and Stateflow Models ExCuSe A Method for the Model-Based Safety Assessment of Simulink and Stateflow Models MATLAB Expo 2018 2018-06-26 München Julian Rhein 1 Outline Introduction Property Proving Application to Safety Assessment

More information

Authenticated addressing in networks

Authenticated addressing in networks Lehrstuhl für Netzarchitekturen und Netzdienste Institut für Informatik Technische Universität München Diploma thesis semi final presentation Authenticated addressing in networks Blaž Primc, University

More information

Natural Language Processing Is No Free Lunch

Natural Language Processing Is No Free Lunch Natural Language Processing Is No Free Lunch STEFAN WAGNER UNIVERSITY OF STUTTGART, STUTTGART, GERMANY ntroduction o Impressive progress in NLP: OS with personal assistants like Siri or Cortan o Brief

More information

Managing test suites for services

Managing test suites for services Managing test suites for services Kathrin Kaschner Universität Rostock, Institut für Informatik, 18051 Rostock, Germany kathrin.kaschner@uni-rostock.de Abstract. When developing an existing service further,

More information

Collaboration in Teams: Simulink Projects Demonstration

Collaboration in Teams: Simulink Projects Demonstration Collaboration in Teams: Simulink Projects Demonstration 김종헌차장 Senior Application Engineer MathWorks Korea 2011 The MathWorks, Inc. 1 Agenda Motivation 7 common technical challenges Next steps Q & A allen.kim@mathworks.com

More information

A Case Study On Practical Usability Of Dependently Typed Languages - Deflate

A Case Study On Practical Usability Of Dependently Typed Languages - Deflate A Case Study On Practical Usability Of Dependently Typed Languages - Deflate Christoph-Simon Senjak Lehr- und Forschungseinheit für Theoretische Informatik Institut für Informatik Ludwig-Maximilians-Universität

More information

Graphical User Interface (GUI)

Graphical User Interface (GUI) Graphical User Interface (GUI) Layout Managment 1 Hello World Often have a static method: createandshowgui() Invoked by main calling invokelater private static void createandshowgui() { } JFrame frame

More information

A Framework for A Graph- and Queuing System-Based Pedestrian Simulation

A Framework for A Graph- and Queuing System-Based Pedestrian Simulation A Framework for A Graph- and Queuing System-Based Pedestrian Simulation Srihari Narasimhan IPVS Universität Stuttgart Stuttgart, Germany Hans-Joachim Bungartz Institut für Informatik Technische Universität

More information

New Trends That Can Change Our Role

New Trends That Can Change Our Role "Architecture" Architecture... what is it? Enterprise Architecture Some people think this is Architecture: New Trends That Can Change Our Role John A. Zachman Zachman International 2222 Foothill Blvd.

More information

Operational Experiences With High-Volume Network Intrusion Detection

Operational Experiences With High-Volume Network Intrusion Detection Operational Experiences With High-Volume Network Intrusion Detection Holger Dreger 1 Anja Feldmann 1 Vern Paxson 2 Robin Sommer 1 1 TU München Germany 2 ICSI / LBNL Berkeley, CA, USA ACM Computer and Communications

More information

Nr Universität Ulm Fakultät für Informatik. Ulmer Informatik-Berichte. Februar. The COCOON Object Model

Nr Universität Ulm Fakultät für Informatik. Ulmer Informatik-Berichte. Februar. The COCOON Object Model Universität Ulm Fakultät für Informatik The COCOON Object Model M.H. SCHOLL, c. LAASCH, c. RICH, H.-J. SCHEK, M. TRESOR Nr. 93-02 :. Ulmer Informatik-Berichte Februar Foreword This report has long been

More information

1.1 For Fun and Profit. 1.2 Common Techniques. My Preferred Techniques

1.1 For Fun and Profit. 1.2 Common Techniques. My Preferred Techniques 1 Bug Hunting Bug hunting is the process of finding bugs in software or hardware. In this book, however, the term bug hunting will be used specifically to describe the process of finding security-critical

More information

A Framework for a Comprehensive Evaluation of Ant-Inspired Peer-to-Peer Protocols

A Framework for a Comprehensive Evaluation of Ant-Inspired Peer-to-Peer Protocols A Framework for a Comprehensive Evaluation of Ant-Inspired Peer-to-Peer Protocols Amos Brocco Department of Innovative Technologies, University of Applied Science of Southern Switzerland Ingmar Baumgart,

More information

Software Engineering

Software Engineering Software ngineering Software Architecture for nterprise Information Systems Guido Menkhaus and milia Coste Software Research Lab, University of Salzburg References References Floyd Marinescu, JB Design

More information

Towards an Integrated System Model for Testing and Verification

Towards an Integrated System Model for Testing and Verification Towards an Integrated System Model for Testing and Verification Benjamin Hummel and Peter Braun MiSE 2008 Domain Development of controller software for production machines Special case of mechatronic system

More information

Einführung in die Erweiterte Realität

Einführung in die Erweiterte Realität Einführung in die Erweiterte Realität - 5. Mixed Reality, Information Presentation - Gudrun Klinker Nov 18, 2003 Agenda 1. A Taxonomy of Real and Virtual World Display Integration (Paul Milgram & Herman

More information

EMBEDDING, ORGANISATION, AND CONTROL OF SIMULATION PROCESSES IN AN OCTREE-BASED CSCW FRAMEWORK

EMBEDDING, ORGANISATION, AND CONTROL OF SIMULATION PROCESSES IN AN OCTREE-BASED CSCW FRAMEWORK EMBEDDING, ORGANISATION, AND CONTROL OF SIMULATION PROCESSES IN AN OCTREE-BASED CSCW FRAMEWORK Ralf-Peter Mundani 1, Hans-Joachim Bungartz 1, Andreas Niggl 2, and Ernst Rank 2 ABSTRACT In this paper, we

More information

Red Bull Air Race Planung und Sicherheitsanalysen für Luftrennen

Red Bull Air Race Planung und Sicherheitsanalysen für Luftrennen MATLAB EXPO 2014 AUTOMOTIVE INFOCOM TRANSPORT & ENVIRONMENT AERONAUTICS SPACE DEFENCE & SECURITY Red Bull Air Race Planung und Sicherheitsanalysen für Luftrennen R. Leitner - IABG mbh München, 2014-07-09

More information

TRANSPARENT COMPONENTS FOR SOFTWARE SYSTEMS

TRANSPARENT COMPONENTS FOR SOFTWARE SYSTEMS Fakultät Informatik, Institut für Software- und Multimediatechnik, Lehrstuhl für Softwaretechnologie TRANSPARENT COMPONENTS FOR SOFTWARE SYSTEMS Paul Peschel Dresden, summer term 2014 Content Transparent

More information

Servicebase Management Systems: AThree-Schema-Architecturefor Service-Management

Servicebase Management Systems: AThree-Schema-Architecturefor Service-Management Servicebase Management Systems: AThree-Schema-Architecturefor Service-Management Matthias Fischer, Marco Link, Erich Ortner, Nicole Zeise Fachgebiet Entwicklung vonanwendungssystemen Technische Universität

More information

Drawing Metro Maps using Bézier Curves

Drawing Metro Maps using Bézier Curves Drawing Metro Maps using Bézier Curves Martin Fink Lehrstuhl für Informatik I Universität Würzburg Joint work with Herman Haverkort, Martin Nöllenburg, Maxwell Roberts, Julian Schuhmann & Alexander Wolff

More information

Oscar Slotosch. ISO Conforming Tool Qualification for Modular Tools

Oscar Slotosch. ISO Conforming Tool Qualification for Modular Tools Oscar Slotosch ISO 26262 Conforming Tool Qualification for Modular Tools, 2011 Seite 1 Content Motivation: ISO 26262 Tool Chain Analysis Modular Tool Qualification Example Tool Architecture Summary Page

More information

Programming Languages

Programming Languages TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK Programming Languages Concurrency: Atomic Executions, Locks and Monitors Dr. Michael Petter Winter term 2016 Atomic Executions, Locks and Monitors

More information

Coding Trees in the Deflate format

Coding Trees in the Deflate format Coding Trees in the Deflate format Christoph-Simon Senjak Lehr- und Forschungseinheit für Theoretische Informatik Institut für Informatik Ludwig-Maximilians-Universität München Oettingenstr.67, 80538 München

More information

MILC: Inverted List Compression in Memory

MILC: Inverted List Compression in Memory MILC: Inverted List Compression in Memory Yorrick Müller Garching, 3rd December 2018 Yorrick Müller MILC: Inverted List Compression In Memory 1 Introduction Inverted Lists Inverted list := Series of sorted

More information

Enabling realtime collaborative dataintensive

Enabling realtime collaborative dataintensive Fakultät für Informatik Technische Universität München Enabling realtime collaborative dataintensive web applications A case study using serverside JavaScript Betreuer: Sascha Roth Kooperationspartner:

More information

A Configurator for Visual Analysis of Enterprise Architectures

A Configurator for Visual Analysis of Enterprise Architectures A Configurator for Visual Analysis of Enterprise Architectures Matheus Hauder, Sascha Roth, Simon Pigat, and Florian Matthes Technische Universität München Boltzmannstr. 3 85748 Garching, Germany {matheus.hauder,roth,simon.pigat,matthes}@tum.de

More information

Load Balancing for Problems with Good Bisectors, and Applications in Finite Element Simulations

Load Balancing for Problems with Good Bisectors, and Applications in Finite Element Simulations Load Balancing for Problems with Good Bisectors, and Applications in Finite Element Simulations Stefan Bischof, Ralf Ebner, and Thomas Erlebach Institut für Informatik Technische Universität München D-80290

More information

Universität Ulm Fakultät für Informatik

Universität Ulm Fakultät für Informatik Universität Ulm Fakultät für Informatik On the Complexity of Consistency Problems for Neurons with Binary Weights Michael Schmitt Universität Ulm Nr. 94-01 Ulmer Informatik-Berichte Januar 1994 On the

More information

Using Natural Language Processing and Machine Learning to Assist First-Level Customer Support for Contract Management

Using Natural Language Processing and Machine Learning to Assist First-Level Customer Support for Contract Management Using Natural Language Processing and Machine Learning to Assist First-Level Customer Support for Contract Management Master thesis - Kickoff presentation Michael Legenc Advisor: Daniel Braun Munich, 24.07.2017

More information

Human Interaction Container Paradigm

Human Interaction Container Paradigm Human Interaction Container Paradigm HIT Lab. Sébastien PRAUD July 20th, 2004 THALES Research & Technology Motivations Human Machine Interfaces (HMI) were designed to render applications or systems tracktable

More information

Chair for Network Architectures and Services Prof. Carle Department of Computer Science Technische Universität München.

Chair for Network Architectures and Services Prof. Carle Department of Computer Science Technische Universität München. Chair for Network Architectures and Services Prof. Carle Department of Computer Science Technische Universität München Network Analysis 2b) Deterministic Modelling beyond Formal Logic A simple network

More information

Semiautomatic Security Requirements Engineering and Evolution Using Decision Documentation, Heuristics, and User Monitoring

Semiautomatic Security Requirements Engineering and Evolution Using Decision Documentation, Heuristics, and User Monitoring Semiautomatic Security Requirements Engineering and Evolution Using Decision Documentation, Heuristics, and User Monitoring Tom-Michael Hesse, Stefan Gärtner, Tobias Roehm, Barbara Paech, Kurt Schneider

More information

Become a Champion Data Modeler with SQL Developer Data Modeler 3.0

Become a Champion Data Modeler with SQL Developer Data Modeler 3.0 Become a Champion Data Modeler with SQL Developer Data Modeler 3.0 Marc de Oliveira, Simplify Systems Introduction This presentation will show you how I think good data models are made, and how SQL Developer

More information

Efficiently building on-line tools for distributed heterogeneous environments

Efficiently building on-line tools for distributed heterogeneous environments Scientific Programming 10 (2002) 67 74 67 IOS Press Efficiently building on-line tools for distributed heterogeneous environments Günther Rackl, Thomas Ludwig, Markus Lindermeier and Alexandros Stamatakis

More information

Advanced Aspects of IT-Infrastructures in Healthcare

Advanced Aspects of IT-Infrastructures in Healthcare Advanced Aspects of IT-Infrastructures in Healthcare Einführung Vorlesung WS 2012 29.11.2012 Dr. Andreas Ehringfeld INSO - Industrial Software Institut für Rechnergestützte Automation Fakultät für Informatik

More information

Thread and Data parallelism in CPUs - will GPUs become obsolete?

Thread and Data parallelism in CPUs - will GPUs become obsolete? Thread and Data parallelism in CPUs - will GPUs become obsolete? USP, Sao Paulo 25/03/11 Carsten Trinitis Carsten.Trinitis@tum.de Lehrstuhl für Rechnertechnik und Rechnerorganisation (LRR) Institut für

More information

TECHNISCHE UNIVERSITÄT MÜNCHEN

TECHNISCHE UNIVERSITÄT MÜNCHEN Name Studiengang (Hauptfach) Vorname Fachrichtung (Nebenfach)... Note Matrikelnummer Unterschrift der Kandidatin/des Kandidaten I II TECHNISCHE UNIVERSITÄT MÜNCHEN Fakultät für Informatik Midterm-Klausur

More information

Free-Form Shape Optimization using CAD Models

Free-Form Shape Optimization using CAD Models Free-Form Shape Optimization using CAD Models D. Baumgärtner 1, M. Breitenberger 1, K.-U. Bletzinger 1 1 Lehrstuhl für Statik, Technische Universität München (TUM), Arcisstraße 21, D-80333 München 1 Motivation

More information

31. Feature Models and MDA for Product Lines

31. Feature Models and MDA for Product Lines Fakultät Informatik - Institut Software- und Multimediatechnik - Softwaretechnologie Prof. Aßmann - Softwaretechnologie II 31. Feature Models and MDA for Product Lines Prof. Dr. U. Aßmann Technische Universität

More information

TUM INSTITUT FÜR INFORMATIK. Motivation and Introduction of a System of Abstraction Layers for Embedded Systems

TUM INSTITUT FÜR INFORMATIK. Motivation and Introduction of a System of Abstraction Layers for Embedded Systems TUM INSTITUT FÜR INFORMATIK Motivation and Introduction of a System of Abstraction Layers for Embedded Systems Martin Feilkas, Alexander Harhurin, Judith Hartmann, Daniel Ratiu and Wolfgang Schwitzer ABCDE

More information

Ownership in Design Patterns. Master's Thesis Final Presentation Stefan Nägeli

Ownership in Design Patterns. Master's Thesis Final Presentation Stefan Nägeli Ownership in Design Patterns Master's Thesis Final Presentation Stefan Nägeli 07.02.06 Overview Status Quo Pattern Overview Encountered Problems applying UTS Pros and Cons compared to other systems UTS

More information

A Design Space Exploration Framework for Model-Based Software-intensive Embedded System Development

A Design Space Exploration Framework for Model-Based Software-intensive Embedded System Development A Design Space Exploration Framework for Model-Based Software-intensive Embedded System Development Matthias Büker, Stefan Henkler, Stefanie Schlegel, Eike Thaden bueker@offis.de, henkler@offis.de, schlegel@offis.de,

More information

CSSE 490 Model-Based Software Engineering: Software Factories

CSSE 490 Model-Based Software Engineering: Software Factories CSSE 490 Model-Based Software Engineering: Software Factories Shawn Bohner Office: Moench Room F212 Phone: (812) 877-8685 Email: bohner@rose-hulman.edu Learning Outcomes: MBE Discipline Relate Model-Based

More information

Instance Specialization a Pattern for Multi-level Meta Modelling

Instance Specialization a Pattern for Multi-level Meta Modelling Instance Specialization a Pattern for Multi-level Meta Modelling Matthias Jahn, Bastian Roth and Stefan Jablonski Chair for Applied Computer Science IV: Databases and Information Systems University of

More information

Fast architecture prototyping on FPGAs: frameworks, tools, and challenges

Fast architecture prototyping on FPGAs: frameworks, tools, and challenges Fast architecture prototyping on FPGAs: frameworks, tools, and challenges Philipp Wagner Technische Universität München Lehrstuhl für Integrierte Systeme 10.04.2017 Our Goal: Improving MPSoC Architectures

More information

A graphical user interface for service adaptation

A graphical user interface for service adaptation A graphical user interface for service adaptation Christian Gierds 1 and Niels Lohmann 2 1 Humboldt-Universität zu Berlin, Institut für Informatik, Unter den Linden 6, 10099 Berlin, Germany gierds@informatik.hu-berlin.de

More information

Architecture of Business Systems Architecture and the Role of the Architect

Architecture of Business Systems Architecture and the Role of the Architect Sandro Schwedler Wolfram Richter Architecture of Business Systems Architecture and the Role of the Architect Lecture Outline Introduction (W) Lecture Overview Architecture & role of the Architect Views

More information

Topic 01. Software Engineering, Web Engineering, agile methodologies.

Topic 01. Software Engineering, Web Engineering, agile methodologies. Topic 01 Software Engineering, Web Engineering, agile methodologies. 1 What is Software Engineering? 2 1 Classic Software Engineering The IEEE definition: Software Engineering is the application of a disciplined,

More information

Perceptual Effects in Real-time Tone Mapping

Perceptual Effects in Real-time Tone Mapping Perceptual Effects in Real-time Tone Mapping G. Krawczyk K. Myszkowski H.-P. Seidel Max-Planck-Institute für Informatik Saarbrücken, Germany SCCG 2005 High Dynamic Range (HDR) HDR Imaging Display of HDR

More information

Knowledge Extraction from German Automotive Software Requirements using NLP-Techniques and a Grammar-based Pattern Detection

Knowledge Extraction from German Automotive Software Requirements using NLP-Techniques and a Grammar-based Pattern Detection Knowledge Extraction from German Automotive Software s using NLP-Techniques and a Grammar-based Pattern Detection Mathias Schraps Software Development Audi Electronics Venture GmbH 85080 Gaimersheim, Germany

More information

Middleware-Konzepte. Tuple Spaces. Dr. Gero Mühl

Middleware-Konzepte. Tuple Spaces. Dr. Gero Mühl Middleware-Konzepte Tuple Spaces Dr. Gero Mühl Kommunikations- und Betriebssysteme Fakultät für Elektrotechnik und Informatik Technische Universität Berlin Agenda > Introduction > Linda Tuple Spaces >

More information