Gregory M. KapfhammerAssociate Professor of Computer Sciencehttp://www.cs.allegheny.edu/~gkapfham/ |
Software Engineering and Distributed Systems
The following materials are available to rising seniors in the Department of Computer Science as they prepare for their senior thesis research.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, 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 four papers have been selected:
- (P1) C.C. Michael, G. McGraw, M.A. Schatz. "Generating Software Test Data by Evolution". IEEE Transactions on Software Engineering. Volume 27, Number 12. December 2001. [No Online PDF Available]
- (P2) 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]
- (P3) Gregory M. Kapfhammer. "Software Testing". The Computer Science and Engineering Handbook, CRC Press. June, 2004. (Revised and Extended Version). [PDF from Author's Web site]
- (P4) Brian Zorman, Gregory M. Kapfhammer, and Robert S. Roos. Creation and Analysis of a JavaSpace-based Genetic Algorithm. In the Proceedings of the 8th International Conference on Parallel and Distributed Processing Techniques and Applications. Las Vegas, Nevada, June, 2002. [PDF from author's web site]
- (P1) C.C. Michael, G. McGraw, M.A. Schatz. "Generating Software Test Data by Evolution". IEEE Transactions on Software Engineering. Volume 27, Number 12. December 2001. [No Online PDF Available]
- Paper Reading Assignments:
- Assignment One:
- P1: Entire Paper
- P3: Section 1, Section 2, Section 3.1, Section 3.2, Section 3.3, Section 3.4.1, Section 3.5
- P4: Optional (use for future research ideas)
- Assignment Two:
- P2: Entire Paper
- P3: Section 1, Section 2, Section 3.5, Section 3.6, Section 3.9.1
- 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
- Duane A. Bailey, A Letter to Research Students
- 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 assigned paper 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 2005 last edited on 17 August 2005 at 2:06 pm by aldenv29.allegheny.edu