Reading Group Spring 2008
From PROLANGS Wiki
Prolangs: A Light Seminar on
Current Research in Modern Object-oriented Software Systems
Spring 2008
198:500:02 index 67465
Thursdays, 3:00-5:00pm, CoRE B (305)
This light seminar on program analysis will cover current research that 'fits' between software engineering and compilation/programming languages. The analyses we will examine provide the formal basis for software tools used in testing, debugging, performance analysis, program understanding and security. We will be reading papers about analyses AND their uses in practical software tools. We will concentrate on reviewing papers from relevant conferences: PLDI, OOPSLA, ICSE, FSE, ISSTA, CC, ISMM, ICSM, etc. and journals: SPE, TOSEM, TOPLAS, IEEE-TSE. Our focus will be on recent conference papers, but we also may cover seminal works in certain areas.
Participants in this seminar are expected to present 1-2 research papers during the term. We will meet once every week for approximately 90 minutes on Thursday afternoons, 3:00-5:00pm in CoRE B conference room.
The organizational meeting of the seminar will be held on Weds, January 23rd at noon in Core 331 (the Prolangs Lab), since the seminar will start meeting on Feb 7th due to Prof Ryder's travel during the first 2 weeks of the spring term. At our first meeting, we will lay out the schedule, at least for the beginning of the term.
If you have any questions regarding this light seminar, please contact Prof. Ryder (ryder-at-cs.rutgers.edu) by email.
Papers
Schedule
- Jan 24
- Cancelled
- Jan 31
- Cancelled
- Feb 7
- Presenter: Qian Yang
- Paper: M. Boshernitsan, R. Doong and A. Alberto Savoia, "From Daikon to Agitator: Lessons and Challenges in Building a Commercial Tool For Developer Testing", ISSTA '06
- Slides: pdf
- Feb 14
- Presenter: Pradip Hari
- Paper: Naik et al, Effective Static Race Detection for Java, PLDI '06
- Feb 21
- Cancelled
- Feb 28
- Cancelled
- Mar 6
- Presenter: Tom Marlowe
- Paper: Arumuga Nainar, Chen, Rosin, and Liblit, "Statistical Debugging Using Compound Boolean Predicates", ISSTA '07.
- Slides: ppt
- Mar 13
- Cancelled
- Mar 20
- Spring break
- Mar 27
- Presenter: Jan Wloka
- Paper: J. Wloka, R. Hirschfeld and J. Hansel, "Tool-supported Refactoring of Aspect-oriented Programs", To appear in AOSD 2008. (Practice Talk)
- Mar 28
- State of the Art in Software Testing and Analysis -- all day workshop hosted at Rutgers
- Apr 3
- Cancelled
- Apr 10
- Presenter: Bruno Dufour
- Paper: TBA (Dagstuhl Seminar Practice Talk)
- Apr 17
- Presenter: John Asmuth
- Paper: Ben Hardekopf and Calvin Lin, "The ant and the grasshopper: fast and accurate pointer analysis for millions of lines of code", PLDI 2007.
- Apr 24
- Invited Speaker: Nick Mitchell (IBM T.J. Watson Research Center)
- Paper: N. Mitchell and G. Sevitsky, "The causes of bloat, the limits of health", OOPSLA 2007.
- Abstract:
- Applications often have large runtime memory requirements. In some cases, large memory footprint helps accomplish an important functional, performance, or engineering requirement. A large cache,for example, may ameliorate a pernicious performance problem. In general, however, finding a good balance between memory consumption and other requirements is quite challenging. To do so, the development team must distinguish effective from excessive use of memory.
- We introduce health signatures to enable these distinctions. Using data from dozens of applications and benchmarks, we show that they provide concise and application-neutral summaries of footprint. We show how to use them to form value judgments about whether a design or implementation choice is good or bad. We show how being independent of any application eases comparison across disparate implementations. We demonstrate the asymptotic nature of memory health: certain designs are limited in the health they can achieve, no matter how much the data size scales up. Finally, we show how to use health signatures to automatically generate formulas that predict this asymptotic behavior, and show how they enable powerful limit studies on memory health.
- May 1
- Invited Speaker: Dr. Laura Dillon, Michigan State University
- Title: Szumo: A Compositional Contract Model for Safe Multi-threaded Applications
- Abstract:
- It is well known that the expressive power afforded by the use of concurrency comes at the expense of increased complexity. Without proper synchronization, concurrent access to shared objects can lead to race conditions, and incorrect synchronization logic can lead to starvation or deadlock. Moreover, concurrency confounds the development of reusable software modules because synchronization policies and decisions are difficult to localize into a single software module.
- Szumo (Synchronization Units Model) extends an object-oriented language with a notion of synchronization contracts to address these concerns. In lieu of writing low-level code to acquire and release shared objects, programmers declare synchronization contracts in a module's interface. A distributed run-time scheduler negotiates the contracts on behalf of processes, ensuring that the contracts of all modules are met while simultaneously guarding against data races and avoidable deadlocks.
- This talk provides an introduction to Szumo and describes a case study to validate the efficacy of Szumo on a realistic design problem: the component-based design of a multi-threaded web server.
- Note: Szumo is called the Universe Model in early publications. A Szumo-extended Eiffel compiler is available at the project website, http://www.cse.msu.edu/sens/szumo.
- May 8
