Book Review - Practical Development Environments by Matthew B. Doar
Category Book Reviews
It's much more common these days to see development environments that use standard tools for things like the build process, source management, testing, and so forth. But if you're just getting introduced to these areas of automation and control, how do you get a broad understanding of the issues and offerings without buying a ton of books that are far too detailed for what you need? Practical Development Environments by Matthew B. Doar addresses this need quite well...
Contents: Introduction; Project Basics; Project Concepts; Software Configuration Management; Building Software; Testing Software; Tracking Bugs; Documentation Environments; Releasing Products; Maintenance; Project Communication; Politics and People; How Tools Scale; Resources; Index
I like the way things are laid out here. Take the Tracking Bugs chapter for example... It starts out with a list of requirements that a tool needs to be able to do well in order to be useful in tracking bugs. Things like ease of data entry, easy review of bugs, tracing the history of a bug, generate reports, and so forth. Once the requirements are out there, then he examines some of the common tools available along with their pros and cons. There's the ever-present spreadsheet (not bad for something small and simple), Bugzilla, GNATS, FogBugz, JIRA, and TestTrack. Each of those products are covered in a page or two so that you can understand the history, strengths, current direction, and why you may or may not want to choose this particular tool. There's also no dogma here on whether something needs to be free/open source or not. Both commercial and open source packages are covered. This is followed by more general bug tracking system discussion, and then it all ends with a checklist of questions you should feel comfortable answering about your particular choice in this area. By the time you're done with a chapter on a particular subject, you should have a decent foundation on the concepts you need to know to make an informed choice.
It's not a book you'd mistake as a reference manual on any one (or more) tools, but that's not what it sets out to be. This is the book you'd want if you don't know what you don't know. If you keep that in mind, it delivers on its purpose.
It's much more common these days to see development environments that use standard tools for things like the build process, source management, testing, and so forth. But if you're just getting introduced to these areas of automation and control, how do you get a broad understanding of the issues and offerings without buying a ton of books that are far too detailed for what you need? Practical Development Environments by Matthew B. Doar addresses this need quite well...
Contents: Introduction; Project Basics; Project Concepts; Software Configuration Management; Building Software; Testing Software; Tracking Bugs; Documentation Environments; Releasing Products; Maintenance; Project Communication; Politics and People; How Tools Scale; Resources; Index
I like the way things are laid out here. Take the Tracking Bugs chapter for example... It starts out with a list of requirements that a tool needs to be able to do well in order to be useful in tracking bugs. Things like ease of data entry, easy review of bugs, tracing the history of a bug, generate reports, and so forth. Once the requirements are out there, then he examines some of the common tools available along with their pros and cons. There's the ever-present spreadsheet (not bad for something small and simple), Bugzilla, GNATS, FogBugz, JIRA, and TestTrack. Each of those products are covered in a page or two so that you can understand the history, strengths, current direction, and why you may or may not want to choose this particular tool. There's also no dogma here on whether something needs to be free/open source or not. Both commercial and open source packages are covered. This is followed by more general bug tracking system discussion, and then it all ends with a checklist of questions you should feel comfortable answering about your particular choice in this area. By the time you're done with a chapter on a particular subject, you should have a decent foundation on the concepts you need to know to make an informed choice.
It's not a book you'd mistake as a reference manual on any one (or more) tools, but that's not what it sets out to be. This is the book you'd want if you don't know what you don't know. If you keep that in mind, it delivers on its purpose.


