GaloisInc / CASE-AADL-Tutorial

A Tutorial for tools developed on the DARPA CASE program
BSD 3-Clause "New" or "Revised" License
5 stars 2 forks source link

BriefCASE is not included #10

Closed zutshi closed 1 year ago

zutshi commented 1 year ago

@mbeynon @mattbauer

What's the best reason we have for not including BriefCASE?

mbeynon commented 1 year ago

We can include BriefCASE. Is there a reason why we don't want to include it?

zutshi commented 1 year ago

The tutorial doesn't cover it or even mention it. I know that we have had issues running BriefCASE in the past, but we can't just say that the tool sucked. I am assuming that we had a more solid reason to not include it.

mbeynon commented 1 year ago

Ah, very useful background. Let me find out.

mbeynon commented 1 year ago

I suggest we describe it as the following. @bauer-matthews may want to tweak he text.

BriefCASE is an advanced workflow tool, designed to tightly integrate with GearCASE and DCRYPPS, consuming the results and deriving requirements that can be used to manage assurance cases. From the requirements and assurance cases, model components can be auto generated to help satisfy the assurance cases / requirements (e.g., a filter or guard). Those new model components were designed to leverage the HAMR code generator to auto generate the code that would, after some hand tuning, address the issues found by GearCASE and DCRYPPS.

The BriefCASE integration with GearCASE and DCRYPPS has not matured sufficiently, which makes it less useful for general code and models, so there are not tutorials included for it. In the meantime, manual tool workflows are recommended to find security issues, generate requirements, manage assurance cases, and to add new model components and apply code changes to remediate the findings.

bauer-matthews commented 1 year ago

We don't need to include a description of BriefCASE since we are already linking to their project page (http://loonwerks.com/projects/case.html).

bauer-matthews commented 1 year ago

Let us not include a rationale for why certain tutorials weren't included. In this case it was mostly a matter of timing in that the tools changed their APIs and broke the BriefCASE integration during the window in which the tutorials were being developed.

zutshi commented 1 year ago

Hmm....I feel if we have a reason, we should state that. I would at least want to mention that the BriefCASE tool is not included. How about the below?

"At the time of writing BriefCASE was undergoing intensive development and had not yet reached a stable state, and a decision was made not to include BriefCASE in the book."

bauer-matthews commented 1 year ago

Hmm....I feel if we have a reason, we should state that. I would at least want to mention that the BriefCASE tool is not included. How about the below?

"At the time of writing BriefCASE was undergoing intensive development and had not yet reached a stable state, and a decision was made not to include BriefCASE in the book."

I'm fine with that wording.