자격증/정보처리기사

소프트웨어 개발(3)

짱뚱짱 2025. 6. 9. 09:47

이분 검색(이진 검색)

  • ​검색할 데이터가 정렬되어 있어야 한다.
  • 비교 횟수를 거듭할 때마다 검색 대상이 되는 데이터의 수가 절반으로 줄어든다.
  • 탐색 효율이 좋다.
  • 탐색 시간이 적게 소요된다.
  • 중간 레코드 번호(M) : (F+L) / 2 (단, F : 첫 번째 레코드 번호, L : 마지막 레코드 번호)

주요 해싱 함수

  • ​제산법(Division) : 레코드 키 값(K)을 해시표(Hash Table)의 크기보다 큰 수 중에서 가장 작은 소수(Prime, Q)로 나눈 나머지를 홈 주소로 삼는 방식
  • 제곱법(Mid-Square) : 레코드 키 값(K)을 제곱한 후 그 중간 부분의 값을 홈 주소로 삼는 방식
  • 폴딩법(Folding) : 레코드 키 값(K)을 여러 부분으로 나눈 후 각 부분의 값을 더하거나 XOR한 값을 홈 주소로 삼는 방식분 검색(이진 검색)
  • 숫자 분석법(Digit Analysis) : 키 값을 이루는 숫자의 분포를 분석하여 비교적 고른 자리를 필요한 만큼 선택해서 홈 주소로 삼는 방식

스키마 3계층

  • 외부 스키마 : 사용자나 응용 프로그래머가 각 개인의 입장에서 필요로 하는 데이터베이스의 논리적 구조를 정의한 것
  • 개념 스키마 : 데이터베이스의 전체적인 논리적 구조로서, 개체 간의 관계와 제약 조건을 나타내고, 데이터베이스의 접근 권한, 보안 및 무결성 규칙에 관한 명세를 정의함
  • 내부 스키마 : 물리적 저장장치의 입장에서 본 데이터베이스 구조로서, 실제로 데이터베이스에 저장될 레코드의 형식을 정의하고 저장 데이터 항목의 표현 방법, 내부 레코드의 물리적 순서 등을 나타냄

빌드 자동화 도구

  • Ant : 아파치 소프트웨어 재단에서 개발한 소프트웨어
  • Maven : Ant의 대안으로 개발한 소프트웨어
  • Jenkins : JAVA 기반의 오픈 소스 형태의 빌드 자동화 도구
  • Gradle : Groovy를 기반으로 한 오픈 소스 형태의 빌드 자동화 도구

소프트웨어 패키징

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

소프트웨어 패키징 시 고려사항

  • 내부 콘텐츠에 대한 암호화 및 보안을 고려한다.
  • 다른 여러 콘텐츠 및 단말기 간 DRM(디지털 저작권 관리) 연동을 고려한다.

DRM(디지털 저작권 관리)의 구성 요소

  • 클리어링 하우스(Clearing House) : 저작권에 대한 사용 권한, 라이선스 발급, 사용량에 따른 결제 관리 등을 수행하는 곳
  • 콘텐츠 제공자(Contents Provider) : 콘텐츠를 제공하는 저작권자
  • 패키저(Packager) : 콘텐츠를 메타 데이터와 함께 배포 가능한 형태로 묶어 암호화하는 프로그램
  • 콘텐츠 분배자(Contents Distributor) : 암호화된 콘텐츠를 유통하는 곳이나 사람
  • DRM 컨트롤러(DRM Controller) : 배포된 콘텐츠의 이용 권한을 통제하는 프로그램

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

  • 콘텐츠 암호화 및 키 관리
  • 콘텐츠 식별체계 표현
  • 라이선스 발급 및 관리
  • 정책 관리 기술
  • 크랙 방지 기술

소프트웨어 설치 매뉴얼

  • 설치 매뉴얼은 사용자를 기준으로 작성한다.
  • 기본 사항

- 소프트웨어 개요

- 설치 관련 파일

- 프로그램 삭제 등

 

형상 관리(SCM)

  • 소프트웨어의 개발 과정에서 소프트웨어의 변경 사항을 관리하기 위해 개발된 일련의 활동이다.
  • 목적 : 개발 비용 감소, 방해 요인 최소화
  • 관리 항목 : 소스 코드, 프로젝트 분석서, 운영 및 설치 지침서 등
  • 형상 관리 도구 : Git, CVS, Subversion 등

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

  • 체크아웃(Check-Out) : 프로그램을 수정하기 위해 저장소에서 파일을 받아옴
  • 체크인(Check-In) : 체크아웃 한 파일의 수정을 완료한 후 저장소의 파일을 새로운 버전으로 갱신
  • 커밋(Commit) : 체크인을 수행할 때 이전에 갱신된 내용이 있는 경우에는 충돌(Conflict)을 알리고 diff 도구를 이용해 수정한 후 갱신을 완료함

파레토 법칙

  • 소프트웨어 테스트에서 오류의 80%는 전체 모듈의 20% 내에서 발견된다는 법칙이다.

'자격증 > 정보처리기사' 카테고리의 다른 글

데이터베이스 구축(1)  (0) 2025.07.14
소프트웨어 개발(4)  (0) 2025.06.24
소프트웨어 개발(2)  (0) 2025.05.26
소프트웨어 개발(1)  (0) 2025.05.12
소프트웨어 설계(4)  (0) 2025.05.09