4) 作用:标注“系统应该做什么,不应该做什么”与可以做出开发者理解系统如何勾画、如何设计和如何实现基础 5) 问题:可能存在冗余、不一致和冲突等问题与解决了上述问题
6) 捕获系统功能,包括体系结构方面具有意义的功能与给出细化系统功能,包括在体系结构方面具有意义的功能 7) 定义一些进一步需要在分析模型中予以分析用况与定义每一个用况细化
设计层及相关概念
设计目标:定义满足系统/产品分析模型所规约需求的软件结构
基本术语:设计子系统、设计类、用况细化[设计]、接口、以及用于表达子系统之间关系的依赖、用于表达设计类之间关系的关联等 ,这些术语确定了系统设计模型的各种形态
设计模型的基本组成
设计子系统、设计类、用况细化[设计]、接口、以及用于表达子系统之间关系的依赖、用于表达设计类之间关系的关联等 ,这些术语确定了系统设计模型的各种形态
建造一个系统设计模型的活动和任务,以及各活动的输入与输出
体系结构设计:输入:用况模型、补充需求、分析模型、体系结构描述[分析模型角度];输出: 子系统[概述]、接口[概述]、设计类[概述]、部署模型[概述]、体系结构描述[设计] 设计用况:输入:用况模型、补充需求、分析模型、部署模型; 输出: 用况[设计-实现]、设计类[概述]、子系统[概述]、接口[概述]
对类设计:输入: 用况[设计-实现]、设计类[概述]、接口[概述] 、分析类[完成];输出:设计类[完成] 设计子系统:体系结构描述[设计]、子系统[概述]、接口[概述];输出:子系统[完成]、接口[完成]
如何处理需求中所捕获的非功能需求。
需求分析模型与设计模型之间的比较
第六章 软件生存周期过程与管理 1.基本概念
软件测试:有规程地发现错误的过程,其中错误(ERROR):与所期望的设计之间的偏差,该偏差可能产生不期望的系统行为或失效。失效(FAILURE):与所规约的系统执行之间的偏差。失效是系统故障或错误的后果。故障(FAULT):导致错误或失效的不正常条件。故障可以是偶然性的或是系统性的。
测试用例:为了发现程序中的故障而专门设计的一组数据或脚本 测试覆盖率:定量描述一个或一组测试的效率 2.简答题
测试过程模型,并分析这一模型在软件测试技术研究以及实践中的作用
答:软件测试是一个有程序的过程,包括测试设计、测试执行、以及测试结果比较等
1. 环境模型、被测模型和错误模型在软件测试中扮演了一种很重要的角色;这些模型的质量,特别是程序模型的质量,对发现错误具有关键性的作用
2. 软件测试的错误假定是,实际结果与预期结果不符,而后在此基础上可进一步分析是什么错误
软件测试与调度的区别 答:
1) .测试从一侧面证明程序员的“失败”。调度为了证明程序员是正确的
2).测试以已知条件开始,使用预告定义的程序且有预知的结果,不可预见的仅是程序是否通过测试 3).测试是有计划的,并要进行测试设计。高度是不受时间约束的 4).测试是发现错误、改正错误、重新测试的过程。调试是一个推理过程 5).的执行是有规程的。调 试的执行往往要求程序员进行必要推理
6).测试经常由独立的测试组在不了解软件技术的条件下完成的。高度必须由了解详细设计的程序员完成 7)大多数测试的执行和设计可由工具支持。调试时,程序员能利用的工具主要是调试器
程序流程图的作用及构成 答:着重于过程属性描述
简述语名覆盖、分支覆盖、条件组合覆盖、路径覆盖的含义及它们之间的关系 答:路径覆盖:执行所有可能穿过程序控制流程的路径 语句覆盖:至少执行程序中所有语句一次 分支覆盖:至少将程序中的每一个分支执行一次
条件覆盖:指每个判定中的所有可能的条件取值至少执行一次
条件组合覆盖:设计足够测试,使每个判定中的所有可能的条件聚会组合至少执行一次
存在以下关系:
语句覆盖《分支覆盖《条件组合覆盖《。。。路径覆盖
简术单元测试、集成测试、有效性测试的含义及它们之间的区别
答:单元测试:主检验软件设计的最小单元――模块。该测试以详细设计文档为指导,测试模块内的重要控制路径。 集成测试:是软件组装的一个系统化技术,其目标是发现与接口有关的错误 有效性测试:发现软件实现的功能与需求规格说明书不一致的错误
简述路径测试技术、事务流测技术的主要依据 答:一个依据程序逻辑结构,一个依据软件行为描述
简述程序流程图与事务流程图之间的主要区别,并分析这些区别的主要原因 答:1)基本模型元素所表达的语义不同
2)一个事务不等 同于路径测试中一条路径,可能在中间某处就完成了某一用户工作,终结了一个事务 3).事务流程图中的分支和节点可能是一个复杂的过程