1需求分析的基本任务是要准确地定义(
- 格式:doc
- 大小:25.00 KB
- 文档页数:2
1.软件危机:指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
2.软件危机的典型表现:1)对软件开发成本和进度的估计常常很不正确;2)用户对“已完成”的软件系统不满意的现象经常发生;3)软件产品的质量往往靠不住;4)软件常常是不可维护的5)软件通常没有适当的文档资料6)软件成本在计算机系统总成本中所占的比例逐年上升7)软件开发生产率提高的速度,跟不上计算机应用的普及深入趋势3.产生软件危机的原因:一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关;1)是计算机系统中的逻辑部件而不是物理部件2)显著特点:规模庞大,而且程序复杂性将随着程序规模的增加而呈指数上升4.解决软件危机:既要有技术实施(方法与工具),又要有必要的组织管理措施。
5.软件工程:是指导计算机软件开发和维护的一门工程学科;采用工程的概念、原理技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效的维护它6.软件工程方法学包含3个要素:方法、工具和过程。
7.传统方法学也称为生命周期方法学式结构化范型8.软件生命周期:由软件定义、软件开发和运行维护3个时期组成,1)软件定义时期通常进一步划分为3个阶段:问题定义、可行性研究和需求分析;2)开发时期由4个阶段组成:总体设计、详细设计、编码和单元测试,综合测试(前两个称为系统设计,后两个阶段称为系统实现);3)维护时期不用划分时期,花费时间最多。
第2章1、可行性研究的目的:用最小的代价在尽可能短的时间内确定问题是否能够解决2、可行性研究的任务回答能不能做,可不可以做。
【最短时间内找出方法】3.至少从下述3个方面研究每种解法的可行性:1)技术可行性:使用现有的技术能实现这个系统吗?2)经济可行性:这个系统的经济效益能超过它的开发成本吗?3)操作可行性:系统的操作方式在这个用户组织内行得通吗?4.数据字典:关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。
1、数据流图和数据字典共同构成系统的逻辑模型。
2、编号为6.3.2的数据流图的父图编号为 6.3 。
3、在对数据流图分层细化时必须保持信息的连续性,也就是分解前和分解后的输入/输出数据流必须相同,我们把数据流图的这种性质叫作父图和子图的平衡。
4、一般说来,数据字典应该由对四类元素的定义组成,它们是数据流,数据流分量,数据存储,处理。
5、在需求分析阶段既要分析用户的数据要求,又要分析用户的处理要求。
6、ER模型中包含实体,关系,属性等三个基本成分。
7、IPO图是输入、处理、输出图的简称,由美国IBM 公司发展起来的一种工具,能方便的描述输入数据,对数据的处理,输出数据之间的关系。
8、为了更准确、具体的确定用户的需求,往往需要构建目标系统的原型,超高级语言和第四代语言是构建原型系统的有力工具。
9、耦合和内聚是度量模块独立性的两个定性标准,在软件结构设计中我们应该力求低耦合,高内聚。
11、PAD图是问题分析图的英文缩写,由日本日立公司发明。
12、Jackson方法是面向数据结构的设计方法。
13、超高级语言和第四代语言是构造原型系统的有力工具,可以大大降低开发原型系统的成本。
14、模块的独立程度可以由两个定性标准度量,这两个标准分别称为内聚和耦合。
15、详细设计的工具可分为图形,表格和语言三类。
16、盒图又称N-S 图。
17、因为任何软件系统都可以用数据流图表示,所以面向数据流的设计方法理论上可以设计任何软件结构。
18、目前使用得最广泛的软件工程方法学,分别是传统方法学和面向对象方法学。
19、耦合是对一个软件结构内不同模块之间互连程度的度量;内聚标志一个模块内各个元素彼此结合的紧密程度。
20、在可行性研究阶段,我们应该仔细研究每一种系统实现方案的可行性一般来说至少应该从下述三方面研究每种解法的可行性:技术可行性、经济可行性、操作可行性21、系统流程图是概括的描述物理系统的传统工具。
22、根据结构化分析准则,需求分析阶段应该建立三种模型。
第3章习题答案3」什么是软件危机?为什么会岀现软件危机?解答:软件危机是指落后的软件生产方式无法满足开发复杂软件的需求,从而导致软件开发与维护过稈屮出现一系列严重的问题,主要表现在:(1)软件开发费用和进度估计不准。
(2)软件的正确性和可靠性难以保证。
(3)文档不全,导致软件维护难度加大。
总Z,可将软件危机归结为:成木、质量和生产率等问题。
到了20世纪50年代末和60年代初,随着计算机应用的普及,软件的规模和复杂度提高了,“家庭作功”式的方法已经无法适应软件的开发。
软件开发的周期变长、费用上涨,导致软件的生产效率下降、目标软件的正确性难于保证,即出现了“软件危机”。
3.2软件T程的概念是什么?软件T程的忖标和原则是什么?解答:软件工程是指导计算机软件开发和维护的一门学科。
软件工程从管理和技术两个方面,研究如何更好地开发和维护计算机软件,内容主要包括:软件开发技术和软件工程管理。
软件工程的日标是在给定成本、进度的前提下,开发出具有可修改性、有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性并且满足用户需求的软件产品。
软件工稈的原则,在软件开发各阶段,应遵循一些基木原则,包括抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。
3.3什么是软件的生命周期?瀑布模型把软件生命周期划分成几个时期、几个阶段?每一个阶段的任务是什么?每个阶段产生的文档是什么?解答:软件从提出、开发、使用到退役的整个过稈称为软件生命周期,软件生命周期可划分为3个时期,共8个阶段,毎个阶段应完成的基本任务和产生的文档如下表所示。
时期阶段任务文档定义期(计划期)问题的定义理解用户要求,明确工作目标计划任务书可行性研究可行性方案分析需求分析软件系统的目标及应完成的任务需求规格说明书开发期概要设计(总体设计)(系统设计)系统逻辑设让,明确软件模块结构,及各模块间的调用关系软件概要设计说明书数据库/数据结构设计说明书集成测试计划详细设计系统的模块设计,对各模块进行功能说明,实现细节描述软件详细设计说明书编码编写程序代码程序、数据、详细注释测试和调试单元测试、集成测试测试大纲、方案,测试用例,测试结果维护期使用和维护运行和维护运行、修改记录3.4什么是结构化方法?结构化分析、结构化设计、结构化程序设计分别用在软件生命周期的哪一个阶段?解答:结构化开发方法是现有软件开发方法屮最成熟、应用最广泛的方法。
软件⼯程导论简答题三、简答题1.什么是需求分析?需求分析阶段的基本任务是什么?答:需求分析是当前软件⼯程中的关键问题,需求分析阶段的任务是:在可⾏性分析的基础上,进⼀步了解、确定⽤户需求。
准确地回答“系统必须做什么?”的问题。
获得需求规格说明书。
还涉及到软件系统的⽬标、软件系统提供的服务、软件系统的约束和软件系统运⾏的环境。
它还涉及到这些因素和系统的精确规格说明,以及系统进化之间的关系。
需求分析的基本任务包括:(1)抽取需求分析现⾏系统存在需要解决的问题。
获取⾜够多的问题领域的知识,需求抽取的⽅法⼀般有问卷法、⾯谈法、数据采集法、⽤例法、情景实例法以及基于⽬标的⽅法等;还有知识⼯程⽅法,例如,场记分析法、卡⽚分类法、分类表格技术和基于模型的知识获取等。
(2)模拟和分析需求需求分析和模拟⼜包含三个层次的⼯作。
⾸先是需求建模。
需求模型的表现形式有⾃然语⾔、半形式化(如图、表、结构化英语等)和形式化表⽰等三种。
需求概念模型的要求包括实现的独⽴性:不模拟数据的表⽰和内部组织等;需求模拟技术⼜分为企业模拟、功能需求模拟和⾮功能需求模拟等。
(3)传递需求传递需求的主要任务是书写软件需求规格说明。
(4)认可需求就是对需求规格说明达成⼀致,其主要任务是冲突求解,包括定义冲突和冲突求解两⽅⾯。
常⽤的冲突求解⽅法有:协商、竞争、仲裁、强制、教育等,其中有些只能⽤⼈的因素去控制。
(5)进化需求客户的需要总是不断(连续)地增长,但是⼀般的软件开发⼜总是落后于客户需求的增长,如何管理需求的进化(变化)就成为软件进化的⾸要问题。
对于传统的变化管理过程来说,其基本成分包括软件配置、软件基线和变化审查⼩组。
当前的发展是软件家族法,即产品线⽅法。
多视点⽅法也是管理需求变化的⼀种新⽅法,它可以⽤于管理不⼀致性,并进⾏关于变化的推理。
2.等价分类法的基本思想是什么?答:根据程序的输⼊特性,将程序的定义域划分为有限个等价区段——“等价类”,从等价类中选择出的⽤例具有“代表性”,即测试某个等价类的代表值就等价于对这⼀类其他值的测试。
填空题
1.需求分析的基本任务是要准确地定义( ),为了满足用户需要,回答系统必须
( )的问题。
2.在需求分析阶段,首先进行问题识别,即双方确定对问题的综合需求,这些需求包
括:( )、( )、( )、( )。另外还有可靠性、安全性、保密性、可移植性、
可维护性等方面的需求。
3.数据流图有四个基本成分:( )、( )、( )、( )。
4.在进行可行性研究和软件计划以后,如果确认开发一个新的软件系统是必要的而且
是可能的,那么就进入( )阶段。
5. 数据字典中的加工逻辑主要描述该加工( ),即实现加工的策略,而不是实现
加工的细节,它描述如何把输入数据流变量变换为输出数据流的( )。
6.需求分析是指,开发人员要准确理解( ),进行细致的( ),将用户非形式
的需求陈述转化为( ),再由( )转换到相应的形式功能规约(需求规格说明)的过
程。
7.需求分析阶段所要编写的文档有:( )、( )、( )。
8. 流向数据存储的数据流可理解为( )文件或( )文件,从数据存储流出的
数据可理解为从文件( )数据或得到( )结果。
9.SA方法利用图形等半形式化的描述方式表达需求,简明易懂,用它们形成需求说明
书中的主要部分。这些描述工具是( )、( )、( )、( )、( )。
10.在SA的需求描述工具中,( )描述系统的分解,即描述系统由哪几部分组
成,各部分之间有什么联系等等。( )定义了数据流图中每一个图形元素。结构化语言、
判定表和判定树则详细描述数据流图中不能被再分解的( )。
11.需求分析的困难主要体现在四个方面:问题的复杂性、( )、( )、需求易
变性。
12.在数据流图中,( )是数据在系统内传播的路径,因此由一组( )组成。
加工(又称为数据处理),是对数据流进行某些( )。
13.数据字典就是用来定义数据流图中的( ) 的。它和数据流图共同构成了系统
的( ),是( )的主要组成部分。
14.数据字典有以下四类条目:( )、( )、( )、( )。( )是组
成数据流和数据存储的最小元素。
15. 在分析需求阶段要进行以下几方面的工作:问题识别、( )、( )、( )。
16.加工逻辑也称为“小聪明”,常用的加工逻辑的描述工具有:( )、( )、( )。
17.结构化语言是介于自然语言(英语和汉语)和形式化语言之间的一种半形式语言。它的结
构可分成外层和内层两层,外层用来描述( ),采用( )、( )、( )三种基
本结构。
18.三种描述加工逻辑的工具各有优缺点,对于顺序执行和循环执行的动作,用( )描
述。对于存在多个条件复杂组合的判断问题,用( )和( )。
19.IDEF方法分为三部分:
IDEF0:用来描述系统的( ),建立系统的( )。
IDEFl:用来描述系统的( ),建立系统的( )。
IDEF2:用来进行系统的( ),建立系统的( )。
20.传统的SA方法主要用于( )的问题,主要工具DFD体现了系统的( )功能,但它
仅是一个( ),没有处理的顺序,即( )。
21.形式化是软件自动化发展的基础。形式化方法是将需求规格说明用( )来描述。典
型的有( )及( )。
22. IDEF0方法中,将系统功能称为( ),将表示系统功能的图形称为( )。
在活动图形中,用( )和( )表示系统的各种活动及相互间的关系。在系统分解
的某一层次,可能有多个活动,每个活动编号注在( )。
23. 由于数据流是流动中的数据,所以必须有( )。除了与( )之间的数据
流不用命名外,数据流应该用名词或名词短语命名。
24.建立数据字典一般的两种形式是( )和( )。
25. 数据存储条目的主要内容有( )、( )、( )、( )、( )、( )
等。
26. 近几年来已提出许多软件分析与说明的方法,每一种分析方法必须能够表达和理
解问题的数据域和功能域。数据域包括( )、( )和( ),而功能域反映上述三
方面的( )。
27. 数据项条目的主要内容有( )、( )、( )、( )、( )、
( )及含义。
28.结构化分析方法是面向( )进行需求分析的方法。
29.在有些情况下数据流图中的某个加工的一组动作依赖于多个逻辑条件的取值。这
时,用自然语言或结构化语言都不易清楚地描述出来。而用( )就能够清楚地表示复杂
的条件组合与应做的动作之间的对应关系。
30.经过需求分析,开发人员已经基本上理解了用户的要求,确定了目标系统的功能,
定义了系统的数据,描述了处理这些数据的基本策略。将这些共同的理解进行整理,最后形
成文档( )。