Open-MBEE / exec-ve

Web Client Application designed to enable users to interact with Model Based System Engineering (MBSE) models
Apache License 2.0
40 stars 25 forks source link

Using View Editor with git for source control #65

Open capsulecorplab opened 6 years ago

capsulecorplab commented 6 years ago

Hello, I understand the view editor is designed to work with MMS for source/version control, but I was wondering if it'd be possible to interface with git (albeit, with or in place of MMS) for managing changes to a model.

Apologies if this is too out of the scope of a question for ve.

dlamoris commented 6 years ago

View editor is more a document/view visualization and edit tool than a version control tool, it does allow you to look at element versions and do branching, etc, but it's all through the mms web api. If you built something that mimics that mms api but uses git underneath I can see it happening, but this is out of scope for ve.

borromeotlhs commented 6 years ago

I feel that the views to changes in a model should be able to be done akin to what MagicDraw and other clients do now (albeit terribly): viewing a log of changes to elements and who introduced them and what not, as a text only summary of changes to the model and what elements were 'touched', at least?

I know that this won't show changes to a model directly, but it will perhaps at least allow for seeing when an element within a particular view was introduced (or less trivially: who took out an element you were expecting to be there, but has now vanished, all without having to fire up the full blown sysml client). This concern makes view editor only good for seeing what others want you to see, but isn't great for those who want to simultaneously not touch or deal with the model, but are at least expecting stability and consistency.

This would also allow for view editor to enable notifications (via service workers, perhaps) so that if a view I care about changes, I can tell who changed it and remind myself to call them up to get a quick rundown. Alternatively, the commit message from teamwork cloud could be imported, thus making commits to teamwork cloud meaningful and helpful by giving them a use case outside of: "I have to do this as a courtesy to other modelers, even if there are none but me, currently working on this project" ;)