애플리케이션 패키징의 개념은 개발이 끝난 제품의 소프트웨어를 배포하고 고객들이 설치할 수 있도록 전달하기 위한 형태로 제작하여 설치하고 사용하는 데에 필요한 제반 내용을 포함하고 있는 매뉴얼을 만드는 활동이다. 이러한 애플리케이션 패키징은 사용자를 중심으로 진행되며, 신규 또는 변경 개발 소스를 구별하며 이를 상용 제품으로 모듈화해 패키징한다. 고객의 편리를 위하여 신규 또는 변경 내역을 확인하고 이를 릴리즈 노트나 버전 관리를 통하여 계속적으로 관리해 준다. 사용자가 실행하는 환경을 파악하고 범용 환경에서 쓸 수 있도록 일반적인 배포 형태로 나누어 패키징이 진행된다. 애플리케이션 패키징을 위해서는 사용자의 실행 환경을 이해해야 한다. 고객의 편의를 위해 사용자가 실행하는 환경을 가장 먼저 고려하여 패키징을 진행하고 OS부터 시작하여 시스템 사양, 실행 환경 및 고객이 사용하는 방법까지 상세하게 나누어 실행 환경을 미리 정의하도록 한다. 만약에 여러 변수의 실행 환경이 나온다면 각 경우에 해당하는 배포본을 나누어 패키징 작업을 여러 차례 수행할 수도 있다. 사용자 관점에서 편의성을 위해 환경을 고려하여 여러 가지 경우를 사전에 고려해야 한다. 이러한 사용자 관점에서의 패키징 고려사항에는 사용자 시스템 환경 정의, UI 제공, 관리 서비스 형태로 제공, 패키징의 변경 및 개선 관리 고려 네 가지가 있다. 사용자의 시스템 환경인 운영체제, CPU, 메모리 등의 수행을 위해 최소한의 환경을 정의하는 것이 사용자 시스템 환경 정의라고 한다. 직관적으로 사용자가 파악할 수 있는 UI를 제공해 매뉴얼과 일치시켜 패키징 작업을 수행하는 것을 UI 제공이라고 한다. 하드웨어와 함께 애플리케이션을 통합하여 적용할 수 있도록 패키징 하는 것이 관리 서비스 형태로 제공한다는 고려사항이다. 패키징의 변경 빛 개선 관리 고려란 많은 여러 사용자의 요구사항을 반영하기 위해 패키징의 변경이나 개선 관리를 숙고하여 패키징을 배포하는 것이다. 애플리케이션 패키징 프로세스의 순서는 기능 식별, 모듈화, 빌드 진행, 사용자 환경 분석, 패키징 적용 시험, 패키징 변경 개선이다. 입출력 데이터를 식별하고 전체적인 기능 정의 및 데이터의 흐름을 구별, 기능 단위 및 출력에 대해 상세 정의를 하는 것이 기능 식별 단계이다. 식별된 기능과 서비스를 모듈 단위로 분류하는 것이 모듈화인데 기능의 공유와 재활용을 나누고 모듈 사이의 응집도와 결합도를 구분하는 과정을 갖는다. 모듈화 과정이 끝나면 컴파일 결과물과 새로운 개발 소스를 준비한다. 정상 기능 단위와 서비스를 분류하고 빌드 도구를 확인한 뒤 수행하는데 컴파일 외에 도구가 어떤 다른 기능을 갖는지 확인한다. 이러한 과정을 빌드 진행이라 한다. 사용자 환경 분석이란 사용자의 환경을 사전 정의하고 모듈 단위의 사용자 환경 테스트를 수행한다. 이러한 사용자 환경에서 패키징 적용 시험을 하며 이때 UI 및 시스템 상의 편의성을 확인한다. 마지막으로 패키징 적용 시 변경할 점을 끌어내고 최소 사용자 환경에서 실행 가능한 수준의 서비스 개선을 하는 것이 패키징 변경 개선이다. 개선한 버전을 재배포하는 것도 이 과정에 포함된다. 애플리케이션 패키징 릴리즈 노트란 최종적으로 애플리케이션을 사용하는 고객과 정리가 잘 된 배포 정보를 공유하는 문서이다. 애플리케이션 릴리즈 노트에는 수정 또는 개선되는 정보, 상세 서비스를 포함한 사항이 들어있다. 이러한 애플리케이션 패키징 릴리즈 노트의 작성 항복에는 헤더, 개요, 목적, 이슈 요약, 재현 항목, 수정/개선 내용, 사용자 영향도, 소프트웨어 지원 영향도, 노트, 면책 조항, 연락 정보가 포함되어 있다. 노트를 작성하는 프로세스는 모듈 식별, 릴리즈 정보 확인, 릴리즈 노트 개요 작성, 영향도 체크, 정식 릴리즈 노트 작성, 추가 개선 항복 식별의 단계를 거친다. 모듈 식별 단계에서는 릴리즈 노트 작성을 위하여 모듈과 빌드를 정리하고 데이터 흐름이나 입출력 데이터, 전체적인 기능의 정의를 정리한다. 릴리즈 정보 확인 단계에서는 문서의 이름과 제품의 이름 정보를 확인하고 버전 번호, 참고 날짜, 릴리즈 날짜, 노트 버전을 확인한다. 릴리즈 노트 개요 작성은 제품 또는 변경에 관해 간략하게 전반적인 개요만 작성하는 것이다. 개발 소스에 따른 결과물, 버전 관리에 대한 전반적인 노트를 작성한다. 영향도 체크에서는 간단한 버그 설명, 릴리즈 추가 항목, 버그 재현 테스트 및 재현 환경을 기록하고 사용자 입장 및 소프트웨어의 영향도를 확인한다. 앞선 프로세스를 거친 뒤 정식 릴리즈 노트를 작성하고, 추가 개선 항목 식별이 들어간다. 애플리케이션 배포 도구란 배포 단계에서 패키징을 할 때 디지털 콘텐츠의 지적 재산권을 보호 및 관리하는 기능을 제공하고, 유통과 배포가 안전하게 이루어지도록 보장하는 도구이자 솔루션이다. 이러한 애플리케이션 배포 도구의 기술요소에는 키 관리, 저작권 표현, 정책 관리, 인증, 암호화, 식별 기술, 암호화 파일 생성, 크랙 방지 등이 있다. 이러한 기술요소들을 DRM 기술요소와 같다. 암호화란 콘텐츠와 라이선스를 암호화하고 전자서명을 할 수 있는 기술이다. 키 관리란 암화하한 키에 대해 저장하고 배포하는 기술이다. 식별 기술은 콘텐츠에 관한 식별 체계를 표현한 기술이다. 저작권 표현은 라이선스의 내용을 담으며 암호화 파일 생성은 콘텐츠를 암호화한 콘텐츠로 만들기 위한 기술이다. 정책관리란 라이선스를 발급하고 사용하는 것에 대해 정책표현 및 관리를 하며 크랙 방지란 크랙에 의해 콘텐츠가 사용되는 것을 방지하는 기술이다. 마지막으로 인증이란 라이선스 발급 및 사용의 기준이 되는 사용자 인증 기술이다.
'컴퓨터공학 > 정보처리기사' 카테고리의 다른 글
제품 소프트웨어 매뉴얼 개념 및 작성 항목 (0) | 2023.02.04 |
---|---|
애플리케이션 배포 도구와 모니터링 도구 정리 (0) | 2023.02.03 |
소프트웨어 아키텍처 개념 정리 (0) | 2023.02.02 |
설계 모델링 내용 정리 (0) | 2023.02.02 |
공통 모듈 설계의 관한 내용 (0) | 2023.01.31 |
댓글