在当今计算技术无处不在的时代,从我们口袋里的智能手机到日益智能的汽车、无人机和工业物联网设备,普适计算(pervasive computing)已经渗透到生活的方方面面。然而,这些智能设备的广泛普及也带来了新的挑战:移动应用的可访问性设计缺陷可能导致部分用户无法正常使用;自动驾驶汽车的软件故障可能引发严重安全事故;物联网设备的能源泄露问题会缩短设备续航;而新型编程范式如协作双臂机器人的可视化编程,则对传统软件开发方法提出了全新要求。
正是在这样的背景下,软件工程领域开始将目光投向普适计算这一相邻子领域。作为计算机科学领域的重要分支,软件工程长期专注于软件系统的设计、开发、维护、测试和评估等核心问题。而普适计算则涉及嵌入式软件、人机交互和网络通信等关键技术。两者的交叉融合为解决现实世界中的计算系统可靠性问题提供了新的思路。
在2024年4月14日至20日于里斯本举行的第46届国际软件工程会议(ICSE 2024)上,研究人员展示了多项与普适计算密切相关的前沿工作。这些研究从软件工程的独特视角,为普适计算系统的开发、测试和优化提供了创新性的解决方案。
关键技术方法
研究人员主要采用了多种软件工程研究方法:通过静态代码分析和堆栈跟踪技术(如CrashTranslator)检测移动应用崩溃原因;利用日志异常检测方法分析无人机(UAV)特定软件故障;采用开发者访谈研究法探究软件开发人员对能源消耗问题的认知(如Energy Patterns for Web研究);通过系统测试方法验证信息物理系统(Cyber-Physical Systems, CPS)的控制循环可靠性;使用剪贴板监控技术(ClipboardScope)评估移动应用隐私风险;以及在多供应商环境下进行工业物联网安全威胁分析。
EVALUATE, VALIDATE, PROOF
智能手机作为最普及的普适计算设备,自然成为软件工程研究的重点对象。MotorEase研究通过分析应用截图,检测图标样式、尺寸和持久性等方面的可访问性设计违规问题,旨在发现并改进移动应用的可访问性缺陷。与传统的以用户为中心的可访问性研究不同,这项工作更注重于自动化检测设计规范的符合程度。
在系统评估方面,普适计算研究通常关注时间性能、能耗或小规模机器学习模型的内存使用情况。而软件工程社区则提供了补充视角——通过分析源代码、错误报告或日志来理解系统行为。例如,CrashTranslator通过移动错误报告的堆栈跟踪来自动检测移动应用崩溃,另一项研究则利用日志异常检测来理解无人机特有的软件错误。这些方法不仅帮助开发者更高效地修复故障应用,也为普适计算研究者开展测量研究提供了新的技术路径。
DEVELOPERS DESERVE TO BE HEARD,TOO
Energy Patterns for Web项目将移动能耗模式研究扩展到Web开发领域,独特地关注开发者对软件能耗问题的认知。通过访谈研究,研究人员发现开发者视角在普适计算研究中往往被忽视。这一发现可广泛应用于各种普适软件场景,例如了解嵌入式程序员对能耗问题的熟悉程度,或者通过访谈物联网解决方案开发者来评估研究原型的实用性。
在编程范式方面,协作双臂机器人的研究挑战了传统的文本编程观念,引入了可视化块编程的新思路。这引发了关于“普适编程”的思考——在设计普适系统时,是否需要考虑系统实际的产品化编程方式?开发人员的学习曲线如何?这些问题的探讨超越了传统的C和Python编程范畴,为普适计算领域的软件开发提供了新的视角。
FROM LAB TO REALITY
隐私和安全问题在普适计算论文中常被列为局限性或未来工作方向。然而,随着普适计算的普及,这些现实问题的重要性日益凸显。ClipboardScope研究通过分析移动应用中的剪贴板使用情况,揭示了看似无害的功能可能带来的隐私风险——用户很难知晓其剪贴板数据最终流向何处。
另一项研究关注Android恶意软件检测器在挑战性环境下的表现,这与普适计算研究者熟悉的实验室环境与真实世界差异问题相呼应。在更大尺度上,关于多供应商环境下工业物联网安全威胁的研究表明,未来的研究原型用户可能是充满遗留系统的工业公司,这要求研究者扩展对“用户”概念的认知,从单个个体转向更复杂的组织架构。
智能汽车系统是这一挑战的典型代表。REDriver研究讨论了自动驾驶汽车的运行时问题,凸显了车辆作为互联网依赖设备所面临的软件可靠性挑战。随着汽车变得越来越智能和互联,如何处理这些系统的软件基础成为研究和工业界共同关注的重点。
研究结论与意义
从软件工程中,普适计算研究者可以学到严谨的方法论报告、研究问题阐述以及方法选择合理性的评估。相比之下,普适计算研究有时过于注重在新颖环境中运行“酷炫”设备,而忽视了方法论的深入思考。这可能导致推理上的缺陷,以及忽视其他可用方法,如代码级分析或开发者访谈。
然而,普适计算研究在潜意识中处理局限性和现实挑战的能力,是值得自豪并与其他计算机科学家分享的优势。随着世界对计算技术的依赖日益加深,普适计算研究者与软件工程师共同面临着现实检验的挑战。开展更多跨领域对话,将有助于推动两个领域的共同进步,为构建更加可靠、安全、高效的普适计算系统提供坚实的技术基础。
这些研究成果发表在《IEEE Pervasive Computing》期刊上,不仅为软件工程与普适计算的交叉研究提供了宝贵案例,也为未来两个领域的深度合作指明了方向。在智能设备日益普及的未来,这种跨学科的合作将变得愈发重要。
打赏