A critique of cohesion measures in the object-oriented parad
Cohesion refers to the "relatedness " of a module's components. In the object-oriented paradigm, cohesion refers to the "relatedness " among the methods of a class. Most of the current measures of cohesion in the object-oriented paradig
Michigan Technological University Department of Computer Science Master of Science Thesis
A Critique of Cohesion Measures in the Object-Oriented Paradigm
by
Bindu S. Gupta March 11, 1997
Cohesion refers to the "relatedness " of a module's components. In the object-oriented paradigm, cohesion refers to the "relatedness " among the methods of a class. Most of the current measures of cohesion in the object-oriented paradig
AbstractCohesion refers to the\relatedness" of a module's components. In the object-oriented paradigm, cohesion refers to the\relatedness" among the methods of a class. Most of the current measures of cohesion in the object-oriented paradigm are based on the idea of data cohesion. The general assumption is that the object-oriented paradigm has modules that encapsulate abstract data types. In this thesis we examine measures of cohesion in the object-oriented paradigm. A list of properties that these cohesion measures must satisfy is presented. Some existing and new measures in the object-oriented paradigm claimed to be cohesion measures are compared with this list of properties. Inconsistencies between the measures and our understanding of cohesion are also discussed. We will be looking at some C++ classes like List, Stack, etc. that are intuitively cohesive classes. The cohesion values are computed for each of the measures to see what they indicate about the cohesion of each class. Contrary to our intuition that methods of a class will use most of the data elements, we see that in most cases methods use only a few of the data elements. This means that characterizing cohesion based on data interactions might not be the correct way of measuring cohesion in the objectoriented paradigm. For classes that seem cohesive but have no data interactions, all the measures give low cohesion values, indicating that such type of classes are not cohesive. This raises a question, is\cohesion" in the object-oriented paradigm something other than data cohesion as has been hypothesized? And, if so, what is the right measure for cohesion? We hypothesize that in addition to data cohesion another form of cohesion exists which is based in the application domain and hence we refer to it as application-based cohesion. Future work on cohesion in the object-oriented paradigm needs to address this question.
Cohesion refers to the "relatedness " of a module's components. In the object-oriented paradigm, cohesion refers to the "relatedness " among the methods of a class. Most of the current measures of cohesion in the object-oriented paradig
Contents1 Introduction 2 Background2.1 The Object-Oriented Paradigm::::::::::::::::::::::::: 2.2 Measures in the Object-Oriented Paradigm:::::::::::::::::: 2.3 Cohesion in the Object-Oriented Paradigm:::::::::::::::::: The Lack of Cohesion in Methods Metric:: Connectivity Metric:::::::::::::: Chen and Lu's Cohesion Measure::::::: A Composite Cohesion Measure:::::::: Bieman and Kang's Class Cohesion Measures Slice-Based Data Cohesion Measures::::: 3.6.1 Class Slicing:::::::::::::: 3.6.2 Data Cohesion Measures::::::::
1 33 4 4 7 8 9 9 10 11 12 13
3 Existing Cohesion Measures in the Object-Oriented Paradigm3.1 3.2 3.3 3.4 3.5 3.6
::::::::
::::::::
::::::::
::::::::
::::::::
::::::::
::::::::
:::::
:::
::::::::
::::::::
::::::::
::::::::::::::
::::::::::::::
::::::::::::::
::::::::::::::
::::::::::::::
::::::::::::::
7
4 Are These Measures Satisfactory?
4.1 Necessary Properties for Cohesion Measures:::: 4.2 Do the Cohesion Measures Satisfy the Properties? 4.2.1 Lack of Cohesion in Methods:::::::: 4.2.2 Connectivity Metric::::::::::::: 4.2.3 Chen and Lu's Cohesion Metric::::::: 4.2.4 A Composite Cohesion Measure::::::: i
::::::
::::::
::::::
::::::
::::::
::::::
::::::
::::::
15
15 17 17 20 21 29
Cohesion refers to the "relatedness " of a module's components. In the object-oriented paradigm, cohesion refers to the "relatedness " among the methods of a class. Most of the current measures of cohesion in the object-oriented paradig
4.2.5 Bieman and Kang's Class Cohesion Measure::::::::::::: 4.2.6 Slice-Based Data Cohesion Measures:::::::::::::::::: 4.3 Another View of Cohesion::::::::::::::::::::::::::::
32 33 34
5 Summary and Future Work
40
ii
Cohesion refers to the "relatedness " of a module's components. In the object-oriented paradigm, cohesion refers to the "relatedness " among the methods of a class. Most of the current measures of cohesion in the object-oriented paradig
List of Figures2.1 LIST class.:::::::::::::::::::::::::::::::::::: 4.1 Case I: Class with a pair of methods that do not share any instance variables. 4.2 Case II: Class with three methods where only two of the methods share an instance variable.::::::::::::::::::::::::::::::::: 4.3 Case III: Class with four methods where a pair of methods share an instance variable each.::::::::::::::::::::::::::::::::::: 4.4 Case IV: Class with four methods where only three of the four methods share an instance variable.::::::::::::::::::::::::::::::: 4.5 Case V: Minimally cohesive class.:::::::::::::::::::::::: 4.6 Stack class.:::::::::::::::::::::::::::::::::::: 4.7 List.h::::::::::::::::::::::::::::::::::::::: 4.8 Object.h:::::::::::::::::::::::::::::::::::::: 4.9 List class.::::::::::::::::::::::::::::::::::::: 4.10 Listiter class.:::::::::: …… 此处隐藏:6488字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [教育文库]夜场KTV服务员的岗位职责及工作流程[1]
- [教育文库]企划、网络、市场绩效考核方案
- [教育文库]学党史、知党情、强党性--“党的基本理
- [教育文库]2016年高考物理大一轮总复习(江苏专版
- [教育文库]干部廉洁自律自查自纠的报告
- [教育文库]2010年北京大学心理学系拟录取硕士研究
- [教育文库]资金时间价值练习题及答案
- [教育文库]保护环境的心得体会
- [教育文库]英语角内容:英语趣味小知识
- [教育文库]档案收集与管理工作通知
- [教育文库]劳动规章制度范本范本
- [教育文库]高考物理一轮复习课后限时作业1运动的
- [教育文库]机械工艺夹具毕业设计195推动架设计说
- [教育文库]通用技术教学比赛说课稿2
- [教育文库]2018年四年级英语下册 Module 7 Unit 2
- [教育文库]第2章 宽带IP网络的体系结构
- [教育文库]九年级化学第五单元课题3《根据化学方
- [教育文库]小学英语六年级情态动词用法归纳
- [教育文库]甲级单位编制窑井盖项目可行性报告(立
- [教育文库]2016-2021年中国城市规划行业全景调研
- 高考英语听力十大场景词汇总结
- 全省领导班子思想政治建设座谈会会议精
- 人教版新课标高一英语提优竞赛试题 下
- 江西省2014年生物中考试题
- 长沙镇食品药品安全事故应急预案
- 《金刚石、石墨和C60》片段教学设计
- 福州教育学院(王旭东)
- 基于EDA音乐播放器的设计
- 9、古诗两首《夜书所见》《九月九日忆
- 小学语文课外阅读有效策略探讨
- 贵州文化产业发展成支柱产业的问卷调查
- 膀胱类癌的诊治体会(附3例报告)
- 发动机积碳产生的原因
- Configuring Code Composer Studio for
- 学生良好的心理素质如何培养点滴谈
- 46 电沉积法制备锂离子电池用硅-锂薄膜
- 美舍雅阁公司管理中各部门职责
- 去壳剥皮的小妙招
- 六自由度运动平台的仿真研究
- Pride and Prejudice(傲慢与偏见)




