본문 바로가기

정보 처리 기사 필기/2. 소프트웨어 개발

2-3 제품 소프트웨어 패키징 - 매뉴얼

반응형

제품 소프트웨어 매뉴얼

 

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

 

 

개념
  • 제품 s/w 개발 단계부터 적용한 기준이나 패키징 이후 설치 및 사용자 측면의 주요 내용 문서로 기록
  • 사용자 중신의 기능 및 방법 나타낸 설명서와 안내서
  • 매뉴얼 작성 프로그램/툴 이용
기본 사항
  • 사용자가 제품 구매 후 최초 설치 시 참조하는 매뉴얼
  • 설치 시작-완료 전 과정 순서대로 설명
  • 설치 매뉴얼: 목차, 개요, 기본 사항 포함
  • 제품 소프트웨어 소개, 설치 파일, 절차 포함
  • 각 단계별 메시지, 해당 화면 순서대로 전부 캡처하여 설명
  • 예외 상황 관련 내용 별도 구분 설명
작성 순서
  • 기능 식별
  • UI 분류
  • 설치 파일/백업 파일 확인
  • Uninstall 절차 확인
  • 이상 case 확인
  • 최종 매뉴얼 적용
포함 항목
  • 소프트웨어 개요
  • 설치 관련 파일
  • 설치 아이콘
  • 프로그램 삭제
  • 관련 추가 정보

 

 

 

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

 

개념
  • 완료된 제품 s/w를 고객에게 전달하기 위한 형태로 패키징
  • 설치/사용에 필요한 제반 절차 및 환경 등 전체 내용 포함하는 매뉴얼 작성
  • 제품 s/w 패치 개발/갱신 위해 버전 관리 수행
  • 개발된 컴포넌트 사용 시 알아야 할 내용 기술
  • 제품 기능 및 고객 지원까지 포함
  • 패키지 기능, 인터페이스 포함하고 있는 메소드나 오퍼레이션, 메소드 파라미터 등의 설명 포함
준비 절차
  • 작성 지침 정의
  • 사용자 매뉴얼 구성 요소 정의
  • 구성 요소별 내용 작성
  • 사용자 매뉴얼 검토
사용자 매뉴얼과
사용자 환경
  • 신규/변경 개발 소스 식별
  • 모듈화하여 상용 제품으로 패키징
  • 고객 편의성 위해 신규/변경 이력 확인
  • 버전 관리 및 릴리즈 노트 통해 관리
  • 사용자 실행 환경 이해
  • 범용 환경에서 사용 가능하도록 일반적인 배포 형태로 분류하여 패키징
제품 소프트웨어
사용자 매뉴얼
작성 절차
  • 기능 식별
  • 사용자 화면 분류(UI)
  • 사용자 파일 확인
  • 초기화 절차 확인
  • 이상 case 확인
  • 최종 매뉴얼 적용
제품 소프트웨어
배포본
  • 자체 고유 시리얼 넘버 부착하여 복제/사후 지원 고려하여 제작

 

 

 

 

제품 소프트웨어 버전 관리

 

1. 제품 소프트웨어 버전 관리

 

개념
  • 코드, 라이브러리, 관련 문서 등 시간에 따른 변경 관리한느 전체 활동
  • 개발자들이 프로그램 개정한 사항을 추적하는 데 사용되는 DB 제공
  • 동일한 s/w에 대한 여러 형태의 프로그램 관리
  • 형상 관리 포함
버전 관리 항목
(형상관리 도구 기능)
  • 가져오기(import): 버전 관리가 되고 있지 않은 아무것도 없는 저장소에 처음으로 파일 복사
  • 체크아웃(Checkout): 프로그램 수정위해 저장소에서 최신 버전 파일 개발자 PC로 다운로드
  • 체크인(Checkin): 체크아웃한 파일 수정 완료 후 저장소의 파일을 새로운 버전으로 업로드
  • 완료(Commit): 체크인 수행 시 이전에 갱신된 내용 있을 시 충돌 알리고 diff 도구 이용해 수정 후 갱신 완료/최종 업데이트 시 형상 관리 서버에서 반영
  • 저장소(Repository): 최신 버전 파일들과 변경 내역에 대한 정보 저장되어 있는 곳
제품 소프트웨어 저장소(Repository)
  • 인증 받은 제품 s/w 등록하는 저장소로 사용자는 저장소 통해 이용
  • 최신 버전 유지
  • 버전별 상태 유지/관리하여 쉽게 이용
  • 버전 등록 시 통합적으로 버전 관리 잘 되는지 중요
  • 여러 부분 체크 가능하도록 체크리스트 만들어 모든 사용자 공유

 

 

 

2. 제품 소프트웨어 버전 관리 도구

 

개념
  • 형상 관리 포함하여 관리하는 도구
  • 형상 관리 지침 활용하여 제품 s/w 신규 개발, 변경, 개선 관련 수정 내역 관리
  • 제품 s/w 버전/변경/개선 내용 관리
버전 관리 도구 도입
  • 제품 소프트웨어 최종 배포본만 관리
  • 고객 지원팀의 경우 수작업 소요
  • 예산 및 비용에 대한 부담
  • 제품 개발 및 사용상의 미숙으로 인한 어려움

 

 

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

공유 폴더 방식
(RCS, SCCS)
  • 매번 완료된 파일은 정해진 위치와 공유 폴더에 복사
  • 전문 담당자가 정상 실행 확인
  • RCS: 소스 파일 수정 한사람으로 제한(잠금 방식 제어)
클라이언트/서버 방식
(CVS, SVN)
  • 중앙에서 관리하는 버전 관리 시스템이 항상 작동
  • 개발자들의 현재/이전 작업 내용 저장 용이
  •  서로 다른 개발자가 같은 파일 작업 시 경고 출력
  • Trac/CVS View와 같은 GUI 툴로 모니터링
분산 저장소 방식
(Git, Bikeeper,
Clear Case)
  • 컴퓨터/원격 저장소로 구분
  • 중앙 저장소에 존재하는 파일 복사되면 원격 저장소에 있던 파일 지워지고 복사된 컴퓨터에만 존재
  • 개발 완료 파일을 본인 컴퓨터 저장소에 commit하고 다시 원격 저장소에 반영
  • Bitkeeper/SVN: 중앙 통제 방식으로 대규모 프로젝트에서 빠른 속도로 개발
  • Clear Case: 여러 개 서버, 클라이언트를 두어 서버 부족 시 추가하여 사용하므로 확장성 좋음

 

 

 

제품 소프트웨어
전체 버전 등록 순서
  • 버전 관리 개념 숙지
  • 버전 관리 필요성 체크
  • 버전 관리 도구 사용법 숙지
  • 버전 관리 Term 확인
  • 버전 등록
  • Commit 및 update
버전 관리 도구 통한
버전 등록
  • 추가(add)
  • 인출(Checkout)
  • 예치(Commit)
  • 동기화(Update)
  • 차이(Diff)
제품 소프트웨어
버전 관리 도구
사용 유의점
  • 형상 관리 지침에 의거 버전에 대한 정보 언제든지 접근 가능해야 함
  • 제품 소프트웨어 개발자, 배포자 이외 권한없는 사용자가 소스 수정할 수 없도록 해야 함
  • 동일한 프로젝트에 대해 여러 개발자가 동시에 개발할 수 있어야 함
  • 오류 발생 시 최대한 빠른 시간 내에 복구
제품 소프트웨어
버전 관리 도구의
활용 방안
  • 버전 관리 백업 및 복구
  • 동일 버전 공동 작업
  • 여러 버전 솔루션 작업

 

 

제품 소프트웨어 소스 및 자료 백업

정책
  • 버전 관리 라이브러리 백업 파일은 버전 관리 라이브러리 저장 디스크/분리된 디스크에 저장
  • 디스크 백업 1일 1회
  • CD 백업 1주일 1회
  • 실수에 의한 삭제 예방위한 백업 최소 D-2일분 이상 보관
백업 방법
  • 전체 백업(부분 백업은 복잡하며 복구 시 어려움 발생)
  • 임시/신규 요청 또는 중지 요청은 백업 작업 절차에 따라 실시
  • 백업 결과는 CMO(Change Mft Officer)가 주기적 점검/버전 관리 정기 보고 시 함께 보고
백업 유형
  • 전체 백업(full backup): 백업받고자 하는 데이터 전체에 대해 백업
  • 차등 백업(Differential Backup): 전체 백업 이후 다음 전체 백업이 실시되기 직전까지 이전 전체 백업 이후 변화된 데이터 백업
  • 증분 백업(Incremental Backup): 차등 백업과 유사하나 전체 백업 이후 변경분 누적되어 백업

 

 

 

 

3. 빌드 자동화 도구

 

개념
  • 제품 소프트웨어 실행 파일 자동으로 만들어 주는 도구
  • 지속적 통합 개발 환경에서 유용하게 활용
  • 실행 파일 한번 생성 시 새롭게 추가되는 프로그램은 자동으로 추가
  • 실행 파일 생성 자동화위해 저장소의 프로그램 소스 코드 자동으로 가져와 실행 파일 만드는 도구
종류
  • Jenkins
    • 가장 많이 사용
    • Java 기반 오픈 소스로 IC 가능
    • Apache, Tomcat과 같은 웹 서버 기반에서 운영
    • CVS, SVN, Git 등 다양한 버전 관리 도구 지원
    • Ant, Maven 기반 프로젝트/임의의 쉘 스크립트/배치 명령 실행 가능
  • Gradle
    • Groovy 기반오픈소스로 안드로이도 환경에 적합
    • 실행할 처리 명령 모아 Task(클래스 컴파일/Jar 생성/Javadoc 생성) 단위로 실행
    • Gradle 스크립트: Groovy 사용해 만든 DSL(Domain Specific Language)
    • 다양한 프로그래밍 언어의 빌드 환경 구축
  • Ant

 

 

 

 

 

Reference

https://book.naver.com/bookdb/book_detail.naver?bid=17134434 

 

이기적 정보처리기사 필기 기본서

- 기초부터 탄탄히 잡아주는 영진닷컴의 이기적 수험서!영진닷컴이 자랑하는 수험서 브랜드 ‘이기적’ 시리즈는 쉽고 풍부한 내용으로 기초부터 튼튼하게 쌓아주는 합격의 동반자입니다. 기

book.naver.com

 

반응형