清华大学课件土木工程CAD系统开发chp9
合集下载
土木工程CAD第九讲

切换到图纸空间
第一次从模型空间切换到图纸空间时,会弹出“页面设置”对话 框,如下图所示:
确定切换的图纸空间
切换到模型空间
在状态栏上,双击“图纸”标签,切换为“模型”标签。 也可以双击浮动视口,在状态栏上,“图纸”标签就变为 “模型”标签。
9.2 图形布局
在图纸中的图形排列是绘图过程中的重 要部分,初始图形可能是由单一模型组成, 但可用各种方法显示该模型。可以在边框 内以不同方式摆放,或以不同的透视显示, 或放大要强调的细节,或消隐无关紧要的 细节等,这就是所谓的图形布局。
9.3 打印图形
1)单击“标准”工具栏的按钮打印图 形,弹出“打印”对话框。 2)在“打印”对话框中,包含了“打 印设置”和“打印设备”两个选项卡,分 别用于设置打印参数和打印设备。 3)单击“打印设置”选项卡,弹出打 印设置对话框。
4)如图9-14所示,选择“窗口”可以在图形中用窗 口设定要打印的区域,选择“范围”可以打印绘图范围中 的图形,选择“显示”只打印屏幕中显示部分的内容。还 可以设置打印缩放比例、打印份数、偏移打印原点(可以 调整图形在图纸上的位置)、选择打印方向等。 5)单击“完全预览”或“部分预览”,可以预览输 出效果。其中“完全预览”可以预览打印细节,见到的结 果和打印效果一样,但这种预览比较费时。 6)当设置好打印时,单击“确定”,开始打印 命令行:PLOT(打印)。 菜单命令:“文件”→“打印”
图9-5
图9-6
(4)接着依次单击“下一步”按钮,出现标题栏、 定义视口定义框,在标题栏设置中用户可从列表 中选择一个合适的标题栏加载,如图9-7所示。
5)单击“下一步”按钮,弹出拾取位置框,单击“拾取” 按钮,系统弹出布局,用户在适当位置用鼠标拉开适当大 小窗口,作为当前模型的显示区。 6)单击“完成”按钮,结束向导,同时生成一新布局,如 图9-7所示
土木工程CAD技术基础AutoCAD应用技术PPT课件

36
第36页/共73页
4.4.4.1 ObjectARX AppWizard的安装
分为3步 1. 关闭VC++; 2. 运行ObjectARX安装目录下
utils\ObjARXWiz\子目录中的 ArxWizards.msi文件 3. 根据提示一步一步地完成安装
37
第37页/共73页
AddIn
38
第38页/共73页
4.4.4.2 ObjectARX AppWizard的使用
演示3:使用ObjectARX AppWizard建立 应用程序
分为以下5步
1. 在VC++中新建ObjectARX项目,名称为 test
选项全部采用缺省
2. 查看自动生成的源程序
39
第39页/共73页
3. 利用AddIn中的ObjectARX Command添 加1条命
前缀
所需的程序库
AcRx acad.lib, rxapi.lib, acrx17.lib
AcEd acad.lib, rxapi.lib, acedapi.lib, acrx17.lib
AcDb acad.lib, rxapi.lib, acdb17.lib, acrx17.lib
AcGi acad.lib, rxapi.lib, acdb17.lib, acrx17.lib
void initApp(); void unloadApp(); void firstARX();
void initApp(){
acedRegCmds->addCommand(
L"firstARX_Commands",
//命令组名
L"firstARX",
第36页/共73页
4.4.4.1 ObjectARX AppWizard的安装
分为3步 1. 关闭VC++; 2. 运行ObjectARX安装目录下
utils\ObjARXWiz\子目录中的 ArxWizards.msi文件 3. 根据提示一步一步地完成安装
37
第37页/共73页
AddIn
38
第38页/共73页
4.4.4.2 ObjectARX AppWizard的使用
演示3:使用ObjectARX AppWizard建立 应用程序
分为以下5步
1. 在VC++中新建ObjectARX项目,名称为 test
选项全部采用缺省
2. 查看自动生成的源程序
39
第39页/共73页
3. 利用AddIn中的ObjectARX Command添 加1条命
前缀
所需的程序库
AcRx acad.lib, rxapi.lib, acrx17.lib
AcEd acad.lib, rxapi.lib, acedapi.lib, acrx17.lib
AcDb acad.lib, rxapi.lib, acdb17.lib, acrx17.lib
AcGi acad.lib, rxapi.lib, acdb17.lib, acrx17.lib
void initApp(); void unloadApp(); void firstARX();
void initApp(){
acedRegCmds->addCommand(
L"firstARX_Commands",
//命令组名
L"firstARX",
《清华土木工程制》课件

持续改进与创新
在实施过程中不断总结经验,持 续改进方法和流程,鼓励创新思 维和技术应用。
清华土木工程制的实施案例
案例一
某大型桥梁建设项目:介绍该项目的基本情况、实施过程、遇到 的问题及解决方案,以及最终的成果和效益。
案例二
某高层建筑项目:重点介绍该项目在结构设计、施工技术和质量安 全管理等方面的特点和经验。
结构清晰
02
课件的结构设计合理,各章节之间逻辑清晰,有助于学生系统
地学习和掌握知识。
案例丰富
03
课件中包含大量实际案例,有助于学生更好地理解理论知识,
提高实际应用能力。
对未来研究的建议和展望
持续更新
随着土木工程领域的发展 ,建议定期对课件进行更 新,以反映最新的理论和 实践成果。
增加互动性
可以考虑增加更多的互动 环节,如在线测试、讨论 区等,以提高学生的学习 兴趣和参与度。
发展理念。
国际化
随着全球化的加速,未 来的土木工程制将更加 注重国际交流与合作。
人才培养
未来的土木工程制将更 加注重创新型、实践型
人才的培养。
清华土木工程制的未来发展方向
研究方向多元化
未来的土木工程制将更加注重 跨学科、交叉领域的研究,以
解决复杂工程问题。
智能化与信息化
未来的土木工程制将更加注重 智能化、信息化技术的应用, 以提高工程效率和质量。
组织资源
整合所需的人力、物力和财力等 资源,确保实施过程中的供给和 支持。
清华土木工程制的实施方法
理论与实践相结合
将土木工程的理论知识与实际工 程项目相结合,提高实践能力和 理论应用水平。
质量与安全控制
强化质量与安全管理,确保工程 质量和施工安全,降低风险和事 故发生率。
在实施过程中不断总结经验,持 续改进方法和流程,鼓励创新思 维和技术应用。
清华土木工程制的实施案例
案例一
某大型桥梁建设项目:介绍该项目的基本情况、实施过程、遇到 的问题及解决方案,以及最终的成果和效益。
案例二
某高层建筑项目:重点介绍该项目在结构设计、施工技术和质量安 全管理等方面的特点和经验。
结构清晰
02
课件的结构设计合理,各章节之间逻辑清晰,有助于学生系统
地学习和掌握知识。
案例丰富
03
课件中包含大量实际案例,有助于学生更好地理解理论知识,
提高实际应用能力。
对未来研究的建议和展望
持续更新
随着土木工程领域的发展 ,建议定期对课件进行更 新,以反映最新的理论和 实践成果。
增加互动性
可以考虑增加更多的互动 环节,如在线测试、讨论 区等,以提高学生的学习 兴趣和参与度。
发展理念。
国际化
随着全球化的加速,未 来的土木工程制将更加 注重国际交流与合作。
人才培养
未来的土木工程制将更 加注重创新型、实践型
人才的培养。
清华土木工程制的未来发展方向
研究方向多元化
未来的土木工程制将更加注重 跨学科、交叉领域的研究,以
解决复杂工程问题。
智能化与信息化
未来的土木工程制将更加注重 智能化、信息化技术的应用, 以提高工程效率和质量。
组织资源
整合所需的人力、物力和财力等 资源,确保实施过程中的供给和 支持。
清华土木工程制的实施方法
理论与实践相结合
将土木工程的理论知识与实际工 程项目相结合,提高实践能力和 理论应用水平。
质量与安全控制
强化质量与安全管理,确保工程 质量和施工安全,降低风险和事 故发生率。
土木工程CAD课件第九章

11
2.设置直线格式
在“新建标注样式”对话框中,使用“直线”选项卡可以设置尺 寸线、尺寸界线的格式和位置。
3.设置符号和箭头格式
在“新建标注样式”对话框中,使用“符号和箭头”选项卡可以 设置箭头、圆心标记、弧长符号和半径标注折弯的格式与位置 。
4.设置文字格式
在“新建标注样式”对话框中,可以使用“文字”选项卡设置标 注文字的外观、位置和对齐方式 。
4. 连续标注
择“标注”|“连续”命令(DIMCONTINUE),或在“标注”工具栏 中单击“连续”按钮,可以创建一系列端对端放置的标注,每个连续标注 都从前一个标注的第二个尺寸界线处开始。
A F G H B I
C
E
D
15
四、半径、直径和圆心标注
1.半径标注
选择“标注”|“半径”命令(DIMRADIUS),或在“标注”工具 栏中单击“半径”按钮,可以标注圆和圆弧的半径。
五、形位公差标注
形位公差在机械图形中极为重要。一方面,如果形位公差不能 完全控制,装配件就不能正确装配;另一方面,过度吻合的形位公 差又会由于额外的制造费用而造成浪费。但在由于在大多数的建筑 图形中,形位公差几乎不存在 ,所以此部分内容略取。
18
19
六、编辑标注对象
在AutoCAD 中,可以对已标注对象的文字、位置及样式等内 容进行修改,而不必删除所标注的尺寸对象再重新进行标注 。
16
四、角度标注与其他类型的标注
1.角度标注
选择“标注”|“角度”命令(DIMANGULAR),或在“标注”工 具栏中单击“角度”按钮,都可以测量圆和圆弧的角度、两条直线 间的角度,或者三点间的角度 。
2.引线标注
选择“标注”|“引线”命令(QLEADER),或在“标注”工具栏 中单击“快速引线”按钮,都可以创建引线和注释,而且引线和注 释可以有多种格式 。
1第一章 CAD技术概论 第二章 CAD系统PPT课件

括二维、三维CAD与CAM,CAE,CAPP,
PDM等。国产CAD软件拥有了30%的市场
CAM系统。
工业设计系
现 代 CA D 技 术
工业设计系
现 代 C A D 技 术
1.3 CAD 技术在我国制造业中的应用
工业设计系
现
代
CA D
1、CAD技术在我国制造业中的应用情况
技
术
在我国20世纪90年代的“八五”和“九五”计
划期间,国家大力进行CAD技术的推广应用,
启动了CAD应用工程。1992年,CAD应用工
(3)数据管理与数据交换技术。如产品数据管理 (PDM)、数据库、异构系统间的数据交换和接 口等。
工业设计系
现
代
CA D
CAD涉及的基础技术
技
术
(4)文档处理技术。如文档制作、编辑及文字处理
等。
(5)界面开发技术。如图形用户界面、网络用户界 面、多通道多媒体智能用户界面等。
(6)基于Web的网络应用和开发技术。
现 代 C A D 技 术
现代CAD技术
池建斌
工业设计系
PART ONE
前言
请在此处添加具体内容,文字尽量言简意赅,见到 那描述即可,不必过于繁琐,注意版面美观度。
工业设计系
现
代
CA D
教材
技
术
机械CAD技术基础(第二版)
– 童秉枢 李学志 吴志军 冯娟 编著
– 清华大学出版社出版
现代CAD技术
工业设计系
现 代 CA D 技 术
计算机绘图 – 使用图形软件和硬件进行绘图及有关标注的 一种方法和技术,以摆脱繁重的手工绘图为 其主要目标。
清华土木工程制图课件

绘制草图
根据初步设计,绘制出工程的草图, 包括平面图、立面图、剖面图等,以 便进行进一步的细化和完善。
06
完成正式图纸
根据审核和修改后的草图,完成正式的工程图 纸,包括标题栏、图签、比例尺等,确保图纸 完整、规范、准确。
制图实践案例分析
案例一
某住宅楼施工图绘制
案例二
某桥梁结构详图绘制
案例三
某工业厂房平面图绘制
作提供指导。
01
初步设计
根据收集的资料和工程需求,进行初 步的方案设计和构思,确定制图的内
容、标准和要求。
03
审核与修改
对绘制的草图进行审核和修改,确保图纸的 准确性和规范性,满足工程需求和设计标准。
05
02
收集资料
根据工程需求,收集相关的设计规范、标准 图集、技术资料等,为制图提供依据和参考。
04
检查和修正错误
在绘制过程中及时检查和修正错误, 确保图纸的准确性和完整性。
平面图案例分析
住宅建筑平面图
商业建筑平面图
分析住宅建筑平面图的布局、功能分区、 房间配置等要素,理解设计师的意图和设 计思路。
研究商业建筑平面图的流线组织、空间划 分、设施配置等,了解商业建筑的运营需 求和特点。
工业建筑平面图
审核与修改
强调制图完成后进行审核和修 改的重要性,以确保图纸的准 确性和完整性。
03
平面图绘制
平面图基本要素
坐标系
确定平面图上的点、线、面的位置,通常采 用直角坐标系或极坐标系。
图例
用于解释图纸上符号、标记或特定表示法的 含义。
比例尺
表示实际长度与图纸长度之间的比例关系, 有助于理解图纸上的尺寸。
土木工程CAD课件第十一章

编辑直线和多段线
CAD提供了丰富的编辑工具,如修剪、延伸、偏移等,用于修改直线和多段线的形状和属性。
圆与圆弧
圆的绘制
用户可以通过指定圆心和半径来绘制圆,也可以使用三点定位或两点 加半径的方式来创建。CAD还提供了多种圆的修饰和编辑工具。
圆弧的绘制
圆弧是圆的一部分,可以通过指定起点、终点和圆心或半 径来绘制。用户还可以创建具有特定角度或长度的圆弧。
打印设置及
打印设备选择
根据实际需要,选择合适的打印机或绘图仪,并设置相应的打印参数。
打印样式设置
针对不同的图层和对象,设置相应的打印样式,包括颜色、线型、线宽等。
打印区域选择
根据实际需要,选择打印整个图形或指定区域。
打印输出
预览打印效果,确认无误后进行打印输出。
图纸集管理器使用
创建图纸集
根据需要创建新的图纸集,并设置相应的属 性和参数。
土木工程施工图设计
建筑施工图设计
利用CAD软件绘制建筑施工图,详细表达建筑物的构 造和细部做法,为施工提供准确的图纸依据。
结构施工图设计
通过CAD软件绘制结构施工图,明确表达结构构件的 布置、连接和构造要求。
设备施工图设计
运用CAD软件绘制设备施工图,包括给排水、电气、 暖通等专业的设计和布置。
03
图块属性
CAD允许为图块添加属性,如文 本、数值等,以便在插入图块时 自动填写相关信息。属性可以通 过属性定义对话框进行设置。
外部参照的引入和管理
外部参照的概念
外部参照是指将其他CAD文 件作为参照引入到当前文件 中,实现不同文件之间的协
同设计和数据共享。
引入外部参照
在CAD中,可以通过“插入 ”菜单中的“外部参照”命 令引入外部参照。引入时需 要指定参照文件的路径、名
CAD提供了丰富的编辑工具,如修剪、延伸、偏移等,用于修改直线和多段线的形状和属性。
圆与圆弧
圆的绘制
用户可以通过指定圆心和半径来绘制圆,也可以使用三点定位或两点 加半径的方式来创建。CAD还提供了多种圆的修饰和编辑工具。
圆弧的绘制
圆弧是圆的一部分,可以通过指定起点、终点和圆心或半 径来绘制。用户还可以创建具有特定角度或长度的圆弧。
打印设置及
打印设备选择
根据实际需要,选择合适的打印机或绘图仪,并设置相应的打印参数。
打印样式设置
针对不同的图层和对象,设置相应的打印样式,包括颜色、线型、线宽等。
打印区域选择
根据实际需要,选择打印整个图形或指定区域。
打印输出
预览打印效果,确认无误后进行打印输出。
图纸集管理器使用
创建图纸集
根据需要创建新的图纸集,并设置相应的属 性和参数。
土木工程施工图设计
建筑施工图设计
利用CAD软件绘制建筑施工图,详细表达建筑物的构 造和细部做法,为施工提供准确的图纸依据。
结构施工图设计
通过CAD软件绘制结构施工图,明确表达结构构件的 布置、连接和构造要求。
设备施工图设计
运用CAD软件绘制设备施工图,包括给排水、电气、 暖通等专业的设计和布置。
03
图块属性
CAD允许为图块添加属性,如文 本、数值等,以便在插入图块时 自动填写相关信息。属性可以通 过属性定义对话框进行设置。
外部参照的引入和管理
外部参照的概念
外部参照是指将其他CAD文 件作为参照引入到当前文件 中,实现不同文件之间的协
同设计和数据共享。
引入外部参照
在CAD中,可以通过“插入 ”菜单中的“外部参照”命 令引入外部参照。引入时需 要指定参照文件的路径、名
土木工程CAD技术基础第6章人机交互技术ppt课件

24
2.4 结束处理 若x , y超出菜单区,即:
x 超出Xmin,Xmax;或 y 超出Ymin,Ymax
则提示,并令Num = -1
3. 执行功能处理
根据代码Num 进行逻辑判断 转到相应的功能子程序处理
思考:你能写出这个程序的框架吗?
完整版ppt课件
25
6.2.3.2 屏幕菜单
在图形屏幕上显示菜 单项,用指示器和键 盘来选择 特点 菜单项体现为图形屏 幕的图形和字符
Nx
(Xmin, Ymin)
完整版ppt课件
Ny
·P(x, y)
(Xmin, Ymin)
Nx
完整版ppt课件
void grid(int Px, int Py){ 1/2
36
int Ax[100][100];
int Ay[100][100];
int Nx, Ny, Xmin, Ymin;
(Xmax, Ymax) int Xmax, Ymax, X1, Y1; … for ( i = 0; i<=Ny; i++ ){
完整版ppt课件
6.3 交互控制技术
28
6.3.1 主要交互控制方法 包括如下7种方法 1. 定位法 (Positioning Method) 2. 强制法(Enforcing Method) 3. 网格法(Grid Method) 4. 引力场法(Gravity Field Method) 5. 橡皮带法(Rubber Band Method) 6. 拖拉法(Draging Method) 7. 草图法(Schetch Method)
a, b);
case 2:
…
}
}
6.3.3 强制法 使用部分预先规定的 坐标值来替换所输入 的坐标,使图形满足 某种精度要求的方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
42
运算 1. 建表 static char Lt[m]= {‘A’,’B’,’C’,’D’,’E’…}; 2. 访问 char c1; c1 = Lt [i-1]; 3. 删除 Lt [ j–1] = Lt [ j ] ( j = i +1, i +2,…, n–2);
43
4. 插入 将第 i个元素之后 的所有元素, 向后 移动一个元素所 占有的长度
14
根据GB/T 8567-1988和GB/T 9385-1988 计算机软件开发过程中应产生14种文件 1. 可行性研究报告 8. 用户手册 2. 项目开发计划 9. 操作手册 3. 软件需求说明书 10. 模块开发卷宗 4. 数据要求说明书 11. 测试计划 5. 概要设计说明书 12. 测试分析报告 6. 详细设计说明书 13. 开发进度月报 7. 数据库设计说明书 14. 项目开发总结报告
44
可考虑的使用情形 存储相互关联的图元数据 e.g. 存储一个多边形的所有角点(有序的) 以便进行操作
45
9.3.3.2 栈(Stack)
是一种特殊的线性表 只允许在表的末端进行元 素的插入和删除 逻辑结构 S=(a0, a1, ……, an-1) 是“先进后出”的线性表
18
1. 背景
1) 现有的许可体系 软件狗 分为单机版和网络版两种 存在的问题 相关成本随销售增加成正比增加 给用户造成不便 2) 可能的新方式 利用日益普及的因特网,可解决既存问题
19
2. 本需求分析说明书的用途
1) 是基于上述背景经双方(开发方和委托方)讨论 形成的对需求的表述
2) 将成为开发方进行系统设计和编程的依据
包括3个步骤 步骤1:调查研究 目的是搞清问题背景,包括: 1. 设计规范 2. 设计方法和过程 3. 设计结果及其表达方式 4. 设计原始资料:地形、地貌、气象、地震…… 5. 设计人员的计算机能力和工作环境 6. 同类软件的市场
9
步骤2:分析问题
目的是了解当前系统的工作过程,并确定拟建系 统的主要目标 确定主要目标的注意事项 使拟建系统在以下方面与当前系统基本一致 1. 所完成的功能 2. 工作方式 3. 设计思路 4. 专业习惯
上世纪70年代,随着软件的大型化 软件开发普遍出现: 成本超预算 完成时间超计划 被称为“软件危机”,人们关心: 如何开发与维护软件 如何满足对软件日益增长的需求
5
9.1.2 软件工程学(Software Engineering)
研究软件开发与维护过程中所需使用的原则、方 法和技术的学科 主要思路 将软件作为一个工程产品来对待 即,需要经过规划、分析、设计、实现等过程 或,需要经过小规模实验、正式投产等过程
2
参照 “教学日历”
第 9 章 土木工程CAD系统开发
9.1 9.2 9.3 9.4 9.5 概述 需求分析 系统设计 程序设计 系统测试
3
9.1 概述
土木工程CAD系统开发 不是一个简单的编程问题 需要进行系统分析、设计、编程、测试等 如何进行? 简单地说,就是要遵循软件工程学的原理
4
9.1.1 软件工程学产生的背景
3) 将成为委托方验收的依据
20
3. 整体需求
3.1 与现有许可体系的关系 已购买应用软件的用户:软件狗仍可用 交回软件狗可切换为新体系 新购买应用软件的用户:使用新体系
21
3.2 用户分析 购买应用软件的用户 针对一个软件可购买多个许可 企业的许可证管理员用户
22
3.3 许可证的管理方式 在服务器中设置中央数据库,集中管理全部许可 证的相关信息 用户每次上机时,通过该系统访问中央数据库, 获得软件使用许可 在网上可以随时查询应用软件的许可证信息及总 体用户的状况
33
模块化的标准 1. 可分解性:能把一个大的复杂问题分解成一些 小的简单问题,直到可直接解决为止。 2. 可结合性:要求模块能自由地结合在一起构成 新的系统。使模块具有好的复用性。 3. 可理解性:设计出的模块不用参考相邻的模 块,就能看懂。使软件具有好的可维护性。 4. 连续性:模块变化不影响系统的结构。使软件 具有好的可扩充性。 5. 模块保护:系统运行发生的错误被限制在该模 块内或仅波及到少数模块。软件具有健壮性。
12
9.2.4 系统分析
包括6个步骤 步骤1:确定系统的综合要求 1. 功能要求 2. 性能要求:存储容量、响应时间、安全性 3. 运行要求:运行环境、系统软件、支撑软件 步骤2:分析系统的数据要求 建立数据模型:用数据结构图表示
13
步骤3:修订系统的逻辑模型 步骤4:修订系统的开发计划 步骤5:建立系统的开发模型 即建立“样机” 步骤6:文档编制,包括 1. 项目开发计划 2. 软件需求说明书 3. 数据要求说明书
明确:如何实现软件 内容 1. 用户界面设计:在第 6 章中已讲 2. 程序结构设计 3. 数据结构设计 4. 文档编制
30
9.3.2 程序结构设计
2个重要的方面 1. 程序设计原则 模块化设计 2. 程序设计方法 结构化程序设计方法 面向对象程序设计方法
31
9.3.2.1 模块化设计
模块即命名的程序对象集合, 如过程、函数、子程序、宏等,即 具有特定功能,可单独命名,并可编址的程序段。 把程序划分成若干模块, 每个模块完成一项子功能, 把它们集成起来组成一个整体, 以解决问题。
10
步骤3:定义问题
目的是提交问题定义的书面报告 报告内容包括 1. 软件项目的名称 2. 问题的定义 3. 系统的目标 4. 系统的规模
11
9.2.3 可行性研究
目的是确定问题能否解决 主要工作 1. 描述当前系统的主要功能 2. 建立拟建系统的逻辑模型 3. 提出多个可供选择的开发方案并进行比较 4. 制定开发计划 5. 完成并提交可行性研究报告
34
9.3.2.2 结构化设计方法(Structured Design Method)
基本思想 1. 将功能逐步分解划分为模块 2. 让模块间形成层次 3. 将程序结构限制为顺序、选择和循环
35
e.g. 报表制作:用结构化设计方法来实现
报表制作 输入数据 读入 编辑 检查 计算 打印报表
印表头 印表体 打印
6
系统开发者
需求分析 系统设计 功能设计 系统测试 详细设计 需求分析 系统设计 编程
软件
维护 检查 系统测试 组合测试
编程
单体测试
软件一般实现过程
7
需求分析
9.2.1 目的
明确:系统必须做什么 是系统设计的基础 包含的内容 1. 问题定义 2. 可行性研究 3. 系统分析
8
9.2.2 问题定义
16
文件编制中的考虑因素 灵活性 1. 应编制的文件种类 2. 文件的详细程度 3. 文件的扩展 4. 节的扩展与缩并 5. 程序设计的表现形式 6. 文件的表现形式 7. 文件的其他种类
17
实例:基于因特网的软件使用许可证 管理系统的需求分析说明书
1. 2. 3. 4. 5. 6. 背景 本需求分析说明书的用途 整体需求 功能需求 其他需求 开发计划
25
4.2 使用功能 1) 用户的识别:用户ID及密码 2) 许可证内容 许可证数、使用期限、绘图数量 3) 许可证的获得和归还 不限定机器、不能超过购买数 4) 许可证的借出和回收 不需要通过许可证管理员用户
26
4.3 保密功能 原则:保密性不能低于软件狗方式 防止信息的篡改、非法获取 1) 许可证信息 2) 用户相关信息 3) 非用户不可获得许可证 4) 用户不可欺骗:构筑虚拟服务器、修改 本地文件
23
3.4 许可证管理信息的查询和变更 查询应用软件的使用信息 变更密码 密码失盗时,经过一定程序恢复最初密码
24
4. 功能需求
4.1 概述 许可证管理员用户: 设置和取消许可证 查询许可证信息及应用软件使用信息 购买应用软件的用户: 获得许可证以便使用应用软件 查询应用软件使用信息 核心功能分类:使用、保密、查询、管理
36
9.3.2.3 面向对象设计方法(Object-Oriented Method)
基本思想 1. 分解问题领域:识别对象和类,尽量让对象和 类对应于现实中的事物; 2. 建立类之间的相互关系:e.g.层次关系; 3. 以类为模板生成对象,让对象协同工作去实现 系统的具体功能。
37
e.g. 报表制作:用面向对象设计方法来实现
32
模块化设计的原则 1. 与语言模块单元相对应 设计的模块应与程序设计语言提供的语言模块 单元相对应。如,C语言中的子程序、函数、 结构体;C++语言中的类、对象等。 2. 信息隐藏 把模块界面与模块实现分离开来。模块界面体 现为模块的接口;模块实现体现为模块的数据 结构和具体算法。外部利用模块时,只需知道 模块的接口。
1
2
3
4
5
6
7
n
41
物理结构 在存储器中的存储形式为顺序存储 存放地址与下标之间存在着一一对应的关系 Loc ( ti ) = Loc ( t1 ) + ( i-1) * L L:单个元素的存储长度
特点
1. 有序性:各数据元素的存储顺序与逻辑顺序一致 2. 均匀性:各数据元素的数据类型一致 3. 元素的插入或删除, 需要移动元素,很不方便
39
常用数据结构
1. 静态线性表 2. 特殊线性表:栈,队列
3. 最基本的动态数据结构:单向链表
4. 链表的扩充:双向链表,循环链表 5. 树:二叉树 6. 图
40
9.3.3.1 静态线性表(Static Linear List)
线性表是 n(n≥0)个元素的有限序列 除了第一个和最后一个,每个元素都有一个并且 只有一个直接前趋,也只有一个直接后继 静态线性表是全部存储空间事先确定的线性表 逻辑结构 1. T ( t1, t2, t3, …, tn) 2. 每个元素在表中的位置取决于元素的下标 典型形式:数组 t t t t t t t … t
运算 1. 建表 static char Lt[m]= {‘A’,’B’,’C’,’D’,’E’…}; 2. 访问 char c1; c1 = Lt [i-1]; 3. 删除 Lt [ j–1] = Lt [ j ] ( j = i +1, i +2,…, n–2);
43
4. 插入 将第 i个元素之后 的所有元素, 向后 移动一个元素所 占有的长度
14
根据GB/T 8567-1988和GB/T 9385-1988 计算机软件开发过程中应产生14种文件 1. 可行性研究报告 8. 用户手册 2. 项目开发计划 9. 操作手册 3. 软件需求说明书 10. 模块开发卷宗 4. 数据要求说明书 11. 测试计划 5. 概要设计说明书 12. 测试分析报告 6. 详细设计说明书 13. 开发进度月报 7. 数据库设计说明书 14. 项目开发总结报告
44
可考虑的使用情形 存储相互关联的图元数据 e.g. 存储一个多边形的所有角点(有序的) 以便进行操作
45
9.3.3.2 栈(Stack)
是一种特殊的线性表 只允许在表的末端进行元 素的插入和删除 逻辑结构 S=(a0, a1, ……, an-1) 是“先进后出”的线性表
18
1. 背景
1) 现有的许可体系 软件狗 分为单机版和网络版两种 存在的问题 相关成本随销售增加成正比增加 给用户造成不便 2) 可能的新方式 利用日益普及的因特网,可解决既存问题
19
2. 本需求分析说明书的用途
1) 是基于上述背景经双方(开发方和委托方)讨论 形成的对需求的表述
2) 将成为开发方进行系统设计和编程的依据
包括3个步骤 步骤1:调查研究 目的是搞清问题背景,包括: 1. 设计规范 2. 设计方法和过程 3. 设计结果及其表达方式 4. 设计原始资料:地形、地貌、气象、地震…… 5. 设计人员的计算机能力和工作环境 6. 同类软件的市场
9
步骤2:分析问题
目的是了解当前系统的工作过程,并确定拟建系 统的主要目标 确定主要目标的注意事项 使拟建系统在以下方面与当前系统基本一致 1. 所完成的功能 2. 工作方式 3. 设计思路 4. 专业习惯
上世纪70年代,随着软件的大型化 软件开发普遍出现: 成本超预算 完成时间超计划 被称为“软件危机”,人们关心: 如何开发与维护软件 如何满足对软件日益增长的需求
5
9.1.2 软件工程学(Software Engineering)
研究软件开发与维护过程中所需使用的原则、方 法和技术的学科 主要思路 将软件作为一个工程产品来对待 即,需要经过规划、分析、设计、实现等过程 或,需要经过小规模实验、正式投产等过程
2
参照 “教学日历”
第 9 章 土木工程CAD系统开发
9.1 9.2 9.3 9.4 9.5 概述 需求分析 系统设计 程序设计 系统测试
3
9.1 概述
土木工程CAD系统开发 不是一个简单的编程问题 需要进行系统分析、设计、编程、测试等 如何进行? 简单地说,就是要遵循软件工程学的原理
4
9.1.1 软件工程学产生的背景
3) 将成为委托方验收的依据
20
3. 整体需求
3.1 与现有许可体系的关系 已购买应用软件的用户:软件狗仍可用 交回软件狗可切换为新体系 新购买应用软件的用户:使用新体系
21
3.2 用户分析 购买应用软件的用户 针对一个软件可购买多个许可 企业的许可证管理员用户
22
3.3 许可证的管理方式 在服务器中设置中央数据库,集中管理全部许可 证的相关信息 用户每次上机时,通过该系统访问中央数据库, 获得软件使用许可 在网上可以随时查询应用软件的许可证信息及总 体用户的状况
33
模块化的标准 1. 可分解性:能把一个大的复杂问题分解成一些 小的简单问题,直到可直接解决为止。 2. 可结合性:要求模块能自由地结合在一起构成 新的系统。使模块具有好的复用性。 3. 可理解性:设计出的模块不用参考相邻的模 块,就能看懂。使软件具有好的可维护性。 4. 连续性:模块变化不影响系统的结构。使软件 具有好的可扩充性。 5. 模块保护:系统运行发生的错误被限制在该模 块内或仅波及到少数模块。软件具有健壮性。
12
9.2.4 系统分析
包括6个步骤 步骤1:确定系统的综合要求 1. 功能要求 2. 性能要求:存储容量、响应时间、安全性 3. 运行要求:运行环境、系统软件、支撑软件 步骤2:分析系统的数据要求 建立数据模型:用数据结构图表示
13
步骤3:修订系统的逻辑模型 步骤4:修订系统的开发计划 步骤5:建立系统的开发模型 即建立“样机” 步骤6:文档编制,包括 1. 项目开发计划 2. 软件需求说明书 3. 数据要求说明书
明确:如何实现软件 内容 1. 用户界面设计:在第 6 章中已讲 2. 程序结构设计 3. 数据结构设计 4. 文档编制
30
9.3.2 程序结构设计
2个重要的方面 1. 程序设计原则 模块化设计 2. 程序设计方法 结构化程序设计方法 面向对象程序设计方法
31
9.3.2.1 模块化设计
模块即命名的程序对象集合, 如过程、函数、子程序、宏等,即 具有特定功能,可单独命名,并可编址的程序段。 把程序划分成若干模块, 每个模块完成一项子功能, 把它们集成起来组成一个整体, 以解决问题。
10
步骤3:定义问题
目的是提交问题定义的书面报告 报告内容包括 1. 软件项目的名称 2. 问题的定义 3. 系统的目标 4. 系统的规模
11
9.2.3 可行性研究
目的是确定问题能否解决 主要工作 1. 描述当前系统的主要功能 2. 建立拟建系统的逻辑模型 3. 提出多个可供选择的开发方案并进行比较 4. 制定开发计划 5. 完成并提交可行性研究报告
34
9.3.2.2 结构化设计方法(Structured Design Method)
基本思想 1. 将功能逐步分解划分为模块 2. 让模块间形成层次 3. 将程序结构限制为顺序、选择和循环
35
e.g. 报表制作:用结构化设计方法来实现
报表制作 输入数据 读入 编辑 检查 计算 打印报表
印表头 印表体 打印
6
系统开发者
需求分析 系统设计 功能设计 系统测试 详细设计 需求分析 系统设计 编程
软件
维护 检查 系统测试 组合测试
编程
单体测试
软件一般实现过程
7
需求分析
9.2.1 目的
明确:系统必须做什么 是系统设计的基础 包含的内容 1. 问题定义 2. 可行性研究 3. 系统分析
8
9.2.2 问题定义
16
文件编制中的考虑因素 灵活性 1. 应编制的文件种类 2. 文件的详细程度 3. 文件的扩展 4. 节的扩展与缩并 5. 程序设计的表现形式 6. 文件的表现形式 7. 文件的其他种类
17
实例:基于因特网的软件使用许可证 管理系统的需求分析说明书
1. 2. 3. 4. 5. 6. 背景 本需求分析说明书的用途 整体需求 功能需求 其他需求 开发计划
25
4.2 使用功能 1) 用户的识别:用户ID及密码 2) 许可证内容 许可证数、使用期限、绘图数量 3) 许可证的获得和归还 不限定机器、不能超过购买数 4) 许可证的借出和回收 不需要通过许可证管理员用户
26
4.3 保密功能 原则:保密性不能低于软件狗方式 防止信息的篡改、非法获取 1) 许可证信息 2) 用户相关信息 3) 非用户不可获得许可证 4) 用户不可欺骗:构筑虚拟服务器、修改 本地文件
23
3.4 许可证管理信息的查询和变更 查询应用软件的使用信息 变更密码 密码失盗时,经过一定程序恢复最初密码
24
4. 功能需求
4.1 概述 许可证管理员用户: 设置和取消许可证 查询许可证信息及应用软件使用信息 购买应用软件的用户: 获得许可证以便使用应用软件 查询应用软件使用信息 核心功能分类:使用、保密、查询、管理
36
9.3.2.3 面向对象设计方法(Object-Oriented Method)
基本思想 1. 分解问题领域:识别对象和类,尽量让对象和 类对应于现实中的事物; 2. 建立类之间的相互关系:e.g.层次关系; 3. 以类为模板生成对象,让对象协同工作去实现 系统的具体功能。
37
e.g. 报表制作:用面向对象设计方法来实现
32
模块化设计的原则 1. 与语言模块单元相对应 设计的模块应与程序设计语言提供的语言模块 单元相对应。如,C语言中的子程序、函数、 结构体;C++语言中的类、对象等。 2. 信息隐藏 把模块界面与模块实现分离开来。模块界面体 现为模块的接口;模块实现体现为模块的数据 结构和具体算法。外部利用模块时,只需知道 模块的接口。
1
2
3
4
5
6
7
n
41
物理结构 在存储器中的存储形式为顺序存储 存放地址与下标之间存在着一一对应的关系 Loc ( ti ) = Loc ( t1 ) + ( i-1) * L L:单个元素的存储长度
特点
1. 有序性:各数据元素的存储顺序与逻辑顺序一致 2. 均匀性:各数据元素的数据类型一致 3. 元素的插入或删除, 需要移动元素,很不方便
39
常用数据结构
1. 静态线性表 2. 特殊线性表:栈,队列
3. 最基本的动态数据结构:单向链表
4. 链表的扩充:双向链表,循环链表 5. 树:二叉树 6. 图
40
9.3.3.1 静态线性表(Static Linear List)
线性表是 n(n≥0)个元素的有限序列 除了第一个和最后一个,每个元素都有一个并且 只有一个直接前趋,也只有一个直接后继 静态线性表是全部存储空间事先确定的线性表 逻辑结构 1. T ( t1, t2, t3, …, tn) 2. 每个元素在表中的位置取决于元素的下标 典型形式:数组 t t t t t t t … t