清华大学课件土木工程cad系统开发ch

上传人:tian****1990 文档编号:71640259 上传时间:2019-01-21 格式:PPT 页数:84 大小:463.50KB
返回 下载 相关 举报
清华大学课件土木工程cad系统开发ch_第1页
第1页 / 共84页
清华大学课件土木工程cad系统开发ch_第2页
第2页 / 共84页
清华大学课件土木工程cad系统开发ch_第3页
第3页 / 共84页
清华大学课件土木工程cad系统开发ch_第4页
第4页 / 共84页
清华大学课件土木工程cad系统开发ch_第5页
第5页 / 共84页
点击查看更多>>
资源描述

《清华大学课件土木工程cad系统开发ch》由会员分享,可在线阅读,更多相关《清华大学课件土木工程cad系统开发ch(84页珍藏版)》请在金锄头文库上搜索。

1、1,本周上机 1. 上机内容 数据库管理系统辅导 2. 上机时间:今天晚上 6:00-8:00 第1组 8:00-10:00 第2组 3. 上机地点:院大机房 要求全体参加,2,1.5.2 本课程的内容,土木工程CAD 技术基础,CAD 基础知识,CAD系统 基本原理,土木工程CAD 相关技术,土木工程CAD 系统设计,第1章 引言 第2章 CAD系统概论 第3章 计算机图形技术 第4章 AutoCAD应用技术 第5章 三维几何造型 第6章 人机交互技术 第7章 工程分析与优化设计 第8章 工程数据处理与交换 第9章 土木工程CAD系统开发 第10章 现代CAD技术,参照 “教学日历”,3,第

2、 9 章 土木工程CAD系统开发,9.1 概述 9.2 需求分析 9.3 系统设计 9.4 程序设计 9.5 系统测试,4,土木工程CAD系统开发 不是一个简单的编程问题 需要进行系统分析、设计、编程、测试等 如何进行? 简单地说,就是要遵循软件工程学的原理,9.1 概述,5,9.1.1 软件工程学产生的背景 上世纪70年代,随着软件的大型化 软件开发普遍出现: 成本超预算 完成时间超计划 被称为“软件危机”,人们关心: 如何开发与维护软件 如何满足对软件日益增长的需求,6,9.1.2 软件工程学(Software Engineering) 研究软件开发与维护过程中所需使用的原则、方法和技术的

3、学科 主要思路 将软件作为一个工程产品来对待 即,需要经过规划、分析、设计、实现等过程 或,需要经过小规模实验、正式投产等过程,7,软件,系统开发者,需求分析,系统设计,功能设计,详细设计,编程,单体测试,组合测试,系统测试,检查,维护,软件一般实现过程,需求分析,系统设计,编程,系统测试,8,9.2 需求分析,9.2.1 目的 明确:系统必须做什么 是系统设计的基础 包含的内容 1. 问题定义 2. 可行性研究 3. 系统分析,9,9.2.2 问题定义 包括3个步骤 步骤1:调查研究 目的是搞清问题背景,包括: 1. 设计规范 2. 设计方法和过程 3. 设计结果及其表达方式 4. 设计原始

4、资料:地形、地貌、气象、地震 5. 设计人员的计算机能力和工作环境 6. 同类软件的市场,10,步骤2:分析问题 目的是了解当前系统的工作过程,并确定拟建系统的主要目标 确定主要目标的注意事项 使拟建系统在以下方面与当前系统基本一致 1. 所完成的功能 2. 工作方式 3. 设计思路 4. 专业习惯,11,步骤3:定义问题 目的是提交问题定义的书面报告 报告内容包括 1. 软件项目的名称 2. 问题的定义 3. 系统的目标 4. 系统的规模,12,9.2.3 可行性研究 目的是确定问题能否解决 主要工作 1. 描述当前系统的主要功能 2. 建立拟建系统的逻辑模型 3. 提出多个可供选择的开发方

5、案并进行比较 4. 制定开发计划 5. 完成并提交可行性研究报告,13,9.2.4 系统分析 包括6个步骤 步骤1:确定系统的综合要求 1. 功能要求 2. 性能要求:存储容量、响应时间、安全性 3. 运行要求:运行环境、系统软件、支撑软件 步骤2:分析系统的数据要求 建立数据模型:用数据结构图表示,14,步骤3:修订系统的逻辑模型 步骤4:修订系统的开发计划 步骤5:建立系统的开发模型 即建立“样机” 步骤6:文档编制,包括 1. 项目开发计划 2. 软件需求说明书 3. 数据要求说明书,15,1. 可行性研究报告 2. 项目开发计划 3. 软件需求说明书 4. 数据要求说明书 5. 概要设

6、计说明书 6. 详细设计说明书 7. 数据库设计说明书,8. 用户手册 9. 操作手册 10. 模块开发卷宗 11. 测试计划 12. 测试分析报告 13. 开发进度月报 14. 项目开发总结报告,根据GB/T 8567-1988和GB/T 9385-1988 计算机软件开发过程中应产生14种文件,16,标准规定:软件需求说明书,1 引言 1.1 编写目的 1.2 背景 1.3 定义 1.4 参考资料 2 任务概述 2.1 目标 2.2 用户的特点 2.3 假定与约束 3 需求规定,3.1 对功能的规定 3.2 对性能的规定 3.3 输入输出要求 3.4 数据管理能力要求 3.5 故障处理要求

7、 3.6 其他专门要求 4 运行环境规定 4.1 设备 4.2 支持软件 4.3 接口 4.4 控制,17,文件编制中的考虑因素 灵活性 1. 应编制的文件种类 2. 文件的详细程度 3. 文件的扩展 4. 节的扩展与缩并 5. 程序设计的表现形式 6. 文件的表现形式 7. 文件的其他种类,18,1. 背景 2. 本需求分析说明书的用途 3. 整体需求 4. 功能需求 5. 其他需求 6. 开发计划,实例:基于因特网的软件使用许可证 管理系统的需求分析说明书,19,1. 背景,1) 现有的许可体系 软件狗 分为单机版和网络版两种 存在的问题 相关成本随销售增加成正比增加 给用户造成不便 2)

8、 可能的新方式 利用日益普及的因特网,可解决既存问题,20,2. 本需求分析说明书的用途,1) 是基于上述背景经双方(开发方和委托方)讨论形成的对需求的表述 2) 将成为开发方进行系统设计和编程的依据 3) 将成为委托方验收的依据,21,3. 整体需求,3.1 与现有许可体系的关系 已购买应用软件的用户:软件狗仍可用 交回软件狗可切换为新体系 新购买应用软件的用户:使用新体系,22,3.2 用户分析 购买应用软件的用户 针对一个软件可购买多个许可 企业的许可证管理员用户,23,3.3 许可证的管理方式 在服务器中设置中央数据库,集中管理全部许可证的相关信息 用户每次上机时,通过该系统访问中央数

9、据库,获得软件使用许可 在网上可以随时查询应用软件的许可证信息及总体用户的状况,24,3.4 许可证管理信息的查询和变更 查询应用软件的使用信息 变更密码 密码失盗时,经过一定程序恢复最初密码,25,4. 功能需求,4.1 概述 许可证管理员用户: 设置和取消许可证 查询许可证信息及应用软件使用信息 购买应用软件的用户: 获得许可证以便使用应用软件 查询应用软件使用信息 核心功能分类:使用、保密、查询、管理,26,4.2 使用功能 1) 用户的识别:用户ID及密码 2) 许可证内容 许可证数、使用期限、绘图数量 3) 许可证的获得和归还 不限定机器、不能超过购买数 4) 许可证的借出和回收 不

10、需要通过许可证管理员用户,27,4.3 保密功能 原则:保密性不能低于软件狗方式 防止信息的篡改、非法获取 1) 许可证信息 2) 用户相关信息 3) 非用户不可获得许可证 4) 用户不可欺骗:构筑虚拟服务器、修改 本地文件,28,4.4 信息查询功能 购买应用软件的用户: 已购软件的版本、许可证数、使用期 限、使用状况、借出状况等 许可证管理员用户: 用户的许可证信息、许可证使用状 况、各版本的销售情况、用户信息统计,29,4.5 管理功能 1) 用户信息的登记、变更 2) 许可证信息的登记、变更,30,9.3 系统设计,9.3.1 目的 明确:如何实现软件 内容 1. 用户界面设计:在第

11、6 章中已讲 2. 程序结构设计 3. 数据结构设计 4. 文档编制,31,9.3.2 程序结构设计 2个重要的方面 1. 程序设计原则 模块化设计 2. 程序设计方法 结构化程序设计方法 面向对象程序设计方法,32,9.3.2.1 模块化设计 模块即命名的程序对象集合, 如过程、函数、子程序、宏等,即 具有特定功能,可单独命名,并可编址的程序段。 把程序划分成若干模块, 每个模块完成一项子功能, 把它们集成起来组成一个整体, 以解决问题。,33,模块化设计的原则 1. 与语言模块单元相对应 设计的模块应与程序设计语言提供的语言模块单元相对应。如,C语言中的子程序、函数、结构体;C+语言中的类

12、、对象等。 2. 信息隐藏 把模块界面与模块实现分离开来。模块界面体现为模块的接口;模块实现体现为模块的数据结构和具体算法。外部利用模块时,只需知道模块的接口。,34,模块化的标准 1. 可分解性:能把一个大的复杂问题分解成一些 小的简单问题,直到可直接解决为止。 2. 可结合性:要求模块能自由地结合在一起构成 新的系统。使模块具有好的复用性。 3. 可理解性:设计出的模块不用参考相邻的模 块,就能看懂。使软件具有好的可维护性。 4. 连续性:模块变化不影响系统的结构。使软件 具有好的可扩充性。 5. 模块保护:系统运行发生的错误被限制在该模 块内或仅波及到少数模块。软件具有健壮性。,35,9

13、.3.2.2 结构化设计方法(Structured Design Method) 基本思想 1. 将功能逐步分解划分为模块 2. 让模块间形成层次 3. 将程序结构限制为顺序、选择和循环,36,e.g. 报表制作:用结构化设计方法来实现,报表制作,输入数据,计算,打印报表,读入,编辑,检查,印表头,印表体,打印,37,9.3.2.3 面向对象设计方法(Object-Oriented Method) 基本思想 1. 分解问题领域:识别对象和类,尽量让对象和 类对应于现实中的事物; 2. 建立类之间的相互关系:e.g.层次关系; 3. 以类为模板生成对象,让对象协同工作去实现 系统的具体功能。,3

14、8,控制台,报表,表头,表体,印刷器,1. 打印报表,2. 印刷,3. 生成,4. 生成,5. 打印,6. 打印,e.g. 报表制作:用面向对象设计方法来实现,39,9.3.3 数据结构设计 有效地组织相关数据, 并以一种可行的方式存储数据, 以便于按照用户的意图存取和处理数据 设计内容 1. 数据的逻辑结构,即面向使用者的结构 2. 数据的物理结构,即逻辑结构在计算机内的实 现,或称存储结构 3. 两种结构之间的相互关系以及相应的算法,40,常用数据结构 1. 静态线性表 2. 特殊线性表:栈,队列 3. 最基本的动态数据结构:单向链表 4. 链表的扩充:双向链表,循环链表 5. 树:二叉树

15、 6. 图,41,9.3.3.1 静态线性表(Static Linear List) 线性表是 n(n0)个元素的有限序列 除了第一个和最后一个,每个元素都有一个并且只有一个直接前趋,也只有一个直接后继 静态线性表是全部存储空间事先确定的线性表 逻辑结构 1. T ( t1, t2, t3, , tn) 2. 每个元素在表中的位置取决于元素的下标 典型形式:数组,t1,t2,t3,t4,t5,tn,t6,t7,42,物理结构 在存储器中的存储形式为顺序存储 存放地址与下标之间存在着一一对应的关系 Loc ( ti ) = Loc ( t1 ) + ( i-1) * L L:单个元素的存储长度

16、特点 1. 有序性:各数据元素的存储顺序与逻辑顺序一致 2. 均匀性:各数据元素的数据类型一致 3. 元素的插入或删除, 需要移动元素,很不方便,43,运算 1. 建表 static char Ltm= A,B,C,D,E; 2. 访问 char c1; c1 = Lt i-1; 3. 删除 Lt j1 = Lt j ( j = i +1, i +2, n2);,44,4. 插入 将第 i个元素之后 的所有元素, 向后 移动一个元素所 占有的长度,len = sizeof (Lt) /sizeof (Lt 0); printf (“n输入一个新元素: ”); c = getch( ); printf (“n输入新元素的插入位 置: ”); scanf(“%d”, ,45,可考虑的使用情形 存储相互关联的图元数据 e.g. 存储一个多边形的所有角点(有序的) 以便进行操作,46,9.3.3.2

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号