Skip to main content
QUICK REVIEW

[论文解读] State of the Software Development Life-Cycle for the Internet-of-Things

Joaõ Pedro Dias, Hugo Sereno Ferreira|arXiv (Cornell University)|Nov 9, 2018
Advanced Software Engineering Methodologies参考文献 35被引用 5
一句话总结

本文分析了物联网(IoT)系统当前的软件开发生命周期实践现状,尽管软件工程领域已取得进展,但仍存在方法论、工具和测试框架方面的显著缺口。文章指出,由于系统异构性、规模、实时性约束以及缺乏自动化测试解决方案等挑战,物联网开发落后于最佳实践,呼吁加强工具开发并实现与持续集成流水线的集成。

ABSTRACT

Software has a longstanding association with a state of crisis considering its success rate. The explosion of Internet-connected devices, Internet-of-Things, adds to the complexity of software systems. The particular characteristics of these systems, such as being large-scale and its heterogeneity, pose increasingly new challenges. In this paper, we first briefly introduce the IoT paradigm and the current state of art of software development. Then, we delve into the particularities of developing software for IoT systems and systems of systems, given an overview of what are the current methodologies and tools for design, develop and test such systems. The findings are discussed, revealing open issues and research directions, and reveal that the nowadays IoT software development practices are still lagging behind of what are the current best practices.

研究动机与目标

  • 评估物联网系统中软件工程实践的当前状态,重点关注设计、开发和测试阶段。
  • 识别由系统规模、异构性、动态拓扑结构和多领域集成引发的物联网软件开发关键挑战。
  • 评估现有物联网开发的方法论、框架和工具,并指出其局限性。
  • 揭示测试方法论中的研究缺口,特别是针对大规模、分布式、云连接和嵌入式物联网系统。
  • 倡导在物联网开发中采纳现代软件工程实践,如模型驱动工程、可视化编程和持续集成。

提出的方法

  • 对当前应用于物联网系统的软件工程实践进行了全面的文献综述。
  • 分析了在多个层级(传感器、边缘、云)上,物联网系统在设计、开发和测试方面的现有方法论和工具。
  • 评估了商业和开源的物联网测试工具,重点关注其对异构性、规模和自动化的支持能力。
  • 识别出在测试方面存在的关键技术与方法论缺口,特别是针对分布式、实时和资源受限系统。
  • 提出需要增强工具支持,以实现测试自动化、持续集成以及端到端的测试覆盖,贯穿物联网堆栈的各层。
  • 综合研究成果,突出既定的软件工程最佳实践与当前物联网开发现实之间的不匹配。

实验结果

研究问题

  • RQ1在物联网系统的开发、设计和测试中,当前使用的方法论和工具是什么?
  • RQ2物联网的独特特性(如规模、异构性、动态拓扑结构)如何影响软件工程实践?
  • RQ3现有物联网系统测试框架在大规模、分布式和嵌入式环境中存在哪些主要缺口?
  • RQ4为何当前的物联网软件开发实践未能达到既定的软件工程最佳实践标准?
  • RQ5在工具开发和流程集成(如CI/CD)方面,需要哪些改进,才能使物联网开发符合现代软件工程标准?

主要发现

  • 物联网软件开发实践在测试和工具集成方面显著落后于现代软件工程最佳实践。
  • 现有物联网系统的测试解决方案在范围上有限,通常仅支持部分平台、协议或测试变量,且缺乏自动化和CI/CD支持。
  • 大规模、分布式和嵌入式物联网系统由于动态拓扑结构、实时性约束和硬件差异,面临独特的测试挑战。
  • 尽管广泛应用,基于云的物联网系统在弹性、可扩展性和容错性方面仍缺乏成熟的测试方法论。
  • 在异构且互操作的系统中,缺乏统一的、端到端的测试框架,覆盖从传感器到云的各层。
  • 研究和工具开发必须优先关注测试自动化、持续集成,以及对异构设备和协议生态系统的支持,以弥合现有差距。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。