计算机科学 ›› 2021, Vol. 48 ›› Issue (5): 32-44.doi: 10.11896/jsjkx.210100105
杨志斌1,2, 杨永强1,2, 袁胜浩1,2, 周勇1,2, 薛垒3, 程高辉4
YANG Zhi-bin1,2, YANG Yong-qiang1,2, YUAN Sheng-hao1,2, ZHOU Yong1,2, XUE Lei3, CHENG Gao-hui4
摘要: 安全关键软件需求中的相关知识大多需要手工提取,既费时又费力。近年来,人工智能技术逐渐被应用于安全关键软件设计与开发过程中,以减少工程师的手工劳动,缩短软件开发的生命周期。文中提出了一种安全关键软件术语推荐和需求分类方法,为安全关键软件需求规约提供了基础。首先,基于词性规则和依存句法规则对候选术语进行提取,通过术语相似度计算和聚类方法对候选术语进行聚类,将聚类结果推荐给工程师;其次,基于特征提取方法和分类方法将安全关键软件需求自动分为功能、安全性、可靠性等需求;最后,在AADL(Architecture Analysis and Design Language)开源建模环境OSATE中实现了原型工具TRRC4SCSTool,并基于工业界案例需求、安全分析与认证标准等构建实验数据集进行了实验验证,证明了所提方法的有效性。
中图分类号:
[1]LEVESON N G.Engineering a safer world:Systems thinking applied to safety [M].Cambridge:The MIT Press,2016:7-15. [2]RTCA DO-178C.Software Considerations in Airbone Systems and Equipment Certification[S].Washington,DC:RTCA,2011. [3]VILELA J,CASTRO J,MARTINS L E G,et al.Integration between requirements engineering and safety analysis:A systema-tic literature review[J].Journal of Systems and Software,2017,125:68-92. [4]YUE T,BRIAND L C,LABICHE Y.Facilitating the transition from use case models to analysis models:Approach and experiments[J].ACM Transactions on Software Engineering and Methodology (TOSEM),2013,22(1):1-38. [5]WANG F,YANG Z B,HUANG Z Q,et al.An Approach toGenerate the Traceability Between Restricted Natural Language Requirements and AADL Models [J].IEEE Trans.Reliability,2020,69(1):154-173. [6] CANEDO E D,CORDEIRO M B.Software Requirements Classification Using Machine Learning Algorithms[J].Entropy,2020,22(9):1057. [7]PAZIENZA M T,PENNACCHIOTTI M,ZANZOTTO F M.Terminology extraction:an analysis of linguistic and statistical approaches[M].Knowledge Mining.Berlin,Heidelberg:Springer,2005:255-279. [8]ARORA C,SABETZADEH M,BRIAND L,et al.AutomatedExtraction and Clustering of Requirements Glossary Terms[J].IEEE Transactions on Software Engineering,2017,43(10):918-945. [9]KURTANOVIC Z,MAALEJ W.Automatically classifyingfunctional and non-functional requirements usingsupervised machine learning[C]//Proceedings of the 2017 IEEE 25th International Requirements Engineering Conference (RE).Lisbon,Portugal,2017:490-495. [10]SUNNER D,BAJAJ H.Classification of Functional and Non-functional Re-quirements in Agile by Cluster Neuro-Genetic Approach[J].International Journal of Software Engineering and Its Applications,2016,10(10):129-138. [11]ABUALHAIJA S,ARORA C,SABETZADEH M,et al.Auto-mated demarcation of requirements in textual specifications:a machine learning-based approach[J].Empirical Software Engineering,2020,25(6):1-44. [12]JIA Y,LIU L.Recognition and Classification of Non-functional Re-quirements in Chinese[J].Journal of Software,2019,30(10):3115-3126. [13]HE H.HanLP:Han Language Processing[OL].[2020-6-1].https://github.com/hankcs/HanLP. [14]YU Y,CHEN L,JIANG J,et al.Research on Chinese PatentCandidate Terminology Selection Based on Dependency Syntax Analysis[J].Library and Information Work,2019,63(18):109-118. [15]GOMAA W H,FAHMY A A.A survey of text similarity approaches[J].International Journal of Computer Applications,2013,68(13):13-18. [16]MANNING C D,RAGHAVAN P,SCHÜTZE H.Introduction to information retrieval[M].Cambridge:Cambridge University Press,2008. [17]COHEN W W,RAVIKUMAR P,FIENBERG S E.A Comparison of String Distance Metrics for Name-Matching Tasks[C]//IIWeb Confernce.UAC:ACM2003,2003:73-78. [18]SOOD S,LOGUINOV D.Probabilistic near-duplicate detection using simhash[C]//Proceedings of Proceedings of the 20th ACM international conference on Information and Knowledge Management.USA:ACM,2011:1117-1126. [19]FEILER P.The Open Source AADL Tool Environment (OSATE)[R].Pitts-burgh:Carnegie Mellon University Software Engineering Institute,2019. [20]ZENG Z,LV X,LI Z,et al.A patent abstract-oriented domain term extraction method[J].Computer Application and Software,2016,33(3):48-51. [21]MISHRA S,SHARMA A.Automatic Word Embeddings-Based Glossary Term Extraction from Large-Sized Software Requirements [C]//International Working Conference on Requirements Engineering:Foundation for Software Quality.Springer,Cham,2020:203-218. [22]LU M M,LIANG P.Automatic classification of non-functional re-quirements from augmented app user reviews[C]//Procee-dings of the 21st International Conference on Evaluation and Assessment in Software Engineering.2017:344-353. [23]EARL L L.Experiments in automatic extracting and indexing[J].Information Storage and Retrieval,1970,6(4):313-330. [24]BOURIGAULT D.Surface grammatical analysis for the extraction of termino-logical noun phrases[C]//Proceedings of the 14th conference on Computational linguistics-Volume 3.UAS:Association for Computational Linguistics,1992:977-981. [25]AUBIN S,HAMON T.Improving term extraction with terminological resources[C]//Proceedings of InternationalConfe-rence on Natural Language Processing (in Finland).Germany:Springer,2006:380-387. [26]STANKOVI Ć R,KRSTEV C,OBRADOVIĆ I,et al.Rule-based automatic multi-word term extraction and lemmatization[C]//Proceedings of Proceedings of the Tenth International Confe-rence on Language Resources and Evaluation (LREĆ16).France:European Language Resources Association.2016:507-514. [27]JONES L P,GASSIE E W,RADHAKRISHNAN S.INDEX:The statistical basis for an automatic conceptual phrase-indexing system[J].Journal of the American Society for Information Science,1990,41(2):87-97. [28]BERRY D M.The use of a repeated phrase finder in require-ments extraction[J].Journal of Systems and Software,1990,13:209-230. [29]GOLDIN L,BERRY D M.AbstFinder,a prototype natural language text ab-straction finder for use in requirements elicitation[J].Automated Software Engineering,1997,4(4):375-412. [30]MATSUO Y,ISHIZUKA M.Keyword extraction from a single document using word co-occurrence statistical information[J].International Journal on Artificial Intelligence Tools,2004,13(1):157-169. [31]FRANTZI K,ANANIADOU S,MIMA H.Automatic recognition of multi-word terms:the c-value/nc-value method[J].International Journal on Digital Libraries,2000,3(2):115-130. [32]BARKER K,CORNACCHIA N.Using noun phrase heads toextract document keyphrases[C]//Proceedings of Conference of the Canadian Society for Computational Studies of Intelligence.Germany:Springer,2000:40-52. [33]PARK Y,BYRD R J,BOGURAEV B.Automatic glossary extraction:beyond terminology identification[C]//Proceedings of COLING 2002:The 19th In-ternational Conference on Computational Linguistics.Spain:COLING,2002. [34]ZOU X,SETTIMI R,CLELAND-HUANG J.Improving auto-mated require-ments trace retrieval:a study of term-based enhancement methods[J].Empirical Software Engineering,2010,15(2):119-146. [35]DWARAKANATH A,RAMNANI R R,SENGUPTA S.Automatic extraction of glossary terms from natural language requirements[C]//Proceedings of 2013 21st IEEE International Requirements Engineering Conference (RE).USA:IEEE,2013:314-319. [36]GEMKOW T,CONZELMANN M,HARTIG K,et al.Automa-tic glossary term ex-traction from large-scale requirements spe-cifications[C]//Proceedings of 2018 IEEE 26th International Requirements Engineering Conference (RE).UAS:IEEE,2018:412-417. [37]DAILLE B.Variations and application-oriented terminology engineering[J].Terminology,2005,11(1):181-197. [38]BOURIGAULT D,JACQUEMIN C.Term extraction+termclustering:An integrated platform for computer-aided terminology[C]//Proceedings of Ninth Conference of the European Chapter of the Association for Computational Linguistics.European:EACL,1999. [39]CLELAND-HUANG J,SETTIMI R,ZOU X,et al.Automated classification of non-functional requirements[J].Requirements Engineering,2007,12(2):103-120. [40]HINDLE A,ERNST N A,GODFREY M W,et al.Automatedtopic naming to sup-port cross-project analysis of software main-tenance activities[C]//Proceedings of Proceedings of the 8th Working Conference on Mining Software Repositories.2011:163-172. [41]YANG L,MA J,JIANG H,et al.Requirements Modeling and Decision-making for Machine Learning Systems[J].Computer Science,2020,47(12):42-49. |
[1] | 贾经冬, 张筱曼, 郝璐, 谭火彬. 工业界需求工程关注点分析 Analysis of Focuses of Requirements Engineering in Industry 计算机科学, 2020, 47(12): 25-34. https://doi.org/10.11896/jsjkx.201200048 |
[2] | 李智, 邓杰, 杨溢龙, 韦尚锋. 从信息物理融合系统问题模型到UML用例图的变换方法 Transformational Approach from Problem Models of Cyber-Physical Systems to Use Case Diagrams in UML 计算机科学, 2020, 47(12): 65-72. https://doi.org/10.11896/jsjkx.201200044 |
[3] | 吕小虎, 韩笑冬, 宫江雷, 王志杰, 刘小鲲. 基于系统多维要素的安全关键软件验证方法 Systemic Muti-factors Based Verification Method for Safety-critical Software 计算机科学, 2019, 46(9): 156-161. https://doi.org/10.11896/j.issn.1002-137X.2019.09.022 |
[4] | 刘喆,李智. 基于多通道交互技术的计算机辅助需求分析系统的研发 Research and Development of Computer-aided Requirements Engineering Tool Based on Multi-modal Interaction Technologies 计算机科学, 2017, 44(4): 177-181. https://doi.org/10.11896/j.issn.1002-137X.2017.04.039 |
[5] | 王聪,王智学,徐友云. 基于UML的面向C4ISR能力需求分析的对象建模语言 UML-based C4ISR Capability Requirement Modeling Language 计算机科学, 2015, 42(2): 150-156. https://doi.org/10.11896/j.issn.1002-137X.2015.02.033 |
[6] | 刘国源,万光海,庞柳,李智. 基于问题框架的计算机辅助需求工程工具的研发 Research and Development of Computer-aided Requirements Engineering Tool Based on Problem Frames 计算机科学, 2014, 41(11): 137-140. https://doi.org/10.11896/j.issn.1002-137X.2014.11.027 |
[7] | 褚文奎,丛伟,樊晓光,顾文灿. 基于系统思维的软件安全性需求开发框架 System Thinking Based Development Framework for Software Safety Requirements 计算机科学, 2012, 39(Z6): 412-415. |
[8] | 谢仲文 李彤 代飞 卢萍 王剑 刘金卓 高提雷. 基于特征组合的软件需求建模 Approach to Modeling Software Requirements Based on Feature Combination 计算机科学, 2012, 39(1): 130-133. |
[9] | 梁正平,明仲,毋国庆. 多视点需求工程中视点集成过程的研究 Research on Integration Process of Viewpoints in Viewpoint-oriented Requirements Engineering 计算机科学, 2009, 36(8): 138-144. |
[10] | . 测试资源受约束的安全关键软件加速测试方法 计算机科学, 2009, 36(5): 138-141. |
[11] | . 需求工程的模式复用框架 计算机科学, 2008, 35(5): 270-273. |
[12] | 于杨 杨丹 徐传运 文俊浩. 需求描述前的需求跟踪模型研究 计算机科学, 2006, 33(B12): 187-190. |
[13] | 何炎祥 黄谦. 基于求精关系的多视点需求工程框架模型 计算机科学, 2002, 29(9): 140-142. |
[14] | 舒风笛 毋国庆 王敏. 面向嵌入式实时软件系统需求工程环境——SREE 计算机科学, 2002, 29(4): 4-8. |
[15] | 王拥军 何华灿 等. 模糊不一致需求的折衷分析 计算机科学, 2001, 28(5): 116-119. |
|