Associate Professor Jens Dietrich staff profile picture

Contact details +64 (06) 356 9099  ext. 84235

Associate Professor Jens Dietrich PhD

Associate Professor

School of Engineering and Advanced Technology

If you are a prospective student and interested in software engineering, then you might find this guide how to study Software Engineering useful. Also have a look at some of the (undergrad) student projects.

If you are considering postgraduate studies in software engineering, have a look at the latest project offers for 2014. An overview of past and current postgrad projects I have supervised / I am supervising can be found here.

If you are a practising software engineer, you might be interested in this tool I have developed: the Massey Architecture Explorer (MAE). You can simply upload your compiled program (Java bytecode), and MAE will visualise it, allow you to query your program for violations of OO design principles, and find critical dependencies preventing you from modularising the program. Some articles I have written for developers on orthogonality and dependency management can be found here.

If you are a Java programmer and like a challenge, have a look at the set of Java Puzzlers I have developed.   If you are an academic or a student studying at another university: I am working on making all lecture notes available to the public under the creative commons license, the first set for a second year course on software design and construction is now available. Note that this does not include some additional material like video lectures and tutorials - this is only available to enrolled students. I also maintain an open source repository of examples I use for teaching software design and construction, incl. examples using design patterns, modularity, web application design, meta-programming etc. Feel free to use this material, but please give me some credit if you do.   

I am an Associate Professor in the Engineering School at the Palmerston North Campus. I am the major leader of the Software Engineering program at Massey. I have a Master in Mathematics and a PhD in Computer Science from the University of Leipzig. I have worked for a couple of years in industry as consultant in Germany, Namibia, Switzerland and the UK, and returned in 2003 to academia. My research interests are in the areas of software design and componentry, agile software engineering techniques and business rule automation. Please go to my personal web site for more info. 

More about me...View less...


Contact details

  • Ph: +64 6 356 9099 ext 84235
    Location: AH 3.88, AgHort B
    Campus: Manawatu


  • MSc (German Diplommathematiker, 5-year degree) - University of Leipzig (1992)
  • Doctor rerum naturalium in Computer Science - University of Leipzig (1996)

Research Expertise

Research Interests

I am interested in the design and architecture of software. This includes program comprehension, and algorithms and tools for the automated improvement of software systems. I am particularly interested in methods that can be applied to large and complex real-world systems, like the Java Development Kit. I maintain close links with industry and developer communities, my current research is partially funded by a gift from Oracle. For more details, please check my personal web site.

An up-to-date list of my publications can be found on Google Scholar and on my personal web site. My web site also has infos about possible projects for postgrads, consulting expertise and offers, software and projects I have successfully completed.

If you have a degree in Computer Science or a related field, preferably some industry experience and are now interested in postgraduate studies in software engineering, please feel free to contact me. I am also interested to host visiting researchers or PhD students.

Area of Expertise

Field of research codes
Computer Software (080300): Information And Computing Sciences (080000):
Mathematical Sciences (010000): Numerical and Computational Mathematics (010300):
Open Software (080306): Programming Languages (080308): Software Engineering (080309)


Since 1996 I have worked as consultant in numerous software engineering projects, until 1999 as employee of the Swiss Bauer & Partner / TopLogic group and later as freelance consultant. This work was mainly in the area of Object-Oriented Software engineering (analysis, design and project management). Customers I have worked for include: Dresdner Bank (GER), VEW (GER), Audi (GER), Volkswagen (GER), Kleinwort Benson Wasserstein (UK), TopLogic Switzerland (CH), Daimler Chrysler (GER), Ellis Verboeket Terry Applied IP Law (NZ), Daimler Chrysler US (US), Bayerische Landesbank Munich (GER), The Government of Texas (USA), The Government of Namibia (NAM), General Electrics Financial Services (GER), Deloitte NZ (NZ), Landcare Research (NZ) and MUSAC (NZ). 

I am providing research and development contract services in the areas of business rule technology, software analysis and architectural refactoring. Please contact me per email for details. I am supervising or have supervised several student projects in collaboration with local NZ industry partners such as Kiwiplan, SolNet Solution, CentruFlow and Unlimited Realities.

For more details, please check my personal web site.

Research Projects

Summary of Research Projects

Position Current Completed
Project Leader 3 9

Consultancy and Languages


  • 2011 - MUSAC
    Architecture Review
  • 2008 - Ellis Verboeket Terry Applied IP Law
    Expert Witness
  • 2006 - Deloitte NZ
    Business Rule Engine Review
  • 2005 - Landcare Research
    DSS Design


  • English
    Last used: today
    Spoken ability: Excellent
    Written ability: Excellent
  • German
    Last used: today
    Spoken ability: Excellent
    Written ability: Excellent
  • Spanish
    Last used: last week
    Spoken ability: Average
    Written ability: Needs work

Supervision and Teaching


Most of the teaching material I develop is online. The lecture notes are available on my personal web site. I am also maintaining a code repository with programming examples and case studies. I develop screencasts for most of my lectures and tutorials, the videos are currently only available to enrolled students. 

Courses Coordinated

  • 159.251 Software Engineering Design and Construction
  • 159.272 Programming Paradigms
  • 159.707 Advanced Software Design and Construction

Current Doctoral Supervision

Co-supervisor of:

  • Li Sui - Doctor of Philosophy
    An Investigation into the Unsoundness of Static Program Analysis
  • Shawn Rasheed - Doctor of Philosophy
    Static Analysis to Detect Vulnerabilities in Processing Serialized Objects
  • Thilini Bhagya Randunu Pathirannehelage - Doctor of Philosophy
    Automatic Response Generation for HTTP-based Services

Completed Doctoral Supervision

Supervisor of:

  • 2014 - Syed Shah - Doctor of Philosophy
    On the Automation of Dependency-Breaking Refactorings in Java
  • 2013 - Graham Jenson - Doctor of Philosophy
    A Study of Software Component System Evolution
  • 2012 - Jevon Wright - Doctor of Philosophy
    A Modelling Language for Rich Internet Applications

Co-supervisor of:

  • 2013 - Cong Tran - Doctor of Philosophy
    Symmetric Parallel Class Expression Learning

Media and Links

Other Links

Massey Contact Centre Mon - Fri 8:30am to 4:30pm 0800 MASSEY (+64 6 350 5701) TXT 5222 Web chat Staff Alumni News Māori @ Massey