7.1. Where We Are
Let us look at the classes we have developed so far. Figure 7-1 gives the overall picture, and the listing in Example 7-1 gives the details.
Example 7-1. Class details for the system so far
class CDRelease CommonString title UPCCode upc_code CDCategory category Days base_rental_period( ) Dollars get_rental_fee( ) class CDDisc CDRelease cd_release PhysicalID physical_id Rental current_rental start_rental(Customer the_renter) end_rental( ) // class PhysicalID class CDCategory class Rental Customer renter Timestamp start_time Timestamp end_time Days base_rental_period Boolean is_overdue( ) class CDDiscCollection CDDisc find_by_physical_id(PhysicalID a_physical_id) CDDisc [] find_by_cd_release(CDRelease a_cd_release) // Standard collection operations: add(CDDisc a_cd_disc) remove (CDDisc a_cd_disc) class CustomerID class Customer CustomerID customer_id CommonString name class CustomerCollection Customer find_by_customer_id(CustomerID a_customer_id) // Standard collection operations add(Customer customer_to_add) remove(Customer a_customer_id) // Check to see no current rentals |
We have two use cases that we are developing: Checkout_a_CDDisc and Checkin_a_CDDisc. Figure 7-2 gives an overall sequence diagram for the Checkout_a_CDDisc case.
Figure 7-1. Class diagram for the system so far
Figure 7-2. Checkout_a_CDDisc
Likewise, Figure 7-3 gives a sequence diagram ...
Get Prefactoring now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.