Issue 17872: Reword isComputable (uml25-ftf) Source: Nomos Software (Dr. Edward Willink, ed(at)willink.me.uk) Nature: Clarification Severity: Summary: This is woolly just redirecting to 'can be computed'. Suggest: A ValueSpecification can be computed when all the algorithms, resources and values required to perform a computation are available. So a ValueSpecification would not be computable if an operation without a body was invoked, an off-line processor is required, or a source value is required. isComputable() is intended to be a static determination of capability, so a computation failure such as divide-by-zero or an I/O failure would not prevent isComputable() returning true, rather they would cause a query such as realValue() to return no value. ?? if a computation needs a currently locked resource, is it computable? Probably yes, since if the computation waits patiently the result will appear ?? ?? Should be three-valued... True => a computation now will run False => a computation now will abort Null => a computation now might abort Resolution: Revised Text: Actions taken: September 26, 2012: received issue Discussion: End of Annotations:===== s is issue # 17872 Problem: 8.066 Severity: ? Type: Clarification Location: 8.6 p 100 isComputable() Title: Reword isComputable Discussion: This is woolly just redirecting to 'can be computed'. Suggest: A ValueSpecification can be computed when all the algorithms, resources and values required to perform a computation are available. So a ValueSpecification would not be computable if an operation without a body was invoked, an off-line processor is required, or a source value is required. isComputable() is intended to be a static determination of capability, so a computation failure such as divide-by-zero or an I/O failure would not prevent isComputable() returning true, rather they would cause a query such as realValue() to return no value. ?? if a computation needs a currently locked resource, is it computable? Probably yes, since if the computation waits patiently the result will appear ?? ?? Should be three-valued... True => a computation now will run False => a computation now will abort Null => a computation now might abort Source: Edward Willink