핵심 개념
이 논문은 혁신적인 소프트웨어 개발 환경인 "Software through Pictures"의 개발 배경과 다양한 소프트웨어 제품과의 통합을 통해 소프트웨어 개발 수명주기 전반을 지원하는 소프트웨어 엔지니어링 환경 구축을 위한 설계 원칙을 설명한다.
초록
이 논문은 소프트웨어 엔지니어링 환경의 역사적 배경과 혁신적인 "Software through Pictures" 환경의 설계 원칙을 설명한다.
-
1960년대 후반과 1970년대 초반에 등장한 초기 프로그래밍 환경들은 프로그램 작성, 편집, 실행을 지원하는 통합 개발 환경(IDE)이었다. 이후 1983년 Turbo Pascal의 등장으로 IDE 사용이 급격히 증가했다.
-
소프트웨어 엔지니어링 분야가 등장하면서 프로그래밍 외에도 소프트웨어 개발 프로세스와 도구에 대한 관심이 높아졌다. 미국 국방부가 스폰서한 Ada 프로그래밍 언어 개발과 함께 Ada 프로그래밍 지원 환경(APSE)에 대한 요구사항이 정의되었다.
-
저자가 참여한 User Software Engineering(USE) 프로젝트는 사용자 인터페이스 설계를 소프트웨어 개발 방법론에 도입했다. USE 도구 세트에는 프로토타이핑 도구, 관계형 DBMS, 프로그래밍 언어 등이 포함되었다.
-
이를 바탕으로 저자가 설립한 Interactive Development Environments, Inc.(IDE)는 다양한 그래픽 기반 소프트웨어 설계 방법론을 지원하는 "Software through Pictures(StP)" 제품을 개발했다. StP는 모델의 일관성 검사와 아티팩트 자동 생성 기능을 제공했다.
-
StP의 설계는 Unix의 설계 원칙을 따랐다. 모듈 간 통신을 위한 공유 DBMS와 개방형 인터페이스를 사용했으며, 이를 통해 다양한 플랫폼과 도구 간 통합이 가능했다.
-
StP는 1984년 상용화되어 15년 이상 지속적으로 발전했으며, 다른 소프트웨어 제품과의 통합을 지원했다. 이를 통해 소프트웨어 엔지니어링 환경 통합을 위한 프레임워크가 개발되었다.
통계
1960년대 후반과 1970년대 초반에 Dartmouth BASIC, WATFOR, WATFIV, INTERLISP 등의 초기 프로그래밍 환경이 등장했다.
1983년 Turbo Pascal의 등장으로 IDE 사용이 급격히 증가했다.
미국 국방부가 스폰서한 Ada 프로그래밍 언어 개발과 함께 Ada 프로그래밍 지원 환경(APSE)에 대한 요구사항이 정의되었다.
USE 도구 세트에는 프로토타이핑 도구 RAPID/USE, 관계형 DBMS Troll/USE, 프로그래밍 언어 PLAIN 등이 포함되었다.
StP는 1984년 상용화되어 15년 이상 지속적으로 발전했다.
인용구
"StP was not a monolithic system, but rather a collection of modules (more than 50) that communicated with one another through a shared relational DBMS and procedure calls."
"All of the interfaces and file formats were documented and made available to users, including the schema of the database, making StP as open as possible, and available to others for tool integration."
"StP took advantage of the Network File System (new at the time) and the X Windows System. The result was that StP worked in a heterogeneous network environment with different brands of workstations."