$\require{mediawiki-texvc}$

연합인증

연합인증 가입 기관의 연구자들은 소속기관의 인증정보(ID와 암호)를 이용해 다른 대학, 연구기관, 서비스 공급자의 다양한 온라인 자원과 연구 데이터를 이용할 수 있습니다.

이는 여행자가 자국에서 발행 받은 여권으로 세계 각국을 자유롭게 여행할 수 있는 것과 같습니다.

연합인증으로 이용이 가능한 서비스는 NTIS, DataON, Edison, Kafe, Webinar 등이 있습니다.

한번의 인증절차만으로 연합인증 가입 서비스에 추가 로그인 없이 이용이 가능합니다.

다만, 연합인증을 위해서는 최초 1회만 인증 절차가 필요합니다. (회원이 아닐 경우 회원 가입이 필요합니다.)

연합인증 절차는 다음과 같습니다.

최초이용시에는
ScienceON에 로그인 → 연합인증 서비스 접속 → 로그인 (본인 확인 또는 회원가입) → 서비스 이용

그 이후에는
ScienceON 로그인 → 연합인증 서비스 접속 → 서비스 이용

연합인증을 활용하시면 KISTI가 제공하는 다양한 서비스를 편리하게 이용하실 수 있습니다.

A Comparative Study on Requirements Analysis Techniques using Natural Language Processing and Machine Learning 원문보기

韓國컴퓨터情報學會論文誌 = Journal of the Korea Society of Computer and Information, v.25 no.7, 2020년, pp.27 - 37  

Cho, Byung-Sun (Dept. of Computer Engineering, Ajou University) ,  Lee, Seok-Won (Dept. of Software and Computer Engineering, Ajou University)

초록
AI-Helper 아이콘AI-Helper

본 연구의 목적은 다양한 도메인에 대한 소프트웨어 요구사항 명세서로부터 수집된 요구사항을 데이터로 활용하여 데이터 중심적 접근법(Data-driven Approach)의 연구를 통해 요구사항을 분류한다. 이 과정에서 기존 요구사항의 특징과 정보를 바탕으로 다양한 자연어처리를 이용한 데이터 전처리와 기계학습 모델을 통해 요구사항을 기능적 요구사항과 비기능적 요구사항으로 분류하고 각 조합의 결과를 제시한다. 그 결과로, 요구사항을 분류하는 과정에서, 자연어처리를 이용한 데이터 전처리에서는 어간 추출과 불용어제거와 같은 토큰의 개수와 종류를 감소하여 데이터의 희소성을 좀 더 밀집형태로 변형하는 데이터 전처리보다는 단어 빈도수와 역문서 빈도수를 기반으로 단어의 가중치를 계산하는 데이터 전처리가 다른 전처리보다 좋은 결과를 도출할 수 있었다. 이를 통해, 모든 단어를 고려하여 가중치 값은 기계학습에서 긍정적인 요인을 볼 수 있고 오히려 문장에서 의미 없는 단어를 제거하는 불용어 제거는 부정적인 요소로 확인할 수 있었다.

Abstract AI-Helper 아이콘AI-Helper

In this paper, we propose the methodology based on data-driven approach using Natural Language Processing and Machine Learning for classifying requirements into functional requirements and non-functional requirements. Through the analysis of the results of the requirements classification, we have le...

주제어

표/그림 (12)

AI 본문요약
AI-Helper 아이콘 AI-Helper

* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.

문제 정의

  • Google의 word2vec와 Kim.[12]의 제안한 문서 분류의 합성곱 신경망을 통해 요구사항을 얼마나 더 정확히 분류할 수 있는지 연구하였다. 이 연구에서 기여도는 첫째로, Google의 word2vec를 통해 미리 사전 학습된 워드 임베딩을 통해 요구사항 분류 모델의 성능을 향상하였다.
  • 본 연구는 소프트웨어 요구사항 명세서에서 추출된 요구사항을 인공지능의 자연어처리와 기계 학습을 이용하여 데이터 중심적 접근법을 기반으로 요구사항을 기능적 요구사항과 비기능적 요구사항으로 분류에 대해 연구를 진행하였다. 본 연구에서는 관련 연구와의 다른 자연어처리와 기계학습 모델을 통해 연구 비교 분석 연구하였다.
  • 세 번째, 다양한 자연어처리와 기계학습 모델을 적용하여 요구사항 분류에 대해 결과와 최적화된 모델을 제시에 있다. 본 연구에서 요구사항 데이터에 대해 자연어처리를 이용한 다양한 데이터 전처리 조합과 기계학습 모델을 적용하여 그 결과를 도출하였고 이를 비교 분석을 통해 본 연구의 문제점 해결에 최적화된 방법을 제시하고 있다. 이를 통해, 향후 요구사항 데이터를 활용한 연구에서 본 연구에서 도출된 결과와 제시하는 최적화된 방법을 활용할 수 있다.
  • 마지막으로, 본 연구의 실험 방법을 다른 도메인에 적용하는 방향을 고려할 수 있다. 본 연구에서는 특정 항목에 대해 다양한 자연어처리와 기계학습 모델을 통해 데이터 전처리와 분류를 연구 실험에서 진행하였고 이를 통해, 실험 과정에서 다양한 데이터의 변화와 실험 결과를 도출할 수 있었다. 이와 같이, 특정 항목에 대해 분류하는 연구에 대해 본 연구에서 정형화된 연구 방법론을 적용할 수 있으며 이는, 다양한 도메인의 문제를 해결할 수 있는 방법으로 제시할 수 있다.
  • 본 연구의 목적은 다양한 도메인에 대한 소프트웨어 요구사항 명세서로부터 수집된 요구사항을 데이터로 활용하여 데이터 중심적 접근법의 연구를 통해 요구사항을 분류한다. 이 과정에서 기존 요구사항의 특징과 정보를 바탕으로 다양한 자연어처리를 이용한 데이터 전처리와 기계학습 모델을 통해 요구사항을 기능적 요구사항과 비기능적 요구사항으로 분류하고 각 조합의 결과를 제시한다.
  • 이 과정에서 기존 요구사항의 특징과 정보를 바탕으로 다양한 자연어처리를 이용한 데이터 전처리와 기계학습 모델을 통해 요구사항을 기능적 요구사항과 비기능적 요구사항으로 분류하고 각 조합의 결과를 제시한다. 이는, 자연어처리와 기계학습을 이용한 도출된 객관적이고 일관성 있는 요구사항 분류 결과이며 새로운 요구사항 데이터에 대해 본 연구에서 도출된 결과를 기반으로 적합한 자연어처리와 기계학습 모델을 제안한다. 이를 통해, 소프트웨어 요구사항을 기능적 요구사항과 비기능적 요구사항으로 분류하는 연구에 대해 최적화된 방법을 제시한다.
  • [9]의 연구는 언어학적 지식 기반의 접근법을 통해 요구사항 분류의 연구를 진행하였다. 이를 통해, 문법적, 시간적, 그리고 감정적인 요소가 기계학습을 이용한 요구사항 분류에서 얼마나 영향을 미치는지 연구하였다. 이를 위해 데이터 전처리 과정에서 Hussain et al.
  • 이는, 자연어처리와 기계학습을 이용한 도출된 객관적이고 일관성 있는 요구사항 분류 결과이며 새로운 요구사항 데이터에 대해 본 연구에서 도출된 결과를 기반으로 적합한 자연어처리와 기계학습 모델을 제안한다. 이를 통해, 소프트웨어 요구사항을 기능적 요구사항과 비기능적 요구사항으로 분류하는 연구에 대해 최적화된 방법을 제시한다. 더 나아가, 본 연구에서 도출된 결과를 통해 요구공학 전문가를 보조할 수 있고, 요구사항을 기능적 요구사항과 비기능적 요구사항으로 분류에 대해 효율적인 분석을 가능하게 할 수 있다.
  • 이는, 요구사항을 기능적 요구사항과 비기능적 요구사항으로 분류하는 연구에서 사용되는 데이터의 규모는 너무 작아서, 기계학습을 이용한 데이터 중심적 접근법을 통한 요구사항 분류의 연구에서 제한이 많이 있었다. 즉, 본 연구에서는 수 많은 소프트웨어 요구사항 명세서에서 요구사항을 추출, 수집 그리고 데이터세트로 구성 및 생성하여 새로운 요구사항 데이터세트를 연구에 적극 활용하여 기존의 데이터 규모에 대한 문제점과 연구의 한계점을 해결하였다.

가설 설정

  • 본 연구의 기여도는 크게 세 가지가 있다. 첫 번째, 새로운 데이터세트 생성을 통한 데이터 확장이다. 이는, 요구사항을 기능적 요구사항과 비기능적 요구사항으로 분류하는 연구에서 사용되는 데이터의 규모는 너무 작아서, 기계학습을 이용한 데이터 중심적 접근법을 통한 요구사항 분류의 연구에서 제한이 많이 있었다.
본문요약 정보가 도움이 되었나요?

질의응답

핵심어 질문 논문에서 추출한 답변
소프트웨어 요구사항 명세서를 자동화 시스템을 이용하여 기능적, 비기능적 요구사항으로 분류하는데에 어떤 문제점이 발생하는가? 그래서 자동화 시스템(Automated System)은 이러한 수동식 시스템 방식의 한계점을 보완하고 해결하려고 했지만 새로운 문제점들이 발생하였다. 실제 요구사항은 자연어로 작성되어 있고 자연어 특성 때문에 그에 따른 문제들이 발견되었다. 자연어의 특성상 이해관계자들 간에 다른 용어의 사용, 동일한 요구사항의 서로 다른 묘사 및 해석 등은 자동화 분류 시스템이 자연어를 정확히 이해하고 분류하는데 있어서 많은 문제점을 초래한다. 그로 인해 자동화 분류 시스템을 통해 정확한 기능적 요구사항과 비기능적 요구사항의 분류 결과를 도출할 수 없다.
소프트웨어공학에서 요구사항 분석은 무엇인가? 소프트웨어공학(Software Engineering)에서 요구사항 분석(Requirements Analysis)은 소프트웨어에 대해 요구가 무엇인지를 추출하여 소프트웨어 요구사항 명세서를 작성하는 작업으로, 사용자의 요구를 추출하여 목표를 정하고 어떤 방식으로 해결할 것인지를 결정하는 단계이다.[2] 이를 통해, 구현될 시스템의 기능이나 목표, 제약사항 등과 사용자로부터 시스템 개발에 필요한 정보를 추출할 수 있다.
소프트웨어 개발에 실패하는 요인은 무엇인가? 실제 대다수 소프트웨어 개발에 실패하는 요인으로는 의사소통의 실패로 이해관계자의 요구사항을 정확히 도출하지 못한 경우, 요구사항의 의미를 서로 다르게 이해하는 경우, 그리고 소프트웨어가 요구사항을 제대로 충족하지 못한 경우 등이 있다. 실제로 소프트웨어 요구사항은 소프트웨어 개발 분야에서 사용자의 필요성, 계약상에 명시된 내용, 표준 사양서, 작성된 공식 문서 등에서 찾아낸 소프트웨어가 반드시 수행해야 할 필요한 조건, 기능 또는 능력을 서술하고 있고 이러한 요구사항을 정확하게 분석하는 작업이 소프트웨어 개발에 중요성이 점차 커지면서 요구공학(Requirements Engineering)에서는 체계적인 분석 모델을 통해 요구사항 추출, 분석, 명세, 검증과 유지보수 및 관리하여 명확하게 요구사항을 분석한다.
질의응답 정보가 도움이 되었나요?

참고문헌 (16)

  1. Bourque, Pierre, and Richard E. Fairley. Guide to the software engineering body of knowledge (SWEBOK (R)): Version 3.0. IEEE Computer Society Press, 2014. 

  2. Kotonya, Gerald, and Ian Sommerville. Requirements engineering: processes and techniques. Wiley Publishing, 1998. 

  3. Sommerville, Ian. "Software engineering 9th Edition." ISBN-10137035152 (2011). 

  4. Glinz, Martin. "A glossary of requirements engineering terminol ogy." Standard Glossary of the Certified Professional for Requirements Engineering (CPRE) Studies and Exam, Version 1 (2011). 

  5. Van Lamsweerde, Axel. Requirements engineering: From system goals to UML models to software. Vol. 10. Chichester, UK: John Wiley & Sons, 2009. 

  6. Ernst, Neil A., and John Mylopoulos. "On the perception of software quality requirements during the project lifecycle." International Working Conference on Requirements Engineering: Foundation for Software Quality. Springer, Berlin, Heidelberg, 2010. 

  7. Abad, Zahra Shakeri Hossein, and Guenther Ruhe. "Using real options to manage technical debt in requirements engineering." 2015 IEEE 23rd International Requirements Engineering Conference (RE). IEEE, 2015. 

  8. Abad, Zahra Shakeri Hossein, et al. "What are practitioners asking about requirements engineering? an exploratory analysis of social q&a sites." 2016 IEEE 24th International Requirements Engineering Conference Workshops (REW). IEEE, 2016. 

  9. Abad, Zahra Shakeri Hossein, et al. "What works better? a study of classifying requirements." 2017 IEEE 25th International Requirements Engineering Conference (RE). IEEE, 2017. 

  10. Hussain, Ishrar, Leila Kosseim, and Olga Ormandjieva. "Using linguistic knowledge to classify non-functional requirements in SRS documents." International Conference on Application of Natural Language to Information Systems. Springer, Berlin, Heidelberg, 2008. 

  11. Dekhtyar, Alex, and Vivian Fong. "RE data challenge: Requirements identification with Word2Vec and TensorFlow." 2017 IEEE 25th International Requirements Engineering Conference (RE). IEEE, 2017. 

  12. Y. Kim, "Convolutional neural networks for sentence classif ication," in Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing, EMNLP 2014, 2014, pp. 1746-1751. 

  13. Rashwan, Abderahman, Olga Ormandjieva, and Rene Witte. "Ontology-based classification of non-functional requirements in software specifications: a new corpus and svm-based classifier." 2013 IEEE 37th Annual Computer Software and Applications Conference. IEEE, 2013. 

  14. Ferrari, Alessio, Giorgio Oronzo Spagnolo, and Stefania Gnesi. "PURE: A dataset of public requirements documents." 2017 IEEE 25th International Requirements Engineering Conference (RE). IEEE, 2017. 

  15. Porter, Martin F. "Snowball: A language for stemming algori thms." (2001). 

  16. Qiang, Guo. "An effective algorithm for improving the performance of Naive Bayes for text classification." 2010 Second International Conference on Computer Research and Development. 2010. 

관련 콘텐츠

오픈액세스(OA) 유형

FREE

Free Access. 출판사/학술단체 등이 허락한 무료 공개 사이트를 통해 자유로운 이용이 가능한 논문

이 논문과 함께 이용한 콘텐츠

저작권 관리 안내
섹션별 컨텐츠 바로가기

AI-Helper ※ AI-Helper는 오픈소스 모델을 사용합니다.

AI-Helper 아이콘
AI-Helper
안녕하세요, AI-Helper입니다. 좌측 "선택된 텍스트"에서 텍스트를 선택하여 요약, 번역, 용어설명을 실행하세요.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.

선택된 텍스트

맨위로