소프트웨어 패키징
소프트웨어 패키징의 특징
- 사용자 중심으로 패키징 진행
- 신규/변경된 소스 식별하고 모듈화하여 제품으로 패키징
- 버전관리 및 릴리즈 노트를 통안 신규/변경 이력 관리
- 일반적인 배포형태로 패키징, 범용환경에서의 사용 보장
소프트웨어 패키징 도구 활용 시 고려사항⭐️
(20.6,8)
- 패키징 시 사용자에게 배포되는 SW이므로 보안 고려
- 사용자 편의성을 위한 복잡성 및 비효율성 문제 고려
- 제품 SW 종류에 적합한 암호화 알고리즘 적용
- 다양한 이기종 연동 고려
패키징 수행 순서
기능식별 → 모듈화 → 빌드진행 → 사용자 환경분석 → 패키징 적용시험 → 패키징 변경개선 → 배포
릴리즈 노트⭐️
- 소프트웨어와 함께 배포되는 문서
- 소프트웨어의 수정/변경/개선 내용을 포함
초기버전 작성시 고려사항
- Header(머리말): 릴리즈 노트 및 제품 정보
- 개요
- 목적
- 이슈 요약
- 재현 항목
- 수정/개선 내용
- 사용자 영향도
- SW 지원 영향도
- 노트: 설치 및 업그레이드 관련정보
- 면책조항
- 연락정보
CI/CD
CI(Continuous Integration)
- 지속적인 통합
- 코드 변경사항이 정기적으로 빌드 및 테스트되어 공유레포지토리에 통합하는것(형상관리)
- 목표: 버그 신속 검출 및 해결, 소프트웨어 품질 개선, 업데이트 검증 및 릴리즈 시간 단축
CD(Continuous Delivery&Deployment)
- 지속적인 서비스 제공/배포
- Continuous Delivery: 변경사항을 공유 레포지토리로 자동 릴리즈
- Continuous Deployment: 변경사항을 자동으로 프로덕션 환경까지 배포
- 목표: 레포지토리의 변경사항을 사용자에게 빠르게 제공
관련 SW
- Git(형상관리), JUnit(테스트), Jenkins(빌드)
위험 모니터링
- 위험 요소 징후들에 대해 계속적으로 인지하는 것