《软件文档写作10开发文档.pptx》由会员分享,可在线阅读,更多相关《软件文档写作10开发文档.pptx(23页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1 回顾其中主要的表达类型有:回顾其中主要的表达类型有:1.1.模块视图类型模块视图类型能为系统主要实现单元编制文档服务;能为系统主要实现单元编制文档服务;2.2.组组件件和和连连接接器器(C&C)(C&C)视视图图类类型型能能为为系系统统执执行行单单元元编编制文档服务;制文档服务;3.3.分分配配视视图图类类型型能能为为系系统统软软件件与与其其开开发发和和执执行行环环境境之之间的关系编制文档服务。间的关系编制文档服务。我我们们已已经经介介绍绍的的类类型型风风格格主主要要有有:分分解解风风格格、使使用用风风格格、泛化风格、分层风格、部署风格、实现风格和工作任务风格等。泛化风格、分层风格、部署风
2、格、实现风格和工作任务风格等。这这3 3种种视视图图类类型型代代表表着着系系统统设设计计师师在在设设计计系系统统时时必必须须考考虑虑的的3 3种种视视角角:将将系系统统看看成成实实现现单单元元、运运行行时时执执行行单单元元、从从软软件件元元素素到环境结构的映射。而文档就是要记录这些内容。到环境结构的映射。而文档就是要记录这些内容。反反映映到到概概要要设设计计具具体体的的表表现现形形式式,主主要要是是:结结构构化化设设计计表表达、面向对象设计表达。达、面向对象设计表达。第1页/共23页21.1.结构化表现形式结构化表现形式 结结构构化化程程序序设设计计在在数数据据类类型型和和结结构构化化控控制制
3、描描述述支支持持下下,主主程程序序和和子子过过程程按按照一定的构造逻辑分层布置,是主要的程序设计思想。照一定的构造逻辑分层布置,是主要的程序设计思想。在在这这样样的的思思想想下下,系系统统的的结结构构被被映映射射为为主主程程序序和和一一系系列列具具有有调调用用关关系系的的子子过程的集合。这在程序设计语言中,直接与主程序和过程过程的集合。这在程序设计语言中,直接与主程序和过程/函数的概念相对应。函数的概念相对应。更复杂的系统设计包含了库、包、模块、程序覆盖等概念。更复杂的系统设计包含了库、包、模块、程序覆盖等概念。常常用用的的概概要要设设计计结结构构化化表表现现方方法法有有:层层次次图图、HIP
4、OHIPO图图、结结构构图图等等。如如下下图图是一个是一个层次图层次图的例。的例。字处理系统输入输出编辑存储检索格式化编目录添加删除插入修改合并列表第2页/共23页3 简简单单的的层层次次图图缺缺乏乏追追踪踪性性,而而HIPOHIPO图图可可以以弥弥补补此此一一缺缺点点。实实际际上上,HIPOHIPO图图是是由由H H图图和和IPOIPO图图两两部部分分组组成成:H H图图就就是是层层次次图图;和和H H图图每每个个方方框框相相对对应应的的,应应该该有有一一张张IPOIPO图图描描述述该该方方框框代代表表的的模模块块的的处处理理过过程程。如如下下图图,是是一一个个带带编编号号的的H H图图的的
5、例例,具具有有可可追追踪性。踪性。字处理系统输出2.0输入1.0存储4.0编辑3.0格式化6.0检索5.0编目录7.0删除3.2添加3.1修改3.4插入3.3列表3.6合并3.5 IPOIPO图图使使用用的的符符号号既既少少又又简简单单,能能够够方方便便的的描描述述数数据据输输入入、处理和输出之间的关系。如下图是一个主文档更新的处理和输出之间的关系。如下图是一个主文档更新的IPOIPO例子。例子。第3页/共23页4程序名:模块名:编制者:日 期:页号:输入处理输出旧的主文件事务文件1.检验主记录2.校验事务记录3.更新主记录有效的主记录有效的事务记录更新后的主记录 图中,箭头清楚的指出了数据通
6、信的情况。图中,箭头清楚的指出了数据通信的情况。YourdonYourdon提提出出的的结结构构图图是是进进行行软软件件结结构构设设计计的的另另一一个个有有力力的的表表达达方方法法。而而且,结构图较之层次图有更强的描述力。且,结构图较之层次图有更强的描述力。第4页/共23页5下图是结构图的一个例子:下图是结构图的一个例子:产生最佳解得到好输入计算最佳解输出结果读输入编辑输入结果格式化显示结果好输入解好输入解原始输入原始输入编辑结束解解的格式化格式化的解 结结构构图图还还有有一一些些附附加加的的符符号号,用用以以表表示示模模块块的的选选择择调调用用和和循循环环调调用用。如如下图,左图是选择调用,
7、右图是循环调用。下图,左图是选择调用,右图是循环调用。MAB判定为真时调用模块A,否则调用模块BMACB模块M循环调用模块A、B、C第5页/共23页62.2.面向对象设计表现形式面向对象设计表现形式 数数据据抽抽象象和和面面向向对对象象设设计计是是在在主主程程序序和和子子过过程程设设计计基基础础上上建建立立和和发发展展起起来来的的重重要要的的软软件件描描述述方方法法。数数据据抽抽象象是是面面向向对象设计的理论基础。类和对象是该描述方法的基础粒度。对象设计的理论基础。类和对象是该描述方法的基础粒度。与与传传统统软软件件工工程程将将设设计计描描述述基基础础建建立立在在模模块块或或包包上上不不同同,
8、面面向向对对象象设设计计方方法法的的描描述述将将软软件件的的组组成成建建立立在在类类和和对对象象的的粒粒度度上上,极极大大的的改改变变了了软软件件描描述述的的特特性性,并并一一举举带带来来软软件件结结构构的革命性变化。的革命性变化。目目前前,面面向向对对象象方方法法已已经经成成为为软软件件下下图图设设计计的的基基础础和和出出发发点点。一一些些重重要要的的软软件件设设计计思思想想,如如消消息息、组组件件、控控件件、部部件件等等,都都是是在在此此基基础础上上提提出出来来的的,都都可可以以从从类类和和对对象象中中找找到到踪迹。踪迹。面面向向对对象象设设计计文文档档表表达达根根据据下下图图结结构构的的
9、表表达达,有有多多种种方方式,下面逐个介绍。式,下面逐个介绍。第6页/共23页7(1)(1)面向对象设计面向对象设计(OOD)(OOD)的的 4 4个部分个部分 这这4 4个个部部分分是是问问题题域域、人人机机交交互互部部分分、任任务务管管理理部部分分和和数数据据管管理理部部分分。如下图所示。如下图所示。主题层类及对象层结构层属性层问题域部分人机交互部分任务管理部分数据管理部分-问问题题域域部部分分:OODOOD根根据据需需求求分分析析中中对对问问题题域域的的描描述述,针针对对实实现现要要求求进进行行必必要要的的整整补补和和调调整整。其其重重点点是是:重重用用类类设设计计、组组合合问问题题域域
10、专专用用类类、调调整整继继承承的的支持级别、提供数据管理部分以及增加底层细节。支持级别、提供数据管理部分以及增加底层细节。-人人机机交交互互部部分分设设计计:突突出出人人如如何何命命令令系系统统,及及系系统统如如何何向向用用户户提提交交信信息息。尤尤其对非计算机专业用户如何提交信息。其对非计算机专业用户如何提交信息。-任任务务管管理理部部分分设设计计:设设计计策策略略要要点点是是识识别别并并设设计计任任务务,加加上上包包含含在在每每个个任任务务中的服务。中的服务。-设设计计管管理理部部分分设设计计:该该部部分分主主要要是是为为了了隔隔离离数数据据管管理理方方案案对对系系统统设设计计表表达达的的
11、影响。设计既包含数据存放方法的设计,也包含相应服务的设计。影响。设计既包含数据存放方法的设计,也包含相应服务的设计。第7页/共23页8(2)(2)概要设计概要设计 OODOOD与与OOAOOA的的表表现现形形式式有有相相似似之之处处,但但OODOOD需需要要针针对对实实现现的的要要求求进进行行必必要要的的整补和调整。整补和调整。面面向向对对象象系系统统的的一一个个典典型型的的系系统统结结构构是是模模型型/视视图图/控控制制器器(MVC)(MVC)框框架架结结构构。其其中中,模模型型是是指指应应用用中中的的对对象象,其其操操作作独独立立于于用用户户界界面面;视视图图则则管管理理用用户户界界面的输
12、出;控制器处理应用的输入。见下图。面的输出;控制器处理应用的输入。见下图。视图模型控制器 系系统统结结构构实实际际上上是是一一些些抽抽象象的的类类的的集集合合,提提供供了了系系统统的的最最上上层层设设计计。定定义义这这些些抽抽象象类类的的新新的的子子类类和和把把它它们们实实例例化化,可可以以实实现现所所要要求求的的特特定定行行为为,借借此可以构造待开发的系统。概要设计过程编档就是记录这一构造过程和结果。此可以构造待开发的系统。概要设计过程编档就是记录这一构造过程和结果。第8页/共23页9(3)(3)概要设计技术的常用表示方法概要设计技术的常用表示方法 有有继继承承机机制制、聚聚集集关关系系、对
13、对象象关关联联、注注册册/观观察察器器、虚虚拟拟设设备备和和代代理理结结构构等多种表示方法。等多种表示方法。继承机制的表示继承机制的表示 通常将父类放在上面,将子类放在下面。如左图通常将父类放在上面,将子类放在下面。如左图AB父类子类派生 继承动物家禽类宠物鸡鸭鹅狗猫 下下图图是是表表示示鸡鸡、鸭鸭、猫猫、狗狗和和动动物物之之间间的继承关系。的继承关系。第9页/共23页10 聚集关系的表示聚集关系的表示 若类若类B B的定义将类的定义将类A A的对象作为数的对象作为数据成员,则据成员,则B B和和A A之间是一种聚集关系,之间是一种聚集关系,其表示方法如右图所示。其表示方法如右图所示。汽车B轮
14、胎A子午线轮胎 对象关联的表示对象关联的表示 对对象象不不是是独独立立存存在在的的,总总是是要要以以一一定定形形式式与与其其它它对对象象发发生生关关系系的的。如如一一对一、一对多的单向关系。主要关联方式分内嵌关联和外嵌关联两种。对一、一对多的单向关系。主要关联方式分内嵌关联和外嵌关联两种。关联源对象关联指针被关联对象属性Next关联对象指针属性Next关联对象指针属性Next关联对象指针被关联对象被关联对象图:内嵌关联结构表示A类对象:A1A类对象:A1A类对象:A2B类对象:B1B类对象:B2B类对象:B3AB关联类B类AB类对象关联表A A类对象标识类对象标识 B B类对象标识类对象标识
15、关联对象关联对象 A1 B1AB1 A1 B2AB2 A2 B1AB3 图:外嵌关联结构表示第10页/共23页11 注册注册/观察器的表示观察器的表示 一一种种将将新新的的信信息息一一对对一一的的迅迅速速传传送送或或通通知知给给相相关关对对象象的的对对象象协协作作机机制制。特特别别在在分分布布式式环环境境中中,对对象象通通信信代代价价很很高高时时,这这是是一一种高效的手段,在网络软件设计时常用。见下图例。种高效的手段,在网络软件设计时常用。见下图例。生产者Collection ClientAttach()Detach()GetData()Generator()Notify()客 户生产者*Ge
16、n客户()客户()Update()SetGen()Notify()ClientUpdate()GenAttach()GenDetach()1.n第11页/共23页12 虚拟设备的表示虚拟设备的表示 虚拟设备是操作系统的一个重要概念。使用这种概念,可以为在不同设虚拟设备是操作系统的一个重要概念。使用这种概念,可以为在不同设备上实现相同功能,或以相同操作接口访问不同设备提供可能和方便。如图备上实现相同功能,或以相同操作接口访问不同设备提供可能和方便。如图ApplicationCanvasDraw()Line()Circle()Rectangle()TextOut()DrawSpaceDraw()L
17、ine()Circle()Rectangle()TextOut()PrinterDrawSpaceDraw()Line()Circle()Rectangle()TextOut()PrinterPrewDrawSpaceDraw()Line()Circle()Rectangle()TextOut()ScreenWinDrawSpaceDraw()Line()Circle()Rectangle()TextOut()OtherGDI第12页/共23页13 代理结构的表示代理结构的表示 代代理理是是一一种种在在应应用用和和被被访访问问对对象象之之间间建建立立的的桥桥梁梁或或关关口口。通通过过代代理理的
18、的虚虚拟作用,达到控制对象访问的目的。拟作用,达到控制对象访问的目的。代代理理具具有有的的作作用用或或特特性性可可以以包包括括间间接接性性、委委托托性性、临临时时替替代代性性、虚虚拟拟性性、安全性安全性/保护性、远程性和多源性。保护性、远程性和多源性。下图是代理模式的实现结构表示的例。下图是代理模式的实现结构表示的例。ApplicationObjectService()ActualObjectService()Object*anObjectService()ProxyanObjectReturn anObjectService()第13页/共23页14网络代理连接的表示例子:网络代理连接的表示
19、例子:应用代理远程对象多源代理连接的例子多源代理连接的例子应用代理问题求解对象1对象n对象2连接连接连接连接第14页/共23页156.5 6.5 软件详细设计文档软件详细设计文档 详详细细设设计计在在概概要要设设计计之之后后,其其工工作作重重点点是是考考虑虑实实现现各各个个模模块块的的规规定定功功能能,表表达达的的是是模模块块内内部部的的逻逻辑辑关关系系、数数据据结结构构和和模模块块接接口口细细节节等等,表表达达的的方方法法主主要要有有程程序序流流程程图图、N-SN-S图图、PADPAD图图、PDLPDL语言以及判定表、树等。语言以及判定表、树等。程序流程图程序流程图 程程序序流流程程图图也也
20、称称程程序序框框图图,是是一一种种独独立立于于任任何何程程序序设设计计语语言言的的表表达达工工具具,因因其其直直观观、清清晰晰,易易学学、易易用用,而而深深受受欢欢迎迎。然然而而,由由于于其其存存在在致致命命的的缺缺点点可可以以随随意意转转向向的的箭箭头头,使使得得设设计计难难以以规范、质量难以保证。目前,国际标准化机构已经不再推荐使用。规范、质量难以保证。目前,国际标准化机构已经不再推荐使用。程序流程图主要由程序流程图主要由5 5种基本的控制结构构成,图见下页。种基本的控制结构构成,图见下页。第15页/共23页16(1)(1)顺序结构顺序结构(sequential structure)(2)
21、(2)选择结构选择结构(selective structure)ABPBAFT(3)(3)先判定型循环结构先判定型循环结构(while-loop structure)(4)(4)后判定型循环结构后判定型循环结构(until-loop structure)TPSFFSTP(5)(5)多情况选择多情况选择(case structure)TA1FP=1TA2FP=2TAnFP=n程序流程图程序流程图(Program Flow Chart)(Program Flow Chart)的的5 5种基本控制结构:种基本控制结构:第16页/共23页17顺序顺序ABPFTAB选择选择PFT BDo-While P
22、SWhileWhile型循环型循环Do-Until PSUntilUntil型循环型循环CaseCase型选择型选择P12nA1A2An子过程调用子过程调用A N-SN-S图图:Nassi Nassi&Shneiderman Shneiderman 19731973年年提提出出,又又称称为为盒盒图图(Box(Box Diagram)Diagram)。Chapin Chapin 19741974年作扩充,故也称为年作扩充,故也称为Chapin chartsChapin charts。N-SN-S图规定了图规定了6 6种图形构件。种图形构件。第17页/共23页18x4TFDo-Until x5ig
23、hfkx1TFbDo-Until x6ajx21cDo-While x323dek:N-S图的例:图的例:第18页/共23页19AB顺序顺序 While PS Until PS循环循环PABTHENELSE选择选择P=A1A2CaseCase型选择型选择An12n陈述索引陈述索引def定义定义 PADPAD图图(Problem Analysis Diagram)(Problem Analysis Diagram):日立公司,日立公司,19731973年提出。为年提出。为ISOISO所极力推荐。也有所极力推荐。也有5 5种基本控制结构。种基本控制结构。第19页/共23页20开始开始 结束结束 a
24、j Until x5i Until x6bx1kfx4ghdefkx2de123 While x3c例:例:N-SN-S图的例转换到图的例转换到PADPAD图。图。第20页/共23页21PROCEDURE spell_check IS BEGIN Split document into single words Look up words in dictionary Display words which are not in dictionary Create a new dictionary END spell_checkExternal statementsInternalstateme
25、nts PDL(Program Design Language)PDL(Program Design Language):是一种非正文形式的过程设计工具。是一种非正文形式的过程设计工具。PDLPDL语言的特点:语言的特点:有固定的关键字外语法,有完整的结构化的控制结构、数据说明和模块特征;有固定的关键字外语法,有完整的结构化的控制结构、数据说明和模块特征;内语法使用自然语言描述处理特征,为使用者提供方便,提高可读性;内语法使用自然语言描述处理特征,为使用者提供方便,提高可读性;有数据说明机制。包括简单的有数据说明机制。包括简单的(标量和数组标量和数组)和复杂的和复杂的(链表和层次结构链表和层次结构)数据结构;数据结构;有子程序定义和调用机制,及各种方式的接口说明。有子程序定义和调用机制,及各种方式的接口说明。例:例:第21页/共23页22 国标国标(GB8567-88)(GB8567-88)关于概要设计和详细设计的模板主要有:关于概要设计和详细设计的模板主要有:1.1.概要设计说明书概要设计说明书2.2.数据库设计说明书数据库设计说明书3.3.组装测试计划组装测试计划4.4.详细设计说明书详细设计说明书 一个一个“人力资源管理系统详细设计报告人力资源管理系统详细设计报告”的例的例第22页/共23页23感谢您的观看!第23页/共23页