Next: 3.2 Non-Functional Behaviour
Up: 3 A Proposal: NoFun
Previous: 3 A Proposal: NoFun
NF-attributes must be declared in order to be known in components, except for asymptotic NF-attributes, which existence is inferred from the corresponding software component definition. More precisely, there are two asymptotic implicit NF-attributes, time(op ) and space(op ), for every public operation op , and another one space(t ) for every public type t . Values of asymptotic NF-attributes are given in terms of some measurement units , which represent problem domain sizes and which must also appear in NF-specification modules.
A derived NF-attribute P includes the following parts:
Last, we have defined another kind of module, system modules , to introduce NF-attributes to be know in all the components of a whole software system. System modules may also import attribute ones, meaning that all the NF-attributes defined in these attribute modules are know in all the system. Attribute modules and system modules altogether make possible to define NF-attributes in a structured and easy manner.
We present next an example of definition of NF-attributes. An attribute module for the reliability attribute may include the definition of some auxiliary NF-attributes, some of them defined in the imported attribute modules: a boolean one error_recovery , and an integer one test with valid values from 0 to 5. NF-specifications may import this module in order to have this attribute as a measure of quality.
attribute module RELIABILITY
imports ERROR_RECOVERY, TEST
attributes
boolean fully_portable
enumerated ordered reliability (none, low, medium, high) derived
depends on error_recovery, fully_portable, test
defined as
not error_recovery and not fully_portable => reliability = none
not error_recovery and fully_portable => reliability = low
error_recovery and not fully_portable => reliability = low
error_recovery and fully_portable =>
test in (0..1) => reliability = low
test in (2..3) => reliability = medium
test in (4..5) => reliability = high
end RELIABILITY
Xavier Franch