Certificate/정보처리기사

정보처리기사[2과목] | 개발환경도구

구름솜:D 2024. 1. 12. 12:31
728x90

개발도구선정과정

1) 목표 시스템의 환경분석(요구사항분석설계 및 모델링)

2) 구현도구 선정(개발언어 및 HW사양 선정)

3) 빌드도구 선정(프로그램의 배포 및 라이브러리 관리)

4) 형상도구 선정

5) 테스트도구 선정

 

구현 및 개발도구

- 코드 작성 및 디버깅을 지원하는 도구

- 개발 언어 선정 후 통합개발환경(IDE: Integrated Development Environment)을 선정

  *IDE) 코딩, 디버깅, 컴파일, 빌드 등 프로그램 개발과 관련된 일련의 모든 작업들을 통합하여 제공해주는 소프트웨어

- 개발언어선정기준) 적정성, 효율성, 이식성, 친밀성, 범용성

 

빌드도구

- 개발자가 작성한 소스코드파일을 컴파일, 테스팅, 정적분석등을 통해 실행 가능한 소프트웨어로 자동 생성하는 도구

- 종류) Gradle, Maven, Ant

[Gradle]

- 이미 구현된 Goal 수행

  *Goal) 플러그인에서 실행할 수 있는 각각의 기능

- 프로젝트의 전체 정보를 정의

- Multi프로젝트 빌드 지원

- 스크립트 규모가 작고 읽기 쉬움

[Maven]

- 이미 구현된 Goal 수행

- 프로젝트의 전체 정보를 정의

- 빌드 생명 주기, 표준화된 디렉터리 레이아웃

- 재사용가능한 플러그인 및 저장소

[Ant]

- 프로젝트 특화된 target수행

  *target) 최소한의 실행 단위(특정작업)

- 빌드 프로세스만 정의

- 매우 복잡한 빌드 스크립트

- 스크립트의 재사용 불가

 

 

형상관리도구

  * 형상관리(SCM, Software Configuration Management)

    : SW의 개발과정에서 발생하는 산출물의 변경사항을 관리

    : 특성 1. 소프트웨어의 변경사항을 파악하고 제어 후 담당자에게 통보

              2. 생명주기의 모든 단계에서 수행

              3. 유지보수 단계에서도 수행

    : 주요활동 1. 형상식별(형상관리 대상구분, 베이스라인의 기준을 정하는 활동)

                     2. 버전관리(SCI의 버전 부여 및 갱신)

                     3. 형상통제(변경의 요청, 평가, 승인 및 거절, 실행실시 등 변경관리)

                     4. 형상감사(베이스라인 무결성 평가(검증)  

                     5. 형상기록/ 보고(소프트웨어 개발상태에 대한 보고)

      : 활동순서) 형상식별 - 형상통제 - 형상감사 - 형상기록/보고

- 프로젝트와 관련된 모든 변경사항을 관리하는 도구

- 종류) SVN, CVS, Git, Perforce(P4D)

[CVS(Concurrent Version System)]

- 가장 오래 사용한 형상관리 도구

- 중앙 집중형 서버에 클라이언트 접속 후 관리

- RollBack(x)

[SVN(Subversion]

- 현재 가장 많이 사용

- CVS속도, 저장공간 개선

[Git]

- 분산형 방식 or 중앙집중방식

[Perforce(P4D)]

- 코드와 파일의 변환 추적

- Merge속도 빠름