은탄환은 없다

(은탄환은 없다 - 소프트웨어 공학의 본질속성과 우발성에서 넘어옴)

1 개요[ | ]

No Silver Bullet – Essence and Accidents of Software Engineering
은탄환은 없다 - 소프트웨어 공학의 본질속성과 우발성
은빛 탄환은 없다
  • 1986년 프레드릭 브룩스가 쓴 소프트웨어 공학 논문
  • 소프트웨어 개발의 복잡성을 일거에 해소할 마법(은탄환[1])같은 방법은 없다...
  • 프로그래머의 생산성을 마법처럼 즉각 향상시키는 기술이 향후 10년간(당시 기준) 나타나지 않을 것 같음
  • 본질적 복잡성(essential complexity)과 우발적 복잡성(accidental complexity)을 구별하여 대처해보자...

2 본질적 복잡성 해소방안[ | ]

(브룩스의 핵심 제안)

  • 소프트웨어제품 시장 활용
구입 가능한 것은 굳이 만들지 않도록 큰 시장 이용
  • 세련된 기법으로 요구명세서 작성 + 조기 프로토타입 활용
  • 점증적 개발
사용, 테스트 + 기능 추가하면서 유기적(계통적) 성장
  • 위대한 디자이너 육성
젊은 세대의 멋진 컨셉 디자이너 발굴·육성

3 우발적 복잡성 해소방안[ | ]

(도움이 될 것으로 보이는 "은탄환" 후보)

  • 고수준 프로그래밍 언어 사용
  • 객체지향 프로그래밍 (클래스, 캡슐화, 상속)
  • 비주얼 프로그래밍
  • 시분할 시스템
  • 통일된 프로그래밍 환경 (통합된 라이브러리, 파일포맷 등)
  • 인공지능, 전문가시스템
  • 프로그램 검증 기법

4 같이 보기[ | ]

5 참고[ | ]

  1. 괴물 늑대인간을 마법처럼 잠재울 수단
문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}