国内外许多大学和研究机构对移动推荐展开了研究。用户所处情境和实时的
需求是息息相关的
[19]
。移动带来情景的切换,不同情境信息会对用户需求产生不
同的影响。文[15]提出了一个层次化的移动推荐系统研究框架,考虑到移动情境
信息,以更好地生成推荐结果。移动用户在不同的地理环境下偏好会有所不同,
文[20-22]利用位置情境更准确地获取移动用户偏好并提供个性化推荐;时间对移
动用户信息需求的影响也很重要,文
[23,24]
利用时间情境以更准确地获取移动用户
偏好,并满足移动推荐的实时性要求;移动用户的信息需求可能不仅受一种情境
的影响,文[25,26]考虑了位置、时间、天气等多种情境同时作用下的推荐。
作为一个新兴的研究领域,移动推荐系统可以深入研究的方向有很多,从信
息多态方面来说,移动推荐需进一步研究并解决移动情境下用户需求的获取问题。
用户需求是包含用户偏好、用户兴趣在内的、广义上的业务需求
[2]
。获取用户需
求是推荐的前提,而移动应用中具有大量的隐性动态需求。随着移动情境的引入,
移动需求获取技术面临着更大数据量和更高计算复杂度的挑战。如何有效检测出
对用户需求有影响的移动情境并计算其对需求的影响程度,快速、准确地获取移
动用户的需求,依然是移动推荐系统的难点。
(3)自适应动态演化技术助力软件运行时的多态变化
软件自适应是为了保证持续、高质量地提供服务,软件对自身行为进行主动
适应性调整的活动
[27,28]
。软件动态演化是指软件系统在运行期的变化活动
[29]
。文
[30]将自适应和动态演化结合起来,提出软件系统是在不断适应环境和需求的变
化过程中持续演化的。早期人们试图通过研制动态程序语言来开发可动态演化的
软件,但程序语言层次上的动态演化机制仅局限于函数、类方法和对象等小粒度
的替换,一般只支持预设的有限变更
[31]
。在当前工程实践中,动态 AOP、动态加
载、服务组合等技术在不同粒度上支持软件的在线修改,中间件具有的命名服务、
反射技术和动态适配机制为软件动态演化提供了基础设施。
自适应动态演化的主旨在于提升软件在运行期满足需求和适应情境的能力 。
Nauman A
[32]
定义了运行时需求表达的一个最小概念和规则集合,用以解决动态演
化的需求满足问题;北京大学实现了一种基于软件质量动态评估的演化机制
[33]
。
在开放环境下,环境变化难控,软件应情境变化而演化,且这种演化经常不能预
先设定。为应对这种情况,情境显式表达并内置于可运行系统中以推动软件动态
演化。Mahmoud H
[34]
等以情境模型的构建和演化为核心,支持应情境变化而产生
的非预设软件更新。在国防科大的 UbiStar 中,Auxo 框架维护显式的情境模型和
体系结构模型,并基于这些模型来驱动软件的在线变化
[35]
。南京大学以情境建模
与管理为核心,提出了面向网构软件的情境驱动结构模型,初步形成了一种构建
自主感知并自动适应开放情境的软件系统技术框架
[36]
。
由于移动情境多源频变、用户需求多元动态,当前对移动环境下软件究竟如
何演化以与情境相适应,需求变化究竟如何作用于软件演化的规律普遍认识不足。
因此,迫切需要深入探索移动环境下软件适应多变情境、满足动态需求的交互模
式和实现机制,为移动应用软件的多态演化提供理论指导。
参考文献
[1] 官建文,唐胜宏. 中国移动互联网发展报告(2014)[M]. 社会科学文献出版社,2014.6.
[2] 孟祥武,王凡,史艳翠,张玉洁. 移动用户需求获取技术及其应用[J]. 软件学报,2014,25(3):439-
456.
[3] Schilit WN. A system architecture for context-aware mobile computing[D]. New York: