Given a problem, identify at least one test case in the following categories: a) normal case b) boundary case c) error case When should test cases be developed? a) before designing your solution b) before implementing your solution c) while implementing your solution d) after implementing your solution