




已阅读5页,还剩64页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件开发 详细设计 内容提纲 结构化方法 基本任务 过程设计的工具 面向数据结构的设计方法 程序复杂度的度量 内容提纲 面向对象方法 基本任务 方法建模 属性建模 状态建模 关系建模详细设计的评审用户界面的设计 结构化方法 基本任务 对系统中每个模块的内部过程进行设计和描述 结构化程序设计技术即保证了每个模块功能的正确实现 也让设计出的处理过程简明易懂 过程设计的工具 程序流程图盒图 N S图 PAD图 ProblemAnalysisDiagram PDL语言 ProcessDesignLanguage 举例 指出所有的基本程序结构 程序流程图的缺点 由于流程线随心所欲地使用 容易与结构化程序设计思想相违背难以描述逐步求精的过程难以表示系统中的数据结构 N S图 举例 请描述程序的运行过程 练习 S1 if x 5 thenS2elseS3 while y0then S6 while k 5 S7 S8 N S图的特点 功能域明确不可能任意转移控制很容易确定局部和全局数据的作用域很容易表示嵌套关系 也可以表示模块的层次结构 PAD图 PAD图 S1 if x 5 thenS2elseS3 while y0then S6 while k 5 S7 S8 举例 将下列伪代码转换成PAD表示 练习 用选择排序法对数组X 1 n 进行降序排列 思考 选择排序法的程序基本结构 答 双重循环 内层 外层循环任务分别是什么 答 内层循环将X i 和X j 比较 取大外层循环将X i 取值不断变化 内层 外层循环的初值 终值 答 内层 i 1 n 1 外层 0 n 2 答案 选择排序的PAD图 细化 交换x i 和x j 等价带入 面向数据结构的设计方法 出现原因 数据结构对于程序的结构和运行过程存在影响 层次的数据结构和层次模块结构存在相似性面向数据结构的设计方法 Jackson方法 Warnier方法 Jackson图描述数据结构 顺序结构 由一个或多个数据元素组成 每个元素按确定次序出现一次 选择结构 由两个或多个数据元素组成 每次使用这个数据时按一定条件从这些数据元素中选择一个 重复结构 根据使用时的条件由一个数据元素出现零次或多次构成 改进的Jackson图 Jackson结构程序设计方法 分析并确定输入数据和输出数据的逻辑结构 并用Jackson图描绘这些数据结构 找出输入数据结构和输出数据结构中有对应关系的数据单元将数据结构图转换为程序结构图列出所有操作和条件 将它们分配到程序结构图的适当位置用伪码列出程序 举例 一个正文文件由若干个记录组成 每个记录是个字符串 要求 统计每个记录中空格字符的个数文件中空格字符的总个数输出数据格式是 每复制一行输入字符串之后 另起一行印出这个字符串中的空格数 最后印出文件中空格的总个数 输入 输出数据结构对应的Jackson图 数据结构图的转化 输入 输出数据结构图的合并合并图的整理 罗列所有操作和条件 插入 l 停止 2 打开文件 3 关闭文件 4 印出字符串 5 印出空格数目 6 印出空格总数 7 sum sum 1 8 totalsum totalsum十sum 9 读入字符串 10 sum 0 11 totalsum 0 12 pointer 1 13 pointer pointer 1I 1 文件结束I 2 字符串结束S 3 字符是空格 程序结构图的最终形态 程序复杂程度的度量 用途 把程序的复杂程度乘以适当常数可估算出软件中错误的数量 估算软件开发需要用的工作量 比较两个不同的设计或两个不同算法的优劣度量方法 McCabe方法 Halstead方法 McCabe方法 基本步骤 将程序流程图简化为流图 计算环形复杂度方法1 流图中区域数等于环形复杂度方法2 流图环形复杂度V G E N 2 E是流图中边的条数 N是结点数 方法3 流图环形复杂度V G P 1 P是流图中判定结点的数目 Halstead方法 简介 利用程序中的运算符和操作数总数来度量程序的复杂程度 基本公式假设 完成详细设计之后 n1为估计不同运算符个数 n2为不同操作数个数 Halstead给出预测程序长度的公式 N n1log2n1 n2log2n2Halstead给出预测程序包含错误的个数的公式 E Nlog2 n1 n2 3000 内容提纲 面向对象方法 基本任务 方法建模 属性建模 状态建模 关系建模详细设计的评审用户界面的设计 面向对象方法 详细设计 定义 细化分析和体系结构设计所产生的模型 消除问题域与实现域之间的差距 基于类 由单个开发人员实现主要任务 精化类的属性和操作 即明确属性的类型和可见性 操作的参数和基本内部逻辑 明确类之间的关系 整理和优化设计模型 类的设计 边界类 用户界面 考虑界面开发的工具和所创建界面数量 外部系统接口实体类 考虑性能对实体对象的影响控制类 是否需要 是否需要继续细分 考虑复杂性 变化适应性 分布性和性能 事务处理等需求 操作的设计 定义操作的过程 定义满足基本功能要求的操作 补充必要的辅助操作 例如 初始化类的实例 局部变量等 完整地描述操作 即确定操作名称 参数 返回值 可见性等 简要说明操作实现的内部逻辑 举例 BorrowerInfo的类操作 属性的设计 定义属性 具体说明属性名称 类型 缺省值 可见性等基本原则 将所有属性可见性设置为private 仅通过set get方法更新 访问属性 在set方法中引入简单的有效性验证 如果验证逻辑过于复杂 则需建立独立的验证方法 举例 BorrowerInfo的类 状态建模 一般只发生在依赖状态展示不同行为的类上举例 MiniLibrary系统的书籍类 NewBook Available Delete Reserve Borrowed Borrow Return Borrow Reserve TimeOut Cancle 关系建模 针对类 需要进一步确定详细的关联关系 依赖关系和聚合关系等 如果关系具有属性 则需建立关联类 不同对象之间的可能连接 全局 Global 参数 Parameter 局部 Local 域 Field OO模型在RDBMS中的实现 一对一关联 多对多关联 OO模型在RDBMS中的实现 一对多关联 OO模型在RDBMS中的实现 泛化关系 OO模型在RDBMS中的实现 关联类 应用设计模式 定义 解决特定问题的经验 实质就是软件的复用 描述模式名称 描述模式的问题 解决方案和效果 面临问题 模式使用的场合 解决方案 模式中组成成分 职责和协作方式 模式效果 模式使用的效果和应该权衡的问题 应用设计模式 常用设计模式创建型设计模式 描述对象创建的具体细节 结构型设计模式 描述对象之间通过组织形成新结构 实现新的功能 行为型设计模式 描述算法与对象之间任务分配和通讯模式 作用和研究意义优化的设计经验 极高的复用性 丰富的表达能力 极低的耦合度 内容提纲 面向对象方法 基本任务 方法建模 属性建模 状态建模 关系建模详细设计的评审用户界面的设计 详细设计的评审 选择适用于设计阶段的度量指标 例如时间开销 错误类型和严重性等 检查每个系统模块是否被详细设计 检查每个详细设计是否属于系统结构的一部分 检查设计的完整性 检查设计是否可测试 检查详细设计的以下方面 简单性 通用型 有效性 可扩展性 可移植性 内容提纲 面向对象方法 基本任务 方法建模 属性建模 状态建模 关系建模详细设计的评审用户界面的设计 界面设计过程 从用户需求出发 不断迭代的过程 用户界面的设计原则 系统响应时间时间长度时间易变用户帮助设施在用户与系统交互期间 是否能随时获取系统任何功能的帮助信息用户怎么请求帮助 怎么显示帮助信息 用户如何返回正常的交互方式 怎么组织帮助信息 用户界面的设计原则 出错信息处理提示错误的语言简洁易懂 能提供从错误中恢复的建设性意见 指明错误可能导致的负面后果 应伴随听觉 视觉上的提示 不能带有指责色彩 命令交互每个菜单项是否都有对应的命令 命令的形式 命令记忆难度 用户能否定制命令 用户界面的设计原则 审美和可用性 界面色彩搭配 布局合理 可用性指用户在使用过程中的方便性 简单性 有效性 可靠性和快捷性等 用户界面的评价 一般说 针对界面可用性进行评价 可用性属性 作业评讲 Page132 7 判定表 下面哪种写法正确 作业评讲 Page132 7 判定树 下面哪种写法正确 判定树1 判定树2 界面颜色搭配方案 返回 美观与性能 返回 结构程序设计 程序代码仅仅通过顺序 选择和循环三种基本控制结构进行连接代码块单一入口 出口尽可能少用GOTO语句 举例 判断下列是否满足SP 返回 AseqBCDAend 顺序数据结构 选择数据结构 Aselectcond1BAorcond2CAorcond3DAend 循环数据结构 Aiteruntil 或while condBAend 返回 McCabe的流图 定义 仅仅描绘程序的控制流程基本符号 圆 代表一
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 神经科病人的饮食护理
- 公司级安全教育培训心得课件
- 房地产年度汇报
- 《荷叶母亲》说课件课
- 鞋厂跟单工作总结
- 了不起的轮子课件
- 辅导教师学期工作总结
- 乳酸酚棉蓝染色课件
- 《罗斯福集邮》课件
- 服装店设计汇报
- 广告标识牌采购投标方案
- (高清版)DG∕TJ 08-59-2019 钢锭铣削型钢纤维混凝土应用技术标准
- 2025年浦发银行校园招聘笔试参考题库(含答案)
- 部编新人教版三年级上册语文教材培训
- 2024-2025学年浙江省金华市东阳市七年级(上)期末数学试卷(含答案)
- 学校“1530”安全教育记录表(2024年秋季全学期)
- 仪表设备管理实施细则
- 磷化工工艺流程
- 2025云南红河州红投永良矿业限公司招聘2人高频重点模拟试卷提升(共500题附带答案详解)
- 新入职教师法律法规培训
- 数字经济与就业
评论
0/150
提交评论