This chapter illustrated our approach to the design of component-based systems. The design space is partitioned into branches corresponding to a main design option (the trunk) and one or more contingencies. Each contingency may itself be partitioned, recursively, with effort allocated to each design option. Model problems are used to guide the exploration of contingencies. In this chapter one model problem was defined: were there any applet ensembles that would work with both Internet Explorer and Netscape Navigator? Three ensembles were specified, two of which were realized as model solutions.
The model problem and their solutions significantly extended our knowledge of the design space. We discovered problems that revised our initial ideas about how these ensembles worked. However, as is the norm for any field of exploration, we were left with more questions. Was there a mechanism that can be used to provide fine-grained access outside of the sandbox that would work with both Netscape Navigator and Microsoft Internet Explorer? Would the transfer of images over IIOP be the most efficient mechanism? We explore these questions, along with others, in the remaining chapters of this part of the book.