计算机科学 ›› 2021, Vol. 48 ›› Issue (5): 32-44.doi: 10.11896/jsjkx.210100105

• 计算机软件* 上一篇    下一篇

安全关键软件术语推荐和需求分类方法

杨志斌1,2, 杨永强1,2, 袁胜浩1,2, 周勇1,2, 薛垒3, 程高辉4   

  1. 1 南京航空航天大学计算机科学与技术学院 南京211106
    2 高安全系统的软件开发与验证技术工信部重点实验室 南京211106
    3 上海航天电子技术研究所 上海201109
    4 北京控制与电子技术研究所 北京100038
  • 收稿日期:2021-01-13 修回日期:2021-03-27 出版日期:2021-05-15 发布日期:2021-05-09
  • 通讯作者: 杨志斌(yangzhibin168@163.com)
  • 基金资助:
    国家自然科学基金(62072233);航空科学基金(201919052002); 国防基础科研项目(JCKY2020205C006)

Terminology Recommendation and Requirement Classification Method for Safety-critical Software

YANG Zhi-bin1,2, YANG Yong-qiang1,2, YUAN Sheng-hao1,2, ZHOU Yong1,2, XUE Lei3, CHENG Gao-hui4   

  1. 1 School of Computer Science and Technology,Nanjing University of Aeronautics and Astronautics,Nanjing 211106,China
    2 Key Laboratory of Safety-critical Software,Ministry of Industry and Information Technology,Nanjing 211106,China
    3 Shanghai Aerospace Electronic Technology Institute,Shanghai 201109,China
    4 Beijing Institute of Control and Electronic Technology,Beijing 100038,China
  • Received:2021-01-13 Revised:2021-03-27 Online:2021-05-15 Published:2021-05-09
  • About author:YANG Zhi-bin,born in 1982,Ph.D,associate professor,is a member of China Computer Federation.His main research interests include safety-critical systems,formal verification and AI software engineering.
  • Supported by:
    National Natural Science Foundation of China(62072233),Aeronautical Science Foundation of China(201919052002) and Defense Industrial Technology Development Program (JCKY2020205C006).

摘要: 安全关键软件需求中的相关知识大多需要手工提取,既费时又费力。近年来,人工智能技术逐渐被应用于安全关键软件设计与开发过程中,以减少工程师的手工劳动,缩短软件开发的生命周期。文中提出了一种安全关键软件术语推荐和需求分类方法,为安全关键软件需求规约提供了基础。首先,基于词性规则和依存句法规则对候选术语进行提取,通过术语相似度计算和聚类方法对候选术语进行聚类,将聚类结果推荐给工程师;其次,基于特征提取方法和分类方法将安全关键软件需求自动分为功能、安全性、可靠性等需求;最后,在AADL(Architecture Analysis and Design Language)开源建模环境OSATE中实现了原型工具TRRC4SCSTool,并基于工业界案例需求、安全分析与认证标准等构建实验数据集进行了实验验证,证明了所提方法的有效性。

关键词: 安全关键软件, 术语聚类, 术语推荐, 需求分类, 需求工程

Abstract: Most of the knowledge in the requirements of safety-critical software needs to be manually extracted,which is time-consuming and laborious.Recently,artificial intelligence technology has been gradually used in the design and development of safety-critical software,to reduce the work of engineers and shorten the life cycle of software development.This paper proposes a terminology recommendation and requirement classification method for safety-critical software.Firstly,the terminology recommendation method extracts candidate terms based on part-of-speech rules and dependency rules and clusters candidate terms through term similarity calculation.The clustering results are recommended to engineers.Secondly,the requirement classification method automatically classifies safety-critical software requirements as functional,safety,reliability,etc.based on feature extraction.Finally,the prototype tool TRRC4SCSTool is implemented in the AADL open-source modeling environment OSATE,and the experimental analysis is carried out through the dataset collected from the industrial requirements and safety certification standards,and the results show the effectiveness of the method.

Key words: Requirement classification, Requirement engineering, Safety-critical software, Term clustering, Term recommendation

中图分类号: 

  • TP311
[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.
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!