Implementation
To achieve success in the operate and optimize phases of the lifecycle, it is necessary to have a successful implementation as this is the phase in which the foundation is laid. A misconfigured or badly performed software installation will continually cause problems later in the platform's lifecycle.
Server Builds
Before commencing with an installation of the UCCE application, it is worth ensuring that the underlying Microsoft Windows and third-party applications are installed correctly. All the server components for a UCCE solution must be compliant with the bill of materials document for the software version being deployed. The following list comprises the key items that should be checked:
- MS Windows version and correct service pack
- MS SQL Server version and correct service pack
- MS SQL Server binary sort order, Named Pipes enabled, and the correct client protocol order (1st Shared Memory, 2nd Named Pipes, 3rd TCP/IP)
- Network cards configured with the correct IP addresses and binding order
- Static routes defined on the servers to route private UCCE traffic out of the correct NICs
- Additional Windows components installed (SNMP, WMI Windows Installer Provider)
- Cisco third-party tools
Software Installation
UCCE versions prior to version 8.0 were installed and configured from a single setup.exe application from the installation media. The version 7.x installer would leave behind a version of the installer called icmsetup.exe in the c:\icm\bin directory so that this version of the installer could be run for future configuration changes or the addition/removal of other components.
With UCCE version 8.x, the UCCE software is still installed from a setup.exe application; however, the configuration of the UCCE nodes is now performed through a web-based setup process, making the installation and configuration a two-step process.
Not all the UCCE components currently use the new web setup. The ones that do are as follows:
- Loggers
- Routers (including NICs and network gateways for hosted or carrier-connected deployments)
- Administration and data servers
- Administration client
- WebView
The following components do not use the new web setup:
- Peripheral gateway
- CTI server
- CTI OS server
Figure 6-8 shows an example of configuration using the new web installer, whereas Figure 6-9 shows the installation/configuration of a PG, which in version 8.0 uses the traditional method.
Figure 6-8 New Web-Based Installer
Figure 6-9 Old-Style Installer Still Used for the PGs in UCCE 8.0
Installation Order
Chapter 11, "Nodes and Processes," examines all the different processes that run on a UCCE server, and you can observe a preferred startup order to minimize the number of errors observed. A similar order also exists when performing an initial installation.
Installing UCCE Logger A
The steps for installing UCCE Logger A are as follows:
- Step 1. Run setup.exe and install the Logger A node. The setup.exe installer performs a base installation of the UCCE application onto the server. The installer checks for third-party applications such as SQL Server and prompts the engineer if they are missing or configured incorrectly. Include a maintenance release if required.
- Step 2. Run DomainManager.exe on Logger A. This creates the customer instance credentials that all the subsequent installers will use. Within DomainManager, you should also allocate Windows user accounts to the Configuration, Setup, and WebView (if required) groups.
- Step 3. Run ICMDBA.exe on Logger A. Use ICMDBA to create the Logger Data and Log databases. These need to be sized correctly based on the required retention periods set in the purge cycles and the expected contact center size (agents, skill groups, and call volumes).
- Step 4. Connect to the Web Setup page and configure Logger A. Work through the configuration pages, entering the correct values that have been previously documented in the installation spreadsheets.
- Step 5. Start the Logger A service. Start the service using ICM Service Control, and observe that each process starts correctly. The csfs process will complain that it is "Waiting for Link Enable," and the histlogger will be waiting for Message Delivery Service (MDS) messages. This is normal and nothing to be concerned about.
Installing UCCE Router A
The steps for installing UCCE Router A are as follows:
- Step 1. Run setup.exe and install the Router A node. The setup.exe installer performs a base installation of the UCCE application onto the server. Include a maintenance release if required.
- Step 2. Connect to the Web Setup page and configure Router A. Work through the configuration pages, entering the correct values that have been previously documented in the installation spreadsheets.
- Step 3. Start the Router A service. Start the service using ICM Service Control, and observe that each process starts correctly. The router will not go active because it cannot see any PGs. MDS will also complain that Synchronizer operation is suspended as it cannot see the Side B router.
Figure 6-10 Autoreboot Warning Message
Installing UCCE Peripheral Gateway 1A
The steps for installing UCCE peripheral gateway 1A are as follows:
- Step 1. Browse to the Unified CM server to obtain JTAPI. Download the JTAPI client from the Unified CM server and run the installation process on the PG.
Step 2. Run setup.exe and install the PG1A node. The setup.exe installer performs the entire PG installation because web setup is not currently enabled for PGs.
Work through the configuration pages, entering the correct values that have been previously documented in the installation spreadsheets. To configure the Peripheral Interface Manager (PIM), you need to specify physical and logical controller IDs. These are integer values that are defined only when a PG is created in PG Explorer. The PG Explorer tool is not available until the administration workstation is configured. Many engineers specify dummy values at this point and then later return to setup after they have created the PG in PG Explorer. However, because this is the first PG, you could enter the value 5000 for both the physical and logical controller IDs because these are the default values created by PG Explorer. But be aware: How you configure subsequent peripherals determines which values are used. It is recommended that you double-check these values after you have used PG Explorer!
- Step 3. Run setup.exe and install the CG1A node. During the installation of the CTI Server, make a note of the client connection port number. This number will be required when configuring the CTI OS Server.
- Step 4. Start the PG1A service. Start the service using ICM Service Control, and observe that each process starts correctly. Observe that the PG connects to the central controller (Side A only). Error messages might appear in the process windows to say that the PG is not defined.
- Step 5. Run setup.exe and install the CTI OS 1 Server. This is a different setup.exe than the PG/CTI Server. As with the PG, for the CTI OS installation, you need to enter the peripheral ID of the Unified CM server. If you are not confident of what the ID is going to be, you should not perform this step until after you have installed the AW and created the PG with PG Explorer.
Installing UCCE AW HDS 1
The steps for installing UCCE AW HDS 1 are as follows:
- Step 1. Run setup.exe and install the AW Distributor node. The setup.exe installer performs a base installation of the UCCE application onto the server. Include a maintenance release if required.
- Step 2. Run ICMDBA.exe on AW HDS1. Use ICMDBA to create the HDS Data and Log databases. These need to be sized correctly based on the required retention periods set in the purge cycles and the expected contact center size. My preference during setup is to perform the full install of an AW and HDS; however, the minimum requirement is only for an AW so that the PG can be configured.
- Step 3. Connect to the Web Setup page and configure the AW. Work through the configuration pages, entering the correct values that have been previously documented in the installation spreadsheets.
- Step 4. Start the AW Distributor service. Start the service using ICM Service Control, and observe that each process starts correctly. Observe the UpdateAW process to see whether the Waiting for New Work prompt appears. At this point in the installation process, you can perform the basic configuration of the PGs. Before you configure a PG, however, you must also create a default agent desk setting because this is a required option for the Unified CM PG!
- Step 5. Validate the system. After the PG has been configured, check the PG and router processes. If the PGUser username and password are correct, the PG should be connected to the Unified CM server and its PIM and JTAPI processes should be ACTIVE. The CTI and CTI OS server processes should also be ACTIVE. The router MDS process should be In Service.
Installing UCCE Logger B
The steps for installing UCCE Logger B are as follows:
- Step 1. Run setup.exe and install the Logger B node. The setup.exe installer performs a base installation of the UCCE application onto the server. The installer checks for third-party applications such as SQL Server and prompts the engineer if they are missing or configured incorrectly. Include a maintenance release if required.
- Step 2. Run ICMDBA.exe on Logger B. Use ICMDBA to create the Logger Data and Log databases. These need to be sized correctly based on the required retention periods set in the purge cycles and the expected contact center size (agents, skill groups, and call volumes).
- Step 3. Connect to the Web Setup page and configure Logger B. Work through the configuration pages, entering the correct values that have been previously documented in the installation spreadsheets.
- Step 4. Start the Logger B service. Start the service using ICM Service Control, and observe that each process starts correctly. The csfs process will complain that it is Waiting for Link Enable, and the histlogger will be waiting for MDS messages. This is normal and nothing to be concerned about.
Installing UCCE Router B
The steps for installing UCCE Router B are as follows:
- Step 1. Run setup.exe and install the Router B node. The setup.exe installer performs a base installation of the UCCE application onto the server. Include a maintenance release if required.
- Step 2. Connect to the Web Setup page and configure Router B. Work through the configuration pages, entering the correct values that have been previously documented in the installation spreadsheets.
- Step 3. Start the Router B service. Start the service using ICM Service Control, and observe that each process starts correctly. Routers A and B should now perform a state transfer and start running in duplex operation.
Installing UCCE Peripheral Gateway 1B
The steps for installing UCCE peripheral gateway 1B are as follows:
- Step 1. Browse to the Unified CM server to obtain JTAPI. Download the JTAPI client from the Unified CM server and run the installation process on the PG.
- Step 2. Run setup.exe and install the PG1B node. The setup.exe installer performs the entire PG installation as web setup is not currently enabled for PGs. Work through the configuration pages, entering the correct values that have been previously documented in the installation spreadsheets.
- Step 3. Run setup.exe and install the CG1B node. During installation of the CTI Server, make a note of the client connection port number. This number will be required when configuring the CTI OS Server; this number will also be different than the port number obtained for CTI Server A.
- Step 4. Start the PG1B service. Start the service using ICM Service Control, and observe that each process starts correctly. Observe that the PG connects to the central controller.
- Step 5. Run setup.exe and install the CTI OS 1 Server. This is a different setup.exe than the PG/CTI Server. Work through the configuration pages, entering the correct values that have been previously documented in the installation spreadsheets.
Installing UCCE AW HDS 2
The steps for installing UCCE AW HDS 2 are as follows:
- Step 1. Run setup.exe and install the AW Distributor node. The setup.exe installer performs a base installation of the UCCE application onto the server. Include a maintenance release if required.
- Step 2. Run ICMDBA.exe on AW HDS2. Use ICMDBA to create the HDS Data and Log databases. These need to be sized correctly based on the required retention periods set in the purge cycles and the expected contact center size.
- Step 3. Connect to the Web Setup page and configure the AW. Work through the configuration pages, entering the correct values that have been previously documented in the installation spreadsheets.
- Step 4. Start the AW Distributor service. Start the service using ICM Service Control, and observe that each process starts correctly. Observe the UpdateAW process to see whether the Waiting for New Work prompt appears.
After the final AW HDS has been installed, the remaining components can be installed in almost any order. I prefer to get the remaining PGs configured and then move on to installing the base software for the IVRs, followed by the Cisco Agent Desktop servers.
Implementation Testing
The primary goal of UCCE implementation testing is to uncover problems with the application or its configuration that have occurred during the initial installation. Testing an entire UCCE solution can be complex because of the amount of customization that takes place with the call routing and reporting. Fortunately, testing the core installation is more focused on ensuring that the platform has been installed correctly and provides the required fault tolerance during failure scenarios.
Software testing is a formal engineering process that should be completed by an engineer who did not perform the installation. During testing, the test engineer works through a test specification composed of multiple prioritized test cases. Each test case details a series of scenarios or parameters. The results of the test case, as defined in the list that follows, are documented in the test results document:
- Pass: The test case was executed per the test specification, and the result matched the expected result.
- Fail: The test case was executed per the test specification, and the result did not match the expected result.
- Not run: The test case was not executed. The reason should be documented.
- Descoped: The test case was not executed because the feature or function that it tests is unavailable and will not be available during the test period.
Prior to performing the testing, the test manager receives direction from the project manager and the end customer on what is an acceptable testing exit criteria. In an ideal world, you might expect a 100 percent pass rate; however, this is unusual for a large, complex software deployment. A typical customer might require that 100 percent of the priority 1 and 2 tests pass successfully and require at least an 80 percent pass rate for the priority 3 and 4 test cases. Other customers might request an overall 75 percent pass rate, with a documented action plan to resolve the remaining priority 1 and 2 issues before going live.
The test cases that will be created to test the core UCCE application installation comprise only a small subset of the overall UCCE solution test specification. Testing for the overall UCCE solution would need to cover all the routing, reporting, agent desktop, Unified CM, IVR, and third-party platforms. Comprehensive testing, even for a modestly sized deployment, can require a considerable effort and usually requires a dedicated testing team. However, performing a proper systems test is crucial to give the customer confidence that its solution is fit for purpose.
As previously mentioned, the focus for testing of the core UCCE application installation is to ensure that the software components have been configured correctly and that the nodes/processes fail over correctly should a problem occur. The areas under test can be summarized as follows:
- Configuration checking
- Router process redundancy
- Logger synchronization
- AW synchronization
- Peripheral connectivity
- PG process redundancy
- CTI Server process redundancy
- CTI OS Server process redundancy
- Router public network failure
- Router private network failure
- PG public network failure
- PG private network failure
- Individual server failures
Table 6-4 gives an example test case for testing PG redundancy.
Table 6-4. Example Test Case for Testing PG Redundancy
Test Case ID |
UCCE-CORE-PGR001 |
Test Engineer |
B. Smith |
Date |
21st March 2011 |
Test Result |
Pass |
Test Category |
UCCE Core Installation |
||
Test Title |
Failover of Active Unified CM PM to Idle PG |
||
Test Purpose |
To ensure that the duplex PG pair are in communication so that should the active PG fail, the idle PG will resume control |
||
Prerequisites |
IP communication exists between both PGs and the Unified CM subscribers.
|
||
Procedure |
Establish a remote control session to both PG1A and PG1B.
|
||
Notes |