Certificate/정보처리기사

[시나공 정보처리기사 필기] 101. 릴리즈노트의 개요 ~ 150. 빅오 표기법

Walker_ 2024. 2. 3. 13:08

2023-정보처리기사필기.pdf
2.57MB

 

101. 릴리즈노트의 개요

 - 개발 과정에서 정리된 릴리즈 정 보를 소프트웨어의 최종 사용자인 고객과 공유하기 위한 문서

 

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

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

 

103. 디지털 저작권 관리 (DRM)

 - 저작권자가 의도한 용도로만 사용되도록 하는 디지털 콘테츠 관리 및 보호 기술

 

104. 디지털 저작권 관리의 구성 요소

 - 클리어링 하우스, 콘텐츠 제공자, 패키저, 콘텐츠 분배자, 콘텐츠 소비자, DRM 컨트롤러, 보안 컨테이너

 

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

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

 

106. 소프트웨어 설치 매뉴얼의 개요

 - 소프트웨어 설치 과정에 필요한 내용을 기록한 설명서와 안내서

 

107. 소프트웨어 설치 매뉴얼의 기본 사항

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

 

108. 소프트웨어 사용자 매뉴얼의 개요

 - 소프트웨어 사용 과정에 필요한 내용을 문서로 기록한 설명서와 안내서

 

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

 - 개발 과정에서 소프트웨어의 변경 사항을 관리하기 위해 개발된 일련의 활동

 

110. 형상 관리의 중요성

 - 지속적, 동시적, 진행정도 기준, 무절제 변경 방지, 버그 추적

 

111. 형상 관리 기능

 - 형상 식별, 버전 제어, 형상 통제(변경 관리), 형상 검사, 형상 기록(상태 보고)

 

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

 - 저장소, 가져오기, 체크아웃, 체크인, 커밋, 동기화

 

113. 공유 폴더 방식

 - 공유 폴더 매일 복사, 이상 유무 확인, 종류 : SCCS, RCS, PVCS, QVCS

 

114. 클라이언트/서버 방식

 - 종류 : CVS, SVN, CVSNT, Clear Case, CMVC, Perforce

 

115. 분산 저장소 방식

 - 종류 : Git, GNU arch, DCVS, Bazaar, Mercurial, Team Ware, Bitkeeper, Plastic SCM 등

 

116. Subversion(서브버전)

 - CVS를 개선한 것으로, 아파치 소프트웨어 재단에서 2000년에 발표

 

117. Git(깃)

 - 리누스 토발즈가 2005년 리눅스 커널 개발에 사용할 관리 도구로 개발한 이후 주니오 하마노에 의해 유지 보수 되고있다

 

118. 빌드 자동화 도구의 개념

 - 소스 코드 파일들을 컴파일 한 후 여러 개의 모듈을 묶어 실행 파일로 만드는 과정 + 테스트 및 배포 자동화

 

119. Jenkins

 - JAVA기반 오픈 소스 형태, 가장 많이 사용되는 빌드 자동화 도구

 

120. Gradle

 - Groovy를 기반으로 한 오픈 소스 형태의 자동화 도구, 안드로이드 앱 갭라 환경에서 사용된다.

 - 안드로이드 뿐 아니라, Java, C/C++, Python 등 언어도 가능

 

121. 애플리케이션 테스트의 개념

 - 잠재되어 있는 결함을 찾아내는 일련의 행위 또는 절차 / 확인, 검증

 

122. 애플리케이션 테스트 관련 용어

 - 결함 집중, 파레토 법칙, 살충제 패러독스, 오류-부재의 궤변

 

123. 프로그램 실행 여부에 따른 테스트

 - 정적 테스트(프로그램 실행 않고 테스트), 동적테스트(프로그램 실행하여 테스트)

 

124. 테스트 기반에 따른 테스트

 - 명세기반 테스트, 구조기반 테스트, 경험 기반 테스트

 

125. 시각에 따른 테스트

 - 검증 테스트, 확인 테스트

 

126. 목적에 따른 테스트

 - 회복, 안전, 강도, 성능, 구조, 회귀, 병행 테스트

 

127. 화이트박스 테스트

 - 모듈의 원시 코드를 오프시킨 상태에서 원시 코드의 논리적인 모든 경로를 테스트하여 테스트 케이스 설계하는 방법

 

128. 화이트박스 테스트의 종류

 - 기초 경로 검사, 제어 구조 검사

 

129. 화이트박스 테스트의 검증 기준

 - 문장 검증 기준, 분기 검증 기준, 조건 검증 기준, 분기/조건 기준

 

130. 블랙박스 테스트

 - 소프트웨어가 수행할 특정 기능을 알기 위해서 각 기능이 완전히 작동되는 것을 입증하는 테스트, 기능 테스트라고도 함

 

131. 블랙박스테스트 종류

 - 동치 분할 검사, 경계값 분석, 원인-효과 그래프 검사, 오류 예측 검사, 비교 검사

 

132. 개발 단계에 따른 애플리케이션 테스트

 - 소프트웨어의 개발 단계에 따라 단위, 통합, 시스템, 인수 테스트로 분류된다.

 

133. 단위테스트

 - 코딩 직후 소프트웨어 설계의 최소 단위인 모듈이나 컴포넌트에 초점을 맞춰 테스트하는 것

 

134. 통합 테스트

 - 단위 테스트가 완료된 모듈들을 결합하여 하나의 시스템으로 완성시키는 과정에서의 테스트

 

135. 시스템 테스트

 - 개발된 소프트웨어가 해당 컴퓨터 시스템에서 완벽하게 수행되는가를 점검하는 테스트

 

136. 인수 테스트

 - 개발한 소프트웨어가 사용자의 요구사항을 충족하는지에 중점을 둔 테스트 방법

 - 알파 테스트, 베타 테스트

 

137. 하향식 통합 테스트

 - 프로그램의 상위 모듈에서 하위 모듈 방향으로 통합하면서 테스트 하는 기법

 

138. 상향식 통합 테스트

 - 프로그램의 하위 모듈에서 상위 모듈 방향으로 통합하면서 테스트 하는 기법

 

139. 상테스트 드라이버와 테스트 스텁의 차이점

 - 드라이버 : 테스트 대상의 하위 모듈을 호출하는 도구, 수행 후 결과 도출

 - 스텁 : 제어 모듈이 호출하는 타 모듈의 기능을 단순히 수행하는 도구, 일시적 필요 조건 시험용 모듈

 

140. 회귀 테스팅

 - 이미 테스트된 프로그램의 테스팅을 반복하는 것, 새로운 오류가 있는지 확인

 

141. 애플리케이션 테스트 프로세스

 - 테스트 계획, 테스트 분석 및 디자인, 테스트 케이스 및 시나리오 작성, 테스트 수행, 테스트 결과 평가 및 리포팅, 결함 추적 및 관리

 

142. 테스트 케이스

 - 구현된 소프트웨어가 사용자의 요구사항을 정확하게 준수했는지 확인하기 위한 설계 산출물

 

143. 테스트 시나리오

 - 테스트 케이스를 적용하는 순서에 따라 여러 개의 테스트 케이스들을 묶은 집합

 

144. 테스트 오라클

 - 테스트 결과가 올바른지 판단하기 위해 사전에 정의된 참 값을 대입하여 비교하는 기법 및 활동

 

145. 테스트 오라클의 종류 

 - 참 오라클, 샘플링 오라클, 추정 오라클, 일관성 검사 오라클

 

146. 테스트 자동화 도구

 - 정적 분석 도구, 테스트 케이스 생성 도구, 테스트 실행 도구, 성능 테스트 도구, 테스트 통제 도구, 테스트 하네스 도구

 

147. 테스트 하네스의 구성 요소

 - 테스트 드라이버, 테스트 스텁, 테스트 슈트, 테스트 케이스, 테스트 스크립트, 목 오브젝트

 

148. 결함

 - 오류 발생, 작동 실패 등과 같이 소프트웨어가 개발자가 설계한 것과 다르게 동작하거나 다른 결과가 발생하는 것

 

149. 애플리케이션 성능 분석

 - 처리량, 응답시간, 경과시간, 자원 사용률

 

150. 빅오 표기법

 - 알고리즘의 실행시간이 최악일 때를 표기하는 기법

 - O(1), O(log2n), O(n), O(nlog2n), O(n2), O(2n)