第一章 工程数据库概论
◇ 课前索引
内容简介
本章主要讲解有关工程数据库应用的背景及其基本知识,解释什么是工程、工程过程及相关数据、工程数据管理、工程应用系统的建模等;工程应用的建模主要以企业功能的描述介绍一种系统建模方法IDEF0;接着我们以产品设计应用为例介绍产品设计的概念和内容、设计的过程及计算机在产品设计中的应用;最后讨论在数据库技术在工程管理中的重要性。
学习目标
本章的内容是工程数据库应用的导论。通过工程应用的介绍使大家对工程数据库的重要性、工程对数据库管理系统的要求有比较深刻的认识,为本课程后面内容的讲解打下良好的应用背景知识。本章的内容较为抽象,需要同学在学完本章后阅读本章所附的参考文献资料。
有关这方面较新的技术文章可参看国内网站:www.amteam.org.cn或国外网站www.gartner.com。当然要是同学们对具体的产品感兴趣,可查看相关的产品网站。
学生要求
本门课程是为全校研究生开设的。在课程讲解时需兼顾计算机专业和非计算机专业学生不同的要求,所以希望选择本课程的学生具备两方面的基本知识:
- 计算机理论及数据库专业方面的基本知识:包括程序设计、数据库管理系统
- 工程应用背景知识:产品设计与制造、管理信息系统、计算机集成制造系统等。
学习要求
在本章的开始先讨论工程、工程过程的定义及其相关数据的管理。然后通过几个工程应用的介绍,对工程数据库应用的重要性有比较深刻的认识。希望学生掌握工程管理的理论及工程对数据库管理系统的要求,并在课后结合自己的专业利用IDEF0方法详细的分析某一个工程应用。
学习指南
学习本章需要学生有工程背景方面的知识,特别是计算机辅助设计、辅助制造和辅助管理方面的知识。学生不可能掌握所有这些知识,除了1.1、1.2、1.3、1.8、1.9节学生必须阅读与掌握外,其它章节学生可根据自己的需要选择性阅读。
学习安排
6~9学时(工程应用3学时)
本章知识点
自从1963年,数据库管理系统应用以来,基于数据库技术的应用五花八门。但在80年代以前使用数据库管理系统DBMS(DataBase
Management System)的绝大多数应用是属于事务管理方面的,在工程应用领域,几乎没有什么利用DBMS来存储与检索其有关数据的著名数据库应用程序。
在工程环境下,对传统DBMS明显地不加赏识的原因尚不清楚,它既非需要存储的工程数据的数量,也不是工程中各种工程对象和数据元素间的逻辑关系,因为这两个方面在事务管理型应用(如民航信息系统、银行信息系统)与工程环境下的应用是相似的。比较而言,管理环境的稳定性与工程环境的动态特性或许是一显著的差别,所以传统的DBMS的中固定的数据模型和面向机器的语法数据模型不能满足工程应用的需求是其主要原因之一。
因此,从80年代开始,人们开始研究数据库在工程应用领域的需求,设计相关的工程数据库管理系统EDBMS(Engineering
DataBase Management System)。
为了理解工程数据库研究的重要性,本章主要讲解有关工程应用的背景,解释什么是工程、工程数据和各种工程应用。通过这些工程应用的介绍使同学对工程数据库应用的背景以及数据库技术在工程应用中的重要性、工程对数据库管理系统的特殊要求有比较深刻的认识。
◇ 第一节 引论
随着数据库技术的发展,数据库技术的应用已经渗透到人们生产活动的各个领域。数据库应用最成熟的领域是一般的信息管理,如民航订票系统、企业信息管理、人事档案、学校管理、银行财务等。我们称所有这些数据库应用为面向事务管理的数据库应用系统。因此现有的商品化数据库管理系统DBMS基本都是为事务管理方面的应用而设计的,它们主要解决数据的完整性和一致性,保证数据的共享等,而没有考虑如何的将工程应用程序数据与数据库数据有效的集成管理起来,通过数据库技术支持工程的设计与开发、工程管理、应用系统集成等特殊需求。我们称支持后一种数据库应用的系统为面向工程数据库应用的数据库系统。
工程数据库应用与事务型数据应用的管理功能要求有很大的不同。在很长的一段时间内,在计算机辅助设计/制造/工艺/管理/集成制造(CAD/CAM/CAPP/ERP/CIMS)等工程领域内,大多使用文件系统或以文件为基础的专用数据库管理系统来存储工程数据,这样做对一些小系统或相对独立的工程应用系统是可行的,但随着这类工程系统的规模越来越大,这种以文件为基础的系统不论是系统开发、维护,还是系统的使用都带来一系列问题,不利于各种工程的集成与管理。
所以面向工程应用的数据库应用系统的概念从七十年代就提出来:为适用于广泛多样的工程活动,数据库管理系统(DBMS)不应只涉及存储与管理工程应用中的标准化部分、设计过程与材料性质的不变部分,而且应处理工程结构(例如基于产品结构的设计数据管理)、过程(如设计过程及相关数据的管理)、配置(如基于客户订单的设计与装配)、历史数据管理(如产品版本的管理)及其安装。此外,DBMS还应当存储用于能以追溯其由来的方式存储与检索测量及计算数据,以便于支持工程决策等。DBMS也应支持诸如复杂结构的分析与更改等典型工程活动。最后,DBMS除了具备传统的数据库语言SQL功能外,还必须有各种展现数据库内容的方法,其中包括工程对象的图形显示和工程对象间关系的导航等。
因此,具备上述功能需求的面向工程应用需求的数据库管理系统从七十年代就提出:工程数据库管理系统(Engineering Database
Management System,简称EDBMS)除了要满足对事务型DBMS的要求外,尚需加入针对工程过程的特殊性能。
这样我们需要研究"工程过程"表示什么意思,它由哪些一些基本要素组成。常用的工程应用有那些,它们有什么特点,对工程数据库管理系统有什么要求等。本章下列章节讨论这些问题。
总结:
1)、本节主要概述工程数据库的由来,简单的陈述面向事务管理的工程应用和面向工程管理的工程应用对数据库管理系统的要求是不同的。
2)、由于工程应用的复杂性和目前数据库管理系统的缺陷,很好的支持工程应用的数据库管理系统不多,所以需要开设这门课程。
3)、在讲解工程应用之前先定义工程、工程过程、工程过程的数据管理等理论问题。
附注:事务的概念
在数据库管理系统中,事务是这样一种机制,它确保多个数据库操作被当作单个工作单元来处理。因此事务具有以下的作用:
* 一致性:同时进行的查询和更新彼此不会发生冲突,其他用户不会看到发生了变化但尚未提交的数据。
* 可恢复性:一旦系统故障,数据库会自动地完全恢复未完成的事务。
* 原子性:事务是由一系列操作序列构成的程序执行单元,这些操作要么都做,要么都不做,是一个不可分割的工作单位。
* 持久性:事务一旦提交,就会永远保存
◇ 第二节 工程与工程管理
1.2.1、工程的定义
所谓的工程是将理论和知识应用于实践的科学。例如计算机科学(数学)是用于构造各种模型和算法的科学,工程科学是用于制定规范设计范型、评估成本及确定权衡的科学,管理科学则用于计划、资源、质量和成本的管理。
工程的分类:
不同的工程如机械工程、建筑工程、交通工程等的理论和知识不同,处理的对象也不同。工程除了根据应用区分外,也可根据工程的处理性质分为:
1)、只限于一次的处理工程:工程是有限期间的,它是在特定的问题、特定的目标发生时给予组织与管理,在问题和题目已经解决的情况下工程就结束。
2)、有明确的需求达成目标的工程:工程是以适应应该解决的问题或目标而组织起来的,并且明确该工程应该达到的目标,工程的成功与否取决于该目标是否已达成。
3)、具有不确切的技术:为了达到工程目标,往往伴随着许多不确切性的技术,为了克服这些不确切性技术,从而需要采取必要的随机应变的体制,以适应工程的状况,同时还必须动员和聘用一些专家参加入工程的体制中。
工程的描述属性:
工程的种类很多,分别有自己所固有的特性,从计算机数据处理系统开发的角度考虑,决定工程的特性的主要因素有:
- 业务开发完成日期:完成日期对工程的影响主要反映在工程的费用上。
- 新开发性(未知要素的量):作为工程在给予要达到的目标上,如果未知的要素越多,那么工程失败的可能性就越大。
- 对象范围:对象范围指的是工程的规模,即对象业务以及与之有关的用户数。对于处理对象范围大的工程,系统的说明很难确定,因此在确定系统说明的阶段需要耗费很多的时间和精力。
- 预算:工程的目标、工期与预算之间是相互制约的。即是说在规定的工期内要达到某个目标,预算需要多少费用;或者在预算和工期确定的情况下应该达到什么样的目标,这是在工程计划作业进行时必须研究的问题。
- 工程开发的成员:人是推进工程进展的最重要的资源。因此作为工程的管理者,在进行工程计划作业时,为了达成工程的目标,应该明确该工程需要怎样的技能,在什么时候需要多少人参加,怎样进行人员的布局,以及人员的教育培养计划等。
- 用户的责任:工程的成功与否还取决于工程完成后的成果由谁负责。在工程的用户不明确的情况下往往也是造成工程的失败。
工程定义图1-1解释
任何工程都有其本身的理论和知识,工程管理是根据外面的工程需求将需求转化为产品的过程管理。在这个过程中,工程过程模型需要领域内的工具、技术、资源的支持,它会产生一些数据,有些数据又会作用在工程过程模型(我们称为工程数据),有些数据将作为产品数据保存或输出。
例如:产品设计工程是将客户的产品性能描述数据转化为相应的产品设计模型。需求数据就是客户的产品性能或功能需求说明书,输出数据是产品设计文档。在这个过程中需要各种设计工具和相应的设计知识(标准的技术数据和设计领域的专用知识)、采用一定的技术技巧和资源的支持。
工程过程的描述
有关工程的处理我们都可通过下面的工程过程模型进行描述:
图1-1工程的定义
工程概念的进一步扩充
工程的研究有很长的历史,给工程下一个准确的定义也很难。有关工程理论研究最多的是系统工程:系统工程一词来自英文"Systems
Engineering",它是一门集理论、技术和实践为一体的人类知识与行为的统一体。系统工程的研究主要来自于自动化领域的系统论。简单地说,系统工程是指运用系统科学理论和系统技术所进行的有目的地改造客观世界的复杂性、大规模实践的方法和活动。
1978年我国著名科学家钱学森指出:系统工程是组织管理系统的规划、研究、设计、制造、试验和使用的科学方法,是一种对所有系统都具有普遍意义的方法。
从系统工程的定义和一般工程的定义来看,两者之间还是有区别的:系统工程的目的是研制一个系统,而系统不仅涉及到工程学的领域,还涉及社会、经济和政治等领域,所以为了适当地解决这些领域的问题,除了需要工程本身的某些纵向技术以外,还要有一种技术从横的方向把它们组织起来,这种横向技术就是系统工程。因此系统工程的思想对工程数据管理具有很大的指导意义。
1.2.2、工程过程的定义
工程管理主要是对工程作业的实施过程进行计划、管理和统一控制。在图1-2所示的四个阶段中,可区分:概念、分析、估价、决策、管理、文档、生产、检验、测试等活动。不同的活动处理的工程数据和方法也不一样。如概念活动是指依工程过程的各个不同阶段,分别创造性地作出关于功能、结构或安排的建议。建议的根据不仅来自目的、已知的初始数据,而且也与工程过程固有的反馈有关。后者来自工程过程中自由计算、测试和估价而得到的数据(即所谓的工程数据)。
从管理的角度讲,工程应用是由组成工程活动的工程过程组成的。不同类型的工程所包含的工程过程(或阶段)是不同的。德国Van Den
Kroonenberg教授定义任何工程过程都有问题定义、设计、生产和测试构成的一个完整过程。它可以表示成图1-2。
图 1-2 工程过程
工程过程概念的深化
上面工程过程的定义,如果从系统工程的角度来看,它只表示了系统工程过程的逻辑维。1969年美国学者,系统工程师霍尔(A.D.Hall)提出了一套系统工程的实施程序:一是知识准备,二是研究过程,三是实施过程。霍尔将这三个相互作用的方面用一个立体的三维坐标系统来描述。所以又被人们称为"霍尔三维结构"
- 知识维:主要用于描述与工程应用有关的理论与技术,包括工程应用的背景及工程对其他学科的关系等
- 逻辑维:主要研究工程过程中涉及的一些逻辑及其技术等
- 时间维:根据工程过程的进程按时间顺序进行管理
我们上面讨论的工程过程主要从工程的设计与实施角度定义工程过程的。从系统工程的角度来看,一个工程具有下图所示的三维结构:
系统工程的工程过程定义(霍尔三维结构)
1.2.3、工程数据的定义
工程过程的数据同工程的功能、结构和安排、工程的测试与测量、计算等有关。这些数据或者可由文献、文档和以前的工程过程得到,或者更据当前的工程需要生成。工程数据库应能容纳这些数据,与此同时,管理这些工程数据的数据库管理系统必须又能力以用户可接受的方式操纵所有这些数据,以便完整的描述和管理一个工程。
工程描述的数据必须结合应用领域。工程数据库研究的起源主要是满足CAD/CAE/CAM集成的需要,所以在考虑面向产品设计应用时,下列数据是工程应用中的典型问题:
- 工程结构的修改:如产品结构的修改、工程项目管理结构的修改等;
- 结构数据文档:如与产品结构相关的图形文档、设计文档、分析文档等;
- 数据变换,数据的图形表示及存储:如产品二维和三维图形的变换与联系;
- 部件的装配关系:如由零部件组装成部件或产品的描述与管理;
- 有限元模型数据:产品的设计分析模型及其优化算法;
- 设计计算:面向领域的设计分析如动力分析、结构分析等;
- 计算结果、文档、参数和程序间的关系:适用与计算的标识府等的存储和选择;
- 标准部件文档:如设计标准、加工参数标准等;
- 设计说明文档:用户需求、产品性能说明等;
- 通用造型方法及工具;
- 空间接口等。
1.2.4 工程管理:图1-3解释
1)、 工程管理可分解成各种工程活动。根据常规的工程应用工程活动分为需求分析与定义(如产品市场定位、性能要求与功能要求等)、工程设计与建模(产品设计包括功能设计、原理设计、机构设计、结构设计、总装图设计、零部件图设计、工程图校对与审核等)、工程实现(工艺设计、生产制造、销售等)、技术支持与服务等。
2)、 在不同的活动阶段要遵循一定的原则,采用一定的方法,如选用适宜的开发范型、采用"好" 的设计方法等,为的是满足各种工程目标。
3)、 软件工程提供了很多分析、设计与开发方法及其机制保证工程管理的质量(工程的目标),如工程的可用性、正确性、合算性(经济性)。
为加强工程过程及其相关数据的管理,我们需要制定一些工程目标,根据一定的原则,将工程过程中的各种活动有效的管理起来。这就是所谓的工程管理,如图1-3。从图1-3可以看出工程管理需要通过一定的原则和方法、并合理的安排工程过程中的各种活动才能保证工程高效、高质量的完成。
图1-3 工程数据管理模型
◇ 第三节 工程数据管理
工程管理中涉及到各种各样的数据。所谓数据,是指可被记录、识别的物理符号序列。例如语言、文字、数字、图像、声音等。数据是用来记录和反映事物状况的客观描述。工程过程中的数据多种多样,要完全描述工程对象的数据必须结合具体的工程应用。但一般来讲,工程数据可分为以下几大类:
- 环境数据(Context Data):用来描述工程过程或事件发生的背景数据,如产品设计时的技术设计标准数据(静态数据)和产品的性能与功能描述数据。
- 结构数据(Structure Data):如产品的组成、企业的组织等用于管理工程对象之间的关系数据。结构数据也是静态数据。
- 事件数据(Event Data):描述事件发生前后的相关数据。事件数据是动态数据,一般情况下需要保存,以便于工程数据由来的分析和查询。
- 瞬间数据(Instance Data):事件发生过程中产生的数据。根据需要瞬间数据也可保存,便于以后工程应用的统计分析。
- 历史数据(History Data):是事件或过程发生数据的历史保存。
- 统计数据(Statistic Data):对历史数据进行汇总统计分析后得到的数据。
这六种类型的数据之间的关系根据其时间顺序通过工程过程模型的驱动发生如下的关系(图1-4):
图1-4 工程数据的转换关系图
工程过程或事件在一定的背景条件(环境数据)下,通过某种事件的触发(例如事件数据),根据一定的准则或原理(结构数据)发生变化(事件或过程),产生一些瞬间数据,如这些事件数据、瞬间数据用于管理或统计分析则需要保存,则形成工程的历史数据,通过某些算法优化压缩后将历史数据转化为统计数据。统计数据常常是人们决策所需的数据:也就是我们所说的信息。
信息的定义
所以信息向人们提供关于现实世界的新的事实知识。通过各种方式可以被传送,可以用能被人感受的声音、图形、文字所表征,并且与某特定事实、主题或事件相联系的消息、情报或知识,均可被称为信息。即是说,信息是经过加工并对人类社会实践和生产实践活动产生决策影响的数据。
数据和信息的关系
数据与信息在概念上是有区别的,不是所有数据都能成为信息,只有抽取加工之后,具有新的事实知识的数据才能成为信息。数据经过加工处理之后成为信息,仍然以数据形式表现,此时数据是信息的载体,成为人们能动地认识和改造世界的媒体。
数据和信息之间的关系如同原料和成品之间的关系,数据是原料,信息是成品。同一组数据,对某个人是信息,对另一个人就是数据,如同某个部门的成品是另一个部门的原料一样。所以数据和信息的概念是相对的,在工程数据库系统中,数据和信息的含义是相同的,只有结合具体的应用或工程过程才能区分数据和信息,也就是我们所说的数据处理。
数据管理
数据处理是指对各种形式的数据进行收集、组织、加工、储存、抽取和传播的一系列活动的总和,而数据管理是指对数据的组织、存储、检索和维护,是数据处理的中心环节。数据管理的目的主要围绕提高数据独立性、降低数据的冗余度、提高数据共享性、提高数据的安全性和完整性等方面来进行改进,是使用者能有效地管理和使用数据资源。
数据定义的扩充:管理信息
管理信息是对企业生产经营活动过程中收集的数据经过加工处理、给以分析解释、明确意义后,对企业经营活动产生影响的数据。数据是记录生产经营活动中的事实,而信息是对管理人员的行为有影响的情报和数据。管理信息通过实物的、劳动的和价格的指标体系或文字的表达反映企业的生产经营活动状态,它是企业计划、核算、调度、统计、定额和经济活动分析等工作的依据。管理信息具有以下特点:
- 离散性:数据的来源是分布在所反映的对象和过程的所在地(数据收集的复杂性和繁重性);信息的收集、传递、存储、加工和分配发送具有不同的频率和周期;企业的产品、原料、设备、工具等都是用离散数值计算的
- 信息量大且多样性:企业生产的产品种类,生产用的原材料、工具、设备,企业中各种人员
- 信息处理方法的多样性:信息处理的绝大部分工作是逻辑处理,主要有:检索、核对、分类、合并、总计、转录等,方法比较简单,但很多是重复进行的,另一种是算术运算,目前大量的是简单的算术运算,如计算产值及产品产量完成情况、计算产品成本等,但随着企业管理水平的提高,必然要应用现代代数方法,采用一些比较复杂的优化模型,如网络优化模型、线性规划模型、系统仿真模型等比较复杂的算法
- 信息的发生、加工和应用在时间、空间上的不一致性:产品产生的信息发生在车间或工段,信息的加工一般在职能科室或信息处理中心,而使用信息则是职能科室、有关领导或上级机关,同时,在时间上,信息的发生与收集、传递的次数、加工的次数和周期,使用的频率等,不同的信息不一样,这样,使信息处理工作复杂化。
- 信息的非消耗性:信息与其他物质资源相比,它在使用过程中是不被消耗掉的,信息具有共享性,一个人出卖一个"诀窍",买者确有所得,卖者并无所失,可见,信息被使用次数越多,价值就越大。
- 信息的关联性:如销售合同信息、销售合同提货单信息、提货单的出库信息、合同的回款回款信息、合同的发票信息之间是相互依赖且相互控制的。
前面对工程、工程过程及工程数据的定义进行了定义,并对工程数据库的分类和工程信息的分类进行了总结。在工程应用中,有关数据的分类除根据上面工程过程的作用进行分类,还可用以下方式进行分类:
- 按作用分:战略计划的、管理控制的、日常业务的
- 按稳定程度分:固定的、相对固定的、流动的
- 按来源分:外部的,内部的
- 按管理级别分:总厂的、分厂的、车间的、工段的
- 按管理职能分:计划的、生产的、库存的、财务的
- 按管理阶段分:作业的、计划的、核算的、报告的
- 按资源分:人力的、经济的、物料的、技术的
- 按用途分:指令的、定额的、查询的、科技的
- 按流向分:输入的,输出的
◇ 第四节 数据库与工程数据库
无论是工程数据还是管理信息,都必须以某种方式存储在某种媒体介质上面,以便于数据(信息)存储与检索。这种有组织的数据存储我们称为数据库。
工程数据库是数据库在工程领域应用的数据库。
数据库的定义
所谓的数据库是长期储存在计算机内的,有组织的,可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。换句话说数据库是由一个互相关联的数据的集合和一组用以访问这些数据的程序组成。
数据库的分类
数据库根据数据的组织模型和应用领域又分为好几种。如层次数据库、网状数据库、关系数据库、面向对象的数据库、工程数据库、分布式数据库、多媒体数据库、移动数据库等。
工程数据库的定义
工程数据库,顾名思义它是面向工程应用的,包含了几何的、物理的、技术的(或工艺的)以及其他技术实体的特性和它们之间的关系的数据库。早期的工程数据库又称CAD数据库、设计数据库、技术数据库、设计自动化数据库。也就是说,工程数据库是指适用于计算机辅助设计/制造(CAD/CAM)、计算机集成制造(CIM)、企业资源计划管理(ERP)、地理信息处理(GIS)和军事指挥、控制等工程领域所使用的数据库。
1.4.1 对工程数据库系统的要求
面向工程应用的数据库管理系统应满足的要求主要是由工程的性质、工程过程决定的。需要存储什么数据以及在其上要有何种作用,支持哪些工程过程等都体现了这一观点。
同面向事务型的数据库管理系统一样,面向工程应用的数据库管理系统的要求可从以下几个方面考虑:
- 数据库方面的一般要求
- 用户的要求
- 来自数据的要求
- 数据使用方面的要求等
1、数据库方面的一般要求
同数据库和数据库管理系统要满足工程应用的一般性要求相同,面向工程应用的数据库管理系统也应该包括以下要求:
- 安全性
● 保密:数据使用的规则和控制
● 保险:防止人为或恶意破坏的保护措施
- 正确性
● 准确度:数据的正确性
● 完整性:数据之间无矛盾
● 一致性:按确定的规则对数据存储和输出
- 同时性:可由多个用户或程序同时对数据库进行存取。
- 易管理性
● 管理的概念:维护=保持干净利落
● 控制的概念:掌握各种数据及数据间的关系。
也许应该加上下列关于工程数据库的一般评论:工程数据库应该被认为是供工程过程使用的工具,而不能仅仅看成存储数据的一种场所。所以工程数据库管理系统除了具有传统的DBMS的数据组织与管理功能外,还应该具备应用系统的某些功能。
注意:
工程数据库概念提出时,面向对象的数据库管理系统还没有提出。面向对象数据库的某些特性(如封装,多态)使数据库管理系统DBMS具有工程应用系统的某些功能。
2、 用户的要求
工程数据库的用户可以大致分为两大类:
- 第一类是最终用户,他们希望存储数据和使用存储在数据库中的数据;
- 第二类是程序员和应用程序员,他们的工作是建立处理数据的程序。
这两类用户都是面向问题和面向解的。他们完全或大部分对计算机本身不感兴趣。除绝对必要的信息外,不应再使他们分心。这意味着工程应用程序必须具有最大程度的用户友好性。因为用户
● 对系统的内部结构不感兴趣;
● 希望计算机成为使他们自己能迅速地从事工作的快速工具;
● 希望在输入后尽快看到反应,即使这种反应仅仅是表明计算机在工作;
● 不关心计算机或其它设备的利用率;
● 希望对自己的行为而引起的潜在的灾难性后果得到警告;
● 希望(和必须)给于他们保护自己以防不测的能力;
● 当他们逐渐熟悉系统时,希望能精化对系统的使用方法;
● 讨厌手册,不易理解错误信息的含义;
● 希望作很少的准备即能随时使用系统;
● 只关心涉及其功能层次这一级别上的细节。
传统的数据库管理系统对用户的要求很高,对工程应用的支持不多,需要通过工程技术人员的二次开发,才能满足各种应用系统的要求,因此工程技术开发人员希望数据库系统能提供一些工程应用的功能,用户界面应该友好,能进行自动学习和优化(即数据库管理系统具有一定的智能)等。
八十年代,人们曾经提出了演绎数据库,试图解决知识的管理和系统的精化,但到目前为止都没有成功。现在的商品化数据库管理系统提供了很多辅助工具帮助用户管理和开发他们的工程应用,特别是很多图性化的向导工具(Wizard)。但开发复杂的应用还是要求用户掌握很深的计算机知识和数据库管理系统的原理、特点及其各种解决方案。
3、 来自数据的要求
工程数据模型是很复杂的,数据库管理系统不但要存储和管理数据,还要能管理工程数据的语义,所以工程数据库管理系统的数据模型要具有语义。
面向对象的数据模型能表示复杂的工程数据,又由于它在数据库存储了相关的方法,可用来表示设计公式、计算模型等。多媒体数据库技术的出现又使数据库中数据的表现向用户靠近了一步。
来自数据的要求包括以下几个方面:
1) 需要存储什么数据与使用数据同工程过程的功能有关。
2) 几乎在每种场合,工程都可以看成由一大套元件、组件及其相互关系拼装而成的系统,所以工程数据库必须能存储元件、组件及其相互间的关系。
3) 设计是一个联合问题,其中给定的大量要求往往是互有抵触的,必须寻求一个最适度的解,也就是常常必须对这些要求进行权衡比较。这意味着数据和关系常常是"模糊的"。
4) 变量间的关系一般被表示成规则和设计公式,工程数据库必须能存储概念(规则)和代数公式。
5) 必须能存储和管理可供选择的设计、部分设计:工程的对象、工艺设计必须用计算机和使用它的人都能理解的术语描述
6) 对经常描述的工程过程的"计算模型" ,也必须能存储于数据库中:工程过程的初始阶段是高度动态的,这不仅是指数据本身,而且也是就关系和功能结构而言的。描述工程过程的数据结构本质上是动态性质的。
7) 结构定义和变量的逐步精化都必须是可能的。
8) 数据的由来(例如人、程序、时间)必须连同数据本身被存储-人机交互数据和人际交互数据。
9 必须既能处理动态的、扩展着的工程数据,又能处理具有库结构的静态数据。
10) 必须能从几何和拓扑两方面完整地描述产品几何设计和空间工艺设计等问题:即必须分清术语"图形的"和术语"存在于空间的"数据。
11) 一般地,必须能单独地存储作为基本模型图解的图形结构,能与其它文件分开。特殊结构和图形结构的连接必须是双向导航的。
从上面的讨论可以看出,工程应用的数据模型是随着工程活动而不断变化的,工程数据的模型也相当复杂;各种数据模型之间存在一定的依赖关系(计算模型)。工程数据库必须支持数据模型的动态定义并存储之间的因果关系,支持数据的版本管理等。提供的数据模型要有足够的语义表达能力以便与复杂数据的建模。
4、 数据使用方面的要求
数据共享和并发控制是数据库管理区别于文件管理的主要优点。目前的数据库管理系统都提供了很好的开发工具满足数据使用方面的要求,特别是近年来数据仓库、数据挖掘等技术的发展和和数据库技术的结合,数据库数据的使用及其统计报表工具的发展又为我们使用数据提供了很多方法和手段。
为什么使用数据库的概念,主要的理由很可能是相同的数据(虽然具有不同的形式),可供几种不同的应用。最终用户的工作,往往是从他们自己的学科出发的,只需要有限的一部分数据。鉴于必须做广泛的数据处理,通常他们还要通过应用程序利用存储于数据库中的信息。因此
1) 必须使几个用户能通过应用程序或其它方法,利用同一数据集合,因为他们可能从不同的观点来看待这些数据(一个模型的不同方面)。
2) 必须能根据存储的最基本数据计算所需的信息(分析和程序间的方面接口):设计判定通常是根据分析做出的,许多应用要功用诸如合计、求倍数、表面面积和体积的计算这样的基本过程。
3) 必须提供非常通用的报表功能:应该把数据库作为工程活动的一种工具。提供广泛的报表和文档功能是非常重要的,这一点同样适合于用于图形信息工作时的场合。
4) 数据库必须能被直接或通过应用程序进行存取。因此,工程数据库跟应用交互使用的相应时间必须短。
1.4.2 对工程数据库管理系统的功能要求
在前面我们从几个角度分析了工程应用对数据库应用系统的要求。我们知道,工程数据是通过工程数据库管理系统进行管理的。为了满足各种工程应用,我们必须开发相应的工程数据库管理系统。下面我们从数据库技术的角度探讨工程应用对数据库管理系统的功能的要求。
传统的层次、网状、关系数据模型在复杂的工程应用中都暴露出一些不足。层次模型中同层部件的相互调用和底层部件调用不好实现;网状型的过程处理,数据存取需要程序员导航,增加了使用的复杂性;关系型不允许嵌套定义,即关系范式中规定"表中不允许再有表",缺乏直接描述实体内结构关系及有效的处理手段。
一般地讲,一个通用的工程数据库管理系统应满足以下几个方面的功能要求:
1、 支持复杂的工程数据的存储和管理
要求工程数据库管理系统支持处理工程数据的非结构化变长数据和特殊类型数据,支持多媒体的信息集成管理,这包括多方面的具体要求,例如:
● 图形、图象数据多规格存储方式
● 不同媒体数据类型的流格式转换和控制
● 多种媒体数据输入/输出设备的驱动
● 多种媒体数据编辑处理
● 支持复杂实体的表示和实体间关系的处理
● 支持超文本数据和存储和处理
● 支持动态链变长数据记录和超长数项的管理和存储
2、 支持模式的动态修改和扩充
不仅能对结构化数据静态建模,而且还必须能动态地对模式进行建立、修改和扩充。这样,才能适应工程数据库对反复试验的工程设计过程的支持,既能承认和管理暂时不一致的数据库状态,同时又必须具有数据完整性和一致性的数据库维护能力。
3、 支持工程事务处理和恢复
工程事务大多具有长期性,工程数据库中有一批数据将使用几百年。一个工程事务不可能成为处理和恢复的最小单位,要分层次、分类别,需要在工程长事务中分若干次保存中间结果,以进行较短事务处理,要有适合工程应用背景的数据库恢复功能,以实现对长事务的回退处理
4、 支持多库操作和多版本管理
由于工程事务的复杂性和反复试验的实践性,要求工程数据库系统具有良好的多版本管理和存储功能,以正确地反映工程建设过程和最终状态,不仅为该工程的实施服务,而且要为以后工程应用管理和工程维护服务,还要为研究工程设计类似工程提供借鉴数据。
由于工程设计的规模大和复杂的工种配合,要求工程数据库系统能支持动态设计,需要在系统各专业辅助设计模块间传送中间数据,需要提供多库操作和通信能力,需要将各专业数据库、临时数据库、总信息库、阶段设计数据库等进行集成存储和处理。
5、 支持同一对象多种媒体悉信息形式和处理功能
同工程设计对象的设计方案和建造实现的表示,具有多媒体形式,如建筑设计的渲染图、结构图、立面图、平面图、施工图、竣工图,在计算机图库中可以是光栅图象,也可以是矢量图形,还甚至以视频图象方式表现;各个设计工种的表达形式亦具有多种方式,如建筑厅堂的音效设计、消防设计、采光和通风设计等;同一设计对象的多种媒体表现与特殊的设计活动的联系规则和规范,要求数据库系统能提供相应机制支持其存储表示和数据保护及处理功能。
6、 支持工程数据的长记录存取和文件兼容处理
工程数据中,有些不宜置于数据库中的数据可以用相对有效方法处理,如大型矩阵等无结构的大规模数据,以文件系统为基础来设计,使用更为方便和提高存取效率。因此,工程数据库系统与外部文件通信,支持长记录存取,兼容文件系统数据格式,也是十分重要的功能要求。
7、 支持智能型的规则描述和查询处理
工程对象同相应专业技术紧密联系,工程设计和建造要求满足其专业技术规范和一定的设计规则,数据库系统应具有描述这些知识语义的能力,具有一定的语义识别、推理和查询规则的能力,具有能够自动检测和维护设计规则的功能。因此,对于工程数据库,人们要求支持语义信息的嵌入和自动维护功能,以便使系统具有一定的智能性。
8、 具有良好的数据库系统环境和支持工具
工程数据库系统环境要求一般较高于商业用和办公用系统。主要是大容量、快速和分布设计环境,解决好系统效率与系统功能完备之间联系,维护数据的安全性、一致性和完整性,特别是具有良好的同CAD/CAM/CAE等软件的接口。
对工程数据管理系统要求的总结:
从上面的讨论我们看出,工程数据库的模型要具有用户可定义的能力,并且要具有一定的语义。在20世纪70年代末提出工程数据库管理系统时,由于对象技术还没有出现,人们提出了上述需求。所以在80年代末期对象模型出现时,有关工程数据库管理系统的研究主要围绕对象数据库管理系统进行研究,工程界对对象数据库管理系统寄予了很大的希望,但经过了十几年的研究后,由于面向对象数据库的功能与人们想象的相差甚远,更由于它开发的复杂性,人们又回到了关系型数据库管理系统上面,通过扩展关系模型,开发所谓的对象-关系型数据库管理系统,如1998以后在传统光系数据库管理系统Oracle的Caterrige、Informix
的DataBlade、Db2的Extender都提供了模型的自定义能力。有关这方面的资料请参看www.oracle.com、www.ibm.com网站相关的文档。
对本小节的总结:
有关数据库及其技术在本科生阶段的数据库管理系统课程中已经讲解过,这儿主要从用户的角度强调一下工程应用对工程数据库管理系统或数据库管理系统的要求。我们在本课程的第二章还要回顾各种数据模型及数据库管理系统的体系结构,希望没有学过数据库原理的同学参考中国人民大学王珊教授主编的《数据库系统》教材。
在理解了上述工程、工程数据管理等基本概念后,下面我们需要了解具体的工程应用。由于工程数据库的由来是计算机辅助设计(CAD)。所以本章后面我们讨论什么是产品设计及计算机辅助设计。但在讨论产品设计之前,我们还是先讨论工程应用系统的建模问题,通过这个问题的介绍使同学们了解和掌握工程应用界提出的一个有效的工程应用分析和建模工具IDEF0方法。
◇ 第五节 工程应用系统的建模
在介绍各种工程应用功能之前,我们首先要讨论工程应用系统的建模。只有在正确的描述了工程的组织结构和功能后,才能正确的分析相关的工程过程与数据。下面我们以企业建模为例介绍工程应用系统的建模。
企业组织是保证企业生产经营功能目标实现的重要手段,是企业管理的重要问题。由于它和信息技术相互影响又相互支持,所以和工程数据库系统有密切的关系。
企业的定义
不同的企业有不同的功能,但目的都是有效的利用企业的各种制造资源(包括人员、生产设备、工具、资金等),通过合理的管理(物流、信息流和资金流的协调)向客户提供满意的产品并获得足够多的利润。
图 1-5 企业的定义
为保证图1-5中物流、信息流、资金流等数据的畅通,企业建立了各种各样的组织结构保障。企业的组织是由企业设置的组织功能所决定的,而组织的功能是为组织的目标服务的,因此一个企业生产经营单位的组成最终是由企业的功能决定,并为企业的生产经营目标服务。从古代作坊的直线组织到泰勒的直线职能制,企业的组织结构虽然有些变化,但基本的组成部分变化不大。
企业组织建模
不同的组织结构各有其优点和缺点。在工程应用中,企业的组织模型与工程数据库的关系主要是人员权限的管理。工程数据管理系统中的人员权限与企业的组织结构密切相关的。因此企业的组织建模主要包括以下内容:
- 企业人员的建模:人员信息的建模包括人员外围信息的定义如职称、工种、毕业学校、所学专业等具有企业特色的信息管理和企业人员目录表的维护。在此基础上,根据企业的组织模式描述企业的人员关系。
- 企业组织单元的建模:企业组织单元的建模和组织单元内部资源的管理,包括部门人员的管理、部门资源(设备、工具、量具等)的管理、部门功能的设置(部门权限管理)等。
- 企业组织结构建模:根据企业的组织结构和功能要求,设置各组织单元之间的结构关系及其权限。
- 企业人员权限的分工:即企业内部各组织之间人员关系的管理。
企业组织与人员权限的管理
传统的面向事务管理的数据库系统基本能满足企业组织的建模,但有关企业组织结构和企业功能之间的权限管理要由应用系统来解决,数据库管理系统通过应用程序角色这一机制来实现对应用系统功能权限的管理。例如产品设计过程中的流程管理、参与设计流程的部门及各个部门的权限管理、同一个部门人员的分工等等在传统的数据库管理系统中都没有得到很好的得到解决。需要我们在建立工程应用模型是予以考虑。
数据安全性是指保护数据以防止非法的使用,避免造成数据有意或无意的丢失、泄露或破坏。由于数据库系统中存放有大量的数据,这些数据又为众多用户所共享,数据的安全约束是一个极为突出的问题。所以在工程数据库应用中有以下的用户需要区分:
- 数据库用户:与传统的DBMS用户概念一致,能登陆访问工程数据库系统的用户。
- 应用系统用户:工程领域特有的权限管理,现代DBMS中也开始提供数据库应用系统用户的权限管理,应用系统用户主要是企业的各种工程技术人员,通过应用系统这个特殊的用户角色权限访问数据库。
- 数据库角色:为简化用户权限的管理,数据库系统提供的一个逻辑概念,用户对用户组权限的定义与管理。
- 应用系统角色:支持各种应用系统的权限设置与管理。
- 企业人员与数据库用户的关系:一般来讲,数据库用户是企业的员工,但并不是企业所有的员工都是数据库用户。所以工程数据库管理系统的用户管理应该提供与企业组织结构模型的接口。
- 企业部门与应用角色、应用角色与数据库角色之间的关系:工程数据库管理系统应该提供这些用户之间关系的定义和维护。
- 系统用户与企业人员之间的关系等。
相关参考书
有关企业组织及其管理参看清华大学出版社出版的由薛华成教授主编的《管理信息系统》或相关的企业管理书籍。本节介绍这些概念是希望大家注意工程应用中工程的组织模型与权限的控制比传统的事务型应用要复杂得多,只有充分考虑了工程过程与组织权限之间的权限管理,设计开发的工程应用系统数据的使用和管理才能更加满足用户的需求。
企业的最终功能或者说目标是取得利润。为保证利润的实现,企业必须在正确的时间、将正确的产品以合适的方式交给正确的对象。企业的利润是靠企业的各种功能来保证的。那么企业的功能是什么呢。
企业的功能
企业的功能很多,我们只有借助于某种建模工具才能正确的理解某种工程应用的功能。下面我们用IDEF方法中的功能结构分解图:IDEF0图来描述企业的功能。
IDEF:ICAM(Integrated Computer Aided Manufacturing) DEFinition
method)是1981年美国空军公布的结构化分析方法,其基本概念是在70年代提出的结构化分析方法基础上发展起来的。IDEF0分析方法认为要理解一个系统的功能需要全面地描述系统,通过建立模型来理解一个系统:一个系统可以被认为是由对象物体(用数据表示)和活动(由人、机器和软件来执行)以及它们之间的联系组成。
IDEF0是系统功能分析工具,其基本结构如图1-6所示:企业的功能用各种各样的活动合子表示,在活动图形上,箭头代表数据约束,而不是代表流或顺序。一个盒子上的输出,连到另一盒子的输入或控制,表示一种约束。表示接受数据的盒子的执行条件,可利用输出该数据盒子所产生的数据。
图 1-6 IDEF0 基本结构图
通过这个IDEF0盒子可以用来描述企业的各种功能:
1)图形中"盒子"代表工程应用中的活动(或过程),用主动的动词短语来描述,在盒子的内部写上描述盒子活动的短语,在盒子的右下角写上该盒子在整个IDEF0图中的标识编号。
2)连到盒子上的"箭头",表示由活动产生的,或活动所需的信息或真实对象。用一个名词短语作标签,写在箭头旁边表示箭头的涵义。"数据"可以是信息、对象或任意用名词或短语描述的任何东西。箭头限制了盒子间的关系,而不是表示活动的顺序。
3)盒子的"边"表表示所进入或离开的箭头的作用。盒子左边及上方进入的箭头表示为完成此活动所需要的数据。盒子右边离开盒子的箭头表示执行活动时产生的数据。输入与输出的关系就是活动(过程),是将输入数据转变为输出数据的一种变换。所以"输入"就是这个活动需要"消耗掉"、要"用掉"或"变换成"输出的东西,它可以是具体的事物、抽象的数据或其他用名词表示的东西。盒子顶部的箭头表示控制,说明活动变换的条件或环境,或者说是约束。盒子底部的箭头作为机制,用以支撑活动所需的条件。
所以IDEF0模型由一系列图形组成,它把复杂的工程应用分解成一个个部分、成分。初始图形最一般或最抽象地描述了整个系统,它把每个主要成分表示成一个盒子。每个成分经过分解再用一个图形来显示它的细节。这个图形把它的组成成分也用盒子来表示。此盒子又能再分裂成更多的图形,直到系统描述得足够细致为止。
一个上层图中的盒子由下层图中一系列盒子及箭头来说明。进入与离开上层图中盒子的箭头完全与进入与离开下层图中的箭头一致。高层图中,盒子及箭头所附带的文字标签必然是抽象的,它描述的是一般概念。而在下层图中信息逐步增加。
复杂系统的IDEF0图层次表示
每个详细图是较抽象图中一个盒子的分解图,每一步中我们把抽象图称为详细图的父图。把详细图称为抽象图的子图。用这种图形来描述的一个系统称为IDEF0模型。每个模型包括:
● 描述系统完成的是什么功能
● 说明系统是如何设计的及如何构造的
● 解释如何使用及维护一个系统。
IDEF0能同时表达系统的活动(用盒子表示)和数据流(用箭头表示)以及它们之间的联系。所以IDEF0模型能使人们全面描述系统。IDEF0图形语言能够做到:
● 有控制地逐步展开系统的细节(3-6)
● 精确性及准确性
● 注意模型的接口
● 提供一套强有力的分析和设计词汇通过IDEF0图的活动盒子和各活动盒子之间的箭头就可描述企业的各种功能,并用图示的方式表示出来。
系统建模的目的和范围
由于模型是一个书面说明,因此像一切技术文件一样,每一个模型都有一个目的和一个观点。目的是指建模的意义,为什么要建立模型。观点是指从哪个角度去反映问题或者站在什么人的立场来分析问题。功能模型是为了要进一步做好需求分析,要实现预定的技术要求(不论是对已有系统的改造还是新建系统),所以要明确是对功能活动进行分析(逐步分解),而不是对组织机构的分解。模型描述的内容反映各种用户的要求,从单一角度描述问题是困难的,也是不可能的。IDEF0要求在画出整个系统的功能模型时,具有明确的目的与观点。
例如从企业信息管理的角度,图1-5企业的功能通过IDEF0图可表示如下(图1-7):
图 1-7 IDEF0 A-0图:企业功能
模型的分解
IDEF0方法用严格的自顶向下地逐层分解的方式来构造系统的模型,使其主要功能在顶层说明,然后分解得到逐层有明确范围的细节表示,每个模型在内部是完全一致的。IDEF0在建模一开始,先定义系统的内外关系和来龙去脉。用一个盒子及其接口箭头来表示,确定了系统范围。由于在顶层的单个方盒代表了整个系统,所以写在方盒中的说明性短语是比较一般的、抽象的。同样,接口箭头代表了整个系统对外界的全部接口。所以写在前头旁边的标记也是一般的、抽象的。然后,把这个将系统当作单一模块的盒子分解成另一张图形。这张图形上有几个盒子,盒子间用箭头连接。这就是单个父模块所分解的各个子模块。IDEF0提供了规则,保证了如何通过分解得到人们所需要的具体信息。
例如一个具有设计、生产制造的企业运用IDEF0方法的基本概念分析后应具备下列功能(如图1-8):工程设计、工程设计数据的管理(产品数据管理)、生产经营管理、质量控制与保证等功能。
图1-8 IDEF0 A0 企业功能模型图
一个模块在向下分解时,分解成不少于3个、不多于6个的子模块。模型中一个图形与其他图形间的精确关系,则用互相连接的箭头来表示。当一个模块被分解成几个子模块时,用箭头表示各子模块之间的接口。每个子模块的名字加上带标签的接口,确定了一个范围,规定了子模块细节的内容。在所有情况下,子模块忠实地代表了父模块,以既不增加也不减少的方式反映着各自父模块所包含的信息。依次类推,通过IDEF0图的逐层分解我们可得到很详细的企业功能。
模型的管理:
<图1-9 IDEF0图>的评审-文档:无论是作者的模型,还是评审员的评论,都要以书面的形式反映出来。
另外,IDEF分析方法也规定了严格的人员关系,评审手续及文档管理办法:
- 人员:IDEF0适合于研究分析一个大而复杂的系统,因此要求有一个技术上熟练、而且能相互协调的集体来一起工作。这个集体应有各方面的人员组成,在IDEF方法中通常将人员分为:作者、评审员、读者、专家、技术委员会、项目资料员、项目负责人等。
- 评审手续:建模活动每前进一步,IDEF方法都要求这个集体成员交换见解,用以互相检查工作的结果,有名的作者/读者循环就体现了这个工作程序(图1-9)
图1-9 IDEF0图
所以模型的生成及其每次修改意见都要通过某种方法保存起来,右图(如1-10的IDEF0图是IDEF0常用的图表的描述格式),通过这种图表方式一面工作,一面把工程模型的相关文档即文件建立起来。
图 1-10 IDEF0图的描述文档格式
理解和掌握企业功能虽然不是我们这门课的目的,但对于理解后面的教学内容帮助很大。上面通过企业功能的介绍,我们向同学们介绍了一个系统分析和建模IDEF0方法,目的是要大家掌握一些工程分析方法和工具,以便于以后工程应用分析时选择使用。我们在后面的工程数据应用中还会介绍企业的其他功能,本章只是对企业功能的一般概述。
下面我们通过对产品设计内容和设计过程的分析,了解企业功能中一个很重要的功能模块:工程设计。通过这个例子可以看出工程应用功能及其它的复杂性。
除了可以用IDEF0来描述企业的功能外,目前市场上也提供了很多工具帮助用户来分析与设计工程应用,一些标准化组织也提供了各种企业功能参考模型(如欧洲的CIM-OSA)。IDEF方法除了功能分析方法外,还提供了以下一些分析与设计方法:
- IDEF1X:数据模型(Data Modeling)
- IDEF2:仿真模型设计(Simulation Model Design)
- IDEF3:过程模型设计(Process Description Capture)
- IDEF4:面向对象设计(Object-Oriented Design)
- IDEF5:本体论描述获取(Ontology Description Capture)
- IDEF6:设计原理获取(Design Rationale Capture)
- IDEF7:信息系统审定(Information System Auditing)
- IDEF8:人与系统接口设计(Human-System Interface Design)
:用户接口建模(User Interface Modeling)
- IDEF9:经营约束的发现(Business Constraint Discovery)
:场景驱动信息系统设计(Scenario Constraint Discovery)IDEF10:实施体系结构建模(Implementation
Architecture Modeling)
- IDEF11:信息工具建模(Information Artifact Modeling)
- IDEF12:组织设计(Organization Design)
◇ 第六节 产品设计
从上面的企业功能分析中,我们知道,工程设计是企业功能的重要组成部分。在讨论产品设计过程之前我们先讨论产品与设计的概念。
1.6.1产品的概念
产品最一般的概念是劳动创造出来的物质财富或物品。例如汽车、计算机、日常日用品等都是产品。顾客购买一件产品,从本质上并不是买这个产品的实体,而是买这个产品所得到的效用上和心理上的满足。因此产品除了它的实体外,还应包括其功能、使用(操作)、质量、款式、商标、包装、保用、修理及售前售后服务等。所以对产品的分析可以划分为三个层次(如图1-11):
- 形式产品:即市场上的产品的具体形态。一般以产品的质量、特征、造型、商标和包装表示出来。
- 核心产品:是指产品给用户提供的基本功用和利益。顾客主要追求的是产品的实际效用。例如顾客买电冰箱这个形式产品,主要是为了制冷和保鲜这个核心。
- 延伸产品:包括产品的质量保证、安装维修、使用指导和其它售前售后服务,使用户的利益得到保证或使顾客有更多的产品附加利益。
图1-11 产品的概念
传统的计算机辅助设计理解为围绕产品图纸和有关文件的一系列工作。虽然后来出现了计算机辅助分析(CAE)等,但有关产品设计准备阶段和有关产品的功能设计(即核心产品)没有有效的工具进行支持(也就是说没有合适的数据模型支持核心产品的建模),这是工程数据库这门课程要提出的主要理由之一。为此我们需要理解产品设计的概念。
1.6.2 产品设计
那么什么是设计?至今人们有着不同的理解和解释。通常工程界把设计理解为围绕产品图纸和有关文件的一系列工作,实际上这种理解是局部的,不全面的。
从产品的定义可以看出,设计是根据客观需求,通过人们的创造性思维,经过判断、决策、并用各种设计模型使之定量化,将提供的资源转化为技术装置或系统以满足人类与社会的功能要求的过程。设计也是根据各种信息反复作出判断的过程。它是把各种先进技术转化为生产力的一种手段,是先进生产力的代表,反映了社会的生产力水平。
从过程的定义看,产品设计是指从确定产品设计任务书起到确定产品结构为止的一系列技术工作的准备和管理,是产品开发的重要环节,是产品生产过程的开始。
传统的设计主要指产品设计。产品的设计任务可以来自客户的委托,但往往更多来自本企业的产品开发规划。引起产品规划的市场刺激因素大致有:
1) 原有产品的技术和经济特性,这些可以从营销的反馈信息中获知;
2) 市场需求的改变,如市场期待有新功能或新造型的产品;
3) 顾客的建议、鼓励和批评;
4) 竞争对手产品的技术经济优点。
环境的刺激因素主要有:
1) 发生经济政策事件,如石油涨价,进出口限制,资源短缺等;
2) 新工艺和研究成果换代,如激光加工技术的应用,数控机床的推广等;
3) 现有产品和工艺方法的选用等。
来自企业内部的刺激因素有:
1) 企图利用有关开发和加工方面的设想和企业内部的研究成果;
2) 用新功能去扩大和开拓销售范围;
3) 采用新的加工方法;
4) 采用包装和加工结构的合理化措施,
5) 产品有较多样式类别,能得到足够宽的多种产品支持等。
产品设计过程:
产品设计过程是与生产力发展水平和设计习惯有关的。在参考国内外设计步骤,并结合我国的具体情况,产品设计主要包括以下5个步骤(如图1-12):计划阶段、设计阶段、试制阶段、批量生产阶段和销售阶段。
图1-12 产品设计过程
产品开发是从社会需求开始的,设计者经过大量的社会调查,应能预测和分析出市场的需求。需求分析包括对销售市场和原材料市场的分析,消费者对产品功能、性能质量、需求数量等的具体要求及竞争对手的产品优缺点等,经过各方面的详细分析和对开发可能性的产品开发的明确任务,并提出合理的设计任务书。
产品计划阶段主要进行需求分析、市场预测、可行性分析、确定设计参数及约束条件。在深入全面了解所要设计的问题后,列出详细的设计任务书(或要求明细表)作为设计、评价决策的依据。产品计划阶段的决策对企业影响很大。决策正确,并能适时开发出合乎需要的产品,将给企业带来很大的经济效益;若决策失误,将会浪费人力、物力,除给企业带来经济损失外,更多的可能是企业的形象和信誉等。
在设计阶段中,原理方案设计占有重要位置。原理方案设计是在功能分析的基础上,利用各种物理原理,通过创新构思、搜索探求、优化得出设计方案。设计方案(原理解)直接影响产品功能、性能指标、成本、质量、设计师应尽量运用他们的知识、经验、创新能力,并对计划阶段的资料信息进行分析、整理、构想出满足功能需求的合理方案。
结构方案设计包括对产品进行结构设计,即初步确定零部件形状,材料和尺寸,并进行必要的强度、刚度、可靠性设计,最后画出产品结构草图。
总体设计是在方案设计和结构设计的基础上全面考虑机器各部件的总体布置,运用配合、造型设计、包装运输、人-机-环境的合理关系,并画出总装图。
施工设计是将总装图折成部件图和零件图,标注技术条件及完成全部生产用图纸,并编制设计说明书、工艺文件、使用说明书等技术文件。
样机试制阶段是通过样机制造、样机试验、检查产品的功能及整机、零部件的强度、刚度、运转精度、振动稳定性、噪声等方面的性能,随时检查及修正设计图纸,以更好地满足设计要求。
批量生产阶段是根据样机试验、使用、鉴定所暴露的问题,进一步作设计修改,以保证产品质量,同时验证工艺的正确性,以提高生产率,降低成本,提高经济效益。
销售阶段的任务是通过广告、宣传、展览会、试用、订货会、促销等方式向社会推广介绍产品,接受用户订货。
产品售后服务主要指产品向社会推广后,设计人员要经常收集用户的意见(包括技术性能、操作使用、工艺、包装、维护等方面的意见),这些信息对于改进产品和继续开发新产品是很重要的(美国的调查结果表明,成功的技术革新和新产品60~80%来自用户的意见、批评或建议),如我国著名企业海尔集团能洗土豆的洗衣机的研制与开发就是在吸收农民的反馈意见后研制开发的。
从上分析可知,设计过程实质上是分析和综合的工作过程;由定性到定量的分析与综合,贯穿着整合设计过程。设计步骤是垂直有序的直线结构,但又有不断循环反馈的过程。对于不同类型的产品设计,其设计的目的、要求及条件不同,设计的步骤也不同。
产品设计的内容扩充:
企业生产一种新产品或者改造一种老产品,都要进行设计。根据设计对象不同,产品设计分为:
- 开发性设计:在设计原理、设计方案全都未知的情况下,根据产品总功能和约束条件,进行全新的创造。这种设计是在国内外尚无类似产品情况下的创新,如专利设计、发明性设计都属于开发性设计
- 改进性设计:在总的方案和原理不变的条件下,根据生产技术的发展和使用部门的要求,对产品结构和性能进行更新改造,使它适应某种附加要求。如电冰箱从单门变双门;单杠洗衣机变双杠洗衣机等。
- 系列化设计:在功能、方案、原理不变的条件下,只是对结构设置和尺寸加以改变,使之满足功率、速比等不同要求。如不同中心距的减速器系列设计;轮径大小不同的自行车设计;中心高不同的车床设计
- 测绘和仿制:按照国内外产品实物进行测绘,变成图纸文件,其结构性能不变,只进行统一标准和工艺改动。仿制是按照外单位图纸生产,一般只作工艺性变更,以符合工厂的生产特点及技术装备要求。
产品设计过程与产品的设计类型有关。再产品设计过程中,除根据设计工作类型确定设计步骤外,还必须注意下面几点:
1) 具体的设计步骤要根据设计工作类型,考虑设计人员的素质及有关影响因素来确定,要尽量简单、明了、便于有关人员协调工作。
2) 设计过程要有全局观点,不能只考虑设计对象本身的问题,还应考虑到整个企业的效益,注意对社会的影响。
3) 应注意避免在未彻底研究问题之前就得出结论。
4) 要时刻注意求取多个解决解答方案,避免解答的局限性。要注意抽象化,注意创造性方法的运用。
5) 要注意各阶段的评价和优选。评价中要注意减少主观因素的影响,注意通过模拟及实验进行评价,以求出既满足要求又有最大实现可能的方案
6) 各阶段应有明确目标,在各阶段终了时应有具体成果可供检查。
7) 要注意反馈及必要的工作循环。解决问题要由抽象到具体,由局部到全面,由不确定到确定。
1.6.3、机械图的设计
为了理解CAD/CAM/CAE系统,我们先讨论传统产品设计在计算机中的表示要求:机械图的设计。
传统的计算机辅助设计主要指机械图的计算机辅助设计,有时也叫计算机辅助绘图(Computer Aided Design)。下面以机械产品的设计为例讨论产品设计过程中各种机械图的设计概念。
产品设计阶段中的各种数据的保存和使用一直是计算机辅助设计/制造/工程(CAD/CAM/CAE)集成的主要对象,也是难点。在传统的CAD/CAM中,主要讨论产品的图形设计,有关产品的功能设计和分析基本不怎么讨论,CAD/CAM认为这是CAE的问题,需要涉及大量的数据和统计分析工具,另外有关产品设计图纸以外的非结构化数据基本没有纳入CAD/CAM系统中。CAD/CAM认为这是数据库系统的功能,但数据库设计人员又不懂CAD/CAM工程,所设计的数据库管理系统不能很好的支持设计和设计过程的管理。
在产品设计过程中,设计的表现有多种方式。机械图是产品设计过程中最常用的手段之一。机械图的设计是从机构简图到结构简图等一系列设计的过程如图1-13,并用机械图这一工程语言将设计者的思想和意图表达出来
图 1-13 机械图的设计内容与过程
1、机构简图的设计
所谓机构简图,是用简化了的图形来表达机构的工作原理和运动状况,既按比例表达机构的各个基本组成部分及相互联系的运动特性的示意图。
新的机器或设备的设计,不是凭空想出来的,而是在科学理论的基础上进行的。设计者从工作原理出发,首先设计该机器的机构简图,然后在此基础上,才能逐步进行机械图的设计。
任何机器或设备,不管它们的结构如何,一般都有工作机构、原动机、传动机构三部分组成。设计者按其工作机构所需要完成的工艺动作而选择了原动机和传动机构后,还必须将所选的机构连成一个有机整体,并进一步分析所选择的原动机和传动机构在传递运动和动力时是否都能满足工作机构的要求,以及它们之间在连接后能否作有规律的运动。这些都需要绘制成机构简图,以便通过分析、计算来判断所选择的机构的正确性。
2、结构简图的设计
结构简图是将机构简图用结构的形式简略地表示出来,为顺利地开展机械图的设计做好技术上的准备。
结构简图是对机构简图的连接支承方式确定之后而绘制出来的。它不但表示机构的工作原理、运动特性,而且还是表示机构的基本机构的一种示意图。也就是说它是机构简图在结构方面的具体化。
结构简图需要对机构进行部件划分,并选择基本的结构形式,为绘制机器或设备的部件装配图或总装图在结构方面创造条件,同时也为绘制部件装配图和装配总图提供依据。
由于结构简图是刚从机构简图逐步转变到具体结构上,因此结构简图只能绘制出初步的结构形式,有关零件的外形也只能画出相似的形状,各部件的具体结构还需要通过部件装配图的设计才能最后确定。
因此,结构简图应包括下列内容:
1) 要求一定数量的视图(包括剖面剖视图):以清晰地表示所设计的机器或设备为原则;
2) 按比例绘制结构简图:在绘制过程中可以发现所选择的结构是否与相邻的结构相碰;
3) 划分部件和零件:为以后绘制部件装配图作准备;
4) 表示连接支承的形状:以使整个机器或设备的结构具有完整性,为以后的部件装配图和零件图有关连接支承件的设计做好准备。
机械图的绘制除了遵循三面视图的投影规律外(基本视图),还有斜视图、局部视图、旋转视图、剖面视图等。
3、装配图的设计
装配图的设计是将设计者在机器或设备的设计过程中所进行的实验、设想、构思以及结构选择等方面,用图纸的形成将机器的全貌和各个部分表示出来,以便在生产过程中制定装配工艺规程、进行装配和检验以及使用过程中的维修之用。
装配图的设计是根据结构简图所划分的部件及基本结构型式进行设计的,是用部件装配图、零件图来表示机器或设备的部件与零件,然后在各部件装配图的基础上绘制成机器的总装配图。
装配图是表示机器的工作原理、零部件的相互位置、装配关系、连接形式,它是进行装配工作的依据。在进行机械图设计时,应先进行装配图的设计,然后才进行零件图的设计。
机器或设备的总装图不可能详细地反映出各零部件的相互位置和装配关系、连接形式,因此往往需要将机器或设备分为若干部分,每部分的装配图称为部件装配图。
装配图应包括下列主要内容:
1) 一定数量的视图:用来反映各零部件的相对位置、装配关系和连接形式
2) 标出主要尺寸:装配图上所注尺寸,主要包括装配图的性能(或规格)尺寸、装配尺寸、安装连接尺寸和外形尺寸等。
3) 技术要求:说明装配图的性能、装配、检验和使用方面的要求。
4) 序号、标题栏、明细表:表示装配图上的零部件的名称、材料、数量及备注说明。
4、零件图的设计
零件图是在部件装配图设计的基础上从部件装配图上分拆下来的。在部件设计过程中,根据部件的作用和使用要求,确定了每一零件的结构形状和尺寸,而在零件图的设计过程中将进一步检验在部件装配图的设计阶段对每一零件的选择和确定是否正确,并往往对个别地方和个别零件再进行局部改进。
装配图是由若干零件组成的,因此在装配图的设计过程中,设计者不可避免地要对装配图所包含的零件的结构进行了构思。而当装配图的布局大体确定后,就可以进行零件图的设计。因此零件图的设计是装配图设计的继续,并将对装配图所考虑零件具体化。而在零件图的设计过程中事实上又是对装配图的设计进行检查和核对,必要时为了满足零件的结构要求,装配图的某些结构还需要进行局部修改。
总结:
为支持上述的机械图设计要求,传统的计算机辅助设计系统主要研究图形的几何表示和关系。有关设计步骤之间的关系还是靠人工进行管理。当企业的计算机辅助设计应用到一定程度后,图纸的管理变得很难,人们就提出了工程图档管理的问题。这是工程数据库研究的原因之一。
另外,企业如何的将产品设计的信息传递到生产工艺部门和制造部门,即CAD系统数据和其他计算机系统的数据交互。这是工程数据库研究的另一个重要原因。
有关这部分的内容请参照朱文坚和梁丽编著的《机械设计方法学》(华南理工大学出版社1997)和吴柏枝编著的《机械图的设计与校对》(国防工业出版社1990)
|