T37.2: Change Control with InterSystems

Knowledge Review - InterSystems CCR Technical Implementation Specialist

1. InterSystems Change Control Tools Overview

Key Points

  • Four primary tools: Perforce Helix, TrakCare Change Control (TCC), JIRA, and Change Control Record (CCR)
  • Each tool serves a distinct purpose: Source control, configuration interface, workflow tracking, and customization management
  • Tools integrate with each other: Perforce serves as the backbone connecting CCR, JIRA, and TCC
  • Customer participation: Customers engaging in InterSystems change control processes receive Perforce licenses

Detailed Notes

Overview

InterSystems employs four primary change control tools that work together to provide a comprehensive change control ecosystem. Each tool serves a specific purpose, and understanding how they complement one another is essential for anyone working with InterSystems products. The four tools are:

  • Perforce Helix -- Version Control System (VCS)
  • TrakCare Change Control (TCC) -- Configuration interface layer for TrakCare
  • JIRA -- Product change workflow tracking
  • Change Control Record (CCR) -- Site customization workflow tracking

These tools are used across all phases of the product lifecycle, from design and development through testing, implementation, and ongoing support. Together they ensure that every change to InterSystems products and customer implementations is properly tracked, versioned, and governed.

How the Tools Work Together

The integration between these tools creates a unified change control system. Perforce Helix provides the source control backbone where all versioned artifacts are stored. JIRA tracks product-level changes made by InterSystems development teams, integrating with Perforce to link workflow items to versioned code. CCR tracks site-specific customizations, also integrating with Perforce and with TCC for configuration changes. TCC provides the interface between TrakCare configuration and the file system, enabling configuration items to be versioned in Perforce alongside code changes.

This architecture ensures that every change -- whether product code, product configuration, or site customization -- is versioned, tracked, and auditable. The clear separation of concerns between the tools means that each tool can focus on its specific domain while the integrations provide end-to-end traceability across the entire change control ecosystem.

---

Documentation References

2. CCR as a Workflow Management Tool

Key Points

  • Custom-built application: Built on InterSystems own technology for tracking all customizations
  • Tracks site customizations: Manages all customizations to InterSystems products installed around the world
  • Versioning and flow: Manages versioning and flow of onsite custom code and configuration changes via integration with Perforce and TCC
  • ItemSet framework: Transports all changes performed on customer environments back to the InterSystems Perforce server
  • Multiple tiers and workflows: Supports normal and standard changes with configurable tiers adaptable to project phase

Detailed Notes

Purpose and Architecture

The Change Control Record (CCR) is a custom workflow application built on InterSystems own technology. Its primary purpose is to track all customizations to InterSystems products installed at customer sites around the world. Unlike JIRA, which tracks product-level changes internal to InterSystems, CCR focuses specifically on site-specific customizations that are unique to each customer implementation.

CCR manages the versioning and flow of onsite custom code changes through integration with Perforce and InterSystems Data Platform Source Control Hooks. It also manages the versioning and flow of onsite custom configuration changes through integration with Perforce and TrakCare Change Control (TCC). This dual capability means CCR can govern both code-level and configuration-level customizations through a single workflow tool.

Key Capabilities

CCR transports all changes performed on customer environments back to the InterSystems Perforce server using the CCR ItemSet framework. This ensures that every customization made at every customer site is centrally recorded and versioned, providing a complete audit trail that can be referenced during troubleshooting, upgrades, or audits.

CCR provides full support for both normal changes and standard changes, with multiple tiers and workflow configuration options. This makes CCR very adaptable to meet the specific needs of each phase of a project. During initial setup, the workflow may be simpler with fewer approval steps, while during production support, additional tiers and approval steps may be required to ensure maximum protection of the live system. This flexibility allows organizations to scale their change control rigor as the project matures.

CCR in the Product Lifecycle

CCR is relevant at every stage of the InterSystems product lifecycle:

  • Design: A section for "change control" is included in the standard design template for new modules, ensuring change control is considered from the earliest stages
  • Development: Teams consider change control ramifications for UI, workflow, and configuration, ensuring proper use of TCC in a way that is compatible with CCR
  • Testing: QD uses CCR-controlled environments for all manual testing of configuration changes, mirroring what users will experience in the field
  • Implementation: The ARIES process includes change control touchpoints to ensure both InterSystems and customer teams are using CCR properly
  • Support: CCR usage is required by Support Management for all sites to ensure proper protections are in place for customer systems

The underlying principle across all stages is "Respect for Change Control" -- every team member must understand and value the role that change control plays in delivering reliable, maintainable systems.

---

Documentation References

3. Perforce Helix as the Source Control Foundation

Key Points

  • Commercial VCS: A commercial version control system used to version InterSystems products and implementation projects
  • Central repository: Enterprise Perforce server located in Cambridge, MA serves as the single source of truth
  • Customer licensing: Customers engaging in InterSystems change control processes receive Perforce licenses
  • Integration point: Serves as the version control backbone connecting CCR, JIRA, and TCC

Detailed Notes

Role of Perforce Helix

Perforce Helix is the commercial Version Control System (VCS) that serves as the backbone of the InterSystems change control ecosystem. It versions both InterSystems products and customer implementation projects, providing a single centralized repository for all code and configuration artifacts. The enterprise Perforce server is located at InterSystems headquarters in Cambridge, Massachusetts, and all customer site customizations are transported back to this central server through the CCR ItemSet framework.

Perforce serves as the single source of truth for all versioned artifacts across the InterSystems ecosystem. Whether a change originates from product development tracked through JIRA or from a site-specific customization tracked through CCR, the underlying code and configuration artifacts ultimately reside in Perforce. This centralization is what enables the powerful automation capabilities of the change control system, including automated deployment, automated rollback, and full historical traceability.

Customer Access and Licensing

Customers who engage in InterSystems change control processes receive Perforce licenses, enabling them to participate directly in the version control workflow. This is a critical aspect of the InterSystems change control model: by giving customers access to the same version control infrastructure, InterSystems ensures that all changes, whether made by InterSystems staff or customer teams, are captured in the same system and subject to the same governance processes.

The Perforce integration with InterSystems Data Platform Source Control Hooks enables developers to check code in and out of Perforce directly from the InterSystems development environment. This tight integration removes friction from the development workflow, making it natural for developers to use source control as part of their daily work rather than treating it as a separate, burdensome step.

JIRA and TCC Integration with Perforce

JIRA, the commercial workflow application used by InterSystems, tracks all HealthShare and TrakCare product changes. It is internal to the InterSystems network and not customer accessible. JIRA manages the versioning and flow of product code changes through integration with Perforce and InterSystems Data Platform Source Control Hooks, and manages the versioning and flow of TrakCare product configuration changes through integration with Perforce and TCC.

TCC (TrakCare Change Control) is a functional layer of TrakCare itself. It provides the interface for all configuration that is programmatically imported into or exported out of TrakCare. On the file system, TrakCare configuration is stored as XML files in a format called ElementXML. TCC is implemented within the TrakCare product and updated via patch, adhoc, and release processes. By storing configuration in ElementXML format on the file system, TCC enables these configuration items to be versioned in Perforce just like source code.

---

Documentation References

4. Change Control Across the ARIES Methodology

Key Points

  • ARIES stages: Discovery, Launch, Setup, Adoption, and Sustain define the customer engagement lifecycle
  • Launch: CCR is initialized with customer and system details; customer is introduced to change control importance
  • Setup: Change control records all changes; workflow moves from BASE-only to BASE>TEST for validation
  • Adoption: Role-specific CCR training as part of the train-the-trainer strategy
  • Sustain: BAU operational policies include CCR usage; TrakCare Support relies on change control daily

Detailed Notes

The ARIES Framework

ARIES is the InterSystems customer engagement methodology, designed to achieve an efficient, fast, and successful customer experience during the sales and delivery cycle of an enterprise solution and through to routine operational running of InterSystems products. ARIES consists of five stages: Discovery, Launch, Setup, Adoption, and Sustain. Change control is leveraged at key points within each ARIES stage, and it is critical to foster a culture of change control throughout the entire implementation project.

Change Control at Each ARIES Stage

During the Launch stage, CCR is initialized with customer and system details, and the customer is introduced to the importance of change control and CCR. This early introduction sets expectations and establishes the foundation for consistent change control usage throughout the project. Getting buy-in from the customer team at this stage is essential for long-term success.

During the Setup stage, change control should be used to record all changes being made during the implementation. The workflow evolves from a BASE-only change control workflow to a BASE>TEST workflow for validation, introducing more rigor as the implementation matures. This is the stage where CCR is first enabled for active use by both InterSystems and customer project teams. It marks the transition from planning change control to actively practicing it.

During the Adoption stage, role-specific CCR training is delivered as part of the larger ARIES train-the-trainer strategy. This ensures that every team member -- from developers to administrators to support staff -- understands their responsibilities within the change control process and can use the tools effectively in their specific role.

During the Sustain stage, business-as-usual (BAU) operational policies and procedures include CCR usage details. TrakCare Support relies on change control on a day-to-day basis to maintain system stability and to ensure proper protections are in place for customer systems. The customer's change control manager is responsible for ensuring ongoing compliance with change control policies within their organization.

Customer Responsibilities

Customers play a vital role in the success of change control. Key customer responsibilities include:

  • Creating a culture of change control within their organization
  • Understanding the importance of change control processes
  • Ensuring appropriate training on change control processes for everyone working on their systems
  • Promptly reporting any issues found within InterSystems source control hook functionality, CCR, or TCC to their support team
  • Appointing a change control manager who is empowered to ensure compliance with change control policies

It is critical that both InterSystems and customer teams share a commitment to change control throughout the entire lifecycle of the implementation, from initial setup through ongoing production support.

---

Documentation References

Exam Preparation Summary

Critical Concepts to Master:

  1. Four change control tools: Perforce Helix (VCS), TCC (TrakCare configuration interface), JIRA (product change tracking), and CCR (site customization tracking)
  2. CCR purpose: Tracks all customizations to InterSystems products installed at customer sites worldwide, built on InterSystems own technology
  3. JIRA purpose: Tracks HealthShare and TrakCare product changes, internal to InterSystems network, not customer accessible
  4. TCC purpose: Functional layer of TrakCare that provides the interface for all configuration imported into or exported out of TrakCare, using ElementXML format
  5. Perforce role: Central VCS that versions both products and implementation projects; customers receive licenses
  6. ARIES integration: CCR is initialized at Launch, actively used from Setup onward, with training at Adoption and BAU integration at Sustain
  7. CCR is first actively used at Setup stage: This is when change control begins actively recording changes in an ARIES implementation

Common Exam Scenarios:

  • Matching each change control tool (Perforce, TCC, JIRA, CCR) to its correct description or function
  • Identifying which ARIES stage CCR is first enabled for active use (Setup)
  • Determining whether a described change tracking need would be handled by JIRA (product changes) or CCR (site customizations)
  • Recognizing the role of Perforce as the version control backbone connecting all other tools
  • Identifying customer responsibilities in the change control process, particularly the role of the change control manager
  • Understanding the lifecycle stages of a change within CCR and how tiers and workflows are configured

Hands-On Practice Recommendations:

  • Create a reference table mapping each tool (Perforce, TCC, JIRA, CCR) to its purpose, users, and integration points
  • Study the ARIES stages and identify the specific change control activities that occur at each stage
  • Review how CCR ItemSets transport changes back to the central Perforce server
  • Practice distinguishing between product changes (JIRA) and site customizations (CCR) in example scenarios
  • Understand the TCC ElementXML format and how TrakCare configuration is versioned through the TCC-Perforce integration
  • Study the product lifecycle diagram and identify the role of change control at each stage (Design, Development, Testing, Implementation, Support)

Report an Issue