搜档网
当前位置:搜档网 › (考研复试)软件工程笔记

(考研复试)软件工程笔记

(考研复试)软件工程笔记
(考研复试)软件工程笔记

1:软件危机:问题1:如何开发软件,以满足对软件日益增长的需求。问题2:如何维护数量不断膨胀的软件。表现:对软件开发成本和时间估计不准,用户对已完成软件不满意,软件质量不可靠,软件不可维护,软件缺少文档,软件成本过高,软件跟不上硬件发展速度。原因:与软件本身特点有关,缺乏可见性,质量难以评价,规模庞大难以维护。与软件开发维护的不当方法有关,轻视需求分析和维护,对用户的要求没有完整准确的认识就编写程序,忽视程序,文档,数据等软件配置。

2:软件工程:采用工程的概念,原理,技术和方法开发与维护软件,把正确的管理技术和软件开发技术结合起来,经济的开发出高质量的软件并有效的维护。即把系统化的,规范的,可度量的途径应用于软件开发,运行和维护的过程。3:软件工程7条基本原理:用分阶段的生命周期计划严格管理,坚持进行阶段评审,实行严格的产品控制,采用现代程序设计技术,结果应能清楚地审查,开发小组的人员应该少而精,承认不断改进软件工程实践的必要性。

4:软件工程领域:软件需求,设计,构建(写代码),测试,维护,配置管理,工程管理,工程过程,工程工具,软件质量。

5:软件生命周期:软件定义(问题定义,可行性研究,需求分析),软件开发(概要设计,详细设计,编码和单元测

试,综合测试),运行维护(改正性维护,适应性维护,完善性维护,预防性维护)。、

生命周期模型

6:瀑布模型:就是把一个开发过程分成收集需求,分析,设计,编码,测试,维护六部分,只有完成前面一步才能开始后面一步,上一步的输出的文档就是这一步的输入文档,每一步完成都要交出合格的文档,每一步都会有反馈,如果反馈有错误就退回前一步解决问题。瀑布模型的缺点:实际的项目开发很难严格按该模型进行;由于用户只能通过文档来了解产品,客户往往很难清楚地给出所有的需求,而瀑布模型不适应用户需求的变化;软件的实际情况必须到项目开发的后期客户才能看到。

7:快速原型模型:就是根据用户的需求迅速设计出一个原型系统,原型系统具有基本的功能,然后用户使用原型并对原型提出需求和改变,开发人员再对原型进行修改和完善知道用户满意。优点:容易适应需求的变化;有利于开发与培训的同步;开发费用低、开发周期短且对用户更友好。缺点:快速建立起来的系统结构加上连续的修改可能会导致产品质量低下;使用这个模型的前提是要有一个展示性的产品原型,因此在一定程度上可能会限制开发人员的创新。

8:增量模型:就是把软件分成许多个构件,每个构件分别

当做一个软件来分析,设计,编码,测试。开发人员一次一个构件的提交给用户,最后组装到一起。增量模型的优点:一开始不用投入太多人力,如果核心产品很受欢迎,则可增加人力实现下一个增量;可先发布部分功能给客户,让客户逐渐适应。缺点:并行开发构件有可能遇到不能集成的风险,软件必须具备开放式的体系结构。

9:螺旋模型:螺旋模型基本做法是在快速原型模型的每一个原型前引入一个非常严格的风险分析,每个原型经过制定计划,风险分析,实施工程,客户评估四步走。每个原型都标识一个或多个主要风险,直到所有的主要风险因素都被确定。螺旋模型由风险驱动,强调可选方案和约束条件从而支持软件的重用,有助于将软件质量作为特殊目标融入产品开发之中。优点:设计上的灵活性,可以在项目的各个阶段进行变更;以小的分段来构建大型系统,使成本计算变得简单容易;客户始终参与每个阶段的开发,保证了项目不偏离正确方向以及项目的可控性;缺点:采用螺旋模型需要具有相当丰富的风险评估经验和专门知识,在风险较大的项目开发中,如果未能够及时标识风险,势必造成重大损失;过多的迭代次数会增加开发成本,延迟提交时间。

10:喷泉模型:以用户需求为动力,以对象为驱动的模型,主要用于描述面向对象的软件开发过程。该模型认为软件开发过程自下而上周期的各阶段是相互迭代和无间隙的特性。

喷泉模型不像瀑布模型那样,需要分析活动结束后才开始设计活动,设计活动结束后才开始编码活动。该模型的各个阶段没有明显的界限,开发人员可以同步进行开发。其优点是可以提高软件项目开发效率,节省开发时间,适应于面向对象的软件开发过程。缺点:由于喷泉模型在各个开发阶段是重叠的,因此在开发过程中需要大量的开发人员,因此不利于项目的管理。

10.1:总结:一开始是瀑布模型,但是瀑布模型因为是文档驱动,最终交付的产品不一定符合用户需求,所以有了快速原型模型,增量模型能在软件早起就让投资者获得回报,但是需要软件具有开发体系架构,螺旋模型是风险驱动,但是需要专业的风险分析人,喷泉模型的软件生命周期是循环的,适用于面向对象范型。

11:rational统一过程是一个软件开发过程框架,就是指团队可以根据具体的项目组或软件开发企业的不同需求,能够定义,配置,定制和实施一致的软件开发过程,包括3核心:用于成功开发软件的一组基本观念和原则,一套关于可重用方法内容和过程构件的框架(在框架内定义自己的开发方法和过程),基础的方法和过程定义语言。

12:RUP的最佳实践:描述了一个指导开发团队达成目标的迭代式的软件开发过程,包括:迭代式开发(每次迭代过程中需求改变,每个迭代过程以完成可执行版本结束,让用

户不断介入和提出意见并改进),管理需求(用脚本来确定需求),使用基于组件的架构(使用功能清晰的模块),可视化建模(可视化图形更容易令人理解,帮助人们提高管理软件复杂性的能力),验证软件质量(软件质量评估贯穿整个开发过程),控制软件变更(确保每个更改都是可接受和可跟踪的)。

13:敏捷过程:宣告了以下4个价值观:个体和交互高于过程和工具(团队合作很重要,应该根据团队成员和交互方式配置项目环境),可以使用的软件高于面面俱到的文档(主要精力放在创建),客户合作高于合同谈判(开发团队与客户密切协作),响应变化高于遵循计划(计划必须有足够的灵活性,在需要时能够迅速调整)

14:极限编程:就是把好的开发实践运用到极致,广泛运用于模糊且经常改变的场合。过程:首先,项目组针对客户代表提出的要求进行讨论,对体系结构进行试探,然后项目组根据客户设定的优先级指定交付计划,然后开始多个迭代过程。迭代期中新用户故事不在本次迭代内解决,开发出的新版本软件通过验收测试之后交付用户使用。极限编程可以迅速快捷的响应变化和不确定的需求,同时保持开发速度。迭代过程:项目组根据项目速率,选择需要完成的用户需求或应该消除的差错,制定出本次迭代计划,每天举行一次站立会议解决遇到问题,调整迭代计划,开发出的新功能必须

通过单元测试,立即继承,得到新的可运行版本由客户代表进行验收测试,客户代表提出问题,项目组根据问题提出新的用户要求,算出新的项目速率,并在站立会议上讨论。15:能力成熟模型CMM:因为问题是由管理软件过程的方法不当引起的,所以新软件技术的运用并不会自动提高生产率和软件质量,能力成熟模型有助于软件开发组织建立一个有规律,成熟的软件过程,改进后的过程将开发出高质量的软件,并节约时间和经费。软件开发既包括技术方面也包括管理方面,CMM通过改变管理方面,从而改变技术方面。16:CMM结构:成熟度等级(对软件过程的改进的5个步骤),过程能力(改进的软件过程实现预期结果的能力),关键过程域(完成一些关键过程域就进入下一个成熟度等级),目标(定义每个关键过程域的目的),公共特性(把关键实践归入5个公共特性之中,指示一个关键过程域的实施和规范化是否有效),关键实践(若干个关键实践描述关键过程域)。

17:软件过程:为了获得高质量软件产品所需要完成的一系列任务的框架,规定各项任务的工作步骤。

传统方法学之结构化分析

18:传统的软件工程采用结构化分析完成需求分析工作。19:需求分析的第一步就是尽可能准确的了解用户当前的情

况和需要解决的问题,分析员对用户的要求反复求精细化,理解用户需求,得出对目标系统完整的准确的和具体的要求。结构化分析就是通过建立数据模型,功能模型,行为模型给出完整的需求规格说明书和全面的设计表示。

20:与用户沟通的方法:会谈,简易应用规格说明书,软件原型。

21:结构化分析实质上是一种创建模型的活动,模型可以描述用户需求,为软件设计奠定基础,定义一组需求,一旦开发出软件产品之后,就可以用这组需求为标准来验收。分析模型的核心是数据字典,围绕这个核心有三种图

22:实体关系图可以数据对象描述,数据流图(就是A和B 两个数据流经过一个处理系统出来C数据)可以处理规格说明,状态转换图可以控制规格说明

23:通过需求分析创建分析模型外还要写出软件规格需求说明,这是分析阶段的最终成果。

24:数据字典:对数据的数据项、数据结构、数据流、数据存储、处理逻辑、外部实体等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明从而是用户和系统分析员双方对输入输出存储的成分以及中间计算结果有共同的理解。

25:结构化分析举例:项目:系统分析员研究学校自己的计算机生成工资明细表和各种财务报表的可能性。过程包括问

题定义,可行性研究,需求分析3阶段。

(1)问题定义:考虑用户面临的问是什么,用户为什么要做这个项目,考虑项目规模,预花费的费用。

(2)可行性研究:抽象和简化了的系统分析和设计的全过程,目的是以最小的代价确定问题是否可以解决。澄清系统规模和目标,研究现有系统,导出高层逻辑模型,进一步确定系统规模和目标,导出供选择的解法,推荐最佳方案,草拟开发计划,写出文档提交审查。

(3)需求分析:回答“系统必须做什么”,在可行性研究的基础上,以前一段产生的文档为出发点,分析员设计出更为精确的数据流图,写出数据字典,更详尽的定义系统应该完成的每一个逻辑功能。写出文档初稿,定义逻辑系统,细化数据流图,书写正式文档,技术审查和管理复查

结构化设计

26:软件设计的目标是设计出所要开发的软件的模型。对软件需求有了完整,准确,具体的理解后,接下来的工作就是用软件正确的实现需求。传统的软件工程用结构化设计,把软件设计工作分为概要设计(分析软件规格说明书,对软件进行功能分解,划分模块,设计出预定模块的结构)和详细设计(详细设计每个模块的算法和数据结构)。结构化分析为结构化设计提供输入信息,由数据模型,功能模型,行为

模型描述的软件需求给软件设计者,软件设计者再完成数据设计,体系结构设计,接口设计,过程设计。

27:软件设计的原理:模块化(把程序划分为独立命名独立访问的模块,每个模块完成一个子功能),抽象(高层次抽象一开始以概括的方式叙述问题的解法,然后低层次抽象把面向问题的术语和面向实现的术语结合起来叙述问题的解法,最后再最低层用直接实现的方式叙述问题的解法),逐步求精(即将系统功能按层次进行分解,每一层不断将功能细化,到最后一层都是功能单一、简单易实现的模块),细节隐藏。

28:模块独立:独立的模块比较容易开发,测试和维护,耦合(一个软件结构内不同模块之间的互联程度,耦合的强度取决于模块间接口和复杂程度),内聚(一个模块内各个元素彼此结合的紧密程度),我们追求的是低耦合和高内聚。29:结构化设计启发规则:提高模块独立性,模块规模适中,深度宽度扇出扇入都要适中,模块的作用于在可控范围内,降低接口复杂度,模块单入单出,模块功能可预测。

30:软件结构表示法:层次图(系统模块下面是各分模块,分模块又引出分分模块),HIPO图(在层次图的基础上家一个IPO表,更好的现实输入,处理,输出三部分的关系),结构图(在层次图的基础上,更详细的描述了模块的信息和之间的数据流)

31:面向数据流的设计方法定义了一些不同的映射,利用这些映射可以把数据流图变换成软件结构,通常说结构化设计方法就是基于数据流的设计方案。数据流映射成信息流,信息流有变换流和事务流两种。

32:人机界面设计问题:系统响应时间,用户帮助设施,出错信息处理,命令交互。人机界面设计也是一个迭代的过程,创建设计模型,创建原型,用户评估返回意见修改。

33:过程设计:过程设计不仅仅是在逻辑上实现每个模块的功能,更重要的是设计出的过程简明易懂。如果一个程序的代码块仅仅通过顺序,选择,循环3钟控制结构进行连接,并每个代码块只有一个入口和一个出口,那么这个就是结构化程序。

34:过程设计工具:程序流程图,盒图,PAD图,判定表,判定树

35:面向数据结构的设计方法:不明确的使用软件结构的概念,对于模块独立原理没有给予重视,这种方法适合再详细设计阶段,完成软件结构设计之后,用面向数据结构的方法来设计每一个模块的处理过程。

结构化实现

36: 实现分为编码和测试。

37:测试分为黑盒测试(知道了产品应具有的功能,测试每

个功能能否正常使用,是在程序接口进行的测试)和白盒测试(知道产品内部工作过程,通过测试来检验产品内部动作是否按照规格说明书的规定正常进行,是在程序的每条通路测试)

38:测试准则:所有的测试都应能有用户需求的根据;应该早早指定测试计划;采用二八原理;逐步测试小模块,然后测试大模块;穷举测试是不可能的;测试应由第三方来做。

38.5:设计测试方案基本目标是选用尽可能少的高校测试数据。

39:白盒测试方案:逻辑覆盖:语句覆盖(所有语句都走一遍),判定覆盖(判定结果的每个可能结果都执行一遍),条件覆盖(判定表达式中每个结果都走一遍),判定/条件覆盖(结合前面两个),条件组合覆盖(判定表达式的条件的各种组合都执行一次)

40:白盒测试技术:逻辑覆盖,控制结构测试(基本路径测试,条件测试,数据流测试,循环测试)

41:黑盒测试技术:等价划分,边界值分析,错误推测。42:测试4步骤:单元测试:最开始测试每个单独的模块,采用白盒测试,检查模块控制结构中的特定路径。集成测试:把模块装配在一起形成完整的软件包,在装配的同时进行测试,解决程序验证和程序构造两个问题,采用黑盒测试。确认测试:对软件所满足的所有功能,行为,性能需求的最终

测试,采用黑盒测试。系统测试:所有系统元素都能正常配合。

43:调试是在测试发现错误之后排除错误的过程。

44:软件可靠性:程序在给定时间间隔内,按照规格说明书运行的概率。

面向对象方法学

45:传统的软件工程方法学不适合大型软件产品的开发,现在是面向对象方法学,面向对象开发软件的时候通常建立3种模型:对象模型,动态模型,功能模型。对象模型是后二者的基础,是最最最核心的。

46:用对象分解取代功能分解,面向过程的设计方法以算法为核心,把数据和处理过程相互分割开来。面向对象以对象为核心,对象是对世界实体的抽象,把实体的内部状态,静态属性,动态行为都封装在一个对象里面。对象之间通过传递消息通信。面向过程设计方法把精力集中在设计算法上,按照计算机的要求设计,设计者站在计算机的立场上,但是计算机和人类观点差别很大,面向对象就是站在人类观点的立场上,面向对象是一种以数据或信息为主线,把数据和处理相结合的方法,对象不被动的等待外界对它操作,而是进行处理的主体,必须发消息让对象执行对象自己的操作,而不能从外界直接对它的私有数据进行操作。

47:面向对象方法学的优点:与人类习惯的思维方法一致,稳定性好,可重用性好,可维护性好,易开发大型软件。48:对象模型:对象模型表示静态的,结构化的数据,描述系统的静态结构,为后两个提供了框架。

49:动态模型:表示瞬时的,行为化的系统的控制性质,规定了对象模型中的对象的合法变化系列,用状态转换图描述。50:功能模型:表示变化的系统的功能性质,它指明了系统应该做什么,更直接的反应了用户的需求。

51:功能模型指明做什么。动态模型规定什么时候做,对象模型规定,谁做。

面向对象分析

52:面向对象分析的关键在于:识别出问题域内的对象,分析他们之间的关系,最终建立3种模型。

53:面向对象分析:寻找类和对象,识别结构,识别主题,定义属性,建立动态模型,建立功能模型,定义服务。

54:对象模型有5个层次:主题层,类与对象层,结构层,属性层,服务层。

55:建立对象模型:首先确定对象类和关联,对于复杂的系统还要进一步划分主题,然后给类和关联添加属性,接下来利用适当的继承关系进一步合并和组织类,最后要定义服务,不过这个步骤是在动态模型和功能模型之后的。

56:建立动态模型:编写典型交互行为的脚本,从脚本中提取事件,排列事件发生的次序,比较各个对象的状态图。57:建立功能模型:画数据流图。

58:定义服务:确定类中应定义的服务,包括常规行为,从事件导出的操作,与数据流图中处理框对应的操作,利用继承减少冗余操作。

面向对象设计

59:面向对象设计就是利用面向对象的观点求解问题域模型的过程。实际过程当中,设计和分析的界限是很模糊的,许多分析结果可以直接映射成设计结果,分析和设计是一个迭代的过程。面向对象的设计分为系统设计和对象设计。60:面向对象设计准则:模块化,抽象,信息隐藏,弱耦合,强内聚,可重用。

61:启发规则:设计结果应该清晰,深度适当,类要简单,协议要简单,服务要简单,设计变动小。

62:系统分解:人机交互部分,问题域部分,任务管理部分,数据管理部分。每个部分都有主题层,类与对象层,结构层,属性层,服务层。

63:系统两种交换方式C/S和P2P。组织系统的两种方案:层次组织和块状组织。

面向对象的实现

64:面向对象的实现包括:把面向对象设计的结果,翻译成用某种程序设计语言书写的对象程序,测试并调试。

65:程序设计准则:提高可重用行,提高可扩充性,提高健壮性。

66:测试策略:面向对象的单元测试测试的是封装起来的类和对象,不是模块。面向对象的确认测试是根据动态模型和描述系统行为的脚本来设计确认测试。

软件工程概论考试要点及备选试题

软件工程概论考试要点 考试形式为开卷考试,主要考学生的分析、设计与测试的能力 开卷形式可以带进考场的可以是教材和手写笔记,不可以用任何形式的打印稿和复印件 一、基本知识题 考试形式为填空形式,或文字说明形式 二、系统分析题 给出问题画出系统的数据流图、数据字典的定义、加工说明、ER图 三、系统设计题 给出问题的数据流图,画出系统的软件结构图 给出问题,写出过程设计的程序流程图或PAD图 四、软件测试题 给出问题,进行墨盒测试的等价分类法和白盒测试的路径测试法 备选: 一、基本知识题:(20分) 填空题 1.在信息处理和计算机领域内,一般认为软件是 _程序____、_文档____ 和_ 数据____ 。 2.数据流图的基本组成部分有 _数据的源点与终点____、数据流_____、加 工_____、数据文件_____。 3.数据流图和数据字典共同构成了系统的_逻辑____模型,是需求规格说明书 的主要组成部分。 4.划分模块时尽量做到__高内聚、低耦合______,保持模块的独立性,尽量使 用公共模块。 5.类的实例化是_对象_______。 6.将待开发的软件细化,分别估算每一个子任务所需要的开发工作量,然后将 它们加起来,将得到软件的总开发量。这种成本估算方法称为_自底向上_______。

7.如果一个模块被 n 个模块调用,其中直接的上级模块的个数是 m 个 ( m<=n )那么该模块的扇入数是 ____N_______ 个。 8.结构化设计以 __数据流图_________ 为基础,按一定的步骤映射成软件结 构。 9.面向对象分析的目的是对客观世界的系统进行___建模_______________ 。 10.一个进行学生成绩统计的模块其功能是先对学生的成绩进行累加,然后求平 均值,则该模块的内聚性是 __________顺序内聚________ 。 11.投资回收期就是使累计的经济效益等于 __最初的投资费用______________ 所需的时间。 12.软件生存周期是指一个软件从提出开发要求开始直到 __软件废弃____为止 的整个时期。 13.曾被誉为“程序设计方法的革命”的结构化程序设计,使程序设计从 主要依赖于程序员个人的自由活动变成为有章可循的一门科学。 14.从结构化程序设计到面向对象程序设计,是程序设计方法的又一次飞跃。 15.在单元测试时,需要为被测模块设计___测试用例_______。 判断题 1.螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活动。(对) 2.数据字典是对数据流图中的数据流,加工、数据存储、数据的源和终点进行详细定义。(错) 3.软件是指用程序设计语言(如PASCAL ,C,VISUAL BASIC 等)编写的程序,软件开发实际上就是编写程序代码。(错) 4.软件模块之间的耦合性越弱越好。(对) 5.过程描述语言可以用于描述软件的系统结构。(错) 6.如果通过软件测试没有发现错误,则说明软件是正确的。(错) 7.快速原型模型可以有效地适应用户需求的动态变化。(对) 8.模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。(对) 9.集成测试主要由用户来完成。(错) 10.确认测试计划应该在可行性研究阶段制定(错)

中国考研复试 必备数据库试题1

中国计量学院现代科技学院200 ~ 200 学年第学期《数据库应用技术》课程考试试卷(A) 一、单选题(每题1分,共20分) 1.数据库管理系统、操作系统、应用软件的层次关系从核心到外围是() A.数据库管理系统、操作系统、应用软件 B.操作系统、数据库管理系统、应用软件 C.数据库管理系统、应用软件、操作系统 D.操作系统、应用软件、数据库管理系统 2.要保证数据库的数据独立性,需要修改的是() A.三层模式之间的两种映射 B.模式与内模式 C.模式与外模式 D.三层模式 3.关系代数表达式σ2<5(S)表示() A.表示从S关系中挑选2的值小于第5个分量的元组 B.表示从S关系中挑选第2个分量值小于5的元组 C.表示从S关系中挑选第2个分量值小于第5个分量的元组 D.表示从S关系中挑选第5个分量值大于2的元组 4.下列四项中,不属于数据库特点的是( ) A.数据共享 B.数据完整性 C.数据冗余很高 D.数据独立性高 5.反映现实世界中实体及实体间联系的信息模型是( ) A.关系模型 B.层次模型 C.网状模型 D.E-R模型 6.SQL语言是关系型数据库系统典型的数据库语言,它是() A.非过程化语言 B.过程化语言 C.格式化语言 D.导航式语言 7.将查询关系S的权限授予用户WANG,并允许该用户将此权限授予其 他用户。实现此功能的SQL语句是() A.GRANT SELECT TO S ON WANG WITH PUBLIC B.GRANT SELECT ON S TO WANG WITH PUBLIC C.GRANT SELECT TO S ON WANG WITH GRANT OPTION D.GRANT SELECT ON S TO WANG WITH GRANT OPTION 8.SQL中,下列涉及空值的操作,不正确的是( ) A. AGE IS NULL B. AGE IS NOT NULL C. AGE = NULL D. NOT (AGE IS NULL) 9.SQL语言中,删除一个表的命令是() A.DELETE B.DROP C.CLEAR D.REMOVE

软件工程导论复习笔记

简答题: 1.什么是软件? 答:软件是: (1)指令的集合(计算机程序),通过执行这些指令可以满足预期的特征、功能和性能需求。 (2)数据结构,使得程序可以合理利用信息。 (3)软件描述信息,它以硬拷贝和虚拟形式存在,用来描述程序操作和使用。 2.How do software characteristics differ from hardware characteristics? 软件的特性是如何不同硬件的特性? 答:(1)软件是设计开发的,而不是传统意义上生产制造的(2)软件不会磨损,但会退化 (3)虽然整个工业向着基于构件的构造模式发展,然而大多数软件仍是根据实际的顾客需求定制的 3.What do people mean by the expression "software crisis"? 人们是怎样理解“软件危机”这个短语的?

答:软件危机主要表现在两个方面: (1)无法满足日益增长的对软件的需求。 (2)难以满足对已有的软件系统的维护需求。 软件危机出现的原因: (1)由于软件生产本身存在着复杂性 (2)与软件开发所使用的方法和技术有关 “软件工程”的概念用工程化的思想来克服软件危机。 4.What myths about software still exist ? 软件仍然存在着什么神话? 答:管理者的神话;用户的神话;开发者的神话。 简答题: 1.What are the three generic phases of software engineering? 软件工程的三个一般的阶段是? 答:定义阶段、开发阶段、维护阶段 (软件生存周期的三个阶段:软件定义、软件开发、软件维护) 2.What are the names of the five levels of the SEI Capability Maturity Model?

数据库系统概论知识点总结

一、选择题: 1. 在关系数据库的结构化查询语言中,“DELETE FROM表名”表示(从基表中删除所有属性); 2.在数据库管理系统中,事务的四个特性包括(原子性,一致性,隔离性,持续性); 3.在数据库理论中,用二维表结构表示的数据模型称为(关系模型); 4.在数据库系统结构中,用户使用的数据视图称为(外模式,也称子模式或用户模式); 5.下列说法正确的是(B); A.数据库避免了一切数据冗余 B.数据库中的数据可以共享 C.数据库避免了一切数据的重复 D.数据库具有完全的数据独立性 6.在关系数据库中,用于关系代的关系运算包括(选择,投影,连接,除运算); 7.封锁机制主要用于实现(并发控制); 8.转储的冗余包括(日志文件、数据库后背副本) 9.在局部视图设计中,分E-R图之间的冲突包含下列哪一个(A); A.属性冲突 B.实体冲突 C.联系冲突 D.关系冲突 10.关系演算是用(谓词)来表达查询要求的方式; 11.并发控制:把关系数据库从错误状态恢复到一致状态; 12.转储方式可分为(海量转储和增量转储); 13.在关系数据库的结构化查询语言中,实现分组查询的子句是(GROUP BY); 14.在关系数据库的结构化查询语言中,带有“EXISTS”谓词的子查询返回是(逻辑值真“true”假“false”); 15.在关系数据库的结构化查询语言中,实现“投影”操作的语句是(SELECT); 16.SQL语言提供的功能不包括(A); A.修改表结构 B.删除属性列 C.删除元组 D.授权 17.两个函数依赖集F和G等价的充分必要条件是(F*=G*); 18.下面列出的关于“视图”的条目中,不正确的是(C) A.视图是外模式 B.视图是虚表 C.加快查询语句的执行速度 D.简化查询语句的编写 19.事务定义不正确的说法是(C) A.用户定义的一个数据库操作序列 B.一个不可分割的工作单位

(考研复试)操作系统笔记

1:操作系统的目标:提高资源利用率,提高系统吞吐量,使用户使用更方便,兼容新的计算机硬件和软件。 2:操作系统的作用:用户和计算机硬件之间的接口,使用户方便的操纵硬件,计算机系统的管理者,对计算机资源进行抽象。 3:计算机系统的发展:人工操作方式(穿孔卡片),单道批处理系统(每次只从磁盘中调入一个程序进内存),多道批处理系统(调入多个程序,CPU可以切换),分时操作系统(将一台主机给多个用户使用)实时操作系统(响应快,同时面对大量的远程终端)。 4:操作系统特点:并发,共享,虚拟(空分,时分),异步。5:操作系统的功能:CPU管理(进程控制,同步,通信,调度),存储器管理(内存分配,内存保护,地址映射,内存扩充)设备管理(缓冲管理,设备分配,设备处理)文件管理(存储管理,目录管理,读写保护管理)接口(用户接口管理,程序接口管理) 6:操作系统结构:模块化操作系统,分层式操作系统,C/S 操作系统(分布式),微内核结构(建立在前三者的基础上,微内核只提高“最基本”的服务,进程调度、进程间通信、存储管理、处理I/O设备。其他服务,如文件管理、网络支持等通过接口连到微内核,微内核具有良好的移植性)。 7:传统操作系统中,进程是资源分配和独立运行的基本单

位。 8:为了并发才引入进程。 9:进程控制块PCB:是一个记录型数据结构,记录了操作系统所需的用户描述进程的当前状况和控制进程运行的全部信息,使一个在多道环境环境下不能独立运行的程序成为一个可以独立运行的基本单位。系统创建一个进程的时候就要顺带着创建PCB,OS要调用一个进程的时候就要先查看PCB,系统将PCB组织成若干个链队列或索引表,PCB中有进程标识符,处理机状态,进程调度信息,进程控制信息等。10:进程的特性:动态,并发,独立(独立运行,独立分配资源,独立接受调度),异步(不可预知的速度前进)。11:进程的三种基本状态:就绪,阻塞,执行(就绪到执行到阻塞再回到就绪,执行可以直接回到就绪),此外还有挂起,创建,终止。 12:进程的创建:申请PCB,为新进程分配资源(子进程可以继承父进程,比如父进程打开的文件,和父进程的缓冲区等),初始化PCB,把新的进程插入队列。 13:进程的终止:找出PCB,读出进程状态,若进程在执行,就终止进程,若进程有子孙进程,还要把子进程终止。收回资源,移出PCB。 14:进程的阻塞:停止执行,PCB插入阻塞队列,CPU给另外一个就绪进程。

软件工程课程论文

目录 1.学习目的 (2) 1.1用途 (2) 1.2要求 (2) 2.学习态度 (2) 3、学习内容 (3) 4、学习心得 (5) 5.自我评价 (6) 6.学习成果 (7)

软件工程课程总结 1.学习目的 1.1用途 在本学期的软件工程课程中我们大略学习了软件的开发过程,需要哪些工具,具体建模模式和方法以及这些模型和方法是如何实现软件的某一功能的,让我们在脑海里形成了系统的关于软件开发的流程图,为今后的关于软件工程的学习打下基础,同时为我们开发软件带来方便。通过这学期以来的学习,虽说课本中的很多内容仍不能清晰地理解掌握,但对于软件工程确实也有了更明晰系统的概念和理解,同时也在老师授课下对许多以前未所听闻的开发软件和开发方法如UML模型等有了初步的了解,深感这是一门博大精深而十分有用的学问,需要我们认真进一步地学习。 1.2要求 关于软件工程的学习,我对自己的要求是:①掌握老师课堂上指出的重点内容,并在课后通过各种手段作一定的深入了解。②认真记下重要的笔记,保证按时完成老师交代的作业并及时上交,同时检查自己是否仍有不懂的知识。③积极和同学讨论自己对于书本中一些方法、模型的理解和感受。④上课不旷课逃课,不迟到早退。 2.学习态度 在这个学期的《软件工程》这一门课程的学习中,我的学习态度端正,从没有旷课逃课、请假、迟到早退等行为,上课认真记下老师讲过的重点知识的笔记,下课也和朋友讨论刚学的模型和方法如瀑布模式、增量模式、用例图的画法、活动图的作用等,受益良多。也有按时完成老师布置的作业并及时上交给老师检查。

但是有一点让我惭愧的是,我的课外阅读量太少,对软件的了解仍然有待加强,在今后的学习中,我一定会加强这方面的阅读并好好的运用在软件开发中。 3、学习内容 软件的定义:软件是能够完成预定功能和性能的可执行的计算机程序和使程序正常执行所需要的数据,加上描述程序的操作和使用的文档。软件的特征:①软件有对硬件不可缺失的依赖。②软件有不同与硬件的生产流程。软件不是制造出来的,而是开发出来的。硬件生产的最大成本是复杂的制造工艺,而软件的最大成本则是分析与设计。③软件有不同与硬件的生命过程。包括:磨合期、正常使用期、老化期。 软件危机:①软件开发成本、进度失控。②软件质量不能获得有效保证。③软件不能满足用户应用需要。④软件可维护性差。 软件生存周期:一个软件从定义到开发、使用和维护,直到最终被弃用,要经历一个漫长的时期,通常把软件经历的这个漫长的时期称为生存周期。软件的生存周期可分为三个阶段:软件定义期、软件开发期、运行维护期。 瀑布模式:是传统的软件开发模式,其中的“瀑布”是对这个模式的形象表达,由山顶倾泻下来的水,自顶向下、逐渐细化。其特点是:线性化过程;分为分析、设计、编码、集成等几个阶段,并且各阶段逐级推进,不允许跨越。里程碑管理;阶段评审;文档驱动;简洁便于工程应用的线性化过程步骤,并可以通过里程碑管理机制而使项目进程量化。其明显的优点就是没个阶段结束前都要对所完成的阶段成果进行评审,这使得软件的错误能够在个阶段内尽早发现并尽早解决,总的来说瀑布模式具有良好的质量保证机制,有很强的生命力。 原型进化模式:对软件进行直接模拟或仿真,只需要分析用户的需求框架后进行原型创建,再根据用户的使用评价对原型系统进行逐步细化与完善,通过版本更新逐步满足用户对于软件的多方面需要。 增量模式:开发过程有三个任务域,分别是设计结构、开发构件和集成系统,它既有完善的工程管理机制,又能适应用户需求变更,有利于质量的监控,并且各局部基于构件构造,有利于逐步构建与完善;由于先交付核心构件可利于降低

数据库考研必备复试题

试卷一 一、选择题(每题1分,共20分) 1.在数据管理技术的发展过程中,数据独立性最高的是()阶段。 A. 数据库系统 B. 文件系统 C. 人工管理 D. 数据项管理 2. ()是存储在计算机内的有结构的数据集合。 A. 网络系统 B. 数据库系统 C. 操作系统 D. 数据库 3. 在数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是()。 A. 外模式 B. 内模式 C. 存储模式 D. 模式 4. 作为关系数据系统,最小应具备的关系运算是()。 A. 排序、索引、统计 B. 选择、投影、连接 C. 关联、更新、排序 D. 显示、打印、制表 5. 在select语句中使用group by Sno时,Sno 必须出现在()子句中。 A. where B. from C. select D. having 6. 在where语句的条件表达式中,及零个或多个字符匹配的通配符是()。 A. * B. ? C. % D. _ 7. 对关系模式进行分解时,要求保持函数依赖,最高可以达到()。 A. 2NF B. 3NF C. BCNF D. 4NF 8. 在关系模式R(U,F)中,Y∈X F+是X→Y是否成立的()。 A. 充分必要条件 B. 必要条件 C. 充分条件 D. 既不充分也不必要条件 9. 在关系数据库设计阶段中,完成关系模式设计的阶段是()。 A. 需求分析阶段 B. 概念设计阶段 C. 逻辑设计阶段 D. 物理设计阶段 10. 基本E-R图就是数据库的()。 A. 外模式 B. 逻辑模式 C. 内模式 D. 概念模式 11. 从数据流图构造E-R图时,选择实体一般应先考虑数据流图中的()。 A. 数据项 B. 数据流 C. 数据处理 D. 数据存储 12. 以下()不是当前常用的存取方法。 A. 索引方法 B. 聚簇方法 C. HASH方法 D. 链表方法 13. 事务一旦提交,对数据库的改变是永久的,这是事务的()。 A. 原子性 B. 一致性 C. 隔离性 D. 持久性 14. 并发控制要解决的根本问题是保持数据库状态的()。 A. 安全性 B. 完整性 C. 可靠性 D. 一致性

软件工程读书笔记

软件工程读书笔记 专业:软件工程硕士A班 学生姓名:丁浩宸 学号:13214020 二〇一④年八月

The impact of imperfect change rules on framework API evolution identification:an empirical study 实证研究:框架API更新辨别的不完善变化规则的影响 Wei Wu·Adrien Serveaux·Yann-Ga¨el Gu′eh′eneuc· Giuliano Antoniol 摘要:软件框架在持续更新。程序员保持他们的客户端代码更新很费时。而且不是所有的框架都有着更新的文档说明。因此许多处理方法被提出以减少没有更新文档的影响,这些方法依靠通过辨别软件两个发行版本的改变规则。但是这些改变规则是不完善的,即不是100%正确的。在我们的知识范围内,并没有展示这些非完善改变规则的可用性的实证研究。因此我们设计并实施了一个实验来评价非完善规则的影响。在实验中,实验人员必须在三个不同的发行版本中找到21处丢失了的方法的替换。三个版本分别依靠1)全部正确的改变规则,2)不完善的改变规则,3)无改变规则。统计分析结果表明实验人员在三个不同的发行版本中找到的替换的精度有着显著差异。其中依赖全部正确的改变规则的结果精度是最高的,没有改变规则的精度是最低的,不完善的改变规则在两者中间。不完善改变规则和没有改变规则的精度差的效应值是巨大的,不完善改变规则和完全正确改变规则的精度差的效应值是适度的。研究结果表明框架API更新方法总结出的改变规则确实可以帮助开发者,即使这些规则并不是一直正确的。非完善改变规则可以帮助开发者在文档不可用时更新他们的代码,或者作为部分文档的补充。完全正确和不完善改变规律间适度的差异表明提高改变规则的精度依然可以帮助开发者。 关键词软件维护·可用性·框架API更新·变化规则

数据库系统概论王珊第五版学习笔记

第一章 1.数据库的四个基本概念:数据、数据库、数据库管理系统、数据库系统。 数据:是数据库中存储的基本对象。描述事物的符号称为数据。 数据库:是长期存储在计算机内、有组织的、可共享的大量数据的集合。数据库数据具有永久存储、有组织和可共享三个基本特点。 数据库管理系统:是计算机的基础软件。 数据库系统:是由数据库、数据库管理系统、应用程序和人组成的存储、管理、处理和维护数据的系统。 2.数据处理和数据管理。 数据处理:指对各种数据进行手机、存储、加工和传播的一系列活动的总和。 数据管理:指对数据进行分类、组织、编码、存储、检索和维护。 3.数据独立性。 物理独立性:指用户的应用程序与数据库中数据的物理存储是相互独立的。 逻辑独立性:指用户的应用程序与数据库的逻辑结构是相互独立的。 4.数据模型------是对现实世界数据特征的抽象(现实世界的模拟)。 数据模型是数据库系统的核心和基础。 概念模型:信息模型,按照用户的观点来对数据和信息建模,主要用于数据库设计。 逻辑模型:按照计算机系统的观点对数据建模。 物理模型:描述数据在计算机内部的表示方式和存取方法。 数据模型组成要素:数据结构、数据操作、数据的完整性约束条件。 5.信息世界中的基本概念。 实体:客观存在并可相互区别的事物。 属性:实体所具有的某一特征。 码:唯一标识实体的属性集。 联系:失误内部以及事物之间是有联系的。实体内部的联系通常是指组成实体的个属性之间的联系,实体之间的联系通常是指不同实体集之间的联系。实体之间的联系有一对一、一对多和多对多等各种类型。 6.数据完整性约束条件。 实体完整性:检查主码值是否唯一,检查主码的各个属性是否为空。实体完整性在

软件工程课程笔记

软件工程课程笔记 软件 ●与计算机系统操作有关的程序、规程、规则及任何与之有关的文档和数据 ●软件=程序+数据+文档 程序设计语言的发展 ●机器语言 ●汇编语言 ●高级语言 ●面向问题的4GL 文档 ●标准化 ●规范化 开发过程 ●依赖于开发人员的专业素养,脑力劳动,开发成本、进度很难估计,不可预料因素较多, 产品的不可见性,错误不可能完全剔除 使用过程 ●大量维护投入(纠错、完善、适应) 逻辑特性 ●不会磨损,但会老化 变更与错误影响范围具有扩大的效应 软件分类(基于开发过程):CASE工具软件、个人计算机软件、人工智能软件、事务处理软件、科学与工程计算机软件、嵌入式软件、系统软件、实时软件 软件危机的表现 ●软件越来越复杂,规模越来越庞大 ●但是单纯增加人力,并不能提高生产力 ●随着人员的增加,组织、管理、协调成长突出问题 软件危机的产生原因 ●需求定义不完整、不精确,用户参与少 ●没有挖掘用户愿望 ●缺乏发型项目开发经验和项目组织经验 ●缺乏有力的方法学和工具支持 ●软件产品的特殊性:复杂,开发过程不可见,进度难以估计 开发模型: 瀑布型模型 原型模型 螺旋模型 基于4GL技术的模型 变换模型 敏捷开发 组合模型

CASE工具及环境 软件工具:单一,不兼容 CASE:集成,协同 第3讲软件项目管理 对软件项目开发过程中所涉及的过程、人员、产品、成本和进度等要素进行度量、分析、规划、组织和控制的过程,以确保软件项目按照预订的成本、进度、质量要求顺利完成开发任务。 ●过程管理 过程定义和剪裁 软件项目计划 软件度量 软件项目的跟踪和监督 风险管理 ●人员管理 软件项目团队 纪律和激励机制 ●产品管理 软件需求管理 软件质量保证 软件配置管理 软件度量(Metrics)是指对软件产品、软件开发过程或者资源的简单属性的定量描述 ●产品:软件开发过程中所发生的各种文档和程序 ●过程:与软件开发有关的各种活动,如软件设计等 ●资源:软件开发过程中所需支持,如人员、费用等 注意点 ●定量描述,而不是定性描述 ●简单属性无需参照其它属性便可直接获得定量描述。 软件测量(Measure)是对软件产品、软件开发过程和资源复杂属性的定量描述,它是简单属性度量值的函数,软件测量用于事后或实时状态,如软件可靠性 ●注意点 定量描述,而不是定性描述 复杂属性,不可直接获得、需要参照其它属性的度量值 估算(Estimation)对软件产品、软件开发过程和资源复杂度属性的定量描述,它是简单属性度量值的函数,软件估算用于事前,如软件开发成本 ●注意点 定量描述,而不是定性描述 复杂度,不可直接获得、需要参照其它属性的度量值 事前状态 可采用经验公式,可参考历史资料和数据。估算的结果一般用于签订合同、立项、指定

(考研复试)数据库笔记

1:数据:描述事物的符号记录 2:数据库是长期存储在计算机内,有组织可共享的大量数据的集合。 3:数据库管理系统维语用户和操作系统之间的一层数据管理软件,具有,数据定义,数据组织管理,数据操纵,数据库事务管理和运行管理,数据库建立和维护。 4:数据库系统:计算机系统引入数据库后的系统,简称数据库。 5:数据管理技术3阶段:人工管理阶段:数据不保存,应用程序管理数据,数据不共享,数据不具有独立性。文件管理阶段:数据可以长期保存,文件系统管理数据,数据共享性差冗余大,数据独立性差。数据库系统阶段:数据结构化,数据共享性好,冗余低,易扩充,独立性高。 6:数据模型分为:第一类:概念模型。第二类是逻辑模型和物理模型,逻辑模型有(层次模型,网状模型,关系模型,面向对象模型,对象关系模型),物理模型:对数据最低层的抽象,描述数据库在系统内部的表示方式和存取方式。从现实世界到概念模型的转换是由数据库设计人员完成,从概念模型到逻辑模型转换由数据库设计人员和工具完成,逻辑模型到物理模型就由DBMS完成。 7:数据模型由:数据结构(描述数据库对象和对象之间的,

完整,数据操作(对数据库中各对象的操作的集合)关系).性约束(数据和其联系所具有的制约)三部分组成。 9:层次模型:简单清晰,查询效率高,良好的完整性支持,但是和现实世界不符,查询子女必须通过双亲。网状模型:更直接的表达现实世界,存取效率高,但是结构复杂。关系模型:简历在严格的数学模型上。概念单一,简单易懂,存取路径对用户透明,高独立性,保密性,但是查询效率不高。10:数据库三级模式结构:外模式,模式,内模式,外模式有多个,就是视图的意思,模式就是数据的逻辑结构,内模式就是物理结构。 11:三级结构有两层映像:外模式/模式映像:修改此映像保证外模式不变,保证逻辑路理性,模式/内模式映像,修改此映像保证模式不变,保证物理独立性。 12:数据库系统由数据库,数据库管理系统,应用系统和数据库管理员构成。 13:关系数据库:候选码:某一列的值能唯一标识一个元组。主码:候选码之一。候选码们的属性称为主属性, 14:实体完整性:主码不为空。参照完整性:关系的外码一定为其他关系的主码,或者外码全部为空。用户定义完整性:比如XX不能为空,XX只能取指定值。 15:SQL 结构化查询语言 16:查询:select。定义:create,drop,alter。操纵:insert,。

软件工程 期末复习笔记

软件工程期末复习笔记 胡丹 一.基本概念 1.什么是软件工程? 答:见作业 2.什么是参与者,角色? 答:所有参与到软件项目中的人员称为参与者。把项目或系统的一组职责称为角色。一个角色与一组任务联系在一起,且被派给一个参与者。一个参与者能充当多个角色。 3.系统和模型。系统指内部关联部分的集合。模型指系统的任何抽象。 4.软件工程开发活动:开发活动通过构造和验证应用域模型或系统模型处理复杂性问题,开发活动包括:需求获取、分析、系统设计、对象设计、实现、测试。 二.基本概念(2) 1.系统开发的主要内容集中在系统的3个不同模型上: 功能模型,在MUL中,使用用例图表示功能模型,以从用户观点描述系统功能。 对象模型,在MUL中,使用类图表示对象模型,使用对象、属性、关联和操作来描述系统的结构。 动态模型,在UML中,使用交互图、状态图和活动图表示动态模型,以描述系统的内部行为。 2.用例模型(功能模型) 2.1用例模型=用例文档+用例图 2.2用例间的关系:用例之间的关系关联(association )、包含(include)、扩展(extend)和泛化(generalization)这几种关系。 关系关联(association ):通信1.表示参与者用例之间进行通信。 2.不同的参与者可以访问相同的用例。 包含(include):把它所包含的用例行为作为自身行为的一部分。 扩展(extend):扩展用例被定义为基础用例的增量扩展。 基础用例提供扩展点以添加新的行为。 扩展用例提供插入片段以插入到基础用例的扩展点上泛化(generalization):继承 2.3 用例文档包括的内容:1.用例名。2.范围。 3.级别。 4.主要参与者。 5.涉众及其关注点。 6.前臵条件 7.后臵条件 8.主事件流 9.备用事件流。 3.类图(对象模型) 3.1类是面向对象系统组织结构的核心。对一组具有相同属性、操作、关系和语义的对象的抽象。包括名称部分(Name)、属性部分(Attribute)和操作部分(Operation)。

数据库系统概论期末试题及答案(重点知识)

数据库系统概论期末试题及答案(重点知识)

精心整理,用心做精品2 试题十 一、单项选择题 (本大题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合 题目要 求的,错选、多选或未选均无分。 1. 数据库系统的特点是( )、数据独立、减少数据冗余、避免数据不一致 和加强了数据保护。 A .数据共享 B .数据存储 C .数据应用 D .数据保密 2. 数据库系统中,物理数据独立性是指( )。 A .数据库与数据库管理系统的相互独立 B .应用程序与DBMS 的相互独立 C .应用程序与存储在磁盘上数据库的物理模式是相互独立的 D .应用程序与数据库中数据的逻辑结构相互独立 3. 在数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征 的是( )。 A .外模式 B .内模式 C .存储模式 D .模式 4. E-R 模型用于数据库设计的哪个阶段( )? A .需求分析 B .概念结构设计 C .逻辑结构设计 D .物理结构设计 5. 现有关系表:学生(宿舍编号,宿舍地址,学号,姓名,性别,专 业,出生日期)的主码是( )。 (考 生 答 题 不 得 超 过 此 线)

A.宿舍编号 B.学号 C.宿舍地址,姓名 D.宿舍编号,学号 6.自然连接是构成新关系的有效方法。一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的()。 A.元组 B.行 C.记录D.属性 7.下列关系运算中,()运算不属于专门的关系运算。 A.选择B.连接 C.广义笛卡尔积D.投影 8. SQL语言具有()的功能。 A.关系规范化、数据操纵、数据控制 B.数据定义、数据操纵、数据控制 C.数据定义、关系规范化、数据控制 D.数据定义、关系规范化、数据操纵 9.如果在一个关系中,存在某个属性(或属性组),虽然不是该关系的主码或只是主码的一部分,但却是另一个关系的主码时,称该属性(或属性组)为这个关系的() A.候选码 B.主码 C. 外码 D. 连接码 精心整理,用心做精品3

软件工程课程总结

课程总结
题目
《软件工程》课程总结
学生姓名
学号
学院
专业班级
指导教师
职称
教授
2014 年 11 月
《软件工程》课程总结
一、学习目标 通过系统的学习,了解软件开发从项目确定到需求分析,再到概 要及详细设计、代码实现、开发后的软件测试这一完整软件开发过程。 学习上面提到的每一个步骤中完成任务的相关方法与工具。学完后应 初步具备管理整个软件开发完整流程的能力。提高软件的质量与生产 率,最终实现软件的社会化大生产。在给定成本、进度的前提下,开 发出具有可修改性、有效性、可靠性、可理解性、可维护性、可重用 性、可适应性、可移植性、可追踪性和可互操作性并且满足用户需求 的软件产品。 二、学习态度 这一学期的软件工程课就要进入尾声了,在复习理论知识的同 时,更需要回顾和反思自己的学习态度。

在这学期的软件工程学习中,我从来没有迟到、早退以及旷课。 不过因为参加银行从业考试请了一次假。在这学期中,我每节课都是 按时上课,虽然我对软件、计算机这方面没有天赋,但是我尽量做到 认真听课,提醒自己不要开小差。听很多人说这是一门比较深奥的课 程,刚开始的时候我比较排斥这门课,但是老师讲的风趣幽默,慢慢 的我开始进入状态,上课认真做笔记,认真听讲。
三、学习内容 通过一学期软件工程的学习,使我了解到了很多以前都不知道的 知识。现将所学课本外的知识总结如下:
第一章 软件工程概述 软件工程是工程化软件开发与维护的方法论软件的开发者维护 者或软件项目管理者都将是软件工程的实践者,并都需要掌握与应用 软件工程方法。 1.1.软件是计算机系统中的逻辑成分,是程序、数据、文档等诸 多元素的集合,需要有物理硬件的支持才能产生作用。是一系列按照 特定顺序组织的计算机数据和指令的集合。软件并不只是包括可以在 计算机上运行的电脑程序,与这些电脑程序相关的文档一般也被认为 是软件的一部分。 1.2.软件危机(software crisis),20 世纪 60 年代以前,计 算机刚刚投入实际使用,软件设计往往只是为了一个特定的应用而在 指定的计算机上设计和编制,采用密切依赖于计算机的机器代码或汇 编语言,软件的规模比较小,文档资料通常也不存在,很少使用系统 化的开发方法,设计软件往往等同于编制程序,基本上是个人设计、 个人使用、个人操作、自给自足的私人化的软件生产方式。软件危机 主要表现在:软件开发费用和进度失控,生产出来的软件难以维护, 软件产品质量难以保证等等。 1.3.软件工程是关于软件开发,使用与维护的工程方法学,并是 工程技术、工程管理与工程经济的有机综合。 1.4.结构化方法学是传统的主流方法学,以功能为基本元素,包

中国考研复试必备数据库试题1

中国考研复试必备数据库试题1 中国计量学院现代科技学院200 ~ 200 学年第学期 , 《数据库应用技术》课程考试试卷,A 一、单选题(每题1分,共20分) 1.数据库管理系统、操作系统、应用软件的层次关系从核心到外围是( ) A.数据库管理系统、操作系统、应用软件 B.操作系统、数据库管理系统、应用软件 C.数据库管理系统、应用软件、操作系统 D.操作系统、应用软件、数据库管理系统 2.要保证数据库的数据独立性,需要修改的是( ) A.三层模式之间的两种映射 B.模式与内模式 C.模式与外模式 D.三层模式 3.关系代数表达式σ(S)表示( ) 2<5 A.表示从S关系中挑选2的值小于第5个分量的元组 B.表示从S关系中挑选第2个分量值小于5的元组 C.表示从S关系中挑选第2个分量值小于第5个分量的元组 D.表示从S关系中挑选第5个分量值大于2的元组 4.下列四项中,不属于数据库特点的是( ) A.数据共享 B.数据完整性 C.数据冗余很高 D.数据独立性高 5.反映现实世界中实体及实体间联系的信息模型是( ) A.关系模型 B.层次模型 C.网状模型 D.E-R模型

6.SQL语言是关系型数据库系统典型的数据库语言,它是( ) 过程化语言 B.过程化语言 A.非 C.格式化语言 D.导航式语言 7.将查询关系S的权限授予用户WANG,并允许该用户将此权限授予其他用户。实现此功 ) 能的SQL语句是( A.GRANT SELECT TO S ON WANG WITH PUBLIC B.GRANT SELECT ON S TO WANG WITH PUBLIC C.GRANT SELECT TO S ON WANG WITH GRANT OPTION D.GRANT SELECT ON S TO WANG WITH GRANT OPTION 8.SQL中,下列涉及空值的操作,不正确的是( ) A. AGE IS NULL B. AGE IS NOT NULL C. AGE = NULL D. NOT (AGE IS NULL) 9.SQL语言中,删除一个表的命令是( ) A.DELETE B.DROP C.CLEAR D.REMOVE 10.SQL语言中,HAVING子句用于筛选满足条件的( ) A.列 B.行 C.分组 D.元组 11.数据库的并发操作可能带来的问题包括( ) A.丢失更新 B.数据独立性会提高 C.非法用户的使用 D.增加数据冗余度 12. 若事务T1已经给数据A加上了共享锁,则事务T2( ) A.只能再对A加共享锁 B.只能再对A加排他锁 C.可以对A加共享锁,也可以对A加排他锁 D.不能再给A加任何锁 13.数据 库中的封锁机制是( )的主要方法。 A.完整性 B.安全性 C.并发控制 D.恢复 14.在关系数据库设计中,绘制E-R图属于( )阶段的任务,

软件工程笔记完整版

. 第一章软件工程概述 1.软件危机 (software crisis):是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。即“两低一高”问题:质量低、效率低、成本高。 软件危机也成为“软件萧条(depression)”或“软件困扰(afflication)” 2.软件危机主要表现 1)开发成本和进度估计不准 2)用户对“已完成的”软件系统不满意 3)软件质量往往靠不住 4)软件常常是不可维护的 5)软件通常没有适当的文档资料 6)软件成本逐年上升 7)软件开发生产率滞后于硬件和计算机应用普及的趋势 3.产生软件危机的原因 1)与软件本身的特点有关 a. 软件不同于硬件,是逻辑部件而不是物理部件 缺乏可见性 难于测试 管理和控制开发过程困难 不会因使用时间过长而被“用坏” 难以维护 b.软件不同于一般程序,规模庞大,而且程序复杂性随着程序规模的增加而呈指数上升 2)和软件开发与维护的方法不正确有关 a.对软件开发和维护有关的错误认识和作法 忽视软件需求分析的重要性 认为软件开发就是写程序 轻视软件维护 b. 对软件开发过程与方法的认识与应用 软件开发要经历一个漫长的时期(编程占10-20%) 程序仅是完成软件配置的一个组成部分 软件开发方法要有利于软件维护 4.软件的特点 (1)软件是无形的(intangible) (2)软件副本的大批量生产轻而易举 (3)软件业是劳动密集型的 (4)一个没有经过充分训练的软件开发人员很容易编写出难以理解和修改的软件 (5)软件本身很容易修改。但由于它的复杂性,又很难正确地修改。 (6)软件不像其他的工业产品那样会因使用而磨损,随着反复修改,它的设计会逐渐退化 5.消除软件危机的途径 1)对计算机软件的正确认识 2)认识到软件开发不是个体劳动的神秘技巧,而是一种组织良好、管理严密、各类人员协

(完整版)个人自述考研复试

个人自述考验复试 尊敬的评审老师: 您好!非常感谢您百忙之中阅读我的自述。我是XX,于201X年X月毕业于XX大学,我的专业是XX学。在校期间我系统的学习了XX学的相关课程,具有扎实的基础知识并掌握了一定的技能。同时通过阅读丰富了各方面的知识。我将从下面几方面介绍自己: 一、政治表现 我始终拥护中国共产党,认真贯彻学习党的方针政策。坚持用马列主义、毛泽东思想、邓小平理论、三个代表重要思想及科学发展观武装头脑,坚定政治立场。不断学习法律知识,时刻以爱国主义、为人民服务、诚实守信的道德标准衡量自己的行为,督促自己成为一个有理想、有道德、有文化、有纪律的青年。平常喜欢看新闻和报纸,了解时事和政治,积极提高个人的政治觉悟和品格修养。希望能早日成为一名光荣的中国共产党员,为党、为人民奉献自我。 二、外语水平 随着经济全球化,英语的重要作用在学习和生活中日益凸显。对于护理学专业的学习者而言,更是如此。在大学期间,我努力学习英语,一次性通过了国家四、六级英语考试。并且仍不断学习,继续提高听、说、读、写的能力,为自己打下一个良好的英语基础。 三、业务和科研能力 在校期间,本人认真学习专业课知识。在医实习时,注重理论与实践的结合,将自己所学的知识对实际进行一定的对比和分析,并进行理性的思考。我具有独立处理问题的能力。我觉得沟通交往能力对于以后的研究也是必不可少的。还有,我具有良好的团队协作能力,是个尊重他人和礼让的人,相信在以后的科研工作中能把团体的力量发挥到最大。此外,我有较强的学习能力,并且不惧艰辛和挑战。虽然我现在之所学是如此的冰山一角,但是我相信渴望知识、不惧挑战的我将会在知识和科研的海洋里乘风破浪。通过以上的个人陈述,我认为自己在业务和科研能力方面具备一定的能力。但我深知自己的知识还很欠缺,能力也有待进一步提高,希望通过研究生的学习,在老师的帮助下提升自己。 四,研究计划 如果能有幸成为XX大学XX学院的一员,我一定倍加珍惜这个学习机会,致力于学习和科研工作。具体来说,第一,就是除了公共课和专业的学习外,我会大量的阅读自己研究方向的中外文献并做好阅读笔记,注重培养自己理解、分析、评价论文的能力。同时,争取每个实践机会并参与导师的项目和课题的研究。在这两者的基础上,尝试并逐步提高论文写作。第二,我仍会坚持并加倍努力学习英语,更注重自己听、说能力的提高。同时,提高阅读国外文献的能力。第三,网络对于研究生的学习和科研都是极其重要的,我会努力提高运用网络

湖南大学软件工程复试攻略

湖大2013年硕士研究生复试 (一)复试由笔试和专业综合面试组成。复试总分分值240分,其中复试专业课100分,外语 听力测试20分,专业综合面试120分。 (二)复试笔试内容包括外语听力测试和复试专业课考试。 外语听力测试时间:3月23日下午14:00—14:30 复试专业课笔试时间:3月23日下午14:30—16:30 考试地点:南校区教学楼(具体安排另行通知,请考生关注湖南大学研究生招生信息网的通知) 二年真题(2010.2011)+一年真题(2012回忆版)+笔记(复习目录、重点)——参考2012年 笔试部分 复试笔试只考软件工程,总共有5个大题重复一、二个吧。 作答时像政治,要点写上,再论述下。就算不会也尽量写满,把你背的东西,有关无关都写些上去,反正不能空(这样分高些) 英语听力 今年英语听力只有20分有单个听的(听一个答一个) 再就是听完一段对话、一段话再作答(去年的前面跟六级题型、难度差不多)。之后就是听力填单词,

填句子。最后是听一段话总结中心思想(有点专四的感觉——本人水平不高) 英语口语面试 敲门进后说hello ,…(去年我们的有一个黑人老师,还有一个本校老师)。作个自我介绍,老师问你几个问题,一般三个。黑人老师问了一个(我对长沙有什么看法,长沙有哪些地方好的?我当初就说天气较好,空气啥的不错,听不清时本校老师会提示或者会把关键词复述一遍), 另外那个本校老师问二个(经常会用网络做些什么事情?会不会经常说英语?我说My English is very poor)。 不要紧张,问的不会太难,而且老师也很和气,从头到尾都是微笑着问你。 专业面试 在复试面试过程中,还需要注意一些其他的细节,比如礼仪、着装等方面。(进门之前最好要先敲门,进了之后可以说:各位老师您们好?回答完问题要说谢谢老师)因为导师对考生的印象是非常重要的,会直接影响到考生的最终得分以及录取情况。在面试当天要注意个人仪表,可以不用穿得太高档,但是一定要整洁、整齐,不要给老师邋遢的感觉。在回答问题过程中要有自信,眼神不要游离(哪个老师问问题时最好把目光转向他--个人看法),同时要礼貌、谦和。面试结束离开考场时,要鞠躬向老师道别,可以提高印象分。 掌握面试时的沟通技巧。 第一,反应要迅速。第二,不要紧张。熟悉的地方可以多说一点,不懂的地方尽量避开,不要不懂装懂。如果一开始就察觉到自己的把握不是很大,就不要顺着老师的思路走,把老师引到你熟悉的领域去。第三,注意真实。可以多说自己比较优秀的一面,但是不要虚夸,回答要有理有据,用辩证的方法全面看待问

相关主题