Header
Software Reengineering

News

Software Re-Engineering 2011 web-site online

Consider registering for the this year's Software Re-engineering course!

10.08.11 - 00:00

By: Martin Pinzger

Overview

Software re-engineering is concerned with restructuring a software system to fix real or perceived problems in preparation for further development and extension of the system. This course is on theories and best practices of re-engineering and the application of them in the re-engineering lab.

Learning Objectives

After completing this course students will be able to:

  • List state-of-the-art techniques and tools in software re-engineering;
  • Explain and apply best practices to analyze and understand existing software systems;
  • Use heuristics and tools to detect shortcomings in the design and implementation of software systems;
  • Apply tests and re-factoring techniques to systematically remove these shortcomings

Organisation

Number: MINF4510
Docent: Martin Pinzger
Where & when: Block course, the first lecture will be on 21.9.2011 in room IFI 1.D.07.
LV-Details: im Vorlesungsverzeichnis
AP (ECTS): 4
Language: English
Registration until Fr., 14.10.2011, 17h

Grading

The grading is based on:

  • Assignment I: Problem Detection (30%)
  • Assignment II: Re-engineering (30%)
  • The final presentation of your results (20%)
  • The oral examination after/during the final presentation (20%)
  • Your contribution to the lecture (+/- 5%)

Schedule

The lecture will be in three blocks. The first block is from 21.9-23.9.2011, the second block is from 2.11.-4.11.2011. Presentations and final examinations will be on 16.12.2011.

1. Block: Problem Detection

Date Start End Room Titel/Slides Lecturer
21.09.2011 14:00 15:45 IFI 1.D.07 Introduction
Setting Direction
Read Ch. 1, 2, and 3 of course book
Martin Pinzger
22.09.2011 08:15 10:00 IFI 1.D.07 Reverse Engineering: Initial Understanding and Detailed Model Capture
DA4Java tool demo
Read Ch. 4 and 5 of course book
Martin Pinzger
22.09.2011 14:00 15:45 IFI 1.D.07 Problem Detection: Code Smells and Evolution
Read refactoring.com and here
Martin Pinzger
23.09.2011 08:15 10:00 IFI 1.D.07 Problem Detection: OO Design Principles
Read Class Design Principles, Package Design Principles)
Martin Pinzger
23.09.2011 12:15 14:00 IFI 1.D.07 Research topic: Defect Prediction Martin Pinzger

2. Block: Re-engineering

Date Start End Room Titel/Slides Lecturer
2.11.2011 14:00 15:45 IFI Feedback on Assignment I: Problem Detection Martin Pinzger
3.11.2011 08:15 10:00 IFI 1.D.07 Testing and Refactoring
Read Ch. 6 and Appendix A of course book
Refactoring exercise
Martin Pinzger
3.11.2011 12:15 14:00 IFI 1.D.07 Guest lecture by Canoo: Sanierung grosser Software Systeme Sibylle Peter, Canoo
4.11.2011 08:15 10:00 IFI 1.D.07 Working Effectively with Legacy Code Martin Pinzger
4.11.2011 12:15 14:00 IFI 1.D.07 Refactoring to Patterns
Several patterns described at informIT
Read Ch. 10 of course book
Martin Pinzger

3. Block: Presentation & Examination (tentative)

Date Start End Room Titel/Slides Lecturer
16.12.2011     BIN 2.D.03 Lab Presentations & Oral Examination You (schedule will be announced)

Presentations must be electronically and should not last longer than 20 minutes. The contents of the presentation should clearly show which shortcoming(s) you have addressed (and why was it a shortcoming), how you fixed it, and a proof that your fix improves the design of jmonkeyengine. For the presentation you can use your own laptop (or mine if you do not have a laptop available).

After the presentation there will be a 20-25 minutes oral examination. The examination comprises the "Object-Oriented Reengineering Patterns" book and material (slides, articles) presented in the lectures, and the two lab assignments.

The information given on this web-site serves as addition to the university calendar. In case of doubts always rely on the information provided by the university calendar.

  • Home | 
  • About us | 
  • Research | 
  • Teaching | 
  • Events | 
  • Contact
  • Tools
    Quicklinks

    UniZHIFI