From: Jurgen Vinju To: Date: Fri, 5 Nov 2004 13:09:51 +0100 Subject: PEM: Thomas Reps (University of Wisconsin) | The Use of Program Profiling for Software Maintenance with Applications to the Year 2000 Problem | 13.06.97 PEM: Susan Horwitz and Marc Shapiro (University of Wisconsin) | Flow-Insensitive Pointer Analysis | 13.06.97 From: pem (PEM moderator) To: pem-noreply Subject: PEM meeting | 13.06.97 | F013, UvA WINS Precedence: bulk X-url: http://www.cwi.nl/~pem Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" This announcement can be found at The Use of Program Profiling for Software Maintenance with Applications to the Year 2000 Problem Date: 13.06.97 Time: 14:00 Venue: F013, UvA WINS Speaker: Thomas Reps (University of Wisconsin) Title: The Use of Program Profiling for Software Maintenance with Applications to the Year 2000 Problem The world faces cataclysmic breakdown at the turn of the millennium! While this alarm may be old news to anyone who was present at the turn of the last millennium, there are significant reasons for residents of the (first) world to be concerned this time around: Because many computer programs use only two digits to record year values in date-valued data, they may process a year value of 00 as 1900 in cases where 2000 was intended. If the intended value is 2000 --- such as when 00 represents the value of the current year in a computation performed after the calendar rolls over on January 1, 2000 --- then a faulty computation may be carried out. Because computations can involve dates in the future, the phenomenon can occur well before the calendar rolls over on January 1, 2000. For example, if the (approximate) age of someone born in 1956 were calculated for January 1, 2000, he would appear to be 00 - 56 = -56 years old! Last summer, I was asked by the Defense Advanced Research Projects Agency (DARPA) to help them plan a project aimed at reducing the impact of the Year 2000 (Y2K) problem on the Department of Defense. DARPA was particularly interested in whether there were "any techniques in the research community that could be applied to the Y2K problem and have impact beyond present commercial Y2K products and services". The most exciting of the ideas that turned up concerns a method for using path profiling as a heuristic to locate some of the sites in a program where there are problematic date manipulations. The technique is actually applicable to a much wider range of software-maintenance problems than just the Y2K problem, and offers new perspectives on testing, on the task of creating test data, and on what tools can be created to support program testing. (This is joint work with T. Ball, M. Das, and J. Larus. A paper describing the work will appear in the Proceedings of ESEC/FSE '97: Sixth European Software Engineering Conference and Fifth ACM SIGSOFT Symposium on the Foundations of Software Engineering, (Zurich, Switzerland, Sept. 22-25, 1997), Lecture Notes in Computer Science, Springer-Verlag, New York, NY, 1997. The technical-report version is available over the World Wide Web at URL http://www.cs.wisc.edu/wp is/papers/tr1335.ps.) _________________________________________________________________ The programming environment meetings are a forum for the presentation and discussion of new ideas, ongoing and finished work. A typical meeting addresses a subject in the area of programming environments, program generation, algebraic specification, term rewriting, parsing, etc. A presentation ideally takes between 45 and 90 minutes. Meetings taking longer than 45 minutes are interrupted by a coffeebreak. Most Thursdays, a meeting is held which starts at 10:00 am. in one of the rooms at CWI/WINS. Exceptionally, dates or times may change. The program of the meetings is available on WWW: http://www.cwi.nl/~pem _________________________________________________________________