传统的开发方法课件_第1页
传统的开发方法课件_第2页
传统的开发方法课件_第3页
传统的开发方法课件_第4页
传统的开发方法课件_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

传统的开发方法软

在软件工程中,把面向对象方法产生之前的软件开发方法统称为传统的开发方法,主要有面向数据流的结构化方法和面向数据结构的Jackson方法。

7.1面向数据流的开发方法结构化方法是从分析、设计到实现都使用结构化思想的软件开发方法,软

法是结构化分析SA(StructuredAnalysis)、结构化设计SD(StructuredDesign)和结构化程序设计SP(StructuredProgramming)的总称。一、概述结构化方法是指基于模块化的思想,按照“自顶向下、逐步求精”的原理对系统的功能和结构进行划分,利用一定的工具,按照特定步骤工作的软件开发方法。它的2个基本原则是抽象与分解。软

结构化方法的优点:(1)简单、实用。(2)适合于瀑布模型,易为开发者掌握。(3)成功率较高。(4)特别适合于数据处理领域中的应用,对其他领域的应用也基本适用。结构化方法的缺点:(1)对于规模大的项目,特别复杂的应用不太适应。(2)难于解决软件重用的问题。(3)难于适应需求的变化。(4)难于彻底解决维护问题。二、结构化分析结构化分析是一种面向数据流的需求分析方法,适合于数据处理类型的软件系统。特点:清晰、简明,易于学习和掌握。在处理一个复杂系统时,结构化分软

法分析方法的办法是:(1)把分析对象抽象成为一个系统;(2)由顶向下层层分解,得到若干简单的子系统;(3)理解子系统的每一个细节、前后顺序和相互关系,找出各部分之间的接口。在分层过程中,采用不同程度的“抽象”级别。最高层的问题最抽象,低层的较为具体。软

法软

结构化分析方法要用到以下几个工具:数据流图、数据字典、结构化语言、判定表和判定树。1、数据流图(P155及P156附加符号)

画数据流图的注意事项:(1)数据流、加工、数据文件的命名要合适。(2)数据流名称只能是名词或名词短语。(3)不能将数据流画成物流。软

法(4)每个加工至少有一个输入数据流和一个输出数据流。(5)每一层的子图应编号,该编号就是其父图中相应加工的编号。(6)父图与子图要保持平衡。(7)局部数据存储。(8)分解的程度:为了提高数据流的易理解性,分解应自然,概念上合理、清晰,加工之间的逻辑联系尽可能少,且分解要均匀。软

法2、数据字典数据字典是以一种准确的和无二义的方式对数据流图中的所有名字进行定义(或说明)的汇总。数据字典的条目可以分成4种类型:数据流、数据文件、数据项和加工。在数据字典中出现的符号,见课本P160表7-1。加工条目是对某个加工进行描述。理想的加工逻辑说明应该是严格精确且容易被软件人员和用户所理解。软

理数据项“数量”的字典条目数据项名:数量别名:购书量取值:正整数备注:软

理数据流“发票”的字典条目数据流名:发票别名:购书发票组成:学名+姓名+{书号+单价+数量+总价}+书费合计备注:软

理数据文件“各班学生用书表”的字典条目文件名:各班学生用书表别名:组成:{系编号+专业和班编号+年级+{书号}}组织:按系、专业和班编号从小到大排列备注:软

法3.4书写销售单订货单(货号+订货量)销售单(单价+合计+销售税款+总计)书写销售单价格文件软

法加工名:书写销售单编号:3.4输入数据流:订货单输出数据流:销售单激发条件:收到订货单加工逻辑:按照订货单上的货号访问价格文件,并将价格文件记录的单价复制到销售单的单价上去。确定合计=单价×订货量确定销售税款=合计的3%确定总计=合计+销售税款执行频率:150次/天注释:软

其中,加工逻辑一般称为加工逻辑小说明。目前,表达加工逻辑小说明的工具有:结构化语言、判定树、判定表等。

P164-165表7-2、表7-3有错误!三、结构化设计结构化设计是以模块化技术为基础的软件设计方法。包括概要设计和详细设计两个方面。1、表示软件结构的图形工具软

法(1)HIPO图。

HIPO(HierarchyPlusInPut/Processing/OutPut)图是表示软件系统结构的工具。它可分为两部分:H图和IPO图。(a)H图(层次图)

H图用于描述软件系统中各个组成部分的层次结构,矩形框表示一个模块,矩形框之间的直线表示模块之间的调用关系。下面是AutoCAD系统的H图:软

法绘新图1.0编辑已有图形2.0绘图机绘图3.0打印机绘图4.0参数设置5.0文件管理6.0编译型字体文体7.0修复受损图形文件9.0转换旧版本图形文件8.0返回10.0绘图AutoCAD(b)IPO图描述每个模块输入/输出数据、处理功能及模块调用的详细情况。软

法输入处理输出软

法课堂练习:某学生成绩管理系统可按姓名、学号、班级进行查询,并可以实现添加、删除、修改和输出某一个学生的成绩或某个班级所有学生的成绩。用所学知识,画出该系统的HIPO图。软

法(2)结构图。结构图(StructureChar,简称SC)是软件结构设计的另一个有力工具。它以特定的符号定义了模块的名字和功能、模块间的调用关系和模块间信息的传递。结构图的主要内容有:(a)模块下图显示了SC图使用的6种模块:软

法传入模块传出模块变换模块源模块端(漏)模块控制模块XXXXXYYYYY(b)模块调用和信息传递软

法AB调用模块被调模块A查询学生成绩B查找学生记录学号查找成功信号记录地址数据信息控制信息软

法ACBDEFXY结构图示例(提问:该图与课本P169图7-14的不同之处)软

法2、面向数据流的设计结构化设计方法是目前使用最广泛的一种设计方法,也是最基础的软件设计方法。通常所说的结构化设计是一种面向数据流设计DFOD(DataFlowOrientedDesign),是与数据流分析(DFA)对应的软件设计技术。(1)变换分析设计的过程:(a)找出系统的主加工,确定逻辑输入和逻辑输出。(b)设计模块结构的顶层和第一层。软

法(c)设计中、下层模块。

输入模块的功能是向它的调用模块提供数据,应由接收和转换成调用模块所需的信息两部分组成,即每个输入模块可以设计成两个下属模块:一个接收,一个转换。

输出模块的功能是将它的调用模块产生的结果送出,它应由将数据转换成下属模块所需的形式和发送数据两部分组成,即每个输出模块可以设计成两个下属模块:一个转换,一个发送。软

法取卡片编辑卡片检查次序读记录记录记录顺序记录顺序卡片顺序卡片修改信息读卡片检查顺序卡片卡片顺序卡片MFUP写记录打印报告取顺序记录取修改信息匹配修改记录修改后记录记录卡片顺序记录

修改信息

记录卡片

匹配结果记录报告软

法检查顺序检查合理性构成记录核对匹配修改产生新记录检查新记录修改卡片旧文件正确文件顺序卡片修改信息记录修改信息需修改的记录不需修改的信息修改后的记录新记录新文件*软

法(2)事务分析设计的过程:(a)确定DFD中的事务中心和加工路径。(b)设计软件结构的顶层和第一层。(c)事务结构中、下层模块的设计、优化等工作同变换结构。在实际情况下,数据流图往往是变换型和事务型结构的混合,此时,一般以变换分析为主,事务分析为辅进行设计:先找出主加工,设计出结构图的上层,然后根据数据流图的特点,软

法适当地运用变换分析或事务分析。XYZUVAB1B2B3C1C2C3D软

法systemGetAXYZPutDAction1ActionnDetail1DetailnAB1C1B2C2C3B3D……事务层操作层细节层棱形有什么含义?软

法(3)结构图的改进结构图的改进是围绕着结构化设计的总则进行的,即要使每个模块执行一个功能,模块间传送数据型参数,而且参数尽可能少。改进结构图时可从6个方面考虑:(a)功能性模块的组成。一个功能性模块应包括:

a)执行某项具体任务的部分。

b)当完不成任务时,通知调用模块发生了例外情况的部分。软

法c)若要返回一系列数据给它的调用模块,则应包括数据结束时通知调用模块“文件完”的部分。(b)消除重复的功能。XYQ1

Q2

法XYQ’XYQQ1’Q2’YXQ2’QQXY

法(c)模块的作用范围和控制范围。一个判定的作用范围是指受这个判定影响的模块的集合。一个模块的控制范围是指模块本身和它的全部下属模块。

SD方法认为应该使判定的作用范围处于判定所在模块的控制范围之内。如果在设计中没有恰当地安排判定的作用范围和模块的控制范围,则会产生以下不良的后果:重复判软

法定;增加模块间的耦合;产生病态控制流或数据流。如果判定的作用范围不在判定的控制范围之内,可采用以下手段对结构图进行改进:

a)将作判定的模块合并到它的调用模块中,从而使判定处于足够高的位置。

b)将受判定影响的模块下移到控制范围内。

c)把判定上移到足够的位置。软

法TOPXYABB1B2

TOP

XYABB1B2TOPXY

ABB1B2TOPXYAB

B1B2

法(d)模块的大小。模块的大小指的是其篇幅,即指源程序的行数。一般来说,模块的大小以一页左右(通常不超过100行)为宜,这样的篇幅易于阅读和理解。较大的模块可以分解成较小模块,比较小的模块可以合并成大一点的模块。但满足以下条件的模块,不论大小,仍可保持独立:

a)它的块内联系是功能性的。

b)它与其他模块的块间联系较小。软

法c)它的调用模块较复杂或者它有多个调用模块(即复用性好)。(e)深度、宽度、扇出和扇入。

深度表示软件结构中控制的层数。

宽度表示控制的总分布。软

扇出是直接由一个模块控制的模块数目。

扇入表明直接控制一个给定模块的模块数目。根据经验,一个设计得的好的典型系统的平均扇出通常在3-4之间(扇出的上限通常是5-9)。(f)程序的效率。程序结构的优化步骤:

a)使SD方法设计出的基本程序能软

法成功运行,以此作为优化的基础,即不应破坏原有的程序结构。

b)找出基本程序中最频繁执行的一些模块,对它位进行局部优化。四、结构化程序设计将软件设计转换成计算机可以接受的源程序。软

法提问:请说出上图中哪个模块的扇入值最大,是多少?扇出呢?12345678910软

法7.2面向数据结构的开发方法

Jackson方法是英国人MichaelJackson在1970年提出的。它的发展分为2个阶段,前期主要研究以处理数据为主的结构化程序设计JSP(JacksonStructuredProgramming),后期吸收了软件工程的功能分割、逐步求精等设计思想,集中研究软件系统的开发JSD(JacksonSystemDevelopment)。一、Jackson方法的三种基本结构

Jackson方法认为,内在数据结构是软

法至关紧要的,可利用输入数据结构、输出数据结构来推导出程序结构。1、用Jackson图表示的数据结构:(1)顺序结构。顺序结构的数据由一个或多个数据元素组成,每个数据元素按确定次序出现一次。ACBDA由B、C、D3个元素顺序组成软

法(2)选择结构。选择结构的数据包含两个或多个数据元素,每次使用这个数据时,按一定条件从这些数据元素中选择一个。AC°B°D°A是B或C或D中的某一个软

法AB*(3)重复结构。重复结构的数据根据使用时的条件由一个数据元素出现零次或多次构成。A由B出现N次(N≧0)组成软

法例子:软

法2、Jackson图与软件结构的层次图(如P167图7-9)的异同:(1)两者在形式上相当类似;(2)两者的含义不同:

①层次图中的一个方框通常代表一个模块,Jackson图即使在描绘程序结构时,一个方框也并不代表一个模块,通常只代表几个语句。

②层次图表现的是调用关系,而Jackson图表现的是组成关系。软

法3、用Jackson图表示程序结构的伪代码形式描述:

①顺序结构

Aseq

doBdoC

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论