제2과목 소프트웨어 패키징
▷ 제품 소프트웨어 패키징 A
> 소프트웨어 패키징
- 소프트웨어 패키징의 개요 : 모듈별로 생성한 실행파일을 묶어서 배포용 설치파일 생성, 사용자 중심, 모듈화 패키징(유지보수 용이)
- 패키징시 고려사항 : 운영체제, cpu, 메모리 등의 최소환경 정의, 메뉴얼, 고객편의, 패키징의 변경 개선 관리
- 패키징 작업 순서 : 2-4주, 최종결과물
온라인 배포(다운로드), 오프라인 배포(CD, DVD, USB로 메뉴얼과 함께 배포)
기능식별(코드기능) -> 모듈화(기능단위) -> 빌드진행(코드를 실행가능한 SW로 변환하는 과정) -> 사용자환경분석 -> 패키지적용, 시험 -> 패키징 변경, 개선 -> 배포
> 릴리즈 노트
- 릴리즈 노트(Release Note)의 개요 : 사용자에게 제공하는 SW에 대한 정보, 업데이트 정보 공유문서(SW기능, 서비스, 개선기능 등)
- 릴리즈 노트 초기 버전 작성시 고려사항 : 머리말(이름, 버전), 개요, 목적, 문제요약, 재현항목(버그발견), 수정개선 내용, 사용자 영향도(기능의 변화가 사용자에게 미칠 영향), SW지원 영향도(기능의 변화가 SW에 미칠 영향), 노트, 면책 조항, 연락처
- 릴리즈 노트 추가 버전 작성시 고려사항 : 버그, 업그레이드, 기능향상, 요청사항 등
- 릴리즈 노트 작성 순서 : 모듈식별-릴리지 정보확인-릴리즈 노트개요 작성-영향도 체그-정식 릴리즈노트 작성-추가개선항목 식별
> 디지털 저작권 관리(DRM)
- 저작권의 개요 : 독점적 권리, 타인의 침해x
- 디지털 저작권 관리(DRM : Digital Right Management)의 개요 : 저작권자가 의도한 용도로만 사용해야 한다.
- 디지털 저작권 관리의 흐름도
클리어링 하우스(저작권 사용권한, 결제관리), 콘텐츠 제공자, 패키저(함께 배포하여 암호화)
콘텐츠 분배자(유통), 콘텐츠 소비자, DRM 컨트롤러(통제), 보안컨테이너(보안장치)
- 디지털 저작권 관리의 기술 요소
암호화, 키 관리, 암호화 파일 생성, 식별 기술, 저작권 표현, 정책관리(라이센스 발급), 크랙방지, 인증
▷ 제품 소프트웨어 패키징 B
> 소프트웨어 설치 매뉴얼
- 소프트웨어 설치 매뉴얼의 개요 : 사용자 기준으로 설치과정에 필요한 내용을 기재한 설명서, 오류메세지, 예외상황
- 서문 : 문서이력, 설치 매뉴얼의 주석(주의, 참고사항), 설치도구의 구성, 설치 환경 체크 항목(cpu, 메모리 os)
- 기본사항 : 소프트웨어 개요(주요기능), 설치관련 파일(exe, log 등), 설치 아이콘, 프로그램 삭제, 관련 추가정보
- 설치 매뉴얼 작성 방법 : 설치과정을 이해가 쉽도록 캡쳐하여 순서대로 설명
설치화면, 설치이상 메시지 설명, 설치 완료 및 결과, FAQ
설치시 점검사항, 네트워크 환경 및 보안, 고객지원방법(연락처), 준수정보(불법, 저작권자) 및 제한 보증
- 설치 매뉴얼 작성 순서
기능식별(목적, 기능) -> UI분류 -> 설치파일확인(백업파일) -> Uninstall 절차 확인(삭제순서) -> 이상 case확인(대처방법) -> 최종매뉴얼 적용(검토 및 고객지원)
> 소프트웨어 사용자 매뉴얼
- 소프트웨어 사용자 매뉴얼 개요 : 업그레이드를 위한 매뉴얼 버전관리 필요, 컴포넌트(독립기능 수행)단위 매뉴얼
- 서문 : 문서이력, 설치매뉴얼의 주석, 기록 보관 내용(sw명칭, 구입날짜 등)
- 기본사항 : 소프트웨어 개요(기능), 소프트웨어 사용환경(cpu, 메모리, os), 소프트웨어 관리(사용, 종료), 모델버전별 (기능적)특징, 기능 인터페이스 특징, 소프트웨어 구동 환경(호환가능 os, os별 설명)
- 사용자 매뉴얼 작성 방법 : 사용자 화면(주의, 참고사항, 사용자 환경), 주요기능 분류(실행화면 캡쳐), 응용 프로그램 및 설정(구동 프로그램, 기본값), 장치 연동, 네트워크 환경(정상연결), profile 안내(구동환경 점검), 고객지원방법(연락처, 이메일 등), 준수정보 제한 보증(저작권자, 소유권정보)
- 사용자 매뉴얼 작성 순서 : 기능 식별(목적, 기능) -> 사용자화면 분류(메뉴별) -> 사용자 환경 파일 확인(폴더, 로그, 백업) -> 초기화 절차확인 -> 이상 case확인(해결방법) -> 최종 매뉴얼 적용(FAQ, 고객지원 등)
> 국제 표준 제품 품질
- 국제 표준 제품 관련 품질
국제 표준 제품 관련 품질 특성의 분류
- 제품 품질 표준 : ISO/IEC 9123(품질에 대한 특성, 측정기준 제시 / 기능성, 신뢰성, 사용성, 효율성, 유지보수성, 이식성 등), ISO/IEC 14598(SW제품평가 프로세스, 평가모듈), ISO/IEC 12119(패키지, SW품질 요구사항 및 테스트), ISO/IEC 25000(품질 모형, 메트릭, 요구사항, 평가 등)
- 프로세스 품질 표준 : ISO/IEC 9000(품질경영, 품질보증), ISO/IEC 12207(life cycle 프로세스), ISO/IEC 155054(표준모델), ISO/IEC 15288(시스템 생명주기), CMMI(프로세스 표준모델)
- ISO/IEC 12119 평가 절차 : 제품 설명서 시험(요구사항, 권고사항)-사용자 문서지침(완전성, 정확성, 일관성, 이해성)-실행 프로그램 시험(프로그램, 데이터, 신뢰성)-시험기록-시험 보고서 작성
- ISO/IEC 14598 특징 : 반복성(Repeatability, 동일한 평가자가 동일한 사양으로 테스트시 동일한 결과), 재현성(Reproducibility, 다른 평가자가 테스트시 유사한 결과), 공정성(Impartiality, 편향x), 객관성(Objectivity)
▷ 제품 소프트웨어 패키징 C
> 소프트웨어 버전 등록
- 소프트웨어 패키징의 형상 관리 : SW개발 전체단계에서 SW변경사항관리(유지보수 포함)를 위한 일련의 활동
- 형상관리의 중요성 : SW 변경사항 추적, 통제, 무적제한 변경x
- 형상 관리 기능 : 형상 식별(형상관리 대장, 번호 등을 트리구조로 식별), 버전 제어, 형상 통제(변경관리, 변경요구 검토), 형상 감사(기준선, 승인), 형상 기록(기록, 관리)
- 소프트웨어의 버전등록관련 주요 용어 : 저장소(최신버전 파일, 변경내역), 가져오기(파일복사방법), 체크아웃(저장소에서 파일 받기), 체크인(새로운 버전으로 갱신), 커밋(충돌 알림, 수정, 갱신 완료), 동기화(최신버전으로 작업공간을 동기화)
- 소프트웨어 버전 등록 과정 : 가져오기(신규 파일추가) -> (작업공간으로)인출 -> 예치(수정) -> 동기화 -> 차이(수정기록 확인)
> 소프트웨어 버전관리 도구
- 소프트웨어 버전관리 도구 개요
소프트웨어 버전관리 도구란? 제품소프트웨어의 신규 개발, 변경, 개선과 관련된 수정 내역을 관리하는 도구
소프트웨어 버전관리 도구 유형 : 공유폴더 방식(이전에 사용, 폴더 복사방식), 클라이언트/서버 방식(중앙저장소에 축적), 분산 저장소 방식(중앙저장소 파일이 작업자에게 복사됨)
- 소프트웨어 버전관리 도구별 특징
CVS : 서버와 클라이언트의 다수인원이 동시에 os 접근 가능
SVN(개별 프로젝트) : CVS의 장점 + 개선, 2000년도 발표, 표준으로 사용
RCS : 소스파일의 수정을 1인으로 제한, 잠금
Bitkeeper : 대규모 프로젝트에서 빠른속도를 위한 도구
Git(오픈소스) : 속도중점의 분산형 버전관리 시스템, 대형프로젝트에서 효과적
Clear Case :IBM제작, 복수서버-복수클라이언트 구조
- 소프트웨어 버전관리 도구 사용시 유의점
형상관리 지침에 의거 버전에 대한 정보를 언제든지 접근할 수 있어야 함
개발자, 배포자 이외에 불필요한 사용자가 소스 접근이 불가능하도록 해야함
동일한 프로젝트 파일에 대해서 여러 개발자가 동시 개발할 수 있어야 함
에러 발생시 최대한 빠른시간내 복구 필요
- 제품소프트웨어에 소프트웨어 버전관리 도구 활용방안
공동 개발 및 작업 관리 : 2인이상의 개발자가 수정가능해야함
버전 백업 및 복구 : 이전버전 되돌리기 가능해야함
여러 버전 솔루션 작업
> 빌드 자동화 도구
- 소프트웨어 빌드 자동화 도구 개요
소프트웨어 빌드 자동화 도구란? 저장소에 있는 소스를 자동으로 읽어서 빌드를 하여 실행 파일을 만드는 도구
- 온라인 빌드 자동화 도구, 젠킨스(Jenkins)
빌드 자동화 도구로서 가장 많이 활용되는 도구
지속적 통합관리를 가능케함, 다양한 버전관리 도구 지원
임의의 쉘 스크립트와 윈도우 배치 명령까지 실행가능
장점 : 쉬운 설치, 친숙한 GUI, 저장소 부하 감소, 실시간 피드백, 분산필드 테스트 가능, 3d party 플러그인 통합가능(DB, 개발도구, eclipse, 테스트도구)
- 안드로이드 환경에 적합한 도구, 그래들(Gradle) : 오픈소스
그래들(Gradle)은 여러가지 언어의 빌드 환경 구성 가능
안드로이드 개발 환경에서 빌드 자동화 도구로 사용
그래들 스크립트는 groovy를 사용해서 만든 DSL(Domain Specific Language)
모든 그래들 빌드는 하나 이상의 projects로 구성됨
'정보처리기사 > [inflearn] 필기 (완)' 카테고리의 다른 글
정보처리기사 - 제2과목 소프트웨어 개발 / 애플리케이션 테스트 관리 (2) (0) | 2022.03.31 |
---|---|
정보처리기사 - 제2과목 소프트웨어 개발 / 애플리케이션 테스트 관리 (1) (0) | 2022.03.30 |
정보처리기사 - 제2과목 소프트웨어 개발 / 통합 구현 (0) | 2022.03.29 |
정보처리기사 - 제2과목 소프트웨어 개발 / 데이터 입출력 구현(2) (0) | 2022.03.28 |
정보처리기사 - 제2과목 소프트웨어 개발 / 데이터 입출력 구현(1) (0) | 2022.03.28 |