Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
Andreas Zeller - Lehrstuhl für Softwaretechnik (Prof. Zeller) - Universität des Saarlandes
[go: Go Back, main page]

  

Andreas Zeller
Resume

Lehrstuhl für Softwaretechnik (Prof. Zeller)
Universität des Saarlandes, FR Informatik
Postfach 15 11 50
66041 Saarbrücken
E-mail: zeller@cs.uni-sb.de
Telefon: +49 (0)681 302-64011

Deutschsprachige Startseite Page d'acceuil en français English home page
   [Biographical Sketch | Experience | Education | Activities | Skills | Publications | Activities | Grants | Awards]
Andreas Zeller is a full professor at Universität des Saarlandes in Saarbrücken, Germany. His broad research area is software engineering, which concerns the construction and evolution of large, complex software systems at reasonable cost and high reliability. His research in this area concerns the analysis of these systems, especially the analysis of why these systems fail to work as they should.

Experience

Full Professor (C4) at Universität des Saarlandes, Saarbrücken, Germany (since May 2003)

  • Wrote a textbook on debugging, entitled "Why programs fail: A systematic guide to debugging". Co-published by Morgan Kaufmann and dpunkt.verlag, it should reach the shelves around September 2005.

    This is the first comprehensive textbook on debugging, covering a wide range of tools and techniques from hands-on observation to fully automated diagnoses. All this is built on a solid theory of how failures come to be.

  • My current and future work includes automated debugging, self-healing programs, software evolution, experimental program analysis, and exploit generation.

    We are now able to detect the code that causes a specific failure automatically; in fact, we can show that our concept of cause transitions is a significantly better locator of defects than any other methods previously known.

Associate Professor (C3) at Universität des Saarlandes, Saarbrücken, Germany (2001 to 2003)

  • Invented an effective and efficient method for isolating causes of program failures: Delta Debugging, applied on program states, isolates cause-effect chains from computer programs - "First, A happened, then B, and then C, which lead to the failure". The method is now publicly available via the AskIgor automated debugging services.

    Cause-effect chains can be extracted from programs as large and as obfuscated as the GNU C compiler. The impact of having automated debugging available for such programs cannot be estimated yet.

  • Developed Memory Graphs as a means to capture memory state and to examine and visualize program state using well-known graph algorithms.

    So far, the main use of memory graphs is their use in isolating cause-effect chains, as above. Other applications include visual exploration and state invariants expressed as graph properties.

Assistant Professor (Wiss. Assistent C1) at University of Passau, Bavaria, Germany (1999 to 2001)

  • Extended Delta Debugging to isolate general failure-inducing circumstances such as failure-inducing input, failure-inducing statements, or failure-inducing schedules. Got research and patent grants.

    Delta debugging can fully automate fault localization, the most difficult part of debugging. Its potential will keep me very busy in the years to come...

  • Developed Praktomat, a Web-based system for organizing programming courses. Praktomat automatically checks and tests submitted programs and lets students review each other's solutions.

    Praktomat was an enormous success in the students' view: 57.7% agreed that testing raised the quality of their programs (another 28.8% agreed partially); 63.5% confirmed that reviewing raised the quality of their programs (another 19.2% partially). On a scale from 1 (outstanding) to 6 (poor), the overall course got an average rating of 1.96.

  • Wrote a book on Programming Tools that demonstrates software engineering principles on selected programming tools.

    Students love this book: It not only discusses the practical usage, but also shows the software engineering concepts and techniques behind daily programming tools.

Assistant Professor (Wiss. Assistent C1) at Technical University of Braunschweig, Germany (1997 to 1999)

  • Developed Delta Debugging, an automated technique to isolate the change that causes a specific software failure. Basically, delta debugging answers the question ``Yesterday, my program worked. Today, it does not. Why?''

    Delta debugging brings together my previous work on configuration management and debugging; this combination promises several exciting research themes. Contact me for any details.

  • Conceptualized and taught courses in Design Patterns (seminar, 1997), Software Tools (lecture, 1997 and 1998), and Software Engineering (lecture, 1997/98, 1998/99, and 1999/2000).

    These lectures have been evaluated by the students. on a scale from 1 (outstanding) to 6 (poor), the average for Software Tools was 2.03; for Software Engineering, 2.26. Best categories were the presentation as well as the quality of the lecture notes.

Research Assistant (Wiss. Mitarbeiter) at Technical University of Braunschweig, Germany (1991 to 1997)

  • Developed the version set model, unifying the variety of software versioning concepts in one single versioning model, using feature logic as formal foundation.

    This was the first work that provided a unified formal base for software versioning concepts. It was presented on the major software engineering conferences as well as in the ACM transactions on software engineering. The resulting Ph.D. thesis won the Ernst Denert Award for the best German software engineering thesis in 1997.

  • Conceptualized, co-authored and maintained the GNU Data Display Debugger (DDD), a tool that visualizes the data structures of your program while it is executing.

    With more than 250,000 users, DDD is one of the most successful pieces of ``academic'' software ever written. All major information technology suppliers use DDD for software development; the list goes from Adobe and Compaq to Thomson and Xerox.

  • Held courses in Introduction to Programming (first-grade lecture, 1996/1997); Configuration Management (two one-day tutorials, 1996); Introduction to C++ (four one-week tutorials, 1992-1995); Software Engineering (exercises, 1992-1995); Functional Programming (exercise, 1991).

    In the student's evaluation, Introduction to Programming got an average grade of 2.21; the best category was the presentation style.

Education

Ph.D. in Computer Science (Dr.-Ing.) at Technical University of Braunschweig, Germany (1991 to 1997)

Computer Science Diploma (Dipl.-Inform.) at Technical University of Darmstadt, Germany (1984 to 1991)

  • Diploma thesis: VSE - a Visual Structure Editor. Grade: 1.2 (passed with distinction) in June, 1991.

Special Skills

  • Fluent in German, French, and English. Passive knowledge of Italian and Spanish.

Publications

Books

Journal Articles and Book Chapters

Conference Papers

Workshop Papers

Magazines and Encyclopedia

Theses

Lecture Notes

  • A. Zeller, G. Snelting: Einführung in Software Engineering. Lecture Notes, Passau, 2000 and Saarbrücken, 2001.
  • G. Snelting, A. Zeller: Einführung in Software Engineering. Lecture Notes, Braunschweig, 1998.
  • A. Zeller, J. Krinke: Software-Werkzeuge. Lecture Notes, Braunschweig, 1998.

Other Publications

Scientific Activities

Scientific Organizations

Grants

Awards


[Biographical Sketch | Experience | Education | Activities | Skills | Publications | Activities | Grants | Awards]

Andreas Zeller <zeller@cs.uni-sb.de> · http://www.st.cs.uni-sb.de/~zeller/resume.php3 · Stand: 2005-07-18 20:15