Tips for Planning Your Windows 2000 Deployment

Your ultimate goal when creating planning documents and formulating a deployment plan is to successfully deploy Windows 2000 using project management techniques that work in your organization. The following sections provide lists of items to consider as you plan your deployment.

General Best Practices

The following list contains overall best practices as identified by some early adopters of Windows 2000.

  • Use your organizational chart and see how the management structure in your organization matches up against both your organizational needs and your network LAN links. Build an Active Directory infrastructure based on these considerations.

  • Determine what level of international functionality you want to achieve and what trade-offs you are willing to make to get there.

  • Schedule for an additional level of complexity in testing your product.

  • Plan your application setup around Windows Installer.

  • Decide how you will break down system administration responsibilities for your application and identify who will be given administrative permissions.

  • Determine what policies are enforced on a typical user's system.

  • Utilize the new components provided by Windows 2000. Integrate them wisely to minimize their impact on the performance of your application.

  • Schedule enough time for installing Windows 2000 server — a several-hour process.

  • Add international issues to your Windows 2000 issue lists and test tracking systems.

  • Develop "working groups" to study task-based architecture decisions.

  • Write a good test plan and set up a test lab that exactly mirrors your production environment in terms of types of hardware and software in use.

  • Upgrade conservatively at first. You can speed up the process and rate of deployment as you start achieving success.

Deployment Phases

Determine the best overall order to deploy Windows 2000 in your organizations. The following order was used by one company:

  • Define your current environment by determining which server and client operating systems are currently in use in your organization. Study their functionality and the purposes they serve.

  • Study whether the number of users is likely to change due to mergers, acquisitions, reorganizations, or growth.

  • Study the need to scale your server environment (determine your needs for clustering and load balancing as well as Terminal Services).

  • Design your Active Directory structure including your DNS namespace.

  • Upgrade your network infrastructure and member servers

  • Implement Active Directory and storage management.

  • Upgrade or migrate your clients to Windows 2000 Professional.

  • Implement desktop management using change and configuration management tools.

Application Installation Issues

Use the following planning tips as you plan for installing applications in your organizations.

  • Make an early investment in setup authoring. Take the time to lay out your setup process early in the product development cycle.

  • Involve developers in the setup authoring process. This will help uncover dependencies early on.

  • Be aware that Windows Installer validations can affect your application's performance.

  • Avoid reboots during install wherever possible.

  • Do not add to Win.ini, System.ini, Autoexec.bat, or Config.sys.

  • Require everyone testing your applications to install them using the Windows Installer.

  • Keep in mind that an administrator can advertise your product on the user's Start menu or desktop without fully installing the product. The application will be installed when the user double-clicks on a shortcut or on a document of the type served by your application.

  • Understand and plan for "system file protection" issues.

International Issues

The following tips will help you plan for an international installation.

  • Avoid assumptions about the language version of the operating system that your application is running.

  • Avoid assuming that the locale, code page, and user interface match for a given user or computer.

  • Use Windows Installer. It is available in both ANSI and Unicode.

  • Determine what fonts are needed. Often all that is needed to support international functionality are the correct fonts.

  • Use the latest Windows 2000 printer drivers. They will provide the best support for international features.

  • Check both your application and the operating system when tracking down international problems.

Performance Issues

Maintaining high performance is important to meeting the goals of most deployments. The following tips will help you plan for improved performance.

  • Delay any startup initialization that you can.

  • Simplify startup screens so that fewer graphic bits are being sent across the network.

  • Plan for network interruptions and general network performance issues.

  • Use the caching layer that Windows 2000 provides for its file systems when a share goes offline.

Roaming Users and Terminal Services

The following tips will help you plan for roaming users and for Terminal Services installations.

  • If you plan your roaming user scenario carefully, a substantial part of your Terminal Services implementation will be done as well.

  • Support roaming user profiles and state separation.

  • Separate per-user settings from per-computer settings.

  • Do not require write access to the per-computer settings.

  • Keep in mind that regular Windows 2000 users have the ability to modify data only in their user profiles. Your application will not be able to change portions of the HKEY_LOCAL_MACHINE subtree in the registry.

  • Run your application while logged on as a user (rather than as an administrator) and test it on computers where users do not have administrative privileges. This will let you catch problems early.

Administration

As you create your plan, use the following administration tips to make it easier for you to administer your Windows 2000 installation.

  • Make sure that the administrative features of your application are as simple as possible while still providing full functionality. This will help deployment of the application in small or medium-sized organizations where custom tools are not developed.

  • Support scripting in your application. One strategy: If you write a provider for Windows Management Instrumentation (WMI), it will allow you to provide simple scripting support in your application inexpensively.

  • Support OnNow/ACPI requirements. Handle sleep and wake notifications and requests.

  • Keep in mind that default security settings are substantially more secure for regular users than they were under Windows NT 4.0 — what worked under Windows NT 4.0 for regular users might require them to be power users with Windows 2000.