« Return to Top Picks landing page

IEEE Software's 25th-Anniversary Top Picks

The authority on translating software theory into practice, IEEE Software features peer-reviewed articles and columns by leading real-world experts. The following list represents some of the most important articles from the magazine's first 25 years. Access the first three articles and the introduction for free, and get the rest of the articles' extended abstracts here.

If you received our special email invitation, you'll receive the articles marked "Bonus" along with your paid print subscription (be sure to enter your promo code) to IEEE Software!

cover Subscribe
Top Picks Tech Sets Banner

New! Subsets of IEEE Software's Top Picks TechSets feature articles from the 25th-Anniversary list. Get yours today for the introductory price of $19 (save 34%)

Mapping the Software Development Territory

Visionary Pragmatics in Software Design

Building the Right Software the Right Way

Ideas with Impact—Requirements, Testing, and Quality

Architecture—Designing Strong Foundations

IEEE Software's 25th Anniversary Top Picks


FREE!  IEEE Software's 25th Anniversary Picks (Introduction) Hakan Erdogmus, Frances Paulisch, John Grundy Jan./Feb. 2009 Software O
FREE!  Prospects for an Engineering Discipline of Software Mary Shaw Nov./Dec. 1990 Professionalism R
FREE!  The 4+1 View Model of Architecture Philippe B. Kruchten Nov./Dec. 1995 Architecture P
FREE!  Extreme Programming from a CMM Perspective Mark C. Paulk Nov./Dec. 2001 Process O

Access free article abstracts for the following articles in the IEEE Computer Society's Digital Library

BONUS What Is Software Testing? And Why Is It So Hard? James A. Whittaker Jan./Feb. 2000 Testing O
BONUS Tactical Approaches for Alleviating Distance in Global Software Development Erran Carmel, Ritu Agarwal Mar./Apr. 2001 Process, project management O
BONUS Extreme Programming from a CMM Perspective Mark C. Paulk Nov./Dec. 2001 Process O
BONUS What Models Mean Ed Seidewitz Sep./Oct. 2003 Design, architecture O
BONUS Measuring the ROI of Software Process Improvement Rini van Solingen May/June 2004 Project management O
BONUS Integrated Requirements Engineering: A Tutorial Ian Sommerville Jan./Feb. 2005 Requirements O
Operational Profiles in Software-Reliability Engineering John D. Musa Mar./Apr. 1993 Quality P
Process Control for Error-Free Software: A Software Success Story Buford D. Tackett, Buddy Van Doren May/June 1999 Quality, process E
Attacking Malicious Code: A Report to the Infosec Research Council Gary McGraw, Greg Morrisett Sep./Oct. 2000 Security E
Architecture Decisions: Demystifying Architecture Jeff Tyree, Art Akerman Mar./Apr. 2005 Architecture P
Architecture Reviews: Practice and Experience Joseph F. Maranzano, Sandra A. Rozsypal, Gus H. Zimmerman, Guy W. Warnken, Patricia E. Wirth, David M. Weiss Mar./Apr. 2005 Design, architecture E
The Pragmatics of Model-Driven Development Bran Selic Sep./Oct. 2003 Design, architecture R
Using Patterns to Improve Our Architectural Vision Norman L. Kerth, Ward Cunningham Jan./Feb. 1997 Design, architecture R
A Critical Look at Software Capability Evaluations Terry B. Bollinger, Clement McGowan Jul./Aug. 1991 Process E
Anchoring the Software Process Barry Boehm Jul./Aug. 1996 Process P
The Incremental Funding Method: Data-Driven Software Development Mark Denne, Jane Cleland-Huang May/June 2004 Project management P
Evidence-Based Software Engineering for Practitioners Tore Dybå, Barbara A. Kitchenham, Magne Jørgensen Jan./Feb. 2005 Empirical software engineering R
Surviving Global Software Development Christof Ebert, Philip De Neve Mar./Apr. 2001 Process E
Architectural Mismatch: Why Reuse Is So Hard David Garlan, Robert Allen, John Ockerbloom Nov./Dec. 1995 Architecture E
Reusability: The Case for Object-Oriented Design Bertrand Meyer Mar./Apr. 1987 Design, programming P
Software Risk Management: Principles and Practices Barry W. Boehm Jan./Feb. 1991 Project management P
Characterizing the Software Process: A Maturity Framework Watts S. Humphrey Mar./Apr. 1988 Process P
Professionalism and Test-Driven Development Robert C. Martin May/June 2007 Process, programming,
Seven Myths of Formal Methods Anthony Hall Sep./Oct. 1990 Requirements, quality R
The Golden Age of Software Architecture Mary Shaw, Paul Clements Mar./Apr. 2006 Architecture R
Usage-Centered Engineering for Web Applications Larry L. Constantine, Lucy A.D. Lockwood Mar./Apr. 2002 Requirements P
Tests and Requirements, Requirements and Tests: A Möbius Strip Robert C. Martin, Grigori Melnik Jan./Feb. 2008 Requirements, Testing C
Beyond Blaming: Congruence in Large Systems Development Projects Jean McLendon, Gerald M. Weinberg Jul./Aug. 1996 Project management R
Strengthening the Case for Pair Programming Laurie Williams, Robert R. Kessler, Ward Cunningham, Ron Jeffries Jul./Aug. 2000 Process, programming E
Software Development Worldwide: The State of the Practice Michael Cusumano, Alan MacCormack, Chris F. Kemerer, Bill Crandall Nov./Dec. 2003 Process E
Righting Software James R. Larus, Thomas Ball, Manuvir Das, Robert DeLine, Manuel Fähndrich, Jon Pincus,
Sriram K. Rajamani, Ramanathan Venkatapathy
May/June 2004 Quality, tools P
Using Static Analysis to Find Bugs Nathaniel Ayewah, William Pugh, David Hovemeyer, J. David Morgenthaler, John Penix Sep./Oct. 2008 Quality, tools C
Provoking Creativity: Imagine What Your Requirements Could Be Like Neil Maiden, Alexis Gizikis, Suzanne Robertson Sep./Oct. 2004 Requirements P

*KEY E: Analyses based on experiences, observations, or surveys. P: Pioneering ideas that had an impact.
: Overview of a topic. C: Recent, cutting-edge ideas. R: Reflections on a topic or the profession.