SMALL
1. 개발 도구 분류 (빌구테형)
- 빌드 도구
- 작성한 코드의 빌드 및 배포를 수행하는 도구
- 각각의 구성요소와 모듈에 대한 의존성 관리를 지원
- 구현 도구
- 개발자의 코드 작성과 디버깅, 수정 등과 같은 작업을 지원하는 도구
- 프로그램을 개발할 때 가장 많이 사용되는 도구
- 테스트 도구
- 코드의 기능 검증과 전체의 품질을 높이기 위해 사용되는 도구
- 코드의 테스트, 테스트에 대한 게획, 수행 및 분석 등의 작업 가능
- 형상 관리 도구
- 개발자들이 작성한 코드와 리소스 등 산출물에 대한 버전 관리를 위한 도구
- 프로젝트 진행 시 필수로 포함되는 도구
2. 서버 하드웨어 개발 환경
- 웹 서버
- HTTP를 이용한 요청/응답 처리
- 웹 상의 정적 콘텐츠(CSS, Javascript, Image) 처리
- WEB-WAS-DB 계층 구조를 실무에서 사용
- 웹 애플리케이션 서버
- 동적 콘텐츠(Servlet, JSP)를 처리하기 위해 사용
- 데이터베이스 서버
- 데이터의 수집, 저장을 위한 용도로 사용
- 파일 서버
- 파일 저장 하드웨어로 물리 저장장치를 활용한 서버
3. 소프트웨어 개발 환경
- 운영 체제
- 서버의 하드웨어를 사용자 관점에서 편리하고 유용하게 사용하기 위한 소프트웨어
- 프로젝트의 성격에 따른 운영체제 사용
- 미들웨어
- 컴퓨터와 컴퓨터 간의 연결을 쉽고 안전하게 할 수 있도록 해주고 이에 대한 관리를 도와주는 소프트웨어
- 자바 기반 환경에서 JVM을 설치하여 컨테이너로이 기능을 주로 이용
- DBMS
- 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해주고, 데이터베이스를 관리해주는 소프트웨어
- 데이터베이스의 저장 및 활용ㅇㄹ 위해 DBMS를 설치
4. 형상관리
- 형상관리는 소프트웨어 개발을 위한 전체 과정에서 발생하는 모든 항목의 변경 사항을 관리하기 위한 활동
5. 형상관리 절차 (식통감기)
- 형상 식별
- 형상 관리 대상을 정의 및 식별
- 추적성 부여를 위해 ID와 관리번호를 부여
- 형상 통제
- 형상 목적의 버전 관리를 위한 형상통제위원회 운영
- 베이스라인에 대한 관리 및 형상 통제 및 수행 가능
- 형상 감사
- 소프트웨어 베이스라인의 무결성 평가
- 베이스라인 변경 시 요구사항과 일치 여부 검토
- 형상 기록
- 소프트웨어 형상 및 변경 관리에 대한 각종 수행 결과 기록
- 형상결과 보고서 작성
6. 소프트웨어 형상 관리 도구 유형 (공클분)
- 공유 폴더 방식 (RCS, SCCS)
- 매일 개발이 완료된 파일은 약속된 위치의 공유 폴더에 복사하는 방식
- 담당자 한명이 매일 공유 폴더의 파일을 자기 PC로 복사하고 컴파일하여 에러 확인과 정상 동작 여부 확인
- 클라이언트/서버 방식 (CVS, SVN)
- 중앙에 버전 관리 시스템을 항시 동작시키는 방식
- 개발자들의 현재 작업 내용과 이전 작업 내용 추적에 용이
- 서로 다른 개발자가 같은 파일을 작업했을 때 경고 메시지 출력
- 분산 저장소 방식 (Git)
- 로컬 저장소와 원격 저장소로 분리되어 분산 저장하는 방식
- 중앙의 저장소에서 로컬 파일을 복사(Clone)한 순간 개발자 자신만의 로컬 저장소에 생성
- 개발 완료한 파일을 수정한 다음에 로컬 저장소에 우선적으로 커밋(COMMIT)한 후, 다시 원격 저장소에 반영(PUSH)하는 방식
7. 소프트웨어 형상관리 도구 별 특징
- CVS(Concurrent Versions System)
- 서버와 클라이언트로 구성되어 있고, 다수의 인원이 동시에 범용적인 운영체제로 접근 가능한 형상 관리 도구
- SVN(Subversion)
- 하나의 서버에 소스를 쉽고 유용하게 곤리할 수 있게 도와주는 도구
- 저장소를 만들어 그곳에 소스를 저장해 소스 중복이나 여러 문제를 해결하기 위한 도구
- RCS(Revision Control System)
- CVS와 달리 소스 파일의 수정을 한 사람으로 제한하여 다수의 사람이 파일의 수정을 동시에 할 수 업도록 파일 잠금 방식으로 형상을 관리하는 도구
- Bitkeeper
- SVN과 비슷한 중앙 통제 방식으로 대규모 프로젝트에서 빠른 속도를 내도록 개발된 형상 관리 도구
- Git
- Git의 속도에 중점을 둔 분산형 버전 관리 시스템이며, 대형 프로젝트에서효과적이고 유용
- 커밋은 로컬 저장소에서 이루어지고 푸쉬를 통해 동적으로 원격 저장소에 반영
- 작업 폴더는 전체 기록과 각 기록을 추적할 수 있는 정보를 포함한 완전한 형태의 저장소
- Clear Case
- 복수 서버, 복수 클라이언트 구조이며 서버가 부족할 때 필요한 서버를 하나씩 추가하여 확정성을 기할 수 있음
8. 형상관리 도구 사용 시 유의 사항
- 버전에 대한 쉬운 정보 접근성
- 불필요한 사용자에 대한 접근 제어
- 동일 프로젝트에 대한 동시 사용성
- 빠른 오류 복구
728x90
LIST
'정보처리기사 > 08. 서버프로그램 구현' 카테고리의 다른 글
| Chapter 04. 배치 프로그램 구현 (0) | 2021.09.26 |
|---|---|
| Chapter 03. 서버 프로그램 구현 (0) | 2021.09.26 |
| Chapter 02. 공통 모듈 구현 (0) | 2021.09.26 |
댓글