第四章需求获取

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第1页共13页【习题】三、选择填空四、问答题1、在软件需求分析时,首先建立当前系统的物理模型,再根据物理模型建立当前系统的逻辑模型。试问:什么是当前系统?当前系统的物理模型与逻辑模型有什么差别?所谓当前系统可能是需要改进的某个已在计算机上运行的数据处理系统,也可能是一个人工的数据处理过程。当前系统的物理模型客观地反映当前系统实际的工作情况。但在物理模型中有许多物理的因素,随着分析工作的深入,有些非本质的物理因素就成为不必要的负担,因而需要对物理模型进行分析,区分出本质的和非本质的因素,去掉那些非本质的因素即可获得反映系统本质的逻辑模型。所以当前系统的逻辑模型是从当前系统的物理模型抽象出来的。2、软件需求分析是软件工程过程中交换意见最频繁的步骤。为什么交换意见的途径会经常阻塞?软件需求分析过程中,由于最初分析员对要解决的问题了解很少,用户对问题的描述、对目标软件的要求也很凌乱、模糊,再加上分析员和用户共同的知识领域不多,导致相互间通信的需求。但是由于分析员和用户之间需要通信的内容相当多,业务知识上的不足,表达方式的不足,可能对某些需求存在错误解释或误解的可能性,造成需求的模糊性。另外,用户和分析员之间经常存在无意识的“我们和他们”的界限,不是按工作需要组成统一的精干的队伍,而是各自定义自己的“版图”,并通过一系列备忘录、正式的意见书、文档,以及提问和回答来相互通信。历史已经证明,这样会产生大量误解。忽略重要信息,无法建立成功的工作关系。3、你认为一个系统分析员的理想训练和基础知识是什么?请说明理由。系统分析员处在用户和高级程序员之间,负责沟通用户和开发人员的认识和见解,起着桥梁的作用。一方面要协助用户对所开发的软件阐明要求,另一方面还要与高级程序员交换意见,探讨用户所提要求的合理性以及实现的可能性。最后还要负责编写软件需求规格说明和初步的用户手册。为能胜任上述任务,分析员应当具备如下的素质:(1)能够熟练地掌握计算机硬、软件的专业知识,具有一定的系统开发经验。(2)善于进行抽象的思维和创造性的思维,善于把握抽象的概念,并把它们重新整理成为各种逻辑成分,并给出简明、清晰的描述。(3)善于从相互冲突或混淆的原始资料中抽出恰当的条目来。(4)善于进行调查研究,能够很快学习用户的专业领域知识,理解用户的环境条件。(5)能够倾听他人的意见,注意发挥其它人员的作用。第2页共13页(6)具有良好的书面和口头交流表达能力。4、可行性研究主要研究哪些问题?试说明之。可行性研究主要做4个方面的研究:经济可行性:进行成本∕效益分析。从经济角度判断系统开发是否“合算”。技术可行性:进行技术风险评价。从开发者的技术实力、以往工作基础、问题的复杂性等出发,判断系统开发在时间、费用等限制条件下成功的可能性。法律可行性:确定系统开发可能导致的任何侵权、妨碍和责任。方案的选择:评价系统或产品开发的几个可能的候选方案。最后给出结论意见。5、信息和信息结构有什么区别?有没有不存在信息流的系统?有没有不存在信息结构的系统?信息是宇宙三要素(物质、能量、信息)之一。它是现实世界各种事物在人们头脑中的反映。此外,人们通过科学仪器能够认识到的也是信息。信息的特征为:可识别、可存储、可变换、可处理、可传递、可再生、可压缩、可利用、可共享。信息域就是对信息的多视角考虑。信息域包含3个不同的视图:信息内容和关系、信息流和信息结构。为了完全理解信息域,必须了解每一个视图。信息结构:它是信息在计算机中的组织形式。一般表示了各种数据和控制对象的内部组织。数据和控制对象是被组织成n维表格,还是组织成有层次的树型结构?在结构中信息与其它哪些信息相关?所有信息是在一个信息结构中,还是在几个信息结构中?一个结构中的信息与其它结构中的信息如何联系?这些问题都由信息结构的分析来解决。信息流:表示数据和控制在系统中传递时的变化方式。输入对象首先被变换成中间信息(数据或控制),然后再变换成输出结果信息。沿着变换路径,可能从已有的数据存储(如磁盘文件或内存缓冲区)中引入附加的信息。对数据进行变换是程序中应有的功能或子功能。两个变换功能之间的数据传递就确定了功能间的接口。所以,没有信息流的系统相当于没有功能的系统,这样的系统的存在是毫无意义的。而没有信息结构的系统是没有信息的系统,这样的系统不是计算机能够处理的系统。6、有人说:软件开发时,一个错误发现得越晚,为改正它所付出的代价就越大。对否?请解释你的回答。软件开发时,一个错误发现得越晚,为改正它所付出的代价就越大。这个说法是对的。在1970年代,GTE、TRW和IBM等三家公司对此问题做了独立研究,最后它们得到相似的结论:从表中可以看出,在需求分析阶段检查和修复一个错误所需的代价只有编码阶段所需代价的1/5到1/10,而在维护阶段做同样的工作所付出的代价却是编码阶段的20倍。7、软件需求分析的操作性原则和需求工程的指导性原则是什么?软件需求分析的操作性原则指所有的需求分析方法都与一组操作性原则相第3页共13页关联:必须理解和表示问题的信息域。必须定义软件将完成的功能。必须表示软件的行为(作为外部事件的结果)。必须对描述信息、功能和行为的模型进行分解,能够以层次方式揭示其细节。分析过程应当从要素信息转向细节的实现。通过使用这些原则,分析员可以系统地处理问题。首先检查信息域以便更完整地理解目标软件的功能,再使用模型以简洁的方式表达目标软件的功能和行为,并利用自顶向下、逐层分解的手段来降低问题的复杂性。在这些处理过程中,因处理需求带来的逻辑约束和因其它系统元素带来的物理约束需要通过软件要素和视图的实现加以检验和确认。Davis建议了一组针对“需求工程”的指导性原则:在开始建立分析模型之前应当先理解问题。如果问题没有很好理解就急于求成,常常会产生一个解决错误问题的完美的软件。强力推荐使用原型。这样做可以使用户了解将如何与计算机交互,而人们对软件质量的认识常常是基于对界面“友好性”的切身体会。记录每一个需求的起源和原因。这是建立对用户要求的可追溯性的第一步。使用多个视图,建立系统的数据、功能和行为模型。这样做可帮助分析员从多方面分析和理解问题,减少遗漏,识别可能的不一致之处。给需求赋予优先级。因为过短的时限会减少实现所有软件需求的可能性。因此,对需求排定一个优先次序,标识哪些需求先实现,哪些需求后实现。注意消除歧义性。因为大多数需求都是以自然语言描述,存在叙述的歧义性问题,造成遗漏和误解。采用正式的技术评审是发现和消除歧义性的好方法。遵循以上原则,就可能做好软件需求规格说明,为软件设计奠定基础。8、数据流图的作用是什么?它有哪些基本成份?数据流图可以用来抽象地表示系统或软件。它从信息传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程,同时可以按自顶向下、逐步分解的方法表示内容不断增加的数据流和功能细节。因此,数据流图既提供了功能建模的机制,也提供了信息流建模的机制,从而可以建立起系统或软件的功能模型。数据流图的基本成份有4种:第4页共13页9、Petri网可以描述计算机软件系统的执行。现有一个程序如下(类似于Pascal语言)L:S1;WHILEP1DOBEGINIFP2THENS2ELSES3;COBEGINS4;S5;S6;COENDEND;GOTOL;S6是单个执行语句,COBEGIN和COEND是并行执行开始和并行执行结束(即S4,S5和S6语句并行执行)。试用Petri网描述这段程序的执行过程。采用条件∕事件网(C∕E网,C―Condition,E―Event)式Petri网。10、数据词典的作用是什么?它有哪些基本词条?分析模型中包含了对数据对象、功能和控制的表示。在每一种表示中,数据对象和控制项都扮演一定的角色。为表示每个数据对象和控制项的特性,建立了第5页共13页数据词典。数据词典精确地、严格地定义了每一个与系统相关的数据元素,并以字典式顺序将它们组织起来,使得用户和分析员对所有的输入、输出、存储成分和中间计算有共同的理解。在数据词典的每一个词条中应包含以下信息:名称:数据对象或控制项、数据存储或外部实体的名字。别名或编号。分类:数据对象?加工?数据流?数据文件?外部实体?控制项(事件∕状态)?描述:描述内容或数据结构等。何处使用:使用该词条(数据或控制项)的加工。11、软件需求分析说明书主要包括哪些内容?软件需求规格说明是分析任务的最终产物,通过建立完整的信息描述、详细的功能和行为描述、性能需求和设计约束的说明、合适的验收标准,给出对目标软件的各种需求。软件需求规格说明的框架如下:12、考务处理系统的分层数据流图如下图所示。第6页共13页该考务处理系统有如下功能:对考生送来的报名表进行检查;对合格的报名表编好准考证号码后将准考证送给考生,并将汇总后的考生名单送给阅卷站;对阅卷站送来的成绩表进行检查,并根据考试中心指定的合格标准审定合格者;填写考生通知单(内容包含考试成绩及合格∕不合格标志),送给考生;按地区、年龄、文化程度、职业、考试级别等进行成绩分类统计及试题难度分析,产生统计分析表。(1)图(c)中,加工1.1的输入数据流是(A②),输出数据流是(B⑤),图(b)中,加工2的输出数据流是(C①),它是由(D⑥)和(E⑧)组成。供选择的答案:A~E.①统计分析表②报名表③准考证④考生通知单⑤合格报名表⑥难度分析表⑦错误成绩表⑧分类统计表(2)图(d)中的文件“试题得分表”是否在图(b)中漏掉了?回答是(F②)。供选择的答案:F:①“试题得分表”没有在图(b)中画出,是错误的。②“试题得分表”是图(b)中加工的内部文件,不必在图(b)中画出。③“试题得分表”是多余的。应注意的问题:①适当地为数据流、加工、文件、数据的源∕汇点命名。名字应反映该元素的实际含义,避免空洞的名字。如数据、信息处理、计算等名字都不好。②画数据流时不要夹带控制流。数据流图中各种数据的加工没有考虑时序关系,引入控制流后,加工之间就有了时序关系,这与画数据流图不考虑实现细节的初衷相违背。第7页共13页③一个加工的输出数据流不要与该加工的输入数据流重名,即使它们的组成成分相同。例如图(c)中加工1.1的输入数据流“报名表”与输出数据流“合格报名表”。④允许一个加工有多个数据流流向另一个加工,也允许一个加工有两个相同的输出数据流流向两个不同的加工。⑤保持父图与子图的平衡。就是说,父图与它的子图的输入数据流与输出数据流应当在数量与名字上都相同。特别的是,如果父图的一个输入(或输出)数据流对应于子图中几个输入(或输出)数据流,但子图中这几个数据流中的数据项合起来正好是父图中的那个数据流,这时它们还算是平衡的。例如,图(b)中加工2的输出数据流“统计分析表”是由“难度分析表”和“分类统计表”组成,那么图(b)与图(d)仍满足父图与子图平衡的条件。⑥在自顶向下的分解过程中,若一个文件首次出现时只与一个加工有关,那么这个文件应作为这个加工的内部文件而不必画出。例如,图(d)中的文件“试题得分表”就是图(b)中加工的内部文件,所以在图(b)中没有画出。⑦保持数据守恒。就是说,一个加工的所有输出数据流中的数据必须能从该加工的输入数据流中直接获得,或者是通过该加工产生的数据。13、阅读下列关于开发人事管理系统的交互式工作方式的叙述,再回答问题。某大企业最近决定采用高性能微机开发人事管理系统,将四台联机终端分置于人事处的三个科室。该系统可供操作员和程序员使用,也可供人事处负责人和主管人事的副厂长等查询人事信息用。人事管理系统通过录入人事数据和修改、删除等操作,产生和更新各类人事文件,通过搜索这些文件进行各类人事信息的查询。该企业有3000多个工人、干部和技术人员,大体可分成机关科室、生产车间、后勤服务和开发研制部门等几类部门。厂领导决定由计算机应用科来负责协调和开发应用系统。计算机应用科科长指示系统工程师张某负责进行系统分析。考虑到人事处有大量的查询信息要求、频繁的人事信息修改和文件存档、查阅等特点,计算机应用科决定认真设计人机交互界面,首先设计好在终端上的交互式

1 / 13
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功