1. Consult one or more of the references for software heuristics. Extract several heuristics and use them to evaluate a software-intensive system.
2. Requirements defects that are delivered to customers are the most costly because of the likelihood they will require extensive rework. But discovering such defects anytime before customer delivery is likewise very costly because only the customers’ reaction may make the nature of the defect apparent. One approach to this problem is prototyping to get early feedback. How can software be designed to allow early prototyping and feedback of the information gained without incurring the large costs associated with extensive rework?