A scientist uses CMB modelbuilder to begin a new ACE3P simulation.
System black box
Scientist, typically with some familiarity with ParaView.
User has started modelbuilder (aka the "System").
Main Success Scenario
1. User invokes command to create a new project. System provides a list of available workflow names, and user selects ACE3P. System also provides a default directory for the project's persistent store, with an option for the User to change this directory for the new project.
Instead of selecting ACE3P from a list, a better alternative is for the User to load an ACE3P plugin one time. New projects would then automatically be set up ACE3P (unless the User loads multiple plugins for different simulation systems).
2. System responds by opening attribute panel and displaying ACE3P simulation template in it.
In the more general case, the System would first close any current project and any resources currently open.
Ideally, the System closes any open UI panels except Attributes, RenderView, and Resource.
Ideally the Attribute and Resource panels indicate that the attribute resource is modified.
3. User invokes command to load a model file into the project. System provides a file browser or equivalent, and User navigates to the file to load.
4. System responds by loading the file, displaying it in the RenderView panel, and adding it to the Resource panel.
Ideally, the system does not bring up any panel to select which reader to use, but just loads the model using what makes sense for ACE3P preprocessing (perhaps the smtk importer for mesh session?)
Ideally, the Resource panel also indicates that the model resource is modified.
5. User creates and edits attributes for the ACE3P module(s) of interest.
6. When done with attributes, or at any time during the process, User invokes command to save the project.
7. System responds by writing the relevant files to the project's persistent store, and updates its UI panels to no longer show the resources as modified.
8. User invokes command to close the project.
9. System responds by clearing the 3 panels (Attribute, RenderView, Resource)
10. User can then: (i) Close modelbuilder; (ii) At some later time, restart modelbuilder; and (iii) Invoke command to open a project.
11. System responds by first providing a way for the User to identify which project to load, then loads resources from the persistent store. When complete, the System displays the 3 panels as before (Attribute, RenderView, Resource).
Instead of automatically loading resources, it is probably better to have a "content manager" panel listing the resources in the persistent store, from which the User can chose which ones to load.
This use-case does not address the issue of using a dirctory versus single file/archive for persistent storage.