Skip to main content

Executables

An Executable is a custom-developed program (typically Java, .NET, or script-based) that integrates with the Actimize platform to perform specialized functions that aren't available in the standard product offerings.

Types of Executables:

  1. Data Transformation Executables

    • Custom data parsing and formatting
    • Complex data enrichment logic
    • External system integrations
  2. Decision Engine Executables

    • Custom scoring algorithms
    • Complex business rule implementations
    • Third-party API integrations
  3. Alert Processing Executables

    • Custom alert routing logic
    • Specialized notification mechanisms
    • Integration with external case management systems
  4. Reporting Executables

    • Custom report generation
    • Data export to external systems
    • Regulatory reporting formats

Where to Place Executables in NICE Actimize Architecture:

1. Pre-Processing Layer (Data Ingestion)

External Data → [Executable] → UDM → AIS Processing

Common Use Cases:

  • Data Format Conversion: Converting proprietary formats to UDM-compliant structure
  • Data Validation: Custom validation rules beyond standard checks
  • Data Enrichment: Adding external data sources (credit scores, device fingerprinting)

Example Placement:

ETL Process → Custom Data Parser Executable → Actimize Data Lake

2. Scenario Processing Layer (Decision Engine)

Transaction Data → Scenario Engine → [Executable] → Decision Output

Common Use Cases:

  • Custom Scoring Models: Machine learning models not available in standard platform
  • External API Calls: Real-time calls to fraud databases, watchlists
  • Complex Business Logic: Multi-step decision trees

Example Placement:

IFM Scenario → Custom ML Model Executable → Risk Score Enhancement

3. Post-Processing Layer (Alert/Case Management)

Alert Generation → [Executable] → External Systems/Notifications

Common Use Cases:

  • Custom Alert Routing: Specialized assignment logic
  • External Integrations: CRM systems, ticketing systems
  • Regulatory Reporting: Custom SAR generation

Example Placement:

Case Management → Custom Export Executable → External Compliance System

4. Batch Processing Layer (Offline Analytics)

Historical Data → [Executable] → Analytics/Reports → Decision Makers

Common Use Cases:

  • Model Training: Custom ML model development
  • Performance Analytics: Custom KPI calculations
  • Data Mining: Pattern discovery and analysis

Technical Implementation Locations:

1. AIS (Actimize Intelligence Server) Integration

Configuration Path: AIS Admin → External Programs → Executable Registration

Registration Details:

  • Executable name and description
  • Input/output parameters
  • Execution timeout settings
  • Error handling preferences

2. Scenario Designer Integration

Configuration Path: Scenario Designer → Actions → External Executable

Integration Points:

  • Pre-scenario execution
  • Post-scenario execution
  • Custom action within scenario logic

3. ETL Pipeline Integration

Configuration Path: ETL Configuration → Custom Steps → Executable Call

Pipeline Stages:

  • Data extraction phase
  • Data transformation phase
  • Data loading phase

4. Case Management Integration

Configuration Path: Case Management → Workflow → Custom Actions

Workflow Points:

  • Case creation triggers
  • Investigation step automation
  • Case closure procedures

Real-Life Example Implementation:

Scenario: Custom Device Risk Scoring Executable

Business Need: Bank wants to integrate proprietary device fingerprinting technology not available in standard Actimize offerings.

Implementation:

Step 1: Develop the Executable

// Java-based executable
public class DeviceRiskScorer {
public static void main(String[] args) {
// Input: Device fingerprint data
String deviceId = args[0];
String ipAddress = args[1];

// Call external service
int riskScore = externalDeviceAPI.getRiskScore(deviceId, ipAddress);

// Output: Risk score for Actimize
System.out.println("DEVICE_RISK_SCORE=" + riskScore);
}
}

Step 2: Register in AIS

AIS Admin Console → External Programs → Add New Executable
- Name: DeviceRiskScorer
- Path: /opt/actimize/executables/DeviceRiskScorer.jar
- Input Parameters: DEVICE_ID, IP_ADDRESS
- Output Format: DEVICE_RISK_SCORE=\<value>
- Timeout: 2000ms

Step 3: Integrate in Scenario

Scenario Designer → New Scenario → "Enhanced Device Scoring"
- Trigger: Real-time transaction processing
- Condition: Transaction channel = "Online" OR "Mobile"
- Action: Execute DeviceRiskScorer
- Use Output: Add DEVICE_RISK_SCORE to overall risk calculation

Step 4: Configure Data Flow

Data Flow: Transaction → Extract Device Data → Call Executable →
Receive Risk Score → Continue Scenario Processing

Best Practices for Executable Placement:

1. Performance Considerations

  • Real-time flows: Keep executables lightweight (<500ms execution time)
  • Batch processes: More complex logic acceptable
  • Asynchronous calls: For non-critical enhancements

2. Error Handling

  • Timeout settings: Prevent system blocking
  • Fallback logic: Default behavior if executable fails
  • Logging: Comprehensive error tracking

3. Security

  • Input validation: Sanitize all inputs to executables
  • Access controls: Limit executable permissions
  • Audit trails: Log all executable executions

4. Monitoring

  • Performance metrics: Track execution times
  • Success rates: Monitor failure patterns
  • Resource usage: CPU/memory consumption

Common Placement Patterns:

Use CasePlacement LayerTimingExample
Data EnrichmentPre-ProcessingBatch/Real-timeCredit score lookup
Custom ScoringScenario EngineReal-timeML model execution
Alert RoutingPost-ProcessingReal-timeCustom notification
ReportingBatch ProcessingScheduledRegulatory reports

Executables provide powerful extensibility to NICE Actimize platforms, allowing organizations to customize the system beyond standard capabilities while maintaining integration with core platform features.