To determine your directory needs accurately, it is essential to understand the environment in which your directory service will operate . Unless you are new to your organization, you probably already know quite a bit about the overall environment. Spending some time during the early stages of design to record what you do know, and additional time on research to fill in any missing details, will pay off later in the directory design process. Explore the four areas described in this section ”organizational structure and geography, computer systems, the network, and application software ”to help you produce a complete portrait of the environment in which your directory service will be deployed. Organizational Structure and GeographyCreate a list of the major units within your organization and all the physical locations your directory service must serve. Also include information about organizations outside of yours that the directory will serve (if any). Note significant differences in the environment at each location and refer to them as you proceed with the remaining environment topics. For example, some locations will have more users than others, different kinds of computer systems, better network connectivity, and so on. Organizational structure and geography will influence everything from how many physical servers you need to deploy to how you maintain the data stored in your directory service. The needs of a small organization located in a single building are generally simpler than those of a multinational organization with offices located in many different time zones. In the latter case, seemingly simple decisions, such as choosing a time of day to perform system maintenance, are difficult because of the multitude of time zones in which the users of the system reside. The same issue applies to an extranet directory project in which the users may encompass a worldwide audience. The amount of independence that individual departments within an organization have varies widely from organization to organization as well. In a decentralized organization, delegating responsibility for directory content to each department or location may be appropriate or perhaps even required. In a centralized organization, management of the directory may be centralized for better efficiency. Computer SystemsCreate an inventory that characterizes the different types of computers in your organization. Also make a record of approximately how many of each different type are in use and the role of each system. Table 6.1 shows a sample computer system inventory. Also consider the following system- related topics:
Table 6.1. A Sample Computer System Inventory
If you are a system designer, administrator, or other information services (IS) professional, you already know how important it is to understand which computer systems are used in your organization. The variety of systems that must be supported by your directory service constrains your choices for directory server and client software. The NetworkObtain or create a map of your organization's network (or the portion of it on which your directory service will be deployed). This map should show all the backbone and branch networks that exist in the part of your organization that your directory service will serve. Each network link should be labeled with information about its bandwidth, latency, and reliability, along with any use-based costs. In large organizations, usually a central group oversees the network; hopefully the supervisory group will readily provide this kind of information. If necessary, you can measure the characteristics of the link or simply estimate them on the basis of the technology employed. Figure 6.1 shows a sample network map. Except for the intermittent ISDN line that links the Vancouver office to the main campus in Mountain View, this network is generally good. When designing your directory service topology, you should give special consideration to any part of the network that is particularly weak. For example, it may be necessary to place a directory replica in the Vancouver office to provide good service there. Figure 6.1. A Sample Network Map
All directory services depend on a computer network to exchange data with applications and for communication between the directory servers themselves. The composition, speed, and reliability of your network heavily influences how many servers you need and what the best location is for each one. The network may partially determine how many users and applications your directory can serve. Finally, in some cases the characteristics of the network may limit the types of directory applications you can support. For example, because most messaging systems employ store-and-forward designs, a messaging server can usually tolerate some delay in receiving responses from a directory service. In contrast, people who use an online phonebook application are unlikely to tolerate delays that exceed a second or two. To the messaging server, high throughput is important, but to end users low latency (that is, fast response time) is important. The network between the directory server and the applications or end users is one factor that influences the overall throughput and latency of a directory service. Application SoftwareIn most organizations, typically many different application software packages are in use. For planning purposes, concern yourself with only the most popular, the most critical, and the most directory-enabled applications. Much of the design of your directory service will be driven by the needs of the directory-enabled applications you plan to deploy. These needs are discussed in more detail in the next section of this chapter and in Chapter 7, Data Design. |