- Forward


Analytic Geometry - Software Design Considerations


Prof. David Bernstein
James Madison University

Computer Science Department
bernstdh@jmu.edu

Print

Qualitative Goals: A Reminder
Back SMYC Forward
  • 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
Back SMYC Forward

What classes do we need?

High Level Design (cont.)
Back SMYC Forward

What are the relationships between classes?

High Level Design (cont.)
Back SMYC Forward

Can line segments cross or must they intersect at a point?

Low Level Design: Attributes
Back SMYC Forward

What collections should we use?

Low Level Design: Attributes (cont.)
Back SMYC Forward

Do we need other attributes (e.g., color, line thickness)?

Low Level Design: Methods
Back SMYC Forward

How should we retrieve components?

High Level Design Revisited
Back SMYC Forward

Should we change the class hierarchy or add any interfaces?

There's Always More to Learn
Back -