How Do You Not Keep a Secret?
Having explored the ins and outs of open versus proprietary architectures, it should be fairly obvious why the benefits of openness have proven so compelling.The next logical question is this: How do you develop a technology without keeping it secret? That sounds funnyusually keeping a secret is difficult. As you see in this section, keeping a secret can be child's play in comparison to the complex process by which new open technologies are hammered out in political committees.
Open Architectures Equals Open Standards
Every open technology is based on an open standard. An open standard is simply one not kept secret. That open standard might have been developed privately and then introduced publicly, but the result is the same: It is a public technology.reference model.
Reference Models: Keeping Things Organized
One of the simplest, yet most confusing, concepts to understand is a reference model. A reference model is a simple tool. In essence, this framework enables you to dissect a complicated function into a series of individual steps and keep those tasks organized relative to each other. A common framework enables different people or companies to collaborate even if they aren't working directly with each other. That's a powerful and valuable capability!When you start dissecting a function into its individual components, one thing becomes remarkably clear: Those tasks usually have to occur in the same sequence for things to work right. Using a rather mundane and not necessarily technical example to illustrate this point, consider driving a car. The first step is gaining entry to the inside of the vehicle. Usually that's done by unlocking the door, but not always. Some people leave their doors unlocked, or it might be a top-down convertible whose driver can hop inside. (Alternatively, an entire profession is dedicated to gaining entrance to cars without having to rely on keys, but that's another issue altogether!) The point is that entering a vehicleregardless of how you achieve that taskis necessarily the first step in the function of driving.The next steps are sitting in the driver's seat, buckling up, and making sure your seat and mirrors are properly adjusted. The sequence of these events doesn't leave a lot of room for debate. You could, for example, adjust your mirrors before adjusting your seat, but then you'd probably have to readjust the mirrors after getting the seat in the right position.Thus, these tasks have a natural or logical sequence. A more subtle point is that they can be lumped together and generally regarded as a set of related functions. Their relationship is that people do these things to prepare to drive. For the sake of example, call this set of related functions Personal Preparations. The next set of functions comes immediately after completing Personal Preparations.Start visualizing your reference model for driving a car. Figure 3-1 shows the Personal Preparations in their logical order.
Figure 3-1. Organizing the Personal Preparations into a Simple Reference Model

Figure 3-2. Adding a Higher Layer of Functionality to the Reference Model

Figure 3-3. The Act of Driving Becomes the Highest Layer of Functionality in the Reference Model
