【软件工程】内聚

概念

是指一个模块内部个成分之间相互关联程度的度量。也就是说,凝聚是对模块内各处理动作组合强度的一种度量。很显然,一个模块的内聚越大越好。

偶然凝聚

一个模块内的各处理元素之间没有任何联系,只是偶然地被凑到一起。这种模块也称为巧合内聚,内聚程度最低。

逻辑凝聚

概念

逻辑内聚是指模块内各个元素之间的联系程度与它们在同一逻辑上有关。即模块内的各个元素都是为了完成同一逻辑而存在的。例如,一个判断模块内的各个元素都是为了完成同一逻辑而存在的。

判定依据:

模块内的各个元素是否都是为了完成同一逻辑而存在的。

综上所述,内聚性是软件设计中非常重要的一个概念,不同等级的内聚性可以帮助我们更好地设计模块,提高软件的可维护性和可重用性。在实际开发中,我们应该根据具体情况选择合适的内聚等级,以达到最优的设计效果。

时间凝聚

时间聚合原则

模块内部的各个组成部分所包含的处理动作必须在同一时间内执行。

时间状态聚合规则不受成员安全性影响。时间状态聚合规则不受属性安全性影响。

时间调整原则

意识到时间的存在。怎么才算意识到时间呢?给自己划分几个时间块。

合理分块,那个版块解决什么问题。

比如,我一天开始的时间,需要解决起床、收拾、吃饭、踩单车上班,大概2-3小时

足够了,就算有意外也能解决。

那我就把这段时间打包,分成上班前的一块,具体怎么弄随便,反正这个时间块内要

解决。

是要知道自己做的事,大概需要多少时间。这个实际就是你的时间明细,做一件事,

一定是先了解情况,才能做出正确判断。如果你都不知道,自己一天做了什么事,什么事

花费了多少时间,那你再牛的时间管理都不起作用。

其实,所谓没有时间,只要你看看自己的时间账本,就合理的规划管理方法了。所谓

管理,就是避免浪费,提高效率,就这么简单。

学会有选择的去做事。

很多时候,觉得时间不够用,是因为没有用在对的地方。时间管理最核心的一点,其实就是避免浪费,提高效率,这个很重要,就再啰嗦一遍。

当然,每次都做出正确的时间选择很难,但是有些事你必须去做,我们经常羡慕别人

厉害,他们为什么厉害,不就是去选择做了哪些你不喜欢的事。本质上大家都一样,都喜

欢玩,都喜欢拖延,但是总有一批人克服了自己,选择难做的事。

避免浪费,提高效率,用这8个字指导自己,你会发现,时间管理很简单,就是把时

间和任务做好匹配就行了。道理也很简单,你不是时时刻刻都精神饱满,也不是每时每刻

都斗志昂扬,所以我们也要灵活安排。

具体来说有3个原则帮你做出好选择:精力好的时候,做难的事。正常的事,看情况

安排,计划赶不上变化,学会灵活安排。如果你觉得很累,可以先休息一下,站起来走两

步。人没有状态的时候,坐在哪里硬熬只是浪费时间,你非要在困的时候,去做困难的事,

这个不是自找苦吃。最牛的计划,就是合理安排,这个没有人可以教,主要是你要找到自

己舒服又高效的状态。

不做计划,是因为计划很难实现,要做清单是因为人总是忘记,清单是为了提醒自己。

要想做好时间管理,要用清单来辅助自己。

我们大部分人的生活都是重复,每天起来,要做什么事,都已经成为习惯了,心理都

是门清。如果你还没有找到自己的节奏,可以用工具记录清单,当你熟悉以后,在心理做

清单就可以了。

今天我要去做什么,都有什么事,记在手机上,比如,我们要写周边,不写就请咖啡,

这个就可以设置一个提醒,有时候事不难,可能你只是忘记了。你一旦使用清单,你会发

现自己的效率居然提升了很多,不仅该做都会事完成了,还有空看看电视,你说这种好事

不试试吗?

过程内聚

概念

过程内聚是指模块内各个元素之间的联系程度与它们在同一过程中的执行有关。即模块内的各个元素都是为了完成同一过程而存在的。例如,一个登录模块内的各个元素都是为了完成登录过程而存在的。

判定依据:

模块内的各个元素是否都是为了完成同一过程而存在的。

通信内聚

概念

通信内聚是指模块内各个元素之间的联系程度与它们共享某些数据有关。即模块内的各个元素都是为了共享某些数据而存在的。例如,一个打印模块内的各个元素都是为了共享打印数据而存在的。

判定依据:

模块内的各个元素是否都是为了共享某些数据而存在的。

顺序凝聚

概念

顺序内聚是指模块内各个元素之间的联系程度与它们在同一顺序下的执行有关。即模块内的各个元素都是按照一定的顺序执行的。例如,一个排序模块内的各个元素都是按照一定的顺序执行的。

判定依据:

模块内的各个元素是否都是按照一定的顺序执行的。

功能凝聚

概念

功能内聚是指模块内各个元素之间的联系程度与实现某一功能有关。即模块内的各个元素都是为了实现同一功能而存在的。

一个计算器模块内的各个元素都是为了实现计算功能而存在的。

判定依据:

模块内的各个元素是否都是为了实现同一功能而存在。

可维护性最好

相关推荐
张较瘦_3 小时前
[论文阅读] 人工智能+软件工程 | MemFL:给大模型装上“项目记忆”,让软件故障定位又快又准
论文阅读·人工智能·软件工程
IDRSolutions_CN19 小时前
PDF 转 HTML5 —— HTML5 填充图形不支持 Even-Odd 奇偶规则?(第二部分)
java·经验分享·pdf·软件工程·团队开发
杨过姑父1 天前
部署开源版禅道,修改apache端口无效解决
bug·apache·软件工程·issue
张较瘦_1 天前
[论文阅读] 人工智能+软件工程 | 结对编程中的知识转移新图景
人工智能·软件工程·结对编程
workflower2 天前
以光量子为例,详解量子获取方式
数据仓库·人工智能·软件工程·需求分析·量子计算·软件需求
碳学长2 天前
软件工程:如何在项目中把软件做好
软件工程
碳学长3 天前
软件工程:如何做好软件产品
软件工程
Scabbards_3 天前
CPT304 Software Engineering II 题型收集
软件工程
PXM的算法星球3 天前
【软件工程】可行性研究
软件工程
奇妙之二进制3 天前
低内聚高耦合的衡量指标
软件工程·架构设计