This page contains a detailed plan of the chapters which will make up the Java Power Tools book. This book discusses key Java development problem areas and best practices, and focuses on open source tools that can help increase developer productivity in each area. The idea is not to focus on one particular tool, but to do a survey of a wide range of tools, and let readers decide for themselves which tool suits their needs best. You can get more details about the ideas behind this book here:
Here is the current book outline:
Part One: Build Tools
- Setting up a project using Ant
- Setting up a project using Maven 2
Part Two: Version Control Tools
- Setting up configuration management using Subversion
- Setting up configuration management using CVS
Part Three: Quality metrics tools
- Defining and enforcing coding standards with Checkstyle
- Detecting defects and non-optimal code with PMD
- Detecting potential bugs with FindBugs
- Inspecting the results – semi-automated code reviews with Jupiter
- Sharpen your focus with Mylyn
- Monitoring Build Statistics (Qalab and StatSVN)
Part Four: Technical documentation tools
- Team communication with the Maven 2 project web site
- Automatically generating technical documentation
Part Five: Unit Testing
- Testing your code with JUnit 4
- Next-Generation Testing with TestNG
- Maximizing test coverage with Cobertura
Part Six: Integration, Functional, Load and Performance Testing
- Testing a Struts application with StrutsTestCase
- Integration testing databases with DBUnit
- Performance testing with JUnitPerf
- Load and Performance Testing with JMeter
- web services with SoapUI
- Profiling and monitoring Java applications using the JDK tools
- Profiling Java applications in Eclipse
- Testing your user interfaces
Part Seven: Issue Management tools
- Tracking issues with Bugzilla
- Trac – light-weight project management
Part Eight: Build environments and continuous integration
- Setting up a continuous integration server with Continuum
- Setting up a continuous integration server with CruiseControl
- LuntBuild - a web-based Continuous Integration server
- Continuous Integration with Hudson
- [Setting up an Instant Messaging platform with Wildfire]
Key to progress indicators
These are rough indicators of where I think I'm at with regards to each chapter. Note that the chapter contents aren't carved in stone, and there is always room for improvement, even when a chapter is theoretically finished. For the record, I only put the 100% indicator once my editor has reviewed the chapter and I have taken into account his comments.This is a proposed but as yet unconfirmed chapter.
Chapter hasn't been started yet.
Chapter in progress.
Chapter in still in progress.
Chapter in draft form (still room for improvement).
Chapter reviewed and pretty much finished.