版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章概述1.什么叫软件危机?软件危机重要有哪几种体现?答:软件危机指是软件开发和维护过程中遇到一系列严重问题。软件危机包括下述两方面问题:如何开发软件,如何满足对软件日益增长需求;如何维护数量不断膨胀已有软件。软件危机重要有下列体现:①产品不符合顾客实际需要。②软件开发生产率提高速度远远不能满足客观需要。③软件产品质量差。④对软件开发成本和进度预计经常不精确。⑤软件可维护性差。⑥软件文档资料普通既不完整,也不合格。⑦软件价格昂贵。2.什么叫软件工程?软件工程是如何克服软件危机?答:软件工程是指引计算机软件开发和维护一门学科。它采用工程概念、原理、技术和办法,把通过时间考验而证明是对的管理技术和当前可以得到最佳技术办法结合起来,用于开发与维护软件。软件工程是这样克服软件危机:①用分阶段生存周期筹划严格管理。②坚持进行阶段评审。③实行严格产品控制。④采用当代程序设计技术。⑤应能清晰地审查成果。⑥合理安排软件开发小组人员。3.软件工程目的、原则和重要研究内容是什么?答:软件工程目的是:①定义良好办法学,面向筹划、开发维护整个软件生存周期办法学。②拟定软件成分,记录软件生存周期每一步软件文献资料,按步显示其轨迹。③可预测成果,在生存周期中,每隔一定期间可以进行复审。软件工程学最后目,是以较少投资获得易维护、易理解、可靠、高效率软件产品。软件工程原则是:①分解。②抽象和信息隐蔽。③一致性。④拟定性。软件工程重要研究内容是:软件构造、软件设计与维护办法、软件工具与环境、软件工程原则与规范、软件开发技术与管理技术有关理论。第2章可行性研究1.可行性研究任务是什么?简述可行性研究环节。答:可行性研究任务是:①经济可行性。②技术可行性。③运营可行性。④法律可行性。⑤开发方案可行性。可行性研究环节是:①复查系统规模和目的。②研究当前正在使用系统。③导出新系统高层逻辑模型。④重新定义问题。⑤导出和评价供选取方案。⑥推荐一种方案并阐明理由。⑦推荐行动方针。⑧书写筹划任务书。⑨提交审查。第3章需求工程1.需求分析任务是什么?如何理解分析阶段任务是决定“做什么”,而不是“如何做”?答:需求分析基本任务是分析与综合已收集到需求信息,通过度析找出需求信息内在联系和也许矛盾,通过综合找出解决问题办法并建立系统逻辑模型。详细地说,需求分析是提炼、分析和审查已收集到需求信息,找出真正和详细需求,并保证所有有关人员都理解其含义。此外,通过建立软件系统逻辑模型,发现和找出需求信息中存在冲突、漏掉、错误或含糊问题。①绘制系统关联图。②创立顾客接口原型。③分析需求可行性。④拟定需求优先级。⑤为需求建立模型。⑥创立数据字典。⑦质量功能调配。我是这样理解分析阶段任务是决定“做什么”,而不是“如何做”:分析阶段重要是指顾客对软件功能与性能需求,也就是顾客但愿软件可以做什么事情,完毕哪些功能,达到哪些性能等,而不是如何去实现软件这些功能。2.需求规格阐明书由哪些某些构成?各某些关系是什么?答:需求规格阐明书由下列某些构成:①引言。②任务概述。③数据描述。④功能规定。⑤性能需求。⑥运营需求。⑦其她规定。⑧附录。各某些关系是:一方面顾客必要对软件功能和性能提出初步规定,并澄清某些模糊概念;然后软件分析人员认真理解顾客规定,细致地进行调查分析,把顾客规定做什么问题转换成一种完全、精细软件逻辑模型并写出软件需求规格阐明,精确地表达顾客规定。第4章概要设计1.构造化设计办法基本思想是什么?它如何与SA办法相衔接?答:构造化设计办法基本思想是:①系统分析员审查软件筹划、软件需求分析提供文档,提出候选最佳推荐方案以及系统流程图、构成系统物理元素清单、成本效益分析和系统进度筹划供专家审定,审定后进入设计。②拟定模块构造,划分功能模块,将软件功能需求分派给所划分最小单元模块。拟定模块间联系,拟定数据构造、文献构造、数据库模式,拟定测试办法与方略。③编写概要设计阐明书、顾客手册、测试筹划,选用有关软件工具来描述软件构造,选取分解功能与划分模块设计原则。它是这样与SA办法相衔接:①设计系统方案。②选用一组合理方案。③推荐最佳实行方案。④功能分解。⑤软件构造设计。⑥数据库设计与文献构造设计。⑦制定测试筹划。⑧编写概要设计文档。⑨审查与复审概要设计文档。2.什么是模块独立性?用什么来度量?答:模块独立性是指软件系统中每个模块只涉及软件规定详细子功能,并且与其她模块接口简朴。模块独立概念是模块化、抽象、信息隐蔽和局部化概念直接成果。模块独立限度可以由两个定性原则度量,这两个原则分别称为耦合和内聚。耦合衡量不同模块彼此间互相依赖紧密限度;内聚衡量一种模块内部各个元素彼此结合紧密限度。3.什么是自顶向下设计?为什么说它特别合用于大型软件开发?答:自顶向下设计:设计人员要对系统有一种全面理解,然后从顶层开始,持续地逐级向下分解,直至系统所有模块都小到便于掌握为止。对于大型软件开发,如若采用自顶向下办法进行设计,可以较好把握整体系统,使得系统整体构造合理。第5章详细设计1.简述详细阐明书重要内容。如何对它进行复审?答:详细阐明书重要内容是:①表达软件构造图表。②对逐个模块程序描述,涉及算法和逻辑流程,输入/输出项与外部接口等。这样对它进行复审:详细设计复审重点应当放在各个模块详细设计上。例如,设计模块能否满足其功能与性能规定,选取算法与数据构造与否合理,与否符合编码语言特点,设计描述与否简朴而清晰等。2.阐明详细设计基本原则和任务。答:详细设计基本原则是:①由于详细设计蓝图是给人阅读,是编码基本,因此模块逻辑描述要清晰易读、对的可靠。②采用构造化设计办法,改进控制构造,减少程序复杂限度,从而提高程序可读性、可测试性、可维护性。③选取恰当描述工具来描述各模块算法。详细设计任务是:为每一种模块拟定使用算法和有关数据构造,并用选定表达工具清晰地描述。这一阶段重要任务如下:①为每个模块拟定采用算法,选取某种恰当工具表达算法过程,写出模块详细过程性描述。②拟定每一模块使用数据构造。③拟定模块接口细节。④要为每一种模块设计出一组测试用例,以便在编码阶段对模块代码(即程序)进行预定测试。第6章面向对象设计1.什么是面向对象办法学?试阐述这种办法学重要长处。答:面向对象软件开发办法是一种运用对象、类、继承、封装、聚合、消息传送、多态性等概念来构造系统软件开发办法。面向对象办法基本思想是从现实世界中客观存在事物出发来构造软件系统,并在系统构造中尽量运用人类自然思维方式。面向对象办法学重要长处:①从问题域中客观存在事物出发来构造软件系统,用对象作为对这些事物抽象表达,并以此作为系统基本构成单位。②事物静态特性是可以用某些数据来表达特性,可以用对象属性表达,事物动态特性(即事物行为)用对象服务(或操作)表达。③对象属性与服务结合为一种独立实体,对外屏蔽其内部细节,称为封装。④把具备相似属性和相似服务对象归为一类,类是这些对象抽象描述,每个对象是它类一种实例。⑤通过在不同限度上运用抽象原则,可以得到较普通类和较特殊类。特殊类继承普通类属性和服务,面向对象办法支持对这种继承关系描述与实现,从而简化系统构造过程及其文档。⑥复杂对象可以用简朴对象作为其构成某些,称为聚合。⑦对象之间通过消息进行通信,以实现对象之间动态联系。⑧通过关联表达对象之间静态关系。2.面向对象分析过程、遵循准则是什么?答:面向对象分析过程:①发现对象、定义它们类。②辨认对象内部特性。③辨认对象外部关系。④划分主题,建立主题图。⑤定义usecase,建立交互图。⑥建立详细阐明。⑦原型开发。面向对象分析遵循准则是:①抽象。②分类。③聚合。④关联。⑤消息通信。⑥粒度控制。⑦行为分析。3.为“火车站自动化售票系统”设计一种构造化模型。答:第7章编码1.评价、选取可用编程语言准则是什么?答:(1)抱负原则:①应当有抱负模块化机制,以及可读性好控制构造和数据构造,以使程序容易测试和维护,同步减少软件生存周期总成本。②应当使编译程序可以尽量多地发现程序中错误,以便于调试和提高软件可靠性。③应当有良好独立编译机制,以减少软件开发和维护成本。(2)实践原则:①语言自身功能。②系统顾客规定。③编码和维护成本。④软件兼容性。⑤可以使用软件工具。⑥软件可移植性。⑦开发系统规模。⑧程序设计人员知识水平。2.提高软件可靠性技术有哪些?它们有什么不同?答:提高软件可靠性技术有:一类是避开错误技术,另一类是容错技术。两者不同是:避开错误技术是在开发过程中不让差错潜入软件技术;容错技术是对某些无法避开差错,使其影响减至最小技术。避开错误技术是进行质量管理,实现产品应有质量所不可少技术,也就是软件工程中所讨论先进软件分析和开发技术和管理技术。但是,无论使用多么高水平避开错误技术,也无法做到绝无错误,这就需要采用容错技术。实现容错重要手段是冗余和防错程序设计。3.采用面向对象程序设计办法时,基本环节是什么?答:(1)建立软件系统动态模型:①依照问题域和详细规定拟定构成软件系统对象及该对象所应具备固有解决能力。②分析各对象之间所有联系,并拟定它们互相间消息传递方式。③设计对象消息模式,由消息模式和对象解决能力共同构成对象外部特性。(2)建立软件系统静态模型:①分析各对象外部属性,将具备相似外部属性对象归为一类,进而拟定不同类别。②拟定类间继承关系,将具备公共性质对象放在较上层类中描述,并通过继承来共享公共性质。③依照以上两点设计各对象外部属性和层次构造。(3)实现:①为每个对象设计其内部实现,涉及内部状态体现形式和固有解决能力实现。②为每个类设计其内部实现,涉及数据构造和成员函数。③创立所需要对象(即类实例),以实现这些对象之间联系。第8章软件质量与质量保证1.为什么测试应当从OOA和OOD开始?答:OO软件工程模型从对系统需求表达开始,逐渐演化为详细类模型、类连接和关系、系统设计和分派、以及对象设计。在每个阶段都测试模型,使错误传播到下一次递进前发现错误,在它们开发背面阶段,OOA和OOD模型提供了关于系统构造和行为实质性信息,为此,这些模型应当在生成代码前经受严格复审。2.纠错性维护和排错性维护与否是同一件事,阐明理由。答:不是同一件事。纠错性维护是指在软件交付之后,针对在特定状况下暴露本来掩藏错误进行诊断和改正过程。排错性维护是指在软件测试阶段,程序存在大量错误,通过测试来发现错误,通过排错来纠正错误。3.如何提高软件可维护性?答:保证可维护性复审:在需求分析阶段复审中,应对将来也许修改和可以改进某些加以注释,对软件可移植性加以讨论并考虑也许影响软件维护系统界面;在设计阶段复审中,应从易于维护和提高设计总体质量角度全面评审数据设计、总体构造设计、过程设计和界面设计;代码复审重要强调编程风格和内部文档这两个直接影响可维护性因素;最后,每一阶段性测试都应当指出软件正式交付之前,应当进行防止性维护。第9章项目筹划与管理1.名词解释:软件工作范畴、主程序员小组、成本估算、软件配备管理、基线。答:软件工作范畴,即软件用途及对软件规定,其中重要涉及软件功能、性能、接口和可靠性等4个方面。主程序员小组核心由1位高档工程师(主程序员)、2-5位技术人员和1位后备工程师构成。主程序员负责小组所有技术活动筹划、协调和评审工作;技术人员负责项目详细分析和开发;后备工程师则支持主程序员工作,必要时能代替主程序员工作,以便使项目能继续进行,而使损失最小。软件开发成本估算重要是指软件开发过程中所耗费工作量及相应代价。软件开发成本估算,应是从软件筹划、需求分析、设计、编码、单元测试、组装测试到确认测试,以整个软件开发全过程所耗费代价作为根据。软件配备管理是讨论软件生存期各阶段交付项管理问题。软件配备管理SCM是贯穿于整个软件过程中保护性活动。由于变化也许发生在任意时间,SCM活动被设计用于标记变化、控制变化、保证变化被恰本地实现、向其她也许有兴趣
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 讲述一种材料课件
- 咯血并发症的护理
- 安全五确认培训知识
- 产科围手术护理
- 三位数乘两位数过关自测训练题带答案
- 《汽车业外语》课件
- 安徽省马鞍山市2022届高三下学期第二次教学质量检测(二模)化学试卷
- 医疗行业数据分析
- 大学生恋爱班会活动
- 微课马尔可夫分析法财经管理人力资源管理系副教授
- 我是节电小能手课件
- Module 5 Unit 1教案 初中英语 外研版 八年级上册 (2022学年)
- 2022年泰安技师学院教师招聘笔试题库及答案解析
- 人教版九年级下册道德与法治全册教案完整版教学设计含教学反思
- 六年级上册数学课件-6.1 分数混合运算 |西师大版 (共15张PPT)
- 建筑工程勘察项目-技术标
- 道路运输企业职业安全健康管理工作台帐(全版通用)参考模板范本
- 大马大马告诉我
- TSG 81-2022 场(厂)内专用机动车辆安全技术规程
- 口腔组织病理学教学课件:牙源性肿瘤
- 通用模板-封条模板
评论
0/150
提交评论