Check out Important Dates & News

  • Write response papers and submit them on easyChair before 8pm on Sunday before the lecture. Write in the response paper what you think about the papers/topic and what you find important and interesting.easyChair Tutorial
  • Start working on your project
  • Discussion List Link
  • Full Paper Reviews List: choose one out of the first 7 weeks and submit it by October 29th and one for the second half and submit it by December 3rd Link

Tentative Course Schedule

It is important to note that this scheule is susceptible to change based on your interests and how the class is progressing

September 16th - Course Overview

Introduction (PDF, 308 KB)

September 23th - Historical Context

No Silver Bullet Brooks. Computer, vol.20, no.4, April 1987.

Software's Chronic Crisis. Gibbs. Scientific American, September 1994.

Historical Context (PDF, 396 KB)

September 30th - Global Software Engineering

Global software engineering: the future of socio-technical coordination. Herbsleb. Future of Software Engineering, 2007.

Does distributed development affect software quality? Bird et al.. Software Engineering (ICSE), 2009.

October 7th - Design

Let's Go to the Whiteboard: How and Why Software Developers Draw Code, Cherubini et al.. Conference on Human Factors in Computing Systems (SIGCHI), 2007.

Software Reflexion Models: Bridging the Gap between Design and Implementation, Murphy et al.. Software Engineering, IEEE Transactions on (Volume:27 , Issue: 4 ), April 2001.

October 14th - Developer's Information Needs and Awareness

Information Needs in Collocated Software Development Teams, Ko et al.. 29th International Conference on Software Engineering (ICSE), 20-26 May 2007.

Blogging Developer Knowledge: Motivations, Challenges, and Future Direction, Parnin et al. ICPC’13, ERA Track, 2013.

Awareness 2.0: staying aware of projects, developers and tasks using dashboards and feeds, Treude and Storey. Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1 (ICSE '10), 2010.

October 21st - Supporting Developer Queries

Supporting developers with natural language queries, Würsch et al.. , 32nd International Conference on Software Engineering (ICSE), 2-8 May 2010.

Navigating and querying code without getting lost, Janzen et al.. 2nd international conference on Aspect-oriented software development, 2003.

October 28th - Tools (IDE)

Code Bubbles: Rethinking the User Interface Paradigm of Integrated Development Environments, Bragdon et al.. 32nd International Conference on Software Engineering, 2-8 May 2010.

Using task context to improve programmer productivity, Kersten and Murphy. FSE’06, 2006.

November 4th - Tools (Programming Support)

Expressive programs through presentation extension, Eisenberg and Kiczales. In Proceedings of the 6th international conference on Aspect-oriented software development, 2007.

Breaking the Barriers to Successful Refactoring: Observations and Tools for Extract Method, Murphy-Hill and Black. International Conference on Software Engineering, 2008.

November 11th - Naturalness

Natural Programming Languages and Environments, Myers et al. Communications of the ACM. (special issue on End-User Development), 2004.

Debugging reinvented: asking and answering why and why not questions about program behavior, Ko and Myers. ICSE'08, 2008.

On the Naturalness of Software, Hindle et al. ICSE'12, 2012.

November 18th - Metrics and Interruptions

Why do Programmers Avoid Metrics?, Umarji and Seaman. ESEM'08, 2008.

Evaluating Cues for Resuming Interrupted Programming Tasks, Parnin and DeLine.Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, 2010.

November 25th - Psycho-Physiological Aspects

Do moods affect Programmers’ Debug Performance, Khan et al. Cognition, Technology and Work, 2013.

An eye-tracking methodology for characterizing program comprehension processes, Bednarik and Tukiainen.Proceedings of the 2006 symposium on Eye tracking research and applications, 2006.

December 2th - Software Visualization

SeeSoft - a tool for visualizing line oriented software statistics, Eick et al., IEEE Transactions on Software Engineering, 1992.

The class blueprint: visually supporting the understanding of classes, Ducasse et al., IEEE Transactions on Software Engineering, 2005.

December 9th - Project Presentations, no papers to prepare!

If you are interested (NOT required):

What makes good research in software engineering?, Shaw, International Journal on Software Tools for Technology, 2002.

Preliminary guidelines for empirical research in software engineering, Kitchenham et al., IEEE Transactions on Software Engineering, 2002.

Experimental models for validating technology, Zelkowitz et al., IEEE Computer, 1998.