2023. 3. 3. 20:27ㆍ정처기 필기/기출
21. 힙정렬
- 힙을 구성하고 가장 큰 키값을 갖는 루트 노드를 제거하는 과정을 반복하여 정렬
- 평균 수행 시간 OlogN
- 완전 이진트리로 입력자료의 레코들르 구성
22. 모듈 간의의 상호작용으로 오류는 통합 테스트가 필요
23. 소프트웨어 테스트 기본원칙
- 살충제 페러독스
: 같은 테스트케이스만 써서는 오류를 찾을 수 없음
- 오류 부재의 궤변
: 아무리 테스트케이스에 다 통과해도 사용자 요구사항을 충족시키지 못하면 나쁜 SW임
- 결함 집중
: 결함은 발생한 모듈에서 계속 추가로 발생할 가능성이 높다.
24. 버전 등록 관련 주요 용어
- 가져오기 (import) : 버전 관리가 되고 있지 않은 저장소에 처음으로 파일을 복사
- 체크아웃 : 프로그램을 수정하기 위해 저장소에서 파일을 받아온다.
- 체크인 : 체크아웃한 파일의 수정을 완료하고 저장소의 파일을 업데이트
- 커밋 : 체크인을 수행할때 이전에 갱신된 내용이 있으면 충돌을 알리고 diff 도구를 이용해 수정, 갱신완료
- 동기화 : 저장소에 있는 최신 버전으로 자신의 작업공간을 동기화
25. 화이트박스 테스트
- 기본경로란 싸이클을 최대 한 번만 지나야 한다.
26. 단위 테스트 종류
- 명세 기반 테스트 : 주어진 명세를 빠짐없이 구현했는지 테스트케이스로 확인
- 구조 기반 테스트 : 내부 논리적 구조를 모두 테스트 (호ㅏ이트박스)
- 성능 테스트 : 애플리케이션 처리량, 응답시간, 경과시간, 자원사용률에 대해 가상의 사용자를 생성하고 테스트 수행
27. 소프트웨어 형상 관리
- 소프트웨어 가해지는 변경을 제어하고 관리한다.
- 프로젝트 계획, 분석서, 설계서, 프로그램, 테스트 케이스 모두 관리 대상이다.
- 유지보수 단계, 개발단계에도 적용 가능하다.
28. DRM (디지털 저작권 관리) 구성 요소
- 콘텐츠 제공자
- 콘텐츠 배포자
- 콘텐츠 소비자
- 패키저
- 클리어링 하우스
- DRM 컨트롤러
- 보안 컨테이너
29. 소프트웨어 버전 관리도구 방식
- 공유 폴더 방식
: 버전 관리 자료가 로컬 컴퓨터의 공유 폴더에 저장되어 관리되는 방식
: 개발자들은 개발이 완료된 파일을 약속된 공유 폴더에 매일 복사함
: 담당자는 공유 폴더의 파일을 자기 PC로 복사해 컴파일하고 이상 유무 확인
: 파일의 변경 사항을 데이터베이스에 기록하며 관리
# SCCS, RCS, PVCS, QVCS
- 클라이언트 / 서버 방식
: 버전 관리 자료가 중앙 시스템에 저장되어 관리되는 방식
: 서버의 자료를 개발자별로 자신의 PC로 복사해 작업하고 변경된 내용을 다시 중앙 서버에 반영
: 모든 버전 관리는 서버에서 수행
: 하나의 파일을 서로 다른 개발자가 작업할 경우 경고
: 서버에 문제가 생기면 협업 및 버전 관리 작업 중단
# CVS, SVN
- 분산 저장소 방식
: 하나의 원격 저장소와 개발자 PC의 로컬 저장소에 함께 저장되어 관리되는 방식
: 개발자별로 원격 저장소의 자료를 자기 로컬저장소로 복사하고 작업한 후 변경 내용을 다시 원격 저장소에 반영
: 원격 저장소에 문제가 생겨도 로컬 저장소의 자료를 이용해 작업 가능
: 처리속도 빠름
# Git, Bitkeeper
* SVN(Subversion)
- CVS 개선한 것
- 모든 개발 작업은 trunk 디렉토리에서 수행, 추가 작업은 braches디렉터리 안의 별도의 디렉터리를 만들어 작업하고 trunk디렉터리와 병합
- 커밋할 때마다 리비전이 1씩 증가
- 서버는 주로 유닉스 사용
- 오픈 소스
- CVS단점인 파일이나 디렉터리 이름 변경, 이동 등 가능
34. EAI (기업 애플리케이션 인터페이스)
* 기업 내 애플리케이션간 상호 연동이 가능하게 해주는 솔루션
- Point to Point : 변경 및 재사용이 어려움
- Hub & Spoke : 중앙 집중형, 확장 및 유지보수 용이
- Message Bus : 애플리케이션 사이 미들웨어, 대용량 처리 용이
- Hybrid : Hub & Spoke + Message Bus
번외) ESB (EnterPrise Service Bus)
- 애플리케이션 간 연계, 데이터 변환, 웹 서비스 지원 등 표준 기반의 인터페이스를 제공하는 솔루션
- EAI와 유사하지만 애플리케이션 보다는 서비스 중심의 통합 지향
- 결합도 약함
- 관리 및 유지보수가 쉽고, 높은 수준의 품질 지원이 가능
35. 인퍼페이스 구현 검증 도구
- xunit : 단위테스트
- staf : 서비스호출, 컴포넌트 재사용 / 분산환경에 데몬 사용, 자동화
- ntaf : STAF + FITNESS
- fitness : 웹 기반
- Selenium :
- watir : Ruby 언어
39. 테스트는 오류를 찾는 작업 디버그는 오류를 수정하는 작업 !
40. 스택
- 재귀호출, 깊이우선탐색, 후위표현, 중간값 접근 X
- 큐 : 선택정렬
'정처기 필기 > 기출' 카테고리의 다른 글
| 2021.05.15 기출 오답노트 및 재정리 (4과목) (0) | 2023.03.06 |
|---|---|
| 2021.05.15 기출 오답노트 및 재정리 (3과목) (0) | 2023.03.03 |
| 2021.05.15 기출 오답노트 및 재정리 (1과목) (0) | 2023.03.03 |
| 2021.03.07 기출 오답노트 및 재정리 (5과목) (0) | 2023.03.01 |
| 2021.03.07 기출 오답노트 및 재정리 (4과목) (0) | 2023.03.01 |