4.7.5软件设计规格说明与复审二、设计复审必要性统计表明:软件开发过程中50%~60%的错误是在设计阶段引入的。一、软件规格说明书软件设计阶段完成,应提交设计文档:1、改进后的模块结构图(包含模块说明)2、各模块的详细说明(流程图、N-S图、PAD图等)复审方式1、正式复审:会议详细审议。2、临时性复审:对局部问题进行讨论。第126页,共133页,星期日,2025年,2月5日补充:软件体系结构1.什么是软件体系结构对系统结构的总体设计与说明是一种高层设计关注三方面问题:构件、构件间关系、关系约束构件: 软件系统由哪些部分构成 例如:程序模块、数据库、服务器等构件间的关系: 这些部分之间的交互关系是什么 例如:RPC(远程过程调用)、共享内存等关系的约束: 这些关系有什么约束 例如:互斥、依赖第127页,共133页,星期日,2025年,2月5日2、目前软件体系结构的研究热点(1)软件体系结构描述 ADL(2)软件体系结构分类 原理、模式(3)特定领域的框架 框架(4)体系结构形式化的基础 过程代数、化学抽象机等第128页,共133页,星期日,2025年,2月5日客户机/服务器体系结构应用系统的组成:显示逻辑部分(表示层):实现与用户交互应用处理部分(功能层):进行具体运算和数据处理数据管理部分(数据层):对数据库中数据进行查询、修改、更新等任务应用分层表示层功能层数据层三层明确分割,逻辑上独立第129页,共133页,星期日,2025年,2月5日瘦客户机和胖客户机客户机“胖”客户机应用处理逻辑显示逻辑服务器数据管理逻辑数据库“瘦”客户机表示显示逻辑数据管理逻辑数据库表示应用处理应用处理逻辑客户机服务器第130页,共133页,星期日,2025年,2月5日客户服务器结构缺点:灵活性差、升级困难、维护工作量大等缺陷,Browse/Server(简称B/S)结构优势:(1)无须开发客户端软件,维护和升级方便;(2)可跨平台操作,任何一台机器只要装有WWW浏览器软件,均可作为客户机来访问系统;(3)具有良好的开放性和可扩充性;(4)可采用防火墙技术来保证系统的安全性,有效地适应了当前用户对管理信息系统的新需求。B/S体系结构第131页,共133页,星期日,2025年,2月5日第132页,共133页,星期日,2025年,2月5日层次图和HIPO图IBM公司发明的HIPO图:层次图+输入/处理/输出图(H图)(IPO图)(HierachyInputProcessOutput)第94页,共133页,星期日,2025年,2月5日1.层次图(H图)表示软件的层次结构正文加工系统输入输出编辑加标题存储检索编目录添加删除插入修改合并列表第95页,共133页,星期日,2025年,2月5日带编号的层次图(H图)正文加工系统输入1.0输出2.0编辑3.0加标题4.0存储5.0检索6.0编目录7.0添加3.1删除3.2插入3.3修改3.4合并3.5列表3.6第96页,共133页,星期日,2025年,2月5日2.HIPO图H图中每一方框(模块)均有一张IPO图对应航线调度系统HIPO图举例H图:命令监控器1.0取得输入1.1输入确认1.2请求确认1.3更新处理1.4第97页,共133页,星期日,2025年,2月5日传统的IPO图举例输入处理输出读口令请求口令文件1取得输入2口令确认3请求确认请求记录权限文件4更新处理权限记录状态报告响应命令监控器(1.0)的IPO图第98页,共133页,星期日,2025年,2月5日改进的IPO图格式IPO图系统:模块:编号:作者:日期:被调用:调用:输出:输入:输入:局部数据元素:注释:第99页,共133页,星期日,2025年,2月5日§4.6详细设计(过程设计、模块设计)主要任务:编写详细设计说明书为此,设计人员应:(1)确定每个模块的算法,用工具表达算法的过程,写出模块的详细过程性描述。(2)确定每一模块的数据结构。(3)确定模块接口细节。详细设计是编码的先导。第100页,共133页,星期日