Biographic Data
Olaf Zimmermann is a professor and institute partner at the Institute for Software at the University of Applied Sciences (HSR FHO) in Rapperswil, Switzerland. His areas of interest include API and cloud-native application design, Web application and integration architectures, and architectural knowledge management. Previously, Olaf was a senior principal scientist at ABB Corporate Research and a research staff member and executive IT architect at IBM Research who investigated the role of architectural decisions in the design process.
From 1999-2005, Zimmermann worked as a solution architect and consultant, helping international clients in multiple industries build enterprise-scale SOA/Web services and Java Enterprise Edition solutions on professional services projects. In the beginning of his career, he was a scientific consultant and developer in the IBM European Networking Center (ENC) in Heidelberg, Germany, focusing on industry-specific middleware frameworks for systems and network management.
Zimmermann is a certified Open Group Distinguished (Chief/Lead) IT Architect and a member of the editorial board of IEEE Software. He is an author of Perspectives on Web Services (Springer, 2003) and contributed to several IBM Redbooks, including the first one on Eclipse and Web services (2001).
Dissertation (2009)
An Architectural Decision Modeling Framework for Service-Oriented Architecture Design
In this thesis, we investigated whether reusable architectural decision models can support Service-Oriented Architecture (SOA) design. In the current state of the art, architectural decisions are captured ad hoc and retrospectively on projects; this is a labor-intensive undertaking without immediate benefits. On the contrary, we investigate the role reusable architectural decision models can play during SOA design: We treat recurring architectural decisions as first-class method elements and propose an architectural decision modeling framework and a reusable architectural decision model for SOA which guide the architect through the SOA design. Our approach is tool supported.
Our framework is called SOA Decision Modeling (SOAD). SOAD provides a technique to systematically identify recurring decisions. Our reusable architectural decision model for SOA conforms to a metamodel supporting reuse and collaboration. The model organization follows Model-Driven Architecture (MDA) principles and separates long lasting platform-independent decisions from rapidly changing platform-specific ones. The alternatives in a conceptual model level reference SOA patterns. This simplifies the initial population and ongoing maintenance of the decision model. Decision dependency management allows knowledge engineers and software architects to check model consistency and prune irrelevant decisions. Moreover, a managed issue list guides through the decision making process. To update design artifacts according to decisions made, we inject decision outcome information into design model transformations. Finally, a Web-based collaboration system provides tool support for the framework steps and concepts.
The SOAD framework is not only applicable to enterprise application and SOA design, but also to other application genres and architectural styles. SOAD supports use cases such as education, knowledge exchange, design method, review technique, and governance instrument.
Publikationen
Books and Dissertation
- (69) O. Zimmermann, An Architectural Decision Modeling Framework for Service-Oriented Architecture Design, dissertation.de, 2009 (ISBN: 3-540-00914-0).
- (68) O. Zimmermann, M. Tomlinson, S. Peuser, Perspectives on Web Services, Applying SOAP, WSDL, and UDDI to Real-World Projects. Springer Professional Computing, 2003 (ISBN: 3-540-00914-0).
- (67) U. Wahli, M. Tomlinson, O. Zimmermann, W. Deruyk, D. Hendricks, Web Services Wizardry with WebSphere Studio Application Developer. IBM Redbook, 2002 (ISBN: 0-738-42335-1).
Reviewed papers in journals and proceedings
- (66) M. Stocker, O. Zimmermann, D. Lübke, U. Zdun, C Pautasso, Interface Quality Patterns – Crafting and Consuming Message-Based Remote APIs, Proceedings of the 23nd European Conference on Pattern Languages of Programs (EuroPLOP) (2018) (to appear)
- (65) G. Pardon, C. Pautasso, O. Zimmermann, Consistent Disaster Recovery for Microservices: the BAC Theorem. IEEE Cloud Computing 5(1), 49-59 (2018)
- (64) A. Furda, C. Fidge, O. Zimmermann, W. Kelly, A. Barros, Migrating Enterprise Legacy Source Code to Microservices: On Multitenancy, Statefulness, and Data Consistency, IEEE Software 35 (3), 63-72 (2018)
- (63) C. Pahl, P. Jamshidi, O. Zimmermann, Architectural Principles for Cloud Software, ACM Transactions on Internet Technology (TOIT) 18 (2), 17:1-17:23 (2018)
- (62) C. Pautasso, O. Zimmermann, The Web as a Software Connector: Integration Resting on Linked Resources, IEEE Software 35 (1), 93-98 (2018)
- (61) O. Kopp, A. Armbruster, O. Zimmermann, Markdown Architectural Decision Records: Format and Tool Support, Proc. of ZEUS (2018)
- (60) B. Jazayeri, O. Zimmermann, G. Engels, D. Kundisch, A Variability Model for Store-Oriented Software Ecosystems: An Enterprise Perspective, Proc. of International Conference on Service-Oriented Computing (2017)
- (59) O. Zimmermann, Microservices Tenets: Agile Approach to Service Development and Deployment, Overview and Vision Paper, Springer Journal of Computer Science Research and Development 32(3-4): 301-310 (2017)
- (58) O. Zimmermann, Architectural Refactoring for the Cloud: a Decision-Centric View on Cloud Migration, Springer Journal of Computing 99(2): 129-145 (2017)
- (57) U. Van Heesch, T. Theunissen, O. Zimmermann, U. Zdun, Software Specification and Documentation in Continuous Software Development: A Focus Group Report, Proceedings of the 22nd European Conference on Pattern Languages of Programs (EuroPLOP), ACM Digital Library (2017)
- (56) C. Pautasso, O. Zimmermann, M. Amundsen, J. Lewis, N. Josuttis, Microservices in Practice, Part 1: Reality Check and Service Design, IEEE Software 34 (1), 91-98 (2017)
- (55) C. Pautasso, O. Zimmermann, M. Amundsen, J. Lewis, N. Josuttis, Microservices in Practice, Part 2: Service Integration and Sustainability, IEEE Software 34 (2), 97-104 (2017)
- (54) O. Zimmermann, M. Stocker, D. Lübke, U. Zdun, Interface Representation Patterns – Crafting and Consuming Message-Based Remote APIs, Proceedings of the 22nd European Conference on Pattern Languages of Programs (EuroPLOP), ACM Digital Library (2017)
- (53) Hohpe, G., Ozkaya, I., Zdun, U., Zimmermann O., The Software Architect’s Role in the Digital Age. Guest Editorial, IEEE Software (2016)
- (52) O. Zimmermann, Designed and Delivered Today, Eroded Tomorrow? Towards an Open and Lean Architecting Framework Balancing Agility and Sustainability, Proc. of ECSA SAGRA (2016).
- (51) M. Gysel, L. Kölbener, W. Giersche, O. Zimmermann, Service Cutter: A Systematic Approach to Service Decomposition, Proc. of ESOCC 2016, Springer LNCS.
- (50) O. Zimmermann, Microservices Tenets: Agile Approach to Service Development and Deployment, Overview and Vision Paper., Proc. of Symposium and Advanced School on Service-Oriented Computing (SummerSoC), 2016
- (49) H. Muccini, K. E. Harper, R. Heinrich, J. Bosch, N. Plouzeau, O. Zimmermann, L. Baresi, V. Cortellessa, Welcome Message from the Chairs of WICSA, QoSA and CBSE. Proc. of CBSE 20116.
- (48) O. Zimmermann, C. Pautasso, G. Hohpe, B. Woolf, A Decade of Enterprise Integration Patterns: A Conversation with the Authors. , IEEE Software 33(1): 13-19 (2016)
- (47) O. Zimmermann, Architectural Refactoring for the Cloud: a Decision-Centric View on Cloud Migration, Proc. of Symposium and Advanced School on Service-Oriented Computing (SummerSoC), 2015
- (46) O. Zimmmermann, Metrics for Architectural Synthesis and Evaluation: Use Cases and Compilation by Viewpoint, Proc. of ICSE SAM 2015 (Second International Workshop on Software Architecture and Metrics)
- (45) C. Carrillo, R. Capilla, O. Zimmermann, U. Zdun: Guidelines and Metrics for Configurable and Sustainable Architectural Knowledge Modelling, Proc. of ECSA SAGRA Workshop 2015
- (44) O. Zimmermann, L. Wegmann, H. Koziolek, T. Goldschmidt, Architectural Decision Guidance across Projects, Proc. of. IEEE/IFIP WICSA 2015
- (43) O. Zimmermann, Architectural Refactoring: A Task-Centric View on Software Evolution. IEEE Software 32(2): 26-29 (2015)
- (42) C. Pautasso, O. Zimmermann, Seeking Your Insights. IEEE Software 32(2): 7-9 (2015)
- (41) M. Anvaari, O. Zimmermann, Semi Automated Design Guidance Enhancer (SADGE): A Framework for Architectural Guidance Development, Proc. of ECSA 2014, Springer LNCS (2014).
- (40) M. Anvaari, O. Zimmermann, Towards Reusing Architectural Knowledge as Design Guides, Proc. of the Twenty-Sixth International Conference on Software Engineering & Knowledge Engineering (SEKE), Knowledge Systems Institute (KSI) (2014).
- (39) O. Zimmermann, H. Koziolek, IEEE Software, Program Highlights and Articles from SEI SATURN 2013, IEEE Software, Volume 31, Number 2 (2014).
- (38) U. Zdun, R. Capilla, H. Tran, O. Zimmermann, Sustainable Architectural Design Decisions, IEEE Software, Volume 30, Number 6 (2013).
- (37) G. Hohpe, R. Wirfs-Brock, J. Yoder, O. Zimmermann, Twenty Years of Software Patterns Impact, IEEE Software, Volume 30, Number 6 (2013).
- (36) P. Lago, R. Kazman, N. Meyer, M. Morisio, H. A. Müller, F. Paulisch, G. Scanniello, B. Penzenstadler, O. Zimmermann, Exploring Initial Challenges for Green Software Engineering: Summary of the First GREENS Workshop, at ICSE 2012. ACM SIGSOFT Software Engineering Notes 38(1), 2013.
- (35) O. Zimmermann, C. Miksovic, J. Küster, Reference Architecture, Metamodel and Modeling Principles for Architectural Knowledge Management in Information Technology Services. Journal of Systems and Software, Elsevier. Volume 85, Issue 9, Pages 2014-2033, Sept. 2012.
- (34) O. Zimmermann, Architectural Decision Identification in Architectural Patterns. WICSA/ECSA Companion Volume 2012, Pages 96-103.
- (33) C. Miksovic, O. Zimmermann, Architecturally Significant Requirements, Reference Architecture and Metamodel for Knowledge Management in Information Technology Services (best paper). Proc. of IEEE/IFIP WICSA 2011 (2011).
- (32) O. Zimmermann, Architectural Decisions as Reusable Design Assets. IEEE Software, Volume 28, Issue 1, Pages 64-69, Jan./Feb. 2011.
- (31) K. Julisch, C. Suter, T. Woitalla, O. Zimmermann, Compliance by Design – Bridging the Chasm between Auditors and IT Architects. Computers & Security, Elsevier. Volume 30, Issue 6-7, Sep.-Oct. 2011.
- (30) R. Capilla, O. Zimmermann, U. Zdun, P. Avgeriou, J. M. Küster, An Enhanced Architectural Knowledge Metamodel Linking Architectural Design Decisions to Other Artifacts in the Software Engineering Lifecycle. Proc. Of ECSA 2011, Springer LNCS (2011).
- (29) P. Könemann, O. Zimmermann, Linking Design Decisions to Design Models in Model-Based Software Development. Proc. of ECSA 2010, Springer LNCS (2010).
- (28) J. Küster, T. Gschwind, O. Zimmermann, Incremental Development of Model Transformation Chains Using Automated Testing. Proc. of MoDELS 2009, Springer LNCS (2009).
- (27) M. Novak, C. Pautasso, O. Zimmermann, Architectural Decision Modeling with Reuse: Challenges and Opportunities. Proc. of IEEE/ACM ICSE SHARK (2010).
- (26) O. Zimmermann, J. Koehler, F. Leymann, R. Polley, N. Schuster, Managing Architectural Decision Models with Dependency Relations, Integrity Constraints, and Production Rules. Journal of Systems and Software, Elsevier. Volume 82, Issue 8, August 2009, Pages 1249-1267. Available online 5 February 2009.
- (25) W.-J. van den Heuvel, O. Zimmermann, F. Leymann, P. Lago, I. Schieferdecker, U. Zdun, and P. Avgeriou, Software Service Engineering: Tenets and Challenges. In: Proceedings of the IEEE/ACM ICSE 2009 Principles of Engineering Service-Oriented Systems (PESOS) workshop.
- (24) W.-J. van den Heuvel, O. Zimmermann, F. Leymann, T. Shan, Software Service Engineering: Executive Summary. In: Dagstuhl Seminar Proceedings 0921.
- (23) C. Pautasso, O. Zimmermann, F. Leymann, RESTful Web Services vs. Big Web Services: Making the Right Architectural Decision. Proceedings of WWW 2008, ACM, 2008. Pages 805-814.
- (22) O. Zimmermann, U. Zdun, T. Gschwind, F. Leymann, Combining Pattern Languages and Architectural Decision Models into a Comprehensive and Comprehensible Design Method. Proceedings of IEEE WICSA 2008, IEEE Computer Society, 2008. Pages 157-166.
- (21) O. Zimmermann, J. Grundler, S. Tai, F. Leymann, Architectural Decisions and Patterns for Transactional Workflows in SOA. Proceedings of ICSOC 2007, LNCS 4749/2007, Springer, 2007. Pages 81-93.
- (20) O. Zimmermann, T. Gschwind, J. Küster, F. Leymann, N. Schuster, Reusable Architectural Decision Models for Enterprise Application Development. Proceedings of QoSA 2007, LNCS 4880/2008, Springer, 2008. Pages 157-166.
- (19) N. Schuster, O. Zimmermann, C. Pautasso, ADkwik: Web 2.0 Collaboration System for Architectural Decision Engineering. Proceedings of the Nineteenth International Conference on Software Engineering & Knowledge Engineering (SEKE 2007), Knowledge Systems Institute Graduate School, 2007. Pages 255-260.
- (18) E. Fernandez, P. Colmondeley, O. Zimmermann, Extending a Secure System Development Methodology to SOA. Proceedings of the 18th International Conference on Database and Expert Systems Applications (DEXA 2007). IEEE Computer Society, 2007. Pages 749-754.
- (17) O. Zimmermann, J. Koehler, F. Leymann, Architectural Decision Models as Micro-Methodology for Service-Oriented Analysis and Design. Architectural Decision Models as Micro-Methodology for Service-Oriented Analysis and Design. Proceedings of the Workshop on Software Engineering Methods for Service-oriented Architecture (SEMSOA 2007), CEUR-WS.org/Vol-244
- (16) O. Zimmermann, J. Koehler, F. Leymann, The Role of Architectural Decisions in Model-Driven Service-Oriented Architecture Construction Proceedings of OOPSLA 2006 Workshop on Best Practices and Methodologies in Service-Oriented Architectures, Unipub, 2006. Pages 143-149.
- (15) O. Zimmermann, V. Doubrovski, J. Grundler, K. Hogg, Service-Oriented Architecture and Business Process Choreography in an Order Management Scenario, Companion to the 20th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA '05). ACM, 2005. Pages 301-312.
- (14) O. Zimmermann, N. Schlimm, G. Waller, M. Pestel, Analysis and Design Techniques for Service-Oriented Development and Integration, INFORMATIK 2005 – Informatik LIVE! Band 2, Beiträge der 35. Jahrestagung der Gesellschaft für Informatik e.V. (GI), Bonn, 2005. Pages 606-611.
- (13) O. Zimmermann, S. Milinski, M. Craes, F. Oellermann, Second Generation Web Services-Oriented Architecture in Production in the Finance Industry, Companion to the 19th Annual ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA '04). ACM, 2004. Pages 283-289.
- (12) M. Brandner, M. Craes, F. Oellermann, O. Zimmermann, Web Services-Oriented Architecture in Production in the Finance Industry, Informatik-Spektrum 02/2004, Springer-Verlag, 2004. Pages 135-145.
Book chapters and additional publications
- (11) A. Furda, C. Fidge, A. Barros, O. Zimmermann, Re-engineering data-centric information systems for the Cloud. A method and architectural patterns promoting multi-tenancy. In: Mistrík, I., Bahsoon, R., Ali, N., Heisel, M., Maxim, B. (eds.): Software Architecture for Big Data and the Cloud. Elsevier (2017).
- (10) O. Zimmermann, Do Microservices Pass the Same Old Architecture Test? or: SOA is Not Dead – Long Live (Micro-)Services, Positioning Paper, SEI SATURN 2015 Microservices Workshop, 2015
- (9) O. Zimmermann, Software-Design bringt Programmcode auf Trab, HSR-Magazin 2/2013 (in German).
- (8) O. Zimmermann, C. Miksovic, Decisions Required vs. Decisions Made: Connecting Enterprise Architects and Solution Architects via Guidance Models, in: Mistrík, I., Tang, A., Bahsoon R., Stafford, J. (eds.), Aligning Enterprise, System, and Software Architectures. IGI Global (2013).
- (7) J. M. Küster, H. Völzer, O. Zimmermann, Managing Artifacts with a Viewpoint-Realization Level Matrix, Book Chapter, in: P. Avgeriou, J. Grundy, J. G. Hall, P. Lago, I. Mistrik, Relating Requirements and Architectures, Springer-Verlag (2011).
- (6) R. Capilla, O. Zimmermann, U. Zdun, P. Avgeriou, J. M. Küster, An Enhanced Architectural Knowledge Metamodel Linking Architectural Design Decisions to Other Artifacts in the Software Engineering Lifecycle, Technical Report, Universidad Rey Juan Carlos, Madrid, Spain (2011).
- (5) O. Zimmermann, P. Kopp, S. Pappe, Architectural Knowledge in a SOA Infrastructure Reference Architecture, Buchkapitel, in: M. Ali Babar, T. Dingsøyr, P. Lago, H. van Vliet (eds.), Software Architecture Knowledge Management: Theory and Practice, Springer-Verlag (2009)
- (4) O. Zimmermann, N. Schuster, P. Eeles, Modeling and Sharing Architectural Decisions, Part 1: Concepts, IBM developerWorks, August 2008
- (3) S. Tai, T. Mikalsen, I. Rouvellou, J. Grundler, O. Zimmermann, Transactional Web Services, Buchkapitel, in: D. Georgakopoulos and M. P. Papazoglou (eds.), <href="http: mitpress.mit.edu="" catalog="" item="" default.asp?ttype="2&tid=11654"" target="_blank">Service-Oriented Computing, MIT Press, 2008</href="http:>
- (2) O. Zimmermann, P. Krogdahl, C. Gee, Elements of Service-Oriented Analysis and Design, IBM developerWorks Web services zone, July 2004
- (1) O. Zimmermann, F. Müller, Web Services Project Roles, IBM developerWorks Web services zone, January 2004
Selected conference presentations
- Präsentation zu Domain-Driven Design and Microservices am HPI Master Seminar (Februar 2018).
- Keynote auf der Konferenz CSCUBS 2017.
- Eingeladener Vortrag Service Design as a Set of Recurring Architectural Decisions: Principles, Patterns and Project Lessons at HPI FutureSoC 2017.
- Keynote im ECSA SAGRA 2016 Workshop.
- Präsentation zu Softwarearchitekturen für Workflow-Management (8. Arbeitstreffen Software-Architektur, Softwareforen Leipzig).
- Architekturen 2014 (Jahrestreffen der Fachgruppe Architekturen der Gesellschaft für Informatik).
- Präsentation am Open Cloud Day 2014, organized by Swiss Open Systems User Group.
- OOP 2014,Cloud Computing aus der Sicht des Anwendungsarchitekten und Architectural Refactoring - agile Umsetzung von Modernisierungsentscheidungen (Konferenzvorträge).
- Architectural Decisions: The State of Affairs and the Way Forward SEI SATURN 2013 birds-of-a-feather session report.
- Invited IEEE Software Speaker, SEI SATURN 2012, Making Architectural Knowledge Sustainable - The Y Approach Industrial Practice Report and Outlook
- SEI SATURN 2011, Guidance Models and Decision-Making Tooling for SOA, Cloud, and Outsourcing Solution Design
- SIGS-DATACOM OOP 2011, Zentrale Entscheidungen im SOA-Entwurf: Modellierung und Top 10
- SEI Webinar, Architectural Knowledge Management: Decision Guidance in Service-Oriented Architecture Design
- SEI SATURN 2010, An Architectural Decision Modeling Framework for SOA and Cloud Design (IEEE Software best presentation)
- IEEE/IFIP Working International Conference of Software Architecture (WICSA) 2009 Tutorial, Recurring Architectural Decisions - A Context-Specific Guide through Architecture Design
- Zehnter nationaler niederländischer Architekturkongress 2008, eingeladener Vortrag
- ACM Conference on Object-Oriented Programming Languages, Systems and Applications (OOPSLA) 2008: Co-Chair Development Program, SOA and Web services Tutorial
- IEEE European Conference on Web Services (ECOWS) 2007: Keynote, SOA und Web Services Seminar
- ACM Conference on Object-Oriented Programming Languages, Systems and Applications (OOPSLA) 2007: SOA und Web Services Tutorial, SOA workshop organization and keynote
- ACM Conference on Object-Oriented Programming Languages, Systems and Applications (OOPSLA) 2006: Web Services Tutorial, SOA Workshop
- ACM OOPSLA 2005: Tutorial, Practitioner Report
- IBM Kundenkonferenz WebSphere Technical Exchange (WTE) 2005: Lecture, Meet-the-Experts Panel
- ACM OOPSLA 2004 Practitioner Report
- IBM WTE 2004: Three Lectures, Birds-of-a-Feather Session
- iX Conference J2EE, .Net, Web Services – Hype and Reality, 2003
- IBM WTE 2003
- IBM developerWorks Live! 2003
Selected Professional Activities
- Insights Department Co-Editor, IEEE Software (seit 2014), Advisory Board Member (2011-2014)
- Guest Editor, Theme Issue The Role of the Software Architect in the Digital Age, IEEE Software (2016)
- DDD and REST Panel Moderation, WS-REST workshop at ICWE 2016 (2016)
- Program Chair, CompArch CBSE 2016
- Industry Chair, ECSA 2014
- Technical Committee Member, SEI SATURN (seit 2014)
- Program Co-chair, SEI SATURN 2013
- Tutorial Chair, SEI SATURN 2012
- Steering Committee Member, SummerSoC and ESOCC conference series
- Industry Chair, IEEE/IFIP WICSA 2011 and CompArch/WICSA 2011 Industry Day Organisator
- Industry Chair, IEEE ECOWS 2011
- Theme lead for Architectural Knowledge Management, SEI SATURN 2011
- Mitorganisator, Schloss Dagstuhl Seminar zu Software Service Engineering, 2009
- Development Program Co-chair, ACM OOPSLA 2008
- Programmkommittee-Mitglied und Reviewer, z.B. für IEEE Software, ESE, IST, JSS, JSEP, JUGS, Spriger Computing, TSE; ECMFA, ECSA, ECOWS, ESEC/FSE, ESOCC, ICSE SEET, ICSA, ICSOC, Modelsward, OOP, QoSA, SAM, SANCS, SATURN, SHARK, SummerSoC, Technical Debt, WESOA, WS-REST, WICSA