昆明理工大学软件工程期末考试考点.docx

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
文稿归稿存档编号:[KKUY-KKIO69-OTM243-OLUI129-G00I-FDQS58-MG129] 文稿归稿存档编号:[KKUY-KKIO69-OTM243-OLUI129-G00I-FDQS58-MG129] 昆明理工大学软件工程期末考试考点 概论 软件: 计算机软件指计算机系统中的程序及其文档 软件的特点: 软件是一种逻辑实体,而不是有形的系统元件,其开发成本和进度难以准确地估算 软件是被开发的或被设计的,没有明显的制造过程,一旦开发成功,只需复制即可,但其维护的工作量大 软件的使用没有硬件那样的机械磨损和老化问题 软件工程定义: 软件工程是应用计算机科学、数学及管理科学等原理,开发软件的工程。软件工程借鉴传统工程的原则、方法,以提高质量、降低成本为目的 软件工程的框架: 目标: 生产具有正确性、可用性以及价格合宜的产品 正确性反映软件产品实现相应功能规约的程度 可用性反映软件的基本结构、实现及其文档为用户可用的程度 价格合宜反映软件开发与运行的总代价满足用户要求的程度 过程 生产一个最终满足需求且达到工程目标的软件产品所需要的步骤 软件工程过程包括:开发过程、运作过程、维护过程、管理过程、支持过程、获取过程、供应过程、剪裁过程等 原则 选取适宜的开发模型 采用合适的设计方法 提供高质量的工程支持 重视软件工程的管理 软件生存周期: 计算机系统工程、需求分析、设计、编码、测试、运行和维护 系统工程 计算机系统的元素: 软件、硬件、人员、数据库、文档和规程 系统工程的任务: 识别用户的要求 系统建模和模拟 成本估算及进度安排 可行性分析 生成系统规格说明 可行性分析: 开发一个基于计算机的系统通常都受到资源(人力、财力、设备等)和时间上的限制,可行性分析主要从经济、技术、法律等方面分析所给出的解决方案是否可行,能否在规定的资源和时间的约束下完成 需求工程 软件需求: 用户对目标软件系统在功能、行为、性能、设计约束等方面的期望 软件需求的分类: 功能需求、性能需求、用户或人的因素、环境需求、界面需求、文档需求、数据需求、资源使用需求、安全保密要求、可靠性需求、软件成本消耗与开发进度需求、其他非功能性要求 需求工程的主要活动: 需求获取、需求分析、协商与建模、需求规约与验证、需求管理 需求获取方法与策略: 建立顺畅的通信途径、访谈与调查、观察用户操作流程、组成联合小组、用况 设计工程 软件设计的目标、任务: 软件设计过程则解决“怎么做”的问题 使用一种设计方法,软件分析模型中通过数据、功能和行为模型所展示的软件需求的信息被传送给设计阶段,产生数据/类设计、体系结构设计、接口设计、部件级设计 软件设计原则:抽象化与逐步求精 抽象:是在软件设计的规模逐渐增大的情况下,控制复杂性的基本策略。 抽象的过程是从特殊到一般的过程,上层概念是下层概念的抽象,下层概念是上层概念的精化和细化。 软件设计中主要抽象手段有:过程抽象和数据抽象 逐步求精:把问题的求解过程分解成若干步骤或阶段,每步都比上步更精化,更接近问题的解法 抽象使得设计者能够描述过程和数据而忽略低层的细节,而求精有助于设计者在设计过程中揭示低层的细节 模块化:即把软件按照规定原则,划分为一个个较小的,相互独立的但又相互关联的部件,实际上是系统分解和抽象的过程。 模块:是数据说明、可执行语句等程序对象的集合,它是单独命名的,并且可以通过名字来访问 信息隐藏: 每个模块的实现细节对于其它模块来说应该是隐蔽的 块中所包含的信息不允许其它不需要这些信息的模块使用 通过信息隐蔽,则可定义和实施对模块的过程细节和局部数据结构的存取限制 内聚:是一个模块内部各个元素彼此结合的紧密程度的度量 耦合:是模块之间的相对独立性(互相连接的紧密程度)的度量 模块之间的连接越紧密,联系越多,耦合性就越高,而其功能独立性就越弱 一个模块内部各个元素之间的联系越紧密,则它的内聚性就越高 功能独立性比较强的模块应是高内聚低耦合的模块 软件测试 白盒测试:把测试对象看作一个透明的盒子,测试人员根据程序内部的逻辑结构及有关信息设计测试用例,检查程序中所有逻辑路径是否都按预定的要求正确地工作 白盒测试主要用于对模块的测试:程序模块中的所有独立路径至少执行一次、对所有逻辑判定的取值都至少测试一次、在上下边界及可操作范围内运行所有循环、测试内部数据结构的有效性等 黑盒测试:把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能需求 黑盒测试可用于各种测试:不正确或遗漏的功能、接口错误,如输入/输出参数的个数、类型等、数据结

文档评论(0)

186****5321 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档