Gregory M. KapfhammerAssociate Professor of Computer Sciencehttp://www.cs.allegheny.edu/~gkapfham/ |
Software Engineering and Distributed Systems, Spring 2006
The following materials are available to rising seniors in the Department of Computer Science as they prepare for their senior thesis research.The introductory presentation examines some of the research that has recently been conducted by students and faculty in the Department of Computer Science, including: DIATOMS, Kanonizo, Joshua, Juggernaut, GUI Creation Framework Performance, RDBSpace, and Parallel Genetic Algorithms. Please see Research and All Research Deliverables for more details about existing research projects involving faculty and students in the Department of Computer Science at Allegheny College.
Software Testing Tutorial includes a simple program and the test suite for the program that is written in the JUnit testing framework.
- The following three papers have been selected:
- (P1) Michael D. Ernst, Jake Cockrell, William G. Griswold, and David Notkin. "Dynamically discovering likely program invariants to support program evolution". IEEE Transactions on Software Engineering, vol. 27, no. 2, Feb. 2001, pp. 1-25. [PDF from Author's Web site]
- (P2) Gregory M. Kapfhammer. "Software Testing". The Computer Science Handbook, CRC Press. June, 2004. (Revised and Extended Version). [PDF from Author's Web site]
- (P3) Hong Zhu and Patrick A. V. Hall and John H. R. May. "Software Unit Test Coverage and Adequacy". ACM Computing Surveys (CSUR). Volume 29, Number 4. December 1997. [PDF from ACM Digital Library]
- (P1) Michael D. Ernst, Jake Cockrell, William G. Griswold, and David Notkin. "Dynamically discovering likely program invariants to support program evolution". IEEE Transactions on Software Engineering, vol. 27, no. 2, Feb. 2001, pp. 1-25. [PDF from Author's Web site]
- Paper Reading Assignments:
- Assignment One:
- P1: Entire Paper
- P2: Section 1, Section 2, Section 3.5, Section 3.6, Section 3.9.1
- P3: Optional, use as an additional reference
- Visit:
- Daikon Site: http://pag.csail.mit.edu/daikon/
- Eclat Site: http://pag.csail.mit.edu/eclat/
- Assignment One:
- Reseach and writing resources:
- Phil Koopman, How to Write an Abstract
- Brian A. Malloy, The Craft of Writing a Research Paper
- Mary-Claire van Leunen and Richard Lipton, How to Have Your Abstract Rejected
- William Pugh, Advice to Authors of Extended Abstracts
- Roy Levin and David D. Redell, How (and How Not) to Write a Good Systems Paper
- POPL 1995 Program Committee, Advice for 1996 POPL submissions
- Phil Koopman, How to Write an Abstract
- Final Observations:
Students are encouraged to read other sections of the "Software Testing" chapter. However, the each quiz will only focus on the assigned reading material. Students who are responsible for giving presentations should focus on the material in the first paper in their assignment, but use the second and third assigned papers to provide background and context.
Any student who finds a substantial mistake in one of the assigned papers and can clearly state a solution to the mistake will be awarded an automatic "A" on the quiz for the paper. Only the first student to submit a problem report describing the mistake will be awarded the "A" on the corresponding quiz.
Link to this Page
- Computer Science 580, Junior Seminar, Spring 2006 last edited on 25 August 2008 at 5:29 pm by 141.195.226.29