JUINTINATION

소프트웨어 패키징과 릴리즈 노트 본문

정보처리기사 정리

소프트웨어 패키징과 릴리즈 노트

DEOKJAE KWON 2024. 2. 12. 14:09
반응형

소프트웨어 패키징의 개요

소프트웨어 패키징이란 모듈별로 생성한 실행 파일들을 묶어 배포용 설치 파일을 만드는 것을 말한다.

  • 개발자가 아닌 사용자를 중심으로 진행한다.
  • 소스 코드는 향후 관리를 고려하여 모듈화하여 패키징한다.
  • 사용자가 소프트웨어를 사용하게 될 환경을 이해하여 다양한 환경에서 소프트웨어를 손쉽게 사용할 수 있도록 일반적인 배포 형태로 패키징한다.

패키징 시 고려사항

  • 사용자의 시스템 환경(OS, CPU, 메모리 등)에 필요한 최소 환경을 정의한다.
  • UI는 사용자가 눈으로 직접 확인할 수 있도록 시각적인 자료와 함께 제공하고 매뉴얼과 일치시켜 패키징한다.
  • 소프트웨어는 단순히 패키징하여 배포하는 것으로 끝나는 것이 아니라 하드웨어와 함께 관리될 수 있도록 Managed Service 형태로 제공하는 것이 좋다.
    • Managed Service는 고객이 사용중인 소프트웨어를 24시간 모니터링하면서 문제 발생 시 현장에 바로 출동하여 필요한 점검을 수행하는 등의 체계적인 운여 관리와 유지 보수를 수행하는 서비스이다.
  • 사용자에게 배포되는 소프트웨어이므로 내부 콘텐츠에 대한 암호화 및 보안을 보려한다.
    • 제품 소프트웨어 종류에 적합한 암호화 알고리즘을 적용한다.
  • 다른 여러 콘텐츠 및 단말기 간 DRM(디지털 저작권 관리) 연동을 고려한다.
  • 사용자의 편의성을 위한 복잡성 및 비효율성 문제를 고려한다.

패키징 주기는 소프트웨어 개발 기법에 따라 달라지는데 짧은 개발 주기를 반복하는 애자일 기법인 경우에는 보통 2~4주 내에서 지정하며 각 주기가 끝날 때마다 패키징을 수행한다.

  • 프로젝트 개발 과정에서 주기별로 패키징한 결과물은 테스트 서버에 배포한다.
  • 마지막 개발 과정을 거쳐 최종 패키징한 결과물은 고객이 사용할 수 있도록 온라인 또는 오프라인으로 배포한다.
    • 온라인 배포 : 별도로 마련한 운영 서버에 설치 및 사용 매뉴얼과 함께 배포 파일을 등록하여 고객이 직접 다운받아 사용할 수 있도록 한다.
    • 오프라인 배포 : CD-ROM이나 DVD, USB 등에 설치 및 사용 매뉴얼과 함께 배포 파일을 담는다.

패키징 작업 순서

  1. 기능 식별
    • 작성된 코드의 기능을 확인한다.
  2. 모듈화
    • 확인된 기능 단위로 코드들을 분류한다.
  3. 빌드 진행
    • 모듈 단위별로 실행 파일을 만든다.
  4. 사용자 환경 분석
    • 웹, 모바일, PC 등 소프트웨어가 사용될 환경이나 OS, CPU, RAM 등의 최소 운영 환경을 정의한다.
  5. 패키징 및 적용 시험
    • 빌드된 실행 파일들을 정의된 환경에 맞게 배포용 파일 형식으로 패키징한다.
    • 정의된 환경과 동일한 환경에서 패키징 결과를 테스팅한 후 소프트웨어에 대한 불편사항을 사용자 입장에서 확인한다.
  6. 패키징 변경 개선
    • 확인된 불편 사항을 반영하기 위한 패키징의 변경 및 개선을 진행한다.
  7. 배포
    • 배포 수행 시 오류가 발생하지 않는지 확인한다.

릴리즈 노트(Release Note)의 개요

릴리즈 노트는 개발 과정에서 소프트웨어의 버전 관리, 정리된 릴리즈 정보를 체계적으로 관리 및 사용자와의 공유를 위한 문서이다. 여기서 릴리즈(Release)는 개발이 완성된 소프트웨어를 출시, 즉 배포하는 것을 말한다.

  • 릴리즈 노트를 통해 테스트 진행 방법에 대한 결과와 소프트웨어 사양에 대한 개발팀의 정확한 준수 여부를 확인할 수 있다.
  • 소프트웨어에 포함된 전체 기능, 서비스의 내용, 개선 사항 등을 사용자와 공유할 수 있다.
  • 릴리즈 노트에 정리된 정보들은 철저한 테스트를 거친 것이며 개발팀에서 제공하는 소프트웨어 사양에 대한 최종 승인을 얻은 후 문서화 되어 제공된다.

릴리즈 노트 초기 버전 작성 시 고려사항

  • 릴리즈 노트는 정확하고 완전한 정보를 기반으로 개발팀에서 직접 현재 시제로 작성해야 한다.
  • 신규 소스, 빌드 등의 이력이 정확하게 관리되어 변경 또는 개선된 항목에 대한 이력 정보들도 작성되어야 한다.
  • 릴리즈 노트 작성에 대한 표준 형식은 없지만 일반적으로 다음과 같은 항목이 포함된다.
항목 내용
Header(머릿말) 릴리즈 노트 이름, 소프트웨어 이름, 릴리즈 및 릴리즈 노트의 버전, 날짜 등
개요 소프트웨어 및 변경사항 전체에 대한 간략한 내용
목적 해당 릴리즈 버전에서의 새로운 기능이나 수정된 기능의 목록과 릴리즈 노트의 목적에 대한 간략한 개요
문제 요약 수정된 버그에 대한 간략한 설명 또는 릴리즈 추가 항목에 대한 요약
재현 항목 버그 발견에 대한 과정 설명
수정/개선 내용 버그를 수정/개선한 내용을 간단히 설명
사용자 영향도 사용자가 다른 기능들을 사용하는데 있어 해당 릴리즈 버전에서의 기능 변화가 미칠 수 있는 영향에 대한 설명
SW 지원 영향도 해당 릴리즈 버전에서의 기능 변화가 다른 응용 프로그램들을 지원하는 프로세스에 미칠 수 있는 영향에 대한 설명
노트 SW/HW 설치 항목, 업그레이드, 소프트웨어 문서화에 대한 참고 항목
면책 조항 회사 ㅁ치 소프트웨어와 관련하여 참조할 사항
연락처 사용자 지원 및 문의 응대를 위한 연락처 정보

릴리즈 노트 추가 버전 작성 시 고려사항

  • 중대한 오류가 발생하여 긴급하게 수정하는 경우에는 릴리즈 버전을 출시하고 버그 번호를 포함한 모든 수정된 내용을 담아 릴리즈 노트를 작성하낟.
  • 소프트웨어에 대한 기능 업그레이드를 완료한 경우에는 릴리즈 버전을 출시하고 릴리즈 노트를 작성한다.
  • 사용자로부터 접수된 요구사항에 의해 추가나 수정된 경우 자체 기능 향상과는 다른 별도의 릴리즈 버전으로 출시하고 릴리즈 노트를 작성한다.

릴리즈 노트 작성 순서

  1. 모듈 식별
    • 모듈별 빌드 수행 후 릴리즈 노트에 작성될 내용들을 확인한다.
  2. 릴리즈 정보 확인
    • 릴리즈 노트 이름, 소프트웨어 이름, 릴리즈 및 릴리즈 노트의 버전, 날짜 등을 확인한다.
  3. 릴리즈 노트 개요 작성
    • 소프트웨어 및 변경사항 전체에 대한 간략한 내용을 작성한다.
  4. 영향도 체크
    • 버그나 이슈 관련 내용 또는 해당 릴리즈 버전에서의 기능 변화가 다른 소프트웨어나 기능을 사용하는데 미칠 수 있는 여향에 대해 기술한다.
  5. 정식 릴리즈 노트 작성
    • Header(머릿말), 개요, 영향도 체크 항목을 포함한 정식 릴리즈 노트에 작성될 기본 사항들을 작성한다.
  6. 추가 개선 항목 식별
    • 추가 버전 릴리즈 노트 작성이 필요한 경우 추가 릴리즈 노트를 작성한다.
728x90

'정보처리기사 정리' 카테고리의 다른 글

소프트웨어 설치 및 사용자 매뉴얼  (1) 2024.02.12
디지털 저작권 관리(DRM)  (0) 2024.02.12
단위 모듈 구현  (0) 2024.02.12
데이터베이스 개요  (0) 2024.02.11
정보처리기사 필기 1과목 정리  (1) 2024.02.10
Comments