软件学报  2018, Vol. 29 Issue (2): 320-339   PDF    
经验研究中情景感知需求获取与建模系统文献综述
栗元邦1, 彭蓉1, 季晶晶1, 王帮超1, 赖涵2     
1. 软件工程国家重点实验室(武汉大学), 湖北 武汉 430072;
2. 检测控制集成系统重庆市市级工程实验室(重庆工商大学), 重庆 400067
摘要: 情景感知(context aware)的应用是当前的一个研究热点,但是,由于情景的复杂性和不确定性,如何获取这些应用的需求面临着巨大挑战,需求工程领域出现了大量的研究来解决这一挑战.使用系统文献综述(systematic literature review)的方法首先分析了不同情景维度对需求获取与建模的支持,统计并深入分析情景感知的需求获取与建模中常用的方法,评估了不同经验方法的技术转移成熟度.最后,基于上述结论,给出了情景感知的需求获取与建模下一步的研究方向.
关键词: 系统文献综述     经验研究     需求获取     需求建模     技术转移    
Systematic Literature Review of Empirical Studies on Context Aware Requirement Elicitation and Modeling
LI Yuan-Bang1, PENG Rong1, JI Jing-Jing1, WANG Bang-Chao1, LAI Han2     
1. State Key Laboratory of Software Engineering(Whuhan University), Wuhan 430072, China;
2. Chongqing Engineering Laboratory for Detection, Control and Integrated System(Chongqing Technology and Business University), Chongqing 400067, China
Foundation item: National Key Research and Development Program of China (2016YFB051801); National Natural Science Foundation of China (61170026); Scientific and Technological Research Program of Chongqing Municipal Education Commission (KJ1500630); Chongqing Engineering Laboratory for Detection, Control and Integrated System, Chongqing Technology and Business University (1456026)
Abstract: Context-Aware applications become more and more appealing. Eliciting and modeling the context-aware requirements face significant challenges due to the complexity and uncertainty of context. A variety of studies have proposed methods to tackle these challenges. The methodology of systematic literature review is used to analyze which dimensions of context have been used for better requirements elicitation and modeling in context-aware situations, as well as which methods have been used in context aware requirements elicitation and modeling to evaluating the technology transfer maturity of the methods. Future research directions in context aware requirement elicitation and modeling are also discussed.
Key words: systematic literature review     empirical study     requirements elicitation     requirements modeling     technology transfer    

情景感知的系统是从环境中感知和处理情景信息以指导自身行为的系统[1].开发这样的系统是一项复杂的任务, 其复杂性不仅表现在情景的复杂性, 还表现在情景与用户任务、用户满意度的强相关性.情景感知的需求获取与建模是指如何确定待开发系统需要感知的情景维度, 并基于此感知系统当前所处的情景, 根据情景获取与建模用户使用系统的真实意图, 即用户需求.

情景维度的不可枚举性和易变性是情景的固有属性, 为情景感知系统的需求获取与建模带来了巨大的挑战:首先, 情景感知系统通常是分布式的且包含多个嵌入式系统, 这将会导致监控和感知的复杂性和数据的异构性; 第二, 不断变化的情景要求系统能够对相应的变化进行处理, 并做出正确或至少是令人满意的回应.

在获取情景感知系统的需求时, 有许多实用的传统需求获取的方法, 如面谈法、问卷法和头脑风暴法的成功案例.这些案例往往强调利用需求工程师引导用户描述自身与情景相关的需求, 但这类方法的效果往往与需求工程师和涉众的能力、积极参与程度强相关, 得到的情景需求的质量无法保障.因此, 也出现了许多新的情景需求获取方法或通过扩展已有需求获取方法使其更加适用于情景感知系统的需求获取.例如, 基于数据挖掘的方法致力于从历史数据中挖掘情景需求; 基于观察的方法侧重于通过观察发现情景与用户行为、情景与用户偏好之间的关系, 从而感知需求、预测需求; 基于场景法获取情景需求时, 往往通过扩展场景模板中描述情景的多种维度实现情景感知的需求获取.

在情景感知的需求建模中, 有研究对基于目标的需求建模方法进行扩展, 在其中添加描述情景的建模元素来实现情景感知的需求建模; 有研究扩展Unified Modeling Language(UML)类图以实现情景感知的需求建模; 有研究引入其他领域的理论, 如马尔可夫链来建模情景感知的需求.

如何综述现有方法, 对其进行分析, 找出当前需求获取与建模中存在的问题并指出下一步的研究方向, 对情景感知的需求获取与建模研究有重要意义.

本文使用系统文献综述的方法对经验研究中情景感知的需求获取与建模的已有工作进行综述, 主要内容包括:分析获取与建模情景感知需求的常用情景维度, 统计其出现频次; 着重讨论当前主流的情景感知的需求获取与建模方法, 评估其优缺点; 评估情景感知需求获取与建模方法技术转移的成熟度.

本文第1节介绍相关研究背景.第2节系统地介绍研究使用的方法.第3节给出综述的结果和分析.第4节分析本文的效度威胁.第5节介绍相关工作.最后, 第6节总结分析并给出未来的研究方向.

1 研究背景

需求工程是软件开发过程中的第1个阶段, 其目标旨在澄清涉众的需求, 分析并合成这些需求来确定系统需求.需求获取与建模是需求工程中的两个重要活动.

需求工程研究往往假设系统是在不变的情景中运行的, 然而随着环境计算和普适计算等新兴计算范式的出现, 这些假设往往是不成立的.在这些计算范式中, 系统需要感知情景变化, 从而调整行为来适应这些变化.然而, 情景固有的复杂性和不确定性, 给捕获和建模这些情景感知的需求带来了很大的困难.

为了应对这些挑战, 研究者们采取了多种策略:有的使用现有方法, 如基于场景法[2]来获取情景感知的需求; 有的通过对现有方法进行扩展, 如扩展基于目标的方法[3], 扩展UML[4]来获取与建模情景感知的需求; 有人提出新的方法, 如PC-RE[5]来获取与建模情景感知的需求.方法众多, 效果各异, 不一而足.

为了使研究者对研究现状有更清晰的把握, 指导使用者选择合适的方法获取与建模情景感知的需求, 本文采用系统文献综述的方法, 对近10年来的研究进行了系统的分析整理.具体而言, 首先分析了获取与建模情景感知需求常用的情景维度; 其次, 对经验研究中提出的情景感知的需求获取与建模方法进行了分类整理与讨论; 第三, 分析了需求获取与建模方法的技术转移成熟度.

2 研究方法

为了使综述更加正确、完整和全面, 本节遵循Staples等人[6]、Lisboa等人[7]和Kitchenham等人[8]总结的系统文献综述方法的经验和原则, 详尽地描述了综述实施的过程.

2.1 研究问题

为了达到综述的目标, 从以下4个方面预先定义了5个研究问题.

(1) 发表情况相关信息, 包括发表时间、发表期刊和涉及的研究领域;

(2) 获取与建模情景感知需求的常用情景维度;

(3) 情景感知的需求获取与建模中常用的方法;

(4) 情景感知的需求获取与建模研究中, 经验方法的技术转移状态.

具体问题见表 1.其中, 问题1旨在调查文献发表情况, 通过对其抽取数据的分析可以清晰地把握研究的趋势; 问题2旨在通过对获取与建模情景感知需求常用情景维度的调查, 分析不同的应用领域所关注的核心情景维度, 为开发者提供选取维度的参考; 问题3旨在对情景感知的需求获取与建模方法进行调查, 分析其基本思想、手段及其优缺点; 问题4和问题5旨在从评估方法、评估上下文、评估主体、评估规模、实验上下文、实验设计和实验验证等方面进行综合分析, 评估情景感知需求获取与建模研究的技术转移成熟度, 推动方法研究从科学探索走向实际应用.

Table 1 Research questions 表 1 研究问题

2.2 综述过程

综述过程分为6个步骤, 具体如图 1所示.

Fig. 1 Survey process 图 1 综述过程

步骤1:基于关键字的文献检索

根据研究问题选择了检索的关键字, 在ACM Digital Library、IEEE Xplore、Springer、EI Compendex、Elsevier ScienceDirect、ISI Web of Science和中国知网这7个数据库中进行了检索.检索中只对标题和摘要进行检索, 因为全文检索将会产生太多无关结果[9].检索时间区间为2006年1月~2016年12月的近11年间的相关论文.

步骤2:第1轮筛选

由第一作者和第三作者根据第2.4节中定义的纳入和排除规则, 对所有10 743篇论文的标题、摘要和关键字交叉进行检查.当两个人意见不一致时进行讨论达成一致意见.当根据标题、摘要和关键字无法决定论文去留时, 则保留该论文, 在下一步全文检查时再进行确定.

步骤3:第2轮筛选

在本轮中, 由第一作者和第三作者通读全文, 根据第2.4节中定义的规则决定文章是纳入或是排除.当两人意见无法达成一致时, 将由两人向仲裁小组陈述各自选入或者排除的理由, 最后由仲裁小组决定.仲裁小组包括课题组的研究成员.

步骤4:滚雪球

在第2轮筛选完成后, 共有87篇论文保留.为了不遗漏重要文献, 使得综述更为完整, 由第一作者实施了滚雪球的过程, 即检查现有文献的参考文献, 从中找出可能相关的论文.滚雪球共找出66篇可能相关的文献, 经过重复第1轮与第2轮的过程, 最后得到18篇相关论文, 其中13篇出现在原有的87篇论文中, 余下5篇加入, 最终论文集合共计92篇.

步骤5:数据抽取

在论文筛选工作完成后, 为了回答第2.1节中定义的研究问题, 文中设计了数据抽取表格, 具体见表 2.数据抽取表格设计确定后, 由第一作者和第三作者对92篇论文进行了数据的抽取工作.当抽取者对抽取内容的取值不确定时, 由其宣讲该论文, 并阐述取值中面临的问题, 由仲裁小组投票决定最终取值结果.

Table 2 Data extraction form 表 2 数据抽取表

步骤6:数据合成与分析

数据抽取完成后, 将抽取数据进行综合分析, 回答研究问题, 最终进行了效度分析.

2.3 搜索策略

详尽地搜索与甄别研究文献, 是系统文献综述不同于传统综述的主要特征.根据研究问题, 我们确定合适的关键字进行搜索.搜索字符串包括两部分:第1部分是“requirements elicitation” or “requirements modeling”, 指定调研对象为需求获取或需求建模; 第2部分是“context aware”作为限定条件, 限定调研范围为情景感知的需求获取或需求建模.通过对情景感知论文[10-12]和需求获取与建模论文的调研[13-15], 我们确定了初步的搜索关键字与其同义替代, 将初步关键字在数据库中进行试搜索, 在搜索结果中再发掘同义替代的关键字, 最终确定关键字搜索条件如下:

(requirement gathering OR requirement elicitation OR requirement capture OR requirement acquiring OR requirement identification OR requirement discovery OR requirement analysis OR requirement modeling)

AND

(context aware OR scenario aware OR ubiquitous computing OR pervasive computing)

确定中文的搜索关键字如下:

(“需求收集”或“需求获取”或“需求捕获”或“需求采集”或“需求识别”或“需求发现”或“需求分析”或“需求建模”)

(“上下文敏感”或“上下文感知”或“情境感知”或“情境敏感”或“情景感知”或“情景敏感”或“普适计算”或“泛在计算”).

2.4 纳入排除标准

当得到候选相关文献后, 需要通过纳入排除标准评估文献的真实相关性, 以便更加公正、客观地筛选.根据B.Kitchenham等人总结的系统文献综述的指导思想[8], 结合研究时间区间与研究问题, 确定了如下的纳入与排除标准.

●  纳入标准

  ➢  2006年1月~2016年12月期间发表的以英文或中文书写的经验研究论文;

  ➢  经过同行评审的期刊或者会议的研究论文;

  ➢  对于重复论文, 只保留1篇, 其余的排除;

  ➢  论文至少包含能够回答1个研究问题的内容.

●  排除标准

  ➢  不在检索时间范围内发表的论文, 或者非英文和中文书写的论文, 或者非经验研究的论文排除;

  ➢  书、教程、社论或4页以下的论文排除;

  ➢  全文不可获得的论文排除;

  ➢  不能回答研究问题的论文排除;

  ➢  不满足纳入标准的论文排除.

3 结果与分析

根据上述搜索策略与纳入排除标准, 最终论文集包括92篇论文, 列表详见http://www.pengronggroup.org/Appendix.doc, 抽取数据的结果表详见http://www.pengronggroup.org/result.xlsx.通过对抽取数据进行分析, 综述详细结果如下.

3.1 问题1:论文发表的时间、期刊和涉及的研究领域

本问题有助于理解当前在情景感知的需求获取与建模方面的研究进展.论文的年限分布情况如图 2所示.从图中可以看到:2011年~2016年发表的论文数量较多, 这表明相关方面的研究近年来受到了越来越多的关注.虽然2016年9篇相对于前几年略少, 但这不意味着关注度的降低, 而是因为检索时间是在2017年1月, 2016年发表的部分论文在相关的数据库中还没有录入, 因此无法检索到.

Fig. 2 Number of papers per year 图 2 每年论文数量

通过对论文发表分布情况的统计可知:在检索到的92篇论文中, 32篇论文(占比34.8%)发表在24种不同的期刊上; 其他60篇论文(占比65.2%)发表在44个不同会议上.不难看出, 一方面, 众多的期刊和国际会议都能够收录本方面的论文; 另一方面, 还没有显著占优的期刊或国际会议, 成为本方面研究者发文的首选.

为了能够从总体上分析92篇论文所涉及的研究领域和着眼点, 我们采用《中国计算机学会推荐国际学术会议和期刊目录》中对期刊和会议的领域分类方法, 按照论文发表的期刊和会议所属的领域对发表的论文进行了分类, 结果见表 3.其中, 归属于软件工程/系统软件/程序设计语言(简称软件工程)领域的期刊会议总计达到36种(占比52.9%), 发表论文达到53篇(占比57.6%).接下来, 按照各领域发文期刊和会议数量从高到低的顺序依次是:人机交互与普适计算领域期刊会议17种(占比25.0%), 发表论文19篇(占比20.6%); 交叉/综合/新兴领域期刊会议13种(占比19.1%), 发表论文18篇(占比19.6);计算机科学理论领域期刊1种(占比1.5%), 发表论文1篇(占比1.1%); 人工智能领域会议1种(占比1.5%), 发表论文1篇(占比1.1%).

Table 3 Numbers of journals/meetings and papers in research field 表 3 研究领域期刊/会议及论文数量

结果表明:情景感知的需求获取与建模问题不仅成为软件工程领域的研究热点, 还受到了包括计算机科学理论、人机交互与普适计算、人工智能及交叉学科等领域的广泛关注.对研究内容进一步分析可知, 不同领域的研究者研究方法、研究视角各有不同.例如, 软件工程领域的研究主要聚焦于提出新的方法或扩展已有方法(如目标法、场景法), 以应对情景变化带来的动态性、不一致性与不确定性等挑战性问题, 并注重讨论方法的可行性和可验证性等[1, 16]; 计算机科学理论领域的研究主要关注于用形式化的方式从各个角度建模、分析与验证情景感知的需求[17, 18]; 人机交互与普适计算领域的研究则主要关注于如何更好地支持特定人机交互场景与环境, 如智慧城市[19]、智慧矿山[20]、智能教育[21]的建模以及交互需求的满足[22, 23]; 人工智能领域的研究主要关注于如何使用数据挖掘和其他智能技术建模与分析影响需求变化的各种因素, 提高应用系统的个性化和智能化水平, 从而为情景感知的需求选择提供解决方案[24, 25]; 交叉学科的研究则注重利用其他学科的理论方法提高方法的可理解性、可操作性和工程化程度, 使得非专家用户更容易实现情景感知的需求获取与建模[26-28].

3.2 问题2:获取与建模情景感知需求的常用情景维度

因为情景的复杂性, 不同的研究者对于情景给出了不同的定义, 如Li等人将情景分为用户维度和系统维度两个维度[29].Dey使用计算维度、用户维度和物理维度来建模情景[30].Zimmermann将情景分为5个维度:个体维度, 时间维度, 位置维度, 活动维度和关系维度[10].

结合需求工程的背景, 本文选择了Zimmermann对于情景的维度分类作为获取与建模情景的维度标准.其中, 个体维度是指描述实体(自然实体、人的实体、人造制品实体和组实体)自身特征的属性; 时间维度描述与实体所处位置或所执行活动的相关的时间信息, 可以包括当前时间或者虚拟时间; 位置维度用来描述实体所处的物理或者虚拟位置; 活动维度表达实体在当前或者未来时间的活动; 关系维度用来表达在不同实体间建立的各种关系.这5个维度共同刻画了需求发生的特定情景, 即需求是特定实体在何时何地执行何种活动或建立何种关系时产生的.

图 3给出了在情景感知的需求获取与建模中, 各情景维度出现的频次.其中, 个体维度在92篇论文中均有出现, 其出现频率为100%;接下来, 按照出现频率从高到低的顺序依次是活动维度(91篇, 99%)、关系维度(79篇, 86%)、位置维度(58篇, 63%)和时间维度(34篇, 37%).

Fig. 3 Context dimensions and their occurrence frequency 图 3 情景维度及其出现频次

情景维度在情景感知的需求获取与建模中出现频次存在显著差异, 为了进一步分析其深层次原因, 我们对92篇文献中所介绍的方法涉及的情景维度与其实验或案例所属的应用领域之间的关系进行了分析, 得到了如表 4所示的结果(分类详情见http://www.pengronggroup.org/categories.doc).

Table 4 Usage of context dimensions in the application field 表 4 情景维度在应用领域中的使用情况

●  社交类

社交类应用是情景感知应用最常见的应用领域之一.在社交类应用中, 个体的属性特征、所偏好的活动和其人际关系是进行服务与活动推荐的主要依据.因此, 通过感知情景获取与建模用户需求时, 不可避免地需要使用个体维度、活动维度和关系维度的特征, 而时间维度和位置维度则根据应用的不同而可能有所取舍.

●  导航类

对于导航类及其衍生的旅游、购物等应用而言, 个性偏好和位置维度是其进行路径规划和服务推荐必不可少的情景要素, 而时间、活动和关系维度, 则视获取与建模的目标不同而不同.

●  在线服务类

在在线服务类应用中, 如在线购物、在线检索、在线阅读等, 个体维度和活动维度是经常涉及的, 因为个体维度用来分析操作人的身份信息, 活动维度可以用来分析用户的行为及偏好等信息, 从而帮助提供更好的推荐服务.

●  通信类

通信类应用的需求获取与建模侧重于根据用户所处情景选择合适的来电通知方式、通话方式、联系人管理方法等行为习惯而开发情景感知的应用.因此, 个体维度、活动维度和关系维度是其必须分析的情景维度.

●  图像与视频类

图像与视频类应用主要侧重于通过对图像和视频的分析, 识别其中涉及的用户和用户的主要活动以获取情景感知的需求.因此, 本类应用中, 个体维度和活动维度是其必须分析的情景维度.

●  普适系统类

普适系统类应用需要感知系统运行的情景, 并根据情景的变化而动态地调整系统行为.关注的情景维度越全面, 可以为系统决策提供的信息就越多, 从而促进决策的正确性和可信性.因此在本类实验中, 个体、位置、时间、活动和关系维度均有涉及.

分析结果表明, 各维度在不同情景中存在的必要性存在显著差异.由于情景感知的需求获取与建模必须关注需求提出者所处的情景、个性偏好等因素, 个体维度是每种应用中必须要考量的因素, 如在导航类应用中, 其具体表现为用户个体[31], 在在线服务类应用中, 其具体表现为账户个体[21], 因此, 其频率最高; 而关系维度和活动维度也是建模情景的关键因素, 仅在某些应用中的特殊场景下, 如词汇分析[32]中是非必要的, 因此, 其频率相对较高; 位置维度在导航类应用中是必要的[33], 而在在线服务类应用, 如在线学习[21]中是非必要的, 因此, 其频度较低; 时间维度仅在智能家居[23]、智能医院[34]等需要关注时间属性的普适系统类应用中是必要的, 而在其他场景中是非必要的.因此, 图 3中的频率差异是合理的.

鉴于获取与建模情景是需要花费代价的, 每个情景维度的感知都是需要资源的, 因此, 以上对不同应用领域关注的核心情景维度差异分析可以帮助需求分析人员学习现有研究的经验, 通过对项目所属的应用领域、当前可以分配的资源及一些客观限制如预算及时间表等来选择核心关注的情景维度.

3.3 问题3:情景感知的需求获取与建模方法

本文对情景感知的需求获取与建模中的常用方法进行了分析, 将情景感知的需求获取方法分为4类:基于群组调查的方法、基于数据挖掘的方法、基于观察的方法和基于场景的方法; 将情景感知的需求建模方法分为5类, 分别为:基于模型的方法、基于目标的方法、基于问题框架的方法、基于逻辑的方法和基于图的方法.

3.3.1 基于群组调查的方法

基于群组调查的方法是指通过需求工程师的调研或需求工程师与相关涉众的访谈以获取情景感知需求的方法.使用调研法时, 在调研内容中需加入对需求相关情景维度的调研, 如在调研普适信息系统相关需求时, 还调研与之相关的情景结构以支持情景感知的需求获取[35]; 与相关涉众的访谈侧重于通过与用户交流获取情景感知的需求, 如通过面谈的方法获取用户在地图中如何选择偏好城市区域的需求, 在访谈过程中启发用户表述影响其偏好的情景维度以实现情景感知的需求获取[36].

3.3.2 基于观察的方法

观察法是需求获取的基本手段之一, 以其能够通过观察涉众的行为、神态和所处环境获得第一手资料而成为情景感知的需求获取中的一种重要手段.虽然观察法能够准确地捕获到用户所处环境和行为轨迹, 但对于用户行为背后的意图或需求却只能采用推断的方法获得.因此在情景感知的需求获取中, 基于观察的方法往往会将观察法和访谈法、问卷调查法、群组讨论法等方法配合使用[37, 38], 通过在实施观察法前后组织相关涉众进行访谈、讨论等获得特定情景下的行为预期, 以便和观察法得到的实际情景和行为轨迹进行比对, 通过情景和行为偏离分析获取需求[39].对于只能观察被观察者行为而无法获知被观察者意图的情形, 则可以先选择一个受控的小规模群体实施上述过程, 以获得用户所处情景、行为与行为意图间的对应关系, 再将其作为训练数据, 引入机器学习方法, 如条件随机域方法[40], 推断观察法所获得的行为数据背后的用户意图, 将推断的用户意图与期望目标进行比对以获得情景感知的需求.

3.3.3 基于场景的方法

情景感知系统的动态性和复杂性使得用户在使用系统前不能明确地对需求进行描述, 基于场景法可以很好地帮助用户理解系统, 明确地表述系统需求, 因此在情景感知的需求获取中取得了广泛的应用.

基于场景的方法是指以场景为核心, 通过对场景进行定义、分析以获取情景感知需求的方法.

●  扩展场景定义的方法

使用文字描述和UML图形描述场景, 是两种常用的场景描述方法.基于场景的情景感知需求获取方法充分利用了文字描述场景的易理解性和UML图形建模的直观性, 结合传感器、用户访谈等其他手段, 辅助情景感知的需求获取.当定义的场景中有传感器可获取情景信息时, 通过定义的场景与传感器感知到的情景数据, 结合分析以获取情景感知的需求[41, 23]; 当缺少传感器之类的设备获取情景信息时, 则可以通过与领域专家或涉众交流以获取情景感知的需求[42, 43], 如通过与用户的面谈, 在向用户展示文字描述的一个场景后, 通过对用户提问5W1H的问题来引导用户描述与场景相关的个体、时间、位置等情景因素[42].

由于情景感知的需求获取中需要着重刻画需求产生的情景元素, 因此, 扩展UML成为许多研究者的首选[18, 44, 45].为了更好地获取如何在情景感知环境中传递消息、实现交互的需求, 文献[44, 45]对UML序列图进行了扩展, 引入功能参与者和情景参与者, 通过对参与者交互过程进行分析以获取情景感知的需求; 为了分析情景维度对系统状态及状态变化的影响, 文献[18]在活动图中引入事件触发分析过程, 通过对用户从初始活动状态到结束活动状态的一系列事件触发条件的情景因素进行分析, 以获取情景需求.

●  以过程为核心的方法

以过程为核心的方法是指以场景为核心提出一个易实施的过程, 指导非专家用户获取情景需求.在这些工程过程中, 主要阐述描述与分析场景中的个体、关系、位置等情景维度的步骤[46, 47].如, 文献[46]中提出了生成情景需求的5步法, 包括草拟场景大纲、绘制场景描述图、生成场景与场景需求等过程, 并在绘制场景描述图的步骤中加入了对于个体维度和关系维度的描述以实现情景感知的需求获取; 文献[47]中提出用纯文本描述场景概要、用卡罗尔元素分析场景和用BPMN(business process modeling notation)建模场景的过程.

●  利用工具辅助的方法

利用工具辅助的方法是指通过工具的模拟或辅助, 由分析者在场景中进行走察以获取需求的方法.模拟法一般使用虚拟现实技术模拟可能会威胁人身安全的场景, 以获取情景感知的需求[48].走察法则利用辅助工具, 如Scenario Presenter(SP)和Mobile Scenario Presenter(MSP), 在走察中由辅助工具传感器获取环境信息, 而使使用者专注于自身意图的表达和与系统的交互, 从而使场景的生成更加自动化、智能化[49-51].

3.3.4 基于数据挖掘的方法

物联网、传感网和互联网的融合发展, 使得具有情景感知能力的应用研发成为移动计算、普适计算、泛在计算领域研发共同关注的焦点.利用手机和各种专用的环境感知设备(包括温度、湿度、一氧化碳浓度传感器等)、体感设备(如心率监测仪、血糖监测仪)获取用户当前的时空信息、状态信息、行为信息等, 利用数据分析技术获取与预测用户需求, 成为情景感知的需求获取中的一类重要方法.

基于数据挖掘的方法主要通过对获取的各类数据进行分析和挖掘, 发现数据与需求间潜在的对应关系, 从而推测或预测用户需求.

当应用开发人员或领域专家能够准确描述感知或监测情景数据与需求之间的对应关系时, 往往采用基于规则的方法捕获与描述情景感知的需求[19, 20, 52], 如智慧矿山服务系统中[20], 利用瓦斯监控、温度监控、风速监控、一氧化碳监控等监控服务获取井下工作人员的环境信息, 并根据《国家煤矿安全规程》中的要求建立与描述监测数据与服务需求的关联关系.

当感知或监测的情景数据与需求之间的对应关系不明确时, 则往往使用统计方法、主成份分析、关联规则挖掘、协同推荐等方法找到预测需求最关键的情景数据特征, 并通过阈值计算, 确定情景数据与需求之间的关联关系, 进行需求或服务推荐[53-55].如, 文献[53]使用Apriori-M算法从移动用户群体贡献的移动数据中挖掘频繁行为模式<E, app>, 其中, E代表用户当前的情景信息, app代表用户当前使用的应用.即在特点情景E下, 用户通常会使用应用app.然后根据当前用户的情景, 找到匹配度最高的行为模式<E, app>, 将其作为用户在当前情景下最可能的需求, 进行应用推荐.

由于依靠数据挖掘技术发现的用户需求可能与用户实际需求存在一定的偏差, 因此, 一方面, 在条件允许的情况下也往往采用访谈法、讨论法或日志比对等技术, 确保数据挖掘方法推演出的情景模式能够真正代表某种需求产生时的情景, 如文献[24]中使用机器学习技术(J48算法)对海上航行采集的传感器数据如生物数据、环境数据和GPS数据进行分析, 获得划桨手在航海过程中对定时提醒、主动唤醒等应用服务的需求, 而后, 通过访谈和日志比对来确认需求的正确性.另一方面, 通过在小样本中建立观测数据与需求之间的对应关系后, 利用机器学习技术, 推断实际环境中的用户需求也是一种重要的方法[40].

3.3.5 基于模型的方法

基于模型的方法在情景感知的需求建模中取得了广泛的应用.与传统基于模型的方法不同, 情景感知需求建模中基于模型的方法更关注对于情景的刻画和描述.根据模型的抽象层次不同, 我们将基于模型的情景感知需求建模方法分为3个层次:基于通用情景模型描述语言支持情景感知的需求建模方法、描述特定应用情景模型支持情景感知的需求建模、描述特定维度情景模型支持情景感知的需求建模.

●  基于通用情景模型描述语言支持情景感知的需求建模

该类方法通过对情景特征和本质的分析建立通用的情景模型描述语言, 支持情景感知的需求建模[56, 28].如, 通过对情景特征和本质的分析, 提出了CML(context modeling language)语言支持对于情景的描述.CML语言通过定义感知事实类型、静态事实类型、推导事实类型、可选唯一性约束、质量标注等概念, 实现对情景的抽象描述, 以支持情景感知的需求建模[56]; ApplicationContextModel(ACM)通过定义应用实体、情景实体、情景属性、情景关系、起始情景、和结束情景这些元素, 实现对情景的抽象描述以支持情景感知的需求建模[28].

●  描述特定应用情景模型支持情景感知的需求建模

该类方法通过对特定应用的需求及需求关联的情景进行建模, 支持该应用的情景感知需求建模.如, 建立CASRM(context-aware service requirements model)模型[57]将需求与用户和开发者自定义的情景结合起来, 以实现情景感知服务系统的需求建模; 在软件产品线工程中加入描述系统运行外部环境的情景模型, 根据环境的变化添加或删除某个需求, 实现情景感知的动态需求建模[52].

●  描述特定维度情景模型支持情景感知的需求建模

该类方法专注于对特定情景维度进行建模.如, 通过建立多形态时钟需求概念模型, 将时间看作是时钟的集合, 每个时钟有自己的时钟类型、时间单位和一组可选性质, 通过对时钟的定义建模时间关联的需求[58].

3.3.6 基于目标的方法

基于目标的方法可分为两类:第1类为使用目标建模的方法建模情景感知系统的需求[38, 59-62], 如使用目标法建模病人在智能家居中进餐、睡觉、吃药、咨询医生等日常活动, 分析病人情景感知的需求[60]; 第2类为分析目标建模方法本身, 通过对其进行扩展, 加入情景描述和分析的元素实现情景感知的需求建模[63-65], 如在目标中加入情景变化点, 定义目标满足时的情景约束, 实现情景感知的需求建模[63].扩展i星框架, 通过建模个人特性、组织位置和服务相关角色实现情景感知的需求建模[65].

3.3.7 基于问题框架的方法

基于问题框架的方法通过定义一些常见的软件问题类型, 将复杂的软件问题分解为可以与问题框架匹配的子问题进行解决.因此, 在使用问题框架的方法建模情景感知的需求时, 其核心关注的内容是如何定义感知情景的问题框架指导情景感知的需求建模[66-68], 如, 文献[67]对情景感知系统进行分析, 识别出5个情景感知问题框架——情景监控问题、需求监控问题、需求适应性问题、基本功能问题、情景适应问题以指导情景感知的需求建模; 文献[66]通过扩展问题框架的形式化描述语言, 以定义由情景变化而引起的需求变化.

3.3.8 基于逻辑的方法

在情景感知的需求建模中, 用户状态随情景变化而变化是建模中需要考虑的重要问题.通过描述用户在情景中的状态和用户活动, 推理系统可能的状态变化, 可以实现情景感知的需求建模.如, 使用Petri网建模普适医院中病人状态和在特定状态下的吃药、呼叫护士等活动, 实现对病人情景感知需求的建模[34]; 使用连续时间马尔可夫链描述系统的状态集合、初始状态、状态转化矩阵, 并通过将状态分为稳态和瞬态, 以实现时间敏感的情景感知需求建模[17].

3.3.9 基于图的方法

图像化的方法可以实现需求建模的规范化与可视化, 然而传统的图形建模工具过于泛化, 难以建模动态的情景感知需求, 因此需要对其进行扩展, 加入描述情景的元素, 实现情景感知的需求建模[1, 15, 69].如, 对用例图进行扩展, 通过在其中添加系统与情景实体交互场景的描述, 提出了扩展用例元模型[69], 实现情景感知的需求建模; 对活动图进行扩展, 将活动图中的涉众划分为用户、情景感知系统、情景来源这3类, 并在活动图中添加情景对象、情景约束、适应活动等元素的描述符号, 实现情景感知需求的建模[1].

3.4 问题4:情景感知的需求获取与建模方法的技术转移现状

技术转移是研究者共同关注的研究问题, 也是提出的方法、技术能否被业界采纳的重要标志.为了调查情景感知的需求获取与建模方法的技术转移现状, 文中使用Ivarsson等人所提出的方法从4个方面对其技术转移状态进行了评估[70]:(1)评估方法; (2)评估上下文; (3)评估的主体; (4)评估规模.

●  评估方法

文献中用到的评估方法共有5种, 其中, 用案例研究的有47篇(占比51%), 用以人为主的实验的有19篇(占比21%), 用以软件为主的实验的有22篇(占比24%), 用经验总结的有3篇(占比3%), 用实地考察的有1篇(占比1%).结果表明:在确认或验证研究者提出的方法有效性时, 案例研究使用的最多.因为在情景感知的需求获取与建模方法中, 案例研究是一种方便、清晰且成本相对较低的, 用来验证方法的正确性和可用性的方法.以人为主的实验室实验也是常用的评估方法, 用领域专家的专业知识和经验对方法或得到的结果进行评估, 可以验证方法的合理性.

●  评估上下文

评估的上下文分为学术界和工业界两类.根据Guba等人的理论[71], 当评估在工业界上下文进行时, 可以增加将方法应用到另外一种情况的成功率.在69篇文献中, 评估是在学术界进行的(占比75%); 在23篇文献中, 评估是在工业界进行的(占比25%).这表明, 很多方法还缺乏工业实践的检验.

●  评估主体

Rogers提到, 评估的主体可能会对技术转移产生影响[72].根据主体的不同, 可将评估分为3种:第1种是以研究者为主体进行的评估, 有68篇文献(占比74%); 第2种是以实践者为主体进行的评估, 有21篇文献(占比23%); 第3种是以学生为主体进行的评估, 有3篇文献(占比3%).

●  评估规模

评估的规模也会对技术转移的程度产生影响, 评估规模越大, 结果可信性就越强, 技术转移的程度也就越高.根据规模的不同, 可将评估分为3种:第1种是简单示例的评估, 有51篇文献(占比55%); 第2种是中小规模真实案例的评估, 有18篇文献(占比20%); 第3种是工业级的评估, 有23篇文献(占比25%).规模的定义详见Ivarsson等人的描述[70].

情景感知的需求获取与建模的成熟度可以用评估方法、评估上下文、评估主体、评估规模这4个属性的组合进行评估.详细评估表格见表 5.

Table 5 Realism of the evaluations 表 5 评估的现实性

表 5中我们可以发现:

(1) 研究中对作者提出的方法进行验证最常用的情景是在学术界由研究者用案例研究的方法以一个简单示例进行验证;

(2) 只有11篇论文是在工业界由实践者以工业级进行评估的(表中以阴影形式表示).

以上分析可知:在情景敏感的需求获取与建模的经验型研究中, 技术转移的成熟度是不高的.

3.5 问题5:技术在工业中实际采用的程度

为了验证研究文献中实验的质量, 我们将实验上下文、实验设计和实验验证分别分为强、中、弱这3个等级[46].强是指描述详细且有组织性, 中是指有简单的说明, 弱是指没有提及.详细数据见表 6.

Table 6 Evaluation of the state of the actual adoption of technologies in the industrial 表 6 技术在工业中实际采用的程度评估

表 6中我们可以发现:

(1) 实验设计在所有的文献中均有描述, 即被标记为“中”以上, 这是因为在经验型研究中, 实验设计是必要的部分.而实验上下文和实验验证部分经常被大家所忽视.只有7篇论文在3个属性上得分均为强, 当每个属性均为强时, 实验结果是最令人信服的.因此, 为了提高技术转移的可信度, 对实验上下文和实验验证的描述应该加强.

(2) 与其他方法相比, 由软件为主的实验在3个属性上评级为强和中的最多.这是合理的, 因为实验的上下文更容易描述且很多统计分析的方法可以对实验结果进行验证.

4 效度威胁

尽管我们严格按照系统文献综述的过程来实施综述, 但效度威胁是不可完全避免的, 以下效度威胁仍然可能会存在.

●  遗漏相关文献

尽管我们根据软件工程中常用的数据库选择了搜索库, 但遗漏相关文献的可能性仍然存在.因此, 我们进行了“滚雪球”的过程, 并找到了5篇相关文献, 从而降低了相关的效度威胁.文中选择和分析了用英文和中文书写的文章, 英文是学术论文中常用的语言, 又加入了中文文献扩大了调研的范围, 因此这个效度威胁是可以接受的.

●  实验与方法的能力差异

文中在总结各方法对情景维度的支持情况时, 主要是根据方法描述、实验或案例来统计分析的, 可能导致分析结果与方法本身能力存在差异.但由于作者总是选择最适合体现自己方法能力和特色的视角描述, 因此这个差异是可以接受的, 分析结果是合理的.

●  潜在个人偏见

研究者的个人偏见可能会对分析结果产生影响, 为了消除这种偏见, 文献过滤和数据抽取的过程由第一作者和第三作者各自独立完成, 并对结果进行交叉, 结果不一致时由两人进行讨论达成统一意见.当两人意见不能统一时, 将不一致内容及各自理由提交到仲裁小组, 由仲裁小组决定.仲裁小组由1名博士生导师、3名博士和3名硕士组成.

5 相关工作

近年来, 有研究者对相关研究进行了一定的总结, 并发表相关研究文献.详细情况见表 7, 其中, Sreethar等人主要关注于从服务目录、中间件基础设施和情景发现协议等方面发现情景感知服务的最新研究进展[73]; Bencomo等人主要讨论了在自适应系统中不确定性所扮演的角色, 并讨论了相关的研究挑战和已有的解决方案[74]; Wiesner阐述了在物联网系统中需求工程面临的挑战[75]; Almaliki等人使用专家调研的方式来识别社会适应性的核心优势和面临的挑战[76]; Yang等人主要关注于自适应系统的需求建模和分析研究[15]; Hong等人提出了一个情景感知系统的分类框架, 该框架包括概念与研究层、网络层、中间件层、应用层和用户基础层, 可指导情景感知系统的开发[77]; Alegre等人分析了情景感知系统的开发方法及其没有广泛采用的原因, 并分析了情景感知系统开发过程中面临的挑战和应用的技术[78].尽管在这些文章中也涉及了情景敏感的需求相关的内容, 但其研究问题和关注点与本文差异很大.在本文中, 我们研究情景维度对于需求获取与建模的支持情况, 总结情景感知的需求获取与建模的方法, 并分析了在本领域中经验研究方法的技术转移成熟度.

Table 7 Related works 表 7 相关研究

6 结论与展望 6.1 结论

情景感知的需求获取与建模研究得到了包括软件工程、人机交互与普适计算、人工智能等领域研究者的广泛关注, 具体进展情况如下.

●  情景感知的需求获取方法

  ➢  基于群组调查的方法:该类方法的成功实施往往依赖于需求工程师丰富的需求获取经验、对目标领域的深入了解和相关涉众的积极参与, 本方法由于交互性不强, 通常用来获取静态的情景需求.

  ➢  基于观察的方法:该类方法通过对用户行为、神态等的观察分析实现情景感知的需求获取.由于观察法只能观察被观察者的行为而无法获知被观察者的意图, 因此, 当前基于观察的方法往往会将观察法和访谈法、问卷调查法、群组讨论法等方法配合使用, 以便将观察法推断的用户意图和行为轨迹与真实的用户意图进行比对, 通过情景和行为偏离分析, 以获取情景感知的需求.

  ➢  基于场景的方法:该类方法以其便于描述交互和“一事一例”的特征, 使其成为获取情景感知需求最常用的方法.为了增加基于场景的方法对于情景要素的获取与描述能力以及场景获取能力, 研究者们主要通过扩展场景描述方法的情景建模能力和提供易操作的过程来指导情景需求的获取.另外, 利用工具减轻情景建模的工作量, 也是本方面的一个新兴研究方向.

  ➢  基于数据挖掘的方法:该类方法侧重于通过数据分析, 更好地理解系统的运行环境、用户偏好和用户行为, 从而支持情景需求的抽取, 是一类新兴的需求获取方法.该类方法不仅能够解决用户参与需求获取意愿不高、需求描述难以准确完整的问题, 对于在无法观测的系统和无法重现的系统过程中获取情景感知的需求也是非常重要的.目前, 该类方法在普适计算领域已有广泛应用, 但仍然需要大量的手工操作.自动化程度不高、普适性不强是其主要问题.

●  情景感知的需求建模方法

  ➢  基于模型的方法:该类方法侧重于以提出的情景需求模型为核心描述、组织与分析情景需求.其中, 基于通用情景模型描述语言的需求建模方法抽象程度最高、适用范围最广.

  ➢  基于目标的方法:该类方法侧重于利用目标建模方法中的已有元素(目标、软目标、约束等)对情景需求进行建模; 当建模能力不足时, 增加新的建模元素, 如情景变化点, 以支持情景感知的需求建模.

  ➢  基于问题框架的方法:该类方法侧重于丰富问题框架的类型或形式化定义的描述能力, 使其能够满足情景感知的需求建模的需要.

  ➢  基于逻辑的方法:为了能够更好地建模情景变换引起的系统行为或状态变化, 引入了Petri网、马尔可夫链等逻辑方法, 从而支持情景模型的各种行为分析.

  ➢  基于图的方法:该类方法通过对常用的UML图形如用例图、活动图进行扩展, 加入描述情景的元素, 从而满足情景感知需求建模的需要;

●  情景感知需求获取与建模方法的技术转移成熟度

对评估方法、评估上下文、评估主体和评估规模对综述中涉及的情景感知的需求获取与建模方法的技术转移成熟度进行分析, 结果表明:本领域的研究在论证其提出的方法技术的有效性时, 大部分采用的是案例展示, 表明本领域研究提出的方法和技术还需要在工业环境中进一步接受检验.

6.2 展望

综上所述, 情景感知的需求获取与建模问题虽然得到了各领域研究人员的广泛关注, 但随着移动计算、普适计算、泛在计算的蓬勃发展, 构建具有情景感知能力的个性化、智能化应用的需求日益强烈, 其获取与建模方法面临的情景需求多样化、动态性和不确定性挑战将成为推动研究向纵深发展的动力.未来的研究方向主要包括以下几个方面.

●  经典需求获取与建模方法的有效利用与改造

访谈法、观察法、场景法、目标法等经典需求获取与建模方法不仅具有简单、高效、易于掌握和被充分检验的特点, 而且彼此之间存在优势互补, 因而成为构造情景感知的需求获取与建模方法的重要组成成分.在对经典需求获取与建模方法的扩展、选择和组合过程中, 充分考虑情景需求来源的多元化、情景需求形式的多样性、情景需求的动态性和不确定性, 是本方面未来研究开展的一个重要途径.

●  数据分析方法的有效利用及其与经典方法的融合

数据挖掘与分析是一种被证明行之有效的从情景数据中发现情景需求的重要手段.一方面, 如何利用数据挖掘、人工智能领域的最新成果提高情景需求发现的能力, 是未来的一个重要研究方向; 另一方面, 如何将数据分析方法与经典需求获取与建模方法结合起来, 使通过数据分析方法获得的情景需求能够得到确认与验证, 真正成为可用的情景需求至关重要.

●  自动化的情景需求获取与建模方法

现有的情景感知的需求获取与建模方法大部分是劳动密集型的, 情景的获取和建模工作大部分是通过人工分析和记录完成的, 工作量大、规范性差、效率低下.在情景感知应用中植入用户友好的情景及情景需求收集模块或单独开发辅助工具辅助情景需求获取与建模, 将是未来的发展方向.

●  实证研究的进一步加强

当前, 情景感知的需求获取与建模方法普遍存在实验规模较小、验证较弱的现象, 这不利于方法被工业界采纳.因此, 开展更多的经验研究来扩大实验的规模、加强实验的验证、提高方法的成熟度, 是情景感知需求获取与建模未来的研究方向之一.

参考文献
[1]
Al-alshuhai A, Siewe F. An extension of UML activity diagram to model the behaviour of context-aware systems. In: Proc. of the 2015 IEEE Int'l Conf. on Computer and Information Technology; Ubiquitous Computing and Communications; Dependable, Autonomic and Secure Computing; Pervasive Intelligence and Computing (CIT/IUCC/DASC/PICOM). IEEE, 2015. 431-437. [doi: 10.1109/CIT/IUCC/DASC/PICOM.2015.62]
[2]
Kwon O, Lee Y. A structured methodology of scenario generation and system analysis for ubiquitous smart space development. In: Proc. of the Ubiquitous Intelligence and Computing. Berlin, Heidelberg: Springer-Verlag, 2008. 90-104. [doi: 10.1007/978-3-540-69293-5_9]
[3]
Sutcliffe A, Sawyer P. Modeling personalized adaptive systems. In: Proc. of the Advanced Information Systems Engineering. Berlin, Heidelberg: Springer-Verlag, 2013. 178-192. [doi: 10.1007/978-3-642-38709-8_12]
[4]
Choi J. Context-Driven requirements analysis. In: Proc. of the Computational Science and Its Applications (ICCSA 2007). Berlin, Heidelberg: Springer-Verlag, 2007. 739-748. [doi: 10.1007/978-3-540-74484-9_63]
[5]
Sutcliffe A, Fickas S, Sohlberg MKM. PC-RE:A method for personal and contextual requirements engineering with some experience. Requirements Engineering, 2006, 11(3): 157–173. [doi:10.1007/s00766-006-0030-0]
[6]
Staples M, Niazi M. Experiences using systematic review guidelines. Journal of Systems and Software, 2007, 80(9): 1425–1437. [doi:10.1016/j.jss.2006.09.046]
[7]
Lisboa LB, Garcia VC, Lucrédio D, de Almeida ES, de Lemos MSR, de Mattos FRP. A systematic review of domain analysis tools. Information and Software Technology, 2010, 52(1): 1–13. [doi:10.1016/j.infsof.2009.05.001]
[8]
Kitchenham BA, Charters S. Guidelines for performing systematic literature reviews in software engineering (version 2. 3). Technical Report, EBSE Technical Report EBSE-2007-01, Keele University and Durham University, 2007.
[9]
Dyba T, Dingsoyr T, Hanssen GK. Applying systematic reviews to diverse study types: An experience report. In: Proc. of the 1st Int'l Symp. on Empirical Software Engineering and Measurement (ESEM). 2007. 225-234. [doi: 10.1109/ESEM.2007.59]
[10]
Zimmermann A, Lorenz A, Oppermann R. An operational definition of context. In: Proc. of the Modeling and Using Context. Berlin, Heidelberg: Springer-Verlag, 2007. 558-571. [doi: 10.1007/978-3-540-74255-5_42]
[11]
Bettini C, Brdiczka O, Henricksen K, Indulska J, Nicklas D, Ranganathan A, Riboni D. A survey of context modelling and reasoning techniques. Pervasive and Mobile Computing, 2010, 6(2): 161–180. [doi:10.1016/j.pmcj.2009.06.002]
[12]
Hong J, Suh E, Kim SJ. Context-Aware systems: A literature review and classification. Expert Systems with Applications, 2009, 36(4): 8509-8522. [doi: 10.1016/j.eswa.2008.10.071]
[13]
Peng R, Lai H. DRE-Specific wikis for distributed requirements engineering: A review. In: Proc. of the 201219th Asia-Pacific Software Engineering Conf. (APSEC). IEEE, 2012. 116-126. [doi: 10.1109/APSEC.2012.72]
[14]
Khan HH, Mahrin MNB, Chuprat SB. Situational requirement engineering: A systematic literature review protocol. In: Proc. of the 2013 IEEE Conf. on Open Systems (ICOS). IEEE, 2013. 123-126. [doi: 10.1109/ICOS.2013.6735060]
[15]
Yang Z, Li Z, Jin Z, Chen Y. A systematic literature review of requirements modeling and analysis for self-adaptive systems. In: Proc. of the Requirements Engineering: Foundation for Software Quality. Springer Int'l Publishing, 2014. 55-71. [doi: 10.1007/978-3-319-05843-6_5]
[16]
Almutairi S, Bella G, Abu-Samaha A. Specifying security requirements of context aware system using UML. In: Proc. of the 20127th Int'l Conf. on Digital Information Management (ICDIM). IEEE, 2012. 259-265. [doi: 10.1109/ICDIM.2012.6360140]
[17]
Filieri A, Ghezzi C, Tamburrelli G. A formal approach to adaptive software:Continuous assurance of non-functional requirements. Formal Aspects of Computing, 2012, 24(2): 163–186. [doi:10.1007/s00165-011-0207-2]
[18]
Benabbou A, Bahloul SN, Dhaussy P. An automated transformation approach for requirement specification. Procedia Computer Science, 2016, 91: 891–900. [doi:10.1016/j.procs.2016.07.107]
[19]
Li YZ, Xiao LY. A study on the smart city server system based on context-aware technology. Computer Engineering & Science, 2016, 38(3): 443–448(in Chinese with English abstract). http://www.cqvip.com/QK/94293X/201603/668250557.html
[20]
Xue X, Chang JK, Zeng ZF, An JY. Context-Aware intelligent services system for mine industry. Computer Engineering & Science, 2013, 35(9): 36–44(in Chinese with English abstract). http://manu44.magtech.com.cn/Jwk_infotech_wk3/CN/10.11925/infotech.2096-3467.2017.05.10
[21]
Newell D, Davies P, Austin R, Moore P, Sharma M. Models for an intelligent context-aware blended m-learning system. In: Proc. of the 2015 IEEE 29th Int'l Conf. on Advanced Information Networking and Applications Workshops (WAINA). IEEE, 2015. 405-410. [doi: 10.1109/WAINA.2015.25]
[22]
Anastassova M, Mayora-Ibarra O. Elicitation of user requirements for mobile interaction with visual and RFID tags: A prototype-based exploratory study. In: Proc. of the Human Centered Design. Berlin, Heidelberg: Springer-Verlag, 2009. 159-166. [doi: 10.1007/978-3-642-02806-9_19]
[23]
Oyama K, Dong J, Lu KS, Jiang H, Ming H, Chang CK. Situation-Theoretic analysis of human intentions in a smart home environment. In: Proc. of the Ambient Assistive Health and Wellness Management in the Heart of the City. Berlin, Heidelberg: Springer-Verlag, 2009. 125-132. [doi: 10.1007/978-3-642-02868-7_16]
[24]
Rook A, Knauss A, Damian D, Thomo A. A case study of applying data mining to sensor data for contextual requirements analysis. In: Proc. of the 20141st IEEE Int'l Workshop on Artificial Intelligence for Requirements Engineering (AIRE). IEEE, 2014. 43-50. [doi: 10.1109/AIRE.2014.6894855]
[25]
Evans C, Brodie L, Augusto JC. Requirements engineering for intelligent environments. In: Proc. of the 2014 Int'l Conf. on Intelligent Environments (IE). IEEE, 2014. 154-161. [doi: 10.1109/IE.2014.30]
[26]
Chiu DKW, Hong D, Cheung SC, Kafeza E. Towards ubiquitous government services through adaptations with context and views in a three-tier architecture. In: Proc. of the 40th Annual Hawaii Int'l Conf. on System Sciences (HICSS 2007). IEEE, 2007. 94-103. [doi: 10.1109/HICSS.2007.574]
[27]
Hong D, Chiu DKW, Shen VY, Cheung SC, Kafeza E. Ubiquitous enterprise service adaptations based on contextual user behavior. Information Systems Frontiers, 2007, 9(4): 343–358. [doi:10.1007/s10796-007-9039-2]
[28]
Zhu J, Pung HK, Oliya M, Wong WC. A context realization framework for ubiquitous applications with runtime support. Communications Magazine, IEEE, 2011, 49(9): 132–141. [doi:10.1109/MCOM.2011.6011744]
[29]
Li WP, Wang WS, Mo T. Survey of contextual computing. Journal of Computer Research and Development, 2015, 52(2): 542–552.
[30]
Dey AK. Providing architectural support for building context-aware applications[Ph. D. Thesis]. Georgia Institute of Technology, 2000.
[31]
Ruiz-López T, Noguera M, RodríGuez MAJ, Garrido JL, Chung L. REUBI:A requirements engineering method for ubiquitous systems. Science of Computer Programming, 2013, 78(10): 1895–1911. [doi:10.1016/j.scico.2012.07.021]
[32]
Knauss E, Meyer S, Schneider K. Recommending terms for glossaries: A computer-based approach. In: Proc. of the 1st Int'l Workshop on Managing Requirements Knowledge (MARK 2008). IEEE, 2008. 25-31. [doi: 10.1109/MARK.2008.8]
[33]
Huang J, Yang H, Liu L. Reconciling requirements and implementation via reengineering for context-aware service evolution. In: Proc. of the 201135th IEEE Annual Computer Software and Applications Conf. Workshops (COMPSACW). IEEE, 2011. 464-469. [doi: 10.1109/COMPSACW.2011.84]
[34]
Ismail I, Moussa F. User requirements deduction in a pervasive environment. In: Proc. of the IEEE Int'l Conf. on Next Generation Mobile Application, Services and Technologies (NGMAST). 2010. [doi: 10.1109/NGMAST.2010.21]
[35]
Ben Cheikh A, Front A, Giraudin JP, Coulondre S. An engineering method for context-aware and reactive systems. In: Proc. of the 20126th Int'l Conf. on Research Challenges in Information Science (RCIS). IEEE, 2012. 1-12. [doi: 10.1109/RCIS.2012.6240433]
[36]
Kumar C, Poppinga B, Haeuser D, Heuten W, Boll S. Geovisual interfaces to find suitable urban regions for citizens: A user-centered requirement study. In: Proc. of the 2013 ACM Conf. on Pervasive and Ubiquitous Computing Adjunct Publication. ACM Press, 2013. 741-744. [doi: 10.1145/2494091.2495999]
[37]
Nieminen MP, Tyllinen M, Runonen M. Digital war room for design requirements for collocated group work spaces. In: Proc. of the Human Interface and the Management of Information; Information and Interaction for Learning, Culture, Collaboration and Business. Berlin, Heidelberg: Springer-Verlag, 2013. 352-361. [doi: 10.1007/978-3-642-39226-9_39]
[38]
Pasquale L, Spoletini P, Pometto D, Blasi F, Redaelli T. Requirements engineering meets physiotherapy: An experience with motion-based games. In: Proc. of the Requirements Engineering: Foundation for Software Quality. Berlin, Heidelberg: Springer-Verlag, 2013. 315-330. [doi: 10.1007/978-3-642-37422-7_23]
[39]
Brill O, Knauss E. Structured and unobtrusive observation of anonymous users and their context for requirements elicitation. In: Proc. of the 201119th IEEE Int'l Requirements Engineering Conf. (RE). IEEE, 2011. 175-184. [doi: 10.1109/RE.2011.6051660]
[40]
Xie H, Chang CK. Detection of new intentions from users using the CRF method for software service evolution in context-aware environments. In: Proc. of the 201539th IEEE Annual Computer Software and Applications Conf. (COMPSAC). IEEE, 2015. 71-76. [doi: 10.1109/COMPSAC.2015.60]
[41]
Kaasinen E, Niemela M, Tuomisto T, Valkkynen P, Ermolov V. Identifying user requirements for a mobile terminal centric ubiquitous computing architecture. In: Proc. of the Int'l Workshop on System Support for Future Mobile Computing Applications (FUMCA 2006). IEEE, 2006. 9-16. [doi: 10.1109/FUMCA.2006.6]
[42]
Go K. A scenario-based design method with photo diaries and photo essays. In: Proc. of the Human-Computer Interaction, Interaction Design and Usability. Berlin, Heidelberg: Springer-Verlag, 2007. 88-97. [doi: 10.1007/978-3-540-73105-4_10]
[43]
Weiss A, Mirnig N, Buchner R, Förster F, Tscheligi M. Transferring human-human interaction studies to HRI scenarios in public space. In: Proc. of the Human-Computer Interaction (INTERACT 2011). Berlin, Heidelberg: Springer-Verlag, 2011. 230-247. [doi: 10.1007/978-3-642-23771-3_18]
[44]
Hussein M, Yu J, Han J, Colman A. Scenario-Driven development of context-aware adaptive Web services. In: Proc. of the Web Information Systems Engineering (WISE 2012). Berlin, Heidelberg: Springer-Verlag, 2012. 228-242. [doi: 10.1007/978-3-642-35063-4_17]
[45]
Hussein MZB, Han J, Yu J, Colman A. Scenario-Based validation of requirements for context-aware adaptive services. In: Proc. of the 2013 IEEE 20th Int'l Conf. on Web Services (ICWS). IEEE, 2013. 348-355. [doi: 10.1109/ICWS.2013.54]
[46]
Kwon O, Lee Y. A structured methodology of scenario generation and system analysis for ubiquitous smart space development. In: Proc. of the Ubiquitous Intelligence and Computing. Berlin, Heidelberg: Springer-Verlag, 2008. 90-104. [doi: 10.1007/978-3-540-69293-5_9]
[47]
Alawairdhi M, Aleisa E. A scenario-based approach for requirements elicitation for software systems complying with the utilization of ubiquitous computing technologies. In: Proc. of the 201135th IEEE Annual Computer Software and Applications Conf. Workshops (COMPSACW). IEEE, 2011. 341-344. [doi: 10.1109/COMPSACW.2011.63]
[48]
Gregoriades A, Hadjicosti J, Florides C, Pampaka M, Michail H. A driving simulator for discovering requirements in complex systems. In: Proc. of the Conf. on Summer Computer Simulation. Society for Computer Simulation Int'l, 2015. 1-10.
[49]
Maiden N, Seyff N, Grunbacher P, Otojare O, Mitteregger K. Making mobile requirements engineering tools usable and useful. In: Proc. of the 14th IEEE Int'l Requirements Engineering Conf. (RE 2006). IEEE, 2006. 29-38. [doi: 10.1109/RE.2006.38]
[50]
Maiden N, Seyff N, Grünbacher P, Otojare OO, Mitteregger K. Determining stakeholder needs in the workplace:How mobile technologies can help. Software, 2007, 24(2): 46–52. [doi:10.1109/MS.2007.40]
[51]
Seyff N, Graf F, Grünbacher P, Maiden N. Mobile discovery of requirements for context-aware systems. In: Proc. of the Requirements Engineering: Foundation for Software Quality. Berlin, Heidelberg: Springer-Verlag, 2008. 183-197. [doi: 10.1007/978-3-540-69062-7_18]
[52]
Inverardi P, Mori M. Requirements models at run-time to support consistent system evolutions. In: Proc. of the 20112nd Int'l Workshop on Requirements@Run. Time (RE@RunTime). IEEE, 2011. 1-8. [doi: 10.1109/ReRunTime.2011.6046241]
[53]
Liang W, Qian W, Wu Y, Peng X, Zhao W. Mining context-aware user requirements from crowd contributed mobile data. In: Proc. of the 7th Asia-Pacific Symp. on Internetware. ACM Press, 2015. 132-140. [doi: 10.1145/2875913.2875933]
[54]
Zhang Y, Lü TJ, Li HQ. Improved N-gram prediction model research based on context-aware environment. Microcomputer Applications, 2009, 30(9): 1–7(in Chinese with English abstract). https://www.wenkuxiazai.com/doc/308521df76eeaeaad1f33080.html
[55]
Shu FD, Zhao YZ, Wang J. User-Driven requirements elicitation method with the support of personalized domain knowledge. Journal of Computer Research and Development, 2007, 44(6): 1044–1052(in Chinese with English abstract). http://www.docin.com/p-507514131.html
[56]
Henricksen K, Indulska J. Developing context-aware pervasive computing applications:Models and approach. Pervasive and Mobile Computing, 2006, 2(1): 37–64. [doi:10.1016/j.pmcj.2005.07.003]
[57]
Huang J, Yang H, Xu L, Xu B, Zhang H. Supporting context-Aware service evolution with a process management requirements model. In: Proc. of the 2011 IEEE Int'l Conf. on Service-Oriented Computing and Applications (SOCA). IEEE, 2011. 1-8. [doi: 10.1109/SOCA.2011.6166229]
[58]
Chen XH, Liu J. Modeling software timing requirements: An environment based approach, 2013, 36(1): 88-103(in Chinese with English abstract).http://or.nsfc.gov.cn/handle/00001903-5/92016
[59]
Nakagawa H, Ohsuga A, Honiden S. Constructing self-adaptive systems using a kaos model. In: Proc. of the 2nd IEEE Int'l Conf. on Self-Adaptive and Self-Organizing Systems Workshops (SASOW 2008). IEEE, 2008. 132-137. [doi: 10.1109/SASOW.2008.35]
[60]
Dalpiaz F, Giorgini P, Mylopoulos J. Adaptive socio-technical systems:A requirements-based approach. Requirements Engineering, 2013, 18(1): 1–24. [doi:10.1007/s00766-011-0132-1]
[61]
Sutcliffe A, Sawyer P. Modeling personalized adaptive systems. In:Proc. of the Advanced Information Systems Engineering. Heidelberg: Springer-Verlag. DOI:10.1007/978-3-642-38709-8_12
[62]
Burnay C, Jureta IJ, Linden I, Faulkner S. A framework for the operationalization of monitoring in business intelligence requirements engineering. Software & Systems Modeling, 2016, 15(2): 531–552. [doi:10.1007/s10270-014-0417-1]
[63]
Lapouchnian A, Mylopoulos J. Modeling domain variability in requirements engineering with contexts. In: Proc. of the Conceptual Modeling-ER 2009. Berlin, Heidelberg: Springer-Verlag, 2009. 115-130. [doi: 10.1007/978-3-642-04840-1_11]
[64]
Ali R, Dalpiaz F, Giorgini P. A goal-based framework for contextual requirements modeling and analysis. Requirements Engineering, 2010, 15(4): 439–458. [doi:10.1007/s00766-010-0110-z]
[65]
Sun J, Liu F, Zhang H, Liu L, Yu E. Understanding the diversity of services based on users' identities. In: Proc. of the CAiSE. 2011. 612-626. [doi: 10.1007/978-3-642-21640-4_45]
[66]
Salifu M, Yu Y, Nuseibeh B. Specifying monitoring and switching problems in context. In: Proc. of the 15th IEEE Int'l Requirements Engineering Conf. (RE 2007). IEEE, 2007. 211-220. [doi: 10.1109/RE.2007.21]
[67]
Liu C, Zhang W, Zhao H, Jin Z. A problem oriented approach to modeling feedback loops for self-adaptive software systems. In: Proc. of the 201219th Asia-Pacific Software Engineering Conf. (APSEC). IEEE, 2012. 440-445. [doi: 10.1109/APSEC.2012.77]
[68]
Salifu M, Yu Y, Bandara AK, Nuseibeh B. Analysing monitoring and switching problems for adaptive systems. Journal of Systems and Software, 2012, 85(12): 2829–2839. [doi:10.1016/j.jss.2012.07.062]
[69]
Raji A, Dhaussy P. Use cases modeling for scalable model-checking. In: Proc. of the 201118th Asia Pacific Software Engineering Conf. (APSEC). IEEE, 2011. 65-72. [doi: 10.1109/APSEC.2011.25]
[70]
Ivarsson M, Gorschek T. Technology transfer decision support in requirements engineering research:A systematic review of REj. Requirements Engineering, 2009, 14(3): 155–175. [doi:10.1007/s00766-009-0080-1]
[71]
Guba EG, Lincoln YS. Fourth Generation Evaluation. Newbury Park: SAGE Publications, 1989.
[72]
Rogers EM. Diffusion of Innovations. New York: Simon and Schuster, Inc., 2010.
[73]
Sreethar S, Baburaj E. Investigation on context-aware service discovery in pervasive computing environments. In: Proc. of the Intelligent Informatics. Berlin, Heidelberg: Springer-Verlag, 2013. 393-403. [doi: 10.1007/978-3-642-32063-7_42]
[74]
Bencomo N. Requirements for self-adaptation. In: Proc. of the Generative and Transformational Techniques in Software Engineering Ⅳ. Berlin, Heidelberg: Springer-Verlag, 2011. 271-296. [doi: 10.1007/978-3-642-35992-7_7]
[75]
Wiesner S, Gorldt C, Soeken M, Thoben KD, Drechsler R. Requirements engineering for cyber-physical systems. In: Proc. of the Advances in Production Management Systems; Innovative and Knowledge-Based Production Management in a Global-Local World. Berlin, Heidelberg: Springer-Verlag, 2014. 281-288. [doi: 10.1007/978-3-662-44739-0_35]
[76]
Almaliki M, Faniyi F, Bahsoon R, Phalp K, Ali R. Requirements-Driven social adaptation: expert survey. In: Proc. of the Requirements Engineering: Foundation for Software Quality. Springer Int'l Publishing, 2014. 72-87. [doi: 10.1007/978-3-319-05843-6_6]
[77]
Hong J, Suh E, Kim SJ. Context-Aware systems:A literature review and classification. Expert Systems with Applications, 2009, 36(4): 8509–8522. [doi:10.1016/j.eswa.2008.10.071]
[78]
Alegre U, Augusto JC, Clark T. Engineering context-aware systems and applications:A survey. Journal of Systems and Software, 2016, 117: 55–83. [doi:10.1016/j.jss.2016.02.010]
[19]
李颖智, 肖来元. 基于情境感知技术的智慧城市服务系统研究. 计算机工程与科学, 2016, 38(3): 443–448. http://www.cqvip.com/QK/94293X/201603/668250557.html
[20]
薛霄, 常静坤, 曾志峰, 安吉宇. 基于情境感知的智慧矿山服务系统研究. 计算机工程与科学, 2013, 35(9): 36–44. http://manu44.magtech.com.cn/Jwk_infotech_wk3/CN/10.11925/infotech.2096-3467.2017.05.10
[54]
张芸, 吕廷杰, 李海强. 基于情景感知的N-gram改进预测模型研究. 微计算机应用, 2009, 30(9): 1–7. https://www.wenkuxiazai.com/doc/308521df76eeaeaad1f33080.html
[55]
舒风笛, 赵玉柱, 王继. 个性化领域知识支持的用户主导需求获取方法. 计算机研究与发展, 2007, 44(6): 1044–1052. http://www.docin.com/p-507514131.html
[58]
陈小红, 刘静.基于环境的多形态时间需求建模方法.计算机学报, 2013, 36(1):88-103.