Self-Healing Systems
Seminar – Summer 2012

Lehrstuhl für Softwaretechnik (Prof. Zeller)
Universität des Saarlandes – Informatik
Campus E1 1
66123 Saarbrücken
E-mail: selfheal12-staff@st.cs.uni-saarland.de
Telefon: +49 681 302-70970

Deutschsprachige Startseite Page d'acceuil en fran?ais English home page
  

About this Seminar

Despite the rigorous development methods to produce high quality software products, and despite the continuous progress of software testing and analysis techniques, software systems are still deployed with bugs.

The presence of such bugs in the software can be considered more or less critical by the software developers, who may decide to address the issues after a long time. In the mean time, final users have to resign to use faulty applications, and suffer from more or less annoying failures.

This seminar focuses on how to automatically fix software programs at runtime to avoid the manifestation of bugs introduced during the development. We will investigate on how to automatically detect program failures, and we will analyze techniques to automatically find and apply the best fixes to "heal" faulty software systems.

Place and Time

  • Kick-Off meeting: Tuesday 17th April 16:00, Campus E 1 1 Room 1.09
  • Weekly meeting: every Wednesday 9:00 a.m., Campus E 1.1. Room 1.09
  • Summary hand-in: every Tuesday 12:00 p.m. (noon)

Important Dates

  • Monday 13th August: Second final presentation session
  • Thursday 9th August: First final presentation session
  • Wednesday 18th July: Deadline for doodle of the final presentations LINK
  • Wednesday 6th June: There is no meeting this day
  • Wednesday 25th April: First regular meeting
  • Tuesday 17th April: End of Pre-Registration, Kick-off Session

Final Presentation Schedule

Final Presentations on 9th of August.

  1. 10:00 – 10:30: DSDSR: a tool that uses dynamic symbolic execution for data structure repair
    • Ishtiaque Hussain and Christoph Csallner. DSDSR: a tool that uses dynamic symbolic execution for data structure repair. In Proceedings of the Eighth International Workshop on Dynamic Analysis (WODA ’10).
    • Assigned to: Alexey
  2. 10:30 – 11:00: Automatic workarounds for web applications
    • Antonio Carzaniga, Alessandra Gorla, Nicol` Perino, and Mauro Pezz`. Automatic workarounds for web applications. In Proceedings of the eighteenth ACM SIGSOFT international symposium on Foundations of software engineering (FSE ’10).
    • Assigned to: Nisa
  3. 11:00 – 11:30: Data structure repair using goal-directed reasoning
    • Brian Demsky and Martin Rinard. Data structure repair using goal-directed reasoning. In Proceedings of the 27th international conference on Software engineering (ICSE ’05).
    • Assigned to: Zhazira

Final Presentations on 13th of August

The final presentations will take place on 13th of August starting at 9 a.m. sharp.

  1. 9:00 – 9:30: Fault-Tolerant Systems
    • Israel Koren and C. Mani Krishna. 2007. Fault-Tolerant Systems. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA (Part of the chapter on Software Fault Tolerance)
    • Assigned to: Kiril
  2. 9:30 – 10:00: Automated Fixing of Programs with Contracts
    • Yi Wei, Yu Pei, Carlo A. Furia, Lucas S. Silva, Stefan Buchholz, Bertrand Meyer, Andreas Zeller. Automated Fixing of Programs with Contracts. In Proceedings of the International Symposium on Software Testing and Analysis 2010 (ISSTA’10)
    • Assigned to: Krishna
  3. 10:00 – 10:30: Automatically patching errors in deployed software
    • Jeff H. Perkins, Sunghun Kim, Sam Larsen, Saman Amarasinghe, Jonathan Bachrach, Michael Carbin,Carlos Pacheco, Frank Sherwood, Stelios Sidiroglou, Greg Sullivan, Weng-Fai Wong, Yoav Zibin, Michael D. Ernst, and Martin Rinard. 2009. Automatically patching errors in deployed software. In Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles (SOSP ’09).
    • Assigned to: Dragan
  4. 30 minute break

  5. 11:00 – 11:30: Automatic Input Rectification
    • Fan Long, Vijay Ganesh, Michael Carbin, Stelios Sidiroglou, and Martin Rinard. Automatic Input Rectification. International Conference on Software Engineering (ICSE), 2012.
    • Assigned to: Daniil
  6. 11:30 – 12:00: Automated Repair of HTML Generation Errors in PHP Applications using String Constraint Solving
    • H Samimi, M Schaefer, S Artzi, T Millstein, F Tip, L Hendren. Automated Repair of HTML Generation Errors in PHP Applications using String Constraint Solving. International Conference on SoftwareEngineering (ICSE), 2012.
    • Assigned to: Erik
  7. 12:00 – 12:30: Automatic Finding Patches Using Genetic Programming
    • Westley Weimer, ThanVu Nguyen, Claire Le Goues, Stephanie Forrest: Automatically Finding Patches Using Genetic Programming. International Conference on Software Engineering (ICSE) 2009: 364-374
    • Assigned to: David
  8. 60 minute break

  9. 13:30 – 14:00: In-field healing of integration problems with COTS components
    • Herve Chang, Leonardo Mariani, and Mauro Pezz`. 2009. In-field healing of integration problems with COTS components. In Proceedings of the 31st International Conference on Software Engineering (ICSE ’09).
    • Assigned to: Evica
  10. 14:00 – 14:30: Using Feature Locality: Can We Leverage History to Avoid Failures During Reconfiguration?
    • Brady J. Garvin, Myra B. Cohen, and Matthew B. Dwyer. ASAS '11 Proceedings of the 8th workshop on Assurances for self-adaptive systems
    • Assigned to: Marie
  11. 14:30 – 15:00: Detecting and escaping infinite loops with jolt
    • Michael Carbin, Sasa Misailovic, Michael Kling, and Martin C. Rinard. 2011. Detecting and escaping infinite loops with jolt. In Proceedings of the 25th European conference on Object-oriented programming (ECOOP’11), Mira Mezini (Ed.). Springer-Verlag, Berlin, Heidelberg, 609-633.
    • Assigned to: Manish
  12. 30 minute break

  13. 15:30 – 16:00: Microreboot: A technique for cheap recovery
    • George Candea, Shinichi Kawamoto, Yuichi Fujiki, Greg Friedman, and Armando Fox. Microreboot: A technique for cheap recovery. In Proceedings of the 6th conference on Symposium on Opearting Systems Design & Implementation - Volume 6 (OSDI’04), Vol. 6. USENIX Association, Berkeley, CA, USA.
    • Assigned to: Anastasia
  14. 16:00 – 16:30: Rx: treating bugs as allergies ‐ a safe method to survive software failures
    • Feng Qin, Joseph Tucek, Jagadeesan Sundaresan, and Yuanyuan Zhou. Rx: treating bugs as allergies ‐ a safe method to survive software failures. In Proceedings of the twentieth ACM symposium on Operating systems principles (SOSP ’05).
    • Assigned to: Julian

Paperlist

Due to
  • 25th April
  • Fault-Tolerant Systems
    Israel Koren and C. Mani Krishna. 2007. Fault-Tolerant Systems. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA (Part of the chapter on Software Fault Tolerance)
  • 2th May
  • Data structure repair using goal-directed reasoning
    Brian Demsky and Martin Rinard. Data structure repair using goal-directed reasoning. In Proceedings of the 27th international conference on Software engineering (ICSE ’05).
  • 9th May
  • DSDSR: a tool that uses dynamic symbolic execution for data structure repair
    Ishtiaque Hussain and Christoph Csallner. DSDSR: a tool that uses dynamic symbolic execution for data structure repair. In Proceedings of the Eighth International Workshop on Dynamic Analysis (WODA ’10).
  • 16th May
  • Automated Fixing of Programs with Contracts
    Yi Wei, Yu Pei, Carlo A. Furia, Lucas S. Silva, Stefan Buchholz, Bertrand Meyer, Andreas Zeller. Automated Fixing of Programs with Contracts. In Proceedings of the International Symposium on Software Testing and Analysis 2010 (ISSTA’10)
  • 23th May
  • Automatically patching errors in deployed software
    Jeff H. Perkins, Sunghun Kim, Sam Larsen, Saman Amarasinghe, Jonathan Bachrach, Michael Carbin,Carlos Pacheco, Frank Sherwood, Stelios Sidiroglou, Greg Sullivan, Weng-Fai Wong, Yoav Zibin, Michael D. Ernst, and Martin Rinard. 2009. Automatically patching errors in deployed software. In Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles (SOSP ’09).
  • 30th May
  • Automatic Input Rectification
    Fan Long, Vijay Ganesh, Michael Carbin, Stelios Sidiroglou, and Martin Rinard. Automatic Input Rectification. International Conference on Software Engineering (ICSE), 2012.
  • 13th June
  • Automatic workarounds for web applications
    Antonio Carzaniga, Alessandra Gorla, Nicol` Perino, and Mauro Pezz`. Automatic workarounds for web applications. In Proceedings of the eighteenth ACM SIGSOFT international symposium on Foundations of software engineering (FSE ’10).
  • 20th June
  • Automated Repair of HTML Generation Errors in PHP Applications using String Constraint Solving
    H Samimi, M Schaefer, S Artzi, T Millstein, F Tip, L Hendren. Automated Repair of HTML Generation Errors in PHP Applications using String Constraint Solving. International Conference on SoftwareEngineering (ICSE), 2012.
  • 27th June
  • Automatic Finding Patches Using Genetic Programming
    Westley Weimer, ThanVu Nguyen, Claire Le Goues, Stephanie Forrest: Automatically Finding Patches Using Genetic Programming. International Conference on Software Engineering (ICSE) 2009: 364-374
  • 4th July
  • In-field healing of integration problems with COTS components
    Herve Chang, Leonardo Mariani, and Mauro Pezz`. 2009. In-field healing of integration problems with COTS components. In Proceedings of the 31st International Conference on Software Engineering (ICSE ’09).
  • 11th July
  • Detecting and escaping infinite loops with jolt
    Michael Carbin, Sasa Misailovic, Michael Kling, and Martin C. Rinard. 2011. Detecting and escaping infinite loops with jolt. In Proceedings of the 25th European conference on Object-oriented programming (ECOOP’11), Mira Mezini (Ed.). Springer-Verlag, Berlin, Heidelberg, 609-633.
  • 18th July
  • Microreboot: A technique for cheap recovery
    George Candea, Shinichi Kawamoto, Yuichi Fujiki, Greg Friedman, and Armando Fox. Microreboot: A technique for cheap recovery. In Proceedings of the 6th conference on Symposium on Opearting Systems Design & Implementation - Volume 6 (OSDI’04), Vol. 6. USENIX Association, Berkeley, CA, USA.
  • 25th July
  • Rx: treating bugs as allergies — a safe method to survive software failures
    Feng Qin, Joseph Tucek, Jagadeesan Sundaresan, and Yuanyuan Zhou. Rx: treating bugs as allergies — a safe method to survive software failures. In Proceedings of the twentieth ACM symposium on Operating systems principles (SOSP ’05).

    Requirements for successful participation

    • Important: You can only take part in this seminar after you have successfully registered for it.
    • Prerequisites: This seminar is suitable for all students, bachelor's or master's, who are interested in software engineering and its applications. You don't need to have any prior knowledge regarding the subject, however participation in any other course offered by the Software Engineering chair might be useful.
    • For each meeting:
      • Hand in the weekly summary one day before the meeting at 12:00. Send a PDF by mail to selfheal12-staff@st.cs.uni-saarland.de, include your student id.
      • Your summary should give a good overview of the material that will be discussed in the following session. It is intended to show us that you familiarized yourself with the material.
      • You should also include ~3 questions on the material to prepare yourself for the discussion.
      • On each session we will ask one student to kick-start the discussion based on their summary (~5 minutes). This is an opportunity for you to get early feedback on your presentation style.
      • We also offer (ungraded) opportunities to present your summary in form of a five-minute presentation, allowing you to get early feedback on your presentation style.
    • Grading: Your final grade will consist of the following components:
      • 40 % based on your final presentation
      • 20 % based on the annotated slides
      • 40 % based on participation in discussions / handed-in summaries / hands-on projects

    HISPOS

    Please remember to register yourself in the HISPOS system. We can only provide you with a certificate ("Schein") at the end of the term, if you have registered for our seminar in the HISPOS system. Information on how to register is available here.

    Advisors

    <webmaster@st.cs.uni-saarland.de> · http://www.st.cs.uni-saarland.de/edu/selfhealing12/ · Stand: 2018-04-05 13:40