These are some of the professional papers I've read since I graduated in 2003.
Last updated 2011-08-03.
| Title | Author(s) | Year | Source | |
|---|---|---|---|---|
| 1 | A Complexity Measure | Thomas J. Mccabe | 1976 | IEEE Transactions on SWE |
| 2 | Software Management | Leon Presser | 1975 | ACM Annual Conference/Annual Meeting |
| 3 | Structured Design Methodologies | G. D. Bergland | 1978 | ACM IEEE DAC |
| 4 | The Ups and Downs of Programmer Stress | Robert L. Glass | 1997 | Communications of the ACM |
| 5 | The Air Force Software Manager | Richard H. Thayer | 1975 | ACM Annual Conference/Annual Meeting |
| 6 | How Microsoft builds software | Cusumano and Selby | 1997 | Communications of the ACM |
| 7 | Iterative and Incremental Development: A Brief History | Larman and Basili | 2003 | Computer |
| 8 | On the Criteria To Be Used in Decomposing Systems into Modules | D. L. Parnas | 1972 | Communications of the ACM |
| 9 | Agile Software Process Model | Mikio Aoyama | 1997 | IEEE COMPSAC |
| 10 | Agile Software Process and Its Experience | Mikio Aoyama | 1998 | IEEE ICSE |
| 11 | The New New Product Development Game | Takeuchi and Nonaka | 1986 | Harvard Business Review |
| 12 | SCRUM Development Process | Ken Schwaber | 1995 | ACM OOPSLA |
| 13 | SCRUM: An extension pattern language for hyperproductive software development | Beedle et al. | 1998 | Pattern Languages of Programs (PLoP) conference |
| 14 | The Scrum Software Development Process for Small Teams | Rising and Janoff | 2000 | IEEE Software |
| 15 | How Good Are Agile Methods? | Donald J. Reifer | 2002 | IEEE Software |
| 16 | Managing the Development of Large Software Systems | Winston W. Royce | 1970 | IEEE Wescon |
| 17 | Go To Statement Considered Harmful | Edsger W. Dijkstra | 1968 | Communications of the ACM |
| 18 | The Geography of Programming | Baniassad and Fleissner | 2006 | ACM OOPSLA |
| 19 | Program Development by Stepwise Refinement | Niklaus Wirth | 1971 | Communications of the ACM |
| 20 | Learning Test-Driven Development by Counting Lines | Vodde and Koskela | 2007 | IEEE Software |
| 21 | New Directions on Agile Methods: A Comparative Analysis | Abrahamsson et al. | 2003 | IEEE ICSE |
| 22 | On the Development of Systems of Men and Machines | H. D. Mills | 1974 | Informatik Symposium |
| 23 | A New Look at the Program Development Process | P. Hiemann | 1974 | Informatik Symposium |
| 24 | Organizing for Structured Programming | F. T. Baker | 1974 | Informatik Symposium |
| 25 | Software Engineering or Methods for the Multi-Person Construction of Multi-Version Programs | D. L. Parnas | 1974 | Informatik Symposium |
| 26 | Get Ready for Agile Methods, with Care | Barry Boehm | 2002 | Computer |
| 27 | The Agile Methods Fray | DeMarco and Boehm | 2002 | Computer |
| 28 | Agile Software Development: The Business of Innovation | Highsmith and Cockburn | 2001 | Computer |
| 29 | Agile Software Development: The People Factor | Cockburn and Highsmith | 2001 | Computer |
| 30 | Interprocedural Analysis and the Information Derived by it | F. E. Allen | 1974 | Informatik Symposium |
| 31 | Future of Scrum: Parallel Pipelining of Sprints in Complex Projects | Jeff Sutherland | 2005 | IEEE ADC |
| 32 | The Department of Defense software initiative - a status report | Edward Lieblein | 1986 | Communications of the ACM |
| 33 | The Psychological Study of Programming | B. A. Sheil | 1981 | ACM Computing Surveys |
| 34 | Agile Software Development: Human Values and Culture | Miller and Larson | 2005 | IEEE Technology & Society Magazine |
| 35 | A Case Study on the Impact of Scrum on Overtime and Customer Satisfaction | Mann and Maurer | 2005 | IEEE ADC |
| 36 | How not to lie with statistics: the correct way to summarize benchmark results | Fleming and Wallace | 1986 | Communications of the ACM |
| 37 | A paradigm for programming style research | Oman and Cook | 1988 | ACM SIGPLAN Notices |
| 38 | A taxonomy for programming style | Oman and Cook | 1990 | ACM CSC |
| 39 | Selecting a Project's Methodology | Alistair Cockburn | 2000 | IEEE Software |
| 40 | Introducing an Agile Process to an Organization | Cohn and Ford | 2003 | Computer |
| 41 | My Hairiest Bug War Stories | Marc Eisenstadt | 1997 | Communications of the ACM |
| 42 | Software development of real-time systems | Hassan Gomaa | 1986 | Communications of the ACM |
| 43 | Agile Methods for Large Organizations - Building Communities of Practice | Tuomo Kähkönen | 2004 | IEEE ADC |
| 44 | Agile Software Development in Large Organizations | Lindvall et al. | 2004 | Computer |
| 45 | Using A Behavioral Theory of Program Comprehension in Software Engineering | Ruven Brooks | 1978 | IEEE ICSE |
| 46 | Studying Programmer Behavior Experimentally: The Problems of Proper Methodology | Ruven E. Brooks | 1980 | Communications of the ACM |
| 47 | Agile Software Development: It's about Feedback and Change | Williams and Cockburn | 2003 | Computer |
| 48 | A computer science perspective of bridge design | Spector and Gifford | 1986 | Communications of the ACM |
| 49 | Microprocessor architectures: a comparison based on code generation by compiler | Niklaus Wirth | 1986 | Communications of the ACM |
| 50 | Hardware/software co-design then and now | Niklaus Wirth | 2003 | Information Processing Letters |
| 51 | A style analysis of C programs | Berry and Meekings | 1985 | Communications of the ACM |
| 52 | Novice mistakes: are the folk wisdoms correct? | Spohrer and Soloway | 1986 | Communications of the ACM |
| 53 | The Japanese and software: Is it a good match? | Laszlo A. Belady | 1986 | Computer |
| 54 | Computer Science Education in the People's Republic of China | John H. Maier | 1986 | Computer |
| 55 | Cleanroom Software Development: An Empirical Evaluation | Selby et al. | 1987 | IEEE Transactions on SWE |
| 56 | A note on undetected typing errors | James L. Peterson | 1986 | Communications of the ACM |
| 57 | The State of Software Maintenance | Norman F. Schneidewind | 1987 | IEEE Transactions on SWE |
| 58 | Software Testing Research: Achievements, Challenges, Dreams | Antonia Bertolino | 2007 | IEEE FOSE |
| 59 | Learning to program and learning to think: what's the connection? | Mayer et al. | 1986 | Communications of the ACM |
| 60 | Software complexity measurement | Kearney et al. | 1986 | Communications of the ACM |
| 61 | A Future for Software Engineering? | Leon J. Osterweil | 2007 | IEEE FOSE |
| 62 | Investigating the Effects of Color | Ellen D. Hoadley | 1990 | Communications of the ACM |
| 63 | Can Distributed Software Development Be Agile? | Ramesh et al. | 2006 | Communications of the ACM |
| 64 | Ethical Concepts and Information Technology | Kenneth C. Laudon | 1995 | Communications of the ACM |
| 65 | What Makes a Good Programmer? | Cegielski and Hall | 2006 | Communications of the ACM |
| 66 | Why Interaction Is More Powerful Than Algorithms | Peter Wegner | 1997 | Communications of the ACM |
| 67 | Third time charm: Stronger prediction of programmer performance by software complexity metrics | Curtis et al. | 1979 | IEEE ICSE |
| 68 | Software Design and Architecture - The once and future focus of software engineering | Taylor and Hoek | 2007 | IEEE FOSE |
| 69 | Global Software Engineering: The Future of Socio-technical Coordination | James D. Herbsleb | 2007 | IEEE FOSE |
| 70 | Rapid Software Development through Team Collocation | Teasley et al. | 2002 | IEEE Transactions on SWE |
| 71 | Ethnocomputing: ICT in cultural and social context | Tedre et al. | 2006 | Communications of the ACM |
| 72 | The Complexity of Songs | Donald E. Knuth | 1984 | Communications of the ACM |
| 73 | Coping with the imprecision of the real world | Lotfi A. Zadeh | 1984 | Communications of the ACM |
| 74 | Viewpoint: against software patents | Stallman and Garfinkle | 1992 | Communications of the ACM |
| 75 | Debunking the Software Patent Myths | Paul Heckel | 1992 | Communications of the ACM |
| 76 | DSP Processors Hit the Mainstream | Eyre and Bier | 1998 | Computer |
| 77 | Computers and People with Disabilities | Glinert and York | 1992 | Communications of the ACM |
| 78 | Building Objects Out of Plato: Applying Philosophy, Symbolism, and Analogy to Software Design | Ray Giguette | 2006 | Communications of the ACM |
| 79 | Software Defect Reduction Top 10 List | Boehm and Basili | 2001 | Computer |
| 80 | Geolocation and Assisted GPS | Djuknic and Richton | 2001 | Computer |
| 81 | Will Japan Jack In? | John P. Barlow | 1992 | Communications of the ACM |
| 82 | Nine Management Guidelines for Better Cost Estimating | Lederer and Prasad | 1992 | Communications of the ACM |
| 83 | The Paradox of Digital Preservation | Su-Shing Chen | 2001 | Computer |
| 84 | The World-Wide Web | Berners-Lee et al. | 1994 | Communications of the ACM |
| 85 | How office space affects programming productivity | Capers Jones | 1995 | Computer |
| 86 | The Linux Operating System | Shahid H. Bokhari | 1995 | Computer |
| 87 | The Global Diffusion of the Internet: Patterns and Problems | Goodman et al. | 1994 | Communications of the ACM |
| 88 | Women in Computing: Where Are We Now? | Klawe and Leveson | 1995 | Communications of the ACM |
| 89 | Power: A First-Class Architectural Design Constraint | Trevor Mudge | 2001 | Computer |
| 90 | Program style analysis: a natural by-product of program compilation | Redish and Smyth | 1986 | Communications of the ACM |
| 91 | Pioneering Women In Computer Science | Denise W. Gürer | 1995 | Communications of the ACM |
| 92 | A Plea for Lean Software | Niklaus Wirth | 1995 | Computer |
| 93 | Lessons Learned Administering Netscape's Internet Site | Mosedale et al. | 1997 | IEEE Internet Computing |
| 94 | NCSA's World Wide Web Server: Design and Performance | Kwan et al. | 1995 | Computer |
| 95 | Charles Babbage - The Great Uncle of Computing? | Maurice V. Wilkes | 1992 | Communications of the ACM |
| 96 | Source Code Analysis: A Road Map | David Binkley | 2007 | IEEE FOSE |
| 97 | You and Your Research | Richard Hamming | 1986 | Bell Communications Research Colloquium Seminar |
| 98 | The Development of the C Programming Language | Dennis M. Ritchie | 1993 | ACM HOPL |
| 99 | How To Give a Good Research Talk | Jones et al. | 1993 | ACM SIGPLAN Notices |
| 100 | Arithmetic Shifting Considered Harmful | Guy L. Steele | 1977 | ACM SIGPLAN Notices |
| 101 | The History of FORTRAN I, II, and III | John Backus | 1978 | ACM HOPL |
| 102 | The Humble Programmer | Edsger W. Dijkstra | 1972 | Communications of the ACM |
| 103 | Computer Programming as an Art | Donald E. Knuth | 1974 | Communications of the ACM |
| 104 | History of LISP | John McCarthy | 1978 | ACM HOPL |
| 105 | Recollections about the Development of Pascal | Niklaus Wirth | 1993 | ACM HOPL |
| 106 | Recursive Functions of Symbolic Expressions and Their Computation by Machine, Part I | John McCarthy | 1960 | Communications of the ACM |
| 107 | Can Programming Be Liberated from the von Neumann Style? A Functional Style and Its Algebra of Programs | John Backus | 1978 | Communications of the ACM |
| 108 | The UNIX Time-Sharing System | Ritchie and Thompson | 1974 | Communications of the ACM |
| 109 | Password Security: A Case History | Morris and Thompson | 1979 | Communications of the ACM |
| 110 | Crisis and Aftermath | Eugene H. Spafford | 1989 | Communications of the ACM |
| 111 | Sixteen Questions About Software Reuse | Frakes and Fox | 1995 | Communications of the ACM |
| 112 | Playout Buffering of Speech Packets Based on a Quality Maximization Approach | Atzori et al. | 2006 | IEEE Transactions on Multimedia |
| 113 | Listener Detection of Talker Stress in Low-rate Coded Speech | Stephen Voran | 2008 | IEEE ICASSP |
| 114 | Playout Buffering Algorithm Using of Randomwalk in VoIP | Hiroaki Hata | 2004 | IEEE ISCIT |
| 115 | Neural and Fuzzy Computation Techniques for Playout Delay Adaptation in VoIP Networks | Ranganathan and Kilmartin | 2005 | IEEE Transactions on Neural Networks |
| 116 | The Case for Case Studies of Programming Problems | Linn and Clancy | 1992 | Communications of the ACM |
| 117 | Making Work Visible | Lucy Suchman | 1995 | Communications of the ACM |
| 118 | Trading MIPS and Memory for Knowledge Engineering | Creecy et al. | 1992 | Communications of the ACM |
| 119 | Educating a New Engineer | Peter J. Denning | 1992 | Communications of the ACM |
| 120 | A Relational Model of Data for Large Shared Data Banks | E. F. Codd | 1970 | Communications of the ACM |
back to the professional book list