PRAiSE: A Rule-based Process-centered Software Engineering Environment

PRAiSE : 규칙 기반 프로세스 중심 소프트웨어 공학 환경

  • 이형원 (강릉대학교 컴퓨터공학과) ;
  • 이승진 (성공회대학교 소프트웨어공학과)
  • Published : 2005.06.01

Abstract

Rule-based paradigm is one of the principal types of software process modeling and enaction approaches, as they provide formality and flexibility sufficient to handle complex processes. However, the systems adopting rule-based paradigms are hard to define and understand process models, and their inference engine should be modified or redeveloped at worst according to the change of process language. In this paper, we describe a rule-based PSEE(Process-Centered Software Engineering Environment) PRAiSE that solves the above limitations of existing rule-based PSEEs as well as maintains the merits of rule-based paradigm such as the ability to incorporate the nature of software processes flexibly in which dynamic changes and parallelism are pervasive and prevalent. PRAiSE provides RAiSE, a graphical Process modeling language, and defined process models are interpreted and enacted by process engine implemented using CLiPS, a rule based expert system tool.

규칙 기반 패러다임은 복잡한 프로세스를 처리할 수 있는 정형성과 융통성을 제공하기 때문에 여러 프로세스 중심 소프트웨어 공학 환경에 도입되어 왔다 그러나, 기존의 규칙 기반 패러다임을 채택한 시스템들의 경우 프로세스 모델을 작성하거나 이해하기 어렵고 프로세스 모델링 언어가 확장 또는 개선될 때마다 추론 엔진을 수정하거나 최악의 경우에는 새로 개발하여야 한다. 본 논문에서는 빈번히 발생하는 프로세스 변경에 유동적으로 대처할 수 있으며 프로세스 모델을 규칙기반 언어의 사실로 직관적으로 맵핑함으로써 프로세스의 병렬성을 효과적으로 제어할 수 있다는 규칙 기반 패러다임의 장점을 살리면서 기존 규칙 기반 PSEE의 단점인 사용의 용이성과 추른 엔진의 안정성 문제를 해결한 PRAiSE 시스템을 기술한다. PRAiSE에서는 RAiSE라는 그래픽 프로세스 모델링 언어를 제공하며 작성된 프로세스 모델은 규칙 기반 전문가 시스템 도구인 CLiPS로 구현한 프로세스 엔진에 의해 해석되고 실행된다.

Keywords

References

  1. Fuggetta, A. and Wolf, A., Software Process, John Wiely & Sons Ltd., 1996
  2. Peuschel, B, Schfer, W. and Wolf, S., 'Knowledge-based Software Development Environment Supporting Cooperative Work,' Journal on Software Engineering and Knowledge Engineering, 1992
  3. Junkermann, G., Peuschel, B., Schfer W. and Wolf, S., 'MERLIN: Supporting Cooperation in Software Development Through a Knowledge-Based Environment,' Software Process Modeling and Technology, Research Studies Press Limited, 1994
  4. Alan, M. C, Software Process Automation, Springer, 1995
  5. Burkhard, P. and Wilhelm, S., 'Concepts and Implementation of a Rule-based Process Engine,' Proceedings of 14th International Conference on Software Engineering, 1992 https://doi.org/10.1145/143062.143126
  6. 이형원, 최상일, 'RAiSE: 다중 패러다임을 결합한 프로세스 모델링 언어', 2003년도 정보처리학회춘계학술발표논문집, 10권 1호, No.1, pp. 1665-1668, May 2003
  7. Giarratano, J., CLiPS Basic Programming Guide, http://www.ghg.net/clips/, 1998
  8. Sutton, Jr., S.M., Tarr, P.L, and Osterweil, L.J., 'An Analysis of Process Languages,' Technical Report 95-78, Department of Computer Science, University of Massachusetts at Amherst, November 1995
  9. Kellner, M.I., Feiler, P.H., Finkelstein, A., Katayama, T., Osterweil, L.J., Penedo, M.H., and Rombach, H.D., 'ISPW-6 Software Process Example,' Proceedings of the First International Conference on Software Process, pp. 176-186, 1991
  10. Osterweil, L., 'Software Processes Are Software Too,' Proceedings of the 9th International Conference on Software Engineering, pp. 2-13, 1987