protected:template
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
protected:template [2009/05/08 17:29] – mark | protected:template [2009/05/08 17:36] (current) – mark | ||
---|---|---|---|
Line 22: | Line 22: | ||
====== Clustering Objectives ====== | ====== Clustering Objectives ====== | ||
+ | A description of the ideal output | ||
+ | of the software clustering algorithm. Based on experience or heuristics, | ||
+ | the designer of the algorithm decides what a meaningful decomposition of | ||
+ | a software system should look like. For example, a software decomposition with maximum cohesion and minimum coupling. | ||
+ | |||
====== Process Description ====== | ====== Process Description ====== | ||
+ | A brief description of the main idea | ||
+ | behind the algorithm' | ||
+ | clusters by detecting established subsystem patterns in the given | ||
+ | software system. Software entities that are not clustered this way are | ||
+ | assigned to the subsystem that depends the most on them". | ||
+ | |||
====== Decomposition Properties ====== | ====== Decomposition Properties ====== | ||
+ | A description of the properties | ||
+ | of the decompositions that the software clustering algorithm creates. | ||
+ | These properties are either a direct result of the clustering objective | ||
+ | (e.g. Bunch creates decompositions whose value of the objective function | ||
+ | is higher than that for other algorithms) or an | ||
+ | artifact of the algorithm' | ||
+ | decompositions that are more balanced than most algorithms). | ||
+ | |||
====== Algorithm Restrictions ====== | ====== Algorithm Restrictions ====== | ||
+ | Since software clustering | ||
+ | algorithms are heuristic algorithms, their performance | ||
+ | may depend on the type of software system being clustered. Such dependencies | ||
+ | need to be documented here. For example, Bunch may not be well-suited | ||
+ | for event-driven systems. | ||
+ | |||
====== Failed Assumptions ====== | ====== Failed Assumptions ====== | ||
+ | A description of ideas that did not | ||
+ | work very well while developing the algorithm. This information is | ||
+ | often omitted in publications but could be invaluable to the software | ||
+ | clustering researcher. | ||
+ | |||
====== Detailed Algorithm Description ====== | ====== Detailed Algorithm Description ====== | ||
+ | The nuts and bolts of the | ||
+ | algorithm' | ||
+ | only section of significant length in an algorithm description. | ||
+ |
protected/template.1241803740.txt.gz · Last modified: 2009/05/08 17:29 by mark