요구 공학에서 초기에 요구 사항을 추출하고 분석하는 것은 성공적인 소프트웨어 시스템을 개발하기 위한 중요한 작업이다. 그러나 시나리오 기반의 분석, 목표기반의 분석, 시나리오를 이용한 목표기반의 분석 등과 같은 다양한 분석 기법이 있음에도 불구하고, 각 기법들은 장, 단점을 가지고 있기 때문에, 하나의 기법만을 가지고 요구 사항을 분석한다면, 개발할 시스템 전체의 요구 사항을 정확하게 이해하기가 쉽지 않다. 또한 각각의 기법들은 요구 사항 추출 단계를 지원하지 않으므로 분석을 위한 가공되지 않은 데이타(raw data)를 다루기 어렵다. 본 논문에서는 요구 사항 분석을 위한 데이타 획득과 여러 기법들을 효율적으로 통합하는 통합적 요구 사항 분석 방안을 제안한다. 통합적 요구 사항 분석 방안은 2가지 관점에서 기술된다. 첫째는 어떤 요소들이 통합될 수 있는지를 기술하고, 두 번째는 그 요소들이 어떻게 통합되어야 하는지를 기술한다. 본 논문에서 제안된 방안이 어떻게 적용되는지를 미팅예약시스템(Meeting Reservation System)을 예로 설명한다. 또한 다른 기법들과의 비교를 위해 30여명의 요구 사항 분석 실무 경험자를 대상으로 한 실험의 결과를 통해 제안된 기법의 효과를 검증한다.
요구 공학에서 초기에 요구 사항을 추출하고 분석하는 것은 성공적인 소프트웨어 시스템을 개발하기 위한 중요한 작업이다. 그러나 시나리오 기반의 분석, 목표기반의 분석, 시나리오를 이용한 목표기반의 분석 등과 같은 다양한 분석 기법이 있음에도 불구하고, 각 기법들은 장, 단점을 가지고 있기 때문에, 하나의 기법만을 가지고 요구 사항을 분석한다면, 개발할 시스템 전체의 요구 사항을 정확하게 이해하기가 쉽지 않다. 또한 각각의 기법들은 요구 사항 추출 단계를 지원하지 않으므로 분석을 위한 가공되지 않은 데이타(raw data)를 다루기 어렵다. 본 논문에서는 요구 사항 분석을 위한 데이타 획득과 여러 기법들을 효율적으로 통합하는 통합적 요구 사항 분석 방안을 제안한다. 통합적 요구 사항 분석 방안은 2가지 관점에서 기술된다. 첫째는 어떤 요소들이 통합될 수 있는지를 기술하고, 두 번째는 그 요소들이 어떻게 통합되어야 하는지를 기술한다. 본 논문에서 제안된 방안이 어떻게 적용되는지를 미팅예약시스템(Meeting Reservation System)을 예로 설명한다. 또한 다른 기법들과의 비교를 위해 30여명의 요구 사항 분석 실무 경험자를 대상으로 한 실험의 결과를 통해 제안된 기법의 효과를 검증한다.
In Requirements engineering, requirements elicitation and analysis are very important tasks to develop software systems successfully. Even though various methods have been proposed including scenario-based analysis, goal based analysis, and coupling goal with scenario, each method has its own streng...
In Requirements engineering, requirements elicitation and analysis are very important tasks to develop software systems successfully. Even though various methods have been proposed including scenario-based analysis, goal based analysis, and coupling goal with scenario, each method has its own strengths and weaknesses. If you use only one method, it is very difficult to elicit and to analyze system requirements completely. Since these methods don't support a comprehensive elicitation process, this paper proposes an integrated approach. This integrated approach is focused on two viewpoints. One is what factors are comprised and the other is how they are integrated. This paper also shows how the proposed approach can be applied to Meeting Reservation System (MRS) development. An experiment has been conducted using this approach to demonstrate how complete requirements are elicited and analyzed and to show relative time savings during elicitation in comparison to each method.
In Requirements engineering, requirements elicitation and analysis are very important tasks to develop software systems successfully. Even though various methods have been proposed including scenario-based analysis, goal based analysis, and coupling goal with scenario, each method has its own strengths and weaknesses. If you use only one method, it is very difficult to elicit and to analyze system requirements completely. Since these methods don't support a comprehensive elicitation process, this paper proposes an integrated approach. This integrated approach is focused on two viewpoints. One is what factors are comprised and the other is how they are integrated. This paper also shows how the proposed approach can be applied to Meeting Reservation System (MRS) development. An experiment has been conducted using this approach to demonstrate how complete requirements are elicited and analyzed and to show relative time savings during elicitation in comparison to each method.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
단원 4에서 제안한 기법을 적용하기 위해 본 논문에서는 MRS (Meeting Reservation System) 을 예로 든다. MRS는 방과 장비 등의 자원을 할당하기 위한 시스템이다.
따라서 소프트웨어 개발 시에 누수 되는 요구사항이 발생하게 되고 이는 후에 많은 비용을 유발한다. 따라서 본 논문에서는 각 기법들의 장, 단점을 보완하는 통합적인 요구 사항분석 방안을 제안했다. 통합적인 요구 사항 분석 방안을 설명하기 위해 어떤 요소들이 통합되어야 하는지와 그 요소들이 어떻게 통합될 수 있는지에 대해 제안했다.
하지만 이러한 추출이 개발자를 위주로 지원하는 단점을 지닌다. 따라서 본 논문에서는 사용자 입장에서 쉽게 요구 사항을 도출하고 분석하기 위해 목표와 시나리오를 이용한 통합적요구 사항 분석방안을 제안한다.
분석한다[7]. 목표는 이해 관계자가 개발될 시스템에서 성취하고자 하는 것이며, 추상화된 최상위 수준의 요구사항이다[10]. 목표 기반의 분석을 위한 활동들은 목표분석(goal analysis)과 목표 진화(goal evolution)로 나눌 수 있다.
첫째는, 어떤 요소들이 통합되어야 하는 가에 대한 것, 둘째는 그 요소들이 어떻게 통합되어야 하는 가에 대한 것이다. 본 논문에서는 제안된 기법의 효과를 알기 위해 30명의 실무 경험자들을 대상으로 실험한 결과를 통해 제안하는 기법의 효과를 소개한다
만일 하나의 분석 기술만을 사용하여 요구 사항을 분석한다면, 완벽한 요구 사항 분석을 이루지 못해 사용자의 정확한 요구에 맞는 소프트웨어 개발이 어렵게 된다. 본 논문에서는 하나의 분석 기술만을 사용할 때 발생할 수 있는 문제점들을 해결하기 위해 통합적 요구 사항 분석방안을 제시한다. 통합적 요구 사항 분석 방안은 2가지 측면에서 기술된다.
그러므로 기능성은 46%(=12/26), 신뢰성은 23%(=6/26), 사용 편의성은 12%(= 3/26), 효율성은 0%(=0/26), 유지 용이성은 12%(=3/26), 호환성은 8%(=2/26)로 MRS에서 차지하는 비율이 나타난다. 이제 각 시나리오 별로 품질 면에서 MRS에서 차지하는 상대적인 값을 계산해본다. 시나리오 Sc, 에 대해 Sci의 상대값(RC: relative cost)는 다음과 같다.
따라서 본 논문에서는 각 기법들의 장, 단점을 보완하는 통합적인 요구 사항분석 방안을 제안했다. 통합적인 요구 사항 분석 방안을 설명하기 위해 어떤 요소들이 통합되어야 하는지와 그 요소들이 어떻게 통합될 수 있는지에 대해 제안했다. 또한 요구 사항 획득, 분석 단계에서 간략하게(semicaptured) 소프트웨어 품질 속성을 고려한 방안을 제시했다.
제안 방법
2.1~2.3에서 언급한 방법들을 요구 사항 분석 기법이 가져야 하는 유효성검사(check validation)[ll], 정형화(formalization)[ll], 추상화(abstraction level)[12], 도메인 지식 표현(domain knowledge), 다양한 관점 (various view)[13], 요구사항 완전성 (completeness)[13]의 항목으로 비교, 분석해 보았으며 결과는 표 1에서 볼 수 있다.
3장에서 언급한 통합되어야 할 요소와 통합하는 방법을 기반으로 구체적인 통합공정을 통해 통합적 요구 사항 추출, 분석 기법을 제안한다.
실험을 위해 30명을 5명씩 6개의 조로 나눴고, 6개의 조는 다시 A파트와 B파트로 나눴다. A파트의 경우에는 MRS예제에 시나리오 기반의 분석, 목표 기반의 분석, 본 논문에서 제안하는 분석을 적용했고, B 파트의 경우에는 EBS예제에 A파트와 동일 방식으로 적용했다. 실험 결과는 크게 2가지로 얼마나 정확하게 요구 사항을 획득하는 가에 대한 완전성 (completeness)와 얼마의 시간이 소요되는 지에 대한 시간비용(time cost)으로 나눴다.
완전성은 이미 요구 사항이 분석된 문서롤 기준으로 하여 제안된 기법을 통해 나온 분석물이 얼마나 완전하게 분석되는지를 비교 검토하였다. MRS에 대해 기준이 되는 분석서는 OMG(Object Management Group) 에서 제공하는 문서[19]로 삼았고 EBS에 대해서는 Rational의 자료를 기준으로 삼아서 비교하였다. 요구 사항 분석의 완전성은 두 예제의 평균갑을 구해 기술하였다.
비즈니스 기술 모델에는 에이전트가 참석자(participant), 예약자(organizer), MRS가 나타났었다. 개발할 시스템은 MRS이므로 MRS를 중심으로 각 에이전트들 간의 상호작용을 기술한다. 이때 비즈니스기술 모델에 나타났던 액티비티, 후보목표, 이벤트 등을 참조하여 기술하게 된다.
이를 통해 개발할 시스템에서 차지하고 있는 품질속성들의 비중을 파악하여 시스템개발에 주의를 두어야 할 품질 속성을 제공한다. 그리고 각 시나리오 별로 품질 속성에 관련 정도를 계산하여 시나리오 기반의 요구사항들을 품질 측면에서 상대적인 비교를 제공한다.
통합적인 요구 사항 분석 방안을 설명하기 위해 어떤 요소들이 통합되어야 하는지와 그 요소들이 어떻게 통합될 수 있는지에 대해 제안했다. 또한 요구 사항 획득, 분석 단계에서 간략하게(semicaptured) 소프트웨어 품질 속성을 고려한 방안을 제시했다. 제안된 방안에 대한 검증 방법으로 소프트웨어 개발을 위한 분석 경험이 5~10년이 되는 30명의 경험자에게 본 기법을 교육 후에 2개의 예제에 대해 적용해보았다.
본 논문에서 제안한 통합적 요구 사항 분석 기법의 효율성과 용이성을 검증하기 위해, 30명의 시스템 개발관련에 종사하는, 5~10년 된 실무 경력자들을 대상으로, 2개의 서로 다른 예제에 각각 시나리오 기반 분석 방법, 목표 기반 분석 방법, 통합적 분석 방법을 적용하였다. 적용된 예제는 본 논문에서 소개한 MRS와 전자입찰시스템(EBS: Electronic Bid System)을 적용했다.
된다. 본 논문에서는 이를 위해 생성된 시나리오를 소프트웨어 품질 모델[16]에 비추어 각 시나리오별로 어떤 품질이 나타나고 있는지를 매트릭스로 표시하였고-시나리오가 잠재적으로 갖고 있는 품질 모델 속성에 대해 개발자, 사용자가 모여서 정한다-각 속성별로 산출되는 상대적 값을 계산하는 식을 제공한다. MRS의 최종 시나리오를 품질 모델에 매핑 시킨 것은 그림 15와 같다.
비즈니스 기술에서 나타난 에이전트들 간의 상호작용을 통해 시나리오를 생성한다. 에이전트들 간의 상호작용은 비즈니스 기술 모델에서 나타난 여러 개체들을 참조하여 시나리오로 기술된다.
생성된 시나리오는 분류(Classification), 추상화(Abstraction)를 거쳐 시스템 목표Intial goal)를 식별하게 되고 이를 기반으로 검증 시나리오(Validation scenario)가 시나리오 작성 (scenario authoring)에 의해 만들어진다. 상호작용에서 생성된 시나리오와 시나리오 작성에서 생성된 시나리오를 서로 비교하여 합집합을 구한 후 이를 기반으로 품질속성을 매핑한다.
요구 사항 분석의 완전성은 두 예제의 평균갑을 구해 기술하였다. 시간 비용의 측정은 5명씩 이뤄진 조별로 요구 사항 분석을 시작할 때와 마쳤을 때를 기준으로 시간을 명시하도록 하여 가장 오래 걸린 통합적 분석 기법을 100으로 놓고 다른 기법들을 사용할 때에 걸린 시간을 상대적인 값으로 기술하였다. 그림 16, 17은 각 기법들을 적용한 결과로 요구 사항 완전성과 시간비용을 보여준다.
시스탬의 영역을 설정하기 위해 비즈니스를 기술(Business Description)하고 이를 바탕으로 개체들 간의 상호작용(Interaction)을 통해 시나리오를 생성하여 요구사항을 추출한다. 생성된 시나리오는 분류(Classification), 추상화(Abstraction)를 거쳐 시스템 목표Intial goal)를 식별하게 되고 이를 기반으로 검증 시나리오(Validation scenario)가 시나리오 작성 (scenario authoring)에 의해 만들어진다.
실험 결과는 크게 2가지로 얼마나 정확하게 요구 사항을 획득하는 가에 대한 완전성 (completeness)와 얼마의 시간이 소요되는 지에 대한 시간비용(time cost)으로 나눴다. 완전성은 이미 요구 사항이 분석된 문서롤 기준으로 하여 제안된 기법을 통해 나온 분석물이 얼마나 완전하게 분석되는지를 비교 검토하였다. MRS에 대해 기준이 되는 분석서는 OMG(Object Management Group) 에서 제공하는 문서[19]로 삼았고 EBS에 대해서는 Rational의 자료를 기준으로 삼아서 비교하였다.
MRS에 대해 기준이 되는 분석서는 OMG(Object Management Group) 에서 제공하는 문서[19]로 삼았고 EBS에 대해서는 Rational의 자료를 기준으로 삼아서 비교하였다. 요구 사항 분석의 완전성은 두 예제의 평균갑을 구해 기술하였다. 시간 비용의 측정은 5명씩 이뤄진 조별로 요구 사항 분석을 시작할 때와 마쳤을 때를 기준으로 시간을 명시하도록 하여 가장 오래 걸린 통합적 분석 기법을 100으로 놓고 다른 기법들을 사용할 때에 걸린 시간을 상대적인 값으로 기술하였다.
유스케이스 지향 분석은 유스케이스와 액터간의 상호작용이 중심이 되어 사용자의 요구사항을 분석한다. 유스케이스를 추출하고 분류할 때에 시스템이 개발될 상황을 고려하기 때문에 요구사항 분석이 사용자 입장보다는 개발자의 입장에 가깝게 분석된다.
따라서 추출 분석 단계에서 품질을 고려한다면 시스템 개발 시 비용 감축을 가져을 수 있다. 이를 위해 본 논문에서는 획득된 요구 사항을 시나리오로 표현했고 시나리오들이 표현되었을 때에 나타날 수 있는 소프트웨어 품질 속성을 식별한다[16]. 식별된 품질 속성들을 해당 시나리오와 관련되어 있는지롤 불리언 값(boolean value)으로 나타낸다[17].
적용하였다. 적용된 예제는 본 논문에서 소개한 MRS와 전자입찰시스템(EBS: Electronic Bid System)을 적용했다. 전자입찰시스템은 희사의 사무용품을 웹 환경에서 입찰을 받아 낙찰 프로세스를 거쳐 자동으로 회사의 정책을 반영한 입찰자를 선정하는 시스템이다.
또한 요구 사항 획득, 분석 단계에서 간략하게(semicaptured) 소프트웨어 품질 속성을 고려한 방안을 제시했다. 제안된 방안에 대한 검증 방법으로 소프트웨어 개발을 위한 분석 경험이 5~10년이 되는 30명의 경험자에게 본 기법을 교육 후에 2개의 예제에 대해 적용해보았다. 그 결과로 본 논문에서 제안한 기법이 요구 사항을 정확하게 획득하는데 효과가 나타났으나, 적용하는데 다른 기법에 비해 많은 시간이 필요했다.
따라서 비즈니스 기술 모델에서 에이전트에 관리자가 추가된다. 추가된 에이전트와 MRS간의 상호작용을 기반으로 시나리오를 재생성 한다. 그림 12는 시스템 관리자와 MRS간의 상호작용을 나열하여 시나리오를 생성하는 것이다.
대상 데이터
전자입찰시스템은 희사의 사무용품을 웹 환경에서 입찰을 받아 낙찰 프로세스를 거쳐 자동으로 회사의 정책을 반영한 입찰자를 선정하는 시스템이다. 실험을 위해 30명을 5명씩 6개의 조로 나눴고, 6개의 조는 다시 A파트와 B파트로 나눴다. A파트의 경우에는 MRS예제에 시나리오 기반의 분석, 목표 기반의 분석, 본 논문에서 제안하는 분석을 적용했고, B 파트의 경우에는 EBS예제에 A파트와 동일 방식으로 적용했다.
성능/효과
제안된 방안에 대한 검증 방법으로 소프트웨어 개발을 위한 분석 경험이 5~10년이 되는 30명의 경험자에게 본 기법을 교육 후에 2개의 예제에 대해 적용해보았다. 그 결과로 본 논문에서 제안한 기법이 요구 사항을 정확하게 획득하는데 효과가 나타났으나, 적용하는데 다른 기법에 비해 많은 시간이 필요했다.
따라서 MRS에서 나타나는 모든 시나리오에 나타나는 품질 속성의 개수는 총 26개가 된다. 그러므로 기능성은 46%(=12/26), 신뢰성은 23%(=6/26), 사용 편의성은 12%(= 3/26), 효율성은 0%(=0/26), 유지 용이성은 12%(=3/26), 호환성은 8%(=2/26)로 MRS에서 차지하는 비율이 나타난다. 이제 각 시나리오 별로 품질 면에서 MRS에서 차지하는 상대적인 값을 계산해본다.
반면에 시간 비용에서는 통합적 분석을 100으로 볼 때에 시나리오 기반의 분석이 38, 목표 기반의 분석이 50을 나타냈다. 따라서 요구사항을 얼마나 정확하게 획득하고 분석하는 가에서는 제안된 통합적 요구 사항 분석 방안이 우수한 것으로 판명되었으나, 기법을 적용하는데 있어서는 상대적으로 많은 시간이 필요함을 알 수 있었다.
A파트의 경우에는 MRS예제에 시나리오 기반의 분석, 목표 기반의 분석, 본 논문에서 제안하는 분석을 적용했고, B 파트의 경우에는 EBS예제에 A파트와 동일 방식으로 적용했다. 실험 결과는 크게 2가지로 얼마나 정확하게 요구 사항을 획득하는 가에 대한 완전성 (completeness)와 얼마의 시간이 소요되는 지에 대한 시간비용(time cost)으로 나눴다. 완전성은 이미 요구 사항이 분석된 문서롤 기준으로 하여 제안된 기법을 통해 나온 분석물이 얼마나 완전하게 분석되는지를 비교 검토하였다.
완전성 측면에서는 예제에 상관없이 시나리오 기반의 분석이 30%, 목표 기반의 분석이 40%, 통합적인 분석이 86%의 완전성을 보여줬다. 반면에 시간 비용에서는 통합적 분석을 100으로 볼 때에 시나리오 기반의 분석이 38, 목표 기반의 분석이 50을 나타냈다.
미팅참가자들은 공지를 수신하고 MRS에게 응답을 한다. 응답을 받온 MRS는 미팅을 “6. Confirm”하고 미팅 예약자에게 완료됨을 알린다. 만일 미팅 참가자에서부터 응답이 오지 않으면 “6.
후속연구
또한, 본 논문에서 제안된 기법을 적용하는데 있어서 시간을 절약하기 위한 기법의 간소화에 대한 연구가 필요하다. 제안된 방안의 활성화를 위해 유스케이스 분석 방안의 연계성에 관해서도 연구가 진행 중이다.
또한, 본 논문에서 제안된 기법을 적용하는데 있어서 시간을 절약하기 위한 기법의 간소화에 대한 연구가 필요하다. 제안된 방안의 활성화를 위해 유스케이스 분석 방안의 연계성에 관해서도 연구가 진행 중이다.
향후 연구 과제로는 본 논문에서 나타나는 검증을 위한 시나리오 작성 시에 시나리오를 이용한 목표 기반분석 기법을 이용하므로 목표들의 정제 완료가 어디서 일어나야 하는 지에 대한 명확한 방안을 제시해야 하며, 품질 속성으로 요구 사항의 중요도를 결정하기 위한 가중치 계산 방법이 추가 되어야 할 필요가 있다. 또한, 본 논문에서 제안된 기법을 적용하는데 있어서 시간을 절약하기 위한 기법의 간소화에 대한 연구가 필요하다.
참고문헌 (20)
Richard H.Thayer, Merlin Dorfman, Software Requirements Engineering, 2nd Edition IEEE Computer Society Press, 1997
Daniel Gross, Eric Yu, From Non-Functional Requirements to Design through Patterns, Requirements Engineering, Springer-Verlag, 2001, pp. 18-36
Steve McConnell, Code Complete: A Practical Handbook of Software Construction, Microsoft Press, 1993
Ivar Jacobson, 'Four Macro Trend in Software Development,' Korea Conference of Software Engineering, 2002, pp. 1-14
Sutcliffe, A, 'Scenario based requirement analysis,' Requirements Engineering Journal, 1998, pp. 48-65
V.Plihon, J.Ralyte, A.Benjamen, N.A.M. Maiden, A.Sutcliffe, E.Dubois, and P.Heymans, 'A Reuse-Oriented Approach for the Construction of Scenario Based methods,' Proc. Int'l Software process Assoc. Fifth Int'l Conf. Software Process(ICSP'98), Chicago, June 1998, pp. 14-17
Annie I. Anton, 'Goal-Based Requirements Analysis,' Proceedings of ICRE 96, pp. 136-144
Anne Dardenne, Axel van Lamsweerde, Stephen Fickas, 'Goal-Directed Requirements Acquisition,' Science of Computer Programming, 20(1-2), 1993, pp. 3-50
C. Rolland, C. Souveyet, C. Ben Achour, 'Guiding Goal Modelling using Scenarios,' IEEE Transactions on Software Engineering, Special Issue on Scenario Management, Vol. 24, No. 12, Dec. 1998. pp 1055-1071
E. Yu and J. Mylopoulos, 'Why Goal-Oriented Requirements Engineering,' Proceedings of the 4th International Workshop on Requirements Engineering: Foundations of Software Quality(8-9 June 1998, Pisa, Italy). E. Dubois, A.L. Opdahl, K. Pohl, eds. Presses Universitaires de Namur, 1998. pp.15-22
Colette Rolland, Georges Grosz, Regis Kla, 'Experience With Goal-Scenario Coupling In Requirements Engineering,' Requirements Engineering. 1999 Proceedings. IEEE International Symposium on, 1999 Page(s): 74-81
Gerald Kotonya, Ian Sommerville, Requirements Engineering processes and techniques, Wiley, 1997, pp. 139-14
Alan M. Davis, Software Requirements-Analysis and specification, Prentice Hall, 1990, pp. 46-51
Annie I. Antn, Goal Identification and Refinement in the Specification of Software-Based Information Systems, Ph.D. Thesis, Georgia Institute of Technology, Atlanta, GA, USA, June 1997
International Organization for Standards, ISO/IEC 9126-1 Information Technology; Software Product Quality, International Organization for Standards, 2002
Paul Clements, Rick Kazman, Mrak Klein, Evaluating Software Archtectures : Methods and Case Studies, Addison-Wesley, 2002, pp 211-239
Maiden, N.A.M., Sutcliffe, A.G., Requirements critiquing using domain abstractions. In: Proceedings First International Conference on Requirements Engineering, J. Siddiqi (ed.) IEEE Computer Society Press, 1994, 184-193
OMG, A UML Profile for Enterprise Distributed Object Computing Specification, 2002-08, pp B-1-B-3
※ AI-Helper는 부적절한 답변을 할 수 있습니다.