algorithm, and the user interface. The tool is tested in two different
scheduling scenarios: a mail delivery service and a fitness club.
Chapter 4 (Classifier) deals with the development of a classification
system that partitions items into categories according to their character-
istics; such a system can be used for example by an insurance company to
define risk categories for new car models. The case study presents the
basic techniques used to represent in Java generic OO concepts such as
associations and attributes.
Chapter 5 (Hardware description language) deals with the use of Java as a
general-purpose hardware description and simulation language. It leverages
the capability of the object-oriented approach to model physical compo-
nents interacting with each other. This case study focuses on state-based
behaviour, which can be described by means of state transition diagrams.
Chapter 6 (Multi-format calculator) deals with the development of a
multi-format calculator that is able to convert operand and results between
different numbering bases and representation formats. The main OO
concept that is applied in this case study is polymorphism. In addition, the
handling of abnormal conditions through exception is exemplified.
Fowler, M. (2000) UML Distilled , Addison-Wesley.
Liskov, Barbara (1988) “Data Abstraction and Hierarchy”, SIGPLAN Notices , Vol. 23,
No. 5, May.