Page 220 -
P. 220

Chapter 7   References  203




                          7.4. Using the weather station objects identified in Figure 7.6 as a starting point, identify further
                              objects that may be used in this system. Design an inheritance hierarchy for the objects that
                              you have identified.
                          7.5. Develop the design of the weather station to show the interaction between the data collection
                              subsystem and the instruments that collect weather data. Use sequence diagrams to show
                              this interaction.
                          7.6. Identify possible objects in the following systems and develop an object-oriented design for
                              them. You may make any reasonable assumptions about the systems when deriving the design.
                                A group diary and time management system is intended to support the timetabling of
                                meetings and appointments across a group of co-workers. When an appointment is to be
                                made that involves a number of people, the system finds a common slot in each of their
                                diaries and arranges the appointment for that time. If no common slots are available, it
                                interacts with the user to rearrange his or her personal diary to make room for the
                                appointment.
                                A filling station (gas station) is to be set up for fully automated operation. Drivers
                                swipe their credit card through a reader connected to the pump; the card is verified by
                                communication with a credit company computer, and a fuel limit is established. The driver
                                may then take the fuel required. When fuel delivery is complete and the pump hose is
                                returned to its holster, the driver’s credit card account is debited with the cost of the fuel
                                taken. The credit card is returned after debiting. If the card is invalid, the pump returns it
                                before fuel is dispensed.
                          7.7. Draw a sequence diagram showing the interactions of objects in a group diary system when a
                              group of people are arranging a meeting.
                          7.8. Draw a UML state diagram showing the possible state changes in either the group diary or the
                              filling station system.

                          7.9. Using examples, explain why configuration management is important when a team of people
                              are developing a software product.
                         7.10. A small company has developed a specialized product that it configures specially for each
                              customer. New customers usually have specific requirements to be incorporated into their
                              system, and they pay for these to be developed. The company has an opportunity to bid for a new
                              contract, which would more than double its customer base. The new customer also wishes to
                              have some involvement in the configuration of the system. Explain why, in these circumstances, it
                              might be a good idea for the company owning the software to make it open source.




                     REFERENCES

                         Abbott, R. (1983). ‘Program Design by Informal English Descriptions’. Comm. ACM, 26 (11), 882–94.
                         Alexander, C., Ishikawa, S. and Silverstein, M. (1977). A Pattern Language: Towns, Building,
                         Construction. Oxford: Oxford University Press.
                         Bayersdorfer, M. (2007). ‘Managing a Project with Open Source Components’. ACM Interactions,
                         14 (6), 33–4.
   215   216   217   218   219   220   221   222   223   224   225