Krzysztof Czarnecki, Ph.D., P.Eng.

Professor of Electrical and Computer Engineering
I work in the area of Generative Software Development. See the overview paper for an introduction.

Short biography

Krzysztof Czarnecki is a Professor of Electrical and Computer Engineering at the University of Waterloo. Before coming to Waterloo, he was a researcher at DaimlerChrysler Research (1995-2002), Germany, focusing on improving software development practices and technologies in enterprise, automotive, and aerospace domains. He co-authored the book on "Generative Programming" (Addison- Wesley, 2000), which deals with automating software component assembly based on domain-specific languages. While at Waterloo, he held the NSERC/Bank of Nova Scotia Industrial Research Chair in Requirements Engineering of Service-oriented Software Systems (2008-2013) and has worked on a range of topics in model-driven systems and software engineering, including product lines engineering, design synthesis, variability modeling, model transformation, and domain-specific languages. He received the Premier's Research Excellence Award in 2004 and the British Computing Society in Upper Canada Award for Outstanding Contributions to IT Industry in 2008.


For students


Current Projects

Past Projects



  • MoDELS'09 conference chair
  • Bank of Nova Scotia / NSERC Industrial Research Chair (2008-2013)


A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 
Czarnecki, K., P. Gruenbacher, R. Rabiser, K. Schmid, and A. Wąsowski, "Cool Features and Tough Decisions: A Comparison of Variability Modeling Approaches", Variability Modelling of Software-intensive Systems (VaMoS), Leipzig, Germany, ACM Press, 01/2012. [pdf]
Czarnecki, K., I. Ober, J-M. Bruel, A. Uhl, and M. Völter, "Model Driven Engineering Languages and Systems, 11th International Conference, MoDELS 2008, Toulouse, France, September/October 2008, Proceedings", Lecture Notes in Computer Science, vol. 5301/2009, Berlin, Heidelberg, Springer-Verlag, 2008.
Czarnecki, K., S. Helsen, and U. Eisenecker, "Formalizing cardinality-based feature models and their specialization", Software Process: Improvement and Practice, vol. 10, issue 1, pp. 7 - 29, 01/2005. [pdf]
Czarnecki, K., M. Himsolt, and E. Richter, "DataFAN: A Practical Approach to Data Flow Analysis for Ada 95", Reliable Software Technologies — Ada-Europe 2002, Lecture Notes in Computer Science, vol. 2361, Vienna, Austria, Springer-Verlag, pp. 231 - 244, 2002.
Czarnecki, K., N. J. Foster, Z. Hu, R. Lämmel, A. Schurr, and J. F. Terwilliger, "Bidirectional Transformations: A Cross-Discipline Perspective, GRACE Meeting Notes, State of the Art, and Outlook", Theory and Practice of Model Transformations, Second International Conference, ICMT 2009, Zurich, Switzerland, June 29-30, 2009. Proceedings, vol. 5563, Berlin, Heidelberg, Springer, pp. 260 - 283, 2009. [pdf]
Czarnecki, K., and U. Eisenecker, Generative Programming: Methods, Tools, and Applications, , Reading, MA, USA, Addison-Wesley, pp. 864, 2000.
Czarnecki, K., S. Helsen, and U. Eisenecker, "Staged Configuration Using Feature Models", Third Software Product-Line Conference (SPLC’04), 2004, vol. 3154, Boston, USA, Springer-Verlag, pp. 266-283, 09/2004. [zip]
Czarnecki, K., K. Østerbye, and M. Völter, "Generative Programming", Object-Oriented Technology ECOOP 2002 Workshop Reader, vol. 2548, Berlin, Heidelberg, Springer-Verlag, pp. 15 - 29, 2002.
Czarnecki, K., C H P. Kim, and K. Kalleberg, "Feature Models are Views on Ontologies", 10th International Software Product Line Conference (SPLC'06), Baltimore, USA, IEEE, pp. 41 - 51, 2006. [pdf][pdf]
Czarnecki, K., "Concreteness Kills Adaptability", ECOOP’96 Workshop on Adaptability in Software Development, Linz, Austria, 07/1996.
Czarnecki, K., and A. Wąsowski, "Feature Diagrams and Logics: There and Back Again", SPLC '07: Proceedings of the 11th International Software Product Line Conference, Washington, USA, IEEE Computer Society, pp. 23–34, 2007. [pdf][pdf]
Czarnecki, K., T. O'Donnell, John, J. Striegnitz, and W. Taha, "DSL Implementation in MetaOCaml, Template Haskell, and C++", Domain-Specific Program Generation, International Seminar, Dagstuhl Castle, Germany, March 23-28, 2003, Revised Papers, vol. 3016, Berlin, Heidelberg, Springer-Verlag, pp. 51-72, 2003.
Czarnecki, K., and U. Eisenecker, "Components and Generative Programming", Software Engineering — ESEC/FSE ’99, vol. 1687, Berlin, Heidelberg, Springer, pp. 2 - 19, 1999. [pdf]
Czarnecki, K., S. She, and A. Wąsowski, "Sample Spaces and Feature Models: There and Back Again", 12th International Software Product Line Conference (SPLC 2008), Limerick, Ireland, IEEE, pp. 22 - 31, 2008. [pdf][pdf]
Czarnecki, K., and U. Eisenecker, "Generative and Component-Based Software Engineering, First International Symposium, GCSE’99, Erfurt, Germany, September 28–30, 1999, Revised Papers", Lecture Notes in Computer Science, vol. 1799/2000, Berlin / Heidelberg, Springer-Verlag, 1999.
Czarnecki, K., N. J. Foster, Z. Hu, R. Laemmel, A. Schuerr, and J. F. Terwilliger, "Bidirectional Transformations: A Cross-Discipline Perspective", International Conference of Model Transformation (ICMT): Springer-Verlag, pp. 260-283, 2010. [pdf]
Czarnecki, K., and U. Eisenecker, "Synthesizing objects", Concurrency - Practice and Experience, vol. 12, no. 14, pp. 1347-1377, 2000. [pdf]
Czarnecki, K., and S. Helsen, "Classification of Model Transformation Approaches", 2nd OOPSLA’03 Workshop on Generative Techniques in the Context of MDA, Anaheim, CA, USA, 2003.
Czarnecki, K., M. Antkiewicz, and C H P. Kim, "Multi-level customization in application engineering", Communications of the ACM, vol. 49, issue 12, pp. 60, 12/2006. [pdf]
Czarnecki, K., T. Bednasch, P. Unger, and U. Eisenecker, "Generative Programming for Embedded Software: An Industrial Experience Report", First ACM SIGPLAN/SIGSOFT International Conference on Generative Programming and Component Engineering (GPCE’02), Lecture Notes in Computer Science, vol. 2487, Pittsburgh, USA, Springer-Verlag, pp. 156 - 172, 2002.
Czarnecki, K., J-M. Favre, M. Gogolla, and T. Mens, "Essentials of the 4th UML/MoDELS Workshop in Software Model Engineering (WiSME’2005)", Satellite Events at the MoDELS 2005 Conference, vol. 3844, Berlin/Heidelberg, Springer-Verlag, pp. 151 - 158, 2005.
Czarnecki, K., M. Antkiewicz, C H P. Kim, S Q. Lau, and K. Pietroszek, "Model-Driven Software Product Lines", OOPSLA'05 Companion, 2005. [pdf]
Czarnecki, K., and U. Eisenecker, "Separating the Configuration Aspect to Support Architecture Evolution", ECOOP’2000 Workshop on Aspects and Dimensions of Concerns, Sophia Antipolis and Cannes, France, 2000.