정보처리기사 실기) 12장 제품 소프트웨어 패키징
본문 바로가기
정보처리기사/정보처리기사 실기 정리

정보처리기사 실기) 12장 제품 소프트웨어 패키징

by 코딩하는 핑가 2020. 10. 13.
반응형

* 이 글은 블로그 별랑님의 글을 참고로 작성했습니다.

blog.naver.com/srang_/222074616441

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

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

- 개발이 완료된 소프트웨어를 고객에게 전달하기 위해 패키징 하는 과정

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

 

* 모듈

- 소프트웨어 설계에서 기능 단위로 분해하고 추상되어 재사용 및 공유가 가능한 단위

* 모듈화(서술형)

- 모듈을 통해 제품 소프트웨어의 성능을 향상시키고 시스템의 통합, 시험 디버깅 및 수정을 용이하게 하는 소프트웨어 설계 기법

* 사용자 중심의 모듈 패키징 프로세스

- 기능 식별 > 모듈화 > 빌드 진행 > 사용자 환경 분석 > 패키징 적용 시험 > 패키징 변경 개선

 

2) 릴리즈 노트

- 최종 사용자인 고객에게 잘 정리된 릴리즈 정보를 제공하는 문서, 현재 시제로 작성

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

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

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

 

* 구성 요소 (2020 실기 1회 기출)

- 헤더 : 문서 이름, 제품 이름, 버전 번호, 릴리즈 날짜

- 개요 : 제품 및 번경에 대한 간략한 전반적인 개요

 

* 릴리즈 노트 작성 프로세스(모정개 영정추)

- 모듈 식별 > 릴리즈 정보 확인 > 릴리즈 노트 개요 작성 > 영향도 체크 > 정식 릴리즈 노트 작성 > 추가 개선 항목 식별

 

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

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

 

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

* DRM(디지털 저작권 관리) (단답형)

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

 

5) 암호화

텍스트, 콘텐츠 등을 암호문으로 만드는 기술

* 공개키 기반 구조(PKI), 대칭 및 비대칭 암호화 전자서명, 키 관리, 식별 기술, 저작권 표현, 암호화 파일 생성, 정책 관리, 크랙 방시, 인증

 

* 공개키 기반 구조(PKI)

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

 

* 대칭 및 비대칭 암호화 : 암호화 시 키, 복호화 키 생성

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

[정보처리기사 실기/실기 정리] - 정보처리기사 실기) 9장 소프트웨어 개발 보안 구축

 

* DOI(Digital Object Identifier) (단답형)

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

 

* URI (단답형)

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

 

* XrML (단답형)

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

 

* MPEG-21 (단답형)

- 멀티미디어 표준 규격

 

* XML (단답형)

- 마크업 언어로 '키'와 '값'의 한 쌍으로 사람이 쉽게 알아볼 수 있는 오브젝트를 생성하는 언어

 
* JSON (단답형)
비동기 브라우저 / 서버 통신(AJAX)을 위해 “속성-값 쌍’, ‘키-값 쌍’으로 이루어진 데이터 오브젝트를 전달하기 위해 인간이 읽을 수 있는 텍스트를 사용하는 개방형 표준 포맷

* 코드 난독화 (단답형)

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

 

* Secure DB (단답형)

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

 

* SSO(Single Sign On) (단답형)

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

 

* CMS (단답형)

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

 

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

* 제품 소프트웨어 매뉴얼

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

 

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

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

 

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

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

 

* 제품 소프트웨어 배포판

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

 

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

* 형상관리(2020 실기 2회 기출)

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

소프트웨어의 변경 사항을 관리하기 위해 개발된 일련의 활동

 

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

- 체크인

: 개발자가 수정한 소스를 형상관리 저장소로 업로드하는 기능

- 커밋

: 개발자가 소스를 형상관리 저장소에 업로드 후 최종적으로 업데이트가 되었을 때 형상관리 서버에 반영하도록 하는 기능

 

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

 

* 형상 식별

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

* 버전 제어

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

* 형상 통제(변경 관리)

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

* 형상 감사

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

* 형상 기록(상태 보고)

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

 

* 베이스 라인(Base Line) (단답형) : 소프트웨어 변경 통제 시점

* 컴포넌트 저장소 : 인증받은 컴포넌트를 등록하는 저장소로 사용자가 손쉽게 컴포넌트를 이용 가능

 

8) 버전 관리 도구

제품 소프트웨어의 신규 개발, 변경, 개선과 관련된 수정사항을 관리하는 도구

공유 폴더 방식

클라이언트/서버 방식

분석 저장소 방식

공유 폴더에 복사하는 방식

클라이언트/서버 방식

로컬 저장소 -> 원격 저장소

RCS

CVS, SVN

Git, Bitkeeper

* 공유 폴더 방식

- 버전 관리 자료가 로컬 컴퓨터의 공유 폴더에 저장되어 관리되는 방식

- 파일의 변경 사항을 데이터베이스에 기록하여 관리

- 종류 : SCCS, RCS, PVCS, QVCS 등

* RCS

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

 

* 클라이언트/서버 방식

- 버전 관리 자료가 중앙 시스템(서버)에 저장되어 관리되는 방식

- 모든 버전 관리는 서버에서 수행

- 서버에 문제가 생기면, 서버가 복구되기 전가지 다른 개발자와의 협업 및 버전 관리 작업은 중단

- 종류 : CVS, SVN(Subversion), CVSNT, Clear Case, CMVC, Perforce 등

* CVS

- 서버와 클라이언트를 구성되어 다수의 인원이 동시에 접근 가능하여 버전 관리 가능

 

* Subversion(서브버전, SVN)

- CVS를 개선한 것, 아파치 소프트웨어 재단에서 발표

- 모든 개발 작업은 trunk 디렉터리에서 수행

- commit 할 때마다 revision이 1씩 증가 ( 커밋 실패 시 롤백 지원 가능 )

- 클라이언트는 대부분의 운영체제에서 사용되지만, 서버는 주로 유닉스를 사용

- 디렉토리 파일을 자유롭게 이동 가능

- add, commit, update, checkout, lock/unlock, import, export, info, diff, merge

* 분산 저장소 방식

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

- 로컬 저장소에서 버전 관리가 가능하므로 원격 저장소에 문제가 생겨도 로컬 저장소의 자료를 이용하여 작업 가능

- 종류 : Git, GNU arch, DCVS, Bazaar, Bitkeeper 등

* Bitkeeper

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

 

* Git(깃)

- 지역 저장소는 개발자들이 실제 개발을 진행하는 장소, 버전 관리가 수행

- 원격 저장소는 여러 사람들이 협업을 위해 버전을 공동으로 관리하는 곳

branch를 이용하면 기본 버전 관리 틀에 영향을 주지 않으면서 다양한 형태의 기능 테스팅이 가능

- 파일의 변화를 스냅샷으로 저장

SVN 저장소에 대한 이관 기능

- add, commit, branch, checkout, merge, init, remote add, push, fetch, clone, fork

- branch, check-out, commit 등 로컬 환경에서의 형상관리 기능

- push, fetch, pull 등 원격 환경에서의 변경 전송 기능

 

2020/09/23 - [정보처리기사 실기/실기 정리] - 정보처리기사 실기) 1장 요구사항 확인

2020/10/12 - [정보처리기사 실기/실기 정리] - 정보처리기사 실기) 2장 데이터 입출력 구현

2020/10/12 - [정보처리기사 실기/실기 정리] - 정보처리기사 실기) 3장 통합구현

2020/10/12 - [정보처리기사 실기/실기 정리] - 정보처리기사 실기) 4장 서버 프로그램 구현

2020/10/12 - [정보처리기사 실기/실기 정리] - 정보처리기사 실기) 5장 인터페이스 구현

2020/10/12 - [정보처리기사 실기/실기 정리] - 정보처리기사 실기) 6장 화면 설계

2020/10/12 - [정보처리기사 실기/실기 정리] - 정보처리기사 실기) 7장 애플리케이션 테스트 관리

2020/10/12 - [정보처리기사 실기/실기 정리] - 정보처리기사 실기) 8장 SQL 응용

2020/10/13 - [정보처리기사 실기/실기 정리] - 정보처리기사 실기) 9장 소프트웨어 개발 보안 구축

2020/10/13 - [정보처리기사 실기/실기 정리] - 정보처리기사 실기) 11장 응용 SW 기초 활용

2020/10/13 - [정보처리기사 실기/실기 정리] - 정보처리기사 실기) 12장 제품 소프트웨어 패키징

반응형

댓글