본문으로 이동
메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.

소프트웨어 개발 영역(Software Scope, 소프트웨어 범위)은 소프트웨어 프로젝트를 계획할 때 무엇을 어디까지 만들지 정하기 위해 기능·성능·제약 조건·인터페이스·신뢰도 등의 요소로 기술한 개발 대상의 경계이다.

프로젝트 계획은 개발 영역(범위)을 정하는 일에서 시작한다. 영역이 정해져야 필요한 인력과 하드웨어·소프트웨어 자원을 추정하고, 그것으로 개발 비용과 기간을 산정할 수 있다(소프트웨어 비용 산정, COCOMO). 프레스먼(Roger S. Pressman)은 소프트웨어 범위를 최종 사용자에게 제공할 기능과 입출력 데이터, 그리고 시스템을 둘러싸는 성능·제약 조건·인터페이스·신뢰도로 기술한다고 정리했다. 범위는 관리자와 기술자 모두가 이해할 수 있도록 모호하지 않게 써야 한다.

요소 정하는 것
기능(Function) 소프트웨어가 수행해야 할 일. 입력을 받아 무엇을 처리하고 무엇을 출력하는지 → 기능 요구사항
성능(Performance) 처리 시간, 응답 시간, 처리량, 동시 사용자 수 등 처리 능력에 대한 요구
제약 조건(Constraint) 개발 비용·기간, 사용할 하드웨어·운영체제, 표준·법규처럼 개발에 외부에서 주어진 제한
인터페이스(Interface) 소프트웨어가 외부와 맞닿는 접점. 아래 항목을 포함한다
신뢰도(Reliability) 고장 없이 정해진 기능을 수행해야 하는 정도. 안전이 중요한 시스템일수록 엄격하게 정한다

인터페이스에 포함되는 것

편집 원본 편집
  • 소프트웨어를 실행하는 하드웨어와, 소프트웨어에 의해 간접적으로 제어되는 장치
  • 이미 있어서 새 소프트웨어와 연결해야 하는 기존 소프트웨어
  • 단말기나 입출력 장치로 소프트웨어를 쓰는 사람(사용자 인터페이스)
  • 소프트웨어 앞뒤로 순서적으로 이어지는 연산(절차)

"소프트웨어가 간접적으로 제어하는 장치와 실행 하드웨어", "기존 소프트웨어와 새 소프트웨어를 잇는 소프트웨어", "순서적 연산으로 소프트웨어를 실행하는 절차"는 모두 소프트웨어 바깥과의 연결을 말하므로 기능·성능·제약 조건이 아니라 인터페이스에 해당한다.

요구사항과의 관계

편집 원본 편집