软件工程第九章面向对象方法学

合集下载

软件工程电子课件第9章 面向对象设计

软件工程电子课件第9章 面向对象设计

11
9.2 启发规则
3.设计简单的类
应该尽量设计小而简单的类,以便于开发和管理。当类比较 庞大的时候,要记住它的所有服务是非常困难的。为保持类的 简单,应该注意以下几点。 ➢ (1)避免包含过多的属性
属性过多通常表明这个类过分复杂了,它所完成的功能可能太多了。
➢ (2)有明确的定义
为了使类的定义明确,分配给每个类的任务应该简单,最好能用一 两个简单语句描述它的任务。
➢ (1)交互耦合
如果对象之间的耦合通过消息连接来实现,则这种耦合就是交互耦合。 为使交互耦合尽可能松散,应该遵守下述准则。
• ◇ 尽量降低消息连接的复杂程度。应该尽量减少消息中包含的参数个数,降低参数的复 杂程度。
• ◇ 减少对象发送(或接收)的消息数。Βιβλιοθήκη 2021/1/176
9.1 面向对象设计的准则
使用面向对象方法开发软件时,在分析与设计之间并没有明确的分界线, 对于问题域子系统来说,情况更是如此。
通过面向对象分析所得出的问题域精确模型,为设计问题域子系统奠定 了良好的基础,建立了完整的框架
使用面向对象方法学开发软件,能够保持问题域组织框架的稳定性,从 而便于追踪分析、设计和编程的结果。在设计与实现过程中所做的细 节修改(如增加具体类,增加属性或服务),并不影响开发结果的稳 定性,因为系统的总体框架是基于问题域的。
➢ (2)类内聚
设计类的原则是,一个类应该只有一个用途,它的属性和服务应 该是高内聚的。类的属性和服务应该全都是完成该类对象的任务所必 需的,其中不包含无用的属性或服务。
➢ (3)一般/特殊内聚
设计出的一般/特殊结构,应该符合多数人的概念,更准确地说, 这种结构应该是对相应的领域知识的正确抽取。

《实用软件工程》第9章 面向对象设计

《实用软件工程》第9章 面向对象设计

• 信息隐藏:对于类而言,其内部信息如属性的表示方法和操作的实现算法,对 外界是隐藏的。外界通过有限的接口来访问类的内部信息。
17
9.3.2 面向对象设计的原则
• 低耦合:在面向对象设计中,耦合主要指对象之间相互关联的紧密程度,低耦 合有利于降低一个模块改变对其他模块的影响。
• 高内聚:内聚与耦合密切相关,低耦合往往意味着高内聚,高内聚有助于提高 系统独立性。
但随着需求理解的加深,以及对系统认识程度的逐步 提高,设计人员还要对模型进行修正和完善。 • 设计任务管理子系统包括确定任务,分配任务,还包 括权衡一致性、成本、性能等因素以及未来可扩充性。 • 设计数据管理子系统,需要设计数据格式以及相应的 服务,设计数据格式的方法与所用的数据存储管理模 式密切相关,不同数据存储管理模式时,属性和服务 的设计方法是不同的。
9.2 面向对象设计与面向对象分析的关系
• 设计阶段的任务是及时把分析阶段得到的需求转变成符合各项要求的 系统实现方案。与传统的软件工程方法不同的是,面向对象的方法不强调 需求分析和软件设计的严格区分。实际上,面向对象的需求分析和面向对 象的设计活动是一个反复迭代的过程,从分析到设计的过渡,是一个逐渐 扩充、细化和完善分析阶段所得到的各种模型的过程。严格的意义上来讲, 从面向对象分析到面向对象设计不存在转换问题,而是同一种表示方法在 不同范围的运用。面向对象设计也不仅仅是对面向对象分析模型进行细化。
• (2)人机交互子系统包括有效的人机交互所需的显示和输入,这些类在很大程度上 依赖于所用的图形用户界面环境,例如Windows、Delphi、C++,而且可能包括“窗 口”、“菜单”、“滚动条”、“按钮”等针对项目的特殊类。
25
9.5.1 系统分解

软件工程第9章 面向对象方法学

软件工程第9章  面向对象方法学

9.1 面向对象方法学概述
9.1.1.面向对象方法学的要点
面向对象方法学的要点面向对象方法学的出发点和基本原则, 是尽可能模拟人类习惯的思维方式,使开发软件的方法与过程 尽可能接近人类认识世界解决问题的方法与过程,也就是使描 述问题的问题空间(也称为问题域)与实现解法的解空间(也称为 求解域)在结构上尽可能一致。
9.2 面向对象的概念
3.消息(massage) 例如,MyCircle是一个半径为4cm、圆心位于(100,200)的
Circle类的对象,也就是Circle类的一个实例,当要求它以绿 颜色在屏幕上显示自己时,在C++语言中应该向它发下列消 息:
MyCircle.Show(GREEN); 其中,MyCircle是接收消息的对象的名字,Show是消息选择 符(即消息名),圆括号内的GREEN是消息的变元。当 MyCircle接收到这个消息后,将执行在Circle类中所定义的 Show操作。
面向对象的软件技术以对象为核心,用这种技术开发出的软 件系统由对象组成。对象是由描述内部状态表示静态属性的 数据,以及可以对这些数据施加的操作(对象的动态行为), 封装在一起所构成的统一体。
面向对象的设计方法基本原理是,使用现实世界的概念抽象 地思考问题从而自然地解决问题。
面向对象方法学的基本原则是按照人类习惯的思维方法建立 问题域的模型,开发出尽可能直观、自然地表现求解方法的 软件系统。面向对象的软件系统中使用的对象,是对客观世 界中实体的抽象。
9.2 面向对象的概念
4.方法(method)
方法就是对象所能执行的操作,也就是类中所定义的服务 。方法描述了对象执行操作的算法,响应消息的方法。在 C++语言中把方法称为成员函数。 5.属性(attribute)

第9章面向对象方法学

第9章面向对象方法学

(三) 面向对象的概念
1. 对象
在应用领域中有意义的、与所要解决的 问题有关系的任何事物都可以作为对象。 它既可以是具体的物理实体的抽象,也 可以是人为的概念,或者是任何有明确边界和 意义的东西。
客观世界的问题看成对象取决于应用的 视角和问题的性质。 当你在路上找人,你看到的对象就是流 动的人群; 当你需要出租车,你看到的对象就是过 往的车辆。
当对象 MyCircle 接受到这个消息后, 执行Circle类中所定义的 Show 操作。 注意: 1)消息由接受消息的对象来解释。 (MyCircle 就是接受消息的对象) 2)一个对象需要另一个对象服务时,就向 它发出请求服务的消息。这时,接受消息 的对象响应消息,触发所要求服务的操作 的方法来完成服务。
OO技术以对象(object)为核心,把静态 属性的数据,和对这些数据施加的操作封装在 一起所构成的统一体。
2. 稳定性好 面向对象的软件系统的结构是根据问题 领域的模型建立起来的。 (而传统方法是基于系统的功能的分解。) 当对系统的功能需求变化时并不会引起 软件结构的整体变化。因此,以对象为中心构 造的软件系统也是比较稳定的。
7. 封装(encapsulation) 从字面上理解,所谓封装就是把某个事物 包起来,使外界不知道该事物的具体内容。 对象具有封装性的条件如下: (1) 有一个清晰的边界。 (2) 有确定的接口。这些接口就是对象可 以接受的消息,只能通过向对象发送消息来使 用它。 (3) 受保护的内部实现。实现对象功能的 细节(私有数据和代码)不能在定义该对象的 类的范围外访问。
一. 传统方法学的问题
(一) 软件不能真正满足用户需求
1. 软件开发效率低 2. 软件不能满足“需求变化”、“需求模糊” 和“需求灵活性” 3. 软件重用度低 4. 软件仍然很难维护

[软件工程]CH09-面向对象方法

[软件工程]CH09-面向对象方法
缺书单 采 购
进书通知 员
学 生
2020/6/19
购书单 领书单
1 销售
进 书 通 知
缺书单 2 采购
采 购 员
进书通知
12
9.1.2面向对象的基本特征
【结构化设计实例】
购书单
学Leabharlann 1生销售进 书 通
领书单

自顶向下地进行功能分解
缺书单 采
2 采购


进书通知
2020/6/19
2.1 按书号 汇总缺书
面向对象=对象+类+继承+通信
2020/6/19 3
9.1.1 对象和类
【类】是对一组具有相同结构、操作,并遵守相 同规则的对象的抽象;
【对象】是类的一个实例;

【类】
钢笔
铅笔
毛笔 【类?对象】
2020/6/19
我的一支铅笔
【类?对象】 【类?对象】
4
9.1.1 对象和类
【对象】是类的一个实例;
子类
2020/6/19 10
9.1.2面向对象的基本特征
结构化方法(SA、SD、SP)
【指导思想】自顶向下,逐步细化
自顶向下地进行功能分解; 从外部功能上模拟客观世界;
2020/6/19 11
9.1.2面向对象的基本特征
【结构化设计实例】
购书单

教材

购销系统
领书单
自顶向下地进行功能分解
【开发过程】”做什么””如何做” 【优点】系统的结构性强,便于设计和理解 【缺点】维护困难;
用户的需求不可能一次提得完备、精确; 一旦需求改变,后续的设计和实现都要修改;

第九章软件工程面向对象实现

第九章软件工程面向对象实现
着眼长远,反复考虑、精心设计。 主要准则: ① 提高方法的内聚 一个方法(服务)应只完成单个功能,若某个方法涉及两个或 多个不相关的功能,则应将其分解为几个更小的方法。
② 减小方法的规模 若某个方法规模过大(代码长度超过一页纸),即应将其分
解为几个更小的方法。 ③ 保持方法的一致性
一般而言,功能相似的方法应有一致的名字、参数特征(包括参数 个数、类型、次序)、返回值类型、使用条件及出错条件等。
同样,属性和关联也可分为公有和私有两大类,公有属性或关 联又可进一步设置为具有只读权限或只写权限两类。
3、提高健壮性
编写实现方法的代码时,既应考虑效率,也应考虑健壮性,通 常需要在健壮性与效率之间做适当的折衷。
作为软件不可忽视的质量指标。提高健壮性应遵守如下准则: ① 预防用户的操作错误
软件系统必须具有处理用户操作错误的能力。当用户在输入数据时发 生错误,不应该引起程序运行中断,更不应该造成“死机”。
若在执行过程中发现错误,仅返回执行状态。由于实现方法是自含式算法,相 对独立于具体应用,因此在其他应用系统中也可能重用它们。
为提高可重用性,在编程时不应将策略和实现放在同一个方法中,而应将算法 的核心部分放在一个单独的具体实现方法中。为此需要从策略方法中提取具体参 数,作为调用实现方法的变元。
⑤ 全面覆盖 若输入条件的各种组合都可能出现时,应针对所有组合写出方
2、提高可扩充性
上述提高可重用性的准则,也能提高程序的可扩充性。 此外,以下面向对象程序设计准则也有助于提高可扩充性。 ① 封装实现策略
将类的实现策略(包括描述属性的数据结构、修改属性的算法 等)封装起来,对外只提供公有的接口,否则将降低今后修改数 据结构或算法的自由度。 ② 避免用一个方法遍历多条关联链

面向对象方法学

面向对象方法学

小结
传统的生命周期方法学的缺点 面向对象方法的四个要点 面向对象方法的主要优点 面向对象的基本要素 面向对象的分析

面向对象方法中问题空间和解空间的映 射关系
面向对象方法尽可能模拟客观世界,它把数据以及在 这些数据上的操作所构成的统一体称为"对象". 对象是进行处理的主体.
必须发消息请求对象执行它的某些操作,处理它的私有数 据,而不能从外界直接对它的私有数据进行操作.
这样,软件开发者可以根据问题空间的结构,定义或 选取解空间对象,然后用一系列离散的解空间对象的 集合组成软件系统.
软件危机
原因
早期的软件开发工作主要花费在编程实现阶段,采用的是 个体的小作坊开发模式. 随着计算机应用领域的不断扩大和应用层次的不断加深, 使得:软件的规模不断扩大,软件的复杂度不断提高
表现:早期的软件开发模式难以驾驭软件开发过 程,出现了"软件危机":
软件生产率急剧下降,供不应求 程序的正确性难以保证 开发出的软件难以维护.
系统很多代码是和用户界面相关的,而面向对象方 法是处理这种用户界面的系统一种优于传统面向过 程的方法;
OOA是在信息模型(实体关系图和语义数据模 型)和面向对象程序设计语言两者的最好概念 上建立的.
来自信息模型:属性,关系,结构和代表问题空间 事物的若干实例的对象表示. 来自面向对象程序设计语言:属性和服务的封装, 分类,继承.
面向对象方法的主要优点
较易开发大型软件产品
可以将大系统分解成相互独立的小产品来处理 可以降低成本,提高质量
可维护性好
面向对象的软件稳定性比较好. 面向对象的软件比较容易修改. 面向对象的软件比较容易理解. 易于测试和调试.
面向对象的基本要素

张海藩《软件工程导论》(第6版)(课后习题 第9章 面向对象方法学引论)【圣才出品】

张海藩《软件工程导论》(第6版)(课后习题 第9章 面向对象方法学引论)【圣才出品】

第9章面向对象方法学引论1.什么是面向对象方法学?它有哪些优点?答:(1)面向对象方法学是尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类解决问题的方法与过程,使描述问题的问题空间与实现解法的解空间在结构上尽可能一致的方法学科。

(2)面向对象方法学优点:①与人类习惯的思维方法一致。

②面向对象软件稳定性好。

③面向对象软件可重用性好。

④较易开发大型软件产品。

⑤可维护性好。

2.什么是“对象”?它与传统的数据有何异同?答:(1)对象是对问题域中某个实体的抽象。

(2)相对于传统数据结构的静态被处理,对象既有静态的属性,也有动态的行为,是进行处理的主体。

3.什么是“类”?答:类是对具有相同数据结构和相同操作的一组组相似对象的定义,即类是对具有相同属性和行为的一个或多个对象的描述,包括对怎样创建该类的新对象的说明。

4.什么是“继承”?答:继承是指能够直接获得已有的性质和特征,而不必重复定义它们。

在面向对象的软件技术中,继承是子类自动地共享基类中定义的数据和方法的机制。

5.什么是模型?开发软件为何要建模?答:(1)模型是为了理解事物而对事物作出的一种抽象,是对事物的一种无歧义的书面描述。

模型由一组图示符号和组织这些符号的规则组成,利用它们来定义和描述问题域中的术语和概念。

模型是一种思考工具,利用这种工具可以把知识规范地表示出来。

(2)由于建模忽略了事物的非本质属性,因此模型比原始事物更容易操作。

对于那些因过分复杂而不能直接理解的系统,特别需要建立模型,模型通过吧系统的重要部分分解成人的头脑一次能处理的若干个子部分,从而减少了系统的复杂程度。

6.什么是对象模型?建立对象模型时主要使用哪些图形符号?这些符号的含义是什么?答:(1)对象模型表示静态的、结构化的系统的数据性质。

它是对模拟客观世界实体的对象以及对象彼此间的关系的映射,描述了系统的静态结构。

(2)通常使用UML提供的类图来建立对象模型。

(3)在UML中“类”的实际含义是。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2020/5/4
1
2020/5/4
2
1 传统方法学的缺点
传统的生命周期方法学的本质,是在具体的 软件开发工作开始之前,通过需求分析预先 定义软件需求,然后一个阶段接着一个阶段 有条不紊地开发用户所要求的软件,实现预 先定义的软件需求。
但它并不能完全消除软件危机。生命周期方 法学仍然有许多不足之处,对某些类型的软 件开发,这种方法学比较适用,对另一些类 型的软件则可能完全不适用。
但实践表明,即使是用生命周期方法学开发出的软 件,维护起来仍然相当困难,软件维护成本仍然很 高。
2020/5/4
6
ห้องสมุดไป่ตู้
4.软件往往不能真正满足用户需要 用传统方法开发涉及多种不同领域知识的大型软件
系统,或开发需求模糊或需求动态变化的系统时, 所开发出的软件系统往往不能真正满足用户的需要 。 所谓“不能真正满足用户的需要”,主要有以下两 种表现: ➢ 一种是开发人员不能完全获 得或不能彻底理解用 户的需求,以致开发出的软件系统与用户预期的系 统不一致,不能满足用户的需要。 ➢ 另一种表现是,所开发出的系统不能适应用户需求 经常变化的情况,系统的稳定性和可扩充性不能满 足要求。
2020/5/4
4
2.软件重用程度很低
重用也称为再用或复用,是指同一事物不经修改或 稍加改动就多次重复使用。
软件重用是节约人力,提高软件生产率的重要途径 。
结构分析、结构设计和结构程序设计(简写为 SA- SD-SP)技术,虽然给软件产业带来了巨大进步, 但却没能很好地解决软件 重用问题。
几乎每次开发一个新的软件系统时,都要针对这个 具体的系统作大量重复而又繁琐的工作。
➢预先定义需求的策略所作的假设,只对某些 软件成立,对于多数软件并不成立。人们为了 充实和细化他们的初步设想,通常需要经过在 某个能运行的系统上的实践过程。
➢项目参与者之间存在通信鸿沟
良好的通信和相互理解对于保证工程成功是至 关重要的。
➢各种文档,本质上是被动、静止的通信工具 2020/5/4 ,通过它们来理解一个动态系统是困难的。 9
➢把处理分解成子处理的过程多少带些任意性,并
且把数据和操作作为分离的实体——可重用性差
2020/5/4
11
2 软件工程的新途径
快速原型法 克服传统方法学的致命弱点——所开发出的系统往往
不能真正满足用户的需要 1.区分两类不同的软件系统 ➢ 一类系统的需求比较稳定而且能够预先指定——预
先指定的系统。开发这类系统应该预先进行严格的 形式化的需求分析,制定出很精确的需求规格说明 ,并在严格管理下采用形式化的开发生命周期。
2020/5/4
29
使用面向对象方法学开发软件时,工作重点是生命 周期中的分析阶段。
在开发的早期阶段定义了一系列面向问题的对象, 并且在整个开发过程中不断充实和扩充这些对象。
对生命周期各阶段的区分不太重要、不明显。分析 阶段得到的对象模型也适用于设计阶段和实现阶段 。
各阶段都使用统一的概念和表示符号,整个开发过 程都是吻合一致的,
2020/5/4
25
三种软件开发模式的软件特点:
1.传统的瀑布模型 ·在开发时期内没有或很少有需求变化; ·对应用领域很熟悉(例如,扩充已存在的系统) ; ·低风险项目(例如,对目标和开发环境很熟悉) ; ·除了在早期阶段,用户对开发工作参与很少; ·要求使用面向过程的编程语言。
2020/5/4
26
2020/5/4
17
面向对象方法学
面向对象方法简介 出发点和基本原则:尽可能模拟人类习惯的思维方
式,使开发软件的方法与过程尽可能接近人类认识 世界解决问题的方法与过程,也就是使描述问题的 问题空间(也称为问题域)与实现解法的解空间( 也称为求解域)在结构上尽可能一致。
2020/5/4
18
面向对象方法的四个要点:
使用完之后就把这种原型系统抛弃掉,然后再重 新建立正式的目标系统。
本质上仍属于瀑布模型,建立原型只不过是一种 辅助性的步骤。
2020/5/4
16
(2)演化原型法(高度迭代的动态方法)
在每次迭代过程中,都要再次分析和确定需求,再 次进行设计,再次实现系统,以及再次进行测试和 评价。
基本作法:分析用户需求——〉实现原型系统—— 〉用户试用意见——〉对原型进行修改和扩充—— 〉用户试用……
2020/5/4
14
原型法的基本思想:
首先建立一个能反映用户主要需求的原型系统,让 用户在计算机上运行、试用这个原型系统,通过实 践,了解未来系统的概貌,提出许多修改意见,根 据这些意见,快速修改原型系统,然后用户再次试 用修改后的原型系统…
用户在试用原型系统的过程中,很容易判断它是否 真正满足自己的业务工作需要。
2020/5/4
13
2.快速原型法简介
快速原型法(原型法):从常规的程序设计方法和 僵化的瀑布模型开发(传统的自顶向下的开发)模 式,飞跃到一种快速、灵活、交互式的软件开发。
其核心是,用交互的、快速建立起来的原型取代了 形式的、僵硬的(不允许更改的)大部头的规格说 明,用户通过在计算机上实际运行和试用原型系统 而向开发者提供真实的反馈意见。
2.螺旋模型 ·在项目开发的早期需求可能有变化; ·对应用领域较熟悉; 中等风险项目(例如,对目标和开发环境较熟悉) ; ·用户不同程度地参与整个项目的开发过程; ·使用面向对象语言或第四代语言。
2020/5/4
27
3.渐增模型 ·在整个开发过程中采求都可能有变化; ·对应用领域不熟悉; .高风险项目。 ·用户完全参与到整个开发过程中; ·使用面向对象语言或第四代语言。
但是,如果在派生类中对某些特性又做了重新描述 ,则在派生类中的这些特性将以新描述为准,也就 是说,低层的特性将屏蔽高层的同名特性。
2020/5/4
21
➢ 对象彼此之间仅能通过传递消息互相联系。
对象与传统的数据有本质区别,它不是被动地等待 外界对它施加操作,相反,它是进行处理的主体, 必须发消息请求它执行它的某个操作,处理它的私 有数据,而不能从外界直接对它的私有数据进行操 作。
软件开发人员首先向用户提供一个“样品”(即原 型系统),用户经过试用向开发人员作出“反馈” 。通过“试用一反馈一修改”的多次反复,最终开 发出真正符合用户需要的应用系统,这就是用原型 法开发软件的优点。
2020/5/4
15
3.用原型法开发软件的过程
(1)抛弃原型法
目的:是评价目标系统的某个(或某些)特性, 以便更准确地确定需求,或者更严格地验证设 计方案。
2020/5/4
3
存在的问题
1.生产率提高的幅度远不能满足需要 生命周期方法学强调需求分析的重要性,强调在每
个阶段结束之前必须进行评审,从而提高了软件开 发的成功率,减少了重大返工的次数; 开发过程中实行严格的质量管理,采用先进的技术 方法(主要是结构分析、设计、编程技术)和软件 工具,也都加快了软件开发的速度。 但开发效率的提高仍然很有限,提高的幅度远远赶 不上对软件产品的需要。 从用户提出要求到他们最终得到所需要的目标系统 ,往往需要经过几年甚至更长的延迟时间。
32
实现对象操作的代码和数据是隐藏在对象内部的, 一个对象好象是一个黑盒子,表示它内部状态的数 据和实现各个操作的代码及局部数据,都被封装在 这个黑盒子内部,在外面是看不见的,更不能从外 面去访问或修改这些数据或代码。
使用对象时只需知道它向外界提供的接口形式而无 须知道它的内部实现算法,不仅使得对象的使用变 得非常简单、方便,而且具有很高的安全性和可靠 性。
一切局部于该对象的私有信息,都被封装在该对象 类的定义中,就好像装在一个黑盒子中一样,在外 界是看不见的,更不能直接使用,这就是“封装性 ”。
2020/5/4
22
OO = Objects + Classes +
Inheritance + Communication with messages
2020/5/4
2020/5/4
➢ 认为客观世界是由各种对象组成的,任何事物都 是对象,复杂的对象可以由比较简单的对象以某 种方式组合而成。
面向对象的软件系统是由对象组成的,软件中的 任何元素都是对象,复杂的软件对象由比较简单的 对象组合而成。
2020/5/4
19
➢ 把所有对象都划分成各种对象类(简称为类, Class),每个对象类都定义了一组数据和一组方法 。数据用于表示对象的静态属性,是对象的状态信 息。
23
2.面向对象方法的主要优点 (1)与人类习惯的思维方法一致 (2)稳定性好 (3)可重用性好 (4)可维护性好
2020/5/4
24
两种新途径的结合
两种新途径并不是相互排斥的,相反,它们是相互 促进相互补充的,很容易把这两种途径结合起来以 获得更好的效果。
面向对象方法所带来的稳定性、可重用性和可维护 性等优点,对于用快速原型法成功地开发软件来说 ,是至关重要的。
2020/5/4
5
3.软件仍然很难维护
传统的生命周期方法学强调文档资料的重要性,规 定最终的软件产品应该由完整、-致的配置成分组 成;在软件开发整个过程中,始终强调软件的可读 性、可修改性和可测试性是软件的重要质量指标。 因此,对这样的软件所进行的维护属于结构化维护 的范畴,可维护性有比较明显的提高,软件从不能 维护变成基本上可以维护。
2020/5/4
28
结构分析、设计技术本质上是线性的,是建立在软 件生命周期概念的基础之上的,这种技术与瀑布模 型紧密地结合在一起。
面向对象的软件技术并不是基于某种开发模式的技 术,它既可以用于瀑布模式中也可以用于螺旋模式 或渐增模式中。
使用面向对象方法学开发软件时,可以采用最适用 于所开发软件特点的开发模式。
2020/5/4
7
相关文档
最新文档