Coordinate Systems
Software Design Considerations
Prof. David Bernstein
James Madison University
Computer Science Department
bernstdh@jmu.edu
Qualitative Goals: A Reminder
Adequate - Meets all of the requirements and satisfies all of the constraints
Reliable - Low probability of failure under normal operating conditions
Robust - Able to operate under a wide variety of condtions
Safe - Able to minmize the damage resulting from failure
Easy to Repair and Enhance
Easy to Understand/Document and Use
Easy to Re-use
High-Level Design
How should we model a point in, say, polar coordinates?
Where should the methods be?
High-Level Design (cont.)
Should we include methods for mixed-type operations?
Low-Level Design
Should we discretize angles to speed things up?
Should we store intermediate calculations?