软件设计的概念和过程课件.ppt

软件设计的概念和过程课件.ppt

ID:58465577

大小:630.00 KB

页数:120页

时间:2020-09-07

软件设计的概念和过程课件.ppt_第1页
软件设计的概念和过程课件.ppt_第2页
软件设计的概念和过程课件.ppt_第3页
软件设计的概念和过程课件.ppt_第4页
软件设计的概念和过程课件.ppt_第5页
资源描述:

《软件设计的概念和过程课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第三章软件设计的概念和过程软件设计阶段的目的是产生一个具有良好结构的、可以初步运行的软件系统。§1.软件设计过程:结构化设计初步设计设计复审详细设计设计复审编码软件结构与说明修改设计资料模块算法描述控制逻辑修改规格说明源代码docin/sundae_meng第三章软件设计的概念和过程指导原则:层次化:合理地控制和划分软件成分的关系。模块化:充分采用信息隐蔽原则,最大限度地实现程序局部化和数据局部化,控制复杂性。功能独立:尽量使每个软件成分的功能保持相对独立。信息驱动:尽量使用分析阶段取得的成果。结构清晰:尽量使软件成分

2、之间的关系简单。控制简单:尽量使软件成分内部的控制关系清晰,控制结构严格受限,避免混乱。docin/sundae_meng第三章软件设计的概念和过程§2.自顶向下、逐步求精的设计方法原则从软件系统的最高层开始,定义一个软件的总控程序,由它驱动第二层次的任务,再逐级向下按同样的原则依次扩展,直至最底层不可再分的任务(模块),编制源代码。基础:基于软件的控制流向或程序的控制结构。优点:信息隐蔽。各层之间存在单向的控制关系,通过传送必要的控制信息或数据来实现,同层之间则无控制关系;某个数据结构及其操作完全位于低层,则无需在高

3、层定义;控制关系向下传递。docin/sundae_meng第三章软件设计的概念和过程2.【例】银行算法A.问题假定某个银行有一笔若干个单位的资金,可供客户项目发展贷款,寻求一个安全的贷款策略。B.规定:客户预知贷款总额,且所有客户贷款总额之和将超过资金总额;每个客户一次请贷一个单位;对客户的贷款请求,可以立即付给,也可请其等待;一旦客户贷足总额,立即归还全部贷款。docin/sundae_meng第三章软件设计的概念和过程C.分析银行存在两种可能的状态:安全、不安全。安全状态:银行无论如何贷款,都有可能使它当前的所有

4、客户在有限的时间内完成项目建设并归还全部贷款。不安全状态:银行将不可能实现上述目标,资金无法收回。例如,银行有10个货币单位,3个客户,它们的贷款总额分别为:8、3、9。docin/sundae_meng第三章软件设计的概念和过程状态1是安全的:状态2是不安全的:银行资金:4A:3(5)B:2(1)C:1(8)银行资金:1A:4(4)B:2(1)C:3(6)docin/sundae_meng第三章软件设计的概念和过程进一步分析:在安全状态和不安全状态之间,存在一个临界状态。此时,只有按照特定的贷款策略才可以完成所有项目

5、。自顶向下设计当前系统的描述:types=recordtransactions:array[1..n]ofrecordclaim,loan:int;completed:booleanend;capital,cash:int;end;docin/sundae_meng第三章软件设计的概念和过程第一步:确定当前系统安全否,分两步。functionsafe(current_state:s):boolean;varstate:s;beginstate:=current_state;试完成所有的交易;safe:=所有的交易是否全

6、部完成;end;安全否试完成全部交易是否全部完成docin/sundae_meng第三章软件设计的概念和过程第二步:针对逐个试完成交易,又分两步。此时有两个程序:逐个试完成交易、所有交易是否完成。①逐个试完成交易procedurecomplete_transactions(varstate:s);varcustomer:int;progress:boolean;beginrepeatprogress:=false;forcustomer:=1tondoifnotstate.transactions[customer].

7、completedthenif该项交易能完成thenbegindocin/sundae_meng第三章软件设计的概念和过程归还贷款;state.transactions[customer].completed:=true;progress:=true;end;untilnotprogress;end;②所有交易是否完成functionall_transactions_completed(state.s):boolean;beginifstate.capital=state.cashthenall_transaction

8、s_completed:=trueelseall_transactions_completed:=false;end;docin/sundae_meng第三章软件设计的概念和过程这时,系统将又向下细化一级:是否安全试完成全部交易是否全部完成逐个试完成交易归还贷款docin/sundae_meng第三章软件设计的概念和过程第三步:针

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。