Let me provide a comprehensive overview of our automated baseline sync implementation:
OSLC Automation Architecture
We built a middleware service that acts as an OSLC broker between ELM test management and our MBSE platform. The architecture has three main components:
- Event Listener Service: Subscribes to ELM baseline delivery notifications using OSLC change events
- Conflict Resolution Engine: Applies rules to merge divergent baselines
- Audit Service: Logs all operations for compliance reporting
For ELM integration, we use the OSLC Query API to detect baseline changes:
GET /qm/oslc_qm/contexts/{project}/baselines
Accept: application/json
OSLC-Core-Version: 2.0
When a baseline event occurs, we fetch the change set and compare with the MBSE tool’s current baseline state.
Baseline Delivery Workflow
The sync process follows this sequence:
- Detect baseline creation/update event in either system
- Retrieve full baseline metadata including test case versions and requirement links
- Query corresponding baseline in the other system
- Identify differences using content hash comparison
- Apply conflict resolution rules
- Create merged baseline in both systems
- Update traceability links
- Generate audit record
Conflict Resolution Strategy
Our rules prioritize based on artifact type:
- Requirement traceability: MBSE system is source of truth
- Test case content: ELM is authoritative
- Metadata (status, owner, dates): Most recent timestamp wins
- Custom attributes: Flagged for manual review
For complex conflicts, we create a “conflict baseline” that preserves both versions and notifies the responsible team. This happens in about 8% of syncs, down from 100% manual review before automation.
Audit Trail Implementation
Every sync operation generates a compliance record:
- Timestamp and triggering event
- Source and target baseline IDs
- List of synchronized artifacts with version numbers
- Conflict resolution decisions applied
- Validation status (auto-approved or requires manual review)
- Digital signature of the sync operation
These records are stored in a separate compliance database and can generate reports for audits. We export monthly compliance summaries showing all baseline changes, sync operations, and any manual interventions.
MBSE Integration Challenges
The MBSE integration was indeed the hardest part. Our MBSE tool doesn’t natively support OSLC, so we built a custom adapter that:
- Translates MBSE model versions to OSLC baseline concepts
- Maps system requirements to ELM test case traceability links
- Exposes an OSLC provider interface for the broker to consume
We designed the adapter using a plugin architecture, so it can theoretically support multiple MBSE tools. However, each tool requires specific mapping logic. The adapter is about 60% generic OSLC handling and 40% tool-specific translation.
Quantified Benefits
Before automation:
- 18 hours per sprint manually comparing baselines
- 12-15 baseline mismatch incidents per quarter
- 3-day average lag between ELM and MBSE baseline updates
After automation:
- 6 hours per sprint (only for the 8% requiring manual review)
- Zero mismatch incidents in 6 months
- Real-time baseline synchronization (avg 3 minutes)
- 65% reduction in manual effort
- Improved test coverage traceability from 78% to 96%
Implementation Recommendations
If you’re considering similar automation:
- Start with read-only sync to validate your OSLC queries work correctly
- Build comprehensive logging before attempting write operations
- Test conflict resolution rules with historical baseline data
- Implement a “dry-run” mode that shows what would be synced without making changes
- Plan for about 3-4 weeks of development plus 2 weeks of validation testing
The investment was significant but paid off within two sprints. The key success factor was getting buy-in from both test management and systems engineering teams on the conflict resolution rules before building the automation.