제품 소프트웨어 패키징 -12

원종서·2021년 10월 13일
0

정보처리기사

목록 보기
1/1

소프트웨어 패키징

1) 제품 소프트웨어 패키징

- 개발이 완료된 제품을 고객에게 전달하기 위한 패키징 하는 과정

- 키워드 : 버전관리 / 릴리스노트, 고객 중심, 모듈화

  • 모듈 : 소프트웨어 설계에서 기능단위로 분해하고 추상되어재사용 및 공유가 가능한 단위
  • 모듈화 : 모듈을 통해 제품 소프트웨어 성능 향상, 시스템의 통합 시험 디버깅 및 수정을 용이하게 하는 소프트웨어 설계 기법

  • 사용자 중심의 모듈 패키징 프로세스 : 기능 식별 > 모듈화 > 빌드 진행 > 사용자 환경 분석 > 패키징 적용 시험 > 패키징 변경 개선

2 릴리즈 노트

  • 고객에게 잘 정리된 릴리즈 정보를 제공하는 문서, 현재 시제로 작성

  • 정보제공 : 릴리즈 노트에는 테스트 결과와 정보 포함

  • 관리의 용이성: 자동화, 릴리즈 정보를 체계적으로 관리

  • 고려 사항: 개발팀에서 작성, 명확, 정확, 완전한 정보 제공

  • 구성요소
    -- 해더 : 문서 이름, 제품 이름, 버전 번호, 릴리즈 날자
    -- 개요: 제품, 변경에 대한 간략한 전반적 개요

3. 제품 소프트웨어 패키징 도구

  • 패키징 시 디지털 콘텐츠의 지식 재산권을 보호하고 기능 제공, 안전한 유통 배포 보장하는 도구

4. 저작권 보호 패키징 도구

  • DRM(디지털 저작권 관리) : 데이터의 안전한 배포를 활성화 하거나 불법 배포를 방지하여 인터넷이나 기타 디지털 매체를 통해 유통되는 데이터의 저작권을 보호하기 위한 시스

5. 암호화

  • 텍스트, 콘텐츠 등을 암호문으로 만드는 기술
  • 공개키 기반 구조(PKI), 대칭 및 비대칭 암호화 전자서명, 키 관리, 식별 기술, 저작권 표현, 암호화 파일 생성, 정책 관리, 크랙 방지, 인증

공개키 기반 구조(PKI, public key infrastructure)

  • 공개키 암호화 방식으로 디지털 인증서를 활용하는 소프트웨어 , 하드웨어, 사용자 등을 총칭하는 기술

대칭 및 비대장 암호화

  • 암호화 시 키, 복호하 키 생성

전자 서명 : 전자적 형태의 정보

DOI(Digital Object Identifier)

  • 디지털 저작물에 특정 번호를 부여하는 일종의 바코드 시스템

URI (Uniform Resource Identifier)

  • 인터넷에 있는 자원을 나타내는 유일한 주소

XrML

  • 디지털 콘텐츠, 웹 서비스 권리 조건을 표현한 XML 기반의 마크업 언

MPEG-21

  • 멀티미디어 표준 규격

코드 난독화

  • 역공학을 통한 공격을 막기 위해 프로그램 소스를 알아보기 힘든 코드 소스로 바꾸는 기술

Secure DB

  • 커널 암호화 방식으로 데이터베이스 파일을 직접 암호화하고 접근제어와 보안적인 요소가 추가된 데이터베이스 강화 기술

SSO(Single Sign On)

  • 한번의 인증 절차를 통해 여러 정보 시스템에 재인증 절차 없이 사용할 수 있는 통합 로그인 기술

CMS (Content(저작물) Management System)

  • 콘텐츠 생산 전 활동의 과정을 관리하는 기술

6. 제품 소프트웨어 매뉴얼 작성

제품 소프트웨어 매뉴얼

  • 제품 소프트웨어 개발 단계부터 적용한 기술이나 패키징 이후 설치 및 사용자 측면의 주요 내용을 기록한 문서

제품 소프트웨어 설치 매뉴얼

  • 사용자가 제품을 구매 후 최초 설치 시 참조하는 매뉴얼 목자 , 개요, 이력정보, 설치 매뉴얼 주석, 설치 도구

제품 소프트웨어 사용자 매뉴얼

  • 개발이 완료된 제품 소프트웨어를 고객에게 전달하기 위해 패키징 하고 설치와 사용에 필요한 제반 절차 및 환경에 대한 전체 내용을 포함하는 매뉴얼

제품 소프트웨어 배포판

  • 배포 정보를 포함하여 개발된 컴포넌트 혹은 패키지가 제품화된 것

7) 제품 소프트웨어 패키징의 형상 관리

형상관리

  • 소프트웨어의 변경사항을 계속적으로 추적하고, 버전 관리 및 통제하는 관리 기

형상관리 도구의 기능 : 체크인, 체크아웃, 커밋

  • 체크인: 개발자가 수정한 소스를 형상관리 저장소에 업로드 하는 기능
  • 커밋: 개발자가 소스를 형상관리 저장소에 업로드 후 최종적으로 업데이트가 되었을떄 형상관리 서버에 반영하도록 하는 기능

형상관리 역활: 관리 유용, 동시 개발, 빠른 복구

형상 식별

  • 형상 관리 대상에 이름과 관리 번호를 부여하고, 계층 구조로 구분하여 수정 및 추적이 용이하도록 하는 작업

버전 제어

  • 스프트웨어 업그레이드나 유지 보수 과정에서 생성된 다른 버전의 형상 항목을 관리하고, 이를 위해 특정 절차와 도구를 결합시키는 작업

형상 통제(변경 관리)

  • 식별된 형상 항목에 대한 변경 요구를 검토하여 현재의 기준선이 잘 반영될 수 있도록 조정하는 작업

형상 감사

  • 기준선의 무결성을 평가하기 위해 확인, 검증, 검열 과정을 통해 공식적으로 승인하는 작업

형상 기록(상태 보고)

  • 형상의 식별, 통제, 감사 작업의 결과를 기록, 관리하고 보고서를 작성하는 작업

베이스라인 : 소프트웨어 변경 통제 시점

8. 버전 관리 도구

공유 폴더 방식 클라이언트 / 서버 방식 분석 저장소 방식
공유 폴더에 복사하는 방식 클라이언트/서버 방식 로컬 저장소 -> 원격 저장소
RCS CVS,SVN GIT , BitKeeper

공유 폴더 방식

  • 버전 관리 자료가 로컬 컴퓨터의 공유 폴더에 저장되어 관리되는 방식
  • 파일 변경 사항을 데이터베이스에 기록 관리
  • 종류 RCS, SCCS, PVCS,QVCS

RCS (Real-time Cloud computing Service)

  • 파일, 잠금 방식으로 수정은 한 명으로 제한하여 버전 관리

클라이언트 / 서버 방식

  • 버전 관리 자료가 서버에 저장 되어 관리되는 방식
  • 모든 버전 관리는 서버에서 실행
  • 서버에 문제가 생기면, 서버가 복구되기 전까지 다른 개발자와의 관리 작업 중단

CVS (Concurrent Versions System)

  • 서버와 클라이언트를 구성되는 다수의 인원이 동시에 접근 가능한 버전관리 기능

SVN(SubVersioN)

  • CVS를 개선한 것, 아파치 소프트웨어 재단에서 발표
  • 모든 개발 작업은 truck 디렉토리 에서 수행
  • 커밋할 때마다 revision이 1 증가
  • 클라이언트는 운영체제에서 사용 , 서버는 유닉스 (대부분)..

분산 저장소 방식

  • 버전 관리 자료가 하나의 원격 저장소와 분산된 개발자 PC의 로컬 저장소에 함께 저장 되어 관리 되는 방식

BitKeeper

  • SVN과 비슷한 중앙 통제 방식으로 대규모 프로젝트에서 빠른 속도

Git

  • 지역 저장소는 개발자들이 실제 개발을 진행하는 장소
  • 원격 저장소는 여러 사람들이 협업을 위해 버전을 공동으로 관리하는 곳
  • branch를 이용하면 기본 버전 관리 틀에 영향을 주지 않으면서 다양한 형태의 기능 테스팅이 가능
  • 파일 변화를 스냅샵으로 저장
  • SVN 저장소에 대한 이관 기능

double asterisks
double underscores
cancelline

0개의 댓글