$\require{mediawiki-texvc}$

연합인증

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

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

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

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

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

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

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

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

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

요구사항 시나리오 기계 학습을 이용한 자동 소프트웨어 요구사항 패턴 추출 기법
Automatic Software Requirement Pattern Extraction Method Using Machine Learning of Requirement Scenario 원문보기

The journal of the institute of internet, broadcasting and communication : JIIBC, v.16 no.1, 2016년, pp.263 - 271  

고덕윤 (서강대학교 컴퓨터공학과) ,  박수용 (서강대학교 컴퓨터공학과) ,  김순태 (전북대학교 소프트웨어공학과) ,  유희경 (강원대학교 컴퓨터공학과) ,  황만수 (신한대학교 IT융합공학부)

초록
AI-Helper 아이콘AI-Helper

소프트웨어 요구사항 분석은 성공적인 소프트웨어 프로젝트를 위해 필수적 요소이다. 특히 불완전한 요구사항은 소프트웨어 프로젝트 실패의 가장 큰 원인으로 꼽힌다. 불완전한 요구사항은 소프트웨어 개발 시 개발자에게 이해 부족을 야기할 뿐 아니라, 소프트웨어 검증 시 에도 모호한 기준을 제공함으로써, 개발 후반부에 납기일 연기 및 비용 증가의 원인이 된다. 요구사항 패턴은 이러한 문제를 극복하는데 도움을 줄 수 있다. 요구사항 패턴은 요구사항 작성과 검토 시 참조모델이 될 뿐 아니라, 검증 기준이 될 수 있으며, 작성자가 누락한 부분을 보완해 줄 수 있다. 이와 더불어 요구사항 작성의 경험이 적은 작성자는 요구사항 패턴을 통해 더 쉽고, 빠르고 정확하게 요구사항을 작성할 수 있다. 본 논문에서는 다양한 요구사항의 시나리오를 통해 공통된 요구사항 시나리오를 추출하는 기법을 제안한다. 그리고 제안한 기법의 가시성 검증을 위해 여덟 개의 프로젝트에서 추출한 83개의 소프트웨어 시나리오를 통해 54개의 시나리오 패턴을 추출하고 이 패턴을 이용하여 누락된 행위를 찾는 과정을 사례연구를 통해 보여준다.

Abstract AI-Helper 아이콘AI-Helper

Software requirement analysis is necessary for successful software development project. Specially, incomplete requirement is the most influential causes of software project failure. Incomplete requirement can bring late delay and over budget because of the misunderstanding and ambiguous criteria for...

주제어

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

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

문제 정의

  • 그리고 후자 연구의 경우 도메인 모델의 품질 수준에 따라 패턴의 품질도 결정되는 문제와, 추출된 패턴의 적용 도메인이 한정적인 한계점이 있다. 따라서 본 논문에서는 완전히 자동화 되고, 도메인에 제한 없이 사용할 수 있는 시나리오 기반의 요구사항 패턴 추출 기법을 제안하고자 한다.
  • 본 논문에서는 기업체에서 작성한 시나리오를 수집하고 제안된 기법을 통해 패턴을 적용하는 방법을 보여준다. 그리고 추출된 패턴을 이용하여 시나리오 상에서 누락된 행위를 찾아주는 과정을 기술함으로써 패턴의 활용 사례를 통해 본 연구의 타당성을 검증한다.
  • 본 논문에서는 소프트웨어 요구사항 시나리오들로부터 자동으로 패턴을 추출하는 기법을 제안한다. 그림 1은 본 논문이 제안하는 기법의 개요를 보여준다.
  • 본 논문에서는 요구사항 시나리오 문장의 동사를 이용하여, 동사의 의미적 유사도에 의한 기계 학습(machine learning)기반의 요구사항 시나리오 패턴 추출 기법을 제안한다. 첫째, 요구사항 사나리오의 문장을 분석하여 문장으로부터 본동사를 추출한다.
  • 본 논문은 여러 소프트웨어 시나리오로부터 시나리오 패턴을 추출하는 완전 자동화된 방법을 제안하였다. 그리고 본 논문에서 제안하는 기법은 도메인에 관계없이 학습 후 패턴추출이 가능하다.
  • 본 절에서는 앞 사례연구에서 추출된 시나리오 패턴을 이용하여 실제 시나리오에 적용하고, 어떻게 누락된 행위를 찾아내는지 보여주고자 한다. 그림8의 시나리오는 컴퓨터공학과 학부 2학년이 작성한 쇼핑몰 웹 애플리케이션에 ‘물품 구매’에 해당하는 요구사항 시나리오이다.
  • 본 연구의 향후 연구로는 본 논문에서 소개한 기법에 의해 추출된 패턴을 실제 시나리오의 검증에 적용하는 연구를 진행한다. 사례연구에서 개략적으로 보여준 바와 같이 초심자가 입력한 시나리오와 추출된 패턴을 비교 분석하여 누락된 행위가 없는지 확인하고, 적합한 행위를 추천하는 완전 자동화된 기법 제안을 목표로 한다. 이 연구를 통해 본 논문에서 소개된 기법의 완성도를 한 번 더 검증할 예정이다.
  • 이 단계는 이전 단계에서 식별된 군집의 관계를 추출하고 이를 방향성 있는 그래프 형태인 행위 그래프 (action graph)로 표현하는 것을 목적으로 한다. 행위 그래프는 동사의 군집을 나타내는 노드와 해당 노드의 발생 순서를 나타내는 벡터로 구성된다.
  • 이 단계에서는 이전 단계에서 추출된 행위 흐름 그래프와 실제 시나리오에서 사용되는 정도에 따라 적용된 실제 패턴을 추출하고 각 패턴에 패턴 점수를 산정하는 것을 목표로 한다. 먼저, 모든 학습 대상 시나리오를 동사 군집의 대표 동사로 치환한다.
  • 이 단계에서는 입력된 여러 시나리오의 각 문장에서 본동사를 추출하는 것을 목적으로 한다. 시나리오 문장에서는 두 개 이상의 동사가 쓰일 수 있다.
  • Robertson[8]은 이벤트/유스케이스(event/use case) 모델들로부터 공통 요구사항을 추출하는 기법을 제안하였다. 이 연구에서는 유스케이스가 특정 이벤트로부터 시작한다고 가정하고, 여러 이벤트/유스케이스 모델로부터 유사한 이벤트/유스케이스를 추출하여 해당 도메인에 공통적으로 사용되는 이벤트/유스케이스 모델을 추출하는 방법을 소개한다. 이 연구에서는 서점 관리 소프트웨어와 컨설팅 서비스 관리 소프트웨어를 사례로 들고 있는데, 서점관리 소프트웨어의 “책 구매” 유스케이스는 컨설팅 서비스 관리 소프트웨어의 “서비스 구매”와 그룹화 되고, 이를 추상화하여 “고객은 제품을 구매한다”라는 공통 유스케이스로 추출된다.
본문요약 정보가 도움이 되었나요?

질의응답

핵심어 질문 논문에서 추출한 답변
불완전한 요구사항이 야기하는 문제점은? 특히 불완전한 요구사항은 소프트웨어 프로젝트 실패의 가장 큰 원인으로 꼽힌다. 불완전한 요구사항은 소프트웨어 개발 시 개발자에게 이해 부족을 야기할 뿐 아니라, 소프트웨어 검증 시 에도 모호한 기준을 제공함으로써, 개발 후반부에 납기일 연기 및 비용 증가의 원인이 된다. 요구사항 패턴은 이러한 문제를 극복하는데 도움을 줄 수 있다.
요구사항 패턴을 추출하는 기법 중 S.Ketabchi 외 가 제안한 프로세스는 어떤 것인가? S.Ketabchi 외[6]는 도메인 모델로부터 요구사항 패턴을 추출하는 프로세스를 제안하였다. 이 프로세스는 먼저 도메인 모델로부터 문제 패턴(problem pattern)을 추출하여 저장소에 저장한다. 이 문제 패턴은 공통 도메인에서 사용하는 공통 비즈니스 규칙을 추출하는데 이 규칙은 비즈니스 규정, 상태, 제한사항들을 포함한다. 이 비즈니스 규칙은 놈(norm)의 형태로 표현되고, 이는 유사한 비즈니스 도메인에서 재사용될 수 있다. 요구사항 패턴을 식별하기 위해 도메인 분석가는 먼저 고객 모델 (stakeholder model)과 프로세스 모델(process model)을 식별한다. 고객모델은 고객을 분류하고 그들의 역할을 나타내고, 프로세스 모델은 고객 모델을 통해 시스템과 고객 사이에 상호작용을 분석한다. 분석된 결과는 각 역할별 고객들에게 해당하는 기능 요구사항과 비기능 요구 사항을 분류하여 놈(norm) 저장소에 저장한다.
요구사항 패턴의 이점은? 요구사항 패턴은 이러한 문제를 극복하는데 도움을 줄 수 있다. 요구사항 패턴은 요구사항 작성과 검토 시 참조모델이 될 뿐 아니라, 검증 기준이 될 수 있으며, 작성자가 누락한 부분을 보완해 줄 수 있다. 이와 더불어 요구사항 작성의 경험이 적은 작성자는 요구사항 패턴을 통해 더 쉽고, 빠르고 정확하게 요구사항을 작성할 수 있다. 본 논문에서는 다양한 요구사항의 시나리오를 통해 공통된 요구사항 시나리오를 추출하는 기법을 제안한다.
질의응답 정보가 도움이 되었나요?

참고문헌 (17)

  1. K. E. Wiegers, "Software Requirements", Microsoft press, 2013. 

  2. R. L Glass, "The standish report: does it really describe a software crisis?", Communications of the ACM, vol. 49, no. 8, pp.15-16, 2006. 

  3. S. Withall, "Software requirement patterns", Pearson Education, 2007. 

  4. A. Malfouz, L. Barroca, R. Laney and B. Nuseibeh, "Patterns for Service-oriented Information Exchange Requirements", In Proceedings of the 2006 conference on Pattern Language of Programs, 2006. 

  5. R. Biddle, J. Noble and E. Tempero, "Patterns for Essential Use Cases", Proceedings of KoalaPLoP, 2007. 

  6. S. Ketabchi, N. K. Sani and K. Liu, "A Norm-based Approach towards Requirement Patterns", In Computer Software and Applications Conference(COMPSAC), 2011. 

  7. C. Fellbaum, "WordNet", Wiley Online Library", 1998. 

  8. S. Robertson, "Requirements Patterns vis Event/ Use Cases", Proceedings Pattern Languages of Programming, 1996. 

  9. P. Resnik, "Using Information Content to Evaluate Semantic Similarity in a Taxonomy", arXiv preprint cmp-lg/9511007, 1995. 

  10. T. Pang-Ning, M. Steinbach and V. Kumar, "Introduction to Data Mining", In Library of Congress, 2006. 

  11. K. Ko, J. Lee, H. Moon and S. Lee, "Development of Data Fusion Human Identification System Based on Finger-Vein Pattern-Matching Method and photoplethysmography Identification", The International Journal of Internet, Broadcasting and Communication, vol.7, no.2, pp.149-154, 2015. 

  12. I. Alexander, "Scenario-driven search finds more exceptions", In Proceedings 11th IEEE International Workshop on Database and Expert System Application, 2000. 

  13. S. Withall, "Software Requirement Pattners", Pearson Education, 2007. 

  14. X. French, "Software Requirement Patterns". In Proceedings of the 2013 IEEE International Conference on Software Engineering, 2013. 

  15. Y. Kim, D. Ko, S. Park and J. Kim. "Requirements Alternative Flow Detection Method Using Use Case Patterns at Use Case Scenario", Journal of KISS : Software and Applications, vol. 40, no. 9, pp. 491-501, 2013. 

  16. X.Frach, C.Quer, S. Renault, C. Guerlain and C. Pal;omares, "Constructing and Using Software Requirement Patterns", In Managing Requirement Knowledge, pp. 95-116), 2013. 

  17. Y. S. Im, E. Y. Kang, "MPEG-2 Video Watermarking in Quantized DCT Domain," The Journal of The Institute of Internet, Broadcasting and Communication(JIIBC), Vol. 11, No. 1, pp. 81-86, 2011. 

저자의 다른 논문 :

LOADING...

관련 콘텐츠

오픈액세스(OA) 유형

BRONZE

출판사/학술단체 등이 한시적으로 특별한 프로모션 또는 일정기간 경과 후 접근을 허용하여, 출판사/학술단체 등의 사이트에서 이용 가능한 논문

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

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

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

선택된 텍스트

맨위로