Christopher Preschern

Me

Welcome to my website. Here you'll find some information about me and you'll find a list of my publications and links to download some of them.


CV

since 2014

Software developer, requirements engineer, and project manager at the company B&R Industrial Automation GmbH.

2011 - 2014

PhD student at the Institute for Technical Informatics, Graz University of Technology

  • PhD - Electrical Engineering
    • PhD Thesis: "Pattern-Based Development of Embedded Systems for Safety and Security"
    • Teacher of of the courses "Industrial Software Development and Quality Management" and "Architecture of Distributed Systems"
  • Informatics Master
    • Focus on Embedded Systems
    • Master Thesis: "Design and Implementation of a Fault Injection System for Verifying Generic CPU Safety-Tests"

2006 - 2011

Graduate student at Graz University of Technology

  • 2006-2009 - Telematics Bachelor & Informatics Bachelor
    • Assistant of the course "Analysis T1"
  • 2009-2011 - Telematics Master
    • Focus on Embedded Systems and Security
    • Winter 2010 - ERASMUS semester abroad at UCD in Ireland
    • Master Thesis: "PISCAS - A Pisciculture Automation System Product Line"
2006

Army service

2001 - 2005

Technical high school - HTL Mössinger Straße, Klagenfurt, Austria

1997 - 2001

Grammar school - 'Gymnasium' Völkermarkt, Austria

1994 - 1997

Elementary school - St. Kanzian, Austria



Publications

I published a book on design patterns for the C programming language. The book is called Fluent C and provides C programmers with practical design and implementation guidance. You can find the book here:


Besides the book, I wrote several papers on design patterns, safety, security, and on software product lines. You can find an overview of these papers and some of them free for download here:

C Programming
Christopher Preschern: "A Pattern Story about C Programming", Proceeding of the 26th European Conference on Pattern Languages of Programs, 2021, PDF DOWNLOAD
Christopher Preschern: "Patterns for Organizing Files in Modular C Programs", Proceeding of the 25th European Conference on Pattern Languages of Programs, 2020, PDF DOWNLOAD
Christopher Preschern: "Patterns to Escape the #ifdef Hell", Proceeding of the 24th European Conference on Pattern Languages of Programs, 2019, PDF DOWNLOAD
Christopher Preschern: "Patterns for Returning Error Information in C", Proceeding of the 24th European Conference on Pattern Languages of Programs, 2019, PDF DOWNLOAD
Christopher Preschern: "Patterns for Returning Data from C Functions", Proceeding of the 23rd European Conference on Pattern Languages of Programs, 2018, PDF DOWNLOAD
Christopher Preschern: "C Patterns on Data Lifetime and Ownership", Proceeding of the 23rd European Conference on Pattern Languages of Programs, 2018, PDF DOWNLOAD
Christopher Preschern: "Patterns for C Iterator Interfaces", Proceeding of the 22nd European Conference on Pattern Languages of Programs, 2017, PDF DOWNLOAD
Christopher Preschern: "API Patterns in C", Proceeding of the 21st European Conference on Pattern Languages of Programs, 2016, PDF DOWNLOAD
Christopher Preschern: "Idioms for error handling in C", Proceeding of the 20th European Conference on Pattern Languages of Programs, 2015, PDF DOWNLOAD

Safety & Security
Christopher Preschern: "Pattern-Based Development of Embedded Systems for Safety and Security", PhD Thesis, Institute for Technical Informatics, Graz University of Technology, 2014
Christopher Preschern, Nermin Kajtazovic, Andrea Höller, Christian Kreiner: „Quantitative Security Estimation based on Safety Architecture Design Patterns”, Lecture Notes on Software Engineering (LNSE), 2014
Christopher Preschern, Nermin Kajtazovic, Andrea Höller, Christian Kreiner: „Pattern-Based Safety Development Methods: Overview and Comparison”, Proceedings of the 19th European Conference on Pattern Languages of Programs, 2014, PDF DOWNLOAD
Christopher Preschern: “Pattern-Based Development of Embedded Systems for Safety and Security”, Austrian Computer Science Day. Graz, 2014
Christopher Preschern, Nermin Kajtazovic, Christian Kreiner: "Building a safety architecture pattern system", 18th European Conference on Pattern Languages of Programs, 2013, PDF DOWNLOAD
Christopher Preschern, Nermin Kajtazovic, Christian Kreiner: "Applying and Evaluating Architectural IEC 61508 Safety Patterns", Lecture Notes on Software Engineering, 2013
Christopher Preschern, Nermin Kajtazovic, Christian Kreiner: "Catalog of Safety Tactics in the light of the IEC 61508 Safety LifeCycle", VikingPLoP, Ikaalinen/Finland, 2013
Christopher Preschern, Nermin Kajtazovic, Christian Kreiner: "Software-Based Remote Attestation for Safety-Critical Systems", Proceedings of the 2nd International Workshop on Engineering Safety and Security Systems (ESSS), Luxembourg/Luxembourg, 2013
Christopher Preschern, Nermin Kajtazovic, Christian Kreiner: "Built-In Security Enhancements for the 1oo2 Safety Architecture", Proceedings of the IEEE International Conference on Cyber Technology in Automation, Control, and Intelligent Systems, Bangkok/Thailand, 2012
Christopher Preschern, Nermin Kajtazovic, Christian Kreiner: "Archecture for Safe and Secure Automation System Devices", Proceedings of ECBS Conference, Novi Sad/Serbia, 2012
Christopher Preschern: "Catalog of Security Tactics linked to Common Criteria Requirements" , 19th Conference on Pattern Languages of Programs, Tucson/USA, 2012, PDF DOWNLOAD
Christopher Preschern, Kurt Dietrich: "Structuring Modular Safety Software Certification by Using Common Criteria Concepts", Proceedings of the 38th Euromicro Conference on Software Engineering and Advanced Applications. Izmir/Turkey, 2012

Domain Specific Languages
Christopher Preschern, Nermin Kajtazovic, Christian Kreiner: "Efficient Development and Reuse of Domain-Specific Languages for Automation Systems", International Journal of Metadata, Semantics and Ontologies, 2014
Christopher Preschern, Nermin Kajtazovic, Christian Kreiner: "Evaluation of Domain Modeling Decisions for two identical Domain Specific Languages", Lecture Notes on Software Engineering, 2013
Andrea Leitner, Christopher Preschern, Christian Kreiner: "Effective development of automation systems through domain-specific modeling in a small enterprise context", Journal of Software and systems modeling, 2012
Christopher Preschern, Nermin Kajtazovic, Christian Kreiner: "Applying Patterns to Model Driven Development of Automation Systems: An Industrial Case Study", 17th European Conference on Pattern Languages of Programs. Irsee/Germany, 2012, PDF DOWNLOAD
Christopher Preschern, Andrea Leitner, Christian Kreiner: "Domain Specific Language Architecture for Automation Systems: An Industrial Case Study", Proceedings of the 8th European Conference on Modelling Foundations and Applications. Copenhagen/Denmark, 2012
Christopher Preschern: "PISCAS - A Pisciculture Automation System", Master's Thesis, Institute for Technical Informatics, Graz University of Technology, 2011

Component Based Development
Nermin Kajtazovic, Christopher Preschern, Andrea Höller, Christian Kreiner: „Constraint-based Verification of Compositions in Safety-critical Component-based Systems”, Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing - Studies in Computational Intelligence, 2014
Nermin Kajtazovic, Christopher Preschern, Andrea Höller, Christian Kreiner: „Towards Pattern-based Reuse in Safety-critical Systems“, Proceedings of the 19th European Conference on Pattern Languages of Programs, 2014, PDF DOWNLOAD
Nermin Kajtazovic, Christopher Preschern, Andrea Höller, Christian Kreiner: „Towards Assured Dynamic Configuration of Safety-critical Embedded Systems”, ERCIM/EWICS/ARTEMIS Workshop on Dependable Embedded and Cyber-physical Systems and Systems-of-Systems (DECSoS’14), 2014
Nermin Kajtazovic, Christopher Preschern, Christian Kreiner: "Towards Predictable Dynamic Linking for Safety-critical Component-based Systems", 39th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), 2013
Nermin Kajtazovic, Christopher Preschern, Christian Kreiner: "Inversion of Control Container for Safety-critical Embedded Systems", 18th European Conference on Pattern Languages of Programs, 2013, PDF DOWNLOAD
Nermin Kajtazovic, Christopher Preschern, Christian Kreiner: "A Component-based Dynamic Link Support for Safety-critical Embedded Systems", Proceedings of the IEEE International Conference and Workshop on the Engineering of Computer Based Systems, Phoenix/Arizona, 2013
Nermin Kajtazovic, Christopher Preschern, Christian Kreiner: "A Persistent Naming Scheme for Embedded Systems in Automation", Proceedings of the IEEE International Conference and Workshop on the Engineering of Computer Based Systems, Phoenix/Arizona, 2013

Fault Injection
Christopher Preschern: "Design and Implementation of a Fault-Injection System for Verifying Generic IEC 61508 Safety-Tests", Master's Thesis, Institute for Technical Informatics, Graz University of Technology, 2014
Christopher Preschern, Nermin Kajtazovic, Andrea Höller, Christian Steger, Christian Kreiner: "Verifying Generic IEC 61508 CPU Self-Tests with Fault Injection", 8th International Design and Test Symposium, 2013
Andrea Höller, Armin Krieg, Christopher Preschern, Christian Steger, Christian Kreiner, Holger Bock, Joseph Haid: "Automatized High-Level Evaluation of Security Properties for RTL Hardware Designs, Workshop on Embedded Systems Security, 2013, PDF DOWNLOAD
Armin Krieg, Christopher Preschern, Johannes Grinschgl, Christian Kreiner, Christian Steger, Reinhold Weiß, Holger Bock, Joseph Haid: "Power And Fault Emulation For Software Verification and System Stability Testing in Safety Critical Environments", IEEE transactions on industrial informatics, 2013

Other topics
Christopher Preschern: “Pattern Language on how to Review Scientific Papers”, Proceedings of VikingPLoP 2014, PDF DOWNLOAD
Manuel Menghin, Norbert Druml, Christopher Preschern, Christian Steger, Reinhold Weiß, Josef Haid, Holger Bock: „Introduction of design pattern(s) for power-management in embedded systems”, Proceeding of the 18th European Conference on Pattern Languages of Programs, 2013, PDF DOWNLOAD
Stefan Kraxberger, Bernd Bergler, Andreas Reiter, Christopher Preschern: "Cost-effective Routing for a Greener Internet", IEEE/ACM International Conference on Green Computing and Communications, 2010
Christopher Preschern, Daniel Muschick, Stefan Galler: "Applying Scan Lines on a 2D Potential Field to Improve Team Cooperation Through Passing", 4th Austrian RoboCup Workshop, 2009
Galler, Altinger, Bergler, Hieden, Hoppe, Joham, Magnet, Maier, Mühlbacher-Karrer, Muschick, Preschern, Steinbauer, Unterberger, Wotawa: "Mostly Harmless: Team Description Paper 2009", Proceeding of the International RoboCup Symposium 2009, 2009