Magazines  


Bookshelf

Department Editor: Art Sedighi

Book Reviews

May/June 2009

Just Enough Web Programming with XHTML, PHP, and MySQL
by Guy W. Lecky-Thompson, reviewed by Todd Schultz

Using Aspect-Oriented Programming for Trustworthy Software Development

by Vladimir O. Safonov,

reviewed by Scott Brookhart

Effective Java
, 2nd ed.

by Joshua Bloch,

reviewed by John R. Dance

March/April 2009

Designing and Engineering Time: The Psychology of Time Perception in Software
by Steve Seow, reviewed by Paul Freedman

Emergent Design: The Evolutionary Nature of Professional Software Development
by Scott L. Bain, reviewed by Ben Linders

Oracle PL/SQL: Expert Techniques for Developers and Database Administrators
by Lakshman Bulusu, reviewed by Caroline Pepa

Software Maintenance Management: Evaluation and Continuous Improvement
by Alain April and Alain Abran, reviewed by Sandesh Tattitali

January/February 2009

The Art of Multiprocessor Programming
by Maurice Herlihy and Nir Shavit, reviewed by Scott Brookhart

Software Testing and Quality Assurance: Theory and Practice
by Sagar Naik and Piyu Tripathy, reviewed by Vahid Garousi

Measuring the User Experience: Collecting, Analyzing, and Presenting Usability Metrics
by Tom Tullis and Bill Albert, reviewed by Jitendra Mudhol

Adrenaline Junkies and Template Zombies: Understanding Patterns of Project Behavior
by Tom DeMarco, Peter Hrushcka, Tim Lister, Suzanne Robertson, James Robertson, and Steve McMenamin, reviewed by Ben Linders

November/December 2008

Introducing Ubuntu: Desktop Linux
by Brian Proffitt, reviewed by Soumitra Bhattacharyya

A Prototype Example for Understanding Software Factories
by Gunther Lenz and Christoph Wienands, reviewed by Stefan Turalski

CMMI and Six Sigma
by Jeanine M. Siviy, M. Lynn Penn, and Robert W. Stoddard, reviewed by Scott Brookhart

September/October 2008

Handbook of Software Quality Assurance, 4th ed.
G. Gordon Schulmeyer, ed., reviewed by Todd Schultz

Advanced Ajax: Architecture and Best Practices
by Shawn M. Lauriat, reviewed by John R. Dance

Reaching the Goal: How Managers Improve a Services Business Using Goldratt's Theory of Constraints
by John Arthur Ricketts, reviewed by Caroline Pepa

July/August 2008

A Quick Understanding of C Programming, 2nd ed.,
by Michael A. Vine, reviewed by Naseem Mariam

The Craft of System Security
by Sean Smith and John Marchesini, reviewed by Fernando Berzal

May/June 2008

Implementation Patterns
by Kent Beck, reviewed by Scott Brookhart

Interaction Design: Beyond the Human-Computer Interaction
by Helen Sharp, Yvonne Rogers, and Jenny Preece, reviewed by Fernando Berzal

Manage It! Your Guide to Modern, Pragmatic Project Management
by Johanna Rothman, reviewed by Caroline Pepa

March/April 2008

xUnit Test Patterns: Refactoring Test Code
by Gerard Meszaros, reviewed by Scott Brookhart

Object-Oriented Analysis and Design with Applications
 by Grady Booch, Robert A. Maksimchuk, Michael W. Engle, Bobbi J. Young, Jim Connallen, and Kelli A. Houston, reviewed by David Arthur Eatough

The New Language of Business: SOA & Web 2.0
by Sandy Carter, reviewed by Vahid Garousi

Practical Software Estimation: Function Point Methods for Insourced and Outsourced Projects
by M.A. Parthasarathy, reviewed by Naseem Mariam

January/February 2008

Designing with Blends: Conceptual Foundations of Human-Computer Interaction and Software Engineering
by Manuel Imaz and David Benyon, reviewed by Sandesh Tattatali

Adaptive Learning of Polynomial Networks: Genetic Programming, Backpropagation and Bayesian Methods
by Nikolay Y. Nikolaev and Hotoshi Iba, reviewed by Art Sedighi

Aesthetic Computing
Paul Fishwick, ed., reviewed by Todd Schultz

November/December 2007 (pdf)

Probability and Random Processes for Electrical and Computer Engineers
by John A. Gubner, reviewed by Scott Brookhart

I Am a Strange Loop
by Douglas Hofstadter, reviewed by Todd Schultz

Coolhunting: Chasing Down the Next Big Thing
by Peter A. Gloor and Scott M. Cooper, reviewed by Paul Freedman

The C++ Standard Library Extensions: A Tutorial and Reference
by Pete Becker, reviewed by Art Sedighi

September/October 2007 (pdf)

Managing Iterative Software Development Projects
by Ian Spence and Kurt Bittner, reviewed by Vahid Garousi

Introduction to Network Security
by Neal Krawetz, reviewed by Art Sedighi

July/August 2007 (pdf)

Code Craft: The Practice of Writing Excellent Code
by Pete Goodliffe, reviewed by Diomidis Spinellis

Software Specification and Design: An Engineering Approach
by John C. Munson, reviewed by Naseem Mariam

CMMI for Outsourcing: Guidelines for Software, Systems, and IT Acquisition
by Hubert F. Hofmann, Deborah K. Yedlin, John W. Mishler, and Susan Kushner, reviewed by Caroline Pepa

May/June 2007 (pdf)

CMMI: Guidelines for Process Integration and Product Improvement, 2nd edition
by Mary Beth Chrissis, Mike Konrad, and Sandy Shrum, reviewed by Christof Ebert

Software without Borders: A Step-By-Step Guide to Outsourcing Your Software Development
by Steve Mezak, reviewed by Anthony Akins

March/April 2007 (pdf)

More About Software Requirements: Thorny Issues and Practical Advice
by Karl E. Wiegers, reviewed by Caroline Pepa

Catastrophe Disentanglement: Getting Software Projects Back on Track
by E.M. Bennatan, reviewed by Naseem Mariam

Offshoring Information Technology: Sourcing and Outsourcing to a Global Workforce
by Erran Carmel and Paul Tjia, reviewed by Kevin C. Desouza

January/February 2007 (pdf)

Software Estimation: Demystifying the Black Art
by Steve McConnell, reviewed by Scott Brookhart

Virtual Machines: Versatile Platforms for Systems and Processes
by James E. Smith and Ravi Nair, reviewed by Cristiano di Flora

Perspectives on Free and Open Source Software
by Joseph Feller, Brian Fitzgerald, Scott A. Hissam, and Karim R. Lakhani, eds., reviewed by Carlos Denner dos Santos Jr.

November/December 2006 (pdf)

Great Software Debates
by Alan M. Davis, reviewed by Anthony Akins

The Software Vulnerability Guide
by Herbert H. Thompson and Scott G. Chase, reviewed by Radu State 

Only available online:
Strategic Software Engineering: An Interdisciplinary Approach
by Fadi P. Deek, James A.M. McHugh, and Osama M. Elijabiri, reviewed by Paolo Donzelli

Ending Spam: Bayesian Content Filtering and the Art of Statistical Language Classification
by Jonathan A. Zdziarski, reviewed by Radu State

September/October 2006 (pdf)

The Best Software Writing I
by Joel Spolsky, ed., reviewed by Anthony Akins

Return on Software: Maximizing the Return on Your Software Investment
by Steve Tockey, reviewed by Ajit Appari 

Only available online:
Just Enough Requirements Management: Where Software Development Meets Marketing
by Alan M. Davis, reviewed by Caroline Pepa

Grid Computing in Life Science: First International Workshop on Life Science Grid
by Akihiko Konagaya and Kenji Satou, eds., reviewed by Art Sedighi

July/August 2006 (pdf)

Software Systems Architecture: Working with Stakeholders Using Viewpoints and Perspectives
by Nick Rozanski and Eoin Woods, reviewed by Fernando Berzal 

Competitive Engineering
by Tom Gilb, reviewed by Stuart James Woodward

Server Architectures
by René J. Chevance, reviewed by Art Sedighi 

Only available online:
The Product Marketing Handbook for Software, 4th edition
by Merrill R. Chapman, reviewed by Paul Freedman

Java Puzzlers: Traps, Pitfalls, and Corner Cases
by Joshua Bloch and Neal Gafter, reviewed by Art Sedighi

May/June 2006 (pdf)

Fit for Software Development: Framework for Integrated Tests
by Rick Mugridge and Ward Cunningham, reviewed by Anthony Akins 

Cryptography in the Database: The Last Line of Defense
by Kevin Kenan, reviewed by Radu State

Service-Oriented Software System Engineering: Challenges and Practices
by Zoran Stojanovic and Ajantha Dahanayake, reviewed by Art Sedighi 

Only available online:
The Art of Project Management
by Scott Berkun, reviewed by Jerry Conklin

Dissemination of Information in Communication Networks: Broadcasting, Gossiping, Leader Election, and Fault-Tolerance
by Juraj Hromkovic, Ralf Klasing, Andrzej Pelc, Peter Ruzicka, and Walter Unger, reviewed by Art Sedighi

March/April 2006 (pdf)

Estimating Software-Intensive Systems
by Richard D. Stutzke, reviewed by Todd Schultz 

The Elements of UML 2.0 Style
by Scott W. Ambler, reviewed by Scott Brookhart

Service-Oriented Architecture: Concepts, Technology and Design
by Thomas Erl, reviewed by Art Sedighi 

Only available online:
Effective C++: 55 Specific Ways to Improve Your Programs and Designs, 3rd Edition
by John R. Dance, reviewed by Paul Freedman

Linux Quick Fix Notebook
by Peter Harrison, reviewed by Art Sedighi

January/February 2006 (pdf)

Software Paradigms
by Stephen H. Kaisler, reviewed by Todd Schultz 

The Database Hacker's Handbook
by David Litchfield, Chris Anley, John Heasman, and Bill Grindlay, reviewed by Radu State

Enterprise Knowledge Infrastructures
by Ronald Maier, Thomas Hädrich, and René Peinlet, reviewed by Art Sedighi

Only available online:
Professional Software Development
by Steve McConnell, reviewed by Paul Freedman

UML by Example
by Ghinwa Jalloul, reviewed by Todd Schultz

Advanced Programming in the UNIX Environment, 2nd ed.
by Richard Stevens and Stephen Rago, reviewed by Art Sedighi

November/December 2005 (pdf)

User Stories Applied: For Agile Software Development
by Mike Cohn, reviewed by Moshood Omolade Saliu 

The Grid 2: Blueprint for a New Computing Infrastructure
by Ian Foster and Carl Kesselman, reviewed by Shubhashis Sengupta

Software Engineering Handbook
by Jessica Keyes, reviewed by Fernando Berzal 

The Software Project Manager's Handbook: Principles That Work at Work
by Dwayne Phillips, reviewed by Fernando Berzal

Only available online:
Absolute Java
by Walter Savitch, reviewed by Art Sedighi

Working Effectively with Legacy Code
by Michael C. Feathers, reviewed by Adam Geras, Michael Smith, and James Miller

September/October 2005 (pdf)

Service-Oriented Architecture: A Field Guide to Integrating XML and Web Services
by Thomas Erl, reviewed by Art Sedighi

Software Development Failures
by Kweku Ewusi-Mensah, reviewed by Martyn Thomas

Successful IT Project Delivery: Learning the Lessons of Project Failure
by David Yardley, reviewed by Martyn Thomas

Interaction Design for Complex Problem Solving: Developing Useful and Usable Software
by Barbara Mirel, reviewed by Paula M. Bach and Mark A. Cohen

Only available online:
Essential .NET Volume 1: The Common Language Runtime
by Don Box with Chris Sells, reviewed by Chris Mylonas

XML Topic Maps: Creating and Using Topic Maps for the Web
edited by Jack Park, reviewed by Art Sedighi

July/August 2005 (pdf)

Open Source Software Law
by Rod Dixon, reviewed by Joel West

Understanding Open Source and Free Software Licensing
by Andrew M. St. Laurent, reviewed by Joel West

Open Source Licensing: Software Freedom and Intellectual Property Law
by Lawrence Rosen, reviewed by Joel West

Code Reading: The Open Source Perspective
by Diomidis Spinellis, reviewed by Angela Jury

Grid Computing
by Joshy Joseph and Craig Fellenstein, reviewed by Shubhashis Sengupta

The Art of UNIX Programming
by Eric S. Raymond, reviewed by Stratton Penberthy

Only available online:
Pragmatic Version Control Using CVS
by David Thomas and Andrew Hunt, reviewed by Lorin Hochstein

J2EE Web Services: The Ultimate Guide
by Richard Monson-Haefel, reviewed by Art Sedighi

May/June 2005 (pdf)

UML Distilled: A Brief Guide to the Standard Object Modeling Language
by Martin Fowler, reviewed by Stephen Mellor

Testing Computer Software, 2nd ed.
by Cem Kaner, Jack Falk, and Hung Quoc Nguyen, reviewed by Fernando Berzal

Test-Driven Development: By Example
by Kent Beck, reviewed by Fernando Berzal

Lessons Learned in Software Testing
by Cem Kaner, James Bach & Bret Pettichord, reviewed by Fernando Berzal

Five Core Metrics: The Intelligence behind Successful Software Management
by Lawrence H. Putnam and Ware Myers, reviewed by Christof Ebert

Only available online:
C++ Without Fear: A Beginner’s Guide That Makes You Feel Smart
by Brian Overland, reviewed by Art Sedighi

Real Web Project Management: Case Studies and Best Practices from the Trenches
by Thomas J. Shelford and Gregory A. Remillard, reviewed by Mariá Bieliková

March/April 2005 (pdf)

Test Driven Development: A Practical Guide
by David Astels, reviewed by Alex Abacus

Agile & Iterative Development: A Manager’s Guide
by Craig Larman, reviewed by Mike Barker

Software by Numbers: Low-Risk, High-Return Development
by Mark Denne and Jane Cleland-Huang, reviewed by Paul Freedman

Only available online:
Introduction to Parallel Computing: Design and Analysis of Algorithms, 2nd Ed.
by Ananth Grama et. al, reviewed by Art Sedighi

Software Metrics: A Guide to Planning, Analysis, and Application
by C. Ravindranath Pandian, reviewed by Harekrishna Misra

January/February 2005 (pdf)

Numerical Recipes in C++: The Art of Scientific Computing, 2nd edition
by William H. Press et al., reviewed by Diomidis Spinellis

Programming in the .NET Environment
by Damien Watkins, Mark Hammond, and Brad Abrams, reviewed by John R. Dance

A Practical Guide to Extreme Programming
by David Astels, Granville Miller, and Miroslav Novak, reviewed by David Arthur Eatough

IT Project Estimation: A Practical Guide to the Costing of Software
by Paul Coombs, reviewed by Kevin C. Desouza, Yukika Awazu

Only available online:
The Laws of Software Process: A New Model for the Production and Management of Software
by Philip G. Armour, reviewed by Paul Freedman

UML Bible
by Tom Pender, reviewed by Wilson Pardi Jr.

November/December 2004 (pdf)

Test-Driven Development: By Example
by Kent Beck, reviewed by Philipp K. Janert

Pair Programming Illuminated
by Laurie Williams and Robert Kessler, reviewed by Stan Rifkin

Only available online:
Developing Microsoft Office Solutions: Answers for Office 2003, Office XP, Office 2000, and Office 97
by Ken Blutman, reviewed by Jennifer Hogdon

Observing The User Experience: A Practitioner’s Guide to User Research
by Mike Kuniavsky, reviewed by Harekrishna Misra

Inside the Security Mind: Making the Tough Decisions
by Kevin Day, reviewed by Paul E. Sevinç

September/October 2004 (pdf)

Succeeding with Open Source
by Bernard Golden, reviewed by Terry Bollinger

Quality Software Management, Volume 4: Anticipating Change
by Gerald M. Weinberg, reviewed by Mike Barker

Waltzing with Bears: Managing Risk on Software Projects
by Tom DeMarco and Timothy Lister, reviewed by Philipp K. Janert

Only available online:
Peer Reviews in Software: A Practical Guide
by Karl E. Wiegers, reviewed by Karol Frühauf

The Essential Guide to Wireless Communications Applications: From Cellular to Wi-Fi
by Andy Dornan, reviewed by Harekrishna Misra

July/August 2004 (pdf)

CMMI Distilled: A Practical Introduction to Integrated Process Improvement, 2nd edition
by Dennis M. Ahern reviewed by Christof Ebert

CMMI Guidelines for Process Integration and Product Improvement
by Mary Beth Chrissis, Mike Konrad, and Sandy Shrum, reviewed by Christof Ebert

Agile Software Development Ecosystems
by Jim Highsmith, reviewed by Stephen Mellor

Only available online:
Visual Basic .NET at Work
by Tony Martin and Dominic Selly, reviewed by Fernando Berzal

The Business of Software
by Michael A. Cusumano, reviewed by Yukika Awazu and Kevin C. Desouza

May/June 2004 (pdf)

Design Methods for Reactive Systems
by Roel J. Wieringa, reviewed by Fernando Berzal

More Secrets of Consulting: The Consultant's Tool Kit
by Gerald M. Weinberg, reviewed by Diomidis Spinellis

Only available online:
C++ Templates: The Complete guide
by David Vandevoorde and Nicolai M. Josuttis, reviewed by Ed Harcourt

IT Measurement: Practical Advice from Experts
by International Function Point Users Group, reviewed by Harekrishna Misra

March/April 2004 (pdf)

A Handbook of Software and Systems Engineering: Empirical Observations, Laws, and Theories
by Albert Endres and Dieter Rombach, reviewed by Deependra Moitra

Use Case Modeling
by Kurt Bittner and Ian Spence, reviewed by Martin Fogarty

Only available online:
The Essential Guide to Application Service Providers
by Jon William Toigo, reviewed by Shantha Mohan

A Guide to Forensic Testimony: The Art and Practice of Presenting Testimony as an Expert Technical Witness
by Fred Chris Smith and Rebecca Gurley Bace, reviewed by Robert C. Larrabee

January/February 2004 (pdf)

Software Configuration Management Patterns
by Stephen P. Berczuk and Brad Appleton, reviewed by Philipp K. Janert

How to Run Successful Projects III: The Silver Bullet
by Fergus O'Connell, reviewed by Shantha Mohan

Beyond Software Architecture: Creating and Sustaining Winning Solutions
by Luke Hohmann, reviewed by Robert C. Larrabee

Only available online:
A Practical Approach to Software Quality
by Gerard O'Regan, reviewed by Robert C. Larrabee

Improving Software Organizations: From Principles to Practice
by Lars Mathiassen, Jans Pries-Heje, and Ojelanki Ngwenyama, reviewed by Shantha Mohan

November/December 2003 (pdf)

Software Craftsmanship
by Pete McBreen, reviewed by Philipp K. Janert

Bell Labs: Life in the Crown Jewel
by Narain Gehani, reviewed by Robert C. Larrabee

Debugging
by David Agans, reviewed by Melissa Stange

Only available online:
Metadata Solutions: Using Metamodels, Repositories, XML, and Enterprise Portals to Generate Information on Demand
by Adrienne Tannenbaum, reviewed by Fernando Berzal and Nicolas Marin

Making Process Improvement Work: A Concise Action Guide for Software Managers and Practitioners
by Neil S. Potter and Mary E. Sakry, reviewed by Robert C. Larrabee

September/October 2003 (pdf)

Quality Software Project Management
by Robert Futrell, Donald Shafer, and Linda Shafer, reviewed by Robert C. Larrabee

Performance Solutions: A Practical Guide to Creating Responsive, Scalable Software
by Connie U. Smith and Lloyd G. Williams, reviewed by Shantha Mohan

Only available online:
Game Programming Gems 2
by Mark DeLoura, ed., reviewed by Rob Gougher

Enterprise Content Services
by Greg Laugero and Alden Globe, reviewed by Fernando Berzal and Nicolas Marin

July/August 2003 (pdf)

Building Systems from Commercial Components
by Kurt C. Wallnau, Scott A. Hissam, and Robert C. Seacord, reviewed by Shantha Mohan

Practical Software Measurement: Objective Information for Decision Makers
by John McGarry et al., reviewed by Robert C. Larrabee

Software Radio: A Modern Approach to Radio Engineering
by Jeffrey H. Reed, reviewed by Dharmendra Lingaiah

Only available online:
Herding Cats: A Primer for Programmers Who Lead Programmers
by J. Hank Rainwater, reviewed by David L Gorsline

The Manager Pool: Patterns for Radical Leadership
by Don Sherwood Olson and Carol L. Stimmel, reviewed by Anthony Akins

May/June 2003 (pdf)

Extreme Programming Applied: Playing to Win
by Ken Auer and Roy Miller, reviewed by John Dance

Extreme Programming Explored
by William C. Wake, reviewed by John Dance

Extreme Programming in Practice
by James Newkirk and Robert C. Martin, reviewed by John Dance

Making the Software Business Case: Improvement by Numbers
by Donald Reifer, reviewed by David H. Shumaker

Business Rules and Information Systems: Aligning IT with Business Goals
by Tony Morgan, reviewed by Robert C. Larrabee

Only available online:
Evaluating Software Architectures, Methods and Case Studies
by Paul Clements, Rick Kazman, and Mark Klein, reviewed by Shantha Mohan

Software Pioneers: Contributions to Software Engineering
by Manfred Broy and Ernst Denert, reviewed by Paul E. Sevinc

March/April 2003 (pdf)

A New Kind of Science
by Stephen Wolfram, reviewed by Terry Bollinger

Prey: A Novel
by Michael Crichton, reviewed by Terry Bollinger

The Unified Process Explained
by Kendall Scott, reviewed by John Abbott

Effective Work Breakdown Structures
by Gregory T. Haugan, reviewed by Robert C. Larrabee

Applied Java Patterns
by Stephen Stelting and Olav Maassen, reviewed by Carl Vieregger

Only available online:
Component-Based Software Engineering: Putting the Pieces Together
by George T. Heineman and William T. Councill, reviewed by Zhihui (Jeff) Xue

Applied Statistics for Software Managers
by Katrina D. Maxwell, reviewed by Robert C. Larrabee

January/February 2003 (pdf)

Slack: Getting Past Busywork, Burnout, and the Myth of Total Efficiency
by Tom DeMarco, reviewed by Carol A. Long

Agile Software Development
by Alistair Cockburn, reviewed by Anthony Akins

Applied Software Architecture
by Christine Hofmeister, Robert Nord, and Dilip Soni, reviewed by Deependra Moitra

Only available online:
Technology Acquisition, Buying the Future of Your Business
by Allen Eskelin, reviewed by Robert C. Larrabee

CMMI Distilled: A Practical Introduction to Integrated Process Improvement
by Dennis M. Ahern, Aaron Clouse, and Richard Turner, SEI Series in Software Engineering, reviewed by Carol A. Long