SCI、SSCI、EI、SCOPUS指导服务
论文翻译润色 论文预审评估 质量分析报告 期刊匹配推荐

与学术顾问沟通

嵌入式系统开发中敏捷方法的应用研究综述*

分类:计算机应用论文发表 时间:2018-10-05 08:03 关注:(1)

  荣国平1,刘天宇1,谢明娟1,陈婕妤1,张贺1,陈道蓄2

  1(南京大学软件学院,江苏南京210093)

  2(南京大学计算机科学与技术系,江苏南京210093)

  摘要:伴随着计算机技术的迅速发展,嵌入式系统软件的应用领域得以不断拓宽,这使得嵌入式系统开发面临着日益严峻的质量、成本以及项目周期等方面的压力.另一方面,敏捷方法已在传统的软件项目当中得到越来越多的应用.很多研究都表明,敏捷方法在适应需求变更、提升生产效率和最终产品的质量方面都发挥出显著的作用.因此,在嵌入式系统软件开发中应用敏捷方法,自然也得到研究者和实践者的日益关注.应用系统评价(systematicreview)方法,试图尽可能系统地了解嵌入式系统开发过程中敏捷方法的应用状况和研究进展.通过对敏捷宣言提出以来12年间49篇相关文献的概况和分析,试图回答如下3个问题:1)在不同类型的嵌入式系统开发中,敏捷方法的总体应用情况如何?2)敏捷方法或实践是如何解决各类嵌入式软件开发中的挑战的?3)敏捷方法(实践)该如何通过扩展和改进,以更好地适应嵌入式系统开发?研究表明,尽管应用程度存在一定的差异,但敏捷方法已在不同类型的嵌入式开发中得到了应用.传统的敏捷方法也需要进行多种改变,以适应这些不同类型的嵌入式开发项目的特征.

  关键词:嵌入式系统开发;敏捷方法;应用现状;系统评价

  中图法分类号:TP311文献标识码:A中文引用格式:荣国平,刘天宇,谢明娟,陈婕妤,张贺,陈道蓄.嵌入式系统开发中敏捷方法的应用研究综述.软件学报,2014,25(2):267-283.

  Abstract:Withtherapiddevelopmentoftechnology,theapplicationareaofembeddedsystemscontinuestobroaden.Thismakesthedevelopmentofembeddedsystemsfacingincreasedpressureofquality,costandcycletime.Ontheotherhand,agilemethodshavebeenmoreandmoreadoptedintraditionalsoftwareprojects.Manystudiesindicatedthatagilemethodshavesignificantvaluestoadapttochangingrequirements,increasingtheproductivityandthequalityofthefinalproduct.Therefore,theapplicationofagilemethodsinembeddedsystemsdevelopmentnaturallyhasdrawnattentionsfromresearchersandpractitioners.Thispaperappliessystematicreviewstosystematicallyunderstandtheapplicationstatusofagilemethodsinembeddedsystemdevelopment.Throughreviewingandanalyzing49literaturessinceAgileManifestohasbeenannounced,thisstudytriestoanswerthefollowingthreequestions:1)Indifferenttypesofembeddedsystemsdevelopment,whatistheoverallapplicationstatusofagilemethods;2)Whatcharacteristicsofembeddedsystemsaresuitabletoapplyagilemethods;3)Howtoimprovecurrentagilemethods(practices)tobetteradapttothedevelopmentofembeddedsystems.Thestudyshowsthat,althoughtherearesomedifferencesinthedegreeofapplication,agilemethodshavebeenappliedinthedevelopmentofdifferenttypesofembeddedsystemdevelopments.However,thetraditionalagilemethodsalsoneedtobeappropriatelyrevisedtoadapttothecharacteristicsofdifferenttypesofembeddeddevelopmentprojects.

  Keywords:embeddedsystemdevelopment;agilemethod;adoptionstatus;systematicliteraturereview

  嵌入式系统作为专用计算机系统,往往为了特定应用而设计.一般来说,嵌入式系统的开发往往会受到较多的限制,例如嵌入式系统开发往往会受到现有软硬件平台的限制、大部分嵌入式系统往往也有着实时性的要求等,这些限制使得嵌入式开发往往需要消耗更多的资源和成本.在Boehm等人设计的COCOMO[1]模型中,嵌入式系统开发被认为是同等规模下开发成本最高的软件项目[1].随着近年来计算机硬件设备性能的迅速提高,嵌入式系统的应用领域也得以不断拓宽,嵌入式系统软件的规模和复杂性急剧增加.这些现象进一步增加了嵌入式系统开发的难度.特别是伴随着物联网、移动计算、信息物理融合系统等嵌入式系统领域的相关热点不断出现,嵌入式系统的质量、成本及项目周期也日益引起关注.在2011年和2012年嵌入式领域权威调查报告中[2,3],按时交付、开发高质量过程、管理代码规模和复杂性等问题都获得了业界最为广泛的关注.

  敏捷方法自从2001年雪鸟会议之后开始获得各界,特别是实践者的欢迎.时至今日,敏捷方法已经在大量软件项目当中得到了应用,并且获得了成功.实践者通常认为,敏捷方法可以显著降低开发成本、提升生产效率、缩短开发周期、提升最终产品的质量.此外,敏捷方法使得开发团队具有更强的适应需求变更的能力.

  我们认为,在很多方面,敏捷方法可以帮助实践者解决嵌入式系统开发中所面临的各类困难.例如,统计表明,尽管有日益扩大的趋势,嵌入式系统的开发往往还是规模较小(大部分持续时间在12个月以内,软件研发团队小于6人)[2,3],这与敏捷方法适合小型团队的特性比较相符;敏捷方法所具有的适应需求变更的能力也能更好地满足嵌入式系统应用领域不断扩大所带来的需求多样性和多变性.此外,敏捷方法在生产效率和产品质量上的优势,也可以较好地解决嵌入式系统应用趋势所带来的各类挑战.然而,敏捷方法的一些限制也不容忽视,例如,通常认为,敏捷方法不适合大规模项目,而伴随着嵌入式系统日益扩大的应用领域,嵌入式系统软件规模日益增加是必然的趋势,敏捷方法能否适应这种趋势值得研究;再如,敏捷方法在一些关键任务系统(mission-criticalsystems)的研发当中应用有限,而作为专用计算机系统,嵌入式系统不可避免地成为一些关键任务系统,在这类系统研发过程中能否应用敏捷方法,需要更多的研究和实践.此外,一些常用的敏捷实践在包含硬件开发在内的嵌入式系统开发中可能难以应用,例如自动化测试和持续集成等.

  1系统评价方法

  1.1方法概述系统评价(systematicliteraturereview,简称SLR,或systematicreview)方法是一种基于证据的软件工程(evidencebasedsoftwareengineering,简称EBSE)研究方法[4].原方法在医学领域和社会科学等领域被广泛使用,近几年才应用于软件工程领域,在应用的同时也伴随方法学的不断改进[6].与传统的文献综述方法(narrativeoradhocreview)不同的是,系统评价方法遵循一条严谨的、系统的研究路线[6],使用明确定义的方法来识别、分析所有与研究问题相关的证据(往往是指正式发表的研究成果),通过证据质量评判标准对文献进行筛选,尽可能地消除研究者的主观偏见,在某种程度上可供其他研究者复制研究过程[7].而传统的方式通常是研究人员基于其对某领域的了解,对于相关证据的定性总结,研究过程和结论往往容易受到主观因素的影响而产生偏向性.

  2研究结果分析

  针对本研究拟回答的3个问题,本节将对抽取的数据内容进行描述、概括和分析,试图给出有参考价值的结果:·对于第1个问题,我们将直接给出相关文献的一些统计数据,以描绘嵌入式开发中敏捷方法的整体应用情况,并且结合表1所述的不同类型的嵌入式开发,详细阐述敏捷方法在每个类型的开发中的应用情况.·对于第2个问题,我们将按照表1所述的不同嵌入式开发类型,分别阐述每个类型的嵌入式开发所面临的挑战和敏捷方法应对这些挑战的具体做法.·

  同样地,对于第3个问题,我们也将结合不同类型的嵌入式开发,描述敏捷方法通常应该如何进行扩展和改进.

  3讨论

  3.1针对研究问题的总结

  3.1.1不同类型的嵌入式软件开发中敏捷方法的总体应用情况

  从我们收集的文献内容来看,敏捷方法已经或多或少地应用在各类嵌入式软件开发之中.相对而言,在应用层的开发和基于现有硬件的嵌入式软件开发之中,敏捷方法的应用已经较为成功,多篇文献都提及了如何在嵌入式开发中应用敏捷实践.在这些文献之中,XP是嵌入式开发中应用较为广泛的敏捷方法,一方面可能是因为XP包含较多技术实践,这些技术实践单独来看,其应用的限制条件远少于覆盖完整的开发周期的某个开发方法;另一方面,XP也是最早流行的敏捷方法之一,其影响范围较为广泛.XP方法在应用层开发中结合了手机开发特征演化出了Mobile-D方法;在基于硬件的纯软件开发中,XP的一些实践,例如测试驱动开发、重构等都得到了较为广泛的应用.其他敏捷方法,例如Scrum,FDD,RUP等在不同的嵌入式系统开发项目中也得到了部分应用.相对来说,在软硬件协同开发和纯硬件开发类型的嵌入式项目开发中,敏捷方法的应用案例还比较有限.

  4结论

  应用系统评价方法,本文对敏捷方法在嵌入式系统开发中的应用情况进行了概括和分析.应用严格的质量要求对相关领域的文献进行筛选,最后将44篇高质量的文献纳入研究范围.针对3个研究问题,即,应用总体状况、敏捷方法应对嵌入式开发挑战和敏捷方法的改进,我们的研究表明,在嵌入式系统开发中,可以应用敏捷方法来满足嵌入式项目的一些特殊要求.同时,部分敏捷实践也需要进行适当的改进和扩展,以更好地在嵌入式系统开发中应用.本文的主要贡献在于:·

  第一,敏捷开发和嵌入式开发近年来日益盛行,然而将两个热点结合得较为系统的研究非常少.我们的工作可以为后续这方面的研究打下基础.·

  第二,对于实践者而言,通过我们的工作所整理和归纳的结果,实践者可以建立如何在嵌入式系统开发中使用敏捷实践来缓解嵌入式系统的一些特征所引起的开发挑战的基本思路,并从别人的工作当中找到改进和扩展已有开发实践的方法.

  References:

  [1]BoehmBW,AbtsC,BrownAW,ChulaniS,ClarkBK,HorowitzE,MadachyR,ReiferDJ,SteeceB.SoftwareCostEstimationwithCOCOMOII.BergenCountry:PrenticeHallPTR,2000.1-82.

  [2]UBM-Electronicsembedded.com&EEtimesthe2011embeddedmarketstudy.2011.

  [3]UBM-Electronicsembedded.com&EEtimesthe2012embeddedmarketstudy.2012.d-market-study

期刊目录网是一家专业从事国内国外期刊学术论文发表指导,著作出版,发明专利的权威平台,提供文章翻译、文章润色、文章预审、期刊推荐、发表支持、书号申请、出书指导、专利申请等评职称相关学术成果服务。是您评职称学术成果指导首选权威平台。

AllSet微信公众号
说明:1、微信扫码或搜AllSet学术并关注
2、发送SCI/SSCI期刊全名告知分区
3、按提示可下载SCI、SSCI、EI期刊目录
Copyright © 2013-2022 www.qikanmulu.com,All Rights Reserved