为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 软件工程李爱萍 作业参考答案-最终版修改

软件工程李爱萍 作业参考答案-最终版修改

2021-02-22 7页 doc 2MB 202阅读

用户头像 机构认证

峰海资料库

希望这份文档帮到您

举报
软件工程李爱萍 作业参考答案-最终版修改软件工程李爱萍作业参考答案-最终版修改第一章什么是软件软件和程序的区别是什么答:⑴软件是程序、数据以及开发、使用和维护程序需要的所有文档的完整集合。软件的定义是:计算机程序、方法、规则、相关的文档资料以及在计算机上运行程序时所必须的数据。⑵软件不是程序,程序是软件的一部分。程序是为了解决某个特定问题而用程序设计语言描述的适合计算机处理的语句序列。它是由软件开发人员设计和编码的。程序执行时一般要输入一定的数据,也会输出运行的结果。没有相关文档,仅有程序是不能称之为软件产品的。什么是软件生存周期划分生存周期的主要原则是什么答:(1...
软件工程李爱萍 作业参考答案-最终版修改
软件工程李爱萍作业参考答案-最终版修改第一章什么是软件软件和程序的区别是什么答:⑴软件是程序、数据以及开发、使用和维护程序需要的所有文档的完整集合。软件的定义是:计算机程序、方法、规则、相关的文档资料以及在计算机上运行程序时所必须的数据。⑵软件不是程序,程序是软件的一部分。程序是为了解决某个特定问题而用程序语言描述的适合计算机处理的语句序列。它是由软件开发人员设计和编码的。程序执行时一般要输入一定的数据,也会输出运行的结果。没有相关文档,仅有程序是不能称之为软件产品的。什么是软件生存周期划分生存周期的主要原则是什么答:(1)软件的生存周期是指某一软件项目被提出并着手实现开始,直到该软件报废或停止使用为止所经历的时间。(2)主要原则:各阶段的任务彼此间尽可能相对独立,同一个阶段各项任务的性质尽可能相同,从而降低每个阶段任务的复杂性,简化不同阶段之间的联系,有利于软件开发过程的组织管理。1.3什么是软件危机它有哪些主要表现为什么会产生软件危机答:(1)软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。(2)主要表现:对软件开发成本和研制进度的估计常常很不精确,导致经费预算经常突破,进度超时完成;由于开发人员常常对用户需求只有模糊的了解以及开发人员和用户又未能及时交换意见,导致已完成的软件不能满足用户的需要;软件产品质量差,可靠性得不到保证;软件产品可维护性差;软件成本在计算机系统总成本中所占的比例逐年上升,软件的发展跟不上硬件的发展;软件开发生产率提高的速度远远跟不上计算机应用速度普及深入趋势,软件发展跟不上用户的要求。(3)产生软件危机的原因:造成软件危机的原因与软件自身的特点有关,也与软件开发人员在开发和维护时采用的生产方式、方法、技术有关。软件是计算机系统中的逻辑部件,软件产品往往规模庞大,结构复杂。给软件的开发和维护带来客观的困难;软件开发的管理困难。由于软件规模大、结构复杂、又具有无形性,导致管理困难,进度控制困难,可靠性无法保证;软件开发费用不断增加,维护费用急剧上升,直接威胁计算机应用的扩大;软件开发技术落后;生产方式落后;开发工具落后,生产效率提高缓慢。另外软件开发人员忽视需求分析的重要性,轻视软件维护也是造成软件危机的原因。什么是软件工程怎样利用软件工程消除软件危机答:(1)软件工程是指导计算机软件开发和维护的一门学科(2)首先应该对计算机软件有一个正确的认识,彻底清除“软件就是程序”的错误观念;要使用好的开发技术和方法,并且要不断研究探索更好更有效的技术和方法;要有良好的组织、严密的管理,各类人员要相互配合,共同完成任务,充分认识软件开发不是某种个体劳动的神秘技巧;应该开发和使用好的软件工具,从而有效提高软件生产率。采用“工程化”的思想做指导来解决软件研究中面临的困难和混乱。何谓面向对象软件工程简述它和传统软件工程的区别与联系答:(1)以面向对象程序设计为基础的软件工程。(2)传统软件工程是以结构化程序设计为基础,而面向对象软件工程是以面向对象程序设计为基础。与面向过程的软件工程的开发思想相比,面向对象开发方法不再是以功能划分为导向,而是以对象作为整个问题分析的中心,围绕对象展开系统的分析与设计工作。在开发过程方面,面向对象软件工程和传统软件工程一样也是把软件开发划分为分析、设计、编码和测试等几个阶段,但各个阶段的具体工作不同,除了在编码阶段使用的语言不同外,面向对象软件工程为待开发软件确定“类与对象”一般在需求分析阶段进行,设计阶段则主要完成对象内部的详细设计;而在传统软件工程中,将软件设计划分为“总体设计”和“详细设计”,分别完成软件的总体结构图的设计和各个模块内部算法的详细设计。即:传统软件工程开发过程包括需求分析、总体设计、详细设计、面向过程的编码和测试;面向对象软件工程开发过程包括需求分析与对象抽取、对象详细设计、面向对象的编码和测试。什么是软件生存周期模型试比较本章介绍的四种模型的优缺点,说明每种模型的使用范围答:(1)软件生存周期模型即为软件开发模型,是描述软件开发过程中各种活动如何执行的模型,是软件过程、活动、任务的结构框架。优点缺点适用范围瀑布模型能清晰直观地表达软件开发全过程,明确规定要完成的主要活动和任务,用来作为软件项目工作的基础。只有当分析员能够做出准确的需求分析时,才能得到预期的正确结果。它是一种理想的线性开发模式,缺乏灵活性,特别是无法解决软件需求不明确或不准确的问题。适合于需求很明确的软件项目开发的模型,对于经常变化的项目而言,瀑布模型毫无价值。快速原型模型通过实践让用户了解未来目标系统的概貌,以便判断哪些功能是符合需要的,哪些方面需要改进。反复改进,最终建立完全符合用户需求的新系统。克服瀑布模型的缺点,减少由于软件需求不明确带来的开发风险。这种模型适合预先不能确切定义需求的软件系统的开发。在实际中开发原型系统使用的语言效率有时会很低,所选用的开发技术和工具不一定符合主流的发展;快速建立起来的系统结构加上连续的修改可能会导致产品质量低下。适合于一些需求可变、模糊不定的软件系统的开发增量模型有较大的灵活性。能够在较短的时间内向用户提交一些有用的工作产品。开发出一部分,向用户展示一部分,可让用户及早看到部分软件,及早发现问题。整个系统是由一个个构件集成在一起的,当需求变更时只变更部分部件,而不必影响整个系统。各个构件是逐渐并入已有的软件体系结构中的,所以加入构件必须不破坏已构造好的系统部分,冒所有构件集成不到一起的风险。适合于软件要求不明确,#设计#有一定风险的软件项目。螺旋模型加入了瀑布模型与增量模型都忽略了的风险分析,使用原型及其他方法来尽量降低风险该模型需要有相当丰富的风险评估经验和这方面的专门技术,这使该模型的应用受到一定限制。将瀑布模型和快速原型模型结合起来,强调了其他模型所忽视的风险分析,特别适合于大型复杂的系统。第二章在软件开发早期阶段为什么要进行可行性研究可行性研究的任务是什么应该从哪几个方面研究目标系统的可行性答:(1)避免或者减轻项目开发后期可能出现的困境。(2)其主要任务是,首先需要进行概要的分析研究,初步确定项目的规模和目标,确定项目的约束和限制,必须分析几种可能解法的利弊,从而判定原定系统的目标和规模是否现实,系统完成后带来的效益是否大到值得投资开发这个系统的程度。(3)经济可行性、技术可行性、操作可行性、法律可行性。2.2成本—效益分析可用哪些指标进行度量答:成本方面包括开发成本和运行维护成本;效益方面包括经济效益和社会效益,经济效益可以用货币的时间价值、投资回收期、纯收入来度量。2.3有人认为,只懂技术的分析员不一定能圆满完成可行性研究的任务。你同意这种看法吗为什么答:同意。因为可行性研究的任务包括三个方面,除了技术可行性之外,还需要进行经济可行性、操作可行性、社会和法律方面的可行性研究,而只懂技术的分析员对其他方面的研究有可能不满足用户的要求,所以只懂技术的分析员不一定能圆满完成可行性研究的任务。2.4在【例】中,把投资改为6000元,每年节约金额改为2000元,年利率为6%,试计算投资回收期和纯收入。解:如下表年将来值(元)(1+n*I)现在值(元)累计的现在值(元)1234520002000200020002000投资回收期为/+3=(年)纯收入为=(元)2.5为方便旅客,某航空公司拟开发一个飞机票预定系统。旅游公司把预定机票的旅客信息(姓名、年龄、工作单位、身份证号码、旅游时间、旅游目的地等)输入进该系统,系统为旅客安排航班,打印出取票通知和账单,旅客在飞机起飞前的3天之内凭取票通知和账单交款取机票,系统校对无误即打印出飞机票给旅客。请写出开发此系统的问题定义,并通过可行性研究分析此系统的可行性。答:问题定义:飞机票预定系统主要实现以下功能:查询功能:把旅游时间、旅游目的地等输入进该系统,系统显示符合要求的航班。预定机票:把预定机票的旅客信息(姓名、年龄、工作单位、身份证号码、旅游时间、旅游目的地等)输入进该系统,系统为旅客安排航班,打印出取票通知和账单,并更新记录。校对并打印机票:旅客在飞机起飞前的3天之内凭取票通知和账单交款取机票,系统校对无误即打印出飞机票给旅客。可行性研究应从经济可行性、技术可行性、操作和社会、法律的角度阐述其可行性,这部分省略……试为习题写可行性研究报告的主要内容。(本题略)第三章为什么要进行需求分析需求分析要经过哪些步骤答:(1)可行性研究阶段粗略了解了用户的需求,甚至还提出了一些可行的方案,但是可行性研究的基本目的是最小的代价在尽可能短的时间内确定问题是否存在可行的解法,因此许多细节都被忽略了,可行性研究并不能代替需求分析,它实际上并没有准确地回答“系统必须做什么”这个关键问题。(2)步骤:1.需求获取:调查研究。从分析当前系统包含的数据开始,分析当前信息处理的方法与存储的不足,用户希望改进的主要问题及其迫切性等。2.需求提炼:分析建模。需求提炼的主要任务是建立分析模型。把来自用户的信息加以分析,通过抽象建立起目标系统的分析模型。3.需求描述:编写SRS。为了使需求描述具有统一的风格,可以采用已有的且可满足项目需要的模板,也可以根据项目特点和软件开发小组的特点,对进行适当的改动,形成自己的SRS模板。4.需求验证。由分析员和用户一起对需求分析结果进行严格的审查、验证。确保需求说明可作为软件设计和最终系统验收的依据。需求分析阶段的基本任务是什么怎样理解分析阶段的任务是决定“做什么”,而不是“怎样做”答:(1)1.确定对系统的综合需求。分析员和用户双方确定对软件系统的综合要求,具体有功能需求、性能需求、环境需求、接口要求、用户界面需求,另外还有可靠性、安全性、保密性、约束、可移植性和可维护性等方面的需求,这些需求通常可以通过双方交流、调查研究来获取,并达到共同的理解。2.分析系统的数据需求。因为绝大多数软件系统本质上都是信息处理系统,系统必须处理的信息和系统应该产生的信息在很大程度上决定了系统的面貌。3.建立软件的逻辑模型。4.编写软件需求规格说明书。目的是使用户和开发者能对未来软件有共同的理解,明确定义未来软件的需求、系统的构成及有关的接口。需求说明相当于用户和开发者之间的一份技术合同,是测试验收阶段对软件进行确认和验收的基准,是软件开发的基础。5.需求分析评审(2)需求分析实际上是调查、评价以至肯定用户对软件需求的过程,其目的在于精化软件的作用范围,也是分析和确认软件系统构成的过程,以确定未来系统的主要成分及它们之间的接口细节。因此需求分析实际上是一个对用户意图不断进行揭示和判断的过程,它并不考虑系统的具体实现,而是完整地、严密地描述应当“做什么”的一种过程。什么是结构化分析方法该方法使用什么描述工具答:(1)结构化分析方法是一种从问题空间到某种表示的映射方法,软件功能由数据流图表示,是结构化方法中重要的,被普遍采用的方法,它由数据流图和数据字典构成系统的逻辑模型。(2)数据流图、数据字典、结构化语言、判定树和判定表。什么是数据流图其作用是什么其中的基本符号各表示什么含义答:(1)数据流图是SA方法中用于表示系统逻辑模型的一种工具。(2)它描述系统由哪几部分组成,各部分之间的联系等,以直观的图形清晰地描述了系统数据的流动和处理过程。(3)→箭头,表示数据流;○圆或椭圆,表示变换数据的处理;□方框,表示数据的三原点或终点;=双杠或单杠,表示数据存储(文件)。除上述4种基本符号之外,有时也使用几种附加符号,星号(*)表示数据之间的关系(同时存在);加号(+)表示“或”关系,⊕号表示只能从中选一个(互斥的关系)。画数据流图的步骤是什么应该注意什么事项答:(1)第一步,先找外部实体(可以是人、物或其他软件系统),找到了外部实体,则系统与外部世界的界面就得以确定,系统的源点和终点也就找到了;第二步,找出外部实体的输入和输出数据流;第三步,在图的边上画出系统的外部实体;第四步,从外部实体的输出流(源点)出发,按照系统的逻辑需要,逐步画出一系列变换数据的加工,直到找到外部实体处所需的输入流(终点),形成数据流的封闭;第五步,按照上述原则进行检查和修改。最后按照上述步骤画出所有子图。(2)①画数据流图时,只考虑数据流的静态关系,不考虑其动态关系(如启动、停止等与时间有关的问题),也不考虑出错处理问题。2画数据流图时,只考虑常规状态,不考虑异常状态,这两点一般留在设计阶段解决。3画数据流图不是画程序流程图,二者有本质的区别。数据流图只描述“做什么”,不描述“怎么做”和做的顺序,而程序流程图表示对数据进行加工的控制和细节。4不能期望数据流图一次画成,而是要经过各项反复才能完成。5描绘复杂系统的数据流图通常很大,对于画在几张纸上的图很难阅读和理解。一个比较好的方法是分层的描绘这个系统。在分层细画时,必须保持信息的连续性,父图和子图要平衡,每次只细画一个加工。什么是数据字典其作用是什么它有哪些条目答:(1)数据字典是对数据流图中所包含元素的定义集合。(2)数据字典的作用正是在软件分析和设计的过程中,给人提供数据描述,即对数据存储(文件)和加工(处理)等名字进行定义。(3)数据流、数据流分量(数据基本项)、数据存储(文件)和加工(处理)。描述加工逻辑有几种工具各是什么写出其优缺点。答:(1)描述加工逻辑一般用结构化语言、判定表和判定树。优点缺点结构化语言既有结构化程序的清晰易读的优点,又有自然语言简单易懂的优点,又避免了自然语言不精确可能产生二义性的缺点。只有顺序、循环、条件三种控制结构。判定表能清晰地表示复杂的条件组合与应做动作之间的关系。不能描述循环的处理特征。判定树它比判定表更观,且易于理解和使用。(同判定表)某高校计算机教材购销系统有以下功能。学生购买书时,要先填写购书单,系统根据各班学生用表及售书审查有效性,如果有效,系统根据教材库存量表进一步判断书库是否有书,如果有书,系统把领书单返回给学生,学生凭书单到书库领书,对短缺的教材,系统用缺书单的形式通知书库,新书购进书库后,也由书库将进书通知返回给系统。请采用SA方法画出该系统的分层数据流图,并建立相应的数据字典。答:a)数据字典(1)数据流条目:购书单=学院+专业+班级+购书种类+购书数量+价格进书通知=书名+进书数量+书类型+作者名称+出版社+价格领书单:书名+作者名称+出版社+数量+学院+专业+班级+价格缺书单=书名+作者名称+出版社+剩余数量+再购进数量(2)数据存储条目:文件名:库存清单组成:书名+书籍编号+价格+作者名称+出版社+类型+现有数量组成方式:索引文件,以书籍编号为关键文件名:售书登记表组成:书名+书籍编号+售出数量+价格组成方式:索引文件,以书籍编号为关键文件名:各班学生用表组成:班级+人数+领书量组成方式:索引文件,以班级为关键(3)数据项(4)加工条目加工名:图书管理系统编号:无输入:购书单、进书通知、库存清单、售书登记表、各班学生用表输出:领书单、缺书单加工名:录入存储处理编号:1输入:进书通知加工逻辑:IF没有所输入的书籍记录THEN建立新的书籍记录,存入该书籍的基本记录ELSE输入书籍记录ENDIF加工名:查询处理编号:2输入:购书单输出:领书单、缺书单加工逻辑:根据购书单、售书登记表、各班学生用表及库存清单IF审查售书登记表及各班学生用表有效THENIF有库存THEN输出领书单ELSE输出缺书单加工名:审查、分类编号:输入:进书通知输出:书籍信息加工逻辑:根据进书通知将书审查、分类加工名:审查有效性编号:输入:购书单输出:有效加工逻辑:根据购书单、售书登记表、各班学生用表IF审查售书登记表及各班学生用表有效THEN输出有效加工名:判断书库是否有书编号:输入:有效输出:领书单、缺书单加工逻辑:IF有库存THEN输出领书单ELSE输出缺书单ENDIF某计算机公司为本科以上学历的人重新分配工作的政策是:年龄在25岁以下者,学历是本科男性要求报考研究生,女性则担任行政工作;年龄在25岁至45岁之间者,学历本科,不分男女,任中层领导职务,学历是硕士,不分男女,任课题组组长;年龄在45岁以上者,学历本科,男性任研究人员,女性则担任资料员,学历是硕士,不分男女,任课题组组长。请用结构化语言、判定表和判定树描述上述问题的加工逻辑。答:结构化语言:if年龄<25thenif学历=本科thenif性别=男then报考研究生endifif性别=女then担任行政工作endifendifendifif25<=年龄=<45thenif学历=本科then担任中层领导职务endifif学历=硕士then任课题组组长endifendifif45<年龄thenif学历=本科thenif性别=男then任研究人员endifif性别=女then任资料员endifendifif学历=硕士then任课题组组长endifendif判定表:年龄<2525<=年龄<=4545<性别男女男/女男/女男女男/女学历本科本科硕士本科硕士报考研究生√担任行政工作√任中层领导职务√任课题组组长√√担任研究人员√担任资料员√判定树男性:要求报考研究生年龄<25本科女性:担任行政工作本科:任中层领导职务重新分配工作25<年龄=<45硕士:任课题组组长男性:担任研究人员45年龄女性:担任资料员硕士:任课题组组长数据库内容的需求分析工作主要从哪几方面进行答:(1)信息需求信息需求指用户需要从数据库中获得的信息的内容和性质,信息需求是软件数据需求中最基本的需求,主要是确定系统需要存储和使用哪些数据,用户需要从数据库中获得信息的内容和性质。(2)处理需求处理需求是用户要求软件系统完成的功能,以及对系统功能的处理时间、方式等方面的要求,如是要求批处理还是联机处理等。(3)使用需求使用需求包括:使用数据库时在安全性、完整性和一致性等方面的限制;查询方式、输入/输出格式和多用户等方面的要求;响应速度、故障恢复等性能要求。建立全局E-R模型时,各分E-R模型之间可能出现的冲突有哪些应如何处理答:(1)各局部E-R模型之间的冲突主要有3类:属性冲突、命名冲突和结构冲突。(2)属性冲突:突理论上好解决,但实际上需要各部门讨论协商,解决起来也并非易事。命名冲突:处理方法与属性冲突的解决方法一样,也是通过讨论、协商等手段解决。结构冲突:使集成后的该实体取各局部E-R模型中属性的并集,再适当调整属性的次序;实体间的联系在各局部E-R模型中具有不同的类型,解决办法是根据应用的语义对实体之间联系的类型进行综合或调整。第四章总体设计阶段的主要目的和任务是什么答:总体设计阶段的基本目标就是回答“概括地说,系统应该如何实现”这个问题,因此总体设计又称为概要设计或初步设计。通过这个阶段的工作,开发人员将划分出组成系统的物理元素,如程序、文件、数据库等。但是这些物理元素还处于黑盒子的形式,具体的内部细节在详细设计阶段考虑。总体设计的另一项任务是设计软件的总体结构,即确定系统中的每个程序是由哪些模块组成的,每个模块的功能及模块和模块之间的接口、调用关系等,但所有这些都不要求涉及模块内部过程的细节。为每种类型的模块耦合和模块内聚各举一个具体例子。答:无直接耦合模块B和C模块D和E模块B和D模块B和E数据耦合函数调用时的值传递模块A:完成两个数的输入。模块B:完成两个数的比较,求出最大并返回。比较输入的两个数的大小。标记耦合模块A控制耦合控制信息模块B功能1功能2功能3。。。公共环境耦合模块A:学生信息查询模块B:选课查询模块C:成绩查询数据结构:学号+院系+课程内容耦合偶然内聚moveatob;readdiskfile;movectod;…逻辑内聚时间内聚模块完成各种初始化工作,同时打开若干个文件,同时关闭若干个文件等。通信内聚模块A:学生信息查询数据结构模块B:选课查询及成绩查询数据结构:学号+院系+课程模块B顺序内聚、功能内聚求一元二次方程的根模块的耦合性和软件的可移植性有什么关系说明理由。答:模块的耦合性越低软件的可移植性越高。模块的耦合性是指模块之间相互独立的度量,耦合强弱取决于借口的复杂程度,在软件的设计中尽可能设计弱的耦合的系统,这样程序容易测试、修改和维护,也便于移植到其他计算机上。如何区分数据流图的类型试述“变换型数据流图”和“事务型数据流图”的设计步骤。答:(1)按照数据流图的性质可以将数据流图分成两种基本类型:变换型和事务型。变换型数据流图基本呈线性形状的结构,由输入、变换、输出3部分组成;当一个数据项到达处理某个模块时,将有多个动作之一,这就是事务型的。这种类型的数据流图常呈辐射状,即数据沿着输入通路到达下一个处理T,这个处理根据输入数据的类型分离成一束平行的数据流,然后选择执行若干个动作序列中的某一个来执行。(2)变换型数据流图的设计步骤:确定逻辑输入和逻辑输出的边界,找出变换中心;设计软件结构的顶层和第一层;设计中下层模块;对初始结构图优化。事务型数据流图的设计步骤:在数据流图上确定事务中心,输入流和活动路径;设计事务结构的顶层和第一层;设计事务结构的中下层;对初始的事务结构优化工作同变换结构。画出习题3中的第题的软件结构图。答:试将图的变换型数据流图转换成软件结构图。图变换型数据流图答:工资管理系统中的一个子系统有如下功能。(1)由基本工资计算应扣除(如水电气费等)的部分;(2)根据职工的出勤情况计算奖金部分;(3)根据输入的扣除额及奖金计算工资总额部分;(4)由工资总额计算应扣除税金部分;(5)根据计算总额部分和计算税金部分传递来的有关职工工资详细信息生成工资表。试根据需求画出该问题的数据流图,并将其转换为软件结构图。答:数据流图比较软件结构图和层次图的异同。答:软件结构图是软件系统的模块层次结构,结构图的主要内容有:模块、模块的调用关系、辅助符号。两个模块之间用单向箭头或直线连接起来表示它们的调用关系,用直线而不用箭头表示模块之间的调用关系。在调用线两旁通常还有带注释的箭头表示模块调用过程中来回传递的信息,箭头指明传送的方向,以同一名字命名的模块在结构图中仅允许出现一次,一般总是位于上方的模块调用位于下方的模块,调用关系只能从上到下,调用次序可以依据数据传递关系来确定,一般由左向右。层次图是软件系统的模块层次结构,层次图中的每一个矩形框代表一个模型,矩形框之间的关系表示调用关系,层次方框图中方框代表一个数据,方框之间的连线表示组成关系。第五章软件详细设计的基本任务是什么有哪几种描述方法答:(1)软件详细设计的基本任务就是为软件结构图中每一个模块确定采用的算法和块内数据结构,用某种选定的详细设计工具更清晰地描述,从而在编码阶段可以把这些描述直接翻译成某种程序设计语言书写的源程序。(2)有图形、表格和语言三种描述方法。结构化程序设计的基本要点是什么答:结构化程序设计使用三种基本控制结构,有顺序、条件和重复;结构化程序设计采用自顶向下,逐步求精的设计方法和单入口单出口的控制结构。逐步求精,在总体设计阶段用逐步求精法可以把一个复杂问题解法分解和细划成由许多模块组成的层次结构和软件系统。使用流程图、PAD图、N-S图和PDL语言描述下列程序的算法:(1)在数据A(1)~A(10)式中求最小数和次小数;答:流程图PAD图N-S图PDL语言PROCEDURE模块名(形式参数);PUT(“请输入十个数字”);FORi=1to10Get(A(i))ENDFOR;i=1;WHILEi<=10j=i+1;Min=A(i);WHILEj<=10IFMin>A(i)THENB=Min;Min=A(i);A(i)=B;ENDIF;j++;ENDWHILE;A(i)=Min;i++;ENDWHILE;PUT(“输出最小数:”);PUT(A(1));PUT(“输出次小数:”);PUT(A(2));(2)输入3个正整数作为边长,判断由这3条边构成的三角形是直角、等腰或一般三角形。答:流程图PAD图N-S图PDL语言PROCEDURE模块名(形式参数);PUT(“请输入三个正整数”);FORi=1to3Get(A(i))ENDFOR;i=1;WHILEi<=3j=i+1;Min=A(i);WHILEj<=3IFMin>A(i)THENB=Min;Min=A(i);A(i)=B;ENDIF;j++;ENDWHILE;A(i)=Min;i++;ENDWHILE;IFA1^2+A2^2=A3^2THENIFA1=A2THENPUT(“等腰直角三角形”)ELSEPUT(“直角三角形”)ENDIF;ELSEIFA1=A2THENPUT(“等腰三角形”)ELSEPUT(“一般三角形”)ENDIF;ENDIF;任选一种排序(从大到小)算法,分别用流程图、NS图和PDL语言描述其详细过程。见题第一问画出下列程序的PAD图。repeatifx>0thenx1elsex2endif;S1;ify>0theny1ifz>0thenz1elsez2endif;S2;elsey2;endif;untill;答:程序流程图、NS图、PAD图和PDL语言的特点各是什么你认为这4种详细设计工具哪一种最好为什么答:程序流程图:优点:易学、表达算法直观。缺点:程序流程图本质上不是逐步求精的好工具,程序流程图中用箭头代表控制流,因此程序员不受任何约束,可以完全不顾结构程序设计的精神,随意转移控制,容易造成非结构化的程序结构;程序流程图不易表示数据结构和层次结构。NS图:优点:功能域表达明确,功能域从盒式图上可以明显地看出来;很容易确定局部和全局数据的作用域;不可能随意转移控制;很容易表达模块的层次结构,并列或嵌套关系;使得软件设计人员遵守结构化程序设计的规定,自然地养成良好的程序设计风格。缺点:主要特点就是只能描述结构化程序所允许的标准结构PAD图:优点:用PAD图设计出来的程序必然是结构化程序;PAD图所描绘的程序结构十分清晰,图中最左面的竖线就是程序的主线,即第一层结构。随着程序的层次增加,PAD图逐渐向右延伸,每增加一个层次,图形向右扩展一条竖线。PAD图中竖线的总条数就是程序的层次数;PAD图的符号支持自顶向下,逐步求精的方法,左边层次中的内容可以抽象,然后利用def从左向右逐步细化;用PAD图表示的程序逻辑易读、易懂、易记,使用方便;既可表示程序逻辑,也可用于描绘数据结构;可自动生成程序。利用软件工具自动完成,省去人工编码工作,有利于提高软件的可靠性和软件生产率。PDL语言:特点:所有关键字都有固定语法,以便提供结构化的控制结构、数据说明和模块化的特征;为了使结构清晰和可读性好,通常在所有可能嵌套使用的控制结构的头和尾部都有关键字;描述处理过程的说明性语言没有严格的语法限制;具有数据说明机制,既包括简单的数据结构(例如,简单变量和数组)又包括复杂的数据结构(例如,链表或层次的数据结构);具有模块定义和调用机制,因此,开发人员应根据系统编程所用的语种,说明过程设计语言表示的有关程序结构。第六章在软件项目开发时,选择程序设计语言通常考虑哪些因素答:为了使程序容易测试和维护以减少软件开发总成本,选用的高级语言应该有比较理想的模块化机制,以及可读性好的控制结构和数据结构;为了便于调试和提高软件的可靠性,语言的特点应该使编译程序能够尽可能地发现程序中的错误;为了降低软件开发和维护的成本,选用的语言应该有良好的独立编译机制。这些要求是选择程序设计语言的理想标准,但在实际选用程序设计语言时,不能仅仅考虑理论上的标准,还必须同时考虑实际应用方面的各种因素和限制,如不同应用问题的特性、用户要求、应用环境等。主要的实用标准有下述几条:待开发软件的应用领域、用户的要求、软件的运行环境、软件开发人员的知识、软件的可移植性要求举例说明各种程序设计语言的特点及适用范围。答:FORTRAN语言,它不仅面向科学计算,数据处理能力也极强。适用于科学工程计算Pascal语言,具有很强的数据和过程结构化能力,它语言简明,数据类型丰富,程序结构严谨。它是第一个体现结构化编程思想的语言。用于描述结构化算法和科学计算,操作系统的编写C语言:功能强大,支持复杂的数据结构,可大量运用指针,具有丰富灵活的操作运算符及数据处理操作符,它还具有汇编语言的某些特征,使程序运行效率高。可用于许多领域,特别是在操作系统等方面有较大优势。Coble语言,它具有极强的数据定义能力,程序说明与硬件环境说明分开、数据描述与算法描述分开。结构严谨层次分明,广泛用于商业数据处理。SQL:结构化查询语言,用于对数据库进行存取管理。汇编语言和Ada语言,主要用于实时处理和编写系统软件。Prolog、Lisp语言。Lisp是一种函数型语言,特别适用于组合问题中符号运算和表处理,用于定理证明、树的搜索和其他问题的求解。Prolog是一种逻辑型语言,它提供了支持知识表示的特性,每一个程序由一组表示事实、规则和推理的句子组成,比较接近与自然语言。这两种语言主要用于人工智能系统开发。C++、Java语言,是面向对象的设计语言,用于面向对象的方开发软件。什么是程序设计风格为了具有良好的程序设计风格,应该注意哪些方面的问题答:程序设计风格是指一个人编制程序时所表现出来的特点、习惯、逻辑思路等。要形成良好的程序设计风格,应从源程序文档化、数据说明、语句构造、输入输出和追求效率几个方面加以注意。以下3个表达式表示的是同一个内容:(A)-6**A/3*B;(b)-(6**A/3)*B;(c)+(((6**A)/(-3))*x)(1)你认为哪一种可读性最好哪一种最差(2)如果让你列出几条关于书写表达式的指导原则,你对表达式中运算符的数量和圆括号的层数将做何规定答:(1)b的可读性最好,c的可读性最差(2)表达式中运算符的数量应该以满足表达式为宜,不应加入过多无谓的运算符:括号的数量不应过多,适合恰当的括号使逻辑表达式的运算次序清晰直观,过多或过少的括号都会降低可读性。第4代语言有哪些主要特征为什么受到广大用户欢迎答:主要特征是:友好的用户界面、非过程性,程序员只需告诉计算机“做什么”,而不必描述“怎样做”。由于易学易用而受到广大用户欢迎。第七章软件测试的基本任务是什么简述测试的目标和基本原则。答:(1)测试阶段的基本任务应该是根据软件开发各阶段的文档资料和程序内部结构,精心设计一组“高产”的测试用例,利用这些用例执行程序,找出软件中潜在的各种错误缺陷。(2)目标:暴露程序中的错误。基本原则:1.测试用例既要有输入数据,又要有对应的输出结果。这样便于对照检查,做到“有的放矢”。2.测试用例不仅要选用合理的输入数据,还应选择不合理的输入数据。这样能更多地发现错误,提高程序的可靠性,还可以测试出程序的排错能力。3.除了检查程序是否做了它应该做的工作,还应该检查程序是否做了它不应该做的工作。例如,程序正确打印出用户所需信息的同时还打印出用户不需要的多余信息,即程序做了不应该做的工作仍然是一个大错。4.应该远在测试开始之前就制定测试计划。实际上,一旦完成了需求分析模型就可以开始制定测试计划。在建立了设计模型之后,就可以立即开始设计详细的测试方案。因此在编码之前就可以对所有测试工作进行计划和设计,并严格执行,排除随意性。5.测试计划、测试用例、测试报告必须作为文档长期保存。因为程序修改以后有时可能会引进新的错误,需要进行回归测试。同时可以为以后的维护提供方便,对新人或今后的工作都有指导意义。to原理说明,测试发现的错误中80%很可能是由程序中20%的模块造成的,即错误出现的“群集性”现象。可以把PAreto原理应用到软件测试中。但关键问题是如何找出这些可疑的有错模块并进行彻底测试。7.为了达到最佳的测试效果,程序员应该避免测试自己的程序。测试是一种“挑剔性”的行为,测试自己的程序存在心理障碍。另外,对需求规格说明的理解而引入的错误则更不容易发现。因此,应该由独立的第三方从事测试工作,会更客观、更有效。简述静态测试与动态测试的含义。它们之间有什么不同点和相同点。答:静态测试就是静态分析,是指被测程序不在机器上运行,对模块的源代码进行研读,查找错误或收集一些度量数据,采用人工检测和计算机辅助静态分析手段对程序进行检测,只进行特性分析。动态测试是指通过运行程序发现错误。一般所讲的测试大多是指动态测试。相同点:都可以进行软件测试。不同点:静态测试的执行可以在程序编码编译前,动态测试只能在编译后执行;静态测试用于预防,动态测试用于矫正。白盒测试用例和黑盒测试用例设计的基本方法。答:白盒测试用例:逻辑覆盖、循环覆盖、基本路径测试黑盒测试用例:等价类划分法、边界值分析法、错误推测法、因果图法测试用例设计、组织和测试过程组织之间的关系和实践过程。答:简述测试和调试的含义,它们之间有什么区别答:测试的含义:软件测试是为了发现错误而执行程序的过程;一个好的测试用例能够发现至今尚未发现的错误;一个成功的测试是发现了至今尚未发现的错误的测试。调试的含义:为了解决存在的错误,即对错误定位、分析并找出原因改正错误。软件测试要经过哪些步骤这些测试与软件开发各阶段之间有什么关系答:单元测试、集成测试、确认测试、系统测试。单元测试以详细设计的说明为指导,测试模块内的重要控制路径,力求在模块范围内发现错误;进行集成测试来发现与模块接口有关的错误,最终组装成一个符合设计要求的软件系统;确认测试又称有效性测试,它和验收测试比较接近,合理的期望则是指软件需求规格说明书中所确定的指标。因此,需求规格说明书是确认测试的基础;系统测试保证个组成部分不仅单独的正常运行,而且在系统各部分统一协调下也能正常运行。什么是单元测试,什么是集成测试,什么是确认测试答:单元测试是对软件基本组成单元进行的测试。检查每个独立模块是否正确地实现了规定的功能。单元测试所发现的往往是编码和详细设计中的错误。各模块经过单元测试后,接下来需要进行集成测试。集成测试是将已分别通过测试的单元按设计要求组合起来再进行测试,以检查这些单元之间的接口是否存在问题,同时检查与设计相关的软件体系结构的有关问题。在这个测试阶段发现的往往是软件设计中的错误,也可能发现需求中的错误。确认测试是检查所开发的软件是否满足需求规格说明书中所确定的功能和性能的需求。在这个测试阶段发现的是需求分析阶段的错误,如对用户需求的误解,有冲突的用户需求等。完成确认测试后,得到的应该是用户确认的合格的软件产品。一个C语言程序,读入3个正整数作为三角形的边长,要求程序打印如下信息:该三角形是等边的、等腰的或一般三角形。试设计一组测试用例,用来测试此程序。答:输入等价类测试用例说明测试数据期望结果输入三个正整数且两边之和大于第三边两个整数相等2,3,2等腰三角形三个整数相等3,3,3等边三角形三个整数皆不相等2,3,4一般三角形输入两个整数、一个整数、零个整数两个整数2,3输入无效一个整数2输入无效零个整数输入无效输入三个数中有负数、0或小数输入中有负数-2,1,3显示出错输入中有02,0,3显示出错输入中有小数、2、显示出错输入三个整数两个整数之和小于等于第三个整数两个整数之和等于第三个整数2,2,4显示出错两个整数之和小于第三个整数1,2,4显示出错某高校拟对参加计算机应用水平考试成绩好的学生进行奖励,成绩合格者奖励50元,成绩在80分以上者奖励100元,成绩在90分以上者奖励200元,并公布奖励成绩及所获奖金,编写程序流程图,设计测试用例,写出测试路径及所满足的覆盖条件。测试用例:1.成绩不合格者,覆盖路径:abcegik2.成绩合格且80分以下者,覆盖路径:abceghjk3.成绩80分以上90分以下者,覆盖路径:abcefjk4.成绩90分以上者,覆盖路径:abcdjk设某个程序用于求一元二次方程Ax+bx+c=0的根,A、b和c为整数。试采用等价类划分法和边界值分析法来设计测试用例。答:输入等价类测试用例说明测试数据期望结果a≠0b2-4ac>0a=3,b=5,c=1有两个不同的根b2-4ac=0a=1,b=2,c=1有一个根b2-4ac<0a=3,b=2,c=1无实数根a=0b=0且c≠0a=0,b=0,c=3显示出错b=0且c=0a=0,b=0,c=0根为任意值b≠0a=0,b=-6,c=3有一个根说:“程序测试只能证明错误的存在,不能证明错误不存在。”Myers说:“测试是为了证明程序有错,而不是证明程序无错。”如何理解这两句话所蕴涵的意义。答:软件测试是为了发现错误而执行程序的过程,主要体现了测试的特点:挑衅性和不彻底性。一个折半查找程序可搜索按字母顺序排列的名字列表,如果查找的名字在列表中则返回真,否则返回假。为了对它进行功能测试,应该设计哪些测试用例答:输入等价类测试用例说明测试数据期望结果字符皆为字母名字在列表中May返回真名字不在列表中Sky返回假字符中有数字或其他字符一个数字May3显示出错多个数字May143显示出错其他字符May-*.显示出错第八章为什么软件需要维护维护有哪几种类型简述它们的维护过程。答:(1)因为软件系统投入使用后还经常会发生一些变化,如对隐含错误的修改,新功能的加入,环境变化造成的程序变动等。(2)(3)要求进行软件维护的原因多种多样,概括起来有以下4种类型。1改正在特定使用条件下暴露出来的,测试阶段未能发现的,潜在软件错误和设计缺陷。2因在软件使用过程中数据环境发生变化(如事务处理代码改变),或处理环境发生变化(如安装了新硬件或更换了操作系统),需要根据实际情况,修改软件以适应这些变化。3用户和数据处理人员在使用软件过程中,经常会提出改进现有功能、增加新的功能或者改善系统总体性能等要求,为满足此类要求而对软件进行的修改。4为预防软件系统的失效而对软件系统所实施的修改。什么是软件可维护性可维护性度量的特性是什么提高可维护性的方法有哪些答:(1)软件可维护性是指纠正软件系统出现的错误和缺陷,以及为满足新的要求进行修改、扩充或压缩的容易程度。(2)可理解性、可测试性、可修改性、可靠性、可移植性、可使用性、效率(3)建立明确的软件质量目标和优先级;使用提高软件质量的技术和工具;选择便于维护的程序设计语言;采取明确的、有效的质量保证审查措施;完善程序的文档。改正性维护与“排错”是否是一回事为什么答:不是一回事。改正性维护是把在软件投入使用后才逐渐暴露出来的错误的诊断、定位、改错的过程。排错是指在软件测试阶段,程序存在大量的bug,通过测试发现错误,通过排错来纠正错误。软件维护困难的原因是什么提高可维护性的方法有哪些答:(1)许多软件的维护十分困难,原因在于这些软件的文档像源程序一样难以理解,又难以修改。从原则上讲,软件开发工作应严格按照软件工程的要求,遵循特定的软件标准或进行。但实际上往往由于种种原因并不能真正做到。例如,文档不全、质量差、开发过程不注意采用结构化方法、忽视程序设计风格等。(2)建立明确的软件质量目标和优先级;使用提高软件质量的技术和工具;选择便于维护的程序设计语言;采取明确的、有效的质量保证审查措施;完善程序的文档。什么是软件维护的副作用软件维护的副作用有哪几种试举例说明答:(1)维护的副作用是指由于修改软件而导致新的错误的出现或者新增加一些不希望发生的情况。(2)修改代码的副作用、修改数据的副作用、修改文档的副作用(3)修改代码的副作用:删除或修改一个子程序、删除或修改一个标号、删除或修改一个标识符、改变程序代码的时序关系、改变占用存储的大小、改变逻辑运算符、修改文件的打开或关闭、改进程序的执行效率,以及把设计上的改变翻译成代码的改变、为边界条件的逻辑测试做出改变时,都容易引入错误。修改数据的副作用:在重新定义局部的或全局的常量、重新定义记录或文件的格式、增大或减小一个数组或高层数据结构的大小、修改全局或公共数据、重新初始化控制标志或指针、重新排列输入/输出或子程序的参数时,容易导致设计与数据不相容的错误。修改文档的副作用:对交互输入的顺序或格式进行修改,如果没有正确地记入文档中,就可能引起重大的问题。在软件计划中是否应该把维护费用计划在内实际情况如何答:应该算入。在软件维护过程中,需要花费大量的工作量,从而直接影响了软件维护的成本。什么是软件再工程软件再工程的意义是什么软件再工程的相关技术有哪些答:(1)软件再工程是一类软件工程活动,它能够使人们:增进对软件的理解;准备或直接提高软件的可维护性、复用性或演化性。(2)软件再工程旨在对现存的大量软件系统进行挖掘、整理,以得到有用的软件构件,或对已有软件构件进行维护,以延长其生存期。这是一个工程过程,能够将逆向工程、重构和正向工程组合起来,将现存系统重新构造为新的形式。(3)再工程课题相关技术改进软件重构、文档重写、加注释更新文档、复用工程、重新划分模块、数据再工程、业务过程再工程、可维护性分析、业务分析、经济分析理解软件浏览、分析并度量、逆向工程、设计恢复获取、保存及扩充软件的知识分解、逆向工程设计恢复、对象恢复、程序理解、知识库及变换第九章面向对象方法的要点包括哪些内容答:面向对象方法学的出发点和基本原则是尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类解决问题的方法与过程;面向对象方法是一种新的思维方法,它不是把程序看作是工作在数据上的一系列过程或函数的集合,而是把程序看作是相互协作而又彼此独立的对象的集合。面向对象的方法学可以用下式来表述:OO=Objects+Classes+Inheritance+Communicationwithmessages即面向对象包括既使用对象,又使用类和继承等机制,而且对象之间仅能通过传递消息实现彼此通信。什么是基于对象什么是面向对象答:若仅使用对象和消息,则该方法称为基于对象的(Object-based)方法,而不是面向对象的方法;若进一步把所有对象都划分为类,则该方法称为基于类的(Class-based)方法。只有同时使用对象、类、继承和消息的方法,才是真正的面向对象的方法。什么是类,什么是对象,类和对象是什么关系答:(1)类是具有相同属性和操作的一组相似对象(实体)的集合,类为属于该类的全部对象提供了统一的抽象描述。(2)对象是对问题域中客观存在的事物的抽象,是一组属性和在这些属性上的操作的封装体。(3)类给出了属于该类的全部对象的抽象定义,而对象则是符合这种定义的一个实体。因此,对象又称为是类的一个“实例(Instance)”,类又称为是对象的“模板(Template)”。类代表一类抽象的概念或事物。对象是在客观世界中实际存在的类的实例。传统软件开发方法存在哪些问题面向对象方法学有哪些优点答:(1)软件重用性差、软件可维护性差、开发出的软件不能满足用户需要。(2)与人类习惯的思维方式一致、软件稳定性好、可重用性好、较易开发大型软件产品、可维护性好,易于测试类与类之间的关系包括哪几种各自适用于什么问题的描述答:(1)继承、多态性、关联、依赖、实现、聚集和组合。(2)继承是子类自动地共享父类中定义的数据和方法的机制。多态性多态性指子类对象可以像父类对象那样使用,它们可以共享一个操作名,然而却有不同的实现方法,换句话说,指在父类中定义的属性或操作被子类继承后可以具有不同的数据类型或表现出不同的行为。关联模型元素间的一种语义联系,它是对具有共同的结构特性、行为特性、关系和语义的连接(Link)的描述,相互关联的两个对象间的连接是关联的一个实例。UML中的对象类的关联是面向对象技术中的实例连接,是通过对象的属性所建立的对象之间的联系。依赖就是一个类A使用到了另一个类B,而这种使用关系是具有偶然性的、临时性的、非常弱的,但是类B的变化会影响到类A。实现用来规定接口和实现接口的类之间的关系,接口是操作的集合,而这些操作就用于规定类或者构件的一种服务。聚集和组合整体拥有各部分,部分与整体具有同样的生存期,如整体不存在了,部分也会随之消失,称为组合。组合是一种特殊形式的强类型的聚集。典型的面向对象方法有哪些各自的特点是什么答:(1)Booch方法、Coad/Yourdon方法、OMT/Rumbaugh方法、OOSE方法/Jacobson方法、Wirfs-Brock方法(2)Booch方法并不是一个开发过程,只是在开发面向对象系统时应遵循的一些技术和原则。Booch方法是从外部开始,逐步求精每个类,直到系统被实现。因此,它是一种分治法,支持循环开发,它的缺点在于不能有效地找出每个对象和类的操作。OMT方法覆盖了应用开发的全过程,是一种比较成熟的方法,用几种不同的观念来适应不同的建模场合,它在许多重要观念上受到关系数据库设计的影响,适用于数据密集型的信息系统的开发,是一种比较完善和有效的分析与设计方法。在OOAD方法中,OOA把系统横向划分为5个层次,OOD把系统纵向划分为4个部分,从而形成一个清晰的系统模型。OOAD适用于小型系统的开发。OOSE能够较好地描述系统的需求,是一种实用的面向对象的系统开发方法,适用于商务处理方面的应用开发。Wirfs―Brock方法不明确区分分析和设计任务,从评估客户规格说明到设计完成,是一个连续的过程。UML的组成元素有哪些UML包含的13种图分别是什么适用于什么场合答:(1)基本构造块、规则、公共机制(2)类图、对象图、用例图、构件图、部署图、包图、组合结构图、状态图、顺序图、通信图、活动图、计时图、交互概览图(3)类图(ClassDiagram)描述了类、接口、协作及它们之间的关系。在面向对象系统建模中,类图是最常用的图,类图描述了系统的静态结构。对象图(ObjectDiagram)描述了对象及对象之间的关系,对象图也描述了系统在某个时刻的静态结构。用例图(UseCaseDiagram)描述了用例、参与者及它们之间的关系,用例图用来描述系统的功能。构件图(ComponentDiagram)描述模型元素之间的组织结构和依赖关系,构件图描述了实现系统的元素的组织。部署图(DeploymentDiagram)描述系统环境元素的配置。包图(PackageDiagram)描述能作为一个集合进行命名和处理的建模元素组织,包的存在只是为了帮助组织模型的元素,在系统运行时不出现,完全是组织设计的机制。组合结构图(CompositeStructureDiagram)展示类或协作的内部结构。状态图(StatechartDiagram)描述系统元素的状态条件和响应。顺序图(SequenceDiagram)按时间顺序描述系统元素之间的交互。通信图(CommunicationDiagram)按时间和空间的顺序描述系统元素间的交互和关系,中为协作图(CollaborationDiagram)。活动图(ActivityDiagram)描述系统元素的活动。计时图(TimingDiagram)主要用于表示交互过程中不同对象状态改变的定时约束。交互概览图(InteractionOverviewDiagram)是将活动图和顺序图综合在一起的图,并没有引入新的建模元素,其组成元素包括活动图和顺序图两种元素。UML有哪些特点,为什么UML已成为软件行业的标准建模语言答:(1)特点:统一标准、面向对象、可视化及表示能力强大、独立于过程、易于掌握应用(2)使用UML进行软件系统的分析与设计,能够加速软件开发的进程,提高代码的质量,支持变动的业务需求。UML适用于各种大小规模的软件系统项目,能促进软件复用,方便地集成已有的系统软件资源。UML中有哪些视图,“4+1”视图中的各图有什么功能答:(1)用例视图、逻辑视图、进程视图、实现视图、部署视图。(2)用例视图(UseCaseView)表示系统的功能性需求,使用用例图来描述,用活动图来进一步描述其中的用例。逻辑视图(LogicalView)表示系统的概念设计和子系统结构等,用类图、对象图、逻辑结构图和包图描述系统静态结构,用状态图、顺序图、通信图(UML版本中的协作图)和活动图描述系统动态行为。逻辑视图又称为结构模型视图。进程视图(ProcessView)表示系统的动态行为及其并发性,使用状态图、顺序图、通信图、活动图、计时图、构件图和部署图来描述动态行为,又称为行为模型视图。实现视图(ImplementationView)表示系统实现的代码结构和行为特征,用构件图来描述,又称构件视图。部署视图(DeploymentView)用于定义硬件结点的物理结构,表示实现环境和构件被部
/
本文档为【软件工程李爱萍 作业参考答案-最终版修改】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索