Notice
Recent Posts
Recent Comments
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

Chimy's Program

정보처리기사 필기 - 소프트웨어 개발 : 제품 소프트웨어 패키징 본문

BASE

정보처리기사 필기 - 소프트웨어 개발 : 제품 소프트웨어 패키징

chimy 2020. 5. 27. 12:41

정보처리기사 필기 - 소프트웨어 개발 : 제품 소프트웨어 패키징

 

소프트웨어 패키징

 

  • 모듈별로 생성한 실행파일을 묶어 배포형 설치파일을 만듦
  • 사용자 중심
  • 모듈화 패키징


 패키징 시 고려사항

 

  • OS, CPU, 메모리 최소환경 정의
  • 메뉴얼 배포
  • 고객 편의
  • 패키징의 변경사항/개선사항 관리


 패키징 작업 순서 :  2~4주 개발 주기 단위로 패키징하고 최종 결과물을 배포

 

  1. 기능식별(코드기능)
  2. 모듈화(기능단위)
  3. 빌드진행(실행파일)
  4. 사용자환경분석
  5. 패키지 적용 및 시험
  6. 패키지 변경 및 개선
  7. 배포

 

※ 온라인 배포 : 온라인을 통해 다운로드
 오프라인 배포 : CD, DVD, USB 이용


릴리즈 노트 

 

  • 사용자에게 제공하는 소프트웨어에 대한 정보
  • 개발과정에서 정리된 내용을 SW 최종 사용자와 공유하기 위한 문서
  • 테스트에 대한 내용, 사양 확인 가능
  • SW기능, 서비스, 개선사항을 사용자와 공유

 릴리즈 노트 초기 버전 작성 시 고려사항

 

  • 머리말, 개요, 목적, 문제 요약, 재현항목
  • 수정/개선 내용, 사용자 영향도, SW 지원 영향도
  • 노트, 면책 조항, 연락처

 릴리즈 노트 추가 버전 작성 시 고려사항

 

  • 버그, 업그레이드, 기능 향상, 사용자 요청사항 발생시 작성
  • 중대한 오류가 발생하여 긴급 수정할 시 버전을 출시


 릴리즈 노트 작성 순서

 

  1. 모듈식별
  2. 릴리지 정보 확인
  3. 릴리즈 노트 개요 작성
  4. 영향도 체크
  5. 정식 릴리즈 노트 작성
  6. 추가 개선 항목 식별



디지털 저작권 관리(DRM) 

 

- 저작권 : 여러분야에서 독점적 권리, 타인의 침해x

 

 디지털 저작권 관리(DRM; Digital Right Management)

 

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

 

 디지털 저작권 구성요소

 

  • 클리어링 하우스 : 저작권에 대한 사용권한, 결제관리
  • 콘텐츠 제공자 : 저작권자
  • 패키저 : 콘텐츠를 배포 가능한 형태로 묶어 암호화
  • 콘텐츠 분배자 : 유통업자
  • 콘텐츠 소비자 : 구매자
  • DRM 컨트롤러 : 이용권한 통제
  • 보안컨테이너 : 전자적 보안장치

 

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

 

  • 암호화
  • 키 관리
  • 암호화 파일 생성
  • 식별 기술
  • 저작권 표현
  • 정책 관리
  • 크랙 방지
  • 인증

 

 

소프트웨어 설치 매뉴얼 

 

  • 설치과정에 필요한 내용을 모두 기술할 설명서
  • 사용자 기준
  • 시작부터 완료까지 빠짐없이 작성
  • 오류메시지나 예외 상황도 기술

 

 서문

 

  • 문서 이력
  • 설치 매뉴얼의 주석
  • 설치도구의 구성
  • 설치 환경 체크 항목


 기본 사항

 

  • 소프트웨어 개요
  • 설치 관련 파일
  • 설치 아이콘
  • 프로그램 삭제
  • 관련 추가정보


 설치 매뉴얼 작성 방법

 

  • 설치과정을 이해하기 쉽게 작성
  • 설치화면을 빠짐없이 캡처하여 순서대로 나열
  • 설치화면, 설치이상 메시지 설명, 설치 완료 및 결과, FAQ
  • 설치 시 점검 사항, 네트워크 환경 및 보안, 고객 지원 방법, 준수 정보 & 제한 보증


 설치 매뉴얼 작성 순서

 

  1. 기능 식별
  2. UI분류
  3. 설치파일확인
  4. Uninstall절차 확인
  5. 이상case확인
  6. 최종 매뉴얼 적용

 

 

소프트웨어 사용자 매뉴얼

 

  • 사용과정에서 필요한 내용을 작성한 설명서
  • 업그레이드를 위한 메뉴얼 버전 관리
  • 컴포넌트(독립적인 기능 수행) 단위로 메뉴얼 작성

 

 서문

 

  • 문서 이력, 설치 매뉴얼의 주석, 기록 보관 내용

 

 기본 사항

 

  • 소프트웨어 개요
  • 소프트웨어 사용 환경
  • 소프트웨어 관리
  • 모델버전별 특징
  • 기능 인터페이스 특징
  • 소프트웨어 구동 환경

 

 사용자 매뉴얼 작성 방법

 

  • 사용자화면, 주요기능 분류
  • 응용 프로그램 및 설정, 장치 연동, 네트워크 환경
  • Profile 안내, 고객 지원 방법, 준수정보 제한 보증

 

 사용자 매뉴얼 작성 순서

 

  1. 기능 식별
  2. 사용자 화면 분류
  3. 사용자 환경 파일 확인
  4. 초기화 절차 확인
  5. 이상case확인
  6. 최종 매뉴얼 적용

 

 

국제 표준 제품 관련 품질 

 

 국제 표준 제품 관련 품질 특성의 분류

 

  • 제품 품질 표준 : ISO/IEC 9123, ISO/IEC 14598, ISO/IEC 12119, ISO/IEC 25000
  • 프로세스 품질 표준 : ISO/IEC 9000, ISO/IEC 12207, ISO/IEC 155054, ISO/IEC15288, CMMI

 ISO/IEC 12119 평가 절차

 

  1. 제품 설명서 시험
  2. 사용자 문서 지침
  3. 실행 프로그램 시험
  4. 시험 기록
  5. 시험 보고서 작성

 

 ISO/IEC 14598 특징

 

  • 반복성(Repeatability)
  • 재현성(Reproducibility)
  • 공정성(Impartiality)
  • 객관성(Objectivity)

 

 

소프트웨어 버전 등록 

 

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

 

  • SW변경사항을 관리하는 활동
  • SW개발 전체단계에서 적용(유지보수단계에서도 적용)


 형상관리의 중요성

 

  • SW 변경사항을 체계적으로 추적하고 통제 가능
  • 무절제한 변경 방지

 

 형상 관리 기능

 

  • 형상 식별
  • 버전 제어
  • 형상 통제
  • 형상 감사
  • 형상 기록

 

 소프트웨어의 버전 등록 관련 주요 용어

  • 저장소 : 최신버전의 파일, 변경내역
  • 가져오기 : 저장소에 처음으로 파일을 복사
  • 체크아웃 : 저장소에서 파일 받기
  • 체크인 : 저장소에 새로운 버전 갱신
  • 커밋 : 충돌을 알리고 수정하여 갱신완료
  • 기화 : 저장소의 최신버전과 작업공간 동기화

 

 소프트웨어 버전 등록 과정

 

  1. 가져오기 : 신규 파일 추가
  2. 인출 : 저장소의 파일을 자신의 작업공간으로 가져오기
  3. 예치 : 인출한 파일을 수정하여 저장소에 예치
  4. 동기화 : 저장소와 자신의 작업공간을 동기화
  5. 차이 : 수정기록 확인, 이전/이후 개발파일의 차이 확인

 

 

소프트웨어 버전관리 도구 

 

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

 

 소프트웨어 버전관리 도구 유형 

 

  1. 공유 폴더 방식 : 초기에 사용, 매일 약속된 공유 폴더에 저장했다가 다시 받아오는 방식
  2. 클라이언트/서버 방식 : 중앙 저장소에 저장했다가 다시 불러오는 방식
  3. 분산 저장소 방식 : 중앙 저장소에 내용을 지역 저장소에 저장하여 관리하는 방식

 

 소프트웨어 버전관리 도구별 특징

 

  • CVS : 서버, 클라이언트로 구성, 다수인원이 동시에 범용 OS에 접근 가능
  • SVN : 개별프로젝, CVS의 장점, 단점 개선, 업계 표준
  • RCS : 소스파일 수정은 1사람만 하도록 제한, 잠금
  • Bitkeeper : 대규모, 빠른 속도
  • Git : 오픈소스, 속도에 중점을 둔 분산형 버전관리 시스템, 대형 프로젝트
  • Clear Case : IBM에서 제작, 복수서버/복수클라이언트

 

 소프트웨어 버전관리 도구 사용 시 유의점

 

  • 형상관리 지침에 의거 버전에 대한 정보를 언제든지 접근할 수 있어야 함
  • 개발자, 배포자 이외에 불필요한 사용자가 소스 접근할 수 없도록 해야 함
  • 동일한 프로젝트 파일에 대해서 여러 개발자가 동시 개발할 수 있어야 함
  • 에러 발생 시 최대한 빠른 시간 내에 복구 필요

 

 제품소프트웨어에 소프트웨어 버전관리 도구 활용방안

 

  • 공동 개발 및 작업 관리 : 2명이상의 개발자가 수정 가능
  • 버전 백업 및 복구 : 이전 버전으로 되돌리기 가능
  • 여러 버전 솔루션 작업 : 하나의 솔루션을 기반으로 여러 버전의 제품 개발 시 활용

 

 

빌드 자동화 도구 

 

  • 저장소에 있는 소스를 자동으로 읽어서 빌드를 하여 실행 파일을 만드는 도구 
  • 수없이 반복하여 최종 결과물 산출

 

 온라인 빌드 자동화 도구 - 젠킨스(Jenkins) 

 

  • 빌드 자동화 도구로서 가장 많이 활용되는 도구
  • JAVA기반의 오픈소스
  • 지속적 통합관리를 가능
  • 다양한 버전관리 도구를 지원
  • 임의의 쉘 스크립트와 윈도우 배치 명령까지 실행 가능
  • 쉬운 설치, 친숙한 GUI
  • 저장소 부하 감소
  • 실시간 피드백
  • 분산 필드
  • 3rd party 플러그인 타 도구와의 통합 지원
  • DB, 개발도구, Eclipse, 테스트 도구(Junit)와 통합 가능

 

 안드로이드 환경에 적합한 도구 - 그래들(Gradle) 

 

  • 오픈소스
  • 여러가지 언어의 빌드 환경을 구성
  • 안드로이드 개발 환경에서 빌드 자동화 도구로 사용
  • 그래들 스크립트는 groovy를 사용해서 만든 DSL(Domain Specific Language)
  • 모든 그래들 빌드는 하나 이상의 projects로 구성

 

Comments