Feature Theory |
Progress |
The current work on feature theory that I have discovered focuses on feature isolation
and understanding. The foundation of what a feature is is left to various
interpretations. The work that I am pursuing is the nature of features. Once isolated,
the charactistics and properties can be defined. Foundationally, during execution,
programs are represented as a directed tree graph. There appear to be three different
types of features:
|
|
Vertical Features - Defined as "what the program does,"
the vertical path from the "top" to the "bottom" of the program execution tree. This
path could be considered a use-case. See the circled paths in graphic, above.
|
Super-Vertical Features - The vertical feature often has compatible
or interconnected external vertical features. Super-vertical features are a set of feature
graphs with advice to weave them in.
|
|
Horizontal Features - Defined as "what the program has,"
the interfaces that show the physical or virtual characteristics. Some examples are
include knobs, windows, algorithm engines, etc. See boxed-in sections in graphic, above.
Please note that a horizontal cut may be along device boundaries or even significant
algorithmic sections.
|
Super-Horizontal Features - Horizontal features can be clustered
into a loose bag of tools, or they can grouped into an integrated component. Super-horizontal
features as components require advice to weave them in.
|
|
| Tree-Balanced Features - Defined as "how the program looks
to the CPU," the slice through the program that equally divides the program. There
might be data shared between the slices. See the cut-point in the diagram, above; note that
a balanced cut may not be actually balanced in terms of tree weight, but the an attempt is
made to keep like-sections together. |
| Here is a
matrix that breaks down the types of features and gives examples. |
|
| Copyright © 2001-2006 Intelligent Algorithmic Solutions and Sean Walton |
eMail |