面向3D虚拟展示的软件定制化系统研究

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

随着计算机三维处理能力的增长和电子商务的飞速发展,人们对产品展示已不再满足于传统的二维图像形式,对产品三维化展示的需求日益增多。

Unity3D是由Unity Technologies公司开发的一款让使用者轻松创建三维视频游戏、实时三维动画等类型互动内容的综合型交互式开发工具,拥有高度优化的图形渲染管道,可与一些虚拟现实开发工具相结合实现虚实叠加人机交互功能也可以实现虚拟现实世界的生成[1]。

虚拟现实技术通过Unity3D开发平台生成一个逼真的三维虚拟世界,具有直观性、沉浸性以及交互性等特点[2-4],该技术对产品三维展示方式起到重要的推动作用。

目前市场上已有许多行业把虚拟展示方式作为一种电子商务方案[5],基于三维虚拟展示技术的汽车、服装、家具、家电等展示平台可以将产品的虚拟展示和在线预订相结合[6-7],极大地降低企业的展示成本,并大大提高了销售效率,推动了三维虚拟展示软件的研究和发展[8-11]。

目前市面上大多数虚拟展示软件开发是针对单一用户的具体需求[12],面向单个产品三维模型来组织的,其界面、
面向3D虚拟展示的软件定制化系统研究
郝亚玲1,朱欣娟1,吴晓军2
1.西安工程大学计算机科学学院/陕西省服装设计智能化重点实验室,西安710048
2.陕西师范大学计算机科学学院,西安710119
摘要:针对传统三维虚拟展示软件中存在的编程过程复杂、开发周期长等缺陷,提出一个具有可定制性和扩展性面向虚拟展示的定制方法。

该方法基于虚拟现实技术和软件大规模定制技术,设计面向虚拟展示的定制化系统架构;基于软件功能树对系统功能解耦,抽取可复用的公共模块实现参数定制化,封装为功能接口供系统调用;同时定义了系统的定制模板,以描述和配置应用系统的基本信息和个性化定制,从而满足不同企业产品虚拟展示功能定制需求。

最后通过具体实例展示验证了该系统的有效性和实用性。

关键词:虚拟现实;软件定制;定制模板;构件
文献标志码:A中图分类号:TP311.52doi:10.3778/j.issn.1002-8331.1912-0074
Research on Software Customizing System for3D Virtual Display
HAO Yaling1,ZHU Xinjuan1,WU Xiaojun2
1.School of Computer Science,Xi’an Polytechnic University/Shaanxi Key Laboratory of Clothing Intelligence,Xi’an 710048,China
2.School of Computer Science,Shaanxi Normal University,Xi’an710119,China
Abstract:In view of the defects in the traditional three-dimensional virtual display software,such as complex program-ming process and long development cycle,a custom-made method with customizability and expansibility oriented to the virtual display is proposed.This method is based on virtual reality technology and software mass customization technology to design a customized system architecture for virtual display;the system decouples system functions based on a software function tree,extracts reusable common modules to customize parameters,and encapsulates them into functional interfaces for system calls;at the same time,the customized template of the system is defined to describe and configure the basic information and the personalized customization requirement of the application system,so as to meet the requirements of the customization of virtual display functions of different enterprise products.Finally,the effectiveness and practicability of the system are demonstrated by a concrete example.
Key words:virtual reality;software customization;custom template;component
基金项目:陕西省重点研发计划(2019ZDLSF07-01);国家重点研发计划资助(2017YFB1402102)。

作者简介:郝亚玲(1993—),女,硕士研究生,研究领域为图形图像处理与模式识别;朱欣娟(1969—),通信作者,女,博士,教授,研究领域为智能信息处理、数据挖掘等,E-mail:;吴晓军(1970—),男,博士,教授,研究领域为人工智能、大数据、复杂系统理论与应用等。

收稿日期:2019-12-04修回日期:2020-03-16文章编号:1002-8331(2021)05-0271-08
功能都是固定编码的,导致软件复用率低且开发费用高、周期长。

近年来,为了提高软件开发的效率,促进软件工程化发展,学者们提出了软件复用[13]、过程重组、基于构件的软件工程和领域工程[14]等思想和方法。

与此同时,大规模定制(Mass Customization ,MC )作为一种新的生产模式,以其独特的优势在软件开发中逐渐得到重视。

大规模定制是通过高度敏捷、柔性和集成的过程,为每一位客户提供满意的个性化定制产品和服务;是一种在不牺牲规模经济的情况下,以单件产品的制造方法满足客户个性化需求的生产模式[15]。

在大规模定制思想指导下,文献[16]在基于构件的软件工程、领域工程和并行工程的基础上,提出了面向大规模定制的软件开发模式(Software Development for Mass Customization ,SDMC ),该模式既可以满足客户的个性化需求,又可以实现软件开发的高效率、低成本。

文献[17]在SDMC 的研究基础上,进一步阐述了大规模定制背景下面向大规模定制的软件开发与定制过程,提出一种面向软件大规模定制的框架设计实现方法,并以灾害救助快速反应系统的开发为实例验证了该框架的可行性。

文献[18]从构件组装角度出发研究软件定制化问题,提出一种利用功能驱动的构件组装方法,以用户需求为驱动目标,进而实现构件的自动组装以提供满足用户需求期望的软件实体。

SDMC 将大规模标准化软件开发与面向单个用户定制开发有机结合起来,既能快速响应客户的定制需求,又可以实现软件产品的大规模生产,提高开发模式,缩短软件开发周期、降低成本,达到规模经济的效益。

目前对于大规模定制化软件的研究主要应用于二维领域,本文将面向大规模定制的软件开发模式与虚拟
现实技术有机结合,开发具有柔性和可定制性的面向虚拟展示的软件定制化系统——3D-SDMC 系统,该系统既可以快速、高效地定制满足客户个性化需求的虚拟展示软件,又可以实现虚拟展示软件的大规模定制,增加软件复用率,进一步推动大规模定制软件开发模式在三维领域的发展,这必将带来一定的学术价值和经济效益。

1系统功能分析及总体结构设计
1.1功能分析
目前,市面上三维虚拟展示应用已经比较广泛,经过对比分析发现主要有如下公共功能:对三维模型的旋转、缩放、换贴图和部件等。

因此,如何利用软件复用技术将通用功能抽取解耦,开发面向虚拟展示软件定制化系统,是亟待解决的问题之一。

3D-SDMC 系统除了具备普通虚拟展示软件的功能外,还涉及定制相关功能模块。

具体某一虚拟展示软件依据厂家的个性化需求进行定制实现,而需求是通过功能的设计来满足。

如图1所示为3D-SDMC 系统功能模块。

3D-SDMC 系统主要分为四个模块——管理员模块、厂家信息定制模块、产品模型定制模块和客户模块。

管理员模块主要管理厂家账号问题:(1)注册授权;(2)注销账户。

以下针对厂家信息定制模块、产品模型定制模块和用户功能模块进行详细介绍。

厂家信息定制模块和产品模型定制模块需要将厂家信息和产品模型相关信息上传至定制化系统,从而实现系统的可定制性。

厂家信息定制模块分为:(1)页面布局定制,各厂家风格和信息资源不尽相同,系统提供8个首页展示模板供厂家挑选。

(2)页面内容定制模块提供文字、图片、视频三种类型信息载体的自由组合及信
三维虚拟展示定制化系统
管理员模块
厂家信息定制模块产品匹配对应类别页面
产品类别定制模块
产品模型定制模块客户模块
首页内容定制
首页布局定制注销账户

册授权产品定义资源上传
浏览厂家信息产品模型交互
部件定义贴图定义
产品分类——贴标签
缩放旋转
材质选择
款式部件选择
文字定义图片定义视频定义
类别标签定义
图13D-SDMC 系统功能模块
息上传模板,最大程度满足不同厂家需求。

(3)产品类别定制模块满足不同厂家不同产品的分类标签,并自动生成导航图示。

产品模型定制模块实现虚拟展示模型信息和资源的上传,录入模型部件和贴图信息,并对模型部件和面料定义;上传的资源主要有3D和图片两种形式。

在用户功能模块,用户可详细浏览某一厂家的定制化虚拟展示系统,方便用户了解厂家信息和产品的整体结构及细节特征。

例如,用户可以详细浏览该厂家的信息简介,全面了解企业文化;可与产品模型交互及进行个性化设计,全方面观察产品的款式及材质、颜色、贴图搭配等细节效果。

1.2系统架构设计
3D-SDMC系统架构图如图2所示,采用C/S结构,服务器端存储多租户账号管理数据库和多租户的资源数据库,数据资源库包含厂家配置信息和产品模型资源,包括文字库、图片库、视频库、面料库、模型库等,分别以文档文件、图片文件、视频文件和3Ds MAX文件的形式存在;定制模板规范了多租户上传资源的逻辑关系,是实现3D-SDMC系统可定制化的核心模块。

客户端是厂家定制及产品虚拟展示系统,展示厂家宣传信息和产品三维模型,是系统的定制化产物,用户可通过登录系统了解某厂家的企业文化和产品,可以与三维产品模型交互并实时观看三维效果。

2系统定制功能实现的关键技术
软件定制过程的实质,是客户个性化需求从用户个人域向业务功能域和软件域转化的过程,是以软件形式体现客户的需求和意向。

本文提出“功能+流程定制”的方式来实现面向三维虚拟展示这一特定领域的定制过程,以满足不同客户个性化的企业信息和三维产品展示需求。

2.1定制模板定义
可定制的功能模型是实现3D-SDMC系统的关键。

因此,系统研究重点在于建立具有柔性、可复用的定制模板软件开发方法,不再是面向单个用户专门设计一个软件,而是同时完成一组软件设计,即对整个3D-SDMC 系统进行综合设计,分析解耦获得虚拟展示软件中的通用功能,设计并实现系统框架和模板。

定义1(厂家信息定制模板)在定制化系统中,厂家企业信息有宣传作用,厂家信息定制模板可用一个三元组F i=(ID Fi,S Fi,B Fi)表示,i=1,2,…,n,其中:ID Fi表示厂家标识,即厂家ID,是唯一区别一个厂家与其他厂家的标识;
S Fi表示可供厂家定制的首页布局样式集,每个厂家首页布局对应S Fi中的一个元素;
B Fi={W Fi,P Fi,V Fi}表示可供厂家定制的首页业务元素集,W Fi表示厂家介绍的文字,P Fi表示厂家用于展示产品和宣传企业文化的图片集,V Fi表示厂家用于介绍产品和企业的视频。

定义2(产品类别定制模板)产品类别定制模板可以用一个二元组K i=(K Ci,KI Ci)来表示,i=1,2,…,n,其中:
类别数据结构K Ci={ID Fi,PID j,P namei,C i};
PID j={PID1,PID2,…,PID m}表示产品ID,j=1, 2,…,m表示产品的数量;
P namej={P name1,P name2,…,P namem}表示对应于PID j 的类别/产品名称;
C i={C1,C2,…,C m}表示对应于PI
D j和P namej的类别/产品类别号,每个类别/产品号对应C i中的一个元素;
KI Ci表示产品的类别数据结构接口,接口对应产品的分级分类算法,用于连接厂家和该厂家所定制的产品分级分类信息,算法解析用户上传的类别名及产品名称,生成对应的产品分级分类结构。

定义3(三维产品模型定制模板)三维模型定制模板可用一个六元组P i=(ID Fi,PID j,A i,S i,SF i,M i,MF i)来表示,其中:
A k={A1,A2,…,A s}表示某一产品模型的部件名称,k=1,2,…,s,s表示部件名称的数量,一个产品由多个部件组成,每一个部件名称对应A k中的一个元素;
S k={S1,S2,…,S s}表示对应A k模型部件的款式名称,k=1,2,…,s,s表示款式名称的数量,产品的每个款式名称对应S k中的一个元素;
SF k={SF1,SF2,…,SF s}表示对应A k模型部件和款式的文件名称,每个三维模型款式名对应SF k中的一个元素;
M kj={M k1,M k2,…,M kv}表示对应A k模型部件和款式名称S k的材质集,j=1,2,…,v,v表示材质集中材质的数量;
MF j={MF1,MF2,…,MF v}表示对应某一产品模
Server Client
型的材质集M kj 的材质文件名,每个材质文件对应MF j 中的一个元素。

定义4(三维产品模型交互展示模板)该定制模板用于三维产品模型展示及交互,用一个三元组D i =(IDF i ,PID j ,F (PID j ))来表示,其中:
F (PID j )表示交互功能操作数据接口集,F (PID j )={F 放缩(PID j ),F 手动旋转(PID j ),F 自动旋转(PID j ),
F 部件选择(PID j ),F 贴图选择(PID j )},其中每一元素对应一个对产品编号PID j 的相应功能的API 调用。

2.2系统典型功能实现算法
2.2.1分级分类算法
在3D-SDMC 系统中,每个厂家都是一个独立租户,厂家通过定制模板上传产品分级分类信息后,根据输入的产品级别和分类信息建立分级分类定制项与产品之间的关联关系,从而为厂家自动创建产品类别存储架构对应的数据库实例。

类别号定义规则:用一组2位数的类别号代表在分级分类结构中处于第一级的分类名称;用4位数的分类号代表第二级的分类名称,其中前两位数值代表该第二级分类所归属的上一级分类;以此类推,从而实现对分类名称的类别号定义。

示例如下:服装01,服装分为上装0101和下装0102,上装再分为外套010101、衬衣010102和毛衣010103等等,如图3为服装局部分类编号示例图。

定制化的产品分级分类实现算法如下:算法1层次结构分类算法
输入:三维模型产品名称、上级类别名称(可以为Null )
输出:分级别的分类结构
(1)输入产品名称检索该分类是否已经创建,若已经创建返回第一步,若没有创建执行第二步。

(2)检索产品名称上级类别名称对应的类别号S (若上级类别名称对应类别号为Null ,则S =Null ),检索以S 打头的下一级类别个数m ,令n =m +1,将n 转换为2位字符串常量K 。

(3)创建分类名称及编号,编号由S 连接K 得到;将分类名称及编号写入数据库,转第一步重复执行,直到类别名不再输入,输出产品分级分类导航栏。

2.2.2虚拟展示界面UI 动态排列算法
3D-SDMC 系统可应用于不同企业,所以其产品类别、数量必定各不相同,产品对应的部件、款式等也不同,算法2实现了产品虚拟展示界面UI 按照产品部件个数动态排列控制按钮的功能。

如图4所示为UI 动态排列示例图。

算法2三维虚拟展示界面UI 动态排列算法UI 动态排列规则:按钮默认自身的大小规格为160×30,以左下角为坐标原点,始终沿垂直方向对称排列。

即奇数个按钮时,中心按钮压垂直平分线;偶数个按钮时,没有按钮压垂直平分线。

一组按钮个数为10,当大于10个时,激活第二组按钮,这里设置按钮个数最多不超过20。

输入:JSON 配置文档输出:展示界面按钮布局
(1)读取JSON 数据配置文档获得当前展示产品的按钮数量N 。

(2)获取屏幕垂直方向中心点坐标高度Y =屏幕高度/2。

(3)按钮默认自身的规格为160×30,界面中任意一个按钮m 的y 轴坐标值y 为:
y =ìíîY +(N -2m +1)×30(N ≥m ,0<m ≤10)Y +(N -2m -9)×30(N ≥m ,0<m ≤20)(1)(4)读取JSON 数据配置文档中当前展示产品文字
描述设置给按钮,生成布局。

2.2.3三维模型交互功能算法
在完成产品分级分类模块和三维虚拟展示界面实现UI 动态排列后,要实现三维产品模型展示模块的交互功能——旋转、缩放、换部件和贴图,人机交互的实现更利于全方位展示厂家产品,让用户更有参与感。

参考
图3分类编号示例图
01服装
02
01
上装
下装010*********外套衬衣
毛衣
短裤七分裤
长裤
01
02
0102
西服夹克休闲款商务款
Button1
(a )UI 数量为1时
Button1
Button2Button3Button4Button5
(b )UI 数量为5时
Button1Button9Button4Button6Button8Button2Button10
Button5Button7Button3(c )UI 数量为10时
Button1Button9Button4Button6Button8Button2Button10Button5Button7Button3Button11
Button19Button14Button16Button18Button12Button20
Button15Button17Button13(d )UI 数量为20时
图4
UI 动态排列示例图
市场上各三维虚拟展示软件,其交互功能都是具体一个三维模型固定编码的,本文研究的3D-SDMC 系统将交互算法做成可复用构件,通过定义各交互功能算法,将其封装成构件并赋予公共参数,使三维交互功能的固定连接方式变成了构件之间灵活连接方式,其中构件的集成实现了系统的可定制性。

为满足定制化需要,系统对JSON 配置文件中数据的读取,获得三维产品模型需要加载哪些功能脚本。

以旋转功能为例,其算法实现方法如下(C#实现):
算法3三维模型手动旋转算法输入:鼠标拖动三维模型输出:三维模型旋转对应角度
步骤1获取鼠标按着左键移动的位置。

步骤2将鼠标移动位置转化为x 轴坐标,获得鼠标移动相对于上个位置的相对度量值Input.GetAxis (“Mouse X ”)。

步骤3将X 值带入公式(2)求得旋转角度:angle=Input.GetAxis (“Mouse X ”)*
Time.deltaTime*speed (2)
angle 表示旋转角度,deltaTime 表示增量时间。

步骤4三维模型根据鼠标移动距离旋转一定角度。

定义好功能脚本后,系统对JSON 配置文件中数据的读取,需要动态添加脚本(C#实现):
//动态加载脚本
gameObject.AddComponent (Rotation ());
3系统开发
3.13D-SDMC 系统开发的产品集成过程模型
基于软件构件化的思想开发3D-SDMC 系统,构件具有独立性、功能性和互换性,可在不同系统中复用,所以软件构件化是实现软件大规模定制极为重要的技术,是实现软件复用过程的重点,是提高软件开发效率和质
量的最佳途径[19]。

本文在面向大规模定制的软件开发模
式的基础上,结合结合虚拟展示软件的特点,给出了如图5所示的3D-SDMC 系统开发的产品集成过程模型。

如图5所示,3D-SDMC 系统开发的产品集成过程模型呈二维结构。

时间维描述的是从客户订单到产品交付的过程,即软件开发过程,包括系统开发过程和软件定制化过程,可采用定制模型来描述;空间维描述的是将不同三维虚拟展示软件的相似部分进行通用性构件化处理,以增加软件复用率。

时间维的优化体现在系统构建多个可重用构件,供后期定制服务提供可靠的保障,显著提高软件开发效率。

空间维的优化体现在基于相关性思想和软件开发标准化技术确定构件的适用范围并提高其可重用性。

目前在软件开发行业,65%左右的开发成本花费在重复系统开发上[16]。

3D-SDMC 系统对不同应用软件进行分析解耦,对相似性功能进行归类,形成可共享和复用的构件资源,最大程度地减少软件开发工作量,提高系统的柔性和可定制性。

3.23D-SDMC 系统可定制界面的实现
为实现3D-SDMC 系统可定制的、可柔性扩展的界
面,本文以针对界面控件设计的JSON 配置文件为基础,将常用的控件进行封装,通过编辑JSON 配置文件中的参数及数据,可实现对界面控件自定义的增删改以及控件的相对应数据处理;通过对JSON 配置文件的数据提取分析,根据系统定义的控件属性,各个控件从JSON 配置文件中读取对应要设置的内容,从而实现界面的可定制性,且上述过程均不需要修改程序代码。

系统读取JSON 配置文件的原理如图6所示。

系统对JSON 配置文件中数据的读取,需要Unity 3D 开发平台类库的支持。

在C#中为开发人员提供了丰富的类库及类方法。

其中解析、操作JSON 文件可以使用JsonUtility 类、StreamReader 类、StreamWriter 类等。

JsonUtility 类用于JSON 数据的解析,该类虽然方便但是
图53D-SDMC
系统开发的产品集成过程模型
也有缺陷,不能用于读取文本内容,使用的时候必须转换为对象读取。

StreamReader 类用于从文件中读取数据,需要传入文件路径和编码格式,可以把JSON 导入内存当作数据来使用,是十分方便、有效的。

而Stream-Writer 类主要用于向流中写入数据,允许直接将字符和字符串写入文件,一般不针对二进制数据,比较适合用于JSON 配置文件的数据提取。

使用StreamReader 类和JsonUtility 类对JSON 配置文件中的首页布局参数属性进行提取解析的方法如下(C#实现):
//创建一个StreamReader 对象
StreamReader reader=new StreamReader (path );//创建读取方法
public string GetJsonString (string path ){StreamReader reader=new StreamReader (path );}
//读取登陆页配置文件
string layout=GetJsonString (GameData.instance.configPath+
“Layout.json ”);
//声明一个LoginGonfig 对象LoginConfig lc ;
//解析JSON 数据并应用到GameData
LoginGonfig lc=JsonUtility.FromJson<LoginGonfig>
(layout );
GameData.instance.loginLayout=lc ;
布局参数从JSON 配置文件中提取之后,将被用于设置应用程序的首页布局属性。

4实验结果与分析4.1系统应用实例
3D-SDMC 系统可应用于不同企业文化宣传和三维产品展示,本节以西服产品为例,实现了西服产品模型的三维虚拟展示定制化系统。

首先,对照图1所示3D-SDMC 系统功能模块图,需要定义西服类别和三维模型产品的部件及材质信息。

(1)西服类别标签定义
产品类别标签定义并不唯一,在这里定义服装为系统基类,根据本文前面提出的分级分类算法并结合图7可知西服类别编号为01010101。

(2)3D 模型产品定义
3D 模型产品定义包含西服的部件和材质,通过解析JSON 配置文件实现。

定义西服模型部件的JSON 配置代码如下:
{
"Components":[{
"index":0,
"name":"选择款型","style":0,
"childs":["标准型","修身型"]},{
"index":1,
"name":"选择领型","style":0,
"childs":["立领","平领"]},{
"index":2,
"name":"选择前门襟","style":0,
"childs":["单排两粒扣","单排三粒扣","双排三
粒扣"]
},{
"index":3,
"name":"选择袖叉","style":0,
"childs":["活袖叉","X 袖叉"]},{
"index":4,
"name":"选择袖扣","style":0,
"childs":["四粒平扣","三粒平扣"]},{
"index":5,
图6系统读取JSON
配置文件的原理图
图7
西服分类标签图
"name":"选择花眼","style":0,"childs":["无","有"]},{
"index":6,
"name":"选择手巾袋","style":0,"childs":["无","有"]},{
"index":7,
"name":"选择大袋","style":0,
"childs":["单开线","有"]},{
"index":8,
"name":"选择背部款式","style":0,
"childs":["单开叉","无开叉"]}]}
同理,以上述解析JSON 配置文件的方式可实现首页宣传信息布局选择和录入、产品类别和三维西服模型部件及材质信息的定义。

4.2实验结果
根据西服3D 虚拟展示定制化系统要求,
(1)实现了首页布局个性化定制功能。

如图8所示
是系统首页布局定制模板,在该模块定制化系统提供了多种不同的首页布局格式,供厂家根据自己企业的宣传资料信息选择合适的、个性化的首页布局,将厂家宣传信息录入选定好的布局模板中,实现个性化首页布局定制,西服3D 虚拟展示定制化系统首页宣传图如图9所示。

(2)实现了产品分级分类定制和导航功能。

如图10所示,在定义好规则的产品分级分类定制模块输入展示
产品的上下级详细分类标签及最底层产品名称,创建定制化西服虚拟展示系统的产品导航栏。

(3)实现了三维模型资源上传和展示功能。

如图11所示在产品模型定制模块录入西装模型的定制化信息——西服面料、部件模型、款式模型以及所对应的名称等信息,客户可以个性化选择所需功能构件,得到图12所示西服定制化虚拟展示效果图,在该模块实现了三维虚拟展示功能的重用性和可定制化,这是本文的研究重点之一。

本文所研究系统经过配置能高效地定制出
符合客户个性化需求的三维虚拟展示软件。

图8首页布局选择图
图9
首页宣传效果图
图10
西服类别定制图
图11
西服模型信息定制图
图12
西服的虚拟展示图
4.3结果分析
通过以西服3D产品为例,使用3D-SDMC系统定制了西服产品模型的三维虚拟展示系统,该系统极大地优化了面向三维虚拟展示软件开发的效率,实现了规模效益,且3D-SDMC系统界面更直观简单,即使非计算机专业人员也可操作。

与其他软件定制方法相比,3D-SDMC系统最大的特点是面向三维虚拟展示。

文献[17]对面向软件大规模定制的构件化领域框架进行了详细研究,并以灾害快速反应系统为实例进行定制化验证,文献[18]设计了一种利用功能驱动的构件组装算法计算出多种构件组装方法,为用户提供满足个性化功能定制需求的软件,并以一个虚拟的电子政务服务管理平台构件库进行仿真实验。

就界面定制、功能定制、是否面向3D领域等方面,表1将3D-SDMC系统与文献[17-18]进行了分析和比较。

表1主要从以下5方面进行了对比分析:
(1)界面定制。

文献[17]中界面定制运用XML配置技术,而3D-SDMC系统采用的是JSON配置技术。

JSON相比XML更快捷、更易解析、占用存储空间更小。

(2)响应时间。

文献[17]根据用户需求通过构件调度管理器调取对应构件,这个过程要将用户请求进行识别和功能归纳。

文献[18]研究的构件组装算法通过计算向客户提供多种方案进行选择,所有配置组装并完成才可得到定制化软件,该过程个性化程度较高,但是需要较多响应时间;3D-SDMC系统是实时响应的,定制化信息上传后即可实时看到效果,具有更快的系统响应速度。

(3)是否面向3D领域。

文献[17]和文献[18]均未涉及3D虚拟展示领域,3D-SDMC系统是面向三维虚拟展示领域的,具有产品三维虚拟展示各项功能。

(4)开发效率。

文献[17]和文献[18]需要开发大量构件库,且文献[17]所用XML技术本身就比JSON技术相对较复杂。

3D-SDMC系统专注于三维产品展示领域及其功能实现,所以开发的功能构件较少,开发效率更高。

(5)可扩展性。

文献[17]系统可扩展性较低,其配置模型较复杂,扩展需要涉及视图、功能构件的选择和模型的配置。

文献[18]有定义好的功能接口,把扩展的构件放在对应构件库即可通过请求调用。

3D-SDMC 系统通过添加定制模板和接口来扩展功能构件,视图通过JSON配置文件进行扩展,这种情况下文献[18]和3D-SDMC系统的可扩展性更高。

5结束语
实现面向领域的软件重用和服务,是软件应用领域一直以来追求的目标。

本文研究了工业产品虚拟展示软件可定制化的方法,围绕虚拟展示对中小企业的业务逻辑和功能需求进行了分析抽象,通过功能分析抽取、定制化模板匹配等方式,实现了虚拟展示软件的功能复用。

下一步工作的重点是借助云计算,实现基于可定制化虚拟展示系统云端快速搭建和部署各个企业信息系统。

参考文献:
[1]李婷婷,王相海.基于AR-VR混合技术的博物馆展览互动
应用研究[J].计算机工程与应用,2017,53(22):185-189. [2]谢嘉成,杨兆建,王学文,等.综采工作面三机虚拟协同关
键技术研究[J].工程设计学报,2018,25(1):85-93.
[3]赵沁平,周彬,李甲,等.虚拟现实技术研究进展[J].科技导
报,2016,34(14):71-75.
[4]张磊,朱培浩,卢凯杰.古典家具数字化保护方法研究进
展[J].计算机工程与应用,2018,54(18):26-33.
[5]朱欣娟,吴雪,李济,等.个性化定制产品虚拟展示技术及
实现[J].计算机技术与发展,2017,27(6):165-168.
[6]周忠,周颐,肖江剑.虚拟现实增强技术综述[J].中国科学:
信息科学,2015,45(2):157-180.
[7]THAM J,DUIN A H,GEE L,et al.Understanding virtual
reality:presence,embodiment,and professional practice[J].
IEEE Transactions on Professional Communication,2018,61(2):178-195.
[8]PARK M,IM H,KIM D Y.Feasibility and user experience
of virtual reality fashion stores[J].Fashion and Textiles,2018,5(1):1-17.
[9]雷金树,王松,朱东,等.基于游标模型的沉浸式医学可视
化非接触式手势交互方法[J].计算机辅助设计与图形学学报,2019,31(2):28-37.
[10]张波,孙俊,商蕾,等.基于HMD的船舶虚拟消防训练系
统设计及实现[J].系统仿真学报,2019,31(1):43-52. [11]贺宪亭.数字技术驱动服装产业定制化转型[J].纺织高校
基础科学学报,2018,31(1):19-24.
[12]罗昱.浅谈大规模定制的软件开发模式[J].电子制作,
2013(14):72.
[13]张伟,梅宏.面向特征的软件复用技术——发展与现
状[J].科学通报,2014(1):25-46.
[14]马晓星,刘譞哲,谢冰,等.软件开发方法发展回顾与展
望[J].软件学报,2019,30(1):3-21.
[15]姬景刚,郑国勤.软件产品大规模定制及演化的一种新模
型[J].计算机工程与设计,2006(5):825-827.
[16]操云甫,赵俊文,韩永生,等.面向大规模定制的软件开发
模式[J].计算机研究与发展,2002(5):82-87.
[17]徐俊,肖刚,张元鸣,等.面向软件大规模定制的构件化领
域框架研究[J].计算机应用研究,2006,23(11):62-65. [18]徐俊,王永兴,张元鸣,等.一种利用功能驱动的构件组装
方法研究[J].小型微型计算机系统,2012,33(4):746-750.
[19]罗昔军,马征.定制软件开发平台的研究与设计[J].计算
技术与自动化,2006(2):112-114.
表13D-SDMC系统与文献[17-18]系统实例比较
系统
文献[17]文献[18] 3D-SDMC 系统界面定制
XML

更简单的
JSON
响应时间
较快

快,实时
响应
是否面向
3D领域



开发
效率

较高

可扩
展性
较高

高。

相关文档
最新文档