ABSTRACT

A software craftsman is a skilled artisan apparently able to balance immediate pragmatism with a longer-term focus on reducing the amount of work they must do tomorrow. The craftsman coder knows a small investment in time today can save days or weeks later on, but more important he or she has developed a sense of which small investments will reap the greatest rewards. The initial genesis of the craftsmanship movement was borne out of frustration coders felt at having to “fix” someone else’s code or worse, their own code. The craftsman was called on to “always leave the campground cleaner than they found it,” which led to discussions on refactoring and other process improvements. Test plans are a dialogue between the test team and the rest of the project. A good test plan provides information on what the team values and prioritizes as higher risks than others.