정보처리기사 실기 12. 제품 소프트웨어 패키징
제품 소프트웨어 패키징 하기
* 제품 소프트웨어 패키징(Product Software Packaging) : 개발이 완료된 제품 소프트웨어를 고객에게 전달하기 위한 형태로 포장하는 과정
* 모듈 : 소프트웨어 설계에서 기능 단위로 분해하고 추상되어 재사용 및 공유가 가능한 단위
* 모듈화 : 모듈을 통해 제품 소프트웨어의 성능을 향상시키고 시스템의 통합, 시험 디버깅 및 수정을 용이하게 하는 소프트웨어 설계 기법
- 사용자 중심의 모듈 패키징 프로세스
+ 기능 식별 -> 모듈화 -> 빌드 진행 -> 사용자 환경 분석 -> 패키징 적용 시험 -> 패키징 변경 개선
* 릴리즈 노트(Release Note) : 고객에게 개발 과정에서 정리된 제품의 릴리즈 정보를 제공하는 문서
- 헤더 : 문서 이름, 제품 이름, 버전 번호, 릴리즈 날짜
- 개요 : 제품 및 변경에 대한 간략한 전반적인 개요
- 릴리즈 노트 작성 프로세스
+ 모듈 식별 -> 릴리즈 정보 확인 -> 릴리즈 노트 개요 작성 -> 영향도 체크 -> 정식 릴리즈 노트 작성 -> 추가 개선 항목 식별
* 제품 소프트웨어 패키징 도구 : 배포를 위한 패키징 시에 디지털 콘텐츠의 지적 재산권을 보호하고 관리하는 기능 제공하며, 안전한 유통과 배포를 보장하는 도구
- DRM(디지털 저작권 관리) : 데이터의 안전한 배포를 활성화하거나 불법 배포를 방지하여 인터넷이나 기타 디지털 매체를 통해 유통되는 데이터의 저작권을 보호하기 위한 시스템
* 패키징 도구 활용 시 고려 사항
- 암호화/보안 고려 : 내부 콘텐츠에 대한 암호화 및 보안 고려
- 이기종 연동을 고려 : 이기종 콘테츠 및 단말기 간 DRM 연동 고려
- 사용자 편의성 고려 : 사용자 입장에서 문제를 고려하여 최대한 효율적으로 적용
- 적합한 암호화 알고리즘 적용 : 제품 소프트웨어 종류에 맞는 알고리즘을 선택하여 배포 시 범용성에 지장이 없도록 고려
* 저작권(Copyright) : 창작물인 저작물에 대한 배타적 독점적 권리로 타인의 침해를 받지 않을 고유한 권한
* 디지털 저작권 관리(DRM : Digital Right Management) : 저작권자가 배포한 디지털 콘텐츠가 저작권자가 의도한 용도로만 사용되도록 디지털 콘테츠 관리 및 보호 기술
* 디지털 저작권 관리(DRM) 구성요소
- 클리어링 하우스(Clearing House) : 저작권에 대한 사용 권한, 라이선스 발급, 암호화된 키 관리, 사용량에 따른 결제 관리 등을 수행하는 곳
- 콘텐츠 제공자(Content Provider) : 콘텐츠를 제공하는 저작권자
- 패키저(Packager) : 콘텐츠를 메타데이터와 함께 배포 가능한 단위로 묶은 도구
- 콘텐츠 분배자(Contents Distributor) : 암호화된 콘텐츠를 유통하는 곳이나 사람
- 콘텐츠 소비자(Content Customer ): 콘텐츠를 구매하여 사용하는 주체
- DRM 컨트롤러(DRM Controller) : 배포된 디지털 콘텐츠의 이용 권한을 통제
- 보안 컨테이너(Security Contatiner) : 원본 콘텐츠를 안전하게 유통하기 위한 전자적 보안장치
- DRM 콘텐츠(DRM Content) : 서비스하고자 하는 암호화된 콘텐츠, 콘텐츠와 관련된 메타데이터, 콘텐츠 사용정보를 패키징하여 구성된 콘텐츠
* 패키징 도구 구성 세부 기술
- 암호화 : 콘텐츠 및 라이선스를 암호화하고 전자 서명을 할 수 있는 기술
- 키 관리 : 콘텐츠를 암호화한 키에 대한 저장 및 분배 기술
- 암호화 파일 생성 : 콘텐츠 암호화된 콘텐츠로 생성하기 위한 기술
- 식별 기술 : 콘텐츠에 대한 식별 체계 표현 기술
- 저작권 표현 : 라이선스의 내용 표현 기술
- 정책 관리 : 라이선스 발급 및 사용에 대한 정책 표현 및 관리 기술
- 크랙 방지 : 크랙에 의한 콘텐츠 사용 방지 기술
- 인증 : 라이선스 발급 및 사용의 기준이 되는 사용자 인증 기술
* 암호화 : 텍스트, 콘텐츠 등을 암호문으로 만드는 기술
- 공개키 기반 구조(PKI) : 공개키 암호화 방식 기반으로 디지털 인증서를 활용하는 소프트웨어, 하드웨어, 사용자 등을 총칭하는 암호 기술
- 대칭 및 비대칭 암호화 : 암호화 시 키, 암호화 키 생성
- DOI(Digital Object identifier) : 디지털 저작물에 특정 번호를 부여하는 일종의 바코드 시스템
- URI : 인터넷에 있는 자원을 나타내는 유일한 주소
- XrML : 디지털 콘텐츠, 웹 서비스 권리 조건을 표현한 XML 기반의 마크업 언어
- MPEG-21 : 멀티미디어 표준 규격
- XML : 마크업 언어로 '키'와 '값'의 한쌍으로 사람이 쉽게 알아볼 수 있는 오브젝트를 생성하는 언어
- JSON : 비동기 브라우저 / 서버통신(AJAX)을 위해 "속성-값 쌍", "키-값 쌍"으로 이루어진 데이터 오브젝트를 전달하기 위해 인간이 읽을 수 있는 텍스트를 사용하는 개방형 표준 포맷
- 코드 난독화 : 역공학을 통한 공격을 막기 위해 프로그램 소스를 알아보기 힘든 코드로 바꾸는 기술
- Secure DB : 커널 암호화 방식으로 데이터베이스 파일을 직접 암호화하고 접근제어와 보안적인 요소가 추가된 데이터 베이스 강화 기술
- SSO(Single Sign On) : 한 번의 인증절차를 통해 여러 정보 시스템에 재인증 절차 없이 사용할 수 있는 통합 로그인 기술
- CMS : 콘텐츠 생산 전 활동의 과정을 관리하는 기술
제품 소프트웨어 매뉴얼 작성 및 버전 등록
* 제품 소프트웨어 매뉴얼 : 사용자 측면에서 패키징 이후 설치, 제품 소프트웨어를 사용하는 데 필요한 주요 내용을 기록한 문서
* 제품 소프트웨어 설치 매뉴얼 : 사용자가 제품을 구매한 후 최초 설치 시 참조하는 매뉴얼 목차, 개요, 이력정보, 설치 매뉴얼 주석, 설치 도구
* 제품 소프트웨어 사용자 매뉴얼 : 사용자가 소프트웨어 사용에 필요한 내용을 포함한 문서
* 제품 소프트웨어 배포판 : 사용자가 사용하기 편하도록 배포 정보를 포함하여 개발된 컴포넌트 또는 패키지가 제품화된 형태
* 형상관리 : 소프트웨어의 변경 사항을 관리하기 위해 개발된 일련의 활동
- 체크인 : 개발자가 수정한 소스를 형상관리 저장소로 업로드하는 기능
- 체크아웃
- 커밋 : 개발자가 소스를 형상관리 저장소에 업로드 후 최종적으로 업데이트가 되었을 때 형상관리 서버에 반영하도록 하는 기능
- 형상관리 역할 : 관리 유용, 동시 개발, 빠른 복수
* 형상 식별 : 형상 관리 대상에 이름과 관리 번호를 부여하고, 계층 구조로 구분하여 수정 및 추적이 용이하도록 하는 작업
* 형상 통제 (변경관리) : 식별된 형상 항목에 대한 변경 요구를 검토하여 현재의 기준선(Base Line)이 잘 반영될 수 있도록 조정하는 작업
+ 베이스라인 : 소프트웨어 변경 통제 시점
* 형상 감사 : 기준선의 무결성을 평가하기 위해 확인, 검증, 검열 과정을 통해 공식적으로 승인하는 작업
* 형상 기록 : 형상의 식별, 통제, 감사 작업의 결과를 기록, 관리하고 보고서를 작성하는 작업
* 백업 유형
- 전체 백업(Full Backup) : 백업받고자 하는 데이터 전체에 대한 백업을 하는 방식
- 차등 백업(Differential Backup) : 마지막 전체 백업 이후 변경된 모든 데이터를 백업하는 방식
- 증분 백업(Incremental Backup) : 정해진 시간을 기준으로 그 이후에 변경된 파일만을 백업하는 방식
* 버전 관리 도구
- 공유 폴더 방식 : 공유 폴더에 복사하는 방식, RCS
- 클라이언트/서버 방식 : CVS, SVN
- 분석 저장소 방식 : 로컬 저장소 -> 원격 저장소 , Git, Bitkeeper
* Subversion(SVN) : trunk디렉터리에서 수행, CVS를 개선한 것
* 버전 등록 과정
- 가져오기(import) : 개발자가 저장소에 신규로 파일을 추가한다.
- 인출(Check-Out) : 수정 작업을 진행할 개발자가 저장소에 추가된 파일을 자신의 작업 공간으로 인출한다.
- 예치(Commit) : 인출한 파일을 수정한 후 설명을 붙여 저장소에 예칭 한다.
- 동기화(Update) : 커밋 후 새로운 개발자가 자신의 작업 공간을 동기화한다.
- 차이(Diff) : 새로운 개발자가 추가된 파일의 수정 기록을 확인하면서 변경된 파일의 차이를 확인한다.
'기타 > 정보처리기사실기' 카테고리의 다른 글
[정보처리기사 실기 / 공부] 프로그래밍 문제 풀어보기 (0) | 2022.04.30 |
---|---|
[정보처리기사 실기 / 문제 풀어보기] 정보처리기사 실기 기출문제 풀어보기 (0) | 2022.04.30 |
[정보처리기사 실기 / 내용정리] 11. 응용 SW 기초 기술 활용 (0) | 2022.04.20 |
[정보처리기사 실기 / 내용정리] 10. 애플리케이션 테스트 관리 (0) | 2022.04.20 |
[정보처리기사 실기 / 내용정리] 09. 소프트웨어 개발 보안 구축 (0) | 2022.04.20 |