系统设计的一些原则

合集下载

系统设计的主要原则是什么?

系统设计的主要原则是什么?
用户登录 代码改变世界 密码登录 短信登录 忘记登录用户名 忘记密码 记住我 登录 第三方登录/注册 没有账户, 立即注册
系统设计的主要原则是什么?
(1)系统性原则。在系统设计中要从整个系统的角度进行考虑,注意保证系统的一致性和完整性。 (2)灵活性及可变性原则。灵活性是指系统对外界环境变化的适应能力。 (3)可靠性原则。可靠性指系统抵御外界干扰的能力及受外界干扰时的恢复能力。 (4)经济性原则。经济性是指在满足系统要求的前提下,不仅追求给用户带来一定的效益,还应尽可能减少系统不必要的开销。

论述系统设计的原理与方法

论述系统设计的原理与方法

论述系统设计的原理与方法系统设计是一个复杂的过程,涉及多个方面的知识和技能。

以下是系统设计的原理和方法:原理:1. 分解原则:系统设计应该从整体到局部,逐步分解为各个子系统、模块和组件,以便更好地进行分析和设计。

2. 模块化原则:将系统划分为模块,每个模块有明确的功能和责任,便于设计、实现和维护。

3. 抽象原则:通过抽象来隐藏细节,提高系统的可理解性和可维护性。

4. 统一性原则:设计应该符合一致的标准和规范,以确保系统的一致性和可扩展性。

5. 可重用性原则:设计应该尽可能利用已有的组件和模块,提高效率和质量。

方法:1. 需求分析:明确系统的功能需求和非功能需求,用户需求和业务需求,确保设计满足实际需求。

2. 架构设计:确定系统的整体结构和组织方式,选择适当的架构模式和技术,确保系统的可扩展性、可维护性和可靠性。

3. 接口设计:定义各个模块和组件之间的接口,包括输入、输出、数据交互等,确保模块之间的协作和数据传输正确无误。

4. 数据设计:设计系统的数据结构、数据库模式和数据流程,确保数据的一致性、安全性和完整性。

5. 算法设计:设计系统的算法和逻辑流程,确保系统的高效性和正确性。

6. 用户界面设计:设计系统的用户界面,包括布局、交互和视觉设计,确保用户体验良好。

7. 性能设计:考虑系统的性能需求和限制,进行系统性能分析和优化,确保系统能够满足性能要求。

8. 安全设计:考虑系统的安全需求和威胁,设计系统的安全机制和控制措施,确保系统的安全性。

9. 测试与调试:进行系统的单元测试、集成测试和系统测试,发现和修复系统的错误和缺陷。

10. 文档和交付:撰写系统设计文档,并按照交付计划交付系统。

以上是系统设计的一般原理和方法,具体的系统设计过程还会受到项目的特定需求和约束条件的影响,在实际应用中需要根据具体情况进行调整和优化。

系统架构设计的基本原则和方法

系统架构设计的基本原则和方法

系统架构设计的基本原则和方法随着互联网技术的飞速发展,系统架构设计变得越来越重要。

一套良好的系统架构设计可以使得系统更加稳定、可靠、易维护和易扩展。

本文将从系统架构设计的基本原则和方法两个方面入手,为大家介绍系统架构设计的一些基本知识。

一、系统架构设计的基本原则1.高内聚低耦合原则在系统设计的时候要采用高内聚低耦合的原则。

所谓高内聚就是指,系统中的各个模块应该尽可能的聚集在一起,实现某一个特定的功能。

而低耦合则是指,在各个模块之间要尽量降低耦合度,减少各个模块之间的相互影响。

这种设计方式能够提高系统的可维护性和可扩展性。

2.分层原则分层原则是指将系统按照功能模块的不同层级划分成一个个分层的结构,每一层负责一定的职能,相互独立,层与层之间通过接口进行交互。

这种设计方式能够保证系统的结构清晰,易于维护和扩展。

3.复用原则在系统的设计过程中尽量采用模块化、组件化的方式,将通用的代码和逻辑分离出来,以便后续的复用和扩展。

这种设计方式能够提高系统的可维护性和可重用性,降低开发成本和周期。

4.容错原则在系统的设计过程中要考虑到异常情况的处理,防止在系统运行过程中出现异常而导致整个系统崩溃,保障系统的稳定性和可靠性。

这种设计方式需要将异常处理机制和恢复机制设计得尽可能完善。

5.可扩展性原则在系统的设计过程中要考虑到未来的发展,保持良好的可扩展性,以便随时满足业务需求的变化。

这种设计方式需要考虑到系统的架构、数据模型、编程模式等一系列因素,能够更好的应对未来的发展。

二、系统架构设计的基本方法1.需求分析在系统的开发过程中,需求分析是非常重要的一个环节。

通过对客户需求的分析,定义系统的需求和功能,并根据需求确定系统的功能模块和开发方向。

在需求分析的过程中,需要考虑到系统的可行性,例如技术、时间、资源等因素,以便尽快确定系统的开发计划和开发方向。

2.项目规划在需求分析之后,需要对整个系统的架构和流程进行规划。

在规划过程中,需要考虑到系统的整体结构、各个模块的功能和关系、数据流向、接口设计等因素。

简述系统设计的原则

简述系统设计的原则

简述系统设计的原则系统设计的原则是指在设计系统时所遵循的一些基本原则,这些原则可以帮助我们设计出高效、可靠、易于维护的系统。

下面将从系统设计的可靠性、可扩展性、可维护性、可用性和安全性等方面来介绍系统设计的原则。

一、可靠性可靠性是指系统在长期运行过程中,能够保持稳定、可靠的运行状态。

在系统设计中,可靠性是非常重要的一个方面,因为系统的可靠性直接影响到用户的使用体验和系统的稳定性。

为了提高系统的可靠性,我们需要遵循以下原则:1.设计简单:系统设计应该尽可能简单,避免过于复杂的设计,因为复杂的设计容易出现问题,从而影响系统的可靠性。

2.模块化设计:系统应该采用模块化的设计,将系统拆分成多个模块,每个模块之间相互独立,这样可以降低系统出现故障的概率。

3.错误处理:系统应该具备良好的错误处理机制,能够及时发现和处理错误,避免错误的扩散和影响。

4.备份和恢复:系统应该具备备份和恢复机制,能够在系统出现故障时及时恢复数据和系统状态。

二、可扩展性可扩展性是指系统能够在不影响系统性能和稳定性的情况下,随着业务的增长而扩展。

在系统设计中,可扩展性也是非常重要的一个方面,因为随着业务的增长,系统需要不断地扩展,否则会影响系统的性能和稳定性。

为了提高系统的可扩展性,我们需要遵循以下原则:1.分布式设计:系统应该采用分布式的设计,将系统拆分成多个子系统,每个子系统之间相互独立,这样可以方便系统的扩展。

2.水平扩展:系统应该采用水平扩展的方式,即通过增加服务器的数量来扩展系统的性能,而不是通过增加单个服务器的性能来扩展系统的性能。

3.异步处理:系统应该采用异步处理的方式,将一些耗时的操作异步处理,避免阻塞系统的运行。

4.缓存设计:系统应该采用缓存设计,将一些常用的数据缓存到内存中,避免频繁地访问数据库,从而提高系统的性能。

三、可维护性可维护性是指系统能够方便地进行维护和升级。

在系统设计中,可维护性也是非常重要的一个方面,因为系统需要不断地进行维护和升级,否则会影响系统的稳定性和性能。

系统架构设计的基本原则与方法

系统架构设计的基本原则与方法

系统架构设计的基本原则与方法系统架构设计是指在软件开发过程中,根据系统需求和预期目标,选择合适的技术、工具和框架,将系统划分为多个模块、组件或服务,以及定义它们之间的关系和交互方式的过程。

一个良好的系统架构设计能够提高系统的稳定性、可维护性和可扩展性,为项目的顺利进行奠定基础。

本文将介绍系统架构设计的基本原则与方法,以帮助读者了解如何进行有效的架构设计。

一、系统架构设计的基本原则在进行系统架构设计时,有几个基本原则需要遵循:1. 分离关注点(Separation of Concerns):将系统划分为多个模块或组件,每个模块或组件专注于解决特定的问题,降低系统的复杂性。

2. 模块化设计(Modularity):将系统划分为多个独立的模块,每个模块都具有清晰的职责和接口定义,使得模块之间的协作更加灵活和可替换。

3. 松耦合(Loose Coupling):模块间通过定义良好的接口进行通信,而不是直接依赖于具体的实现细节,从而实现模块的独立开发、测试和维护。

4. 高内聚(High Cohesion):每个模块或组件应该具有高内聚性,即各个功能相关的代码应尽量集中在同一个模块或组件中,提高代码的可读性和可维护性。

5. 组件复用(Component Reusability):通过设计可重用的组件,减少代码的重复开发,提高开发效率和系统的稳定性。

二、系统架构设计的方法在进行系统架构设计时,可以采用以下方法来指导设计过程:1. 理解需求:充分理解系统的功能需求和非功能需求,包括性能、安全、可用性等方面的需求。

2. 划分模块:根据需求,将系统划分为多个模块或组件,每个模块负责一个特定的功能。

3. 定义接口:为每个模块定义清晰的接口,包括输入、输出和参数等,确保模块之间的通信和交互顺利进行。

4. 选择技术栈:根据系统需求和预期目标,选择适合的技术栈和框架,包括编程语言、数据库、通信协议等。

5. 设计数据流:分析系统中各个模块之间的数据流动,确定数据的产生、传输和消费的过程。

信息系统设计的原则

信息系统设计的原则

信息系统设计的原则
1. 可靠性原则:信息系统应该具备高度的可靠性,能够保证数据的完整性、正确性和可用性。

2. 模块化原则:信息系统应该按照模块化的方式进行设计,把系统拆分成多个相互独立的模块,每个模块负责完成特定的功能。

3. 简单性原则:信息系统的设计应该尽可能地简单,避免过度复杂和冗余的设计,以提高系统
的易用性和可维护性。

4. 保密性原则:信息系统应该能够保护用户的个人信息和敏感数据,确保只有授权的人能够访
问和修改这些信息。

5. 可扩展性原则:信息系统应该具备良好的可扩展性,能够根据用户需求的变化进行调整和扩展,以适应系统的发展和变化。

6. 灵活性原则:信息系统应该具备良好的灵活性,能够快速适应业务需求的变化,提供灵活的
配置和定制选项。

7. 安全性原则:信息系统应该具备良好的安全性,能够保护系统免受恶意攻击和非法访问,确
保系统的信息和数据不受损失和篡改。

8. 可维护性原则:信息系统应该具备良好的可维护性,能够方便地进行系统的维护和升级,以
保证系统的稳定性和性能。

9. 可操作性原则:信息系统应该具备良好的可操作性,能够简化用户的操作步骤,并提供清晰
的界面和友好的交互方式。

10. 高效性原则:信息系统应该具备高效性,能够快速响应用户的请求和完成复杂的计算和处
理任务,提高系统的性能和效率。

简述系统设计的原则

简述系统设计的原则系统设计是指按照一定目标和要求,构建出能够满足特定需求的复杂系统。

在系统设计的过程中,需要遵循一些基本原则,以确保系统的可靠性、稳定性、可维护性和扩展性。

本文将从以下几个方面介绍系统设计的原则。

一、模块化模块化是指将系统划分为若干个独立的模块,每个模块都具有一定的功能,且模块之间的相互依赖程度尽量降低。

这样,当需要对系统进行修改或升级时,只需要对特定的模块进行修改,而不必对整个系统进行重构。

同时,模块化还可以提高系统的可维护性和可扩展性,降低系统开发的复杂度。

二、高内聚低耦合内聚是指模块内部包含的元素之间的联系程度,高内聚意味着模块内部的元素紧密相关,低内聚则意味着模块内部的元素关联度较低。

耦合是指模块之间的相互依赖程度,高耦合意味着模块之间的依赖关系很强,低耦合则意味着模块之间的依赖关系较弱。

高内聚低耦合的设计原则可以降低系统内部的复杂度,提高系统的可维护性和可扩展性,同时也可以减少系统因外部变化而导致的影响。

三、单一职责单一职责是指每个模块只承担一个特定的责任或功能。

这样,当需要对某个功能进行修改或升级时,只需修改对应的模块,而不会影响到其他模块。

同时,单一职责还可以提高代码的可读性和可维护性,使系统更易于理解和维护。

四、开放封闭原则开放封闭原则是指模块应该对扩展开放,对修改封闭。

也就是说,当需要对系统进行升级或扩展时,应该通过添加新的模块或组件来完成,而不是修改已有的模块或组件。

这样,可以保护已有的模块或组件不受到意外的影响,同时也可以提高系统的可扩展性和可维护性。

五、分层结构分层结构是指将系统划分为若干个层次,每个层次都具有一定的功能和职责,并且层与层之间的通信只能通过接口进行。

这样,可以降低系统内部的复杂度,提高系统的可维护性和可扩展性,同时也可以保护系统的安全性。

六、面向对象设计面向对象设计是指将系统中的所有元素都看作对象,每个对象都具有一定的属性和方法,并且对象之间可以相互调用和交互。

系统总体设计原则汇总

系统总体设计原则汇总系统设计的原则真是个引人入胜的话题。

设计一个系统就像建造一座房子,基础、结构、功能,缺一不可。

接下来,我们就来聊聊这些原则,看看它们如何影响我们的设计思路。

一、用户体验至上1.1 以用户为中心首先,用户体验至关重要。

想象一下,你进了一家咖啡馆,点了杯咖啡,结果服务员却不知道你要什么,或者咖啡味道奇差无比。

那种失望,谁受得了?所以,设计时要考虑用户的需求和习惯。

多做调研,收集反馈,让用户参与到设计中来,绝对是个明智之举。

1.2 简单易用再者,简单易用是关键。

复杂的界面就像高深的哲学,搞得人云里雾里。

系统越简单,用户越容易上手。

尽量减少操作步骤,提供清晰的导航。

把复杂的功能拆分成小块,用户会觉得轻松很多。

简约而不简单,这才是我们的目标。

二、系统的灵活性2.1 可扩展性然后,我们得谈谈灵活性。

世界变化太快,今天的需求可能明天就不再适用。

一个优秀的系统必须具备可扩展性,能够适应新需求。

想象一下,你的系统就像一棵树,枝繁叶茂,能随时生长。

别让设计锁死在某个阶段,给自己留点空间,才能迎接未来的挑战。

2.2 模块化设计说到这里,模块化设计也值得一提。

把系统拆分成独立的模块,就像拼乐高一样,每个模块可以单独工作,又能无缝衔接。

这样,修改或替换某个模块时,不会影响整个系统,极大地提高了维护的效率。

这样一来,系统就像一个灵活的拼图,可以随时重组。

2.3 兼容性再有,兼容性也不能忽视。

你的系统需要与其他系统打交道,像朋友一样和谐相处。

别让技术壁垒把用户隔离在外。

考虑到不同平台、设备之间的互通,确保系统能够流畅运行。

兼容性好,用户才会更放心地使用。

三、安全性3.1 数据安全说到安全,数据安全可谓重中之重。

如今,数据就像黄金,保护好用户的信息,是我们的责任。

设计时,要考虑数据加密、权限管理等措施。

用户的信息不能随便泄露。

想想看,要是用户的隐私遭到侵犯,信任就没了,那真是得不偿失。

3.2 可靠性此外,系统的可靠性也极其重要。

五个必备的系统架构设计原则

五个必备的系统架构设计原则系统架构设计是软件开发中至关重要的一步,它直接决定了系统的可扩展性、可维护性和性能等关键特性。

在进行系统架构设计时,遵循一些基本的原则可以帮助开发人员建立稳定、可靠的系统。

本文将介绍五个必备的系统架构设计原则,它们是:模块化、松耦合、高内聚、单一职责和可扩展性。

1. 模块化模块化是系统架构设计的核心原则之一。

它将系统划分为一系列相互独立且可重用的模块,每个模块负责特定的功能。

通过模块化的设计,可以提高系统的可维护性和可测试性。

同时,模块化还提供了更好的组织结构,使得团队成员能够并行开发不同的模块,从而提高开发效率。

2. 松耦合松耦合是指模块之间的依赖关系尽量降低。

模块之间的耦合度越低,系统的可复用性和可扩展性就越高。

通过采用松耦合的设计,可以减少系统中对其他模块的依赖,当某个模块发生变化时,只需要修改该模块而不会对其他模块造成影响。

松耦合的设计还能够方便进行系统的模块替换和功能扩展。

3. 高内聚高内聚是指一个模块内的功能相关性很高。

模块内部的组件、类或函数应该紧密合作,共同完成特定的功能。

高内聚的设计有助于提高系统的可维护性和可测试性,同时也减少了模块间的交互,降低了系统的复杂度。

通过高内聚的设计,可以将系统分解成一系列独立的模块,使得每个模块都具备清晰的职责和功能。

4. 单一职责单一职责原则是指一个模块只负责一个单一的功能。

一个模块承担过多的职责会导致模块的复杂性增加,降低可维护性和可测试性。

通过将每个模块的职责限定在一个特定的功能范围内,可以提高系统的模块化程度,使得系统更加可靠和易于维护。

单一职责原则也有助于降低系统中的耦合度,提高系统的灵活性和可扩展性。

5. 可扩展性可扩展性是指系统能够方便地进行功能扩展或性能升级。

一个可扩展的系统应该具备良好的模块划分和接口设计,以及可配置的参数和策略。

通过这些设计,可以使得系统能够在需求变化或规模扩大时保持稳定和高效。

一个可扩展的系统还应该考虑到并发性和负载均衡等关键技术,以确保系统在高并发或大规模用户情况下仍能正常运行。

系统设计一般原理

系统设计一般原理
在系统设计中,一般需要遵循以下原则:
1. 单一职责原则:每个组件或模块应该只负责一项功能,避免功能交叉或混乱。

2. 开闭原则:系统设计应该对扩展开放,对修改关闭。

即通过扩展现有的模块或组件来满足新的需求,而不是修改现有的代码。

3. 接口隔离原则:客户端不应该依赖它不需要的接口,模块之间的依赖关系应该尽量小巧明确。

4. 依赖倒置原则:高层模块不应该依赖于底层模块,都应该依赖于抽象接口,即面向接口编程。

5. 最少知识原则:一个对象应该尽可能少地了解其他对象的详细信息,只与其直接的朋友通信。

6. 组合/聚合复用原则:尽量使用组合或聚合关系(而不是继承关系)来达到代码复用的目的,以降低类之间的耦合度。

7. 里氏替换原则:一个父类的实例应该能够被它的子类替代,而程序执行的结果不应该有任何变化。

8. 迪米特法则:一个对象应该对其他对象有尽可能少的了解,只与直接的朋友类交互。

除了以上原则,系统设计中还需要考虑系统的可扩展性、可维护性、性能、安全性、可靠性等方面的问题。

其中可扩展性指系统能够方便地支持新功能的增加;可维护性指系统能够方便地进行修改和维护;性能指系统的响应速度和资源利用率;安全性指系统对外部攻击和非法访问的防范;可靠性指系统的稳定性和可靠性。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

系统设计的一些原则
系统设计的好坏在根本上决定了软件系统的优劣。

可以说“差的系统设计必定产生差的软件系统”,但是不能保证“好的系统设计必定产生好的软件系统”。

因为在设计之前有需求开发工作,在设计之后还有编码,测试和维护工作,无论哪个环节出了差错,都会把好事搞砸了。

据说上帝把所有的女士都设计成天使,可是天使们在下凡的时候,有些人双脚先着地,有些人脸先着地。

上帝的这一疏忽让很多女士伤透了心。

所以我们在开发软件的时候,一定要吸取这个教训。

一.合适性
系统设计的源头是需求,这是由商业目标决定的。

高水平的设计师高就高在“设计出恰好满足客户需求的
软件,并且使开发方和客户方”获取最大的利益,而不
是不惜代价设计出最先进的软件。

评估体系结构好不好的第一个指标就是“合适性”,
即体系结构是否符合适合于软件的“功能性需求”和“非
功能性需求”。

人们一般不会在需求文档中指定软件的
体系结构,需求与体系结构之间并没有一一对应的关系,
甚至没有明显的对应关系。

所以设计师可以充分发挥主
观能动性,根据需求的特征,通过推理和归纳的方法设
计出合适的体系结构。

经验不丰富的设计师往往把注意
力集中在“功能性需求”而疏忽了“非功能性需求”,
殊不知后者恰恰是最能体现设计水平的地方。

比如设计住宅。

住宅的最基本的功能性需求是“吃
喝拉撒睡”,全世界人民“吃喝拉撒睡”的方式都是差
不多的。

住宅的非功能性需求主要是让人住得舒服。


宅的种类非常多,如茅草屋、窑洞、筒子楼、酒店、别
墅等等。

窑洞的体系结构与别墅的有天壤之别,你能说
后者一定比前者好吗?不能,因为没有可比度。

如果一名建筑师受政府委托给广大的中国陕北农民
设计住宅,他应当设计更好的窑洞而非别墅。

理由很简
单,因为广大的陕北农民住不起别墅,而那里的条件特
别适合于建窑洞。

窑洞对于当地的农民而言是非常实用
而且成本低廉的住宅。

对于软件系统而言,能够满足需求的设计方案可能有很多种,究竟该选择哪一种呢?这时候商业目标是决策依据,即选择能够为开发方和客户方带来最大利益的那个方案。

大部分开发人员天生有使用新技术的倾向,而这种倾向对开发商业产品而言可能是不利的,切记切记!
二.结构稳定性
体系结构是系统设计的第一要素,详细设计阶段的工作如用户界面设计,数据库设计,模块设计,数据结构设计等等,都是在体系结构确定之后开展的,而编程
和测试是最后面的工作。

如果体系结构经常变动,那么
建筑在体系结构之上的用户界面、数据库、模块、数据
结构等也跟着经常变动,用“树倒猢狲散”来比喻很恰
当,这将导致项目发生混乱。

当前中国有几句流行的至理名言:“稳定压倒一切”、“发展才是硬道理”。

发展的前提条件是稳定,社会如
此,开发软件产品也是如此。

所以体系结构一旦设计完成,应当在一定的时间内保持稳定不变,只有这样才能使后续工作顺利开展。

前面讲了,体系结构是依据需求而设计的。

如果需求变更了,很有可能导致体系结构发生变更,那么“保持结构稳定”岂不是成了空想?
高水平的设计师应当能够分析需求文档,判断出哪些需求是稳定不变的,哪些需求是可能变动的。

于是根
据那些稳定不变的需求设计体系结构,而根据那些可变的需求设计软件的“可扩展性”。

三.可扩展性
可扩展性是指软件扩展新功能的容易程度。

可扩展越好,表示软件适应“变化”的能力越强。

由于软件是“软”的,那是否所有的软件必须设计能扩展新功能呢?
这要视软件的规模和复杂性而定。

如果软件规模很小,问题很简单,那么扩展功能的确比较容易。

要是软件的代码只有100行,这时就无所谓“可扩展性”了,你想怎么扩展都可以。

如果软件规模很大,问题很复杂,倘若软件的可扩展性不好,那么该软件就像用卡片造成的房子,抽出或者塞进去一张卡片都有可能使房子倒塌。

是否任何软件在设计的时候都要考虑可扩展性呢?不见得,如果确信某个软件在它淘汰之前永远都不会变更(如一次性产品),那么在设计阶段就没必要考虑可扩展性,这样省事省力。

可扩展性越来越重要,社会的商业越来越发达,需求变化就越快。

需求变化必将导致修改(或扩展)软件的功能,如果软件的扩展性比较差的话,那么修改(或扩展)功能的代价会很高。

现代软件产品通常采用“增量开发模式”开发商不断地推出软件产品的新版本,从而不断地获取增值利润。

如果软件的可扩展性比较差的话,每次开发新版本的代价就会很高。

虽然开发商抓住了商机,但却由于设计水平差而导致没有赚取多少利润,真是要活活气死。

体系结构的稳定性是根据那些稳定不变的需求而设计的,体系结构的可扩展性则是依据那些可变的需求而设计的。

从字面上看,稳定性和可扩展性似乎有点矛盾。

两者之
间存在辩证的关系:如果系统不可扩展的话,那么就没有发展前途,所以不能只关心稳定性而忽视可扩展性;
而软件系统“可扩展”的前提条件是“保持结构稳定”,否则软件难以按计划开发出来,稳定性是使系统能够持续发展的基础。

所以稳当性和扩展性都是体系结构设计的要素。

人们对物质有喜新厌旧的天性,你可以经常改变房子的装潢和摆设,但不能每次都去拆墙,挖地基。

在软
件开发过程中,变化是司空见惯的事情。

如果每次变化
都导致体系结构发生大的变化,那简直就是“伤筋动骨”,这样的体系结构无疑是败笔之作。

分层开发是一种重要的体系结构,有着良好的可扩展性,而且在扩充或修改功能时,基本不会破坏原有结
构的稳定性。

可以参看我的分层开发思想与小笼包一
文。

四.可复用性
复用就是指“重复利用已经存在的东西”。

复用不是人类懒惰的表现,而是智慧的表现。

因为人类总是在
继承了前人的成果,不断加以利用、改进或创新后才会
进步。

复用有利于提高产品的质量、提高生产效率和降低成本。

由经验可知,通常在一个新系统中,大部分的内容是成熟的,只有小部分内容是创新的。

一般地,可以相信成熟的东西总是比较可靠的(即具有高质量),而
大量成熟的工作可以通过复用来快速实现(即具有高生
产效率)。

勤劳并且聪明的人们应该把大部分的时间用
在小比例的创新工作上,而把小部分的时间用在大比例
的成熟工作中,这样才能把工作做的又快又好。

企业成功地开发了某个软件产品之后,如果下个新产品能够复用上个产品的体系结构的话,那么新产品的系统设计的成本和风险将大大降低。

可复用性是设计出来的,而不是偶然碰到的。

要使体系结构具有良好的可复用性,设计师应当分析应用域的共性问题,然后设计出一种通用的体系结构模式,这样的体系结构才可以被复用。

相关文档
最新文档