For many organizations, HCL Notes and Domino form the backbone of their critical business processes. To keep up with innovations, organizational requirements, and growing user expectations, IT groups are performing regular upgrades to their Notes and Domino production environments.

But despite the obvious benefits of upgrades, mistakes in the process can quickly erode the value of upgrading. Performing a major, enterprise-wide upgrade is usually a challenging task for any IT department since many of the activities are performed manually. There are many obstacles that can prevent the successful upgrade of your HCL Notes/Domino environment.

The complexity, cost, and resource commitment will depend on a variety of factors. These include the date of your existing version and whether your Notes/Domino deployment has been customized – either via plugins, with changes to the core system, or through integration of other solutions.

If your organization is preparing to upgrade HCL Notes/Domino, this best practice list will help you avoid common project pitfalls.

NOTE:

  • If you only plan to install a fixpack or hotfix, then just do so! The following list is for major upgrades from a previous release like 8, 9 or 10 to Notes and Domino 11, as well as for customers who plan to use Notes Nomad Mobile for the first time.
  • If you are running Notes basic clients, then you can also safely ignore a good chunk of the following. The Notes 11 standard (=Eclipse) client comes with nice visual improvements (more so “changes for end users”), especially for the Notes workspace/desktop, the “Open List”, and the V11 mail template.
  • Bigger upgrade leaps (Notes 8 or 9 to 11 vs. Notes 10 to 11), demand attention for all of the following topics.

1. Find Your Stakeholders First

It is essential for your success to include both internal and external stakeholders. You may also need to consider end users, trainers, content developers, administrators, support and hosting teams, QA and testing teams, system owners, external suppliers, and service partners. Work out how each group interacts with your system, how a Notes/Domino upgrade will affect them, and what level of ongoing engagement they might require.

Especially when it comes to your Domino Applications, there is a difference between an application owner and a true stakeholder.

If you don’t plan to change your primary client used for working with your applications (think: Basic vs. Standard vs. browser vs. Nomad mobile vs. the upcoming Nomad web client), then the only thing you may need to consider are newly introduced Classes that could conflict with pre-existing self- or third party-developed Classes with the same name.

If you do plan to change the primary client for working with applications, then, in addition to the conflicting Classes topic, the question is whether your applications depend on XPages or Java, and whether the new client supports it.

And don’t forget: There can be many roadblocks in your code that you should try to avoid, to not tap into the danger of delaying your whole project.

2. Undertake Change Control Planning

Besides the technical work involved in upgrading your Notes/Domino environment, effective change control will probably be the biggest challenge surrounding a software upgrade. Keeping the balance between adequate communication and consultation, and overwhelming stakeholders with detail can be difficult. Consider assigning a dedicated Change Control Manager to the process and include developing a communications plan and a high-level project plan as deliverables for that role.

3. Perform System Audits

Performing a system audit involves taking an inventory of all customizations within the environment for both client installs and servers. Identify all modifications and dig out the specifications and other relevant documentation relating to this work. Assess each non-standard implementation for upgrade risk.

Examples:

  • Ensure that third party extensions and applications – be they for clients or servers – support the release you are upgrading to. Think: Telephony software, Crossware Signature, iQ.Suite, or our very own MarvelClient, for example.
  • Verify whether you should add, change or remove previous notes.ini entries on clients and servers in e.g., Server Configuration documents and Policy documents, for example CREATE_R##_DATABASES, DPABRemoveRule, DisableAccessibility, ENABLE_ACL_FILES, ENABLE_NEW_FTLEXWORD_HANDLING and any new options available with the release you are upgrading to.

Is a feature (or something very similar) now available in the new release? Is a current customization still applicable? Is software integrated with any other systems or applications? Is a template, that will be updated during the upgrade, used in a lot of different variations (e.g., mail template or public address book)?

4. Establish Performance Benchmarks

Upgrading Notes can also help boost performance. Make sure you gather all relevant metrics for pre-upgrade/post-upgrade benchmarking analysis. Make sure that you update your virus scanner exclusions from IBM (or even Lotus) paths to HCL. Don’t forget to update workspace optimizations, especially on Citrix.

And be prepared to answer typical questions such as: Has the client startup time (boot-up and sign-in performance) improved? And if not, does the performance degradation apply company-wide or only to specific departments or regions?

5. Determine Your Needs (especially in Citrix environments)

Based on your system audit, do you need to re-develop customizations and integrations or upgrade specific plugins? Can you upgrade to the latest version of the software from your current version or do you need to upgrade to an intermediate version first?

Check the technical specifications of the new Notes version — do you need to upgrade, install, or purchase anything as part of the upgrade? Do you also need to upgrade your theme/design/specifications, or will it work on the upgraded version?

Do you have to upgrade Notes in a Virtual Desktop Infrastructure (VDI) like Citrix? Remember that on Citrix, optimal performance and stability requires special configuration.

6. Create and Maintain an Upgrade Plan

Depending on your findings from above steps, you have built a list of all specifics now. Your next question and task is: Who will perform the upgrade and what needs to be upgraded in what order. Usually, after ensuring that all above dependencies have been clarified and solved, it is recommended to upgrade servers first, and clients second.
Further important questions for your upgrade are: How will the upgrade be performed? Is there any guidance on the upgrade from the software supplier? What time, people, resources, and budget do you need to apply to the upgrade process?

Even the best plan meets reality at some point. The better you did your audits, and your requirements planning, the less trouble you will face in this step.

7. Use a thoughtful Roll-Out Plan

Do not confuse your upgrade plan with your roll-out plan. While your upgrade plan takes care of the subject of your upgrade and all content questions, your roll-out plan is the time and way your upgrade will find its way to your end-users.
That is why it is important to determine questions such as the following before-hand:

  • When will the upgrade be performed?
  • Will there be an outage?
  • How long will it take?
  • What sort of messages needs to go out to stakeholders?
  • What is the planned implementation process?
  • What is your rollback plan?

8. Better Safe than Sorry with Backups

Store your backup somewhere safe and secure. Perform a secondary backup, and store that file somewhere else safe and secure.

This is not overcautious but considerate. You never know what environmental influences you will have to face just at the time you plan your roll-out.

And you don’t need a backup for just the upgrade – you need it in production, constantly.

9. Run a Trial Upgrade

The best way to know, whether any issues will crop up during the upgrade, is to try upgrading a copy of the live system. It will identify any code or system conflicts and spotlight where further work is required. It is important to allow plenty of time for this step and to engage with relevant stakeholders.

10. Perform All the Testing

This includes functional, non-functional, and technical testing, data integrity, security, performance, and theme/design testing including cross-client, and device testing. Vital to the testing process is a shared mechanism for capturing and tracking issues. Issues should be described in detail, have a unique identifier for tracking purposes, have a current status, and be allocated to someone until fully resolved.

It is also important to allow time for, and manage expectations around, user acceptance testing. While an upgraded system might be functional, it might not fulfill all the business requirements it was implemented to address.

11. Configure the Roll-out

With your freshly upgraded trial now deployed, tested and issues resolved, administrators will need some time to ensure any new features and functionality introduced by the updates are configured correctly. This might involve turning on or off features or updating settings to best accommodate your users.

12. Prepare Good and Clear Documentation

Preparing help files or user manuals, as well as technical documentation detailing any custom developments or deployment requirements is vital to the success of your current upgrade.

Leverage any documentation provided by the software supplier or your technology vendor and highlight the differences between versions to emphasize important changes in the new release.

13. Provide Training for Everybody

Training the right people at the right time not only requires adequate training resources but also adequate planning. Trainers and the trainees need to be available at the same time, in a suitable space.

The amount of training, the type of training, and the length of training will depend on the end-user facing functionality and feature changes within your upgraded software.

14. Prepare Your Infrastructure

If your upgrade introduces several significant changes or you are timing the software upgrade with a re-release of the system, you will need to ensure your hosting setup will be able to cope with an increase in access and usage — if only for a short period of time.

15. Go Live

You have a few options around your go-live process including a complete switchover or running the old system and updated system in parallel for a period of time. Refer to your rollout plan to make sure everyone knows their role and responsibilities for the release.

16. Offer Support

There will probably be an initial demand on support resources after an upgrade has been released as users become acquainted with the new system.

Changes to ongoing support might be required because of new system features and functionality or changes to processes and policies. Ensure the support team has enough documentation, training, and coverage to meet demand going into the upgrade release.

17. Perform an Upgrade Review

It is important to review the upgrade project in retrospect to identify what worked well and where improvements can be made for the next time an upgrade is required.

In general it is a good idea to have these 7 tips on how to keep a healthy, stable and up-to-date Notes/Domino Environment, next to your new learnings in mind.

18. Continuously Update Your Environment

… if only for security reasons.

Finally, even if you think your upgraded Notes system is secure, you should routinely check for security bulletins and updates to protect your system from malicious attacks.

While the ongoing pandemic has forced an unprecedented number of people to work from home and forgo the security of a well-developed Notes IT infrastructure, cybercriminals have marked the unwary employees as the target of choice.

Make sure you keep your Notes environment up to date to protect against hackers, malware, DDoS attacks, and more.

Remember: Upgrades lose their sting when performed regularly.

Got Questions?

We’d love to hear from you if you find this list is helpful in planning and executing your next upgrade.

If you think something needs to be added or improved, please let us know by leaving a comment.

By sharing this list with your peers, the whole community can benefit. Just click on the share buttons below.