목차
💡 주요 키워드 ? 소프트웨어 패키징, 릴리즈 노트, DRM, 소프트웨어 설치 매뉴얼, 소프트웨어 사용자 매뉴얼, 형상 관리, Subversion, Git, Jenkins, Gradle
📌 소프트웨어 패키징이란 모듈 별로 생성한 실행 파일들을 묶어 배포용 설치 파일을 만드는 것을 말한다.
💡 일반적으로 패키징(Packaging)이란 관련된 것들을 하나로 묶는 것을 말하며, 소프트웨어 패키징이란 기능별로 생성한 실행 파일들을 묶어 배포용 설치 파일을 만드는 것을 의미한다.
💡 모듈화 ? 소프트웨어의 성능을 향상시키거나 시스템의 수정 및 재사용, 유지 관리 등이 용이하도록 시스템을 각 기능별로 나누는 것을 말한다.
💡 Managed Service ? 고객이 사용 중인 소프트웨어를 24시간 모니터링 하면서 문제 발생 시 현장에 바로 출동하여 필요한 점검을 수행하는 등의 체계적인 운영 관리와 유지 보수를 수행하는 서비스를 의미한다.
📌 패키징 주기는 소프트웨어 개발 기법에 따라 달라지는데, 짧은 개발 주기를 반복하는 애자일 기법인 경우에는 보통 2~4주 내에서 지정하며, 각 주기가 끝날 때마다 패키징을 수행한다.
💡 최근에는 Eclipse, Visual Studio, Xcode, Android Studio 등의 IDE 도구가 프로그램 코딩부터 배포까지 대부분의 고정을 지원하며, 별도의 버전 관리 프로그램을 연동하면 버전 관리 작업까지도 지원하기 때문에 별도의 패키징 도구를 사용하지 않는다. 패키징 된 소프트웨어는 사용자가 직접 다운받아 설치할 수 있도록 웹 사이트나 앱 스토어 등에 등록되어 배포된다.
💡 빌드(Build) ? 빌드는 소스 코드 파일들을 컴퓨터에서 실행할 수 있는 제품 소프트웨어로 변환하는 과정 또는 결과물을 말한다.
💡 사용자 환경 분석 ? 사용자 실행 환경은 운영체제(OS), 시스템 사양, 사용 방법 등을 최대한 자세하게 구분하여 미리 정의해 놓아냐 하며, 실행 환경이 다양한 경우에는 각 환경 별로 배포본을 만들기 위해 여러 번의 패키징을 수행해야 한다. 예를 들면 Windows 10 운영체제는 32비트와 64비트를 선택하여 설치할 수 있도록 Win10_32bit.msi 와 Win10_64bit.msi 두 가지 버전으로 패키징하여 배포된다.
💡 주요 배포용 파일 형식
- msi : Windows 용 패키지 형식
- dmg : Mac OS 용 패키지 형식
- jar : Java 응용 소프트웨어나 라이브러리를 배포하기 위한 패키지 형식
- war : Java Serlet, Java Class, xml 및 웹 애플리케이션 서비스를 제공하기 위한 패키지 형식
- ear : jar와 war를 묶어 하나의 애플리케이션 서비스를 제공할 수 있는 패키지 형식
- apk : 안드로이드용 앱 패키지 형식
- ipa : iOS 용 앱 패키지 형식
📌 릴리즈 노트는 개발 과정에서 정리된 릴리즈 정보를 소프트웨어의 최종 사용자인 고객과 공유하기 위한 문서이다.
📌 릴리즈 노트의 초기 버전은 다음의 사항을 고려하여 작성한다.
Header(머릿말) | 릴리즈 노트 이름, 소프트웨어 이름, 릴리즈 버전, 릴리즈 날짜, 릴리즈 노트 날짜, 릴리즈 노트 버전 등 |
개요 | 소프트웨어 및 변경사항 전체에 대한 간략한 내용 |
목적 | 해당 릴리즈 버전에서의 새로운 기능이나 수정된 기능의 목록, 릴리즈 노트의 목적에 대한 간략한 개요 |
문제 요약 | 수정된 버그에 대한 간략한 설명 또는 릴리즈 추가 항목에 대한 요약 |
재현 항목 | 버그 발견에 대한 과정 설명 |
수정/개선 내용 | 버그를 수정/개선한 내용을 간단히 설명 |
사용자 영향도 | 사용자가 다른 기능들을 사용하는데 있어 해당 릴리즈 버전에서의 기능 변화가 미칠 수 있는 영향에 대한 설명 |
SW 지원 영향도 | 해당 릴리즈 버전에서의 기능 변화가 다른 응용프로그램들을 지원하는 프로세스에 미칠 수 있는 영향에 대한 설명 |
노트 | SW/HW 설치 항목, 업그레이드, 소프트웨어 문서화에 대한 참고 항목 |
면책 조항 | 회사 및 소프트웨어와 관련하여 잠조항 사항 예) 프리웨어, 불법 복제 금지 등 |
연락처 | 사용자 지원 및 문의 응대를 위한 연락처 정보 |
📌 소프트웨어의 테스트 과정에서 베타 버전이 출시되거나 긴급한 버그 수정, 업그레이드와 같은 자체 기능 향상, 사용자 요청 등의 특수한 상황이 발생하는 경우 릴리즈 노트를 추가로 작성한다.
💡 베타 버전(Beta Version) : 베타 버전은 소프트웨어를 정식으로 출시하기 전에 테스트할 목적으로 지정된 일부 사용자들에게만 배포하는 시험용 소프트웨어이다.
📌 릴리즈 노트는 일반적으로 다음과 같은 순서로 작성한다.
📌 제품 소프트웨어 패키징 - 사용자 매뉴얼 작성/버전 등록/버전 관리 도구 (0) | 2024.02.06 |
---|---|
📌 제품 소프트웨어 패키징 - 디지털 저작권 관리(DRM)/설치 매뉴얼 작성 (0) | 2024.02.05 |
📌 통합 구현 - 단위 모듈 구현/단위 모듈 테스트/개발 지원 도구 (2) | 2024.02.05 |
📌 데이터 입, 출력 구현 - 데이터 입, 출력/절차형 SQL (0) | 2024.02.05 |
📌 데이터 입, 출력 구현 - 데이터베이스 개요 (0) | 2024.02.05 |