코딩항해기

[기초] 소프트웨어 패키징 본문

기타/기초 지식

[기초] 소프트웨어 패키징

miniBcake 2025. 1. 27. 15:04

 

소프트웨어 패키징

소프트웨어 패키징이란 모듈별로 생성한 실행 파일들을 묶어 배포용 설치 파일을 만드는 것을 말한다. 사용자 중심으로 진행하며 소스코드는 향수 관리를 고려하여 모듈화하여 패키징한다. 사용자가 소프트웨어를 사용하게 될 환경을 이해하여, 다양한 환경에서 소프트웨어를 손쉽게 사용할 수 있도록 일반적인 배포 형태로 패키징 한다.

 

패키징 시 고려사항

사용자의 시스템 환경(OS, CPU, 메모리 등)에 대한 필요한 최소 환경을 정의하며 UI는 사용자가 눈으로 직접 확인할 수 있도록 시각적인 자료와 함께 제공하고 매뉴얼을 일치시켜 패키징한다.

 

소프트웨어는 단순히 패키징하여 배포하는 것으로 끝나는 것이 아니라 하드웨어와 함께 관리할 수 있도록 Managed Service 형태로 제공하는 것이 좋다. 사용자에게 배포되는 소프트웨어 이므로 내부 컨텐츠에 대한 암호화 및 보완을 고려한다.

 

다른 여러 컨텐츠 및 단말기 간 디지털 저작권 관리 연동을 고려하고 사용자의 편의성을 위한 복잡성 및 비효율성의 문제를 고려해야한다. 그 외에도 제품 소프트웨어 종류에 적합한 암호화 알고리즘을 적용한다.

 

패키징 작업의 순서

패키징 주기는 개발 기법에 따라 달라지며 애자일 기법인 경우 보통 2주에서 4주 내애 지정하며, 각 주기가 끝날 때마다 패키징을 수행한다. 프로젝트 개발 과정에서 주기별로 패키징한 결과물은 테스트 서버에 배포하며 마지막 개발 과정을 거쳐 최종 패키징한 결과물은 고객이 사용할 수 있도록 온라인 또는 오프라인으로 배포한다.

 

기능 식별 - 모듈화 - 빌드 진행 - 사용자 환경 분석 - 패키징 및 적용 시험 - 패키징 변경 개선 - 배포