基本要求1.理解软件重用的概念、组件的定义;
2.了解组件的特点及其与对象及函数库的区别;3.熟悉组件分类、组件构造的原则;
4.了解组件技术的发展及其在PDM的流程设计中的应用;
5.了解PDM流程应遵守的准则、PDM文档应满足的规范、PDM系统接口及交换标准、软件工程规范;
6.熟悉PDM系统实施内容与要求。
教学重点与难点1、重点:组件定义;组件分类;组件构造的原则;PDM流程应遵守的准则;PDM文档应满足的规范;PDM系统接口及交换标准;PDM系统实施内容与要求。
2、难点:组件的特点及其与对象及函数库的区别。
1 绪论内容
3.4.1 组件3.4.2 组件技术及其现状3.4.3 组件技术的应用3.4 组件技术
组件是系统实现中的最小单元,它是遵循某种开发规则和接口规范,并在底层平台上实现某种特定功能的程序模块,由此组成系统的各功能模块。
系统功能的实现可通过对组件的任意增添、修改、改进和臵换来实现系统的柔性和通用性,利用组件的平台无关性,使得此系统具有良好的开放与集成性。
CBSE基于组件的软件设计技术的基本思想和基本策略是利用可重用的、预测试过的且可独立更新的组件来装配软件。其目标是使得最终用户和开发者能够实现像计算机硬件的生产、消费那样享受到同样高层次的即插即用的应用互操作性。
3.4.1.组件
一、软件重用的概念软件重用是在软件开发过程中对所有使用过的和已产生的软件资源的涵盖,其目的是为了在开发新的软件系统时,通过重新使用已有的软件,减少开发工作量,从而提高软件生产率和质量。
软件重用分类:
数据重用、软件体系结构重用、详细设计重用、程序重用。从具体重用对象的不同又可分为:软件组件重用,
按具体重用对象又可分为组件的模块重用、程序重用、软件体系结构重用;软件生产知识的重用;软件所涉及的领域知识的重用;软件工具的重用。
二、组件的定义
狭义的软件组件是一段可以重用的二进制代码,具有即插即用的特性;它遵循二进制外部接口标准,内部实现细节对用户透明,软件组件通过“软件总线”进行交互。
广义的软件组件不但包括可以明确标识的软件代码,而且将软件开发中的需求文档、软件框架等都视为组件。
三、组件的特点
可重用和共享语言无关性可独立更新
独立执行或部署可靠性强自主多变性使用简便
四、组件的分类
按构成来分,组件可以分为原子组件和组合组件。原子组件是指不能将它进一步细分的组件,它是能完成某种功能的最小单位,这种构件一般是由单个类构成。而组合组件是由原子组件拼装在一起而得到的,组合组件可以提供比原子组件更多的功能。
组件的分类
按行为来分,组件可以分为客户端组件和服务器端组件。客户端组件一般是可视的,用于和用户进行交互,例如Java Applet和ActiveX控件;服务器端组件一般是非可视化的,用于为系统提供服务,完成商业逻辑和业务计算功能,服务器端组件一般都要求是多线程组件来减少服务器资源消耗,以便更好的提供客户服务。
组件的分类
按使用方式来分,组件可以分为白盒组件、灰盒组件和黑盒组件。白盒组件是指在提供组件的时候也提供组件实现的源代码,在使用这些组件时,程序员要修改相应的组件代码,然后集成到自己的系统中来。
灰盒组件只提供有关接口部分的源代码,用户只能在接口界面上作一些用户化的工作。
黑盒组件则完全不提供源代码,只提供组件的二进制可执行形式,这种组件是封闭的、透明的、独立的。因此我们经常用到的是这种黑盒组件。
组件的分类
按抽象层次来分,组件分为功能性抽象的组件、偶然组合的组件、数据抽象描述的组件、群集抽象描述的组件、系统抽象描述的组件。
按组件组合的执行层次来看,组件分为静态组件、可替换组件、动态组件。
五、组件与对象类及函数库的区别
1 组件与函数库
函数库是由一些软件模块组成的,虽然它也提供了一种软件重用的方法,如C函数库。但软件开发效率、可重用模块的大小和可重用性是相互关联的,即获得的效率与模块的大小成正比,而其可重用性与模块的大小成反比。因此,通过函数库中模块的重用来提高软件开发效率将存在一定的障碍。
函数库可扩展性比组件要差。组件是在不同环境中经过预测试,从而具有高的可靠性,而组成函数库的软件模块的可靠性就远不及组件。
2 组件与对象类
从面向对象的方法看,组件是指由对象或若干对象组成的,能完成某一特定功能的对象组合,或具有一定结构对象组合的组合。显然,组件涵盖了对象,两者之间是整体和部分的关系。但组件的功能并不是所组成对象的功能的简单相加,它有着比所组成对象的功能具有更不同、更强大的功能。
类是非独立的,即它一般要与其他类一起作用来完成某一完整的功能。而组件是自主的,它是以类之间的密切联系为特征,以整个功能架构而不是分成单个类来体现其作用的,而且在应用中无需对其代码进行重新编译和连接,可直接将其作为功能模块在二进制级上用于软件系统的装配。
六、组件构造的原则
1 标准原则由于组件具有共享和可重用性,在设计组件前应制定一套标准规则来进行指导,以确保设计构造出来的组件是有效的和正确描述的。
2 简单原则组件的接口界面应尽可能设计得简单且易于正确理解。3 参数化原则为实现组件的灵活多变性,应尽可能在设计组件时,将可变的部分数据参数化。
4 独立原则为使组件能适用于各种应用系统,组件的设计应不依赖于其他周围事物,具有高度内聚力。
5 可继承原则使组件能按合理的机制进行继承。
6 自解释原则组件的接口界面的输入、输出参数和组件内部的数据参数应能够较好地解释该组件的功能和结构,每一个组件都应具有完整、正确和方便使用的文档,类似于Help文件。
3.4.2 组件技术及其现状
一、组件技术CBSE是指用装配可重用软件组件的方法来构造应用程序和软件,即在软件开发过程中,若要设臵一个软件系统的内在功能,已不再从基本代码的编写开始,而是将具有某些特定功能的组件组合在一起来构成这样一个复杂的软件系统,其功能是通过观察组件接口的抽象描述获取的。由于组件可用许多不同的开发语言来实现,且组件具有嵌入后可以立即使用以及同一组件可同时应用于不同软件系统的自主多变灵活性,使得组件可分散在网络上,通过远程调用来实现不同的应用。而组件技术是以实现组件的即插即用为目标的。因此,应用组件技术开发的软件系统非常适用于网络环境上不同应用系统的集成。这与PDM的内在需求相一致,是采用组件技术作为实现手段的主要原因之一。
二、CBSE的现状
1 多种用于构造组件的基础技术已发展成熟2 CBSE思想扩宽了建立和发展软件系统的含义3 软件企业开始意识到支持系统的战略性意义
三、发展趋势
1 COM和EJB将继续保持原有的牢固地位,开发者在开发软件中将在两者技术模型中选择其一作为开发技术。2 软件产品将进一步组件化。
3 组件技术将开始影响软件开发过程。
4 对原有系统甚至是有缺陷系统的再利用。
3.4.3 组件技术的应用
一、组件设计的模型
组件模型是开发者定义软件组件建立的一套体系结构和API集,它包括组件和容器。实现组件设计的模型有许多,如ActiveX/DCOM、JavaBeans/CORBA模型等。1 基于组件的软件设计思想
2 利用组件构造软件系统的模型3.ActiveX/COM模型
二、组件技术在PDM中的应用
采用组件技术来实现这PDM方法的过程如P195图3-23所示。整个过程分为三个层次,第一个层次是资源组织层,主要工作是完成数据与组件的准备工作,即根据企业对PDM系统的具体要求,随流程中所需要的数据和组件进行确定并建库。第二个层次是功能配臵层,主要实现PDM系统中所要求的各种流程的框架构建,以及在已确定的框架中设定相应的属性参数集和属性方法集,使得各种流程能完成设定的功能。第三个层次是系统实现层,主要任务是将已组合的系统能够与PDM系统实现连接。
3.4.4.基于组件的软件开发方法(CBSD)
基于组件的软件开发可分为:
分析阶段、设计阶段、实现和局部测试阶段、组装和整体测试阶段。
这几个阶段可以有反复和迭代的过程。
3.5 标准化技术
3.5.1 PDM中的标准化
具体到设计部门相关的标准化工作和对PDM系统的要求可归纳为以下几个方面。1.概念的标准化2.数据的标准化3.产品的标准化4.工具的标准化5.方法的标准化6.程序的标准化
设计部门6个方面的标准化工作从低到高,和企业整个设计过程融合在一起,同样PDM系统也必须针对标准化管理工作采用不同层次的管理手段,以便形成一个完整的支撑体系。
ISO9000系统国际标准
国际标准化组织ISO于1987年颁布了ISO9000系统国际标准,1994年进行了修订。ISO9000标准将产品分为硬件、软件、流程性材料和服务四大类别。
IS09000质量标准基本思想:
(1)强调质量并不是在产品检验中得到的,而是在生产的全过程中形成的。
(2)为确保产品质量,ISO9000要求“在生产的全过程中,影响产品质量的所有因素都要始终处于受控状态”。
(3)可以用ISO9000标准证实“企业具有持续地提供符合要求的产品的能力”。
(4)还可以用ISO9000标准来“持续地改进质量”
二、标准的内容
目前ISO9000族包括下列五类标准:1 质量管理和质量保证术语标准
2 质量管理和质量保证标准的选择和使用指南标准
3 质量保证模式标准4 质量管理指南标准
5 质量管理的支持性技术指南标准
三、PDM流程应遵守的准则
PDM中流程控制主要是以产品的设计为核心的,要符合标准中的设计控制规范。设计控制是从设计策划开始到设计确认的全过程实施控制和验证,企业应制定并执行产品设计控制和验证的形成文件的程序,使设计的各个阶段都能按计划和程序在受控的状态下进行,以确保产品的质量满足顾客的要求。
四、PDM文档应满足的规范
PDM的文档管理功能需要与ISO9000标准接轨,将产品的数据以及相关的资料包括图纸、技术标准、检验规范、工艺文件、质量手册、程序文件、作业指导书、质量计划、质量审核报告等均纳入管理的范畴,在管理的过程中应注意:
1)文件资料的批准和分布2)文件和资料的更改
3.5.2接口及交换标准
系统的接口分为两部分:一部分是系统与系统之间的接口,如IGES,STEP等;另一方面是系统内部各环节之间的接口,如CGI等。
一、图形子系统内部的接口及标准1 图形设备接口CGI2 窗口管理系统3图形元文件CGM
二、通用图形标准
计算机图形是企业产品数据中的主要组成部分。图形接口的主要目标是减少程序开发成本和时间。应用程序可方便地在不同系统中移植,接口的设计应当独立于具体的物理设备。1 图形核心系统GKS
GKS是一个独立于语言的图形核心系统,它不依赖于所用的计算机和显示装臵的方式,提供应用程序和图形输入输出设备之间的功能接口。
GKS的主要功能是:
1)控制功能用于建立GKS环境。2)输入功能接收输入数据。
3)输出功能用于基本图元的操作与显示。4)输出属性功能用于产生图元属性。5)变换功能用于不同系统之间转换。
6)分节功能提供分组存储输出图元属性,系统对图节进行操作。7)元文件功能提供长期存储、通信和图形再产生的方法。8)语言联编功能保证GKS可移植性。
2 程序员层次化交互式图形系统(PHIGS)
PHIGS是继GKS之后被接纳的又一个图形标准。它为应用程序员提供了控制图形设备的图形软件系统接口及动态修改和绘制图形数据的手段;并为应用程序提供建立三维交互式图形系统的功能。应用程序在它的层次结构上建立自己的层次化逻辑结构的实体模型,并可交互地修改和操纵该模型。1)PHIGS的结构
2)PHIGS的图形输出和逻辑输入3)结构操作与结构遍历4)PHIGS接口
三、数据交换标准
1 初始图形交换规范IGES2数据交换规范(SET)3 产品数据交换标准PDES
4 计算机辅助设计接口(CAD*I)5 产品模型数据交换标准(STEP)
3.5.3 软件设计的标准化
软件工程标准化的作用
(1)可提高软件的可靠性、可维护性和可移植性(这表明软件工程标准化可提高软件产品的质量);
(2)可提高软件人员之间的通信效率,提高软件的生产率;
(3)可提高软件人员的技术水平,减少差错和误解;(4)有利于软件管理;有利于降低软件产品的成本和运行维护成本;
(5)有利于缩短软件开发周期。
软件设计的标准化
一、软件标准的产生二、软件标准的现状三、软件标准的发展
四、软件企业的评估
3.5.4 PDM系统实施规范
一、系统实施内容二、系统实施要求三、组织机构
小结
1.2.3.4.5.6.7.
组件定义;组件分类;
组件构造的原则;
PDM流程应遵守的准则;PDM文档应满足的规范;PDM系统接口及交换标准;PDM系统实施内容与要求。
因篇幅问题不能全部显示,请点此查看更多更全内容