Limit hierarchy depth
From CSSEMediaWiki
(Difference between revisions)
(New page: Riel's Heuristic #5.5: [[Limit hierarchy depth|In practice, inheritance hierarchies should be no deeper than an average person can keep in his or her short-term memory. A popular value for...) |
m |
||
Line 1: | Line 1: | ||
− | + | :''In practice, inheritance hierarchies should be no deeper than an average person can keep in their short term memory. A popular value for this depth is six.'' --Riel's Heuristic 5.5, [[Arthur Riel 1996]] | |
==Description== | ==Description== | ||
− | + | This heuristic suggests that inheritance hierarchies should be be no deeper than 6 levels. This heuristic is based on empirical studies with real world design problems. It was found that the designers with the most difficulty navigating their class hierarchies were those with hierarchies of 12 to 17 levels in depth. Upon redesigning the hierarchies to use five to seven levels, the task of navigation was purportedly easier. | |
==A Proviso== | ==A Proviso== | ||
− | There is a proviso on the depth of six, and that is that the designers do not have class hierarchy visualisation tools available. The designers suggested that, with access to tools that aid in class hierarchy visualisation, working with deep hierarchies would become easier | + | There is a proviso on the depth of six, and that is that the designers do not have class hierarchy visualisation tools available. The designers suggested that, with access to tools that aid in class hierarchy visualisation, working with deep hierarchies would become easier (see [[Favour deep hierarchies]]). |
==See Also== | ==See Also== | ||
*[[Class hierarchies should be deep and narrow]] | *[[Class hierarchies should be deep and narrow]] | ||
− | *[[Favour deep hierarchies | + | *[[Favour deep hierarchies]] |
− | + | ||
*[[Design maxims]] | *[[Design maxims]] | ||
+ | |||
+ | [[Category:Riel's heuristics]] |
Latest revision as of 00:05, 21 July 2009
- In practice, inheritance hierarchies should be no deeper than an average person can keep in their short term memory. A popular value for this depth is six. --Riel's Heuristic 5.5, Arthur Riel 1996
Description
This heuristic suggests that inheritance hierarchies should be be no deeper than 6 levels. This heuristic is based on empirical studies with real world design problems. It was found that the designers with the most difficulty navigating their class hierarchies were those with hierarchies of 12 to 17 levels in depth. Upon redesigning the hierarchies to use five to seven levels, the task of navigation was purportedly easier.
A Proviso
There is a proviso on the depth of six, and that is that the designers do not have class hierarchy visualisation tools available. The designers suggested that, with access to tools that aid in class hierarchy visualisation, working with deep hierarchies would become easier (see Favour deep hierarchies).