(1) 개발 환경 구축
개발 도구의 분류
구분 |
설명 |
종류 |
빌드 도구 |
- 작성한 코드의 빌드 및 배포를 수행하는 도구 |
|
- 각각의 구성요소와 모듈에 의한 의존성 관리 지원 | Ant, Maven, Gradle |
| 구현 도구 | - 개발자의 코드 작성과 디버깅, 수정 등과 같은 작업을 지원하는 도구 | Eclipse, IntelliJ, Spring Tool Suite |
| 테스트 도구 | - 코드의 기능 검증과 전체의 품질을 높이기 위해 사용하는 도구
- 코드의 테스트, 테스트에 대한 계획, 수행 및 분석 등의 작업 가능 | xUnit, PMD, Findbugs, Cppcheck, Sonar |
| 형상 관리 도구 | - 개발자들이 작성한 코드와 리소스 등 산출물에 대한 버전 관리를 위한 도구 | CVS, Subversion, Git |
하드웨어 환경
종류 |
특징 |
**웹 서버 |
|
(Web Server)** |
- 클라이언트로부터 직접 요청을 받아 처리함. |
- 저용량의 정적 파일들을 제공. |
| 웹 어플리케이션 서버
(WAS; Web Application Server) | 동적 서비스를 제공하거나, 웹 서버와 데이터베이스 서버 또는 웹 서버와 파일 서버 사이에서 인터페이스 역할을 수행. |
| 데이터베이스 서버
(DB Server) | 데이터베이스와 이를 관리하는 DBMS를 운영함. |
| 파일 서버
(File Server) | 데이터베이스에 저장하기에는 비효율적이거나, 서비스 제공을 목적으로 유지하는 파일들을 저장함. |
(2) 형상 관리(Configuration Management)

형상 관리 절차 [식통감기]
| 형상 식별 | - 형상 관리 대상을 정의 및 식별하는 활동
- 추적성 부여를 위해 ID와 관리 번호를 부여
- 변경 관련 이슈 발생 시 ID와 관리 번호를 이용하여 추적 |
| --- | --- |
| 형상 통제 | - 형상 항목의 버전 관리를 위한 형상 통제 위원회(CCB) 운영
- 변경 요구 관리, 변경 제어, 형상 관리 등 통제 지원
- 베이스라인에 대한 관리 및 형상 통제 수행 가능 |
| 형상 감사 | - 소프트웨어 베이스라인의 무결성 평가
- 베이스라인 변경 시 요구사항과 일치 여부 검토 |
| 형상 기록 | - 소프트웨어 형상 및 변경 관리에 대한 각종 수행 결과를 기록
- 형상 결과 보고서 작성 |
소프트웨어 형상 관리 도구 유형