Most classes in an analysis collaboration will function perfectly well in a design collaboration. There are a few
classes that may have "special needs" because they are highly complex - either in terms of functionality or data
structuring - or because they are a part of a path or environment that has critical performance or quality of service
requirements.
A class requires special optimization when it is either complex or when it is part of a path which requires
optimization. Complexity can be structural (data structures or relationship sets) or behavioral (functional complexity
of operations or state machines). Frequently, collections of classes work together in high-bandwidth paths that require
special optimization as well.
The "special needs" classes may be optimized in terms of
-
function/method decomposition
-
data typing and structuring
-
relations to other elements
-
state machine execution
-
activity diagram execution
-
port structure
-
internal part decomposition
-
pre- and post-condition checking
-
error handling and correction
-
safety and fault tolerance
-
memory or resource usage
-
time (e.g. worst case, average case, predictability)
|