软件工程课件第六章.pptx
《软件工程课件第六章.pptx》由会员分享,可在线阅读,更多相关《软件工程课件第六章.pptx(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、27 三月 2023详细设计详细设计根根本本目目标标:确确定定应应该该怎怎样样具具体体地地实实现现所所要要求求的的目目标标,即即对对目标系统的精确描述。目标系统的精确描述。根根本本任任务务:为为软软件件结结构构中中的的每每个个模模块块选选择择算算法法和和块块内内数数据据结构,并用选定的某种表达工具给出清晰的描述。结构,并用选定的某种表达工具给出清晰的描述。详细设计结果基本上决定了最终的程序代码的质量。详细设计结果基本上决定了最终的程序代码的质量。衡衡量量程程序序的的质质量量,不不仅仅要要看看其其逻逻辑辑上上是是否否正正确确,性性能能是是否否满足要求,更主要的是看其是否容易阅读和测试。满足要求,
2、更主要的是看其是否容易阅读和测试。详详细细设设计计的的目目标标不不仅仅仅仅是是逻逻辑辑上上正正确确地地实实现现每每个个模模块块的的功功能,更重要的是设计出的能,更重要的是设计出的处理过程应该尽可能简明易懂处理过程应该尽可能简明易懂。第1页/共30页27 三月 2023结构化程序设计结构化程序设计1965年最早由年最早由E.W.Dijkstra提出:提出:“可以从可以从高级语言中取消高级语言中取消goto语句,程序的质量与程序中语句,程序的质量与程序中所包含的所包含的goto语句的数量成反比语句的数量成反比”。1966年,年,Bohm和和Jacopini证明了,只用证明了,只用“顺序顺序”(Se
3、quence)、“选择选择”(ConditionSelect)和和“循环循环”(Repetition)三种基本的控制结构就三种基本的控制结构就能实现任何单入口单出口的程序。能实现任何单入口单出口的程序。1972年,年,IBM公司的公司的Mills进一步提出,程进一步提出,程序应该只有一个入口和一个出口。序应该只有一个入口和一个出口。第2页/共30页27 三月 2023结构化程序设计结构化程序设计结构程序设计是按照一组能提高程序结构程序设计是按照一组能提高程序的可读性和易维护性的规则而进行的程序的可读性和易维护性的规则而进行的程序设计方法,目的是为了使程序具有一种合设计方法,目的是为了使程序具有
4、一种合理的结构,以使程序易理解和维护,便于理的结构,以使程序易理解和维护,便于保证和验证程序的正确性。保证和验证程序的正确性。第3页/共30页27 三月 2023结构化程序设计追求的目标结构化程序设计追求的目标可可理理解解性性:程程序序正正确确性性证证明明的的关关键键是是可可理理解解性性。程程序序正正确确性性证证明明并并非非指指从从公公理理出出发发的的形形式式推推导导,而而是是指指任任何何一一种种有有足足够够说说服服力力的的证证明明(形形式式的的或或非非形形式式的的),其其实实是是一一种种理理解。解。易易维维护护性性:测测试试只只能能证证明明错错误误存存在在,而而不不能能证证明明错错误误不不存
5、存在在。因因此此测测试试后后投投入入运运行行的的软软件件很很可可能能还还有有错错误误。在在运运行行阶阶段段要要不不断断发发现现并并改改正正错错误误。此此外外,用用户户还还会会不不断断提提出出新新的的要要求求,系系统统的的操操作作系系统统也也可可能能发发生生变变化化。故故投投入入运运行行的的软软件件需需要要不不断断修修改改、扩扩充充,即即需需要要维维护护。软软件件的的易易维维护护性性一一般般包包括易阅读、易发现和改正错误、易修改扩充等含义。括易阅读、易发现和改正错误、易修改扩充等含义。第4页/共30页27 三月 2023结构化程序设计的核心内容结构化程序设计的核心内容一、自顶向下、逐步求精的设计
6、方法一、自顶向下、逐步求精的设计方法。1 1、软件结构设计的自顶向下、逐步求精的设计方法、软件结构设计的自顶向下、逐步求精的设计方法 把把待待开开发发的的软软件件系系统统看看作作一一个个实实体体。首首先先把把这这个个实实体体分分解解成成相相互互独独立立的的几几大大功功能能,每每个个功功能能又又可可分分解解成成逻逻辑辑上上独独立立的的子子功功能能,子子功功能能又又可可再再分分解解成成更更小小的的子子功功能能。直直到到每每个个子子功功能能都都能非常明确地用什么算法去实现为止。能非常明确地用什么算法去实现为止。2 2、模块算法设计的自顶向下、逐步求精方法。、模块算法设计的自顶向下、逐步求精方法。把把
7、模模块块解解决决问问题题的的求求解解方方案案分分解解为为若若干干步步抽抽象象的的计计算算操操作作,并并用用一一种种描描述述工工具具按按控控制制结结构构把把这这些些抽抽象象的的计计算算操操作作描描述述出出来来。对对算算法法包包含含的的抽抽象象计计算算操操作作又又可可进进一一步步精精细细化化,如如此此循循序序渐渐进进,每每一一次次的的求求精精,使使抽抽象象的的计计算算操操作作得得到到更更进进一一步步精精细细,计计算算操操作作越越来来越越明明确确,逐逐步步向向程程序序形形式式靠靠近近。如如此此下下去去,直直到到算算法法中中包含的主要计算操作都能用伪代码表达为止。包含的主要计算操作都能用伪代码表达为止
8、。3 3、自顶向下的程序验证。、自顶向下的程序验证。第5页/共30页27 三月 2023结构化程序设计的核心内容结构化程序设计的核心内容二、使用三种基本控制结构来构造程序二、使用三种基本控制结构来构造程序 1 1、任何程序都由顺序、选择和重复三种基本控制结构构造。、任何程序都由顺序、选择和重复三种基本控制结构构造。顺序实现了任何算法规约中的核心处理步骤;顺序实现了任何算法规约中的核心处理步骤;条件允许根据逻辑情况选择处理方式;条件允许根据逻辑情况选择处理方式;重复提供了循环。重复提供了循环。这些逻辑元素是结构化程序设计的基础。这些逻辑元素是结构化程序设计的基础。根据逐步求精的思想,可用三种方式
9、对模块过程进行分解:根据逐步求精的思想,可用三种方式对模块过程进行分解:用顺序方式对过程分解,确定各部分的执行顺序;用顺序方式对过程分解,确定各部分的执行顺序;用选择方式对过程分解,确定各部分的执行条件;用选择方式对过程分解,确定各部分的执行条件;用用循循环环方方式式对对过过程程分分解解,确确定定某某个个部部分分进进行行重重复复的的开开始始和和结束的条件。结束的条件。对对处处理理过过程程仍仍然然模模糊糊的的部部分分反反复复使使用用以以上上分分解解,直直到到所所有有细细节确定下来。节确定下来。第6页/共30页27 三月 2023结构化程序设计的核心内容结构化程序设计的核心内容前一页 2 2、三种
10、基本结构的共同点是单入口、单出口。单单入入口口单单出出口口的的控控制制结结构构,使使得得程程序序的的静静态态结结构构和和它它的的动动态态执执行行情情况况一一致致。这这样样,使使得得程程序序容容易易阅阅读读和和理理解,也容易保证程序的正确性。解,也容易保证程序的正确性。第7页/共30页27 三月 2023国家软件开发工程规范的规定国家软件开发工程规范的规定国国家家软软件件开开发发工工程程规规范范规规定定“程程序序单单元元必必须须只只有有唯唯一一的的入口,唯一的出口入口,唯一的出口”有两个不同的概念:有两个不同的概念:1 1、以以模模块块为为对对象象,每每个个模模块块只只有有一一个个入入口口(通通
11、过过模模块块名名进进行行调调用用),唯唯一一的的出出口口指指通通过过模模块块的的返返回回语语句句返返回回到到调调用用语句的下一个语句语句的下一个语句(对函数是返回到调用的位置对函数是返回到调用的位置)。2 2、以以五五种种语语句句的的控控制制结结构构为为对对象象,每每种种控控制制结结构构,以以其其语语句句标标志志的的第第一一个个语语句句为为入入口口语语句句,以以语语句句控控制制范范围围的的下下一一个语句为出口到的语句。个语句为出口到的语句。经经典典的的结结构构程程序序设设计计:使使用用顺顺序序、IF_THEN_ELSEIF_THEN_ELSE型型分分支支结构、结构、DO_WHILEDO_WHI
12、LE型循环结构。型循环结构。扩扩展展的的结结构构程程序序设设计计:还还允允许许使使用用DO_CASEDO_CASE型型多多分分支支结结构构和和DO_UNTILDO_UNTIL型循环结构。型循环结构。修正的结构程序设计:再允许使用修正的结构程序设计:再允许使用BREAK(LEAVE)BREAK(LEAVE)结构。结构。第8页/共30页27 三月 2023逐步求精算法实例逐步求精算法实例空气污染物含量数据的统计处理程序空气污染物含量数据的统计处理程序假假定定某某工工厂厂烟烟囱囱附附近近,在在24小小时时中中每每分分钟钟测测量量1次次空空气气中中污污染染物物含含量量。得得到到的的数数据据以以每每10
13、0单单位位中中所所含含污污染染物物成成分分的的值值给出。约定测量数据的正常值在给出。约定测量数据的正常值在1.00与与9.00之间。之间。统计程序完成以下功能:统计程序完成以下功能:1、计算、计算24小时内小时内每小时每小时平均污染物含量值。平均污染物含量值。2、记记录录每每小小时时违违章章次次数数,污污染染物物连连续续5次次超超过过10.0为为1次次违违章章。当当一一次次违违章章分分布布在在两两相相邻邻小小时时之之间间时时间间段段上上时时,这这次次违违章记数在后一小时上。章记数在后一小时上。3、按以下形式列出污染物含量统计表。、按以下形式列出污染物含量统计表。小时小时每小时平均值每小时平均值
14、违章次数违章次数16.00126.402245.500根据程序要求,算法主要处理根据程序要求,算法主要处理24小时数据。小时数据。第9页/共30页27 三月 2023算法:统计污染物含量数据算法:统计污染物含量数据BEGIN1.设置初值;设置初值;2.处理处理24小时数据;小时数据;END求精步骤求精步骤1:设置初值。开始时一般不明确为哪些变量赋初值。:设置初值。开始时一般不明确为哪些变量赋初值。求求精精步步骤骤2:计计算算结结果果是是以以小小时时为为统统计计单单位位输输出出,它它是是重重复复执执行行24次次的的循环结构。循环结构。局部数据结构设计:数据输入的方案选择:局部数据结构设计:数据输
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 课件 第六
限制150内