Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a property to quality attributes to indicate if it is a NFR or FR, by default I suggest treating them as NFR (this is not backwards compatible but IMO it makes more sense) #10

Closed
Rezenders opened this issue Nov 29, 2022 · 7 comments

Comments

@Rezenders
Copy link
Contributor

Rezenders commented Nov 29, 2022

Add a property to quality attributes to indicate if it is a NFR or FR, by default I suggest treating them as NFR (this is not backwards compatible but IMO it makes more sense)
Related to: meta-control/mc_mros_reasoner#141

@Rezenders
Copy link
Contributor Author

Done at e39a043

@Rezenders
Copy link
Contributor Author

This change is not necessary. I reverted it.
598f746

@Rezenders Rezenders reopened this Aug 25, 2023
@Rezenders
Copy link
Contributor Author

I am re-opening this issue.
This was reverted before because in the current version of TOMASys/Metacontrol we need to write a SWRL rule for each QA type we use. And when writing the rules we need to either set the objective status to be IN_ERROR_FR or IN_ERROR_NFR (see meta-control/mc_mros_reasoner#141), thus this was unnecessary.

I suggest adding a qa_critical property to QualittyAttributeType to indicate whether it is a functional (critical) or non-functional QA.

With this we have the possibility to have more general rules.

Related to #9, and meta-control/mc_mros_reasoner#141.

Example:

tomasys:Objective(?o) ^ tomasys:QAvalue(?nfr) ^ tomasys:QAvalue(?qa) ^ tomasys:hasNFR(?o, ?nfr) ^ tomasys:FunctionGrounding(?fg) ^ tomasys:solvesO(?fg, ?o) ^ tomasys:hasQAvalue(?fg, ?qa) ^ tomasys:isQAtype(?qa, mros:safety) ^ tomasys:isQAtype(?nfr, mros:safety) ^ tomasys:hasValue(?nfr, ?nfrv) ^ tomasys:hasValue(?qa, ?qav) ^ swrlb:greaterThan(?qav, ?nfrv) -> tomasys:o_status(?o, "IN_ERROR_FR")

@Rezenders
Copy link
Contributor Author

I think we can change the status names IN_ERROR_FR and IN_ERROR_NFR to IN_ERROR, and add an extra rule that check the qa_critical property and decide to add it to fd_error_log or not

@Rezenders Rezenders transferred this issue from meta-control/mc_mros_reasoner Aug 25, 2023
@Rezenders
Copy link
Contributor Author

Rezenders commented Aug 25, 2023

Done at: 7eba2b2
I added the qa_critical property, with a Boolean range.

@Rezenders
Copy link
Contributor Author

FYI @chcorbato

@chcorbato
Copy link
Contributor

This needs to be analyzed in detail considering engineering practices and terminology, and analyzed from a modeling perspective in your KB papers 😊

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants