Handling Deleted Items in DX Roundtrip Exchanges

Kemi
Kemi
  • Updated

Overview

This article explains how to manage deleted items in a DX roundtrip exchange, particularly when Project 1 (source) deletes items but Project 2 (destination) still retains them. It covers best practices for marking deletions without permanently losing data.

1. Problem: Deleted Items in Project 1 Still Exist in Project 2

Observed Behavior:

  • DX syncs two projects (Project 1 → Project 2) via conversation/roundtrip.

  • Items deleted in Project 1 still exist in Project 2.

  • A new ReqIF file does not include the deleted items, so they are not marked as deleted in Project 2.

  • DX does not automatically insert a "deleted" indicator for removed items.

Key Challenge:

  • How to ensure Project 2 reflects deletions from Project 1?

2. Solution: Use Soft Deletes Instead of Permanent Deletions

Instead of permanently deleting items in Project 1, mark them as "Removed".
✔ Create a field like "isDeleted" or a status value ("Removed") in the project schema.
During the roundtrip sync, update statuses instead of removing items.

Steps:

  1. Add a "Deleted" or "Removed" status in the status picklist.

  2. Update items in Project 1 to "Removed" instead of deleting them.

  3. Sync the updated ReqIF to Project 2.

  4. Filter out "Removed" items from active views in Project 2.

Effect:

  • Project 2 gets updated deletion status rather than missing data.

  • Users can analyze deleted items before fully removing them.

  • Eliminates confusion about whether missing data is due to deletion or a sync error.

3. Alternative: ReqIF Attribute for Deletion Tracking

ReqIF includes a ReqIF.ForeignDeleted = True attribute.
✔ In DOORS, this marks deleted items so they are still viewable but filtered from active views.
✔ However, DX does not currently insert this attribute, so it cannot be used automatically.

Impact:

  • If DOORS uses a purge function, deleted items are permanently removed and do not appear in exported ReqIF.

  • If DOORS only soft deletes, items will still exist but with ReqIF.ForeignDeleted = True.

4. Best Practices for Handling Deleted Items in DX Roundtrip Syncs

Do not delete items outright in Project 1; use a "Removed" status instead.
Ensure Project 2 filters "Removed" items to avoid confusion.
Monitor whether JCI or DX updates will support ReqIF.ForeignDeleted.
For DOORS users, be aware of differences between soft delete and purge functions.

5. Conclusion

  • DX does not automatically track deletions between synced projects.

  • Best practice is to soft delete items instead of fully removing them.

  • Using a "Removed" status ensures proper tracking in Project 2.

  • Future enhancements in DX/JCI may allow better handling of deletions.

Was this article helpful?

0 out of 0 found this helpful

Have more questions? Submit a request

Comments

0 comments

Please sign in to leave a comment.