软件工程每章复习重点1Word文档下载推荐.docx
- 文档编号:16147012
- 上传时间:2022-11-20
- 格式:DOCX
- 页数:34
- 大小:1.88MB
软件工程每章复习重点1Word文档下载推荐.docx
《软件工程每章复习重点1Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《软件工程每章复习重点1Word文档下载推荐.docx(34页珍藏版)》请在冰豆网上搜索。
螺旋模型将瀑布模型和快速原型模型结合起来,将软件过程划分为若干个开发回线,每一个回线表示开发过程的一个阶段。
f)型式化方法模型
型式化方法模型又称变换模型。
该模型结合了形式化软件开发方法和程序自动生成技术,采用形式化需求规格说明和变化技术等技术手段,生产目标程序系统。
g)基于构件的开发模型
基于构件的开发过程模型是使用可重用的构件或商业组件建立复杂的软件系统,即在确定需求描述的基础上,开发人员首先进行构件分析和选择,然后设计或者选用已有的体系结构框架,复用所选择的构件,最后将所有的组件集成在一起,并完成系统测试。
4.软件开发的方法
a)结构化方法
结构化方法由结构化分析,结构化设计和结构化程序设计组成,是一种面向数据流的开发方法。
该方法采用自顶向下、逐步求情的指导思想,应用较广,技术成熟。
b)Jackson方法
Jackson方法是一种面向数据结构的开发方法。
Jackson方法是以数据结构为驱动的,适合于小规模的项目。
c)维也纳开发方法
维也纳开发方法是一种形式化的开发方法,软件的需求用严格的形式语言描述,然后把描述模型逐步变换成目标系统。
d)面向对象开发方法
面向对象开发方法包括面向对象分析、面向对象设计和面向对象实现。
面向对象开发方法有Booch方法、Coad方法和OMT(ObjectModelingTechnology)方法等。
为了统一各种面向对象方法的术语、概念和模型,1997年推出了统一建模语言,即UML语言。
它是面向对象的标准建模语言,通过统一的语义和符号表示,使各种方法的建模过程和表示统一起来,将成为面向对象建模的工业标准。
第二章需求分析
1.可行性研究的任务
a)技术可行性
对要开发的项目的功能、性能和限制条件进行分析,确定在现有的资源条件下,技术风险有多大,项目是否能够实现。
b)经济可行性
进行开发成本的估算以及了解取得效益的评估,确定要开发的项目是否值得投资开发。
c)社会可行性
要开发的项目是否存在任何侵犯、妨碍等责任问题,要开发项目的运行方式在用户组织内是否行得通,现有管理制度、人员素质、操作方式是否可行。
2.成本估算方法
a)自顶向下估算方法
估算人员参照以前完成的项目所耗费的总成本,来推算将要开发的软件总成本,然后把它们按阶段、步骤和工作单元进行分配。
b)自底向上估算方法
将待开发的软件细分,分别估算每一个子任务所需要的开发工作量,然后将它们加起来,得到软件的总开发量。
c)差别估算方法
将开发项目与一个或多个已完成的类似项目进行比较,找到与某个相类似项目的若干不同之处,并估算每个不同之处对成本的影响,导出开发项目的总成本。
d)专家判断技术
一个或多个专家根据所具有的专业知识和丰富经验,通过近似的猜测估计出项目成本。
Delphi方法是最流行的专家评估技术。
e)类比估算法
一种比较科学的传统估算方法,它通过新项目与历史项目的比较得到规模估算。
3.成本估算模型
COCOMO模型(理解)书本P27
4.常用的需求分析的方法
面向数据流的结构化分析方法(SA)
面向数据结构的Jackson方法(JSD)
面向数据结构的结构化数据系统开发方法(DSSD)
面向对象的分析方法(OOA)等
5.结构化分析方法
结构化分析方法适合于数据处理类型软件的需求分析。
具体来说,结构化分析方法就是用抽象模型的概念,按照软件内部数据传递、变换的关系,自顶向下逐层分解,直到找到满足功能要求的所有可实现的软件为止。
a)数据流图
i.定义
数据流图(DataFlowDiagram,简称DFD)描绘系统的逻辑模型,是结构化系统分析的主要工具。
数据流图(DFD)是描述软件系统中数据处理过程的一种有力的图形工具。
由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。
ii.数据流图中的主要图形元素
iii.画数据流图步骤
1.首先画系统的输入输出,即先画顶层数据流图。
顶层流图只包含一个加工,用以表示被开发的系统,然后考虑该系统有哪些输入数据,这些输入数据从哪里来;
有哪些输出数据,输出到哪里去。
2.画系统内部,即画下层数据流图。
一般将层号从0开始编号,采用自顶向下,由外向内的原则。
iv.注意事项
1.命名。
不论数据流、数据存储还是加工,合适的命名使人们易于理解其含义。
2.一般不画物质流。
数据流反映能用计算机处理的数据,并不是实物,因此对目标系统的数据流图一般不要画物质流
3.父图与子图的平衡。
子图的输入输出数据流和父图相应加工的输入输出数据必须一致,此即父图与子图的平衡。
4.局部数据存储。
当某层数据流图中的数据存储不是由图中相应加工的外部接口,而只是本图中某些加工之间的数据接口,则称这些数据存储为局部数据存储。
5.提高数据流图的易理解性。
注意合理分解,要把一个加工分解成几个功能相对独立的子加工,这样可以减少加工之间输入、输出数据流的数目,增加数据流图的可理解性。
v.数据流图的层次结构
为了表达数据处理过程的数据加工情况,需要采用层次结构的数据流图。
按照系统的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系,能清楚地表达和容易理解整个系统。
vi.结构化分析方法步骤示例
●这个数据流图只是一个高层的系统逻辑模型,它反映了目标系统要实现的功能
●数据流图绘制步骤
1.首先确定系统的输入和输出
2.根据商店业务,画出顶层数据流图,以反映最主要业务处理流程
3.经过分析,商店业务处理的主要功能应当有销售、采购、会计三大项。
主要数据流输入的源点和输出终点是顾客和供应商。
4.然后从输入端开始,根据商店业务工作流程,画出数据流流经的各加工框,逐步画到输出端,得到第一层数据流图。
vii.检查和修改数据流图的原则
1.数据流图上所有图形符号只限于前述四种基本图形元素。
2.数据流图的主图必须包括前述四种基本元素,缺一不可。
3.数据流图的主图上的数据流必须封闭在外部实体之间。
4.每个加工至少有一个输入数据流和一个输出数据流。
5.在数据流图中,需按层给加工框编号。
编号表明该加工所处层次及上下层的亲子关系。
6.规定任何一个数据流子图必须与它上一层的一个加工对应,两者的输入数据流和输出数据流必须一致。
此即父图与子图的平衡。
7.可以在数据流图中加入物质流,帮助用户理解数据流图。
8.图上每个元素都必须有名字。
9.数据流图中不可夹带控制流。
10.初画时可以忽略琐碎的细节,以集中精力于主要数据流。
b)数据字典
数据字典(DataDictionary)是关于数据的信息的集合,通过数据字典对数据流程图中的各个元素作精确的定义与说明。
它是数据流图的补充工具。
数据字典与数据流图配合,能清楚地表达数据处理的要求。
二者构成需求规格说明书的主要部分。
词条描述——对于在数据流图中每一个被命名的图形元素,均加以定义,其内容有:
名字,别名或编号,分类,描述,定义,位置,其它等。
ii.数据字典的内容及格式
数据字典是为分析人员和用户查找数据流图中有关名字的详细定义而服务的,因此也像其他任何字典一样,要把所有条目按一定次序排列起来,以便查阅。
数据字典有以下四类条目:
数据流、数据项、数据存储、基本加工。
其中,数据项是组成数据流和数据存储的最小元素。
1.数据流条目给出了DFD中数据流的定义,主要部分是列出该数据流的各组成数据项。
在定义数据流及数据存储组成时,通常要用到表2.4给出的符号。
2.数据存储条目是对数据文件内容的定义,主要内容举例如下:
数据存储名称:
学生成绩库
别名:
无
组成:
学生学号+课程编码+成绩+备注
组织方式:
以学号为记录关键字升序排列。
3.数据项条目给出某个数据单项的定义,内容通常为数据项的值类型、允许取值范围等,其定义结构与数据流条目类似。
4.加工条目是用来说明DFD中基本加工的处理逻辑,对其他非基本加工则不必进行加工说明。
加工条目主要由输入数据、加工逻辑和输出数据等部分组成,加工逻辑描述把输入数据转换为输出数据的过程,是加工条目的主体。
为了使加工逻辑直观易读,有几种常用的描述方法,它们是结构化语言、判定表和判定树。
加工条目内容举例如下:
加工名称:
查阅库存
编号:
1.2
输入:
合格订单
输出:
供货订单或缺货订单
加工逻辑:
根据库存记录
IF订单项目数量<
该项目库存量的临界值
THEN可供货处理
ELSE
此订单缺货,登记,待进货后再处理
ENDIF
iii.数据字典的实现
数据字典的建立可以用手工和自动两种方式实现。
手工方式是指把每一个字典条目写在卡片上,由专人管理和维护。
自动方式是借助数据字典处理程序,把字典条目输入到计算机中,用计算机对它进行检索和维护。
第三章系统设计
1.概要设计
a)基本任务
i.设计软件系统结构:
1.采用某种设计方法,将一个复杂的系统按功能划分成模块。
2.确定每个模块的功能。
3.确定模块之间的调用关系。
4.确定模块之间的接口,即模块之间传递的信息。
5.评价模块结构的质量.
ii.数据结构设计:
采用“逐步细化”的方法,如采用数据字典描述逐步细化。
设计有效的数据结构(如队列,线性表,链表等),大大简化软件模块处理过程的设计。
b)编写概要设计文档:
i.概要设计说明书。
ii.数据库设计说明书:
主要给出所使用的DBMS简介、数据库的概要模型、逻辑设计、结果。
iii.用户手册:
对需求分析阶段编写的用户手册进行补充。
iv.修订测试计划,对测试策略、方法、步骤提出明确要求。
c)模块的独立性
i.模块独立性,是指软件系统中每个模块只涉及软件要求的具体的子功能,而和软件系统中其它的模块的联系最小且接口是简单的.
ii.一般采用两个准则度量模块独立性。
即模块间耦合和模块内聚
iii.耦合是模块之间的互相连接的紧密程度的度量。
iv.内聚是模块功能强度(一个模块内部各个元素彼此结合的紧密程度)的度量。
v.模块独立性比较强的模块应是高内聚低耦合的模块。
d)软件系统设计技术
2.详细设计
a)任务
i.确定每个模块的具体算法。
ii.确定每个模块的内部数据结构及数据库的物理结构。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 每章 复习 重点