소프트웨어 패키징

모듈별로 생성한 실행 파일들으 묶어 배포용 설치 파일을 만드는 것을 말한다.
- 개발자가 아닌, 사용자 중심으로 진행
- 소스 코드는 향후 관리를 고려하여 모듈화하여 패키징한다.
  • 소프트웨어 패키징 작업 순서
    : 기능 식별 -> 모듈화 -> 빌드진행 -> 사용자 환경 분석 -> 패키징 및 적용 시험 -> 패키징 변경 개선 -> 배포

 

릴리즈 노트( Release Note )

개발 과정에서 정리된 릴리즈 정보를 소프트웨어 최종 사용자인 고객과 공유하기 위한 문서
[ Header(머릿말) ]  실기기출
: 릴리즈 노트 이름, 소프트웨어 이름, 릴리즈 버전, 날짜, 노트 날짜, 노트 버전 등을 표시함
  • 릴리즈 노트 작성 순서
    • 1. 모듈 식별
    • 2. 릴리즈 정보 확인
    • 3. 릴리즈 노트 개요 작성
    • 4. 영향도 체크
    • 5. 정식 릴리즈 노트 작성
    • 6. 추가 개선 항목 식별

 

디지털 저작권 관리( DRM )

저작권자가 배포한 디지털 콘텐츠가 저작권자가 의도한 용도로만 사용되도록 디지털 콘텐츠의 생성, 유통, 이용까지의 전 과정에 걸쳐 사용되는 디지털 콘텐츠 관리 및 보호 기술

 

소프트웨어 패키징의 형상 관리( SCM : Software Configuration Management ) 실기기출

소프트웨어의 개발 과정에서 소프트웨어의 변경 사항을 관리하기 위해 개발된 일련의 활동

 

소프트웨어 버전 관리 도구

  • 공유 폴더 방식 : 버전 관리 자료가 로컬 컴퓨터의 공유폴터에 저장되어 관리되는 방식
  • 클라이언트/서버 방식 : 버전 관리 자료가 중앙 시스템(서버)에 저장되어 관리되는 방식
  • 분산 저장소 방식 : 버전 관리 자료가 하나의 원격 저장소와 분산된 개발자 PC의 로컬 저장소에 함께 저장되어 관리
  • SVN : Subversion :  CVS(Concurrent Version System)를 개선한 것. 클라이언드/서버 구조이며, 아파치 SW재단
  • Git : 리누스 토발즈가 2005년 리눅스 커널 개발에 사용할 관리 도구로 개발

 

빌드 자동화 도구

빌드는 소스 코드 파일들을 컴파일한 후 여러 개의 모듈을 묶어 실행 파일로 만드는 과정
  • Jenkins
    • Java 기반의 오픈 소스 형태, 가장 많이 사용되는 빌드 자동화 도구
    • 서블릿 컨테이너에서 실행되는 서버 기반 도구
    • SVN, Git 등 대부분의 형상 관리 도구와 연동이 가능
    • 여러 대의 컴퓨터를 이용한 분산 빌드나 테스트가 가능
  • Gradle
    • Groovy를 기반으로 한 오픈 소스 형태의 자동화 도구, 안드로이드 앱 개발 환경에서 사용
    • 뿐만 아니라, 플러그인을 설정하면, Java,C/C++,Python등의 언어도 빌드 가능
    • Groovy를 사용해서 만들 DSL( Domain Specific Language )을 스크립트 언어로 사용
    • Gradle은 실행할 처리 명령들을 모아 태스크(Task)로 만든 후 태스크 단위로  실행함
728x90
반응형

+ Recent posts