인생이 쓰다!인생쓰

공부/정보처리기사

정보처리기사 실기 정리 13일차 ( 제품 소프트웨어 패키징 )

Johnal 2021. 4. 14. 11:09
반응형

*정리는 2020시나공 문제집을 참고했습니다.* 

 

 

소프트웨어 패키징

 

모듈별로 생성한 실행 파일들을 묶어 배포용 설치 파일을 만드는 것을 말합니다. 개발자가 아니라 사용자를 중심으로 진행한다.

소스 코드는 향후 관리를 고려하여 모듈화하여 패키징한다.

 

 

소프트웨어 패키징 작업 순서

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

 

 

 

릴리즈 노트(Release Note)

 

개발 과정에서 정리된 릴리즈 정보를 소프트웨어의 최종 사용자인 고객과 공유하기 위한 문서입니다.

 

릴리즈 노트 작성 순서

 

모듈 식별

모듈별 빌드 수행 후 릴리즈 노트에 작성될 내용 확인

릴리즈 정보 확인 

릴리즈 노트 및 소프트웨어 이름, 릴리즈 버전 및 날짜, 노트 날짜 및 버전 등 확인

릴리즈 노트 개요 작성 

소프트웨어 및 변경사항 전체에 대한 간략한 내용 작성

영향도 체크 

버그나 이슈 관련 내용 또는 해당 릴리즈 버전에서의 기능 변화가 다른 소프트웨어나 기능을 사용하는데 미칠 수 있는 영향 기술 

정식 릴리즈 노트 작성

Header, 개요, 영향도 체크 항목을 포함하여 정식 릴리즈 노트에 작성될 기본 사항 작성

추가 개선 항목 식별 

추가 버전 릴리즈 노트 작성이 필요한 경우 추가 릴리즈 노트 작성

 

 

 

디지털 저작권 관리(DRM)

 

저작권자가 배포한 디지털 콘텐츠가 저작관자가 의도한 용도로만 사용되도록 디지털 콘텐츠의 생성, 유통, 이용까지의 전 과정에 걸쳐 사용되는 디지털 콘텐츠 관리 및 보호 기술입니다.

 

디지털 저작권 관리의 기술 요소

 

암호화 - 콘텐츠 및 라이선스를 암호화하고 전자 서명을 할 수 있는 기술

 

키 관리 - 콘텐츠를 암호화한 키에 대한 저장 및 분배 기술

 

암호화 파일 생성 - 콘텐츠를 암호화된 콘텐츠로 생성하기 위한 기술

 

식별 기술 - 콘텐츠에 대한 식별 체계 표현 기술

 

저작권 표현 - 라이선스의 내용 표현 기술

 

정책 관리 - 라이선스 발급 및 사용에 대한 정책 표현 및 관리 기술

 

크랙 방지 - 크랙에 의한 콘텐츠 사용 방지 기술

 

인증 - 라이선스 발급 및 사용의 기준이 되는 사용자 인증 기술 

 

 

 

소프트웨어 설치 메뉴얼 작성

소프트웨어 설치 메뉴얼은 개발 초기에서도 적용된 기준이나 소프트웨어를 설치하는 과정에 필요한 내용을 기록한 설명서와 안내서입니다.

 

설치 메뉴얼 작성 순서

 

기능 식별 

소프트웨어의 개발 목적과 주요 기능을 흐름 순으로 정리하여 기록

UI 분류 

설치 메뉴얼을 작성할 순서대로 UI를 분류한 후 기록

설치 파일/백업 파일 확인 

폴더 위치, 설치 파일, 백업 파일등의 개별적인 기능을 확인하여 기록

Uninstall 절차 확인 

직접 Uninstall을 수행하면서 그 순서를 단계별로 자세히 기록합니다.

이상 Case 확인 

설치 과정에서 발생할 수 있는 다양한 Case를 만들어 확인하고 해당 Case에 대한 대처법을 자세하게 기록

최종 메뉴얼 적용 

설치가 완료된 화면과 메시지를 캡쳐하여 추가한 후 완성된 메뉴얼을 검토하고 고객 자원에 대한 내용 기록

 

 

소프트웨어 사용자 메뉴얼 작성

 

소프트웨어 사용자 메뉴얼은 사용자가 소프트웨어를 사용하는 과정에서 필요한 내용을 문서로 기록한 설명서와 안내서입니다.

 

사용자 메뉴얼 작성 순서

 

기능 식별 

소프트웨어의 개발 목적과 사용자 활용 기능을 흐름 순으로 정리하여 기록

사용자 화면 분류 

사용자 화면을 메뉴별로 분류하여 기록

사용자 환경 파일 확인 

폴더 위치, 사용자 로그 파일, 백업 파일 등의 개별적인 기능을 확인하여 기록

초기화 절차 확인 

프로그램을 사용하기 위한 초기화 절차를 확인하고 그 단계를 순서대로 기록

이상 Case 확인 

소프트웨어 사용 과정에서 발생할 수 있는 다양한 이상 Case를 만들어 확인하고 해당 Case에 대한 대처법을 자세하게 기록

최종 메뉴얼 적용 

사용과 관련된 문의 답변을 기록한 후 완성된 메뉴얼을 검토하고 고객 지원에 대한 내용 기록

 

 

 

소프트웨어 패키징의 형상관리(SCM)

 

형상 관리(SCM, Software Configuration Management)는 소프트웨어의 개발 과정에서 소프트웨어의 변경 사항을 관리하기 위해 개발된 일련의 활동입니다.

 

형상관리 기능

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

 

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

 

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

 

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

 

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

 

소프트웨어 버전 등록 과정

가져오기(Import) - 개발자가 저장소에 신규로 파일을 추가합니다.

 

인출(Check - Out) - 수정 작업을 진행할 개발자가 저장소에 추가된 파일을 자신의 공간으로 인출합니다.

 

예치(Commit) - 인출한 파일을 수정한 후 설명을 붙여 저장소에 예치합니다.

 

동기화(Update) - 커밋 후 새로운 개발자가 자신의 작업 공간을 동기화(Update)합니다.

 

차이(Diff) - 새로운 개발자가 추가된 파일의 수정 기록을 확인하면서 이전 개발자가 처음 추가한 파일과 이후 변경된 파일의 차이를 확인

 

소프트웨어 버전 관리 도구

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

 

클라이언트/서버 방식 : 버전 관리 자료가 중앙 시스템(서버)에 저장되어 관리되는 방식

 

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

 

Subversion(SVN) : CVS(Concurrent Version System)를 개선한 것으로, 클라이언트/서버 구조이며,아파치 소프트웨어 재단에서 2000년에 발표하였음

 

GIt : 리누스 토발즈가 2005년 리눅스 커널 개발에 사용할 관리 도구로 개발한 이후 주니오 하마노에 의해 유지 보수되고 있습니다.

 

 

빌드 자동화 도구

빌드는 소스 코드 파일들을 컴파일한 후 여러 개의 모듈을 묶어 실행 파일로 만드는 과징어며, 이러한 빌드를 포함하여 테스트 및 배포를 자동화하는 도구를 빌드 자동화 도구라고합니다.

 

Jenkins 

Java 기반의 오픈 소스 형태로, 가장 많이 사용되는 빌드 자동화 도구이며 서블릿 컨테이너에서 실행되는 서버 기반도구입니다.

 

Gradle

Groovy를 기반으로 한 오픈 소스 형태의 자동화 도구로, 안드로이드 앱 개발환경에서 사용됩니다.

안드로이드 뿐만 아니라 플로그인을 사용하면 Java,C/C++, Phthon 등의 언어도 빌드가 가능하며 실행할 처리명령들을 모아 태스크로 만든 후 태스크 단위로 실행됩니다.

 

 

728x90
반응형