4 About Change Management

This chapter explains the Oracle Communications Evolved Communications Application Server (OCECAS) change management features.

About Modifying the VoLTE and VoWiFI Application

You collect the control flows that define your multimedia services and SIP call behaviors into groupings called change sets. You can include any number of control flows into a change set and manage them as a unit. You use change sets to ensure that the integrity of your changes is maintained from inception through production deployment. You manage change sets using the Session Design Center UI. This tool has a one-click interface for deploying, retracting, redeploying, or removing change sets.

See "About Control Flows" for details on control flows.

About Change Sets

Essentially, change sets add version control to your multimedia services. They gather software changes into an immutable set so you can manage them as a unit. Most organizations only have their code files under version control. However, Evolved Communications Application Server allows you to manage complete components (control flows, product types) and their control logic using change sets. You manage control flows and service data with change sets.

You create change sets by copying an existing change set or branching from an existing change set. All change sets have a single parent change set, and different change sets can share the same parent. By default, every OCECAS implementation starts with these default change sets:

  • Installation - Which provides the OCECAS software binaries. This change set cannot be used as a parent.

  • VoLTE, VoWiFi, and eSRVCC - Which contains the control flows that define the default services for the VoLTE, VoWiFi, multimedia application.

Each change set can contain message control flows and application control flows. Message control flows define application behavior for a specific SIP message. The default message controls define behavior for the INVITE, OPTIONS, REGISTER, and SUBSCRIBE SIP messages. You can define your own message control flows to define the call control behaviors of the other SIP message types.

Application control flows define all other multimedia services that you define. The default application control flows provided with OCECAS are listed here. The subheadings under Session Origination and Session Termination represent supplementary services. See "About Using VoLTE Supplementary Services" for details on the supplementary services.

  • Session Deregistration

  • Session Origination

    • Ad-hoc Conferencing

    • Communication Hold Charging

    • Communication Hold

    • Originating Identity Restriction

    • Outgoing Communication Barring

    • Terminating Identity Presentation

  • Session Registration

  • Session Termination

    • Anonymous Communication Restriction

    • Communication Diversion

    • Communication Hold

    • Early Communication Diversion

    • Incoming Communication Barring

    • Originating Identity Presentation

    • Terminating Identity Restriction

  • Terminating Access Domain Selection

About Creating Change Sets

This section explains some best practices for creating and using change sets:

  • You can think of a change set as a single project. Group related changes (with a common purpose) into a single change set.

  • Err on the side of versioning components. If you can add a component to a change set, then definitely do so.

You can change the parent that a change set uses if the change set has not been deployed. However, you must manage your changes carefully. If you specify an incompatible parent. you make the change set undeployable, for example:

  • Assume change set 1 uses a ”Hello World” announcement.

  • You then create change set 2, and delete the ”Hello World” announcement.

  • You then create change set 3 using change set 1 as the parent, and it uses the ”Hello World” announcement.

  • If you modify change set 3 to use change set 2 as the parent, change set 3 fails to compile because it relies on the announcement that is no longer available.

About Deploying Change Sets

The production pipeline includes testing, staging, and production environments. You deploy the change sets from one environment to another using the Session Design Center UI.

Change sets are immutable once they are deployed. At that point they cannot be changed, only retracted.

Change sets are compiled automatically by the Session Design Center UI, and cannot be deployed with errors.

You deploy change sets in order (from testing to staging, and then to production) with a one-click action in the Session Design Center UI. You can retract deployments as needed, the same way. You first deploy (or retract) the change set parent, then deploy or retract the child.

You set a ”schedule for activation” date when deploying a change set that specifies when it becomes visible.

See ”Deploying a Change Set” in Oracle Communications Evolved Communications Application Server Operator's Guide for details on how to deploy change sets to your production pipeline.

Change sets that have not yet been deployed to an environment are displayed in the Open Projects area of the Session Design Center UI.

Figure 4-1 illustrates the process of deploying changes to your production pipeline. The pipeline shown in this figure has Testing, Staging, and Production environments. To the left of the production pipeline is a box marked Open Projects. You first create a change set as a vehicle for the changes. Once you create a change set, it is displayed in the Open Projects area of the Session Design Center. The new change set inherits all of the control flows and resources from its parent. You then any other control flows that your implementation requires.

Once a change set contains all the control flows required, you deploy it to the first environment in your production pipeline, the Testing Environment. After you verify that it behaves as you intend, deploy it to the Staging Environment, and then verify that it works as you intend there. Then you deploy the change set to the Production Environment so your subscribers can use it.

Figure 4-1 Deploying Changes to the Production Pipeline

Description of Figure 4-1 follows
Description of ''Figure 4-1 Deploying Changes to the Production Pipeline''

About Retracting Change Sets

You retract a change set by changing the state of the change set. Retracted change sets are still immutable, but you can create a new change set from a change set in an immutable state.