소프트웨어 패키징

clay·2023년 2월 7일
0

소프트웨어 개발

목록 보기
13/47
post-thumbnail

소프트웨어 패키징의 개요

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

  • 개발자가 아니라 사용자를 중심으로 진행한다.
  • 소스 코드는 향후 관리를 고려하여 모듈화하여 패키징한다.
모듈화
소프트웨어의 성능을 향상시키거나 시스템의 수정 및 재사용, 유지 관리 등이 용이하도록 시스템을
각 기능별로 나누는 것을 말한다.
  • 사용자가 소프트웨어를 사용하게 될 환경을 이해하여, 다양한 환경에서 소프트웨어를 손쉽게 사용할 수 있도록 일반적인 배포 형태로 패키징한다.

패키징 시 고려사항

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

패키지 작업 순서

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

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

0개의 댓글