软件工程导论名词
软件工程导论

软件工程导论软件工程导论简介:软件工程导论是计算机科学与技术专业中的一门重要课程,旨在向学生介绍软件工程的基本概念、原理、方法和技术等内容。
本文将从软件工程的定义、发展历程、重要性以及软件生命周期等方面,全面介绍软件工程导论的相关知识。
一、软件工程的定义软件工程是一门应用科学,它利用系统化、规范化和可量化的方法,以经济、可靠的方式开发和维护软件。
软件工程的目标是提供高质量的软件产品,以满足用户的需求。
二、软件工程的发展历程1. 软件危机时期20世纪60年代至70年代初,软件产业发展迅猛,但由于软件开发过程中的高风险和高不确定性,导致了大量软件项目的失败和超支,人们逐渐意识到软件工程的重要性。
2. 软件工程的提出1972年,瑞士学者Dijkstra发表了《软件工程的未来》一文,正式提出了软件工程这一概念,强调了对软件开发过程进行工程化管理的必要性。
3. 软件工程的发展随后,软件工程逐渐成为一个独立的学科,并在学术界和工业界得到了广泛的应用和推广。
软件工程的理论和方法也日益完善,其中包括需求分析、软件设计、编码、测试等一系列开发过程中的关键技术。
三、软件工程的重要性1. 提高软件质量软件工程以系统化和规范化的方式进行软件开发,通过严格的质量控制和测试,大大提高了软件产品的质量,降低了软件缺陷和故障的发生率。
2. 提高开发效率软件工程引入了各种开发工具和方法,帮助开发人员提高开发效率,减少重复劳动,提高工作效能。
3. 减少开发成本通过软件工程的管理方法和技术手段,能够有效控制软件开发过程中的风险和成本,及时发现和处理问题,从而降低开发成本。
四、软件生命周期1. 需求分析阶段需求分析是软件开发过程中的第一步,旨在确定用户的需求和期望,并将其转化为形式化的需求规格。
2. 设计阶段设计阶段依据需求分析的结果,将软件系统划分为模块,并确定各个模块的功能和接口。
3. 编码阶段在编码阶段,开发人员根据设计文档编写源代码,并进行单元测试和集成测试。
软件工程导论(整理)

软件工程导论(整理)软件工程导论软件工程导论是计算机科学与技术专业的一门重要课程,通过对软件工程的基本概念、方法和技术进行介绍和讲解,使学生对软件开发过程有全面的认识。
本文将从软件工程的定义与特点、软件生命周期、软件开发方法和软件工程的挑战等方面进行论述。
一、软件工程的定义与特点软件工程是指研究和应用科学原理、方法和工具,对软件进行全面的规划、开发、测试、部署和维护的一门工程学科。
软件工程具有以下特点:1. 抽象性:软件是虚拟存在,不同于硬件,具有高度的抽象性。
2. 复杂性:软件开发是一项复杂的任务,涉及多个环节和多个参与者之间的协同合作。
3. 可变性:软件需求会随着时间和需求的变化而变化,需要具备良好的变更管理能力。
4. 可靠性:软件在使用过程中需要具备稳定、健壮和可靠的特性。
5. 可维护性:软件应该具备良好的可维护性,便于后续对其进行修改和维护。
二、软件生命周期软件生命周期是指软件从提出到退役的全过程,一般包括需求分析、设计、编码、测试、部署和维护等阶段。
1. 需求分析:明确用户需求,采集并分析用户的需求,形成软件的需求规格说明。
2. 设计:根据需求分析的结果,进行系统的设计,包括软件架构设计、模块设计等。
3. 编码:根据设计结果,进行具体代码的编写,实现软件的功能。
4. 测试:对编码后的软件进行测试,验证软件是否满足需求并具备稳定性。
5. 部署:将测试通过的软件部署到目标环境中,进行系统集成和性能调优等操作。
6. 维护:对已发布的软件进行修改、优化、升级和Bug修复等工作,确保软件持续稳定运行。
三、软件开发方法软件开发方法是指用于规范和指导软件开发过程的方法论和模型。
其中较为常见的软件开发方法有瀑布模型、迭代模型和敏捷开发等。
1. 瀑布模型:瀑布模型是软件开发过程中最早提出的方法之一,将软件开发过程划分为需求分析、设计、开发、测试和维护等阶段,每个阶段按顺序进行。
2. 迭代模型:迭代模型将软件开发过程划分为多个迭代周期,每个周期完成一部分需求的开发和测试,并通过反复迭代逐步完善软件。
张海藩《软件工程导论》(第6版)笔记和课后习题详解

9.2课后习题详 解
10.1复习笔记
10.2课后习题 详解
11.1复习笔记
11.2课后习题 详解
12.1复习笔记
12.2课后习题 详解
13.1复习笔记
13.2课后习题 详解
作者介绍
同名作者介绍
读书笔记
读书笔记
这是《张海藩《软件工程导论》(第6版)笔记和课后习题详解》的读书笔记模板,可以替换为自己的心得。
目录分析
1.1复习笔记
1.2课后习题详 解
2.1复习笔记
2.2课后习题详 解
3.1复习笔记
3.2课后习题详 解
4.1复习笔记
4.2课后习题详 解
5.1复习笔记
5.2课后习题详 解
6.1复习笔记
6.2课后习题详 解
7.1复习笔记
7.2课后习题详 解
8.1复习笔记
8.ห้องสมุดไป่ตู้课后习题详 解
9.1复习笔记
张海藩《软件工程导论》(第6 版)笔记和课后习题详解
读书笔记模板
01 思维导图
03 目录分析 05 读书笔记
目录
02 内容摘要 04 作者介绍 06 精彩摘录
思维导图
本书关键字分析思维导图
导论
知识点
软件
习题
概述
答案
可行性
第版
教材
笔记 复习
研究
工程
习题
需求
笔记
面向对象
分析
技术
内容摘要
内容摘要
作为该教材的辅导书,本书具有以下几个方面的特点:1.整理名校笔记,浓缩内容精华。在参考了国内外名 校名师讲授张海藩《软件工程导论》的课堂笔记基础上,本书每章的复习笔记部分对该章的重难点进行了整理, 同时对重要知识点进行点拨,因此,本书的内容几乎浓缩了配套教材的知识精华。2.解析课后习题,提供详尽答 案。本书参考大量软件工程导论相关资料对该教材的重难点课(章)后习题进行了详细的分析和解答,并对相关 重要知识点进行了延伸和归纳。要深深牢记:考研不同一般考试,概念题(名词解释)要当作简答题来回答,简 答题要当作论述题来解答,而论述题的答案要像是论文,多答不扣分。有的论述题的答案简直就是一份优秀的论 文(其实很多考研真题就是选自一篇专题论文),完全需要当作论文来回答!
软件工程导论知识点总结

软件工程导论知识点总结软件工程导论知识点总结1. 软件工程概述1.1 什么是软件工程软件工程是一门研究如何有效地开发、维护和管理软件系统的学科。
它基于工程原理和方法,将系统化的、规范化的方法应用于软件开发过程中,以提高软件的质量、可靠性和可维护性。
1.2 软件工程的重要性在当今日益发展的信息技术领域,软件已经成为各个行业和领域中不可或缺的核心组成部分。
软件工程的实践使得软件开发更加可控,能够满足用户需求,提高软件质量,降低开发和维护成本。
1.3 软件工程的原则软件工程有一些核心原则,包括适应性、可理解性、一致性、可复用性和可维护性。
这些原则帮助开发人员创建高质量的软件,并确保软件在不同环境下的可靠性和安全性。
2. 软件开发过程2.1 软件开发生命周期软件开发生命周期是指从软件概念形成到软件退役的整个过程。
常见的软件开发生命周期模型包括瀑布模型、迭代模型和敏捷模型。
2.2 瀑布模型瀑布模型是一种线性的软件开发过程模型,包括需求分析、设计、编码、测试和维护五个阶段。
每个阶段都有明确的输入和输出,下一个阶段在前一个阶段完成后开始。
2.3 迭代模型迭代模型是一种循序渐进的软件开发过程模型,将软件开发分为多个迭代周期。
每个迭代周期包括需求分析、设计、编码、测试和评审阶段。
每个迭代周期都会产生一个可执行的软件版本。
2.4 敏捷模型敏捷模型强调迭代和反馈,在软件开发过程中更加注重灵活性和适应性。
常用的敏捷开发方法包括Scrum和XP(极限编程)等。
3. 软件开发方法与工具3.1 需求工程需求工程是软件工程的关键环节,用于确定用户需求并转化为可行的软件规格说明。
需求工程包括需求获取、需求分析、需求建模和需求验证等阶段。
3.2 架构设计架构设计为软件系统提供了一个稳定的基础,确定系统各个组件之间的关系和交互方式。
常用的架构设计模式包括模块化、层次化、客户端-服务器和MVC等。
3.3 编程与测试编程是将设计转化为可执行代码的过程,而测试是验证代码是否达到预期功能的过程。
张海藩《软件工程导论》(第6版)(名校考研真题 名词解释)【圣才出品】

四、名词解释1.概要设计[中国传媒大学2014研]答:概要就是回答“概括地说,系统应该如何实现”这个问题。
概要设计站在全局高度上,花较少成本,从较抽象的层次上分析对比多种可能的系统实现方案和软件结构,从中选出最佳方案和最合理的软件结构。
2.问题分析图PAD[中国传媒大学2014研]答:问题分析图(PAD)是由程序流程图演化而来,用二维树形结构的图来表示程序的控制流,将其翻译成程序代码比较容易。
它既可以用来表示程序逻辑,也可以用来描述数据结构,支持结构化程序设计(SP)方法,仅具有顺序、选择、循环三类基本成分。
3.UML[中国传媒大学2014研]答:UML又称统一建模语言或标准建模语言,它是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,包括由需求分析到规格,到构造和配置。
4.多态性[中国传媒大学2014研]答:多态性是指同一消息为不同的对象接受时,可产生完全不同的动作,利用多态性,用户可发送一个通用的消息,而将所有的实现细节都留给接受消息的对象自行决定。
另外,多态性也可以指在父类中定义的属性或者服务被子类集成后,可以具有不用的数据类型或者表现出不同的行为。
5.边界值分析法[中国传媒大学2014研]答:边界值分析是选取刚好等于、稍小于和稍大于等价类边界值的数据作为测试数据,而不是选取每个等价类内的典型值或任意值作为测试数据,它是对等价类划分方法的补充。
边界值分析法是一种重要的黑盒测试方法。
6.软件再工程[中国传媒大学2014研]答:软件再工程是运用逆向工程、重构等技术,在充分理解原有软件的基础上,进行分解、综合、并重新构建软件,用于提高软件的可理解性、可维护性、可复用性。
它指的是对既存对象系统进行调查,并将其重构为新形式代码的开发过程,它的重要特点是能最大限度的重用既存系统的各种资源。
7.信息隐藏[中国传媒大学2013研]答:信息隐藏在信息安全保障体系的诸多方面发挥着重要作用,它指的是在设计和确定模块时,使得一个模块内包含的信息(过程或数据),对不需要这些信息的其他模块来说,是不能访问的,也是不可见的。
软件工程导论复习题及答案详解

第一章一、名称解释1.软件2.文档3.软件工程4.软件生存周期5.软件工程过程6.软件生存周期模型7.软件开发方法8.软件工具二、填空题1.构成一个完整计算机系统的两部分是硬件与________。
2.程序设计时代的生产方式是________。
3.软件工程涉及到几个学科,它是一门_____学科。
4.软件开发划分的各阶段任务尽可能独立,同一阶段任务性质尽可能________。
5.将软件生存周期各个活动规定为依线性顺序联接的若干阶段的模型是________模型。
6.喷泉模型是一种以用户需求为动力,以_______为驱动的模型。
7.结构化方法是一种面向数据流的开发方法。
由结构化分析、_______、结构化程序设计构成。
8.软件工程研究的主要内容是软件开发管理和_______两个方面。
9.软件工具是支持软件开发人员的开发和维护活动而使用的________。
10.一个软件项目的开发中,要采用一种生存周期模型,要按照某种________,使用相应的工具来进行。
三、选择题1.软件是一种( )产品。
A.物质B.逻辑C.有形D.消耗2.软件产品的开发主要是( )。
A.复制B.再生产C.拷贝D.研制3.个体手工劳动生产方式的时代是( )。
A.程序设计B.软件生产自动化C.程序系统D.软件工程4.与计算机科学的理论研究不同,软件工程是一门( )学科。
A.理论性B.原理性C.工程性D.心理性5.软件重用的单位是( )。
A.软件模块B.性能C.系统D.功能6.软件开发费用只占整个软件系统费用的( )。
A.1/2B.1/3C.1/4D.2/37.软件开发中大约要付出( )%的工作量进行测试和排错。
A.20B.30C.40D.508.准确地解决“软件系统必须做什么”是( )阶段的任务。
A.可行性研究B.需求分析C.详细设计D.编码9.软件生存周期中最长的是( )阶段。
A.需求分析B.概要设计C.测试D.维护四、简答题1.软件产品的特性是什么?2.软件生产有几个阶段?各有何特征?3.什么是软件危机?产生的原因是什么?4.软件工程的性质、目标和内容是什么?5.软件工程面临的问题是什么?6.软件工程过程有哪些过程?7.软件生存周期有哪几个阶段?8.软件生存周期模型有哪些主要模型?9.有哪些主要软件开发方法?参考答案二填空题1.软件 2.个体手工劳动3.综合性交叉 4.相同5.瀑布 6.对象7.结构化设计8.软件开发技术9.软件10.开发方法三、选择题1.B 2.D 3.A 4.C5.A 6.B 7.C 8.B 9.D第二章一、名称解释1.可行性研究2.技术可行性3.经济可行性4.社会可行性5.货币时间价值6.投资回收期7.纯收入8.系统流程图二、填空题1.可行性研究的目的是用最小的代价,在尽可能短的时间内,确定________。
软件工程导论 复习资料

软件工程导论复习资料软件工程导论是计算机科学与技术专业的一门重要课程,它主要介绍了软件工程的基本概念和原理,帮助学生了解软件开发过程中的关键问题和解决方法。
本文将为大家提供一份软件工程导论的复习资料,希望能够帮助同学们更好地复习和掌握这门课程。
1. 软件工程概述1.1 软件工程定义软件工程是一门关于开发和维护大规模软件的学科,它涉及到软件开发的各个阶段和过程。
软件工程的目标是通过系统化和可量化的方法来开发、维护和管理软件,以提高软件的质量、效率和可靠性。
1.2 软件生命周期软件生命周期是软件开发过程中的一个重要概念,它包括需求分析、设计、编码、测试、部署和维护等阶段。
了解软件生命周期的各个阶段和活动,对于理解软件开发过程的全貌和整体把控至关重要。
1.3 软件工程方法学软件工程方法学是用于指导软件开发过程的一种方法体系,包括传统的瀑布模型、敏捷开发方法、迭代开发方法等。
通过学习不同的软件工程方法学,可以使软件开发过程更加有序、高效。
2. 需求工程2.1 需求定义和分类需求工程是软件开发过程中的第一个阶段,它主要涉及到需求的定义、分析和规范化等活动。
了解需求的定义和分类能够帮助我们更好地理解用户的需求,从而制定出更准确的软件需求规格说明书。
2.2 需求获取和分析需求获取是收集用户需求信息的过程,需求分析是将这些需求信息进行过滤、分类和分析的过程。
在需求获取和分析阶段,我们需要使用一些常见的工具和技术,例如面谈、问卷调查、用例图等。
2.3 需求规格说明书需求规格说明书是对系统需求进行详细描述和规范的文档,它包括功能需求、非功能需求、性能需求等内容。
编写清晰、准确的需求规格说明书是软件开发过程中的关键一步,它对于后续的设计和编码工作具有重要的指导作用。
3. 软件设计3.1 软件设计基础软件设计是将需求转化为软件结构的过程,它包括模块化设计、面向对象设计、数据结构设计等。
掌握软件设计的基础知识,能够帮助我们合理划分系统的功能模块,提高软件的可维护性和可扩展性。
软件工程导论知识点

软件工程导论知识点软件是程序、数据及相关文档的完整集合。
其中,程序是能够完成预定功能和性能的可执行的指令序列;数据是使程序能够适当地处理信息的数据结构;文档是开发、使用和维护程序所需要的图文资料。
开发软件时,对于提高软件开发人员工作效率至关重要的是开发程序人员数量。
软件工程中描述软件生存周期的瀑布类型一般包括计划、需求分析、设计、编码、测试、维护等几个阶段。
其中,设计阶段在治理上可以依次分成概要设计和详细设计两个步骤。
在结构化的分析方法中,用以表达系统内数据的运行情况的工具有数据流图。
在结构化的分析方法中,用实体关系图表达系统中的对象及其进展,在实体关系图中,表达对象和实体关系之间的关联有三种类型:一对一联系,一对多联系,多对多联系。
软件需求分析的任务,不应包括结构化程序设计,进行需求分析可使用多种工具,但判定表是不适用的,在需求分析中,分析员要从用户那里解决的最重要的问题是要让软件做什么。
规格说明书的内容不应当包括对算法详细功能性描述,该文档在开发中具有重要的作用,但其作用不应包括软件可行性分析的依据。
原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于需求不确定性高的系统,它从用户界面的开发入手,首先形成系统界面原型,用户运行用户界面原型,并就同意什么和不同意什么提出意见。
一个模块的多个下属模块在系统结构图中所处的左右位置是无关紧要的。
一组语句在程序中多处出现,为了节省内存空间,把这些语句放在一个模块中,该模块的内聚性是偶然内聚的。
将几个逻辑上相似的成份,放在同一个模块中,通过模块入口的一个推断决定执行哪一个功能,该模块的内聚性是逻辑内聚的。
模块中所有成份引用共同的数据,该模块的内聚性是通信内聚的。
模块内的某成份的输出是另一些成份的输入,该模块的内聚性是顺序内聚的。
模块中所有成份结合起来完成一项任务,该模块的内聚是功能内聚。
模块化程序设计:1.便于由多人分工编制大型程序。
2.软件功能易于扩充。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、什么是软件?
答:1).满足功能要求和性能的指令或计算机程序集合; 2.)处理信息的数据结构;3.)描述程序功能以及程序如何操作和使用所要求的文档;
2、软件危机定义:软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
3、软件工程定义:软件工程是指导计算机软件开发和维护的一门工程学科。
采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地、高效的开发出高质量的软件并有效地维护它,这就是软件工程。
4、软件生存周期:一个软件从开始计划起,到废弃不用止,称为软件的生存周期。
5、瀑布模型:即生存周期模型,是软件工程的基础模型。
其核心思想是按工序将问题化简,将功能的实现与设计分开,便于分工协作。
6、增量模型:是瀑布模型的顺序特征与快速原型法德迭代特征相结合的产物。
这种模型把软件看成一系列相互联系的增量,在看法过程的各次迭代中,每次完成其中的一个增量。
7、快速原型:是快速建立起来的可以在计算机上运行的程序,它所能完成的功能往往是最终产品能完成的功能的一个子集。
快速原型模型的第一步是快速建立一个能反映用户主要需求的原型系统,让用户在计算机上试用它,通过实践来了解目标系统的概貌
8、可行性研究:
可行性研究的目的:就是用最小代价在尽可能短的时间内确定问题是否能够解决。
9、需求分析:
需求分析的任务:它的基本任务是准确地回答“系统必须做什么?”这个问题。
需求分析的任务不是确定系统如何完成它的工作,而是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。
10、数据流图:是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。
(或者:数据流图:它以图形的方式反映系统的数据流程)
11、数据词典:是描述数据信息的集合,它对数据流图中的各个元素按规定格式进行详细的描述和确切的解释,是数据流图的补充工具。
12、概要设计:又称为总体设计或初步设计,总体设计过程通常由两个主要阶段组成:系统设计阶段,确定系统的具体实现方案;结构设计阶段,确定软件结构。
13、模块:是由边界元素限定的相邻程序元素的序列,而且有一个总体标识符代表它。
14、信息隐蔽:模块中所包括的信息不允许其它不需这些信息的模块调用
15、内聚:一个模块内部各个元素彼此结合的紧密程度的度量。
内聚性。
又称块内联系。
指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。
若一个模块内各元素(语句之间、程序段之间)联系得越紧密,则它的内聚性就越高。
16、耦合:一个软件结构内不同模块之间互连程度的度量。
耦合性。
也称块间联系。
指软件系统结构中各模块间相互联系紧密程度的一种度量。
模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。
模块间耦合高低取决于模块间接口的复杂性、调用的方式及传递的信息。
17、PAD图:是问题分析图的英文缩写,它是用结构化程序设计思想表现程序逻辑结构的图形工具。
PAD图也设置了五种基本控制结构的图示,并允许递归使用。
18、PDL:过程设计语言(PDL)也称伪码,它是正文形式表示数据和处理过程的设计工具。
19、详细设计:
20、Jackson设计方法:Jackson方法是最著名的面向数据结构的设计方法,而不是面向数据流的设计方法。
它是以信息驱动的,是将信息转换成软件的程序结构
21、程序设计风格:编码风格又称程序设计风格或编程风格,实际上指编程的原则。
表现为五个方面:
源程序文档化:符号名的命名、程序的注释、标准的书写格式
22、软件测试目标: 测试是为了发现程序中的错误而执行程序的过程
23、黑盒测试(功能测试):如果已经知道了产品应该具有的功能,可以通过测试来检验是否每个功能都能正常使用。
P151
(或者:黑盒测试——按照程序的功能测试程序,检验与程序功能有关的输入、输出与程序执行是否正确。
有四种方法既等价分类法、边界值分析法、错误猜测法和因果图法)24、白盒测试(结构测试):如果知道产品内部工作过程,可以通过测试来检验产品内部动作是否按照规格说明书的规定正常进行。
P151
(或者:白盒测试——按照程序内部的结构测试程序,检验程序中的每条路径是否都能按预定要求正确工作。
有两种测试法既逻辑覆盖测试法和路径测试法.)
25、软件测试步骤:
1)单元测试(模块测试) 2).子系统测试3). 系统测试 4). 验收测试(确认测试)5.)平行运行 P151
26、渐增式测试方式:把下一个要测试的模块同已经测试好的那些模块结合起来进行测,测试完后再把下一个应该测试的模块结合起来进行测。
P157
27、非渐增式测试方式:分别测试模块,再把所有模块按设计要求放在一起组成所要的程序。
P157
28、调试:是在测试发现错误之后排除错误的过程。
P176
29、软件维护的定义:所谓软件维护就是在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程。
30、改正性维护:纠正开发期间未发现的遗留错误,即在程序使用期间发现的程序错误进行诊断和改正的过程;
31、适应性维护:是为了和变化的环境适当地配置而进行的修改软件的活动,是既必要又经常的维护活动。
是软件适应新的运行环境而进行的工作;
32、完善性维护:满足用户在使用过程中提出增加新的功能或修改已有功能,以满足用户日益增长的需要而进行的工作;该维护活动通常占软件维护工作的大部分;
33、预防性维护:为了改善未来的可维护性或可靠性而修改软件的工作。
34、面向对象方法:
面向对象方法的出发点和基本原则:是尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界解决问题的方法与过程,也就是使描述问题的问题空间(也称问题域)与现实解法的解空间(也称求解域)在结构上尽可能一致。
35、对象是对问题域中某个实体的抽象,设立某个对象就反映了软件系统具有保存有关它的信息并且与它进行交互的能力。
P209
面向对象方法学中的对象是由描述该对象属性的数据以及可以对这些数据施加的所有操作封装在一起构成的统一体。
. P209
36、类:用于表示某些对象的共同特征(属性和操作),对象是类的实例。
(类是支持继承的抽象数据类型,而对象就是类的实例。
P211)
37、属性:属性就是类中定义的数据,它是对客观世界实体所具有的性质的抽象。
P212
38、方法:方法就是对象所能执行的操作,也就是类中所定义的服务。
方法描述了对象执行操作的算法,响应消息的方法。
P212
39、消息:就是要求某个对象执行在定义它的那个类中所定义的某个操作的规格说明书。
P212
40、对象模型:对象模型表示静态的、结构化的系统的“数据”性质。
它是对模拟客观世界实体的对象以及对象彼此间的关系的映射,描述了系统的静态结构。
P216
41、动态模型:它是基于事件共享而相互关联的一组状态图的集合。
P224
42、功能模型:功能模型表示变化的系统的“功能”性质,它指明了系统应该“做什么”,因此更直接地反映了用户对目标系统的需求。
通常,功能模型由一组数据流图组成。
43、状态图:状态转换图(简称状态图)通过描绘系统的状态及引起系统状态转换的事件,来表示系统的行为。
P65
44、用例图:
一幅用例图包含的模型元素有系统、行为者、用例及用例之间的关系。
P224
45、民主程序员组:
46、主程序员组:
47、判定树:
判定树的优点:它的形式简单到不需要任何说明,一眼就可以看出其含义,因此易于掌握和使用。
48、判定表:能够清晰地表示复杂的条件组合与应该做的动作之间的关系。