模块接口的设计(模块接口的设计要求)

网友投稿 874 2023-03-06


本篇文章给大家谈谈模块接口的设计,以及模块接口的设计要求对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 今天给各位分享模块接口的设计的知识,其中也会对模块接口的设计要求进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

如何设计模块接口 模块接口设计技巧

每一个大的系统都是有许多模块系统组成的,系统的开发是一个很大的工程,开发起来得难度也是比较大。因此任何一个有一定规模系统,通常会把系统做一定分解降低分析设计开发的难度,模块划分是一个比较常见的方式,而模块与模块之间则是通过接口设计将它们整合在一起的。 实践中,极有可能出现两种状况:接口维护失控或者过严而死板(而影响开发)。接口失控是因为接口的维护太过随意,因为A模块的需要就轻易在B模块中添加一个接口(方法),导致该接口(方法)非独立性(基本上只给模块A的这个功能点使用),或者是接口的控制过严,导致或者工作效率不高,或者接口的易用性不好。 原因在于:接口是两个模块间的耦合,而发生的种种问题在于模块耦合太过紧密;同时实践中,把模块对外提供的接口,与模块需要实现的外部模块的接口混为一谈。 根据指导原则:为了降低耦合只有在中间加一层。一种可行的实践是:不轻易为模块设计对外提供的接口(方法),除非是通过重构得来的;模块对外提供两种类:一个是需要外部模块实现的接口(接口设计从本模块需要出发,当然每个接口尽管是为某个功能点服务,但也要注意其在模块内通用性),另一个是其它模块要求本模块实现的接口的实现类。 即:A模块拥有一些需要B模块实现的接口(A模块对B模块的要求),而B模块中也有要求A模块实现的接口,因而A有这些接口的实现类。 这种实践方式的好处在于:模块的接口就多了一层隔离降低了耦合,把接口的通用性和接口的适应性分离,又明确了模块的边界,使得接口在日后的优化和调整有了缓冲。接口设计的关键是能够将系统的每一个模块能够很好的整合在一起,而且能够让系统能够更好的运行。模块接口设计也是实现系统功能实现整体化的手段,而且是有益于系统拆分、整合等手段所必备的。

在信息系统设计中模块设计应遵循的原则是

信息隐藏、高内聚和低耦合。

1、高内聚:内聚是一个模块内部各成分之间相关联程度的度量。高内聚的模块内部联系紧密,就像一个无法分割的整体,这样的模块功能单一,模块的实现和维护难度就会大大降低。

2、低耦合:需要注意耦合是模块之间依赖程度的度量。低耦合意味着模块之间的独立性更好,改变一个模块不会影响其它模块。内聚和耦合是密切相关的,与其他模块存在强耦合的模块通常意味着弱内聚,而强内聚的模块通常意味着与其他模块之间存在弱耦合。

3、信息隐藏:信息隐藏的意思是让模块仅仅公开必须要让外界知道的东西,而隐藏其他一切内容。在模块设计的接口设计中,就充分体现了信息隐藏这一原则,接口是模块的外部特征,应当公开;而数据结构、算法、实现体等则是模块的内部特征,应当隐藏。一个模块仅提供有限的接口,接口是模块与外界交互的惟一途径。

信息隐藏与高内聚、低耦合这两个原则是一脉相承。它们都体现了模块独立的设计思想。此外,信息隐藏,还蕴含着博大精深的中华文化——秀外而慧中。模块的接口设计追求简洁、高效,小而美,这就是“秀外”;数据结构和算法,这些复杂的设计集中在模块内部,就是“慧中”,只有遵循这些设计原则,才能做出好的模块设计。

以上内容参考  百度百科-信息系统设计

功能模块的设计

1.提高功能模块独立性
在得到软件结构之后,就应首先着眼于改善功能模块的独立性,考验是否应该把一些功能模块提取或合并,力求降低耦合提高内聚。例如,多个功能模块共有的一个子功能可以独立成一个功能模块,由这些功能模块调用,有时可以通过分解或合并功能模块以减少控制信息的传递及对全局数据的引用,并且降低接口的复杂度。
2.功能模块规模适度
经验表明,当功能模块过大时,功能模块的可理解性就会迅速下降。但是对过大的功能模块分解时,也不应降低功能模块的独立性。因为当对一个大的功能模块分解时,有可能增加功能模块之间的依赖。
3.深度、宽度、扇出和扇入要适当
如果深度过大则说明有的控制模块可能简单了。如果宽度过大则说明系统的控制过于集中。而扇出过大则意味着功能模块过于复杂,需要控制和协调过多的下级模块,这时应适当地增加中间层次,扇出太小则可以把下级模块进一步分解成若干个子功能模块,或者合并到上级功能模块中去。一个功能模块的扇入是表明有多少个上级功能模块直接调用它,扇入越大则共享该模块的上级模块数目越多,这是有好处的。
4.要使模块的作用范围保持在该模块的控制范围内
功能模块的作用范围是指受该功能模块内一个判定影响的所有功能模块的集合。功能模块的控制范围是指这个功能模块本身以及所有直接或间接从属于它的功能模块的集合。在一个设计得很好的系统中,所有受判定影响的功能模块应该都从属于作出判定的那个功能模块,最好局限于做出判定的那个功能模块本身及它的直接下级模块。对于那些不满足这一条件的软件结构修改的办法是:将判定点上移或者将那些在作用范围内但是不在控制范围内的功能模块移植到控制范围内。
5.应减少功能模块的接口的复杂性和冗余度,并改善一致性
功能模块接口复杂是软件发生错误的一个主要原因。应该仔细设计模块接口,使得信息传递简单并且和模块的功能一致。
6.设计成单入口、单出口的功能模块,避免病态连接
要防止内容耦合性,如果功能模块都是从顶部入口、从底部出口的话,这样的软件也更易于理解和易于维护。病态连接关系是指从中部进入或访问一个模块。
7.模块的功能可预测
如果一个功能模块可以当做一个黑箱,即只要输入的数据相同就产生同样的输出,这个模块的功能就是可以预测的。而那些具有内部记忆的功能模块则可能是不可预知的,因为它可能记载了某个内部标志并且利用这个标志去选择处理方案。由于这个标志对上级功能模块来说是看不见的,因而可能引起混乱。
8.组装软件根据设计的约束和移植的需要
组装是指用来把软件组合起来,以便把软件放入特定的处理环境或送往其他的地方。有时,设计约束要求一个程序要在内存中覆盖自己。如果有这种要求的话,原设计结构就可能必须重新组织以便按照重复的次数、存取的频率以及各次调用之间的间隔来把功能模块组合起来。
总之,不管什么样的功能模块都有可能出现软件缺陷,主要类型有:软件没有实现产品规格说明所要求的功能模块;软件中出现了产品规格说明指明不应该出现的错误;软件实现了产品规格说明没有提到的功能模块;软件没有实现虽然产品规格说明没有明确提及但应该实现的目标;软件难以理解,不容易使用,运行缓慢,或从测试员的角度看,最终用户会认为不好。因此一定要重视软件功能模块的设计和软件测试的进行,这样才能从根本上保证软件质量。

模块化设计原理有哪些?

模块化产品是实现以大批量的效益进行单件生产目标的一种有效方法。产品模块化也是支持用户自行设计产品的一种有效方法。产品模块是具有独立功能和输入、输出的标准部件。这里的部件,一般包括分部件、组合件和零件等。模块化产品设计方法的原理是,在对一定范围内的不同功能或相同功能、不同性能、不同规格的产品进行功能分析的基础上,划分并设计出一系列功能模块,通过模块的选择和组合构成不同的顾客定制的产品,以满足市场的不同需求。这是相似性原理在产品功能和结构上的应用,是一种实现标准化与多样化的有机结合及多品种、小批量与效率的有效统一的标准化方法。
系列产品中的模块是一种通用件,模块化与系列化已成为现今装备产品发展的一个趋势。
三大特征
模块是模块化设计和制造的功能单元,具有三大特征:
1.相对独立性,可以对模块单独进行设计、制造、调试、修改和存储,这便于由不同的专业化企业分别进行生产;
2.互换性,模块接口部位的结构、尺寸和参数标准化,容易实现模块间的互换,从而使模块满足更大数量的不同产品的需要;
3.通用性,有利于实现横系列、纵系列产品间的模块的通用,实现跨系列产品间的模块的通用。
(一)模块化与系列化、组合化、通用化、标准化的关系
模块化设计技术是由产品系列化、组合化、通用化和标准化的需求而孕育的。系列化的目的在于用有限品种和规格的产品来最大限度、且较经济合理地满足需求方对产品的要求。组合化是采用一些通用系列部件与较少数量的专用部件、零件组合而成的专用产品。通用化是借用原有产品的成熟零部件,不但能缩短设计周期,降低成本,而且还增加了产品的质量可靠性。标准化零部件实际上是跨品种、跨厂家甚至跨行业的更大范围零部件通用化。由于这种高度的通用化,使得这种零部件可以由工厂的单独部门或专门的工厂去单独进行专业化制造。
(二)产品模块化、系列化设计分类与库管理
产品模块要求通用程度高,相对于产品的非模块部分生产批量大,对降低成本和减少各种投入较为有利。但在另一方面又要求模块适应产品的不同功能、性能、形态等多变的因素,因此对模块的柔性化要求就大大提高了。对于生产来说,尽可能减少模块的种类,达到一物多用的目的。对于产品的使用来说,往往又希望扩大模块的种类,以更多地增加品种。针对这一矛盾,设计时必须从产品系统的整体出发,对产品功能、性能、成本诸方面的问题进行全面综合分析,合理确定模块的划分。产品模块化设计按照自顶向下研究分类,包括系统级模块、产品级模块、部件级模块、零件级模块;再按照功能及加工和组合要求研究分类,包括基本模块、通用模块、专用模块;然后按照接口组合要求研究分类,包括内部接口模块、外部接口模块。以产品级模块化为例,就是在需求调查的基础上,对装备产品的构成进行分析,考察其中的功能互换性与几何互换性的关系,并划分基本模块、通用模块或专用模块,以模块为基础进行内部接口、外部接口设计,通过加、减、换、改相应模块以构成新的产品,并满足装备产品的功能指标的要求。 关于模块接口的设计和模块接口的设计要求的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。 模块接口的设计的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于模块接口的设计要求、模块接口的设计的信息别忘了在本站进行查找喔。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:在线 api 文档 管理(api文档工具知乎)
下一篇:Java设计模式之工厂模式实现方法详解
相关文章

 发表评论

暂时没有评论,来抢沙发吧~