Software Design (CSC-223 97F)

[News] [Basics] [Syllabus] [Outlines] [Assignments] [Studies] [Examples] [Readings] [Projects] [API]

Assignment Five: Interface design and group work

Summary: As we saw in class, unambiguous and clear class interface design is particularly important as you develop objects for use by others. In this assignment, the members of your group will work together to develop and understand a reasonable set of input and output classes.

Note: I will not give extensions on this assignment, as I'll be using your Thursday evening work to prepare a quiz for Friday. initial parts, so you should make sure to record them.

Collaboration: You must work with your colleagues on this assignment. Your grade on the assignment will be based on each member of the group's understanding of the work you turn in. Different groups may (but need not) discuss design with each other, and critique each other's designs.


Many programmers new to Java complain that Java does not provide the input and output methods that they are accustomed to. In particular, they want to be able to read various types from standard input (e.g., integers, doubles, strings, one "line" of text, etc.) and write formatted data to standard output (e.g., write a double with two digits of precision, or write an integer padding it to up to eight spaces)..

For this assignment, you should develop the documentation for classes that support an appropriate set of methods for input and output. Your classes should support input from the keyboard (or, more precisely, standard input) and from files, and output to the screen (or more precisely, standard output) and to files.

This is only an exercise in documentation writing. For this assignment, you should not write any code.


Your work will be graded on the perceived utility and clarity of your classes. While I will do some of that evaluation on my own, I will also, in effect, have you test yourselves and each other.


For the next assignment, I may have you implement your classes as well as those of your classmates.

[News] [Basics] [Syllabus] [Outlines] [Assignments] [Studies] [Examples] [Readings] [Projects] [API]

Disclaimer Often, these pages were created "on the fly" with little, if any, proofreading. Any or all of the information on the pages may be incorrect. Please contact me if you notice errors.

Source text last modified Fri Sep 26 12:08:20 1997.

This page generated on Fri Dec 12 12:06:18 1997 by SiteWeaver.

Contact our webmaster at