@inproceedings{DentgenRennerMottok, author = {Dentgen, Manuel and Renner, Sebastian and Mottok, J{\"u}rgen}, title = {Equally Distributed Bus-Communication Access Rights for Inter MCU Communication Using Multimaster SPI}, series = {Architecture of Computing Systems - ARCS 2020: 33rd international conference, Aachen, Germany, May 25-28, 2020, proceedings}, booktitle = {Architecture of Computing Systems - ARCS 2020: 33rd international conference, Aachen, Germany, May 25-28, 2020, proceedings}, editor = {Brinkmann, Andr{\´e} and Karl, Wolfgang and Lankes, Stefan and Tomforde, Sven and Pionteck, Thilo and Trinitis, Carsten}, doi = {10.1007/978-3-030-52794-5_15}, pages = {200 -- 212}, abstract = {With the rising complexity and processing power of modern computer systems, the amount of MCU on a single PCB also rises. These microcontrollers often need to communicate with each other to exchange payload and control information in a bidirectional manner. Today's well-established communication protocols in MCUs either do not fit modern transmission speed requirements or do have an inappropriate master-slave attribute, which does not allow the communication partners to have equal bus access rights. Therefore, this paper introduces an extension of the Serial Peripheral Interface (SPI) to allow an equally distributed access right for the communication interface between two microcontrollers. It simultaneously does fit modern transmission speed requirements of a common network interface, so that the message transmission does not constitute a bottleneck in data processing. Besides the protocol design, we do also provide a first prototype implementation, which constitutes a proof of concept.}, language = {en} } @inproceedings{JahnMottok, author = {Jahn, Sabrina and Mottok, J{\"u}rgen}, title = {Work in Progress: Towards an Academic Secure Software Engineering Curriculum for Engineers}, series = {2020 IEEE Global Engineering Education Conference (EDUCON): 27-30 April 2020, Porto, Portugal}, booktitle = {2020 IEEE Global Engineering Education Conference (EDUCON): 27-30 April 2020, Porto, Portugal}, doi = {10.1109/EDUCON45650.2020.9125210}, pages = {1713 -- 1717}, abstract = {In the age of the Internet of Things, it is becoming increasingly important to integrate knowledge about the development of secure systems (Secure Software Engineering) into academic teaching. However, teaching IT Security and Secure Software Engineering to non-computer scientists is rare. Therefore, we focus our research on the integration of IT Security into software engineering education of non-computer scientists, particularly electrical engineers, by means of inductive teaching- and learning-arrangements. After collecting students' preconceptions of IT Security and Secure Software Engineering in prior work, this paper now contributes with a first mapping of these preconceptions with corresponding learning content as well as suitable inductive teaching methods to be able to create new lecture and exercise units and improve academic learning and teaching in both areas.}, language = {en} } @inproceedings{WeissRennerMottoketal., author = {Weiss, Nils and Renner, Sebastian and Mottok, J{\"u}rgen and Matoušek, V{\´a}clav}, title = {Transport Layer Scanning for Attack Surface Detection in Vehicular Networks}, series = {CSCS '20: Computer Science in Cars Symposium}, booktitle = {CSCS '20: Computer Science in Cars Symposium}, number = {7}, address = {Feldkirchen}, doi = {10.1145/3385958.3430476}, pages = {1 -- 8}, abstract = {In the beginning of every security analysis or penetration test of a system, information about the target has to be gathered. On IT-Systems a port scan is usually performed as a first step of an investigation. Since the communication protocols differ in automotive systems, generic port scanning tools can't be used for a security analysis of CANs. More complex protocols have a higher likelihood of implementation errors and bugs. On CAN networks, such payloads are transferred through International Standard Transport Protocol (ISO-TP) communication. We designed a new methodology to identify ISO-TP endpoints in automotive networks. Every of these endpoints can provide exploitable application layer protocols and therefor has to be considered during penetration testing and security analysis. We contribute a new scan approach for the automated evaluation of possible attack surfaces in automotive CAN networks which has a higher coverage and multiple advantages than state of the art approaches.}, language = {en} } @inproceedings{RennerPozzobonMottok, author = {Renner, Sebastian and Pozzobon, Enrico and Mottok, J{\"u}rgen}, title = {A Hardware in the Loop Benchmark Suite to Evaluate NIST LWC Ciphers on Microcontrollers}, series = {Information and Communications Security: 22nd International Conference, ICICS 2020, Copenhagen, Denmark, August 24-26, 2020, Proceedings}, booktitle = {Information and Communications Security: 22nd International Conference, ICICS 2020, Copenhagen, Denmark, August 24-26, 2020, Proceedings}, editor = {Meng, Weizhi}, publisher = {Springer}, address = {Cham}, doi = {10.1007/978-3-030-61078-4_28}, pages = {495 -- 509}, abstract = {The National Institute of Standards and Technology (NIST) started the standardization process for lightweight cryptography algorithms in 2018. By the end of the first round, 32 submissions have been selected as 2nd round candidates. NIST allowed designers of 2nd round submissions to provide small updates on both their specifications and implementation packages. In this work, we introduce a benchmarking framework for evaluating the performance of NIST Lightweight Cryptography (LWC) candidates on embedded platforms. We show the features and application of the framework and explain its design rationale. Moreover, we provide information on how we aim to present up-to-date performance figures throughout the NIST LWC competition. In this paper, we present an excerpt of our software benchmarking results regarding speed and memory requirements of selected ciphers. All up-to-date results, including benchmarking different test cases for multiple variants of each 2nd round algorithm on five different microcontrollers, are periodically published to a public website. While initially only the reference implementations were available, the ability of automatically testing the performance of the candidate algorithms on multiple platforms becomes especially relevant as more optimized implementations are developed. Finally, we show how the framework can be extended in different directions: support for more target platforms can be easily added, different kinds of algorithms can be tested, and other test metrics can be acquired. The focus of this paper should rather lay on the framework design and testing methodology than on the current results, especially for reference code.}, language = {en} } @inproceedings{ReuterStarkSedelmaieretal., author = {Reuter, Rebecca and Stark, Theresa and Sedelmaier, Yvonne and Landes, Dieter and Mottok, J{\"u}rgen and Wolff, Christian}, title = {Insights in Students' Problems during UML Modeling}, series = {2020 IEEE Global Engineering Education Conference (EDUCON): Proceedings}, booktitle = {2020 IEEE Global Engineering Education Conference (EDUCON): Proceedings}, doi = {10.1109/EDUCON45650.2020.9125110}, pages = {592 -- 600}, abstract = {UML (Unified Modeling Language) is the current de facto as well as de jure standard (ISO/IEC 19505:2012) notation to visualize models in software development. UML provides essential guidelines and rules to visualize and understand complex software systems. This is the reason why it has become part of curricula for software engineering courses at many universities worldwide. It is well known, however, that UML is hard to grasp for novices, mainly due to its complexity. In order to tackle the problem of teaching UML to novice students appropriately, it is inevitable to understand their needs and problems much better than we do now. This paper presents empirical insights into students' problems when developing common UML diagrams. Identified problems are generalized, giving rise to a problem catalogue that is derived from our empirical findings, thus establishing a basis for addressing these problems through focused learning arrangements.}, language = {en} } @inproceedings{GruberWolffMottoketal., author = {Gruber, Hans and Wolff, Christian and Mottok, J{\"u}rgen and Bazo, Alexander and Hauser, Florian and Schreistetter, Stefan}, title = {Tutorial on Software Engineering Education in Co-Located Multi-User Eye-Tracking-Environments}, series = {Proceedings of the 32nd IEEE Conference on Software Engineering Education and Training: Munich, November 2020}, booktitle = {Proceedings of the 32nd IEEE Conference on Software Engineering Education and Training: Munich, November 2020}, doi = {10.1109/CSEET49119.2020.9206170}, abstract = {We briefly describe a tutorial on the application of Eye-Tracking technology for Software Engineering Education. We will showcase our setup of a large-scale Eye-Tracking-Classroom and its usage for real-time improvement of traditional learning scenarios in Software Engineering Education. We will focus on the integration of gaze data into modern integrated development environments (IDEs) and demonstrate a complete workflow for its usage in co-located multi-user Eye-Tracking-Environments.}, language = {en} } @inproceedings{InderwiesMottok, author = {Inderwies, Tom and Mottok, J{\"u}rgen}, title = {Secure Software Update of a Secure Module in the Power Grid}, series = {Proceedings of the Regensburg Applied Research Conference 2020 (RARC 2020), July 31st}, booktitle = {Proceedings of the Regensburg Applied Research Conference 2020 (RARC 2020), July 31st}, pages = {25 -- 31}, language = {en} } @inproceedings{HauserSchreistetterReuteretal., author = {Hauser, Florian and Schreistetter, Stefan and Reuter, Rebecca and Mottok, J{\"u}rgen and Gruber, Hans and Holmqvist, Kenneth and Schorr, Nick}, title = {Code reviews in C++: Preliminary results from an eye tracking study}, series = {ETRA '20 Short Papers: ACM Symposium on Eye Tracking Research and ApplicationsJune 2020}, booktitle = {ETRA '20 Short Papers: ACM Symposium on Eye Tracking Research and ApplicationsJune 2020}, isbn = {ISBN 9781450371346}, doi = {10.1145/3379156.3391980}, pages = {1 -- 5}, abstract = {Code reviews are an essential part of quality assurance in modern software projects. But despite their great importance, they are still carried out in a way that relies on human skills and decisions. During the last decade, there have been several publications on code reviews using eye tracking as a method, but only a few studies have focused on the performance differences between experts and novices. To get a deeper understanding of these differences, the following experiment was developed: This study surveys expertise-related differences in experts', advanced programmers', and novices' eye movements during the review of eight short C++ code examples, including correct and erroneous codes. A sample of 35 participants (21 novices, 14 advanced and expert programmers) were recruited. A Tobii Spectrum 600 was used for the data collection. Measures included participants' eye movements during the code review, demographic background data, and cued retrospective verbal comments on replays of their own eye movement recordings. Preliminary results give proof for experience-related differences between participants. Advanced and expert programmers performed significantly better in case of error detection and the eye tracking data implies a more efficient reviewing strategy.}, language = {en} } @inproceedings{HauserStarkMottoketal., author = {Hauser, Florian and Stark, Theresa and Mottok, J{\"u}rgen and Gruber, Hans and Reuter, Rebecca}, title = {Deliberate Practice in Programming: How is it carried out by programmers?}, series = {ECSEE '20: Proceedings of the 4th European Conference on Software Engineering Education, Seeon, Germany, June 2020}, booktitle = {ECSEE '20: Proceedings of the 4th European Conference on Software Engineering Education, Seeon, Germany, June 2020}, isbn = {ISBN 9781450377522}, doi = {10.1145/3396802.3396815}, pages = {42 -- 46}, abstract = {This work in progress study examines through which activities programmers perform deliberate practice to improve their own skills in coding and programming. For this reason, a qualitative questionnaire was developed and conducted with a sample of 22 participants. The results indicate that programmers perform formal and informal forms of training and learning. Typically, a classical programming training in the context of a university course or for work-related reasons is a first step in the acquisition of expertise. Building on these basic skills, non-formal and informal learning activities are carried out by the learners. Especially the social interaction and the collaborative work with other programmers is of great importance in this context. The activities mentioned by the test persons fulfil the characteristics of deliberate practice and will be examined more closely in a further study.}, language = {en} } @inproceedings{SchmidFritzMottok, author = {Schmid, Michael and Fritz, Florian and Mottok, J{\"u}rgen}, title = {Parallel Programming in Real-Time Systems}, series = {Architecture of computing systems - ARCS 2019, 32nd international conference, Copenhagen, Denmark, May 20-21, 2019, proceedings}, booktitle = {Architecture of computing systems - ARCS 2019, 32nd international conference, Copenhagen, Denmark, May 20-21, 2019, proceedings}, publisher = {VDE-Verlag}, address = {Berlin}, abstract = {The enormous amounts of data modern real-time systems have to process lead to expensive, long-lasting calculations. In order to manage those computations in a timely manner, parallel task models have gained a lot of popularity lately. However, parallel programming can be very cumbersome and verbose. Other computationally intensive sectors have dealt with parallel computing for decades and have accumulated their experience in the development of parallel frameworks. Examples of well known parallel runtime systems are OpenMP, Intel Threading Building Blocks (TBB) and Microsoft Parallel Pattern Library (PPL). These runtime systems allow developers to enhance parallelism in their applications in a straightforward fashion. However, those parallel frameworks and the patternbased interfaces they provide might not be easily applicable in real-time systems. In this paper, we investigate the use of parallel programming frameworks in time-critical systems. On that account, we discuss considerations for the design of real-time applications that make use of such parallel runtime systems. Furthermore, we evaluate three library-based frameworks from different computing sectors, namely Intel Threading Building Blocks, Embedded Multicore Building Blocks (EMBB) and High Performance ParalleX (HPX), by conducting benchmarks of various parallel algorithms on an embedded multicore architecture.}, language = {en} } @inproceedings{MottokSchillerVoelkletal., author = {Mottok, J{\"u}rgen and Schiller, Frank and V{\"o}lkl, Thomas and Zeitler, Thomas}, title = {A concept for a safe realization of a state machine in embedded automotive applications}, series = {Computer safety, reliability, and security, 26th International Conference, SAFECOMP 2007, Nuremberg, Germany, September 18-21, 2007; proceedings}, booktitle = {Computer safety, reliability, and security, 26th International Conference, SAFECOMP 2007, Nuremberg, Germany, September 18-21, 2007; proceedings}, doi = {10.1007/978-3-540-75101-4_2}, pages = {283 -- 288}, abstract = {Currently, both fail safe and fail operational architectures are based on hardware redundancy in automotive embedded systems. In contrast to this approach, safety is either a result of diverse software channels or of one channel of specifically coded software within the framework of Safely Embedded Software. Product costs are reduced and flexibility is increased. The overall concept is inspired by the well-known Vital Coded Processor approach. Since Mealy state machines are frequently used in embedded automotive systems, application software with a general Mealy state machine is realized differently with Safely Embedded Software starting from the high level programming language C with corresponding measurements.}, language = {en} } @inproceedings{DeubzerMottokFlugetal., author = {Deubzer, Michael and Mottok, J{\"u}rgen and Flug, Christian and Zeitler, Thomas}, title = {Profiling Performance Analyse von Embedded Real-Time System Architekturen}, series = {Embedded Software Engineering Kongress, Tagungsband ; 8. bis 10. Dezember 2008, Sindelfingen}, booktitle = {Embedded Software Engineering Kongress, Tagungsband ; 8. bis 10. Dezember 2008, Sindelfingen}, pages = {155 -- 167}, language = {en} } @inproceedings{SchmidtMottok, author = {Schmidt, Peter and Mottok, J{\"u}rgen}, title = {"Werkstattbericht" Bioagile Softwareentwicklung}, series = {Embedded Software Engineering Kongress, Tagungsband ; 8. bis 10. Dezember 2008, Sindelfingen}, booktitle = {Embedded Software Engineering Kongress, Tagungsband ; 8. bis 10. Dezember 2008, Sindelfingen}, pages = {455 -- 460}, language = {de} } @inproceedings{MottokSchiller, author = {Mottok, J{\"u}rgen and Schiller, Frank}, title = {MISRA C++:2008 and safely embedded software - a safety framework for C++}, series = {Proceedings of the Automotive Safety \& Security Conference}, booktitle = {Proceedings of the Automotive Safety \& Security Conference}, language = {en} } @inproceedings{SchirdewahnMottok, author = {Schirdewahn, B. and Mottok, J{\"u}rgen}, title = {Implementierungsl{\"o}sungen f{\"u}r die Eigenentwicklung eines deterministischen, nicht preemptiven Echtzeit Betriebssystems zur Verwaltung eingebetteter Applikationen}, series = {Embedded Software Engineering Kongress, Tagungsband ; 8. bis 10. Dezember 2008, Sindelfingen}, booktitle = {Embedded Software Engineering Kongress, Tagungsband ; 8. bis 10. Dezember 2008, Sindelfingen}, pages = {141 -- 147}, language = {de} } @inproceedings{MottokSchiller, author = {Mottok, J{\"u}rgen and Schiller, Frank}, title = {Safely embedded software and MISRA C++: 2008 - a safety framework for c++}, series = {Proceedings of the SAFETY@SIEMENS Conference}, booktitle = {Proceedings of the SAFETY@SIEMENS Conference}, language = {en} } @inproceedings{Mottok, author = {Mottok, J{\"u}rgen}, title = {Safely embedded software- a safety framework for c++}, series = {Proceedings of the 1st Embedded Software Engineering Conference, 8. bis 10. Dezember 2008, Sindelfingen}, booktitle = {Proceedings of the 1st Embedded Software Engineering Conference, 8. bis 10. Dezember 2008, Sindelfingen}, pages = {444 -- 449}, language = {en} } @inproceedings{DeubzerMargullMottoketal., author = {Deubzer, Michael and Margull, Ulrich and Mottok, J{\"u}rgen and Niemetz, Michael and Wirrer, Gerhard}, title = {Partitionierungs-Scheduling von Automotive Restricted Tasksystemen auf Multiprozessorplattformen}, series = {Proceedings of the 2nd Embedded Software Engineering Congress, 8. bis 10. Dezember 2009, Sindelfingen}, booktitle = {Proceedings of the 2nd Embedded Software Engineering Congress, 8. bis 10. Dezember 2009, Sindelfingen}, pages = {536 -- 542}, language = {de} } @inproceedings{KraemerMottokMeier, author = {Kr{\"a}mer, Stefan and Mottok, J{\"u}rgen and Meier, Hans}, title = {Modifikation des Taskzustandsmodells des LLREF-Schedulers auf einem Dual-Core-Prozessor}, series = {Proceedings of the 2nd Embedded Software Engineering Congress, 8. bis 10. Dezember 2009, Sindelfingen}, booktitle = {Proceedings of the 2nd Embedded Software Engineering Congress, 8. bis 10. Dezember 2009, Sindelfingen}, pages = {628 -- 636}, language = {de} } @inproceedings{MottokHagelUteschetal., author = {Mottok, J{\"u}rgen and Hagel, Georg and Utesch, Matthias and Waldherr, Franz}, title = {Konstruktivistische Didaktik - ein Rezept f{\"u}r eine bessere Software Engineering Ausbildung?}, series = {Proceedings of the 2nd Embedded Software Engineering Congress, 8. bis 10. Dezember 2009, Sindelfingen}, booktitle = {Proceedings of the 2nd Embedded Software Engineering Congress, 8. bis 10. Dezember 2009, Sindelfingen}, pages = {601 -- 610}, language = {de} } @inproceedings{SchmidtMottok, author = {Schmidt, Peter and Mottok, J{\"u}rgen}, title = {Memorandum der Bioagile Software- und Systementwicklung}, series = {Proceedings of the 2nd Embedded Software Engineering Congress, 8. bis 10. Dezember 2009, Sindelfingen}, booktitle = {Proceedings of the 2nd Embedded Software Engineering Congress, 8. bis 10. Dezember 2009, Sindelfingen}, pages = {487 -- 497}, language = {de} } @inproceedings{BaerwaldHauffMottok, author = {B{\"a}rwald, Andreas and Hauff, Harald and Mottok, J{\"u}rgen}, title = {Qualification and certification of development tools for safety-critical applications}, series = {Proceedings of Dependability@SIEMENS Conference}, booktitle = {Proceedings of Dependability@SIEMENS Conference}, abstract = {This paper presents an overview on qualification and certification of tools used in the phases of the safety lifecycle for safety-critical applications, either for development or for verification and validation. Software development tools are widely used in the development of safety-critical software systems. More verification and validation procedures will be automated by software tools to reduce time consuming manual testing. The impact of software tools on functional safety is discussed. Based on normative regulations like IEC 61508 and ISO DIS 26262 different approaches for tool qualification and certification are presented.}, language = {en} } @inproceedings{SteindlMottokMeieretal., author = {Steindl, Michael and Mottok, J{\"u}rgen and Meier, Hans and Schiller, Frank and Fr{\"u}chtl, M.}, title = {Diskussion des Einsatzes von Safely Embedded Software in FPGA-Architekturen}, series = {Proceedings of the 2nd Embedded Software Engineering Congress, 8. bis 10. Dezember 2009, Sindelfingen}, booktitle = {Proceedings of the 2nd Embedded Software Engineering Congress, 8. bis 10. Dezember 2009, Sindelfingen}, pages = {655 -- 661}, language = {de} } @inproceedings{StudtMottokUteschetal., author = {Studt, Reimer and Mottok, J{\"u}rgen and Utesch, Matthias and Landes, Dieter}, title = {Anwendung der Bloom´schen Taxonomie auf Lehrinhalte des Software-Engineerings}, series = {Proceedings of the 2nd Embedded Software Engineering Congress, 8. bis 10. Dezember 2009, Sindelfingen}, booktitle = {Proceedings of the 2nd Embedded Software Engineering Congress, 8. bis 10. Dezember 2009, Sindelfingen}, pages = {583 -- 593}, language = {de} } @inproceedings{KraemerMottokMeier, author = {Kr{\"a}mer, Stefan and Mottok, J{\"u}rgen and Meier, Hans}, title = {Modifikation des Taskzustandsmodells des LLREF-Schedulers auf einem Dual-Core-Prozess}, series = {Proceedings of the 2nd Embedded Software Engineering Congress, 8. bis 10. Dezember 2009, Sindelfingen}, booktitle = {Proceedings of the 2nd Embedded Software Engineering Congress, 8. bis 10. Dezember 2009, Sindelfingen}, pages = {628 -- 636}, language = {de} } @inproceedings{SchorerKuntzMottok, author = {Schorer, Michael and Kuntz, Stefan and Mottok, J{\"u}rgen}, title = {Beschreibung eines kooperativen Tasksystems mit OSEK-konformen Scheduler durch Petri Netze}, series = {Proceedings of the 2nd Embedded Software Engineering Congress, 8. bis 10. Dezember 2009, Sindelfingen}, booktitle = {Proceedings of the 2nd Embedded Software Engineering Congress, 8. bis 10. Dezember 2009, Sindelfingen}, pages = {637 -- 644}, language = {de} } @inproceedings{StamatescuDeubzerMottoketal., author = {Stamatescu, G. and Deubzer, Michael and Mottok, J{\"u}rgen and Popescu, Dan}, title = {Migration overhead in multiprocessor scheduling}, series = {Proceedings of the 2nd Embedded Software Engineering Congress, 8. bis 10. Dezember 2009, Sindelfingen}, booktitle = {Proceedings of the 2nd Embedded Software Engineering Congress, 8. bis 10. Dezember 2009, Sindelfingen}, pages = {645 -- 654}, language = {en} }