This change series makes software testing provide useful feedback on company decisions not directly related to software implementation.

Habit: Make Methods Simple

Organization ROI: Reuse code more. Engineer ROI: Separate parts of a method, unwinding their dependencies and testing each part separately.

See more...

Habit: Separate Commands and Queries

Organization ROI: Improve reusability and complexity by reducing complexity. Engineer ROI: Code becomes much easier to test.

See more...

Habit: Test as Design Preview

Organization ROI: Tests indicate design flaws before you write the code. Engineer ROI: Stop testing around existing designs. Re-invent design ideas without having to know the whole literature. The tests show you what to solve.

See more...

Habit: Communicative Tests 2 – Test as Spec

Organization ROI: Eliminate the disagreements between coders and non-coders for what the system should do. Engineer ROI: Not using cucumber/fit/fitnesse! Use the native language to agree with your PO/manager, because the code is written so well that you can.

See more...

Habit: Communicative Tests 1 – Acceptance Microtesting

Organization ROI: Guarantee each feature can be changed without interactions with other features. Provide automatic trace-ability in regulated environments. Engineer ROI: Tests drive your design to the simplest form that matches your spec and indicate when a spec change should cause a design change.

See more...