초보 개발자의 성장기

한이아지와 함께하는 정보처리기사 3과목 1번째) 제품 소프트웨어 패키징 본문

IT 자격증 공부/정보처리기사

한이아지와 함께하는 정보처리기사 3과목 1번째) 제품 소프트웨어 패키징

개발자 김케빈 2021. 1. 30. 01:01


PART2. 소프트웨어 개발

  • Chap01) 데이터 입 · 출력 구현
    • 논리 데이터 저장소 확인
    • 물리 데이터 저장소 설계
    • 데이터 조작 프로시저 작성
    • 데이터 조작 프로시저 최적화
  • Chap02) 통합 구현
    • 모듈 구현
    • 통합구현 관리
  • Chap03) 제품 소프트웨어 패키징
    • 제품 소프트웨어 패키징
    • 제품 소프트웨어 매뉴얼 작성
    • 제품 소프트웨어 버전 관리
  • Chap04) 애플리케이션 테스트 관리
    • 애플리케이션 테스트케이스 설계
    • 애플리케이션 통합 테스트
    • 애플리케이션 성능 개선
  • Chap05) 인터페이스 구현
    • 인터페이스 설계 확인
    • 인터페이스 기능 구현
    • 인터페이스 구현 검증

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


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

1.1. 애플리케이션 패키징 (★)

[1] 애플리케이션 패키징이란?

개발이 완료된 제품 소프트웨어를 배포하고 설치할 수 있도록 고객에게 전달하기 위한 형태로 제작하고
매뉴얼을 작성하는 활동

 

[2] 애플리케이션 패키징 고려사항

 

  ① 사용자 실행 환경의 이해

  사용자 편의성을 위해 사용자 실행 환경을 우선 고려하여 패키징 진행

  OS부터 시작하여 실행 환경, 시스템 사양 및 고객의 사용 방법까지 상세 분류하여 실행 환경을 사전 정의

 

  ② 사용자 관점에서의 패키징 고려사항 

  사용자 편의성을 위해 사용자 환경을 확인하여 여러 가지 케이스를 사전에 고려

고려사항 설명
사용자 시스템 환경 정의 사용자의 시스템 환경인 운영체제, CPU, 메모리 등의 수행을 위한 최소 환경 정의
UI  제공 사용자가 직관적으로 확인할 수 있는 UI를 제공하고 매뉴얼 일치시켜 패키징 작업 수행
관리 서비스 형태로 제공 하드웨어와 함께 통합 적용할 수 있도록 패키징을 관리 서비스 형태로 제공
패키징의 변경 및 개선 관리 고려 다양한 사용자의 요구사항을 반영하기 위해 패키징의 변경 및 개선 관리를 고려하여 배포

[3] 애플리케이션 패키징 프로세스

순서 프로세스 세부 활동
1 기능 식별 입출력 데이터 식별, 전체적인 기능 정의 및 데이터 흐름 식별, 기능 단위 및 출력 정의
2 모듈화 기능 및 서비스를 모듈 단위로 분류, 기능의 공유와 재활용 분류, 모듈 간 결합도와 응집도 식별
3 빌드 진행 신규 개발 소스 및 컴파일 결과물 준비, 정상 기능 단위 및 서비스 분류, 빌드 도구 확인 
4 사용자 환경 분석 최소 사용자 환경 사전 정의, 모듈 단위의 사용자 환경 테스트 수행
5 패키징 적용 시험 사용자 환경에서의 패키징 적용 시험, UI 및 시스템 상의 편의성 체크
6 패키징 변경 개선 패키징 적용 시 변경점 도출, 최소 사용자 환경에서 서비스 가능한 수준의 개선, 버젼 재배포

 

1.2. 애플리케이션 배포 도구 (★★)

[1] 애플리케이션 배포 도구 개념

배포를 위한 패키징 시에 디지털 콘텐츠의 지적 재산권을 보호하고 관리하는 기능 제공, 완전한 유통과 배포를 보장

 

[2] 애플리케이션 배포 도구의 기술요소 - <암키식저암정크인> 

기술요소 설명
암호화 콘텐츠 및 라이선스를 암호화하고 전자서명을 할 수 있는 기술
키 관리 콘텐츠를 암호화한 키에 대한 저장 및 배포 기술
식별 관리 콘텐츠에 대한 식별 체계 표현 기술
저작권 표현 라이선스의 내용 표현 기술
암호화 파일 생성 콘텐츠를 암호화된 콘텐츠로 생성하기 위한 기술
정책 관리 라이선스 발급 및 사용에 대한 정책표현 및 관리 기술
크랙 방지 크랙에 의한 콘텐츠 사용 방지 기술
인증 라이선스 발급 및 사용의 기준이 되는 사용자 인증 기술

 [3] 애플리케이션 배포 도구 활용 시 고려사항

고려 사항 설명
암호화 / 보안 패키징 시 반드시 내부 콘텐츠에 대한 암호화 및 보안 고려
이기종 연동 패키징 도구를 활용하여 여러 가지 이기종 콘텐츠 및 단말기 간 DRM 연동 고려
복잡성 및 비효율성 문제 사용자의 입장에서 불편해질 수 있는 문제를 최대한 효율적으로 적용될 수 있도록 고려
최적합 암호화 알고리즘 적용 제품 소프트웨어의 종류에 맞는 알고리즘을 선택하여 배포 시 범용성이 지장이 없도록 고려

 

1.3. 애플리케이션 모니터링 도구 (★☆)

[1] 애플리케이션 모니터링 도구 개념

제품 소프트웨어를 사용자 환경에 설치한 후 기능 및 성능, 운영 현황을 모니터링하여 제품 최적화하기 위한 도구

 

[2] 애플리케이션 모니터링 도구 기능

기능 설명 도구
애플리케이션 변경 관리 애플리케이션 간의 종속관계를 모니터링, 변경의 영향도 파악 ChangeMiner
애플리케이션 성능 관리 서버로 유입되는 트랜잭션 수량, 응답시간 등을 모니터링 Jenifer, Nmon
애플리케이션 정적 분석 소스 코드의 잠재적인 문제 발견 기능, 코딩 규칙 오류 발견 PMD, Cppcheck, Checkstyle
애플리케이션 동적 분석 프로그램에 대한 결함 및 취약점 분석 도구, 메모리 및 오류 발견 Avalanche, Valgrind

[3] 애플리케이션 모니터링 도구 활용 효과

 - 서비스 가용성 향상

 - 서비스 성능 측정

 - 장애 인지 / 리소스 측정

 - 근본 원인 분석

1.4. DRM (★★★)

[1] DRM 개념

디지털 콘텐츠에 대한 권리정보를 지정하고 암호화 기술을 이용하여 허가된 범위 내에서 콘텐츠 이용하게 하는 기술

 

[2] DRM 특징 

 - 거래 투명성

 - 사용규칙 제공

 - 자유로운 상거래 제공

 

[3] DRM 구성 및 동작 방식

 
  ① DRM 동작 방식

순서 단계 동작 방식
1 라이선스 등록 클리어링 하우스에 라이선스 등록을 하면서 동시에 유통시스템에 콘텐츠 등록
2 라이선스 요청 콘텐츠 소비자가 유통시스템으로 라이선스 요청
3 라이선스 요청 유통시스템에서 클리어링 하우스를 통해서 라이선스 요청
4 요금 지불 콘텐츠 소비자가 요금 지불
5 라이선스 발급 클리어링 하우스를 통해서 라이선스 발급
6 콘텐츠 다운로드 콘텐츠 소비자가 콘텐츠를 다운로드 가능

  ② DRM 구성요소 - <제콘패 클 소컨보>

구분 구성요소 설명
콘텐츠 공자 DRM 텐츠 서비스하고자 하는 암호화된 콘텐츠, 메타 데이터, 사용정보를 패키징한 콘텐츠
키저 암호화된 콘텐츠, 메타 데이터, 사용정보를 암호화한 콘텐츠로 변환하는 도구
리어링 하우스 콘텐츠 정책 라이선스 발급여부를 결정하는 정책에 대한 부합 여부 확인, 적절한 사용 권한 부여
콘텐츠 라이선스 사용자에게 전달되는 콘텐츠의 권리 인증, 콘텐츠에 대한 사용 조건 및 허가 정보 포함
콘텐츠 관리정보 콘텐츠를 사용하고자 하는 사용자 정보 및 콘텐츠에 대한 정보
콘텐츠 사용정보 DRM 콘텐츠의 사용자 권한 및 콘텐츠 정책에 대한 정보
콘텐츠 비자 DRM 트롤러 배포된 디지털 콘텐츠의 이용 권한을 통제
안 컨테이너 원본 콘텐츠를 안전하게 유통하기 위한 전자적 보안장치

[4] DRM 기술요소 - <암키식저 파정크인>  (애플리케이션 배포 도구의 기술요소와 동일)

기술요소 설명
호화 콘텐츠 및 라이선스를 암호화하고, 전자서명을 할 수 있는 기술
관리 콘텐츠를 암호화한 키에 대한 저장 및 배포 기술
별 기술 콘텐츠에 대한 식별 체계 표현 기술
작권 표현 라이선스의 내용 표현 기술
호화 파일 생성 콘텐츠를 암호화된 콘텐츠로 생성하기 위한 기술
책 관리 라이선스 발급 및 사용에 대한 정책표현 및 관리 기술
랙 방지 크랙에 의한 콘텐츠 사용 방지 기술
라이선스 발급 및 사용의 기준이 되는 사용자 인증 기술

 

Comments