I'm now managing a team at nVidia. These pages are old.
To contact me, use david@coppit.org, since I check that account more
often.
CSci 780: Advanced Software Engineering
Paper Selections
Rules
We have 21 slots. That means about 4 presentations per person.
Given the 50% research papers, 20% case studies, 20% seminal papers, 10%
Peopleware distribution, we need 10 research papers, 4 case studies, 4 seminal
papers, and 2 Peopleware readings.
You pick 2 research papers, 1 case study, and 1 seminal paper from the
categories below.
Peopleware
Managing the Human Resource 34 pages
The Office Environment, 58 pages
The Right People, 28 pages
It's Supposed to be Fun to Work Here, 18 pages
Son of Peopleware, 52 pages
Research Papers
(****) Sunghun Kim, Thomas Zimmermann, E. James Whitehead Jr., and
Andreas Zeller, "Predicting Faults from Cached History", ICSE 2007
(***?, Slashdot) David Schuler, Valentin Dallmeier, and Christian Lindig, "A
Dynamic Birthmark for Java", ASE 2007
(***, Good overview of AOP) Rajan and Sullivan, "Classpects: Unifying Aspect- and
Object-Oriented Language Design"
(****) Boyapati, et. al, "Korat: Automated Testing Based on Java Predicates"
(****) Zeller and Hildebrandt, "Simplifying and Isolating
Failure-Inducing Input"
(****) Godefroid et. al, "DART: Directed Automated Random Testing"
(****) Dawson Engler, David Yu Chen, Seth Hallem, Andy Chou, and Benjamin
Chelf, "Bugs as Deviant Behavior: A General Approach to Inferring Errors in
Systems Code," SOSP 2001.
(****) Michael D. Ernst, Jake Cockrell, William G. Griswold, David Notkin,
"Dynamically Discovering Likely Program Invariants to Support Program
Evolution," IEEE Transactions on Software Engineering, 27(2): 99-123
(2001).
(****?) Carlos Pacheco, Shuvendu K. Lahiri, Michael D. Ernst, and Thomas Ball,
"Feedback-Directed Random Test Generation", ICSE 2007
(***?, Overview) Sven Apel, Thomas Leich, Gunter Saake, "Aspectual mixin
layers: aspects and features in concert", ICSE 2006
(***) Rupak Majumdar and Koushik Sen, "Hybrid Concolic Testing", ICSE 2007
Yuanfang Cai and Sullivan, K.J., "Modularity Analysis of Logical Design
Models", ASE 2006
Ramanathan, M.K., Grama, A., and Jagannathan, S., "Sieve: A Tool for
Automatically Detecting Variations Across Program Versions", ASE 2006
Jinlin Yang, David Evans, Deepali Bhardwaj, Thirumalesh Bhat, Manuvir Das,
"Perracotta: mining temporal API rules from imperfect traces", ICSE
2006
John Anvik, Lyndon Hiew, Gail C. Murphy, "Who should fix this bug?", ICSE
2006
Nija Shi and Olsson, R.A., "Reverse Engineering of Design Patterns from
Java Source Code", ASE 2006
d'Amorim, M., Pacheco, C., Tao Xie, Marinov, D., and Ernst, M.D., "An
Empirical Comparison of Automated Generation and Classification Techniques
for Object-Oriented Unit Testing", ASE 2006
J Sunghun Kim, Thomas Zimmermann, Zimmermann, T., and Whitehead, E.J.,
"Automatic Identification of Bug-Introducing Changes", ASE 2006
Case Studies
(****) Leveson, "Medical Devices: The Therac-25"
(***) Trouble on Mars: Mars Climate Orbiter + Mars Pathfinder
Titan/Centaur/Milstar IVB-32 Report
(***) European Space Agency, Ariane 5: Flight 501 failure. Report by the
enquiry board.
(Java Pathfinder) K. Havelund, M. Lowry, S. Park, C. Pecheur, J. Penix, W.
Visser, and Jon L. White, "Formal Analysis of the Remote Agent - Before and
After Flight," The Fifth NASA Langley Formal Methods Workshop, Virginia,
June, 2000
Andrew J. Ko, Robert DeLine, and Gina Venolia, "Information Needs in
Collocated Software Development Teams", ICSE 2007
Jan Chong and Tom Hurlbutt, "The Social Dynamics of Pair Programming",
ICSE 2007
T. C. Nicholas Graham, Rick Kazman, and Chris Walmsley, "Agility and
Experimentation: Practical Techniques for Resolving Architectural
Tradeoffs", ICSE 2007
David Martin, John Rooksby, Mark Rouncefield, and Ian Sommerville,
""Good" Organisational Reasons for "Bad" Software Testing: An Ethnographic
Study of Testing in a Small Software Company", ICSE 2007
Thomas D. LaToza, Gina Venolia, Robert DeLine, "Maintaining mental
models: a study of developer work habits", ICSE 2006
Stefano Bacherini, Alessandro Fantechi, Matteo Tempestini, and
Niccol`o Zingoni, "A Story About Formal Methods Adoption by a Railway
Signaling Manufacturer", FM 2006
Seminal Papers
Parnas, D., "On the criteria to be used in decomposing systems into
modules," CACM 15(2), 1053-1058, 1972.
Mary Shaw, "Prospects for an engineering discipline of software," IEEE
Software, November 1990, pp. 15-24.
E.M. Clarke and J.M. Wing, "Formal Methods: State of the Art and
Future Directions,"