Describe what problem your feature request solves:
It is best not to change the underlying file format for Threat Dragon, so TM-BOM needs to be supported in parallel with Threat Dragon version 2.x which will remain the underlying file format
Use cases:
- I want to import a TM-BOM file into Threat Dragon, with the TM-BOM objects merged into the description of diagram components and the description + mitigation of threats. I may or may not want to export as TM-BOM in the future, but primarily I want to convert a TM-BOM file to a Threat Dragon file
- I want to export an existing Threat Dragon file to TM-BOM file format. I understand that many of the objects provided by TM-BOM format do not map to existing Threat Dragon objects so that the TM-BOM export will provide a subset of the potential TM-BOM objects
- I want to read a TM-BOM file and expect to be able to update, create and delete TM-BOM objects within Threat Dragon. I understand that the underlying model is still Threat Dragon file format but that is abstracted away from the user interface
- I want to write a TM-BOM file and expect all provided TM-BOM objects to be preserved. I expect that extensions to TM-BOM, such as placement and size of diagram components, to be preserved so that when this TM-BOM model is read back into Threat Dragon I have not lost any detail
Describe the solution you'd like:
This needs several features to be in place, split out into tasks:
- extend the existing read of TM-BOM migration service to include all objects of TM-BOM format, rename it to something like 'import'
- provide a new TM-BOM migration service to export in TM-BOM file format those objects that correspond (reasonably) 1:1, other details should be stored under the TM-BOM 'extensions'
- provide a new TM-BOM migration service to read TM-BOM and provide extended objects within Threat Dragon version 2.x models, so that the TM-BOM objects can be CRUD by new Threat Dragon dialogs and displayed on diagrams
- provide a new TM-BOM migration service to write TM-BOM files using the TM-BOM objects CRUD by Threat Dragon. Use TM-BOM 'extensions' for properties that do not correspond to TM-BOM objects such as placement and size of diagram components
Declaration:
By submitting this issue you have:
Additional context:
Consider use of cyclonedx-javascript-library as discussed below by @jkowalleck
supersedes #850
Describe what problem your feature request solves:
It is best not to change the underlying file format for Threat Dragon, so TM-BOM needs to be supported in parallel with Threat Dragon version 2.x which will remain the underlying file format
Use cases:
Describe the solution you'd like:
This needs several features to be in place, split out into tasks:
Declaration:
By submitting this issue you have:
Additional context:
Consider use of cyclonedx-javascript-library as discussed below by @jkowalleck
supersedes #850