- 1、本文档共313页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
分析阶段的工作结果是需求说明书,它明确地描述了用户要求软件系统“做什么”。既然“问题”明确了,我们就可以着手寻求“解答”,即建立一个符合用户要求的软件系统。 如果问题较简单,要求一旦确定了,立刻就可以开始编程。但对大型系统来说,为了保证产品的质量,并使开发工作能顺利进行,我们必须先为编程制订一个周密的计划,这项工作就称为设计(Design),设计实际上是为需求说明书到程序间的过渡架起一座桥梁。 设计要决定软件系统的结构,包括数据结构和程序结构,本章只讨论程序结构,第八章将介绍一些为数据库系统组织数据结构的方法。 下面先分析大型程序结构上的特征。 工程上许多大系统都是由一些较小的单元组成的,如建筑工程中的构件、机器中的各种零部件等。这样做的优点是便于加工制造、便于维修,由于一些部件可以公用,成本也较节省。 同样,一个几万行的程序系统也不应是铁板一块的,它应由许多较小的单元组成(图4.1),这种单元可称为模块。 模块(Module)一词目前尚无统一的定义,通常是指用一个名字可以调用的一段程序语句,在本书中我们可以暂将它理解成类似“子程序”的概念,例如PASCAL中的函数和过程,FORTRAN中的函数和子程序,COBO中的节、段等,以及汇编语言中的子程序都可看作是模块,在这些语言中都有相应的过程调用、函数调用等机制(如CALL语句)实现对模块的调用。 下面这段用PASCAL语言写的过程就是一个模块。 PROCEDURE lowterm(VAR num,den:integer); VAR numcopy,dencopy,remainder:integer; BEGIN numcopy:=num; dencopy::den; WHILE dencopy≠0 DO BEGIN remainder: =numcOpy MOD dencOpy; } numcopy:===dencopy; l dencopy: =remainder END;{while) IF numcopy, THEN BEGIN num:=num DIV numcopy; den:一den DIV numcopy END END;{lowterm) 一个 模块具有输入和输出、功能、内部数据、程序代码等四个特性,输入和输出分别是模块需要的和产生的信息,功能是指模块所做的工作,输入输出和功能构成了一个模块的外貌,即模块的外部特性。模块用程序代码完成它的功能,内部数据是仅供该模块本身引用的数据,内部数据和程序代码是模块的内部特性。对模块的外部环境(例如需要调用这个模块的另一个模块)来说,只需了解它的外部特性就足够了,其内部特性应该是不必了解的。 上面这段PASCAL过程,lOWterm是其模块名。模块名一般应能反映该模块的功能,参数num和den是它的输入和输出,变量numcopy、dencopy、remainder是仅供该模块内部使用的数据,从第一个BEG。lN至末一个END之间就是该模块的代码。 同第三章中的思想方法一样,“由外向里”是较合理的一种思考过程,所以我们通常是先确定模块的外部特性,再确定其内部特性。因而软件的设计阶段要分成概要设计和详细设计两步进行。概要设计的任务是决定系统中各个模块的外部特性,即其输入输出和功能;详细设计的任务是决定每个模块的内部特性,即其内部的算法过程及使用的数据。 概要设计(Preliminary Design)又称总体设计(Architectural。Design),它的基本任务是: ·将系统划分成模块 ·决定每个模块的功能 ·决定模块的调用关系 ·决定模块的界面,即模块间传递的数据 所以概要设计的主要工作就是完成模块分解,确定系统的模块层次结构(图4.1)。这项工作技术上比较复杂,也需要人的创造能力。 对同一用户需求,可以提出多个设计方案,一个系统的质量在很大程度取决于设计方案的质量,所以在设计阶段只考虑一个设计方案是不够的,我们应该尽量考虑多种可能的方案,并对各个方案的质量进行全面的评价,然后从中选出一个较好的方案来。所谓“较好”是指在一定的限制条件下(如成本、时间、可使用资源等。)能使所期望的目标(可维护性、可靠性、可理解性、效率等)较大限度地得到满足。 概要设计需交付的文档中,除了对数据结构的描述部分
您可能关注的文档
- (软件工程理论、方法与实践)第3章面向对象系统建模.ppt
- (软件工程理论、方法与实践)第5章面向对象的分析.ppt
- (软件工程理论、方法与实践)第6章软件设计.ppt
- (软件工程理论、方法与实践)第8章分布式系统体系结构.ppt
- (软件工程理论、方法与实践)第11章软件实现.ppt
- (软件工程理论、方法与实践)第12章软件验证和确认.ppt
- (软件工程理论、方法与实践)第13章软件演化.ppt
- (软件工程理论、方法与实践)第15章软件过程改善.ppt
- (软件工程理论、方法与实践)第16章净室软件工程.ppt
- (软件体系结构)第1章软件重用与构件技术.ppt
- 剧本杀行业报告:内容创作规范与剧本市场拓展策略.docx
- 剧本杀行业区域市场区域文化特色与市场潜力分析报告.docx
- 剧本杀行业区域市场拓展实战案例研究.docx
- 剧本杀行业区域市场拓展路径与模式探索报告.docx
- 剧本杀行业区域市场竞争态势与品牌差异化策略研究报告.docx
- 剧本杀行业2025年西北区域市场市场细分领域竞争态势与品牌竞争策略分析研究报告.docx
- 剧本杀行业2025年西北市场拓展前景预测报告.docx
- 剧本杀行业2025年长沙市场发展潜力分析报告.docx
- 剧本杀行业2025年长三角市场竞争策略与布局分析.docx
- 医疗行业数据合规:2025年数据安全法实施后的合规监管挑战与应对.docx
最近下载
- 手术室人员行为管理与规范.pptx VIP
- 2025年呼和浩特市土默特左旗社区工作者招聘考试试题 .pdf VIP
- 卫生院优质服务基层行创建资料(1.1.2主要任务).docx VIP
- 2025年教职工疗休养服务项目212页.docx VIP
- 2025年内蒙古自治区中考语文试题卷(含答案解析).docx
- 中学生英才计划面试常见问题.docx VIP
- 社会组织矛盾纠纷排查化解工作总结.pptx VIP
- 近十年管综数学真题.pdf VIP
- 13、安放式支管台组对焊接.pptx VIP
- SIEMENS西门子 SIMATIC ET 200SP 电机启动器 (3RK1308‑0..00‑0CP0)设备手册.pdf VIP
文档评论(0)