- 임베디드 시스템을 위한 그레이-박스 기반의 소프트웨어 요구사항 명세 기법
- ㆍ 저자명
- 박수진,박수용,Park. Soo-Jin,Park. Soo-Yong
- ㆍ 간행물명
- 정보과학회논문지. Journal of KIISE. 소프트웨어 및 응용
- ㆍ 권/호정보
- 2011년|38권 9호|pp.485-490 (6 pages)
- ㆍ 발행정보
- 한국정보과학회
- ㆍ 파일정보
- 정기간행물| PDF텍스트
- ㆍ 주제분야
- 기타
대부분의 구현 로직이 시스템 외부로 공개되지 않는 임베디드 시스템의 경우, 비즈니스 어플리케이션 분석에 널리 사용되는 사용자의 관점의 요구사항 영세 모델인 유스케이스 모델을 그대로 적용하는 데 한계가 있다. 유스케이스 모델의 블래박스 관점 기반의 시스템 분석은 시스템과 관련 환경과의 외부적인 상호작용 기술에 초점을 두고 있기 때문이다. 이러한 문제점 해결을 위해 기존 연구들은 상태 다이어그램을 이용하여 임베디드 시스템의 동적인 행위를 파악하여 그 결과를 요구사항 명세서에 반영하는 일종의 화이트-박스 기법을 소개하고 있다. 그러나, 소프트웨어 개발 라이프 주기 상 초기 단계에 해당되는 요구사항 분석 단계에서 화이트 박스 기반 모델링은 고비용을 요구하는 작업으로, 이로 인해 실제 프로젝트에서는 개발자들의 많은 저항에 부딪쳐 왔다. 본 연구는 이와 같은 두 가지의 접근방식에서 임베디드 개발을 위해 필요로 하는 정보의 양과 요구사항 단계에 소요되는 노력 비용, 두 가지 요소의 적점에 해당되는 요구사항 명세서를 제공하는 것을 그 목적으로 하고 있다. 이를 위해, 본 논문에서 제안하는 그레이-박스 기반의 요구사항 병세 기법은 요구사항 추출을 위한 임베디드 시스템 모델링의 적절한 깊이를 제시함은 물론, 작성된 모델을 기반으로 개별적인 개발자들이 자신이 맡은 컴포넌트의 API를 숙지하여 협업할 수 있는 요구사항 명세서를 자동으로 생성하는 메커니즘을 제안하고 있다.
The inner implementation logic of an embedded system is not exposed to users but encapsulated in the system, whereas the use case model is invented to show the interaction between outer environment and a system. This is the reason why we have difficulties in using the use case model which stands upon the black-box mechanism in documenting requirements of an embedded system. In this background, previous studies have introduced some white-box approaches that utilize state diagrams as a main tool to grasp inner behavior of the embedded software and make several specifications from the state diagrams. However, the construction of a fully analyzed state model in requirements elicitation requires lots of efforts which have discouraged software developers or caused their resistance. The objective of our study is to find the optimal point between the amounts of information which needs to develop a consistent embedded system and the effort cost that is consumed in requirements elicitation of the embedded system. To this end, we introduced a gray-box software requirements specification method that guides the extent of the system modeling, which can give sufficient information to software developers. Moreover, we introduced an automatic requirements specification mechanism for providing APIs of each software component and helping the collaboration between individual developers.