Selected topics in software development

Quarter 3, 2008

   Assignments
   Evaluation
   Exam
   Home
   ISIS home
   Pensum
   Plan
   Slides


The CPH STL
The CPH STL project

Presentation assignment

The course consists of the lectures provided by the teachers and the presentations provided by the students. The purpose of this assignment is to get the student presentations organized. According to our earlier experience, the student presentations are the best part of our graduate courses.

This assignment is individual. Each student should present an article to their fellow students on one of our Friday sessions. The course manager takes care of the coordination so you should book a Friday for your presentation from him. There will be 2-3 student presentations on each Friday session. We will make no attempt to coordinate the subjects of the presentations. Observe that the first presentations are scheduled on this Friday. This assignment triggers 10% of the course credit so you are expected to work about 0.75 * 25 hours for it.

Each presentation should take about 20 minutes. The output of the preparation phase is 5-10 slides which are to be handed in via the ISIS course home page by the day of the presentation at 9.15. The slides can also be made available via the course home page if you allow this. Write clearly on the first slide if you do not want that your slides are released on the web.

The paper(s) to be presented can be selected freely. As a starting point of your research, you can use any of the articles mentioned below. We have the following requirements for the presentations:

  1. You should make sure that no other student will present the same article as you. Articles already selected will be marked with a star (*) on this page when the course manager is informed about the selection.
  2. The topic of the article should be broadly related to the main theme of this course: "communication in programming".
  3. Independent of the topic of your presentation, you should get the course manager's okay for your presentation. (Hopefully, most of the necessary coordination can be done during the lectures.)

Pointers to the literature

Susan M. Baxter et al.: Scientific software development is not an oxymoron [html]

(*Bo) Kent Beck and Erich Gamma: JUnit Cookbook [html]

(*Johannes S.) Kent Beck and Ralph Johnson: Patterns generate architectures [html]

P. Beynon-Davies, C. Carne, H. Mackay, and D. Tudhope: Rapid application development (RAD): an empirical review [pdf]

(*Adam) Frederick P. Brooks: No silver bullet---Essence and accidents of software engineering [pdf]

(*Tina) Marshall P. Cline: The pros and cons of adopting and applying design patterns in the real world [html]

James Coplien, Daniel Hoffman, and David Weiss: Commonality and variability in software engineering [pdf]

(*Frej) Karl Fogel: Producing open source software: How to run a successful free software project [html]

(*Simon) Ralph E. Johnson: Frameworks = (components + patterns) [html]

Ralph E. Johnson and William F. Opdyke: Refactoring and aggregation [html]

(*Jon) Cem Kaner: The ongoing revolution in software testing [pdf]

Donald E. Knuth: An empirical study of Fortran programs [html]

Donald E. Knuth: Literate programming [pdf]

Donald E. Knuth: Structured programming with go to statements [html]

(*Claus U.) Brian Marick: Bypassing the GUI [pdf]

Brian Marick: Normal processes [pdf]

Tom Mens and Tom Tourwé: A survey of software refactoring [pdf]

Robert Charles Metzger: Debugging by thinking: A multidisciplinary approach [bibliotek.dk]

(*Daniel) Rick Mugridge: Test driven development and the scientific method [pdf]

Peter Naur: Programming as theory building, see Appendix B of the book by Alistair Cockburn [pdf]

David L. Parnas: Designing software for ease of extension and contraction [html]

Alan J. Perlis: Special feature: Epigrams on programming [html]

(*Martin D.) Dirk Riehle: Composite design patterns [html]

(*Ulrik) Christopher Seiwald: Seven pillars of pretty code [html]

(*Christian) Scott Sehlhorst: Test smarter, not harder [html]

John Vlissides: Pattern hatching [pdf]

Stefan Wappler and Joachim Wegener: Evolutionary unit testing of object-oriented software using strongly-typed genetic programming [pdf]

(*Filip) Laurie Williams: Agile/automated testing [pdf]

Bobby Woolf: The null object pattern [html]

Andreas Zeller: Isolating cause-effect chains from computer programs [html]

This page was last modified by Jyrki Katajainen on 30.04.2013.