클린룸 소프트웨어 엔지니어링
Cleanroom software engineering| 다음에 대한 시리즈 일부 |
| 소프트웨어 개발 |
|---|
클린룸 소프트웨어 엔지니어링 프로세스는 인증 가능한 수준의 신뢰성을 갖춘 소프트웨어를 생산하기 위한 소프트웨어 개발 프로세스다. 클린룸 공정은 원래 할란 밀스와 IBM의 앨런 헤브너를 포함한 그의 동료들에 의해 개발되었다.[1] 클린룸 공정의 초점은 결함 제거보다는 결함 예방에 있다. '클린룸'이란 명칭은 반도체 제조 과정에서 결함이 유입되는 것을 막기 위해 전자산업에서 사용하는 클린룸을 환기하기 위해 선택됐다. 클린룸 공정은 1980년대 중후반에 처음 사용되었다. 군 내부의 데모 프로젝트는 1990년대 초에 시작되었다.[2] 최근 클린룸 공정에 대한 연구는 CSP에 표시된 사양에 의해 제공되는 자동화된 검증 기능을 가진 퓨전 클린룸을 검토했다.[3]
중심원리
클린룸 프로세스의 기본 원칙은
- 공식적인 방법에 기반한 소프트웨어 개발
- 일부 수학적 형식주의에 기초한 소프트웨어 도구 지원에는 모델 검사, 프로세스 알헤브라스, 페트리 그물 등이 포함된다. 박스 구조 방법은 소프트웨어 제품을 지정하고 설계하는 수단 중 하나일 수 있다.[4] 설계가 규격을 올바르게 구현하는지 검증은 종종 소프트웨어 도구 지원을 통해 팀 검토를 통해 수행된다.
- 통계적 품질 관리 하에 증분 구현
- 클린룸 개발은 반복적 접근법을 사용하며, 제품이 점진적으로 구현된 기능성을 증가시키는 증분 방식으로 개발된다. 각 증분의 품질을 사전 설정된 표준에 대해 측정하여 개발 프로세스가 허용 가능한 방식으로 진행되고 있는지 검증한다. 품질 표준을 충족하지 못하면 현재 증분에 대한 시험이 중단되고 설계 단계로 되돌아간다.
- 통계적 음향 테스트
- 청정실 공정에서의 소프트웨어 시험은 통계 실험으로 실시한다. 공식적인 규격에 기초하여 소프트웨어 입출력 궤적의 대표적인 서브셋을 선택하고 시험한다. 그런 다음 이 표본을 통계적으로 분석하여 소프트웨어의 신뢰성과 그 추정치에 대한 신뢰도 수준을 산출한다.
참조
- ^ Mills, H.; M. Dyer; R. Linger (September 1987). "Cleanroom Software Engineering" (PDF). IEEE Software. 4 (5): 19–25. doi:10.1109/MS.1987.231413. S2CID 383170.
- ^ Foreman, John (2005). "Cleanroom Software Engineering Reference". Software Technology Roadmap. Software Engineering Institute (SEI). Retrieved 2006-04-27.
- ^ Guy H. Broadfoot and P. J. Hopcroft (2005). "Introducing formal methods into industry using Cleanroom and CSP". Dedicated Systems e-Magazine. S2CID 14066854.
{{cite journal}}: Cite 저널은 필요로 한다.journal=(도움말) - ^ Linger, R. (April 1994). "Cleanroom Process Model". IEEE Software. 11 (2): 50–58. CiteSeerX 10.1.1.130.8642. doi:10.1109/52.268956. S2CID 206447346.
추가 읽기
- Stavely, Allan (1999). Toward Zero-Defect Programming. Addison-Wesley.
- Stacy J. Prowell and Carmen J. Trammell and Richard C. Linger and Jesse H. Poore (1999). Cleanroom Software Engineering: Technology and Process. Addison-Wesley.
- Jesse H. Poore and Carmen J. Trammell (1996). Cleanroom Software Engineering: A Reader. NCC Blackwell.
