제품 소프트웨어 패키징
제품소프트웨어 패키징의 개념
- 개발이 완료된 제품 소프트웨어를 고객에게 전달하기 위한 형태로 패키징
- 설치와 사용에 필요한 제반 절차 및 환경 등 전체 내용을 포함하는 메뉴얼을 작성
- 제품 소프트웨어에 대한 패치 개발과 업그레이드를 위한 버전관리를 수행
제품소프트웨어 적용상의 특성
- 사용자 중심
- 버전관리 및 릴리즈 노트를 통해 지속적으로 관리
- 사용자의 실행환경을 이해하고 범용환경에서 사용이 가능하도록 일반적인 배포형태로 분류
소프트웨어 모듈
- 모듈 - 기능단위로 분해하고 추상화되어 재사용 및 공유가 가능한 수준으로 만듬
- 모듈화 - 소프트웨어의 성능을 향상, 디버깅, 시험, 통합, 수정을 용이하도록 하는 소프트웨어 설계 기법
- 기능의 분리 및 인터페이스가 단순
- 모듈 재사용으로 개발과 유지보수가 용의
- 모듈 간의 결합도는 최소화
- 모듈 내의 응집도는 최대화
빌드 자동화 도구
- Ant - 아파치
- Maven
- Gradle - 상용, Task 단위
- Jenkins - 자바기반 CI/CD
사용자 중심의 패키징 작업 이해
- 사용자 실행 환경의 이해
- 사용자 관점에서 패키징 고려
릴리즈노트
- 고객과 릴리즈 정보를 공유하는 문서
- 제품을 만들어 수정 변경 또는 개선하는 일련의 작업
- 테스트를 진행하고 개발팀에서 제공하는 사양에 대한 최종 승인 후 문서를 통해 배포
- 전체적인 버전관리 및 릴리즈 정보를 체계적으로 관리할 수 있다.
- 개발자와 테스터가 함께 협업해야하고 최초 및 변경, 개선 항목까지 연결되어 정보를 제공
제품소프트웨어 패키징 도구
- 배포를 위한 패키징시에 디지털콘텐츠의 지적 재산권을 보호하고 관리하는 기능을 제공
- 암호화/보안 고려
- 이기종 연동 고려
- 암호화 알고리즘 활용
저작권
- 저작물에 대한 배타적 독점적 권리로 타인의 침해를 받지 않을 고유한 권한
클리어링하우스
- 권한정책/라이선스 관리
- 키 관리 및 라이선스 발급 관리
DRM(Digital Right Management)
패키저
- 콘텐츠를 메타 데이터와 함께 배포가능한 단위로 묶는 기능
패키징 도구 구성요소
- 암호화 - 콘텐츠 및 라이선스를 암호화하고 전자서명을 할 수 있는 기술 / PKI
- 키관리 - 콘텐츠를 암호화한 키에 대한 저장 및 배포기술
- 암호화파일 생성
- 식별기술 - DOI, URI
- 저작권 표현 - 라이선스의 내용 표현 기술 / XML
- 정책관리
- 크랙방지 - 크랙에 의한 콘텐츠 사용 방지 기술 / 코드난독화
- 인증 - SSO(single sign on)
댓글 영역