Study/Certificate

[정보처리기사 필기] 정처기 모든 과목 요점정리 (3)

ChoiSenn 2023. 3. 16. 15:12

 

 

 

 

디지털 저작권 관리(DRM) : 디지털 콘텐츠의 전 과정에 걸쳐 사용되는 디지털 컨텐츠 관리, 보호기술.

 - 콘텐츠 제공자 : 콘텐츠를 제공하는 저작권자.

 - 콘텐츠 분배자 : 암호화 된 콘텐츠를 유통하는 곳이나 사람.

 - 콘텐츠 소비자 : 콘텐츠를 구매해서 사용하는 사람.

 - 패키저 : 배포 가능한 형태로 묶어 암호화하는 프로그램.

 - 클리어링 하우스 : 저작권에 대한 사용권한, 라이선스 발급, 사용량에 따른 결제 관리 등을 수행.

 - DRM 컨트롤러 : 배포된 콘텐츠의 이용권한을 통제.

 

애플리케이션 테스트의 기본 원리

 - 테스팅은 결함이 존재함을 밝히는 것 == 결함을 줄일 수는 있지만 없앨 수는 없음.

 - 완벽한 테스팅은 불가능

 - 결합 집중 : 20%의 모듈에서 80%의 결합이 존재함. (파레토 법칙)

 - 개발 초기부터 테스팅 시작.

 - 살충제 패러독스 : 동일한 테스트 케이스에 의한 반복적인 테스트는 새로운 결함을 찾지 못함.

 - 테스트는 정황에 의존적 : 소프트웨어 성격에 맞게 테스트.

 - 오류-부재의 궤변 : 요구사항을 충족시켜주지 못한다면, 결함이 없다고 해도 품질이 높다 볼 수 없음.

 

정적 테스트 : 프로그램을 실행하지 않고 명세서나 소스코드를 대상으로 분석. (워크스루, 인스펙션, 코드 검사)

동적 테스트 : 프로그램을 실행하여 오류를 찾음. (화이트박스/블랙박스 테스트)

 

명세 기반 테스트 : 사용자의 요구사항에 대한 명세를 빠짐없이 테스트 케이스로 만들어 확인 (동등분할, 경계값 분석)

구조 기반 테스트 : 내부의 논리 흐름에 따라 테스트 케이스 작성, 확인 (구분 기반, 결정 기반, 조건 기반)

경험 기반 테스트 : 테스터의 경험을 기반으로 수행 (에러 추정, 체크리스트, 탐색적 테스팅)

 

검증 테스트 : 개발자의 시각에서 제품 생산 과정을 테스트 (단위, 통합, 시스템 테스트)

확인 테스트 : 사용자의 시각에서 제품의 결과를 테스트 (인수 테스트)

 

화이트박스 테스트 : 모듈 안의 내용(작동)을 확인 가능. 내부의 논리적인 모든 경로를 테스트. 소스코드의 모든 문장을 한 번 이상 수행.

 - 기초 경로 검사 : 대표적인 테스트 방식.

 - 제어 구조 검사 : 조건 검사 : 논리적인 조건을 테스트

                              루프 검사 : 반복 구조에 맞춰 테스트

                              데이터 흐름 검사 : 변수의 정의와 사용의 위치에 초점

 

블랙박스 테스트 : 안에서 어떤 작동이 일어나는지 알 수 없음. 기능 테스트라고 함. 소프트웨어 인터페이스에서 실시.

 - 동치 분할 검사 : 입력 조건에 타당한/타당하지 않은 자료의 개수를 균등하게 하여 테스트.

 - 경계값 분석 : 경계값에서 오류 발생의 확률이 높으므로 경계값으로 테스트.

 - 원인-효과 그래프 검사 : 입력 데이터 간의 관계와 출력에 영향을 미치는 상황을 분석해 효용성 높은 테스트 케이스 선정.

 - 비교 검사 : 여러 버전의 프로그램에 동일한 테스트 자료로 테스트.

 - 오류 예측 검사 : 다른 테스트로 찾아낼 수 없는 오류를 찾아내는 보충적 검사. (데이터 확인 검사)

 

단위 테스트 : 최소 단위인 모듈이나 컴포넌트에 초점을 맞춰 테스트 .명세보다 주로 구조 기반 테스트 시행.

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

시스템 테스트 : 개발된 SW가 컴퓨터 시스템에서 완벽하게 수행되는가를 점검. 실제 사용 환경과 유사한 환경에서 테스트.

인수 테스트 : SW가 사용자의 요구사항을 충족하는지에 중점.

 - 알파 테스트 : 통제된 환경에서 사용자가 개발자와 함께 테스트

 - 베타 테스트 : 통제되지 않은 환경에서 여러 명의 사용자가 테스트.

 

상향식 통합 테스트 : 하위 모듈에서 상위 방향으로 통합해가며 테스트. (드라이버 사용)

하향식 통합 테스트 : 상위에서 하위 모듈 방향으로 통합해가며 테스트. 테스트 초기부터 사용자에게 시스템 구조를 보여줄 수 있음. (스텁 사용)

 

테스트 케이스 : 설계된 입력 값, 실행 조건, 기대 결과 등으로 구성된 테스트 항목에 대한 명세서.

테스트 시나리오 : 여러 개의 테스트 케이스들을 묶은 집합. 테스트 케이스들을 적용하는 구체적인 절차를 명세한 문서.

테스트 오라클 : 테스트 결과가 올바른지 판단하기 위해 사전에 정의된 참 값을 대입해 비교.

 

클린코드 작성 원칙 : 가독성, 단순성, 의존성 배제, 중복성 최소화, 추상화.

 

EAI : 기업 내 각종 앱 및 플랫폼 간의 정보 전달, 연계, 통합 등의 상호연동이 가능하게 해주는 솔루션.

 - Point to Point : 점대점으로 연결. 변경 및 재사용이 어려움.

 - Hub&Spoke : 중앙집중형. 확장 및 유지보수가 용이하지만 허브 장애 발생 시 시스템 전체에 영향.

 - 메시지 버스 : 앱 사이에 미들웨어를 두어 처리. 확장성이 뛰어나며 대용량 처리가 가능.

 - 하이브리드 : Hub&Spoke와 메시지 버스의 혼합 방식. 데이터 병목 현상을 최소화.