软件模块划分原则_第1页
软件模块划分原则_第2页
软件模块划分原则_第3页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、模块划分的重要性所谓软件的模块划分是指在软件设计过程中, 为了能够对系统开 发流程进展管理,保证系统的稳定性以与后期的可维护性, 从而对软 件开发按照一定的准那么进展模块的划分。根据模块来进展系统开 发,可提高系统的开发进度,明确系统的需求,保证系统的稳定性。在系统设计的过程中,由于每个系统实现的功能不同,所以每个 系统的需求也将会不同。也就导致了系统的设计方案不同。 在系统的 开发过程中,有些需求在属性上往往会有一定的关联性,而有些需求之间的联系很少。如果在设计的时候,不对需求进展归类划分的话, 在后期的过程中往往会造成混乱。软件设计过程过对软件进展模块划分可以到达一下的好处:(1) 使程序

2、实现的逻辑更加清晰,可读性强。(2) 使多人合作开发的分工更加明确,容易控制。(3) 能充分利用可以重用的代码。(4) 抽象出可公用的模块,可维护性强,以防止同一处修改在多 个地方出现。(5) 系统运行可方便地选择不同的流程。(6) 可基于模块化设计优秀的遗留系统,方便的组装开发新的相 似系统,甚至一个全新的系统。模块划分的方法很多人都参与过一些工程的设计,在很多工程设计过程中对于模 块划分大多都是基于功能进展划分。这样划分有一个好处,由于在一 个工程的设计过程中,有着诸多的需求。而很多需求都可以进展归类, 根据功能需求分类的方法进展模块的划分。可以让需求在归类上得到 明确的划分,而且通过功能

3、需求进展软件的模块划分使得功能分解, 任务分配等方面都有较好的分解。按照任务需求进展模块划分是一种基于面向过程的划分方法,利用面向过程的思想进展系统设计的好处是能够清晰的了解系统的开 发流程。对于任务的分工、管理,系统功能接口的制定在面向过程的 思想中都能够得到良好的表达。按任务需求进展模块划分的主要步骤如下:(1) 分析系统的需求,得出需求列表;(2) 对需求进展归类,并划分出优先级;(3) 根据需求对系统进展模块分析,抽取出核心模块;(4) 将核心模块进展细化扩展,逐层得到各个子模块,完成模块 划分。在很多情况下,在划分任务需求的时候,有些需求和很多个模块均有 联系,这个时候,通过需求来确

4、定模块的划分就不能够降低模块之间 的耦合了。而且有些模块划分出来里面涉与的数据类型多种多样,显然这个时候根据系统所抽象出来的数据模型来进展模块划分更加有 利。在系统进展模块划分之前,往往都会有一个数据模型的抽象过程,根据系统的特性抽象出能够代表系统的数据模型。 根据数据模型 来进展模块划分,可以充分降低系统之间的数据耦合度。按照数据模 型进展模块的划分,降低每个模块所包含的数据复杂程度, 简化数据 接口设计。同时,对于数据的封装可以起到良好的作用,提高了系统 的封闭性。抽象数据模型的模块划分方案是一种基于面向对象的思想进展 的。这种思想的特点就是不以系统的需求作为模块的划分方法,而是以抽象出系

5、统的数据对象模型的思想对模块进展划分。而利用这种思想进展模块划分的主要好处能够接近人的思维方式对问题进展划分, 提高系统的可理解性,可以从较高层次上对系统进展把握! 按照数据模型进展模块划分的主要步骤如下:(1) 根据系统框架抽象出系统的核心数据模型;(2) 根据核心数据模型将系统功能细化,并将数据模型与视图等 剥离,细化数据的流向;(3) 依据数据的流向制定模块和接口,完成模块划分。模块划分的准那么当系统被划分成假设干个模块之后,模块之间的关系称之为块间 关系,而模块部的实现逻辑都属于模块部子系统。 对于软件的模块划 分要遵循一些根本原那么,遵循根本原那么进展模块划分所设计出来 的系统具有可

6、靠性强,系统稳定,利于维护和升级。设计模块往往要注意很多的问题,好的模块划分方案可以对系统 开发带来很多的便利,提高整个系统的开发效率,而且对于系统后期 的维护难度也会降低不少。反之,如果模块划分的不恰当,不仅不能 带来便利,往往还会影响程序的开发。在进展软件模块划分的时候,首先要遵从的一个准那么就是确保 每个模块的独立性,所谓模块独立性,即:不同模块相互之间的联系 尽可能少,尽可能的减少公共的变量和数据结构。 每个模块尽可能的 在逻辑上独立,功能上完整单一,数据上与其他模块无太多的耦合。模块独立性保证了每个模块实现功能的单一性,接口的统一性, 可以将模块之间的耦合度充分降低。 在进展软件模块

7、划分的时候,如 果各个模块之间的联系过多,模块独立性差容易引起系统结构混乱, 层次划分不清晰。导致有的需求和多个模块均有关联,严重影响系统 设计。对于模块独立性的好处主要可以归纳为以下几点:(1)模块功能完整独立;数据接口简单;(3) 程序易于实现;(4) 易于理解和系统维护;(5) 利于限制错误围;(6) 提高软件开发速度,同时软件质量高。在软件设计的过程中,往往需要对系统的结构层次进展分析, 从 中抽取出系统的设计框架,通过框架来指导整个软件设计的流程。 而 一个良好的系统框架也是决定整个系统的稳定性、 封闭性、可维护性 的重要条件之一。因此,在对软件进展模块划分的过程中,要充分遵照当前系

8、统的 框架结构。模块的划分要和系统的结构层次相结合,根据系统的层次对各个模块也进展层次划分。如果系统的模块划分和框架结构相违背 的话,那么会导致类似数据混乱,接口复杂,模块耦合性过高等等的 问题出现。如果模块划分的方法主要是依据任务需求而进展划分的话,那么可以先将任务需求根据系统框架划分出系统等级。 通过对任务需求的 等级划分对模块划分起到引导作用,同时,依照系统结构层次来对模 块划分。在进展模块划分的时候,有很多情况下不能够清晰的把握每个模 块的具体容。往往会出于对需求归类或者数据统一的角度上对模块进 展设计。这种设计理念是对的,但是如果只是单纯的从这几个方面来 进展模块设计的话,那么也会导致在模块划分上出现另外一些情况。 比方说设计的某一个模块,虽然数据接口统一,但是部实现的功能非 常多,单一模块的规模过大,包含的容过多。如果一个模块包含的容过多,会导致程序实现难度增加,数据处 理流程变得复杂,程序维护性降低,出错围不易确定等情况的出现。 同时,由于模块实现的功能丰富,那么必然会导致接口也变得繁多, 那么与其他模块之间的独立性就得不到保证。 而且,一个模块包含太 多的容也会给人一种一团乱糟糟的感觉,严重影响对程序的理解。 在设计模块的时候,需

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论