需求分析与设计课后答案
- 格式:docx
- 大小:50.85 KB
- 文档页数:14
第3章需求分析一、填空题(30小题)1、需求分析的困难主要体现在4个方面:问题的复杂性、( )、( )、需求易变性。
答案:交流障碍、不完备性和不一致性2、由于数据流是流动中的数据,所以必须有( )。
除了与( )之间的数据流不用命名外,数据流应该用名词或名词短语命名。
答案:流向、数据存储3、需求分析是指,开发人员要准确理解( ),进行细致的( ),将用户非形式的需求陈述转化为( ),再由( )转换到相应的形式功能规约(需求规格说明)的过程。
答案:用户的要求、调查分析、完整的需求定义、需求定义4、建立数据字典一般的两种形式是( )和( )。
答案:手工建立、利用计算机辅助建立并维护5、在进行可行性研究和软件计划以后,如果确认开发一个新的软件系统是必要的而且是可能的,那么就进入( )阶段。
答案:需求分析6、结构化语言是介于自然语言(英语和汉语)和形式化语言之间的一种半形式语言。
它的结构可分成外层和内层两层,外层用来描述( ),采用( )、( )、( )三种基本结构。
答案:控制结构、顺序、选择、重复7、在SA的需求描述工具中,( )描述系统的分解,即描述系统由哪几部分组成,各部分之间有什么联系等。
( )定义了数据流图中每一个图形元素。
结构化语言、判定表和判定树则详细描述数据流图中不能被再分解的( )。
答案:数据流图、数据字典、每一个加工8、IDEF方法分为以下三部分。
IDEF0:用来描述系统的( ),建立系统的( )。
IDEF1:用来描述系统的( ),建立系统的( )。
IDEF2:用来进行系统的( ),建立系统的( )。
答案:功能活动及联系、功能模型、信息及其联系、信息模型、模拟、动态模型9、三种描述加工逻辑的工具各有优缺点,对于顺序执行和循环执行的动作,用( )描述。
对于存在多个条件复杂组合的判断问题,用( )和( )。
答案:结构化语言、判定表、判定树10、经过需求分析,开发人员已经基本上理解了用户的要求,确定了目标系统的功能,定义了系统的数据,描述了处理这些数据的基本策略。
《中学英语教材分析与设计》第一次作业[判断题]20. 教材还需要考虑学习者的学习风格和学习策略。
参考答案:正确[判断题]19. 需求分析应该只关注学习者,以学生为中心。
参考答案:错误[判断题]18. 人教社普通高中课程标准实验教科书吸取了现代语言教学理论和实践成果,同时又结合我国国情,采取功能、结构、话题及"任务型”活动途径相结合的教学方法。
参考答案:正确[判断题]17. 人教版初中英语教材Go for it!体现的是任务型教学大纲。
参考答案:正确[判断题]16. 程序型大纲根据与各个学科知识相关的容安排教学,把学习者的其他学科知识领域引入外语或第二语言教学,或者通过外语或第二语言来学习其他学科的知识。
它要求学习者具备一定的文化水平和知识水平。
参考答案:错误[判断题]15. 容型教学大纲是一种强调过程的语言教学大纲,学习者在学习过程中有很多任务型的学习活动,如讨论等。
参考答案:正确[判断题]14. 任务型大纲、容型大纲、和程序型大纲都属于结果性大纲。
参考答案:错误[判断题]13. 容型大纲、程序型大纲和任务型大纲都属于过程性大纲。
参考答案:正确[论述题]5.列举五种主要的教学大纲参考答案:容教学大纲、任务型教学大纲、功能―意念大纲、语法教学大纲、情景教学大纲和程序性大纲。
[论述题]4. 简述《英语课程标准》对教材的使用建议。
参考答案:教师要善于结合实际教学需要,灵活地和有创造性地使用教材,对教材的容、编排顺序、教学方法等方面进行适当的取舍或调整。
1)对教材容进行适当的补充和删减2)替换教学容和活动3)扩展教学容或活动步骤4)调整教学顺序5)调整教学方法6)总结教材使用情况教材使用一段时间以后,应该及时对使用情况进行总结分析。
主要包括以下几个方面:A.教材的使用是否达到了预先制订的教学目标;B.教材的使用是否有利于提高教学效果;C.教师和学生对教材的满意情况;D.教材在使用过程中存在哪些明显的优缺点;E.如果继续使用该种教材,应该在哪些方面做进一步的调整。
需求分析考试题型及答案一、单项选择题(每题2分,共20分)1. 需求分析的主要目的是()。
A. 确定项目的范围和目标B. 识别项目的风险C. 制定项目的预算D. 设计项目的架构答案:A2. 以下哪项不是需求分析阶段的主要活动?()。
A. 收集用户需求B. 确定系统功能C. 编写测试计划D. 制定需求规格说明书答案:C3. 需求分析阶段不包括以下哪项内容?()。
A. 功能性需求B. 非功能性需求C. 系统架构设计D. 用户界面设计答案:C4. 需求分析中,以下哪项不是需求的来源?()。
A. 用户访谈B. 市场调研C. 竞争对手分析D. 项目预算答案:D5. 在需求分析过程中,以下哪项不是需求验证的方法?()。
A. 原型法B. 用例分析C. 需求审查D. 代码审查答案:D6. 需求变更控制的目的是()。
A. 减少需求变更B. 确保需求的完整性C. 降低项目成本D. 加快项目进度答案:B7. 以下哪项不是需求分析阶段的输出物?()。
A. 需求规格说明书B. 项目计划C. 用例模型D. 数据字典答案:B8. 需求分析阶段,以下哪项不是需求分析工具?()。
A. 用例图B. 活动图C. 数据流图D. 甘特图答案:D9. 以下哪项不是需求分析阶段的非功能性需求?()。
A. 性能需求B. 安全需求C. 界面需求D. 可维护性需求答案:C10. 需求分析阶段,以下哪项不是需求分析的原则?()。
A. 明确性B. 完整性C. 可测试性D. 可扩展性答案:D二、多项选择题(每题3分,共15分)11. 需求分析阶段的主要任务包括()。
A. 确定项目目标B. 收集用户需求C. 制定项目计划D. 编写需求规格说明书答案:ABD12. 需求分析中,以下哪些是需求分析的方法?()A. 访谈B. 问卷调查C. 竞品分析D. 原型法答案:ABCD13. 需求分析阶段,以下哪些是需求分析的输出物?()A. 需求规格说明书B. 用例图C. 活动图D. 项目计划答案:ABC14. 需求分析阶段,以下哪些是需求分析的原则?()A. 明确性B. 完整性C. 可测试性D. 可扩展性答案:ABC15. 需求分析阶段,以下哪些是需求分析的工具?()A. 用例图B. 数据流图C. 甘特图D. 活动图答案:ABD16. 需求分析是软件开发过程中的第一步。
第六章数据库设计习题解答和解析1. 1.试述数据库设计过程。
答:这里只概要列出数据库设计过程的六个阶段:(1)需求分析;(2)概念结构设计;(3)逻辑结构设计;(4)数据库物理设计;(5)数据库实施;(6)数据库运行和维护。
这是一个完整的实际数据库及其应用系统的设计过程。
不仅包括设计数据库本身,还包括数据库的实施、运行和维护。
设计一个完善的数据库应用系统往往是上述六个阶段的不断反复。
解析:希望读者能够认真阅读《概论》6.1的内容,了解并掌握数据库设计过程。
2. 2.试述数据库设计过程各个阶段上的设计描述。
答:各阶段的设计要点如下:(1)需求分析:准确了解与分析用户需求(包括数据与处理)。
(2)概念结构设计:通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS 的概念模型。
(3)逻辑结构设计:将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化。
(4)数据库物理设计:为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。
(5)数据库实施:设计人员运用DBMS提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。
(6)数据库运行和维护:在数据库系统运行过程中对其进行评价、调整与修改。
解析:这是进一步了解数据库设计的具体内容。
设计描述是指在各个阶段体现设计内容,描述设计结果的各种文档、程序。
读者可以参考《概论》上图6.3。
3. 3.试述数据库设计过程中结构设计部分形成的数据库模式。
答:数据库结构设计的不同阶段形成数据库的各级模式,即:(1)在概念设计阶段形成独立于机器特点,独立于各个DBMS产品的概念模式,在本篇中就是E-R图;(2)在逻辑设计阶段将E-R图转换成具体的数据库产品支持的数据模型,如关系模型,形成数据库逻辑模式,然后在基本表的基础上再建立必要的视图(View),形成数据的外模式;(3)在物理设计阶段,根据DBMS特点和处理的需要,进行物理存储安排,建立索引,形成数据库内模式。
1.在项目初始阶段,开发任务最先需要明确的是____d_____A.理解基本问题B.确定所需解决方案C.确定需要的解决方案的人选D.以上都不是2.需求规格说明描述了____a_______A.解决方案系统的功能、性能及约束B.解决方案系统的实现C.软件系统体系结构的元素D.系统仿真所需要的时间3.组织需求评审的最好方法是___________d__A.检查系统模型的错误B.让客户检查需求C.将需求发放给设计团队去征求意见D.使用审查清单检查每一个需求4.在需求开发过程中,软件工程师应与客户共同定义____d______A.客户可见的使用场景B.重要的软件特性C.系统的输入输出D.A、B和C都包括5.风险管理中不包括____a______A.风险预测B.风险评价C.风险控制D.风险避免6.前景文档不应包括___b______A.业务需求B.重要的质量属性C.高层次解决方案D.系统范围7.某公司欲开发一个在线交易系统,为了能够精确表达用户与系统间的复杂交互过程,应当采用UML中的_____d_____进行交互过程建模。
A.类图B.时序图C.对象图D.状态图8.下列关于质量属性中健壮性的描述正确的是______a_____A.健壮的软件可以从发生问题的环境中完好恢复并可容忍用户的错误。
B.产品运行过程中,由于软件失效而引起实验失败的概率不应超过1%。
C.健壮性可以使用软件无故障运行的时间来衡量。
D.健壮性高的软件修复一次缺陷比较容易,对于那些需要快速开发的产品很重要。
9.下列关于产品代表者的描述错误的是_______b________A.每一个产品代表者代表了一个特定的用户类。
B.一个特定用户类只能由一个产品代表者代表。
C.产品代表者在他所代表的用户类和开发者之间充当主要的接口。
D.产品代表者可以对所在用户类中的不一致的需求作出决策。
10.__c_______决定是否采纳建议的变更请求。
A.变更修改者B.变更评估者C.变更控制委员会D.变更验证者11.需求分析阶段结束后,应交出的文档中,不包括(D)A. 数据流图B.数据字典C.简明的算法描述D.项目的经费预算12. 系统开发过程通常被分为若干个阶段,每个阶段的开始和结束都有明确的规定,人们常将开发过程中,完成某项关键工作得时刻称为里程碑,完成(B)时最适合称为里程碑。
第一章1.什么是系统?信息系统一般具有那些特性?答:系统是一组为实现某些结果相互联系相互作用的部件的集合。
1.可分解性2.边界性2.从应用范围来看,信息系统可以分为哪些类型?答:1.事物处理系统2.管理信息系统3.智能支持决策系统4.办公自动化系统3.信息系统中典型的关联人员有哪些?他们的角色是什么?答:系统所有者(通常是中层或者高层经理,对于小型系统来说,可能是中层经理或者主管)、用户、分析设计人员(都代表信息系统的技术专家角色)、外部服务者(业务顾问和系统顾问等)以及项目经理(团队的领导者)4.请解释系统内部用户和外部用户的区别是什么?答:内部系统用户主要是指系统实际操作人员,这些人员往往专注于信息系统的处理速度和处理事务的正确性。
外部系统用户主要是指系统的直接或者间接使用人员,所有这些外部系统用户最关注的是使用系统的服务操作是否简单易学,方便操作。
5.什么是模型驱动分析?为什么要使用此方法?举例说明。
答:模型驱动分析法强调绘制图形化系统模型来记录和验证现有的或建议的系统。
系统模型最终将成为设计和构造一个改进系统的蓝图。
结构化分析、信息工程和面向对象分析都是基于模型驱动的分析方法。
6.什么是系统开发生存周期?在项目启动阶段涉及的主要活动有哪些?答:开发一个完整的系统项目总会经历“目标、计划、分析、设计、实现、维护”这样的过程或步骤,这就是系统开发的生存周期(系统项目启动、业务需求分析、详细系统设计、系统实现与维护)。
启动阶段的主要涉及5个活动:定义问题域、制定项目的进度表、确认项目的可行性、安排项目人员、启动项目。
7.为什么引入系统原型开发方法?它的优缺点是什么?答:采用最经济的方法,尽快设计出一个可以实际运行的系统原型。
优点:提高了用户参与的主动性;系统开放周期短;能更好的适应需求的变化并减少误解,能有效的提高最终系统的质量,特别是用户接受性,为保证将系统提供给用户使用奠定了基础。
缺点:1.系统分析和功能设计贯穿于整个开发过程中,使得系统的总体结构变得不明确;2.原型选取的不确定性可能降低系统开放速度;3.对原型进行分析设计时,依然沿袭结构化方法,自顶向下模块化的设计思想,数据和功能相互分离的缺陷在原型法中依然存在,不利于软件构件的重用;4.开发过程中不断引入用户需求的变化,造成了系统开发的不确定性。
【例5】今有一个医院住院部,设有多个科,每个科有若干医生和病房,病人住在病房中由某个医生负责治疗。
医生总是属于某个科的,但不能跨科;病房也是属于某个科的,不混合使用;病人住在某一科的病房中,一个病房可住多个病人,一个病人由固定医生负责治疗,一个医生可以负责多个病人。
根据上述语义,画出E-R模型。
答案:【例6】学校有若干系,每个系有若干班级和教研室,每个教研室有若干教员,其中有的教授和副教授可以带若干研究生,每个班有多名学生,每个学生选修多门课程,每门课程由若干学生选修。
画出学校的E-R图。
【例7】某商业数据管理系统,业务规定如下:⑴顾客有姓名、单位、电话号码⑵商品有商品编码、商品名称、单价这些实体之间的联系:⑴每一名顾客可能买多种商品,且每一种商品又可能有多名顾客购买⑵顾客每一次购买商品还涉及日期、数量、金额根据上述描述,解答下列各题:①试画出E-R图;②要求在E-R图中标注联系的类型;③指出每一个实体的主码(主关键字);④将E-R图转换成关系模型。
答案:转化的关系模型为:顾客(姓名,单位,电话号码),主键为姓名;商品(商品编码,商品名称,单价),主键为商品编码;购买(姓名,商品编码,日期,数量,金额),主键为(姓名,商品编码,日期),外键:姓名,参照顾客;外键:商品编码,参照商品。
【例7】设某工厂的物资管理系统包含如下的实体:仓库:仓库号、仓库面积、电话号码零件:零件号、名称、规格、单价、描述供应商:供应商号、名称、地址、电话号码、帐号职工:职工号、姓名、年龄、职称实体之间的联系如下:一个仓库可以存放多种零件,一个零件可以存放多个仓库中。
用库存量来描述某种零件在某个仓库中的数量。
一个仓库有多个职工当仓库保管员,一个职工只能在一个仓库中工作。
职工之间具有领导和被领导的关系,即仓库主任领导若干保管员。
一个供应商可以供应多种零件,反之,一种零件也可以由不同的供应商供应。
(1)根据以上描述,构造E-R模型。
软件需求分析与设计复习题一.判断1、( × ) 程序设计语言种类很多,在进行软件开发时可以随便选择一种语言进行编码。
2. ( x ) 软件需求规格说明书在软件开发中具有重要的作用,是软件可行性分析的依据。
3、(× ) 在软件开发的各个阶段进行过程中,增加人员肯定会对整个项目提前完成有好处。
4.( x ) 好的测试用例应能证明软件是正确的。
5.( x ) 软件功能测试的测试用例主要是由需求阶段的功能说明部分转化而来。
6、( x ) CoCoMo模型可以用来估算系统的工作量和软件开发所需时间。
7.( x ) 有时为了测试的方便,而可以局部地修改软件系统。
8、( v ) OOA方法的核心思想是利用面向对象的概念和方法为软件需求建造模型,大致步骤是识别对象(属性和方法),识别类及其结构,定义对象之间的消息传递等。
9.( x ) 面向对象方法更适合于软件重用的根本原因在于它是软部件唯一的合成技术。
10、( v ) 系统需求分析员应该具有开发软、硬件系统的经验并且了解用户领域的知识。
11.( x ) 在软件的生命周期中,工作量最大的一个阶段就是编写程序。
12、( x )软件运行正确,可见软件中没有缺陷(fault)。
13.( x ) RUP(Rational Unified Process:统一软件过程)本质上是轻量级的软件过程规范。
14、( v )软件失败(failure)在系统交付之前和交付之后都可能被发现。
15.( x ) 基准测试(benchmark test)是非正式的用户确认和验收测试。
16、( x )开发人员和客户对软件质量因素的认可是完全一致的。
17.( x ) UML语言支持面向对象的主要概念,并与具体的开发过程相关。
18、( v )里程碑(milestone)就是开发过程中的某个活动(activity)。
19.( v ) 好的软件测试是用少量的测试用例运行程序,发现被测程序尽可能多的错误。
第三章需求分析作业一、名词解释结构化分析方法:面向数据流进行需求分析的方法,采用自顶向下、逐步求精的分析方法。
数据流图:用图形的方式从数据加工的角度来描述数据在系统中流动和处理的过程,只反映系统必须完成的功能,是一种功能模型。
数据字典:用于定义对数据流图中的各个成分的具体含义。
二、填空1、需求分析是指开发人员通过细致的调查,准确理解用户的要求,将用户非形式化的需求转化为完整的需求定义,再把需求定义转化为相应的形式化功能规约的过程。
2、需求分析的基本任务是准确定义新系统的目标,为了满足用户的需要,回答系统必须“做什么”的问题。
3、需求分析阶段需编写的文档有需求规格说明书、初步用户手册、软件测试计划。
4、数据流图的基本组成部分有源点/终点、加工、数据流、数据存储。
5、数据流图和数据字典共同构成了系统的逻辑模型,是需求规格说明书的主要组成部分。
6、结构化分析方法是面向数据流的、自顶向下、逐步求精进行分析的方法。
7、数据字典有以下四类条目:数据加工、数据流、数据存储、数据元素。
数据元素是组成组成数据流和数据存储的最小元素。
8、在结构化分析的需求描述中,数据流图描述系统的分解,即描述系统由哪几部分组成,各部分有什么联系等等。
数据字典定义了数据流图中每一个图形元素。
9、在数据流图中,数据流是数据在系统内传播的路径,因此由一组固定的数据项组成。
加工(又称为数据处理)是对数据流进行的某些处理。
三、单项选择题1、需求分析阶段最重要的技术文档之一是( C )。
A.项目开发计划B.设计说明书C.需求规格说明书D.可行性分析报告2、在需求分析之前有必要进行( B )A.程序设计B.可行性分析C.ER分析D.3NF分析3、软件需求分析阶段建立原型的主要目的时( A )。
A.确定系统的功能和性能要求B.确定系统的运行要求C.确定系统是否满足用户需要D.确定系统是否满足开发人员需要4、软件开发的需求活动,其主要任务是( D )。
第一章 1.需求分析与系统设计之间的界限是什么?何时从分析阶段进入设计阶段? 需求分析关注系统“做什么”,系统设计关注“如何做”。 当分析阶段完成后才能进入到设计阶段 2.需求处理要注意哪些非技术因素?为什么? 要注意的非技术因素:组织机构文化、社会背景、商业目标、利益协商等。 因为利用建模与分析技术构建的解决方案一定要和具体的应用环境相关,不存在不依赖具体应用环境的解决方案,因此,在利用建模分析技术进行要求处理是不能忽视具体应用环境的相关因素 3.需求分析与需求工程之间的关系 那就是需求工程含义更广,包括需求获取、需求分析、需求定义 第二章 1.解释名词:问题域,解系统和共享现象,并结合他们的含义说明软件系统如何与现实世界形成互动的 问题域:现实的状况与人们期望的状况产生差异就产生问题。 解系统:软件系统通过影响问题域,能够帮助人们解决问题称为解系统 通过共存现象仅仅是问题域和姐系统的一个部分。而不是他们的全部。 软件系统仅仅是现实世界的一种抽象。所以问题除了共享现象之外。还有很多在进行模型抽象时忽略的其他现实因素。 2.解释下列名词,需求,规格说明,问题域特性和约束,并结合他们的含义说明需求工程的主要任务是什么? 需求是用户对问题域中的实体状态或事件的期望描述 规格说明:规格说明是解系统为满足用户需求而提供的解决方案,规定了解系统的行为特征。 问题域的特性:在和解系统相互影响的同时,问题域是自治的,它有自己的运行规律,而且这些规律不会因解系统的引入而发生改变,这种自治的规律性称为问题域特性,当这些特性非常明确时称之为约束。 需求工程的主要任务:1.需求工程必须说明软件系统将应用的环境及目标,说明用来达成这些目标的软件功能,还要说明在设计和实现这些功能时上下文环境对软件完成任务所用的方式、方法所施加的限制和约束。2需求工程必须将目标、功能和约束反映到软件系统中,映射为可行的软件行为,并对软件行为进行准确的规格说明。3需求工程还要妥善处理目标、功能和约束随着时间的演化情况。 4.需求有哪些常见的类别?功能需求和非功能需求有什么差异? 严格意义上的软件需求的分类: 功能需求(Functional Requirement):和系统主要工作相关的需求,即在不考虑物理约束的情况下,用户希望系统所能够执行的活动,这些活动可以帮助用户完成任务。功能需求主要表现为系统和环境之间的行为交互。 性能需求(Performance Requirement):系统整体或系统组成部分应该拥有的性能特征,例如CPU使用率、内存使用率等。 质量属性(Quality Attribute):系统完成工作的质量,即系统需要在一个“好的程度”上实现功能需求,例如可靠性程度、可维护性程度等。 对外接口(External Interface):系统和环境中其他系统之间需要建立的接口,包括硬件接口、软件接口、数据库接口等等。 约束 :进行系统构造时需要遵守的约束,例如编程语言、硬件设施等 。 广泛意义上的需求分类: 系统级需求(System):针对系统工程的需求,包括与硬件相关的需求被称之为硬件需求(Hardware)、与软件相关的需求被称之为软件需求(Software)、与人力资源相关的需求以及软件、硬件、人力之间协同的需求被称之为其他需求。 功能需求和非功能需求的差异:除功能需求之外的其他四种类别需求又被统称为非功能需求。在非功能需求当中,质量属性对系统成败的影响极大,因此在某些情况下,非功能需求又被用来特指质量属性。而且通常一个软件系统的绝大部分需求都是功能需求,在比例上功能需求有可能占所有需求的90%以上。 5.描述业务需求、用户需求和系统(级)需求的区别与联系。 业务需求:业务需求是抽象层次最高的需求,是系统建立的战略出发点,表现为高层次的目标,它描述了组织为什么要开发系统 。
非功能需求 用户需求:执行实际工作的用户对系统所能完成的具体任务的期望,描述了系统能够助用户做些什么。 系统需求:用户对系统行为的期望,一系列的系统行为联系在一起可以帮助用户完成任务,满足业务需求;系统需求可以直接映射为系统行为,定义了系统中需要实现的功能,描述了开发人员需要实现什么。 业务需求、用户需求和系统(级)需求的区别与联系如右图所示: 用户需求---->系统需求的过程: 首先需要分析问题领域及其特性,从中发现问题域和计算机系统的共享知识,建立系统的知识模型;然后将用户需求部署到系统模型当中,即定义系列的系统行为,让它们联合起来实现用户需求,每一个系统行为即为一个系统需求。该过程就是需求工程当中最为重要的需求分析活动,又称建模与分析活动。 6.优秀的需求哪些特性?试为每一个特性都举出一个不符合的示例。 优秀的需求特性: 1) 完备性:不需要做更多的扩展就可以充分的说明用户所需要的系统功能。每一个需求的描述都应该包含开发人员设计和实现这项功能需要的所有信息。 R6(不完整):系统应该允许被扩展 R7(完整、较R8精确):系统的调度算法应该允许被扩展 2) 正确性:真实的反映用户的意图;必须请需求的提出者予以确认。 3) 可行性:在检查的过程中,由开发人员进行检查可能需要进行一定的分析和研究,而不是单纯的凭借经验和直觉。对于难以判断的需求,必要的时候要通过开发原型来加以验证。 示例:保证系统核心功能可以7×24小时连续运行。 4)必要性:满足用户的业务需求所必需的。 5)无歧义:每一项需求都应该有而且只能有一种解释 。 定义一个可以共同理解的词汇表(Glossary) 6)可验证:通过分析、检查、模拟或者测试等方法能够判断需求是否被满足。 示例:实现各部门的公文流转无纸化、文档一体化、业务管理的规范化、自动化和网络化;统一办公流程、规范公文格式,加强信息交流和共享,提高工作效率;不可验证的需求往往是因为描述模糊或者过于抽象,所以在进行需求的描述时要让需求具体化、小心形容词和副词的使用、避免程度词的使用。 第三章 1.需求工程过程的工作基础(即输入)存在哪些?他的工作成果(即输出)有哪些? 答:需求过程的工作基础是获取用户面临的业务问题,用户期望系统表现出来的各种行为,即需求获取工作成果:产生一个能够在用户环境下解决用户业务问题的系统方案,并将其文档化为明确的规格说明。 2.描述需求工程的各个活动,说明他们各自的工作基础,工作目标和工作成果 1.需求获取: 工作基础:1.收集背景资料2.定义项目前景和范围3.选择信息的来源 4.选择获取方法,执 行获取5.记录获取结果 工作目标:获取用户需求,了解用户在完成任务的时候遇到的问题与期望 工作成果:业务需求,项目的前景和范围,用户需求以及问题域的特征 2.需求分析: 工作基础:1背景分析 2.确定系统边界3.需求建模 4.需求细化 5.确定优先权 6.需求协商 工作目标:1.通过建模整合各种信息,是人们更好地理解问题 2.定义一个需求集合,能够为问题界定一个游戏的解决方案 工作成果:产生一个需求的基线集,它指定了系统或当前版本的系统开发需完成的任务 3.需求规格说明: 工作基础1.定制文档模板 2.编写文档 工作目标:为了系统涉众之间交流需求信息 工作成果:需求规格文档说明 4.需求验证 工作基础1.执行验证 2问题修改 工作目标:为了尽量不给设计实现测试后续开发活动带来不必要的影响。需求规格说明文档定义必须正确准确地反映用户的意图 工作成果:验证之后,问题得以修正 需求管理: 工作基础:1.建立和维护需求基线集2.建立需求跟踪信息 3进行变更控制 工作目标:保证需求作用的持续稳定和有效发挥 工作成果:需求管理会进变更控制和实现合理的变更请求拒绝不合理的变更请求,控制变更的成本和影响范围 4.需求工程师需求具备的技能 专业技能,分析技能,交流技能,观察技能,建模技能,写作技能,创新技能,协调技能 第五章 1.为什么要定义项目的前景和范围? 答、业务需求、高层解决方案和系统特性都应该被记录下来,定义为项目的前景与范围文档,前景描述了产品的作用和最终的功能,它将所有的涉众都统一到一个方向上范围指出了当前项目是要解决产品长远规划的那一部分,它为项目规定了需求的界限 案例题: 1. 你被任命为替换学生财务资助项目的项目经理。你想开发一个工作陈述来定义范围并降低范围蔓延的风险。财务资助部门的主管坚持要你15个月、600 000美元的预算内替换他现有的系统就可以了。他说这就是你需要知道的全部,不需要浪费时间开发一个工作陈述了。省略工作陈述的风险是什么?你将如何说服主管? 解答:省略工作陈述的风险是不能明确项目的前景和范围。如果省略了工作陈述的话,我们就不能和用户进行很好的沟通与交流,这样,项目的问题也就不能明确,开发人员无法与涉众对问题达成共识;无法明确问题,也就无法发现正确的业务需求,无法定义良好的解决方案及系统特性,继而无法明确项目的前景和范围,这样就会造成项目的不稳定甚至失败! 第六章 1.什么是涉众?涉众分析?软件系统中常见的涉众? 涉众是与要建设的业务系统相关的一切人和事. 涉众分析就是为软件系统寻找并理解关键涉众的过程 常见的涉众:管理着:用户、客户、开发人员、管理者、领域专家、 政府力量和市场力量等 领域专家:在问题域中具有丰富知识的专家 *关注软件中的知识 政府力量:法律法规、长远规划、政策意向 *起约束和指导作用 市场力量:组织中的市场部门人员,关注用户的想法 *关注用户想法 用户:最终使用和操作产品的人